:root{--paper:#fffaf0;--paper-2:#f6ecd6;--ink:#3b2a1e;--ink-soft:#7a6552;--fox:#e8792b;--fox-dark:#b9531a;--green:#4caf50;--green-dark:#2f7d32;--eye:#2f8fc9;--red:#c8352b;--line:#e6d7b8;--shadow:0 6px 20px #28140547;--radius:16px;color:var(--ink);font-family:Fredoka,Trebuchet MS,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*{box-sizing:border-box}html,body{overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;background:#2b1d14;height:100%;margin:0}#app{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#app input,#app textarea{-webkit-user-select:text;user-select:text}#app,#scene{position:fixed;inset:0}.scene-canvas{display:block;outline:none;width:100%;height:100%}#hud{position:fixed;pointer-events:none;inset:0}#hud>*{pointer-events:auto}#overlay{position:fixed;pointer-events:none;inset:0}#overlay>*{pointer-events:auto}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible{outline:3px solid #ffcf3f;outline-offset:2px}input:focus-visible{outline:3px solid #ffcf3f;outline-offset:2px}[tabindex]:focus-visible{outline:3px solid #ffcf3f;outline-offset:2px}.panel{background:var(--paper);border:2px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.turn-card{position:absolute;top:calc(14px + env(safe-area-inset-top));display:flex;align-items: center;gap:12px;padding:8px 16px 8px 8px;left:14px}.portrait{object-fit:cover;border:4px solid var(--c,var(--fox));background:var(--paper-2);border-radius:50%;width:58px;height:58px}.portrait.small{border-width:3px;width:34px;height:34px}.turn-card .label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.08em;font-size:13px}.turn-card .name{color:var(--c,var(--ink));font-size:22px;font-weight:600;line-height:1.1}.team{display:flex;gap:6px;margin-top:4px}.team .portrait.small{opacity:.55}.team .portrait.small.active{opacity:1;transform:scale(1.1)}.fox-track{position:absolute;top:calc(14px + env(safe-area-inset-top));text-align:center;width:min(460px,40vw);padding:10px 18px 12px;left:50%;transform:translate(-50%)}.fox-track .caption{color:var(--ink-soft);margin-bottom:6px;font-size:14px}.fox-track .caption b{color:var(--fox-dark)}.track{position:relative;background:repeating-linear-gradient(90deg,#d6cfc2 0 10px,#c7bfb1 10px 12px);border-radius:7px;height:14px}.track .fill{position:absolute;background:linear-gradient(90deg,#f5b26b,var(--fox));border-radius:7px;transition:width .5s;inset:0 auto 0 0}.track .fox-dot,.track .hole-dot{position:absolute;display:grid;border-radius:50%;place-items: center;width:26px;height:26px;margin-top:-13px;margin-left:-13px;font-size:15px;top:50%}.track .fox-dot{background:var(--fox);border:3px solid #fff;transition:left .5s}.track .hole-dot{background:#3b2418;border:3px solid #8a6a45;left:100%}.track.danger .fill{background:linear-gradient(90deg,#f08a5d,var(--red))}.fox-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 6px;margin-top:8px}.fox-chip{display:inline-block;color:var(--ink-soft);animation:.4s chip-in;background:#f3ece2;border-radius:999px;padding:3px 10px;font-size:12px}.fox-chip.covered{color:#7a3a12;background:#fbe3c8}.fox-chip.hot{color:#9a3412;background:#fbe3c8}@keyframes chip-in{0%{transform:scale(.8);opacity:0}}.toolbar{position:absolute;top:calc(14px + env(safe-area-inset-top));display:flex;gap:8px;right:14px}.icon-btn{border:2px solid var(--line);background:var(--paper);box-shadow:var(--shadow);display:grid;color:var(--ink);border-radius:12px;place-items: center;width:44px;height:44px;padding:0;font-size:20px}@media (hover:hover){.icon-btn:hover{background:#fff;transform:translateY(-1px)}}.icon-btn.off{opacity:.55}.casebook{position:absolute;top:calc(80px + env(safe-area-inset-top));width:300px;max-height:calc(100vh - 210px);overflow-y:auto;max-height:calc(100dvh - 210px);padding:14px 14px 10px;right:14px}.casebook.hidden{display:none}.casebook h3{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;column-gap:8px;margin:0 0 8px;font-size:16px;font-weight:600}.casebook h3 small{color:var(--ink-soft);font-size:12px;font-weight:400}.clue-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:14px}.clue-chip{position:relative;aspect-ratio:1;display:grid;background:#f8ecd0;border:3px solid #e3dccb;border-radius:50%;place-items: center}.clue-chip img{object-fit:contain;width:78%;height:78%}.clue-chip.unknown img{opacity:.45;filter:grayscale(1)}.clue-chip.yes{border-color:var(--green);box-shadow:0 0 0 2px #4caf5040}.clue-chip.no{background:#f2efe9;border-color:#b9b0a0}.clue-chip .badge{position:absolute;display:grid;color:#fff;border:2px solid #fff;border-radius:50%;place-items: center;width:18px;height:18px;font-size:11px;font-weight:700;bottom:-4px;right:-4px}.clue-chip.yes .badge{background:var(--green)}.clue-chip.no .badge{background:#9b9285}.suspect-list{display:flex;flex-direction:column;gap:6px}.suspect-row{display:flex;border:2px solid var(--line);text-align:left;background:#fff;border-radius:12px;align-items: center;gap:8px;width:100%;padding:5px 8px 5px 5px}@media (hover:hover){.suspect-row:hover:not(:disabled){border-color:var(--fox)}}.suspect-row img.face{object-fit:cover;object-position:50% 12%;background:var(--paper-2);border-radius:8px;width:38px;height:46px}.suspect-row .who{flex:1;font-size:15px;font-weight:600}.suspect-row .items{display:flex;gap:2px}.item-dot{display:grid;background:#f8ecd0;border:2px solid #e3dccb;border-radius:50%;place-items: center;width:26px;height:26px}.item-dot img{object-fit:contain;width:20px;height:20px}.item-dot.yes{border-color:var(--green)}.item-dot.no{border-color:var(--red);opacity:.6}.counts{display:flex;color:var(--ink-soft);flex-wrap:wrap;gap:6px;margin:10px 0 4px;font-size:13px}.counts span{background:var(--paper-2);border-radius:10px;padding:2px 8px}.hint{color:var(--ink-soft);margin-top:8px;font-size:13px}.action-bar{position:absolute;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));display:flex;flex-direction:column;align-items: center;gap:10px;min-width:min(620px,94vw);max-width:94vw;padding:12px 16px;transform:translate(-50%)}.action-bar .prompt{text-align:center;font-size:18px}.action-bar .prompt b{color:var(--c,var(--fox-dark))}.action-bar .sub{color:var(--ink-soft);margin-top:2px;font-size:14px}.actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.btn{display:inline-flex;background:var(--fox);color:#fff;box-shadow:0 4px 0 var(--fox-dark);border:none;border-radius:14px;align-items: center;gap:8px;padding:10px 18px;transition:transform 80ms;font-size:17px;font-weight:600}@media (hover:hover){.btn:hover:not(:disabled){transform:translateY(-1px)}}.btn:active:not(:disabled){box-shadow:0 2px 0 var(--fox-dark);transform:translateY(2px)}.btn.search{background:var(--green);box-shadow:0 4px 0 var(--green-dark)}.btn.reveal{background:var(--eye);box-shadow:0 4px #1f6a99}.btn.ghost{color:var(--ink);border:2px solid var(--line);box-shadow:0 3px 0 var(--line);background:#fff}.btn.danger{background:var(--red);box-shadow:0 4px #8f2119}.btn .key{opacity:.8;border:1px solid;border-radius:5px;padding:0 4px;font-size:11px}.btn svg{width:22px;height:22px}.dice-row{display:flex;gap:8px}.die-chip{display:grid;background:#fff;border:3px solid #ddd3bf;border-radius:10px;place-items: center;width:44px;height:44px}.die-chip.kept{border-color:var(--green);box-shadow:0 0 0 3px #4caf5040}.die-chip.miss{opacity:.55}.die-chip canvas{width:34px;height:34px}.roll-pips{display:flex;color:var(--ink-soft);align-items: center;gap:5px;font-size:13px}.roll-pips i{background:#d6cbb6;border-radius:50%;width:10px;height:10px}.roll-pips i.used{background:var(--fox)}.log{position:absolute;left:14px;bottom:calc(18px + env(safe-area-inset-bottom));width:300px;max-height:34vh;overflow:hidden;display:flex;flex-direction:column-reverse;gap:6px;max-height:34dvh;pointer-events:none!important}.log-entry{animation:.3s log-in;border-left:5px solid var(--c,var(--line));background:#fffaf0ed;border-radius:12px;padding:7px 11px;font-size:14px;box-shadow:0 3px 10px #0003}.log-entry.old{opacity:.72}@keyframes log-in{0%{opacity:0;transform:translateY(8px)}}.callout{position:absolute;text-align:center;animation:.35s cubic-bezier(.2,1.4,.4,1) pop;max-width:90vw;padding:16px 28px;top:22%;left:50%;transform:translate(-50%,-50%);pointer-events:none!important}.callout .big{font-size:30px;font-weight:700}.callout .small{color:var(--ink-soft);margin-top:4px;font-size:16px}.callout.green{border-color:var(--green)}.callout.green .big{color:var(--green-dark)}.callout.white .big{color:#6e655a}.callout.fox .big{color:var(--fox-dark)}.callout img.item{object-fit:contain;display:block;width:84px;height:84px;margin:0 auto 4px}.callout.leaving{animation:.3s forwards fade-out}@keyframes pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)}}@keyframes fade-out{to{opacity:0;transform:translate(-50%,-60%)}}.backdrop{position:fixed;z-index:30;display:grid;animation:.25s fade-in;background:#1e12088c;place-items: center;padding:16px;inset:0}@keyframes fade-in{0%{opacity:0}}.dialog{width:min(760px,96vw);max-height:92vh;overflow-y:auto;position:relative;max-height:92dvh;padding:22px 26px}.dialog h2{color:var(--fox-dark);margin:0 0 6px;font-size:28px}.dialog p{line-height:1.45}.dialog .close{position:absolute;top:12px;right:12px}.dialog .footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:16px}.accuse-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;margin-top:12px}.accuse-card{border:3px solid var(--line);text-align:center;background:#fff;border-radius:14px;padding:6px}.accuse-card img{display:block;border-radius:10px;width:100%}.accuse-card.selected{border-color:var(--red);box-shadow:0 0 0 4px #c8352b40}.rules h3{color:var(--ink);margin:18px 0 6px}.rules ul,.rules ol{padding-left:22px;line-height:1.5}.rules .sym{display:inline-flex;vertical-align:middle}.rules .sym svg{width:22px;height:22px}.start{position:fixed;display:grid;grid-template-columns:1fr minmax(380px,460px);background:radial-gradient(circle at 70% 30%,#5a3a22,#2b1d14 70%);inset:0}.start .hero{position:relative;display:flex;background:#2b1d14 82%/cover no-repeat;flex-direction:column;justify-content:flex-start;padding:5vh 5vw}.logo{color:#d7392b;letter-spacing:.01em;text-shadow:0 4px #fff,0 -4px #fff,4px 0 #fff,-4px 0 #fff,0 10px 24px #00000059;transform-origin:left center;font-size:clamp(56px,8vw,112px);font-weight:700;line-height:1;transform:rotate(-3deg)}.tagline{color:#fff;text-shadow:0 2px 8px #0009;margin-top:16px;font-size:22px;font-weight:500}.start .setup{max-height:92vh;overflow-y:auto;align-self: center;max-height:92dvh;margin:4vh 2vw;padding:22px 24px}.setup h2{margin:0 0 4px;font-size:24px}.setup .intro{color:var(--ink-soft);margin:0 0 14px;font-size:15px;line-height:1.4}.field{margin-bottom:16px}.field>label,.field>.label{display:block;margin-bottom:8px;font-weight:600}.hen-picker{display:flex;gap:8px}.hen{border:3px solid var(--line);text-align:center;background:#fff;border-radius:14px;flex:1;padding:6px 4px;font-size:13px}.hen img{aspect-ratio:1;object-fit:cover;display:block;border-radius:50%;width:100%;margin-bottom:3px}.hen.on{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c)30%,transparent)}.hen:not(.on){opacity:.55}.speed-picker{display:flex;flex-direction:column;gap:6px}.variant-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.variant{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;text-align:left;border:3px solid var(--line);background:#fff;border-radius:12px;align-content: start;align-items: center;column-gap:8px;padding:8px 12px}.variant .icon{grid-row:1;font-size:20px}.variant .t{font-weight:700}.variant .d{grid-column:1/-1;color:var(--ink-soft);margin-top:2px;font-size:12.5px;line-height:1.3}.variant.on{border-color:var(--fox);background:#fff4e8}.variant.slyFox.on{background:linear-gradient(135deg,#fff0e0,#ffe2c7);border-color:#b5471b}.speed{display:flex;text-align:left;border:3px solid var(--line);background:#fff;border-radius:12px;align-items: center;gap:10px;padding:8px 12px}.speed.on{border-color:var(--fox);background:#fff4e8}.speed .n{color:var(--fox-dark);text-align:center;width:28px;font-size:22px;font-weight:700}.speed .t{font-weight:600}.speed .d{color:var(--ink-soft);font-size:13px}.seed-row{display:flex;gap:8px}.seed-row input{font:inherit;border:2px solid var(--line);background:#fff;border-radius:10px;flex:1;padding:8px 10px}.start .buttons{display:flex;flex-direction:column;gap:10px;margin-top:8px}.start .buttons .btn{justify-content:center;padding:12px 18px;font-size:19px}.stats-line{color:var(--ink-soft);text-align:center;margin-top:12px;font-size:13px}.error{color:var(--red);margin-top:6px;font-size:14px}.fine-print{position:absolute;color:#ffffffd9;text-shadow:0 1px 4px #000c;max-width:560px;font-size:12px;bottom:3vh;left:5vw}.gameover{display:grid;grid-template-columns:220px 1fr;align-items: center;gap:22px}.gameover .thief-card{box-shadow:var(--shadow);border-radius:16px;width:100%}.gameover .banner{display:block;border-radius:14px;width:100%;margin-bottom:10px}.gameover h2.won{color:var(--green-dark)}.gameover h2.lost{color:var(--red)}.gameover .facts{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.gameover .facts span{background:var(--paper-2);border-radius:10px;padding:4px 10px;font-size:14px}.loading{position:fixed;display:grid;color:#fff;background:#2b1d14;place-items: center;font-size:22px;inset:0}.loading .paws{display:flex;justify-content:center;gap:10px;margin-bottom:12px}.loading .paws span{background:var(--fox);animation:.9s ease-in-out infinite bounce;border-radius:50%;width:14px;height:14px}.loading .paws span:nth-child(2){animation-delay:.15s}.loading .paws span:nth-child(3){animation-delay:.3s}@keyframes bounce{50%{transform:translateY(-10px)}}.help-hint{position:absolute;right:14px;bottom:calc(18px + env(safe-area-inset-bottom));color:#ffffffbf;text-align:right;text-shadow:0 1px 3px #000c;font-size:12px;pointer-events:none!important}@media (max-width:1100px){.casebook{width:250px}.log{width:240px}.start{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.start .hero{padding:3vh 5vw 2vh}.start .fine-print{position:static;margin-top:12px}.start .setup{margin:2vh auto calc(2vh + env(safe-area-inset-bottom));align-self:stretch;width:min(560px,94vw);max-height:none}}@media (hover:none){.btn .key{display:none}}@media (orientation:landscape) and (max-width:1300px){.action-bar{min-width:min(620px,100vw - 300px);max-width:calc(100vw - 300px);left:calc(50% + 130px)}.help-hint{display:none}}@media (orientation:portrait) and (max-width:1100px){.toolbar{gap:6px}.icon-btn{width:42px;height:42px}.turn-card .name{font-size:19px}.fox-track{width:auto;padding:8px 18px 10px;left:14px;right:14px;transform:none}.casebook{overflow:hidden;display:flex;gap:18px;width:auto;max-height:min(24dvh,250px);left:14px;right:14px}.cb-clues{flex:none;width:290px}.cb-suspects{overflow-y:auto;flex:1;min-width:0}.log{width:min(620px,100vw - 28px);max-height:80px;left:50%;transform:translate(-50%)}.help-hint{display:none}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}.card-preview{position:fixed;display:none;filter:drop-shadow(0 10px 24px #00000073);z-index:5;width:220px;height:330px;pointer-events:none!important}.casebook-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.dialog.catalog{width:min(1180px,97vw)}.catalog-intro{color:var(--ink-soft);margin:0 0 10px}.catalog-filters,.catalog-items{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.chip{border:2px solid var(--line);background:#fff;border-radius:999px;padding:4px 12px;font-size:14px;font-weight:500}.chip.on{border-color:var(--fox);color:var(--fox-dark);background:#fff4e8}.item-filter{display:inline-flex;border:2px solid var(--line);background:#f8ecd0;border-radius:999px;align-items: center;gap:5px;padding:2px 10px 2px 3px;font-size:13px}.item-filter img{object-fit:contain;width:24px;height:24px}.item-filter.yes{border-color:var(--green)}.item-filter.no{color:var(--ink-soft);border-color:#b9b0a0}.item-filter.on{background:var(--fox);border-color:var(--fox-dark);color:#fff}.catalog-summary{color:var(--ink-soft);margin:2px 0 10px;font-size:13px}.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:12px}.catalog-card{border:2px solid var(--line);display:flex;background:#fff;border-radius:14px;flex-direction:column;gap:4px;padding:6px 6px 8px}.catalog-card.faceUp{border-color:var(--eye)}.catalog-card.ruledOut{opacity:.6;background:#f3efe8}.catalog-card.ruledOut .portrait-img{filter:grayscale(.8)}.catalog-card .portrait-wrap{position:relative}.catalog-card .portrait-img{aspect-ratio:4/5;object-fit:cover;object-position:50% 10%;background:var(--paper-2);display:block;border-radius:10px;width:100%}.catalog-card .status{position:absolute;color:var(--ink-soft);background:#ffffffeb;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600;top:6px;left:6px}.catalog-card .status.faceUp{background:var(--eye);color:#fff}.catalog-card .status.ruledOut{color:#fff;background:#8f969b}.catalog-card .name{text-align:center;font-size:16px;font-weight:600}.catalog-card .wears{list-style:none;display:flex;flex-direction:column;gap:3px;margin:0;padding:0}.catalog-card .wears li{display:flex;border:1px solid #0000;border-radius:8px;align-items: center;gap:6px;padding:1px 6px 1px 2px;font-size:13px}.catalog-card .wears li img{object-fit:contain;background:#f8ecd0;border-radius:50%;width:26px;height:26px}.catalog-card .wears li span{flex:1}.catalog-card .wears li.match{border-color:var(--fox);background:#fff4e8}.catalog-card .wears li .mark{font-size:12px}.catalog-card .wears li.yes .mark{color:var(--green-dark)}.catalog-card .wears li.no{color:var(--ink-soft);text-decoration:line-through}.catalog-card .why{color:var(--ink-soft);text-align:center;font-size:12px}.btn.small{justify-content:center;padding:5px 10px;font-size:14px;box-shadow:0 3px #8f2119}.catalog-empty{grid-column:1/-1;color:var(--ink-soft)}.mode-row{display:flex;justify-content:space-between;align-items: center;gap:8px;margin:0 0 12px}.mode-badge{color:var(--green-dark);background:#e5f4e3;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600}.mode-row.offline .mode-badge{background:var(--paper-2);color:var(--ink-soft)}.mode-notice{color:var(--fox-dark);margin:-6px 0 12px;font-size:13px}.net-status{position:fixed;background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow);display:flex;z-index:6;border-radius:999px;align-items: center;gap:8px;padding:6px 14px;font-size:14px;top:92px;left:50%;transform:translate(-50%)}.net-status.lost{border-color:var(--red);color:var(--red)}.hints-row{display:flex;border:2px solid var(--line);background:#fff;border-radius:12px;justify-content:space-between;align-items: center;gap:12px;margin:0 0 12px;padding:8px 12px}.hints-title{font-weight:600}.hints-desc{color:var(--ink-soft);font-size:12px}.switch-wrap{display:flex;color:var(--ink-soft);align-items: center;gap:8px;font-size:13px}.switch{position:relative;background:#cfc6b4;border:none;border-radius:13px;flex:none;width:46px;height:26px;padding:0}.switch:after{content:"";position:absolute;background:#fff;border-radius:50%;width:20px;height:20px;transition:left .15s;top:3px;left:3px;box-shadow:0 1px 3px #0000004d}.switch.on{background:var(--green)}.switch.on:after{left:23px}.hint-offer{display:flex;background:#fff8e1;border:2px solid #f0d58a;border-radius:12px;align-items: center;gap:12px;margin:6px 0 4px;padding:10px 12px;font-size:14px}.hint-offer .btn{flex:none}.coach{background:#fff8e1;border:2px solid #f0d58a;border-radius:14px;margin-bottom:12px;padding:10px 14px}.coach h3{margin:0 0 6px;font-size:16px}.coach-steps{display:flex;flex-direction:column;gap:4px;margin:0;padding-left:20px;font-size:14px}.coach-steps li{padding-left:2px}.coach-steps li>*{vertical-align:middle}.coach-steps li img{object-fit:contain;background:#f8ecd0;border-radius:50%;width:24px;height:24px;margin-right:6px}.coach-steps li.yes{color:var(--green-dark)}.coach-steps li .btn{margin-left:8px}.coach-fit,.coach-next{margin:8px 0 0;font-size:14px}.coach-next{font-weight:600}.chip.hint-chip{background:#fff8e1;border-color:#f0d58a}.chip.hint-chip.on{border-color:var(--fox)}.catalog-foot{color:var(--ink-soft);margin:12px 0 0;font-size:13px}.log-entry.tip{background:#fff8e1;border-left-color:#f0b429}.coach-mini{margin-top:8px;line-height:1.4}.floating{position:fixed;z-index:20;display:flex;resize:both;overflow:hidden;min-width:360px;max-width:calc(100vw - 16px);min-height:260px;max-height:calc(100vh - 16px);flex-direction:column;max-height:calc(100dvh - 16px);box-shadow:0 16px 48px #28140573}.floating-resize{display:none}@media (hover:none){.floating{resize:none}.floating-resize{display:block;position:absolute;touch-action:none;background:linear-gradient(135deg,transparent 50%,var(--line)50% 58%,transparent 58% 70%,var(--line)70% 78%,transparent 78%);border-bottom-right-radius:var(--radius);width:34px;height:34px;bottom:0;right:0}}.floating.dragging{opacity:.92;user-select:none}.floating-bar{display:flex;cursor:grab;touch-action:none;background:var(--paper-2);border-bottom:2px solid var(--line);border-radius:var(--radius)var(--radius)0 0;flex:none;align-items: center;gap:8px;padding:8px 10px 8px 14px}.floating.dragging .floating-bar{cursor:grabbing}.floating-bar h2{color:var(--fox-dark);flex:1;margin:0;font-size:22px}.floating-grip{color:var(--ink-soft);letter-spacing:-2px;font-size:18px}.floating-bar .icon-btn.close{position:static;box-shadow:none;width:36px;height:36px}.floating-body{overflow:auto;flex:1;padding:12px 16px 16px}.floating.catalog .catalog-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}:root{--gold:#f7b928}.score-badge{display:inline-block;white-space:nowrap;background:var(--gold);color:#5a3a00;letter-spacing:0;text-transform:none;border-radius:999px;flex:none;margin-left:10px;padding:1px 9px;font-size:14px;font-weight:700;box-shadow:0 2px #c98c00}.points-fly{position:fixed;z-index:40;color:#fff;background:radial-gradient(circle at 35% 30%,#ffe27a,var(--gold)60%,#e39b00);text-shadow:0 2px #b87800;border:3px solid #fff;border-radius:999px;padding:2px 14px;font-size:30px;font-weight:700;top:0;left:0;box-shadow:0 0 0 3px #f7b92859,0 8px 22px #78460066;pointer-events:none!important}.points-fly.big{padding:4px 20px;font-size:40px}.praise{position:fixed;z-index:39;display:flex;white-space:nowrap;color:#fff;text-shadow:0 2px #b87800,0 0 12px #00000059;flex-direction:column;align-items: center;pointer-events:none!important}.praise b{font-size:26px}.praise.big b{font-size:34px}.praise span{background:var(--fox);text-shadow:none;border-radius:999px;margin-top:4px;padding:1px 10px;font-size:16px;font-weight:700}.spark{position:fixed;z-index:38;border-radius:50%;width:8px;height:8px;line-height:1;pointer-events:none!important}.spark.star{text-shadow:0 0 6px #ffd23fcc;border-radius:0;width:auto;height:auto;font-size:20px}.icon-btn.small-icon{box-shadow:none;width:30px;height:30px;font-size:15px}.suspect-action{width:min(560px,96vw)}.suspect-action-body{display:flex;align-items: flex-start;gap:16px}.sa-portrait{aspect-ratio:2/3;object-fit:cover;object-position:50% 10%;background:var(--paper-2);border-radius:12px;flex:none;width:130px}.sa-items{display:flex;flex-wrap:wrap;gap:6px}.sa-item{display:inline-flex;background:#f8ecd0;border-radius:999px;align-items: center;gap:4px;padding:2px 10px 2px 3px;font-size:13px}.sa-item img{object-fit:contain;width:24px;height:24px}.sa-note{color:var(--ink-soft);font-size:13px}.btn.rule-out{background:#6d5a45;box-shadow:0 4px #43362a}.score-badge.big{margin:0;padding:3px 14px;font-size:20px}.team-member{display:inline-flex;opacity:.6;flex-direction:column;align-items: center;gap:1px}.team-member.active{opacity:1}.team-member.active .portrait.small{transform:scale(1.1)}.team .portrait.small{opacity:1}.team-points{color:#5a3a00;background:var(--gold);border-radius:999px;padding:0 6px;font-size:11px;font-weight:700;line-height:15px}.btn.end-turn{background:#3f7fb5;box-shadow:0 4px #285680}.points-fly.lost{text-shadow:0 2px #7a1f18;background:radial-gradient(circle at 35% 30%,#ff9a8f,#e05a4f 60%,#b3362b)}.case-ranking{border:2px solid var(--line);background:#fffdf6;border-radius:14px;margin:6px 0 10px;padding:8px 10px}.cr-title{margin-bottom:4px;font-weight:700}.cr-row{display:flex;border-radius:10px;align-items: center;gap:8px;padding:3px 4px}.cr-row.best{background:#fff4d6}.cr-row.wiped .score-badge{color:#6e655a;box-shadow:none;background:#d8d2c6}.cr-rank{text-align:center;width:24px;font-weight:700}.cr-name{color:var(--c);font-weight:600}.cr-note{color:var(--ink-soft);flex:1;font-size:12px}#hud.compact .log,#hud.compact .fox-track{opacity:0;transition:opacity .4s;pointer-events:none!important}#hud.compact .log.shown,#hud.compact .fox-track.shown{opacity:1}#hud.compact .turn-card{cursor:pointer;gap:10px;padding:6px 14px 6px 6px}#hud.compact .turn-card .portrait:not(.small){border-width:3px;width:46px;height:46px}#hud.compact .turn-details{opacity:0;overflow:hidden;white-space:nowrap;max-width:0;max-height:0;transition:max-width .35s,max-height .35s,opacity .3s}#hud.compact .turn-card.expanded .turn-details{opacity:1;max-width:360px;max-height:110px}.turn-card.turn-changed .team-member.active{animation:.6s .2s both turn-pop}@keyframes turn-pop{0%{transform:scale(.8)}55%{transform:scale(1.25)}to{transform:scale(1)}}
