:root{--page:#f6f1e6;--card:#fffaf0;--panel:#f4ecdd;--border:#d8cbb6;--button-border:#c7b89f;--text-main:#1f2d47;--muted:#60708d;--accent-yellow:#f3cf56;--accent-yellow-deep:#d9b13f;--danger:#c94949;--success:#439663;--shadow-soft:0 12px 32px #26241f14;--paper:#fffaf0;--paper-dark:#f0e8d4;--cork:#d4a76a;--cork-dark:#b8894e;--ink:#1f2d47;--gold:#d9b13f;--pin-red:#c94949;--pin-blue:#4a7bc9;--shadow-card:0 4px 12px #3c321e1f;color:var(--text-main);background:var(--page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:500;line-height:1.5}*{box-sizing:border-box}html,body,#root{min-height:100%}body{background:radial-gradient(circle at top, #ffffff8c, transparent 28%), var(--page);min-height:100vh;margin:0}button,h1,h2,h3,p{margin:0}img{display:block}#root{max-width:1200px;margin:0 auto}.app-shell{gap:1rem;padding:1rem;display:grid}.app-content{gap:1rem;display:grid}.desktop-sidebar{display:none}.desktop-sidebar-brand{background:#1f2d47;border-bottom:1px solid #c5baa547;border-radius:18px 18px 0 0;margin:-1rem -1rem 0;padding:1rem}.sidebar-brand-title{text-transform:uppercase;margin:0;font-size:1.25rem;line-height:1.1}.sidebar-brand-title-top,.sidebar-brand-title-bottom{display:block}.sidebar-brand-title-top{color:#fffdf7}.sidebar-brand-title-bottom{color:var(--accent-yellow-deep)}.desktop-sidebar-section{gap:.75rem;display:grid}.desktop-sidebar-actions{align-content:end;margin-top:auto}.sidebar-profile{margin-top:auto}.sidebar-profile__divider{background:#1f305024;height:1px;margin-bottom:20px}.sidebar-profile__identity{align-items:center;gap:12px;display:flex}.sidebar-profile__avatar{color:#203250;background:#f4d35e;border:1px solid #1f305029;border-radius:50%;flex:0 0 44px;place-items:center;width:44px;height:44px;font-size:18px;font-weight:800;display:grid;overflow:hidden}.sidebar-profile__avatar svg{width:100%;height:100%;display:block}.sidebar-profile__details{flex-direction:column;gap:2px;min-width:0;display:flex}.sidebar-profile__name{color:#203250;text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.25;overflow:hidden}.sidebar-profile__role{color:#67738a;font-size:12px;font-weight:600}.sidebar-profile__streak{color:#7a6430;align-items:center;gap:4px;font-size:12px;font-weight:700;display:inline-flex}.sidebar-profile__logout{color:#5f6d84;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin-top:14px;padding:8px 0;font-size:13px;font-weight:700}.sidebar-profile__logout:hover{color:#203250;text-decoration:underline}.sidebar-profile__logout:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid #a9c94b}.sidebar-nav-button{width:100%;min-height:2.9rem;color:var(--text-main);font:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:14px;padding:.8rem .95rem;font-weight:700;transition:background-color .14s,border-color .14s,transform .14s}.sidebar-nav-button:hover{background:var(--panel);border-color:var(--border);transform:translate(2px)}.sidebar-nav-button.is-active{background:#eef4d9;border-color:#afc77a}.sidebar-nav-button:disabled{cursor:not-allowed;opacity:.45;transform:none}.case-overview-backlink{cursor:pointer;color:var(--text-dim);-webkit-user-select:none;user-select:none;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:color .14s}.case-overview-backlink:hover{color:var(--text-main)}.case-flow-nav{border-bottom:2px solid var(--border);gap:0;margin-bottom:1rem;display:flex;overflow:hidden}.case-flow-tab{min-width:0;font:inherit;text-transform:uppercase;letter-spacing:.02em;color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border:2px solid #0000;border-bottom:none;border-radius:10px 10px 0 0;flex:auto;padding:.65rem 1.1rem;font-size:.82rem;font-weight:700;transition:background-color .14s,color .14s,border-color .14s}.case-flow-tab:hover{color:var(--text-main);background:#c5baa51f}.case-flow-tab.is-active{color:var(--text-main);border-color:var(--border);background:#eef4d9;margin-bottom:-2px;position:relative;top:2px}.detail-back-link{cursor:pointer;color:var(--text-dim);-webkit-user-select:none;user-select:none;padding:.75rem 1rem;font-size:.9rem;font-weight:600;transition:color .14s}.detail-back-link:hover{color:var(--text-main)}.case-flow-cta-row{border-top:1px solid var(--border);flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;padding:1.25rem 0 .5rem;display:flex}.placeholder-page{text-align:center;color:var(--text-dim);padding:3rem 1rem;font-style:italic}.how-to-play-page{gap:1.5rem;padding:1.25rem;display:grid}.how-to-play-hero{gap:1rem;display:grid}.how-to-play-hero h2{margin:0 0 .45rem;font-size:clamp(2rem,5vw,3.25rem);line-height:1}.how-to-play-case-note{box-shadow:var(--shadow-card);background:#fff8df;border:1px dashed #b99a5f;border-radius:18px;align-content:start;gap:.35rem;padding:1rem;display:grid;transform:rotate(.6deg)}.how-to-play-case-note__label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:800}.how-to-play-case-note span:last-child{color:var(--muted);font-size:.9rem}.how-to-play-steps{gap:.85rem;display:grid}.how-to-play-step{border:1px solid var(--border);background:var(--panel);border-radius:18px;grid-template-columns:auto 1fr;align-items:start;gap:.9rem;padding:1rem;display:grid}.how-to-play-step__number{background:var(--accent-yellow);border:1px solid var(--button-border);border-radius:50%;place-items:center;width:2.25rem;height:2.25rem;font-weight:800;display:grid}.how-to-play-step h3{margin:0 0 .25rem;font-size:1.05rem}.how-to-play-step p,.how-to-play-tips li{color:var(--muted)}.how-to-play-tips{border-left:4px solid var(--accent-yellow-deep);background:#fff8dfad;border-radius:16px;gap:.75rem;padding:1rem;display:grid}.how-to-play-tips h3{margin:0}.how-to-play-tips ul{gap:.55rem;margin:0;padding-left:1.25rem;display:grid}.loading-case-header__copy{width:100%}.skeleton-line{background:linear-gradient(90deg, var(--panel), #fff7e8, var(--panel));background-size:200% 100%;border-radius:999px;height:1em;animation:1.2s ease-in-out infinite skeleton-sheen;display:block}.skeleton-line--eyebrow{width:11rem}.skeleton-line--title{width:min(28rem,82%)}.skeleton-line--story{width:min(42rem,100%)}.loading-puzzle-card .placeholder-page{margin:0}.pokedex-page{gap:1.25rem;padding:1rem;display:grid}.pokedex-empty-state{justify-items:start;max-width:680px}.pokedex-header{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:1rem;display:flex}.pokedex-header h2{margin:0}.pokedex-stats{flex-wrap:wrap;gap:.5rem;display:flex}.pokedex-stats span{border:1px solid var(--border);color:var(--text-main);background:#eef4d9;border-radius:999px;padding:.45rem .75rem;font-size:.82rem;font-weight:800}.pokedex-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.8rem;display:grid}.pokedex-card{background:#fffaf0;gap:.65rem;padding:.75rem;display:grid;overflow:hidden}.pokedex-card.is-hidden{background:#f2eadf}.pokedex-card.is-seen{background:#f8f1e5}.pokedex-card.is-shiny{background:#f0c94b;border-color:#d8b552;box-shadow:0 10px 24px #d8b55229}.pokedex-card__sprite-frame{border:1px dashed var(--border);background:#ffffff8c;border-radius:16px;place-items:center;min-height:88px;display:grid}.pokedex-card__sprite{object-fit:contain;width:76px;height:76px;image-rendering:pixelated}.pokedex-card.is-seen .pokedex-card__sprite{filter:grayscale(.75);opacity:.42}.pokedex-card__unknown{color:#7b6d5a;background:#d8ccba;border-radius:999px;place-items:center;width:56px;height:56px;font-size:1.8rem;font-weight:900;display:grid}.pokedex-card__body{gap:.2rem;display:grid}.pokedex-card__number{color:var(--text-dim);letter-spacing:.08em;font-size:.72rem;font-weight:800}.pokedex-card h3{margin:0;font-size:1rem}.pokedex-card p{color:var(--text-dim);text-transform:capitalize;margin:0;font-size:.82rem}.main-layout{gap:1rem;display:grid}.main-layout-single{grid-template-columns:minmax(0,1fr)}.main-column{gap:1rem;display:grid}.side-column{align-items:start;gap:1rem;display:grid}.mobile-section{display:none}.mobile-section.is-active{display:grid}.notebook-card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow-soft);border-radius:20px}.app-header{gap:1rem;padding:1rem;display:grid}.brand-lockup{align-items:center;gap:1rem;display:flex}.brand-icon{flex:none;width:84px;height:84px;position:relative}.brand-icon span{display:block;position:absolute}.brand-icon .hat{background:#b88a58;border-radius:6px 6px 2px 2px;width:44px;height:18px;top:12px;left:20px}.brand-icon .hat:after{content:"";background:#b88a58;border-radius:999px;width:60px;height:8px;position:absolute;top:14px;left:-8px}.brand-icon .ear{background:var(--accent-yellow);clip-path:polygon(50% 0%,100% 100%,0% 100%);width:14px;height:24px;top:20px}.brand-icon .ear-left{left:12px;transform:rotate(-16deg)}.brand-icon .ear-right{left:54px;transform:rotate(16deg)}.brand-icon .face{background:var(--accent-yellow);border-radius:18px 18px 22px 22px;width:54px;height:42px;top:34px;left:15px}.brand-icon .glass{background:#c7ad8947;border:4px solid #9b7a58;border-radius:50%;width:24px;height:24px;top:44px;left:42px}.brand-icon .handle{background:#9b7a58;border-radius:999px;width:18px;height:6px;top:64px;left:60px;transform:rotate(42deg)}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .3rem;font-size:.76rem;font-weight:700}.subtle-text{color:var(--muted)}.header-meta{gap:.9rem;display:grid}.heart-row{gap:.45rem;font-size:1.5rem;display:flex}.heart{transition:transform .16s,opacity .16s}.heart.is-full{color:var(--danger)}.heart.is-empty{color:#d9c1c1}.heart.heart-pop{animation:.36s heart-pop}.status-pill-group{flex-wrap:wrap;gap:.5rem;display:flex}.status-pill{background:var(--panel);border:1px solid var(--border);min-height:2.4rem;color:var(--text-main);border-radius:999px;align-items:center;padding:.45rem .8rem;font-size:.92rem;display:inline-flex}.status-pill-wide{border-radius:16px}.header-actions,.panel-heading-row,.section-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.investigation-location-actions{gap:.75rem;display:flex}.primary-button,.secondary-button{border:1px solid var(--button-border);min-height:2.75rem;font:inherit;color:var(--text-main);cursor:pointer;background:#fff;border-radius:14px;padding:.7rem .95rem;font-weight:700;transition:transform .14s,box-shadow .14s,border-color .14s,background-color .14s}.primary-button{background:var(--accent-yellow)}.secondary-button{background:var(--panel)}.secondary-button.is-pressed{background:#eef4d9;border-color:#afc77a}.danger-button{color:var(--danger)}.primary-button:hover,.secondary-button:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.primary-button:disabled,.secondary-button:disabled{cursor:not-allowed;opacity:.55;box-shadow:none;transform:none}.clue-panel,.evidence-board,.inspect-panel,.endgame-panel{padding:1rem}.current-clue{background:var(--panel);border:1px dashed #c5baa5;border-radius:16px;align-items:center;min-height:4.5rem;margin-top:1rem;padding:1rem;display:flex}.current-clue.is-revealed{animation:.32s clue-fade}.clue-copy,.clue-feedback{gap:.5rem;display:grid}.clue-feedback{margin-top:.85rem}.hint-text{font-weight:600}.inline-actions{flex-wrap:wrap;gap:.5rem;display:flex}.active-investigation-panel{background:linear-gradient(#f8f1df 0%,#f0e5c7 100%);gap:.8rem;margin-top:1rem;padding:1rem;display:grid}.active-investigation-heading{margin-bottom:-.1rem}.active-investigation-location{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;display:grid}.active-investigation-resolving{color:var(--muted);font-weight:700}.investigation-report{gap:.75rem;padding:.15rem 0;display:grid}.investigation-report-section{gap:.3rem;display:grid}.investigation-report-section p{margin:0}.investigation-report-finding{gap:.45rem}.investigation-report-evidence-title{font-size:1.05rem;font-weight:800}.investigation-report-notes{font-style:italic}.investigation-report-divider{background:#cbb992cc;height:1px}.investigation-result-card{background:linear-gradient(#fffaf0fa,#f6e6bdf0);border:1px solid #ad8f5270;border-radius:20px;gap:.8rem;padding:clamp(.75rem,2vw,1.2rem);animation:.36s ease-out both result-content-fade;display:grid;box-shadow:0 18px 42px #50381a24}.result-complete-header{align-items:center;gap:1rem;padding:0 .15rem;display:flex}.result-complete-header h3{letter-spacing:.01em;margin:0;font-size:clamp(.95rem,1.8vw,1.12rem)}.result-complete-header p{color:var(--muted);margin:0;font-size:.86rem;font-weight:800}.result-status-pill{min-height:1.55rem;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;background:#d9b13f33;border:1px solid #ad8f52a6;border-radius:999px;justify-self:center;align-items:center;padding:.2rem .6rem;font-size:.68rem;font-weight:900;display:inline-flex}.evidence-hero{text-align:center;background:radial-gradient(circle at 50% 18%,#ffee97b8,#0000 36%),linear-gradient(#fffaf0 0%,#f9eac2 100%);border:1px solid #ad8f529e;border-radius:20px;justify-items:center;gap:.7rem;min-height:clamp(12rem,31vh,17.5rem);padding:clamp(1.1rem,3vw,2rem) clamp(1rem,3vw,2.25rem);animation:.42s cubic-bezier(.2,.72,.22,1) both evidence-hero-reveal;display:grid;box-shadow:0 22px 44px #3c321e29,inset 0 1px #ffffffbd}.evidence-hero-icon{background:linear-gradient(135deg,#f3cf56,#fff0a8 58%,#fff8d6);border:1px solid #d9b13f;border-radius:18px;justify-content:center;align-items:center;width:clamp(4.5rem,7vw,5rem);height:clamp(4.5rem,7vw,5rem);font-size:clamp(2.15rem,4vw,2.6rem);display:inline-flex;box-shadow:0 16px 34px #5f451b29,inset 0 1px #ffffffb8}.evidence-hero-copy{justify-items:center;gap:.45rem;max-width:34rem;display:grid}.evidence-hero-copy h3{text-transform:uppercase;letter-spacing:.035em;margin:0;font-size:clamp(2rem,4vw,2.25rem);line-height:1.05}.evidence-hero-copy p:not(.eyebrow){color:var(--ink);margin:0;font-size:clamp(.95rem,1.7vw,1.05rem);line-height:1.4}.evidence-hero-copy .result-save-confirmation{color:#2f744a;background:#4396631f;border:1px solid #43966359;border-radius:999px;justify-self:center;align-items:center;min-height:1.8rem;margin:.15rem 0 0;padding:.25rem .65rem;font-size:.82rem;font-weight:900;animation:.42s ease-out .23s both result-pinning-effect;display:inline-flex}.result-section-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.result-info-card{background:#fffaf0d1;border:1px solid #d8cbb6e6;border-radius:16px;align-content:start;gap:.45rem;padding:.85rem;display:grid}.result-info-card strong{text-transform:uppercase;letter-spacing:.06em;font-size:.78rem}.result-info-card p{color:var(--muted);margin:0;line-height:1.42}.deduction-card{background:#f3cf562e;border-color:#d9b13fb8}.deduction-card p{color:var(--ink);font-weight:700}.evidence-chip-new{width:fit-content;max-width:100%;color:var(--ink);background:#fffaf0;border:1px solid #ad8f52b8;border-radius:999px;justify-content:space-between;align-items:center;gap:.55rem;padding:.45rem .55rem;font-size:.88rem;font-weight:900;animation:.3s ease-out .17s both result-chip-in;display:inline-flex}.new-badge{background:var(--accent-yellow);border:1px solid var(--accent-yellow-deep);letter-spacing:.08em;border-radius:999px;align-items:center;min-height:1.25rem;padding:.1rem .4rem;font-size:.68rem;animation:.72s ease-out .28s both result-badge-pulse;display:inline-flex}.progress-strip{background:#f4ecddc2;border:1px solid #d8cbb6f2;border-radius:16px;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem .85rem;display:flex}.progress-strip p{color:var(--muted);margin:0;font-size:.88rem;font-weight:700}.progress-dots{grid-template-columns:repeat(5,.9rem);gap:.35rem;display:grid}.progress-dots span{background:#e4ddce;border:1px solid #d1c7b4;border-radius:4px;width:.9rem;height:.9rem}.progress-dots span.is-used{background:linear-gradient(135deg,#d9b13f 0%,#8b6640 100%);border-color:#ad8f52}.result-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}@keyframes result-content-fade{0%{opacity:0}to{opacity:1}}@keyframes evidence-hero-reveal{0%{opacity:0;transform:translateY(18px)scale(.95)}to{opacity:1;transform:translateY(-4px)scale(1)}}@keyframes result-badge-pulse{0%{transform:scale(.94)}55%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes result-chip-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes result-pinning-effect{0%{opacity:0;transform:translateY(8px)scale(.92)rotate(-1deg)}58%{opacity:1;transform:translateY(-2px)scale(1.06)rotate(1deg)}to{opacity:1;transform:translateY(0)scale(1)rotate(0)}}@media (width<=720px){.result-complete-header{display:grid}.evidence-hero{min-height:17rem}.result-actions{display:grid}.result-actions .primary-button,.result-actions .secondary-button{justify-content:center;width:100%}}.investigation-progress-card,.investigation-mission-card{gap:.7rem}.investigation-counter-grid{gap:.55rem;display:grid}.investigation-counter-item{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.investigation-counter-label{color:var(--muted);font-size:.86rem;font-weight:700}.investigation-progress-track{grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;display:grid}.investigation-point-slot{background:#e4ddce;border:1px solid #d1c7b4;border-radius:999px;height:.8rem}.investigation-point-slot.is-used{background:linear-gradient(135deg,#d9b13f 0%,#8b6640 100%);border-color:#ad8f52}.investigation-progress-note{color:var(--muted);margin:0;font-size:.94rem}.investigation-mission-list{gap:.4rem;display:grid}.location-heading-copy{gap:.35rem;display:grid}.location-icon{background:#fffdf7e6;border:1px solid #d0c5b1;border-radius:14px;flex:none;justify-content:center;align-items:center;width:3.1rem;height:3.1rem;font-size:1.55rem;display:inline-flex}.location-name{letter-spacing:.03em;margin:0;font-size:1.15rem}.location-description{color:var(--muted);margin:0;font-size:.93rem;line-height:1.45}.location-status-stamp{letter-spacing:.08em;text-transform:uppercase;background:#fffdf7c2;border:2px solid;border-radius:999px;justify-content:center;align-self:start;align-items:center;min-height:2rem;padding:.35rem .65rem;font-size:.74rem;font-weight:800;display:inline-flex;transform:rotate(-6deg)}.location-status-stamp.is-idle{color:#8d7c58}.location-status-stamp.is-searching{color:#8c6f29}.location-status-stamp.is-found{color:#8e4b2b}.location-status-stamp.is-complete{color:#7b6541}.location-status-stamp.is-disabled{color:#9a8f77}.investigation-action-chooser{border-top:1px solid #cbb992cc;gap:.5rem;padding-top:.2rem;display:grid}.investigation-action-header{gap:.15rem;display:grid}.investigation-action-hint{color:var(--muted);margin:0;font-size:.88rem}.investigation-action-list{gap:.45rem;display:grid}.investigation-action-option{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:#fffbefeb;border:1px solid #ccb992;border-radius:12px;align-content:start;gap:.18rem;padding:.6rem .7rem;display:grid}.investigation-action-option:hover{border-color:#b79d60;transform:translateY(-2px);box-shadow:0 6px 12px #52422614}.investigation-action-option--witness{cursor:default}.investigation-action-option--witness:hover{transform:none}.witness-pokemon-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem;margin-top:.45rem;display:grid}.witness-pokemon-option{color:#4b3f2a;font:inherit;cursor:pointer;background:#fff7ded9;border:1px solid #b79d60a6;border-radius:10px;justify-items:center;gap:.15rem;padding:.45rem .3rem;font-size:.82rem;font-weight:800;display:grid}.witness-pokemon-option:hover:not(:disabled){background:#fff4ca;border-color:#a98438;transform:translateY(-1px)}.witness-pokemon-option:disabled{cursor:wait;opacity:.65}.witness-pokemon-sprite{object-fit:contain;width:42px;height:42px;image-rendering:pixelated}.investigation-action-meta{align-items:center;gap:.45rem;display:flex}.investigation-action-icon{font-size:.95rem}.investigation-action-tag{color:#6f6148;letter-spacing:.05em;text-transform:uppercase;background:#e4d9bccc;border-radius:999px;align-items:center;min-height:1.4rem;padding:.1rem .45rem;font-size:.72rem;font-weight:800;display:inline-flex}.investigation-action-label{font-weight:800}.investigation-action-description{color:var(--muted);font-size:.9rem;line-height:1.4}.location-evidence-preview{background:#fffcf4c2;border:1px dashed #c7b999;border-radius:12px;gap:.45rem;padding:.75rem .8rem;display:grid}.location-evidence-preview.is-revealed{animation:.32s clue-fade}.location-evidence-summary-row{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.location-evidence-count{color:var(--muted);font-size:.85rem;font-weight:700}.location-evidence-list{gap:.22rem;display:grid}.location-evidence-copy{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:.9rem}.location-cancel-button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-weight:700}.location-continue-button{justify-self:start;margin-top:.15rem}.suspect-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.suspect-file-page{gap:1rem;display:grid}.suspect-file-back-link,.suspect-file-back-button,.suspect-card-link{color:var(--text-main);text-decoration:none}.suspect-file-back-link{font-weight:700}.dossier-shell{display:grid}.suspect-notebook-shell{gap:0;display:grid}.suspect-notebook-tabs{z-index:1;flex-wrap:wrap;gap:.45rem;padding:0 .9rem;display:flex;position:relative}.suspect-notebook-tab{color:#625641;min-height:2.2rem;font:inherit;letter-spacing:.04em;cursor:pointer;background:#eadbbc;border:1px solid #cbb992;border-bottom:0;border-radius:12px 12px 0 0;padding:.4rem .8rem;font-weight:800}.suspect-notebook-tab.is-active{background:#f8f1df}.suspect-notebook-body{gap:1rem;padding:0 .95rem .95rem;display:grid}.suspects-page-layout{gap:1rem;margin-top:1rem;display:grid}.suspects-page-main{gap:1rem;display:grid}.suspect-evidence-strip{gap:.7rem;margin-top:1.1rem;margin-bottom:1.35rem}.suspect-grid-lineup{margin-top:.35rem}.suspect-evidence-board{gap:.9rem}.suspect-evidence-board-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.suspect-evidence-counter{color:#746548;letter-spacing:.04em;font-size:.88rem;font-weight:800}.suspect-evidence-progress{grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem;display:grid}.suspect-evidence-slot{background:#fffbef94;border:1px dashed #cbb992;border-radius:14px;place-items:center;min-height:3rem;display:grid;position:relative}.suspect-evidence-slot.is-collected{background:#fff8e8e0;border-style:solid}.suspect-evidence-slot-pin{background:#bcb49b9e;border-radius:999px;width:1.1rem;height:.52rem;position:absolute;top:-.24rem;left:50%;transform:translate(-50%)}.suspect-evidence-slot-mark{color:#7d6d50;font-size:1rem;font-weight:800}.suspect-evidence-slot.is-collected .suspect-evidence-slot-mark{color:#8a6240}.suspect-evidence-list{flex-wrap:wrap;gap:.55rem;display:flex}.suspect-evidence-board-list{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:stretch;display:grid}.suspect-evidence-pill{border:1px solid var(--border);background:#fffdf7cc;border-radius:999px;align-items:center;min-height:2rem;padding:.35rem .7rem;font-size:.88rem;font-weight:700;display:inline-flex}.suspect-evidence-tag{background:#fffbefeb;border:1px solid #d1c19d;border-radius:14px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.7rem;min-width:0;padding:.8rem .85rem;display:grid;position:relative;box-shadow:0 8px 14px #5242260f}.evidence-note-card:before{content:"";background:#bcb49b99;border-radius:999px;width:1.2rem;height:.55rem;position:absolute;top:-.24rem;left:.8rem}.suspect-evidence-tag-icon{background:#f6eed6f2;border-radius:999px;justify-content:center;align-items:center;width:1.9rem;height:1.9rem;display:inline-flex}.suspect-evidence-tag-copy{gap:.2rem;display:grid}.suspect-evidence-tag-copy span{color:var(--muted);font-size:.9rem;line-height:1.4}.suspect-evidence-empty{gap:.2rem;display:grid}.suspect-card{text-align:left;cursor:pointer;background:linear-gradient(#f5ecd1 0%,#ecdfbd 100%);border:1px solid #ccb992;border-radius:16px;gap:.65rem;padding:.9rem;transition:transform .14s,border-color .14s,box-shadow .14s,opacity .14s;display:grid;position:relative}.suspect-card:hover{transform:translateY(-2px);box-shadow:0 16px 24px #3d331f29}.lineup-suspect-card{position:relative;box-shadow:0 10px 18px #3d331f1f}.lineup-suspect-card:before,.lineup-suspect-card:after{content:"";pointer-events:none;position:absolute}.lineup-suspect-card.has-tape:before{background:#f1dfa7b8;border-left:1px solid #ffffff73;border-right:1px solid #b8a57466;width:3rem;height:1rem;top:-.45rem;left:50%;transform:translate(-50%)rotate(-4deg)}.lineup-suspect-card:after{background:#76643c52;border-radius:999px;width:.45rem;height:.45rem;top:1.05rem;left:.9rem}.suspect-file-tab{background:#ddcca4;border-radius:10px 10px 0 0;width:4.6rem;height:.78rem;position:absolute;top:-.45rem;left:.95rem}.suspect-file-number{color:#746548;letter-spacing:.08em;text-transform:uppercase;margin-top:.2rem;font-size:.75rem;font-weight:800;display:block}.lineup-suspect-card .suspect-card-top{position:relative}.suspect-status-stamp{z-index:1;color:#b23a32;letter-spacing:.08em;text-align:center;text-transform:uppercase;background:#fffbef33;border:2px solid;border-radius:10px;justify-content:center;align-items:center;min-height:1.7rem;padding:.2rem .55rem;font-size:.68rem;font-weight:800;display:inline-flex;position:absolute;top:1.05rem;right:.7rem;transform:rotate(0)}.suspect-status-stamp.is-suspect{color:#b23a32;background:#b23a322e}.suspect-status-stamp.is-cleared{color:#5a8b4f;background:#5a8b4f2e;transform:rotate(-10deg)}.suspect-status-stamp.is-false-lead{color:#9c7723;background:#9c77232e;transform:rotate(-10deg)}.lineup-suspect-card.is-tilted-left{transform:rotate(-1.75deg)}.lineup-suspect-card.is-tilted-left-soft{transform:rotate(-.85deg)}.lineup-suspect-card.is-tilted-right{transform:rotate(1.75deg)}.lineup-suspect-card.is-tilted-right-soft{transform:rotate(.85deg)}.lineup-suspect-card:hover{transform:translateY(-2px) rotate(var(--suspect-tilt,0deg))}.lineup-suspect-card.is-tilted-left:hover{--suspect-tilt:-1.75deg}.lineup-suspect-card.is-tilted-left-soft:hover{--suspect-tilt:-.85deg}.lineup-suspect-card.is-tilted-right:hover{--suspect-tilt:1.75deg}.lineup-suspect-card.is-tilted-right-soft:hover{--suspect-tilt:.85deg}.suspect-card.is-locked{opacity:.72}.suspect-card.is-ruled-out{opacity:.35}.suspect-card.is-shaking{animation:.42s shake}.suspect-card.is-latest-match{border-color:var(--accent-yellow-deep);box-shadow:0 0 0 2px #d9b13f2e}.suspect-card.is-latest-miss{border-color:var(--border)}.suspect-card.is-selected{outline:2px solid #1f2d4733;box-shadow:0 0 0 3px #fffbefbf,0 16px 24px #3d331f1f}.suspect-card.is-solved{border-color:var(--success);box-shadow:0 0 0 2px #4396633d,0 18px 34px #43966333}.suspect-card.is-revealed-culprit{border-color:#9c7ce0}.suspect-card-top{flex-direction:column;align-items:center;gap:.55rem;display:flex}.suspect-mugshot{background:#fffbefb3;border:1px solid #cfbf9c;border-radius:14px;justify-items:center;padding:.45rem;display:grid}.suspect-name{text-align:center;margin:0;font-weight:700}.suspect-card-link{letter-spacing:.05em;text-transform:uppercase;color:#544a37;opacity:.82;justify-content:center;align-items:center;font-size:.82rem;font-weight:800;transition:opacity .14s,transform .14s;display:inline-flex}.suspect-card:hover .suspect-card-link,.suspect-card:focus-visible .suspect-card-link{opacity:1;transform:translate(2px)}.suspect-card-status{color:var(--muted);text-align:center;margin:0;font-size:.9rem;font-weight:600}.suspect-card.is-ruled-out .suspect-card-status,.suspect-card.is-latest-miss .suspect-card-status{opacity:0}.suspect-card:focus-visible{outline-offset:2px;outline:3px solid #1f2d4747}.suspect-sprite-frame{background-color:#b5c5c4;border:2px solid #c3bfad;flex:none;width:96px;height:96px;position:relative;overflow:hidden}.shiny-stamp{pointer-events:none;filter:drop-shadow(0 1px 2px #00000080);font-size:18px;line-height:1;position:absolute;top:2px;right:2px}.suspect-sprite{width:180px;height:180px;margin-top:-20%;margin-left:-50%}.location-card h3,.app-header h1,.clue-panel h2,.evidence-board h2,.section-heading h2,.inspect-panel h2,.endgame-panel h2,.inspect-section h3{text-transform:uppercase;margin:0}.revealed-facts,.inspect-list{gap:2rem;display:grid}.fact-row,.inspect-item{background:var(--panel);border-radius:12px;gap:.25rem;padding:.6rem .7rem;display:grid}.fact-row-muted{color:var(--muted)}.fact-mark{font-weight:700}.fact-mark.does-match{color:var(--success)}.fact-mark.does-not-match{color:var(--danger)}.inspect-top,.inspect-summary,.inspect-section{gap:.75rem;display:grid}.inspect-top{grid-template-columns:auto 1fr;align-items:center;margin-top:.85rem}.notes-field textarea{border:1px solid var(--border);width:100%;font:inherit;color:var(--text-main);resize:vertical;background:#fff;border-radius:12px;padding:.75rem}.accuse-button{width:100%;margin-top:1rem}.suspect-actions-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.bottom-bar{z-index:10;background:var(--card);grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;padding:1rem;display:grid;position:sticky;bottom:0}.utility-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;padding:1rem;display:grid}.ending-screen{gap:1rem;padding:1rem;display:grid}.solved-case-screen{gap:1.25rem}.victory-screen{background:linear-gradient(#fbf6e8 0%,#f0e5c7 100%);gap:1.25rem}.failed-case-screen{background:linear-gradient(#f6f0df 0%,#eadfc3 100%)}.case-closed-hero{gap:1rem;display:grid}.culprit-reveal-card{background:#fffbefd1;border:1px solid #d5c6a7;border-radius:22px;padding:clamp(1rem,2.4vw,1.55rem)}.ending-hero-copy{align-content:center;gap:.55rem;display:grid}.ending-hero-copy h2,.ending-hero-copy p{margin:0}.ending-hero-copy h2{font-size:clamp(1.65rem,5.25vw,3.25rem);line-height:.95}.ending-culprit-name{font-size:clamp(1.45rem,4vw,2.4rem);line-height:1}.ending-summary-list{gap:1rem}.ending-case-title{color:#6c614c;font-size:.95rem;font-weight:700}.ending-status-row{flex-wrap:wrap;gap:.55rem;display:flex}.ending-culprit-visuals{align-content:center;justify-items:center;gap:.9rem;display:grid}.ending-mugshot-frame{background:radial-gradient(circle at 50% 24%,#fff8dd 0 28%,#fffbefeb 62%);border-radius:20px;justify-items:center;width:min(100%,210px);padding:.9rem;display:grid;box-shadow:0 22px 38px #51432929}.ending-mugshot-frame .suspect-sprite-frame{aspect-ratio:1;border-width:3px;place-items:center;width:100%;height:auto;display:grid}.ending-mugshot-frame .suspect-sprite{object-fit:contain;width:118%;height:118%;image-rendering:pixelated;margin:0}.ending-mugshot-frame .mugshot-label{margin-top:.85rem;font-size:.95rem}.ending-ditto-note{gap:.25rem;padding:.85rem;display:grid}.ending-details-grid{align-items:start;gap:1rem;display:grid}.compact-result-panel{align-self:start;gap:.65rem;display:grid}.case-result-stats{background:#fffbefd1;border:1px solid #d5c6a7;border-radius:16px;flex-wrap:wrap;align-items:center;gap:.45rem 1rem;padding:.75rem .9rem;display:flex}.case-result-stats span{white-space:nowrap}.case-result-stats strong{margin-right:.25rem}.evidence-result-list,.cleared-suspect-list,.result-more-list{gap:.45rem;display:grid}.evidence-result-row,.cleared-suspect-row{background:#fffbefb3;border:1px solid #d7c9abcc;border-radius:12px;align-items:center;gap:.55rem;min-height:2.35rem;padding:.4rem .55rem;display:grid}.evidence-result-row{background:#fffbefdb;grid-template-columns:2rem minmax(0,1fr);padding:.45rem .6rem;transition:transform .14s,box-shadow .14s,border-color .14s;box-shadow:0 6px 14px #51432914}.evidence-result-row:hover{border-color:#a4813e8c;transform:translateY(-1px);box-shadow:0 10px 18px #5143291f}.cleared-suspect-row{grid-template-columns:42px minmax(0,1fr)}@media (width<=520px){.evidence-result-row{grid-template-columns:2rem minmax(0,1fr)}}.evidence-result-icon{background:#fff8e5;border:1px solid #a4813e52;border-radius:999px;place-items:center;width:2rem;height:2rem;font-size:1rem;display:grid;box-shadow:inset 0 0 0 2px #ffffff5c}.evidence-result-copy{gap:.1rem;display:grid}.evidence-result-copy span,.cleared-suspect-copy span{color:var(--muted-text);font-size:.92rem}.cleared-suspect-copy{gap:.12rem;display:grid}.cleared-suspect-row .suspect-sprite-frame{border-width:1px;width:42px;height:42px}.cleared-suspect-row .suspect-sprite{width:78px;height:78px}.cleared-suspect-row .shiny-stamp{font-size:10px}.cleared-suspect-cross{color:#b42318;vertical-align:text-bottom;background:#b423181a;border:1px solid #b4231852;border-radius:999px;place-items:center;width:1.1rem;height:1.1rem;margin-right:.3rem;font-size:.85rem;font-weight:900;line-height:1;display:inline-grid}.result-more-details summary{cursor:pointer;color:#6c614c;padding:.35rem .1rem 0;font-weight:800;list-style:none}.result-more-details summary::-webkit-details-marker{display:none}.result-more-details[open] summary{margin-bottom:.45rem}.evidence-result-row strong,.cleared-suspect-row strong{min-width:0}.ending-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-screen{gap:1.5rem;padding:1rem;display:grid}.case-overview-cta{background:linear-gradient(#fffbe9e6 0%,#f4ebc6f5 100%);border:1px solid #d7cfb5;border-radius:16px;align-content:end;gap:.55rem;padding:1rem;display:grid}.case-overview-cta-copy{color:var(--muted);margin:0;font-size:.95rem}.case-overview-cta-lead,.case-overview-cta-copy{margin:0}.case-overview-cta-lead{color:var(--text-main);font-weight:700}.case-overview-cta-button{background:linear-gradient(135deg,#f7de63 0%,#b8d557 100%);border-color:#8fb04c;justify-self:stretch}.overview-heading{align-items:center}.overview-meta-grid{gap:1rem;display:grid}.overview-suspect-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.overview-suspect-card{position:relative;box-shadow:0 10px 18px #3d331f1f}.overview-suspect-card:before,.overview-suspect-card:after{content:"";pointer-events:none;position:absolute}.overview-suspect-card.has-tape:before{background:#f1dfa7b8;border-left:1px solid #ffffff73;border-right:1px solid #b8a57466;width:3rem;height:1rem;top:-.45rem;left:50%;transform:translate(-50%)rotate(-4deg)}.overview-suspect-card .suspect-card-top{position:relative}.overview-suspect-card.is-tilted-left{transform:rotate(-3deg)}.overview-suspect-card.is-tilted-left-soft{transform:rotate(-1.5deg)}.overview-suspect-card.is-tilted-right{transform:rotate(3deg)}.overview-suspect-card.is-tilted-right-soft{transform:rotate(1.5deg)}.overview-suspects-panel{background:0 0;gap:.9rem;padding:0}.overview-section-copy{gap:.3rem;display:grid}.overview-section-hook{color:var(--muted);margin:0;font-size:.95rem}.case-details-notebook{background:linear-gradient(90deg,#0000 0 2.4rem,#f0aca4 2.4rem 2.5rem,#0000 2.5rem),repeating-linear-gradient(#fffdf7 0 2.25rem,#d8dde9 2.25rem calc(2.25rem + 1px));border:1px solid #d9d2c3;gap:.75rem;margin-top:.35rem;padding:.85rem .9rem .9rem 1.15rem;line-height:17px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffd9}.case-details-notebook:before{content:"";pointer-events:none;background:linear-gradient(#ffffff38,#0000 20%);position:absolute;inset:0}.case-details-lines{gap:.6rem;padding-left:1.9rem;font-family:Courier New,Courier,monospace;display:grid}.case-detail-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:1.75rem;display:grid}.case-detail-icon{color:#7d5f3f;justify-content:center;align-items:center;width:1.2rem;height:1.2rem;font-weight:700;display:inline-flex}.case-detail-icon-svg{width:1rem;height:1rem;display:block}.case-detail-label{text-transform:uppercase;letter-spacing:.05em;color:#6b614c;font-size:.83rem}.case-detail-value{color:#2b2a25;font-weight:700}.post-it-note{color:#4f4321;background:linear-gradient(#fff5a8 0%,#f6df73 100%);border-radius:6px;padding:1.25rem 1.15rem 1.35rem;display:grid;position:relative;transform:rotate(-2deg);box-shadow:0 14px 28px #75622238}.post-it-note:after{content:"";clip-path:polygon(100% 0,0 100%,100% 100%);background:linear-gradient(135deg,#d7c05a1a 0%,#c9b04357 100%);width:2.1rem;height:2.1rem;position:absolute;bottom:0;right:0}.post-it-title,.post-it-copy{z-index:1;position:relative}.post-it-title{text-transform:uppercase;letter-spacing:.04em;margin-top:.85rem;font-size:1rem}.post-it-copy{gap:.75rem;line-height:1.55;display:grid}.ending-sprites{flex-wrap:wrap;gap:1rem;display:flex}.ending-sprite-card{background:var(--panel);border-radius:16px;justify-items:center;gap:.5rem;min-width:120px;padding:.75rem;display:grid}.overlay-shell{z-index:20;align-items:end;display:grid;position:fixed;inset:0}.overlay-backdrop{background:#1f2d4747;position:absolute;inset:0}.crime-scene-sheet{z-index:1;gap:1rem;margin:.75rem;padding:1rem;display:grid;position:relative}.suspect-detail-sheet{gap:.8rem}.selected-suspect-casefile{background:linear-gradient(#f7f0dd 0%,#f1e5c8 100%);align-content:start;gap:1rem;padding-top:1.4rem;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 30px #4a3a1c14}.selected-suspect-overview-grid{gap:1rem;display:grid}.suspect-overview-identity{grid-template-columns:1fr;justify-items:start}.suspect-overview-identity h3{text-transform:uppercase;margin:0}.dossier-panel{position:relative}.notebook-margin{background:#d66c5a59;width:2px;position:absolute;top:0;bottom:0;left:1.35rem}.selected-suspect-empty{align-content:center;min-height:10rem}.selected-suspect-header{gap:.9rem;display:grid}.selected-suspect-copy{gap:.35rem;display:grid}.selected-suspect-copy h3{text-transform:uppercase;margin:0}.dossier-file-number{color:#7b6d55;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:800}.selected-suspect-status-row{flex-wrap:wrap;align-items:center;gap:.55rem;display:flex}.selected-suspect-status-label{letter-spacing:.08em;text-transform:uppercase;color:#7b6d55;font-size:.78rem;font-weight:800}.selected-suspect-body{gap:1rem;display:grid}.selected-suspect-section{gap:.8rem;display:grid}.selected-suspect-section-plain{align-content:start}.status-stamp{letter-spacing:.08em;text-transform:uppercase;background:#fffbefad;border:2px solid;border-radius:999px;justify-content:center;align-items:center;min-height:1.9rem;padding:.25rem .65rem;font-size:.72rem;font-weight:800;display:inline-flex}.status-stamp.is-suspect{color:#b23a32}.status-stamp.is-cleared{color:#5a8b4f}.status-stamp.is-false-lead{color:#9c7723}.mugshot-frame{background:#fffbefb8;border:1px solid #cdbf9f;border-radius:16px;padding:.65rem;box-shadow:0 10px 16px #51432914}.mugshot-label{text-align:center;letter-spacing:.08em;text-transform:uppercase;color:#7b6d55;margin-top:.5rem;font-size:.72rem;font-weight:800;display:block}.suspect-overview-progress{gap:.45rem;display:grid}.suspect-overview-progress-track{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;display:grid}.suspect-overview-progress-step{background:#ddd1b5;border-radius:999px;height:.6rem}.suspect-overview-progress-step.is-complete{background:linear-gradient(135deg,#cf9a7c 0%,#a7634b 100%)}.suspect-overview-notes,.suspect-overview-evidence,.suspect-overview-decision{align-content:start}.dossier-evidence-notes{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.evidence-note{background:#fffbefeb;border-radius:12px;justify-content:flex-start;min-height:2.4rem;position:relative;box-shadow:0 6px 12px #5143290f}.evidence-note:before{content:"";background:#bcb49b99;border-radius:999px;width:1.2rem;height:.55rem;position:absolute;top:-.28rem;left:.8rem}.detective-notes{align-content:start}.suspect-notes-history{margin-top:.2rem}.suspect-group-toggle{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.8rem;padding:0;display:grid}.suspect-group-toggle p{margin:.2rem 0 0}.folder-section{position:relative}.folder-section:before{content:"";background:#ddcca4;border-radius:10px 10px 0 0;width:4.5rem;height:.8rem;position:absolute;top:-.45rem;left:.95rem}.folder-section-open:before{background:#d4c190}.suspect-group-chevron{color:#6b614c;font-size:1.35rem;line-height:1}.suspect-group-action-row{gap:.65rem;display:grid}.suspect-group-summary{color:var(--muted);gap:.2rem;font-size:.92rem;display:grid}.selected-suspect-actions{gap:.75rem;display:grid}.suspect-case-header{gap:.9rem;display:grid}.suspect-case-header-copy{gap:.35rem;display:grid}.suspect-detail-mugshot .suspect-sprite-frame{width:132px;height:132px}.suspect-detail-mugshot .suspect-sprite{width:220px;height:220px}.suspect-case-body{gap:1rem;display:grid}.suspect-case-main,.suspect-case-side{gap:.85rem;display:grid}.suspect-case-section-heading h3{text-transform:uppercase;margin:0}.suspect-group-list{gap:.8rem;display:grid}.suspect-group-card{background:linear-gradient(#f7f1df 0%,#efe4c7 100%);border:1px solid #cfc2a7;border-radius:14px;gap:.75rem;padding:.85rem;display:grid}.suspect-group-card.is-open{background:linear-gradient(#f4ecd5 0%,#eadcbb 100%)}.suspect-group-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.8rem;display:grid}.suspect-group-icon{width:1.4rem;display:inline-block}.suspect-group-header p{margin:.2rem 0 0}.suspect-group-locked{color:var(--muted);font-weight:600}.suspect-group-details{gap:.55rem;display:grid}.suspect-group-row{background:#fffcf4b8;border-radius:10px;gap:.15rem;padding:.55rem .65rem;display:grid}.suspect-group-label{letter-spacing:.05em;text-transform:uppercase;color:#6b614c;font-size:.78rem;font-weight:800}.suspect-side-section{gap:.7rem}.suspect-evidence-list-column{display:grid}.suspect-note-options{flex-wrap:wrap;gap:.55rem;display:flex}.suspect-note-button{min-height:2.1rem}.suspect-case-actions{background:linear-gradient(#f4ebd400 0%,#f4ebd4eb 18%,#f4ebd4 100%);padding-top:.35rem;position:sticky;bottom:0}.overlay-actions{gap:.75rem;display:grid}.suspect-sheet-top{align-items:center;gap:.75rem;display:grid}.inspect-summary-block{gap:.35rem;display:grid}.suspect-facts-list{gap:.75rem}.inspect-fact-row{grid-template-columns:1fr auto;align-items:center;gap:.6rem;padding:.7rem}.inspect-fact-row p{margin:.15rem 0 0}.inspect-fact-row strong{margin-top:.2rem;display:block}.notebook-sublist{gap:.35rem;margin-top:.35rem;display:grid}.evidence-reveal{border:1px dashed #c8bcaa}.evidence-list{gap:.75rem;margin-top:1rem;display:grid}.evidence-item{background:var(--panel);border:1px dashed #c8bcaa;border-radius:16px;grid-template-columns:auto 1fr;align-items:start;gap:.8rem;padding:.85rem;display:grid}.evidence-item.is-revealed{animation:.32s clue-fade}.evidence-index{border:1px solid var(--border);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:2rem;height:2rem;font-weight:700;display:inline-flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.investigation-pinboard{background:linear-gradient(#d4a76a 0%,#b8894e 100%);border:1px solid #00000014;border-radius:18px;gap:1rem;padding:1.5rem;display:grid;position:relative;overflow:hidden}.string-layer{pointer-events:none;z-index:0;position:absolute;inset:0}.string-svg{width:100%;height:100%;display:block}.pinboard-card{z-index:1;border-radius:12px;padding:1rem;position:relative;box-shadow:0 4px 12px #3c321e1f}.board-progress-card{color:#4f4321;letter-spacing:.03em;text-transform:uppercase;background:#fffaf0eb;border:1px solid #4f432124;justify-content:space-between;align-items:center;gap:.75rem;font-size:.86rem;font-weight:900;display:flex}.budget-card{color:#4f4321;background:linear-gradient(#fff5a8 0%,#f6df73 100%)}.budget-card-pin{background:var(--pin-red);border-radius:50%;width:12px;height:12px;position:absolute;top:.5rem;left:50%;transform:translate(-50%);box-shadow:0 1px 3px #0000004d}.budget-card-title,.evidence-card-title,.theory-card-title{text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem;font-size:.8rem;font-weight:800;display:block}.budget-token-row{gap:.4rem;margin:.5rem 0;display:flex}.budget-token{background:#fffbef80;border:1px solid #4f432133;border-radius:6px;width:1.5rem;height:1.5rem}.budget-token.is-available{background:var(--gold);border-color:#4f43214d}.budget-token.is-spent{opacity:.4;background:#fffbef4d}.budget-card-text{margin:0;font-size:.9rem;font-weight:700}.budget-card-meta{opacity:.7;margin:.3rem 0 0;font-size:.78rem}.evidence-card{background:var(--paper);border:1px solid var(--border)}.evidence-card-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.evidence-card-item{align-items:center;gap:.4rem;font-size:.85rem;display:flex}.evidence-card-empty{color:var(--muted);font-size:.88rem;font-style:italic}.theory-card{background:var(--paper);border:1px solid var(--border)}.theory-card-stack{border:1px solid var(--border);background:var(--paper-dark);z-index:-1;border-radius:10px;position:absolute;inset:.3rem}.theory-card-text{color:var(--muted);margin:0;font-size:.9rem;line-height:1.5}.investigation-location-card{transform:rotate(var(--tilt,0deg));cursor:pointer;z-index:1;background:linear-gradient(#fffaf0 0%,#f5edd6 100%);border:1px solid #d8cbb6;border-radius:12px;gap:.6rem;padding:1rem 1rem .8rem;transition:transform .18s,box-shadow .18s;display:grid;position:relative;box-shadow:0 4px 12px #3c321e1f}.investigation-location-card:hover{transform:rotate(var(--tilt,0deg)) translateY(-3px);box-shadow:0 8px 20px #3c321e2e}.investigation-location-card:focus-visible{outline:3px solid var(--pin-blue);outline-offset:2px}.investigation-location-card.is-complete{opacity:.85;cursor:default;background:linear-gradient(#f0ebdb 0%,#e5ddc7 100%);border-color:#bfb59b}.investigation-location-card.is-disabled{opacity:.6;cursor:default}.investigation-location-card.is-disabled:hover{transform:rotate(var(--tilt,0deg))}.investigation-location-card.is-active-location{border-color:#8a7448;box-shadow:0 0 0 3px #f5eabfc7,0 4px 12px #3c321e1f}.investigation-location-card:before{content:"";background:var(--pin-red);z-index:2;border-radius:50%;width:12px;height:12px;position:absolute;top:-.35rem;left:50%;transform:translate(-50%);box-shadow:0 1px 3px #0000004d}.pin-location-dot{display:none}.pin-location-status{text-transform:uppercase;letter-spacing:.06em;background:var(--paper);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:.15rem .5rem;font-size:.68rem;font-weight:800;position:absolute;top:.5rem;right:.5rem}.pin-location-status.is-searching{color:#8c6f29;border-color:var(--gold)}.pin-location-status.is-complete{color:#5a8b4f;border-color:var(--success)}.pin-location-status.is-disabled{color:var(--muted)}.pin-location-icon{background:#fffdf7cc;border:1px solid #d0c5b1;border-radius:10px;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;font-size:1.3rem;display:inline-flex}.pin-location-name{text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:.95rem;font-weight:700}.location-card__evidence{background:#fffcf499;border:1px solid #ddd2bd;border-radius:8px;flex-direction:column;gap:.25rem;min-height:2.4rem;padding:.5rem .6rem;display:flex}.location-card__evidence-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.65rem;font-weight:800}.location-card__evidence-item{color:var(--text-main);align-items:center;gap:.35rem;font-size:.82rem;font-weight:700;line-height:1.3;display:flex}.location-card__evidence-item--empty{color:var(--muted);font-style:italic;font-weight:400}.pin-location-button{background:var(--accent-yellow);width:100%;min-height:2rem;font:inherit;color:var(--text-main);cursor:pointer;border:1px solid #bcae8d;border-radius:10px;padding:.5rem .7rem;font-size:.82rem;font-weight:700;transition:transform .14s,box-shadow .14s}.pin-location-button:hover{box-shadow:var(--shadow-soft);transform:translateY(-1px)}.pin-location-button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.pin-location-button.is-review{background:var(--paper)}@keyframes clue-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-3px)}}@keyframes heart-pop{0%{transform:scale(1)}40%{transform:scale(1.35)}to{transform:scale(1)}}@keyframes stamp-pop{0%{opacity:0;transform:rotate(-10deg)scale(1.18)}to{opacity:1;transform:rotate(-6deg)scale(1)}}@keyframes skeleton-sheen{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (width>=760px){.app-shell{grid-template-columns:minmax(220px,260px) minmax(0,1fr);align-items:start;padding:1.25rem}.desktop-sidebar{flex-direction:column;align-self:start;gap:1.25rem;min-height:calc(100vh - 2.5rem);padding:1rem;display:flex;position:sticky;top:1.25rem}.main-layout{grid-template-columns:minmax(0,2.2fr) minmax(320px,1fr);align-items:start}.investigation-action-list{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-meta-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) minmax(260px,.9fr);align-items:start}.how-to-play-hero{grid-template-columns:minmax(0,1fr) minmax(240px,.45fr);align-items:start}.how-to-play-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.case-overview-cta{min-height:100%}.case-overview-cta-button{justify-self:stretch;min-width:0}.overview-suspect-row{grid-template-columns:repeat(6,minmax(0,1fr));align-items:start}.mobile-section,.mobile-section.is-active{display:grid}.header-meta{justify-items:end}.suspect-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bottom-bar,.utility-bar{display:none}.overlay-shell{place-items:center}.crime-scene-sheet{width:min(560px,100% - 1.5rem)}.suspect-detail-sheet{width:min(500px,100% - 1.5rem)}.selected-suspect-header{grid-template-columns:auto 1fr;align-items:center}.selected-suspect-casefile{max-height:calc(100vh - 11rem)}.suspect-notebook-body{min-height:0;overflow:auto}.selected-suspect-overview-grid{grid-template-columns:minmax(220px,.9fr) minmax(0,1fr);align-items:start}.suspect-overview-identity{grid-row:span 2}.suspect-overview-decision{grid-column:1/-1}.case-closed-hero{grid-template-columns:minmax(0,1fr) minmax(220px,.75fr);align-items:center}.ending-details-grid{grid-template-columns:minmax(0,1fr) minmax(300px,1fr);align-items:start}.suspects-page-layout{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);align-items:start}.selected-suspect-body{gap:.9rem}.selected-suspect-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.investigation-pinboard{grid-template-columns:repeat(4,1fr);grid-template-areas:"stats stats stats stats""budget pantry kitchen theory""storage photo counter evidence"}}@media (width<=759px){.investigation-pinboard{grid-template-columns:repeat(2,1fr);grid-template-areas:unset}.board-progress-card{grid-column:1/-1;justify-items:start;display:grid}.budget-card,.evidence-card,.theory-card{grid-column:1/-1}.investigation-location-card{--tilt:0deg!important}.pin-location-evidence-slot{width:1.6rem;height:1.6rem}}.login-page{justify-content:center;display:flex}.login-shell{grid-template-columns:minmax(420px,1.15fr) minmax(340px,.85fr);gap:1.5rem;width:100%;max-width:900px;margin-top:2rem;display:grid}.login-note-card{border:1px solid var(--border);box-shadow:var(--shadow-card);background:#fcf8ee repeating-linear-gradient(0deg,#0000,#0000 2px,#8b775a05 2px 3px);border-radius:4px 20px 20px 4px;gap:0;padding:1.25rem 2rem 1.25rem 56px;display:grid;position:relative;overflow:hidden}.login-note-card:before{content:"";background-color:#fcf8ee;background-image:radial-gradient(circle 11px at 11px 29px, #00000009 9px, transparent 9px), radial-gradient(circle 10px at 10px 28px, var(--page) 9px, transparent 10px);z-index:1;pointer-events:none;background-repeat:repeat-y;background-size:100% 44px;width:40px;position:absolute;top:0;bottom:0;left:0}.login-note-card:after{content:"";z-index:1;pointer-events:none;background:#c850464d;width:2px;position:absolute;top:0;bottom:0;left:28px}.login-note-card__tape{transform-origin:0 0;pointer-events:none;z-index:2;background:#d7c39b73;border-radius:2px;width:40px;height:20px;position:absolute;top:0;left:0;transform:rotate(-8deg)}.login-note-card__title{color:var(--text-main);border-bottom:3px solid var(--accent-yellow);max-width:420px;margin:0 0 .35rem;padding-bottom:.5rem;font-size:2.2rem;font-weight:800;line-height:1.1;display:inline-block}.login-note-card__desc{color:var(--muted);margin:0 0 1.25rem;font-size:.9rem;line-height:1.5}.login-note-card__watermark{letter-spacing:.12em;color:var(--text-main);opacity:.06;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.7rem;font-weight:700;position:absolute;bottom:8px;right:12px}.google-login-button{border:1px solid var(--border);width:100%;height:56px;color:var(--text-main);font:inherit;cursor:pointer;background:#fff;border-radius:14px;justify-content:center;align-items:center;gap:.75rem;padding:0 1.2rem;font-size:.95rem;font-weight:800;transition:background-color .14s,border-color .14s,box-shadow .14s,transform .14s;display:flex;box-shadow:0 1px 3px #3c321e14}.google-login-button:hover{border-color:var(--button-border);background:#fff8df;transform:translateY(-1px);box-shadow:0 2px 8px #3c321e1a}.google-login-button:active{transform:scale(.98)}.google-login-button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.google-login-logo{flex-shrink:0;width:28px;height:28px}.login-security-note{color:var(--muted);align-items:center;gap:.35rem;margin:.75rem 0 0;font-size:.78rem;line-height:1.4;display:flex}.login-security-lock{opacity:.55;flex-shrink:0}.login-benefits-note{border:1px solid var(--border);box-shadow:var(--shadow-card);background:#fff8df;border-radius:20px;align-content:start;gap:0;padding:1.5rem 1.75rem;display:grid;position:relative}.login-benefits-note__pushpin{pointer-events:none;z-index:1;background:#d32f2f;border-radius:50%;width:14px;height:14px;position:absolute;top:-6px;right:14px;box-shadow:0 2px 4px #0000002e}.login-benefits-note__pushpin:after{content:"";background:#ffffff59;border-radius:2px;width:6px;height:3px;position:absolute;top:3px;left:4px}.login-benefits-note__title{color:var(--text-main);border-bottom:2px solid var(--accent-yellow);margin:0 0 .15rem;padding-bottom:.35rem;font-size:1rem;font-weight:700;display:inline-block}.benefit-list{gap:0;margin-top:.75rem;display:grid}.benefit-item{border-top:1px solid #00000014;grid-template-columns:48px 1fr;align-items:start;gap:.85rem;padding:1rem 0;display:grid}.benefit-item:first-of-type{border-top:none;padding-top:0}.benefit-check{background:#d9b13f38;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;margin-top:-2px;display:flex}.benefit-item strong{color:var(--text-main);margin-bottom:.15rem;font-size:.88rem;font-weight:700;display:block}.benefit-item span:not(.benefit-check){color:var(--muted);font-size:.82rem;line-height:1.4;display:block}@media (width<=760px){.login-page{margin-top:1rem}.login-shell{grid-template-columns:1fr;margin-top:1rem}.login-note-card{padding:1.25rem 1.5rem 1.25rem 46px}.login-note-card:before{background-image:radial-gradient(circle 8px at 8px 20px, #00000009 6px, transparent 6px), radial-gradient(circle 7px at 7px 19px, var(--page) 6px, transparent 7px);background-size:100% 34px;width:32px}.login-note-card:after{left:22px}.login-note-card__tape{width:32px;height:16px}.login-note-card__watermark{display:none}.login-note-card__title{max-width:100%;font-size:1.6rem}.login-benefits-note{padding:1.25rem 1.5rem}.google-login-button{height:54px}}@media (width<=479px){.investigation-pinboard{grid-template-columns:1fr}.string-layer{display:none}.pin-location-status{padding:.1rem .4rem;font-size:.6rem}.pin-location-icon{width:2rem;height:2rem;font-size:1.1rem}.pin-location-name{font-size:.85rem}.pin-location-evidence-slot{width:1.4rem;height:1.4rem;font-size:.7rem}}
