@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,700;1,700&display=swap";*{box-sizing:border-box}html{color:#e9eee9;scroll-behavior:smooth;font-family:Manrope,sans-serif}body,html{background:#071416}body{min-width:320px;margin:0}button,input{font:inherit}a,button{color:inherit}a{text-decoration:none}::selection{color:#071416;background:#d8b457}.eyebrow{color:#d8b457;letter-spacing:.16em;text-transform:uppercase;margin:0 0 14px;font:500 11px/1.4 DM Mono,monospace}.status-dot{background:#76b99b;border-radius:50%;width:7px;height:7px;margin-right:8px;display:inline-block;box-shadow:0 0 12px #76b99b}.primary-button{color:#071416;cursor:pointer;background:#d8b457;border:1px solid #d8b457;border-radius:2px;justify-content:space-between;align-items:center;gap:32px;min-height:52px;padding:0 22px;font-weight:700;transition:transform .18s,background .18s;display:inline-flex}.primary-button:hover{background:#e8c76d;transform:translateY(-2px)}.primary-button:disabled{cursor:wait;opacity:.55;transform:none}.primary-button.wide{width:100%}.login-page{background:radial-gradient(circle at 15% 30%,#12343a,#071416 43%,#040a0c);min-height:100svh;position:relative;overflow:hidden}.login-page:after{content:"";opacity:.16;background-image:url(data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20180%20180%22%3E%3Cfilter%20id%3D%22a%22%3E%3CfeTurbulence%20baseFrequency%3D%22.8%22%20numOctaves%3D%223%22%20stitchTiles%3D%22stitch%22%20type%3D%22fractalNoise%22%2F%3E%3C%2Ffilter%3E%3Crect%20width%3D%22100%25%22%20height%3D%22100%25%22%20filter%3D%22url\(%23a\)%22%20opacity%3D%22.4%22%2F%3E%3C%2Fsvg%3E);inset:0}.login-page:after,.rain{pointer-events:none;position:absolute}.rain{opacity:.12;background:repeating-linear-gradient(102deg,#0000 0 22px,#d8e6e0cc 23px,#0000 24px 47px);animation:3s linear infinite rain;inset:-100px 0}@keyframes rain{to{transform:translate(-25px,90px)}}.login-scene{z-index:1;grid-template-columns:1.2fr minmax(340px,470px);align-items:center;gap:calc(clamp(50px,10vw,150px));width:min(1180px,100% - 48px);min-height:100svh;margin:auto;padding:60px 0;display:grid;position:relative}.login-copy{animation:.9s cubic-bezier(.2,.7,.2,1) both scene-rise}.login-copy h1{color:#eef3ed;letter-spacing:-.075em;margin:0;font:700 calc(clamp(70px,10vw,150px))/.77 Playfair Display,serif}.login-copy h1 em{color:#d8b457;padding-left:.36em;font-weight:700}.login-lede{color:#bdc9c5;max-width:570px;margin:44px 0 36px;font-size:calc(clamp(17px,2vw,21px));line-height:1.65}.location-line{color:#758985;letter-spacing:.12em;flex-wrap:wrap;gap:12px 28px;font:10px DM Mono,monospace;display:flex}.login-panel{color:#16201e;background:#e7e0cf;padding:58px 42px 36px;animation:.95s cubic-bezier(.16,.8,.25,1) .15s both file-arrive;position:relative;transform:rotate(.5deg);box-shadow:0 30px 90px #00000080}@keyframes scene-rise{0%{opacity:0;transform:translateY(24px)}}@keyframes file-arrive{0%{opacity:0;transform:translate(45px)rotate(2deg)}to{opacity:1;transform:translate(0)rotate(.5deg)}}.login-panel:before{content:"";pointer-events:none;border:1px solid #3e433b33;inset:9px}.folder-tab,.login-panel:before,.seal,.seal:after{position:absolute}.folder-tab{color:#ddd8ca;letter-spacing:.12em;background:#712e2e;padding:10px 22px;font:10px DM Mono,monospace;top:-30px;left:0}.seal{color:#712e2e;border:2px solid #712e2e8c;border-radius:50%;place-items:center;width:58px;height:58px;font:500 20px DM Mono,monospace;display:grid;top:28px;right:28px;transform:rotate(8deg)}.seal:after{content:"";border:1px solid #712e2e66;border-radius:50%;inset:4px}.form-kicker{color:#712e2e;letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font:500 10px DM Mono,monospace}.login-panel h2{margin:0;font:700 35px Playfair Display,serif}.form-note{color:#59605a;margin:16px 0 34px;font-size:13px;line-height:1.65}.login-panel label{margin:18px 0;display:block}.login-panel label span{color:#555d57;letter-spacing:.12em;text-transform:uppercase;margin-bottom:7px;font:500 10px DM Mono,monospace;display:block}.login-panel input{color:#111918;background:#ffffff59;border:1px solid #9b9d91;border-radius:0;outline:none;width:100%;height:49px;padding:0 14px}.login-panel input:focus{border-color:#712e2e;box-shadow:0 0 0 2px #712e2e1f}.form-error{color:#8f2525;font-size:12px}.secure-note{color:#757a72;text-align:center;text-transform:uppercase;letter-spacing:.08em;margin:18px 0 0;font:9px DM Mono,monospace}.topbar{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#071416f0;border-bottom:1px solid #213234;justify-content:space-between;height:72px;padding:0 calc(clamp(20px,5vw,70px));position:sticky;top:0}.brand,.topbar{align-items:center;display:flex}.brand{gap:13px}.brand-mark{color:#d8b457;border:1px solid #d8b457;border-radius:50%;place-items:center;width:38px;height:38px;font:italic 700 22px Playfair Display,serif;display:grid}.brand small,.brand strong{display:block}.brand strong{letter-spacing:.12em;font:600 11px DM Mono,monospace}.brand small{color:#6f8480;letter-spacing:.1em;margin-top:4px}.brand small,.topbar-meta{font:9px DM Mono,monospace}.topbar-meta{color:#7e918d;letter-spacing:.09em;align-items:center;gap:34px;display:flex}.menu-button,.topbar-meta button{color:#b7c3bf;font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0}.menu-button{display:none}.case-app main{position:relative}.case-app main:after{z-index:90;content:"";pointer-events:none;transform-origin:100%;background:#d8b457;position:fixed;inset:0;transform:scaleX(0)}.case-app main.chapter-entering:after{animation:1.05s cubic-bezier(.76,0,.24,1) both chapter-wipe}.chapter-entering .case-hero-content{animation:1s cubic-bezier(.2,.7,.2,1) .15s both chapter-content}.chapter-entering .scene-card{animation:.95s cubic-bezier(.2,.7,.2,1) .2s both chapter-scene}@keyframes chapter-wipe{0%{transform-origin:100%;transform:scaleX(0)}43%{transform-origin:100%;transform:scaleX(1)}44%{transform-origin:0}to{transform-origin:0;transform:scaleX(0)}}@keyframes chapter-content{0%{opacity:0;transform:translateY(25px)}}@keyframes chapter-scene{0%{opacity:0;transform:translate(35px)rotate(2.5deg)}}.case-hero{background:radial-gradient(circle at 74% 46%,#17373b,#0b2225 26%,#071416 64%);grid-template-columns:minmax(0,1fr) minmax(330px,.72fr);min-height:650px;padding:calc(clamp(65px,9vw,120px)) calc(clamp(24px,7vw,110px)) 90px;display:grid;position:relative;overflow:hidden}.hero-grid{opacity:.18;background-image:linear-gradient(#5e7774 1px,#0000 0),linear-gradient(90deg,#5e7774 1px,#0000 0);background-size:60px 60px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000,#000);mask-image:linear-gradient(90deg,#0000,#000)}.chapter-mark{color:#ffffff06;font:700 36vw/1 Playfair Display,serif;position:absolute;bottom:-8vw;right:3vw}.case-hero-content{z-index:2;max-width:720px;animation:.8s both scene-rise;position:relative}.case-hero h1{color:#f1f2eb;letter-spacing:-.055em;max-width:700px;margin:0;font:700 calc(clamp(54px,7vw,105px))/.92 Playfair Display,serif}.chapter-subtitle{color:#85a09a;letter-spacing:.14em;text-transform:uppercase;margin:20px 0 40px;font:10px DM Mono,monospace}.briefing-copy{color:#b5c3bf;max-width:665px;font-size:16px;line-height:1.78}.briefing-copy p:first-child:first-letter{float:left;color:#d8b457;margin:6px 8px 0 0;font:700 52px/38px Playfair Display,serif}.objective{background:#ffffff0b;border-left:2px solid #d8b457;align-items:center;gap:16px;max-width:640px;margin-top:35px;padding:17px 20px;display:flex}.objective span{color:#d8b457;letter-spacing:.11em;text-transform:uppercase;flex:none;font:9px DM Mono,monospace}.objective strong{color:#dde5e1;font-size:13px}.scene-card{z-index:2;background:#040c0eb3;border:1px solid #385056;align-self:center;margin-left:calc(clamp(20px,5vw,80px));padding:9px;animation:.9s .12s both scene-card-in;position:relative;transform:rotate(1.2deg);box-shadow:0 30px 80px #00000059}@keyframes scene-card-in{0%{opacity:0;transform:translate(28px)rotate(2.5deg)}}.scene-window{background:linear-gradient(#0a202c 0 54%,#102628 0);height:360px;position:relative;overflow:hidden}.scene-window:before{z-index:3;content:"";opacity:.45;background:repeating-linear-gradient(105deg,#0000 0 19px,#9bb9bb 20px,#0000 21px 42px);position:absolute;inset:0}.scene-window:after{content:"";background:#d9a547;height:2px;position:absolute;bottom:11%;left:8%;right:8%;transform:perspective(80px)rotateX(50deg);box-shadow:0 9px 24px 5px #d9a54780}.building{background:#091416;display:block;position:absolute;bottom:45%;box-shadow:inset 0 0 0 1px #203337}.building:after{content:"";opacity:.8;background:repeating-linear-gradient(90deg,#d4aa56 0 3px,#0000 0 15px),repeating-linear-gradient(0deg,#0000 0 10px,#d4aa56 11px 13px);position:absolute;inset:12px}.building-one{width:29%;height:31%;left:5%}.building-two{width:34%;height:48%;left:35%}.building-three{width:26%;height:37%;right:4%}.scene-caption{color:#78908d;letter-spacing:.1em;justify-content:space-between;padding:10px 5px 2px;font:8px DM Mono,monospace;display:flex}.scene-caption span:last-child{color:#bd625a}.case-progress{background:#091719;border-top:1px solid #1b2d2f;border-bottom:1px solid #1b2d2f;grid-template-columns:repeat(6,1fr);padding:0 calc(clamp(24px,7vw,110px));display:grid}.progress-step{color:#526763;border-right:1px solid #1b2d2f;align-items:center;gap:12px;min-height:92px;display:flex;position:relative}.progress-step:first-child{border-left:1px solid #1b2d2f;padding-left:18px}.progress-step.active:after{content:"";background:#d8b457;height:2px;position:absolute;bottom:-1px;left:0;right:0;box-shadow:0 0 14px #d8b457}.progress-step.done{color:#789c8d}.progress-step.active{color:#e6eae5}.step-number{border:1px solid;border-radius:50%;place-items:center;width:28px;height:28px;display:grid}.step-label,.step-number,.tab-switcher button{font:9px DM Mono,monospace}.step-label{letter-spacing:.11em;text-transform:uppercase}.case-workspace{color:#17211f;background:#e7e0cf;padding:calc(clamp(70px,9vw,120px)) calc(clamp(24px,7vw,110px))}.section-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:45px;display:flex}.section-heading h2{letter-spacing:-.035em;margin:0;font:700 calc(clamp(32px,4vw,53px))/1.05 Playfair Display,serif}.tab-switcher{border:1px solid #a9aa9e;padding:4px;display:flex}.tab-switcher button{color:#68706a;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;min-width:95px;padding:10px 15px}.tab-switcher button.active{color:#f0eadc;background:#17211f}.evidence-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.evidence-card{color:#17211f;text-align:left;cursor:pointer;background:#ffffff3b;border:1px solid #b5b3a7;flex-direction:column;align-items:flex-start;min-height:220px;padding:27px;transition:min-height .3s cubic-bezier(.2,.8,.2,1),transform .22s,box-shadow .22s,background .22s;animation:.55s both evidence-arrive;display:flex;position:relative;overflow:hidden}.evidence-card:nth-child(2){animation-delay:70ms}.evidence-card:nth-child(3){animation-delay:.14s}.evidence-card:nth-child(4){animation-delay:.21s}@keyframes evidence-arrive{0%{opacity:0;transform:translateY(18px)}}.evidence-card.open,.evidence-card:hover{z-index:2;background:#f2eddf;transform:translateY(-5px)rotate(-.4deg);box-shadow:0 20px 45px #1e221d29}.evidence-card.open{min-height:315px}.evidence-index{color:#8d9087;font:9px DM Mono,monospace;position:absolute;top:22px;right:22px}.evidence-label{color:#8c3835;letter-spacing:.12em;text-transform:uppercase;font:500 9px DM Mono,monospace}.evidence-card strong{max-width:85%;margin:24px 0 16px;font:700 24px/1.12 Playfair Display,serif;display:block}.evidence-body{color:#555d57;font-size:13px;line-height:1.65;animation:.28s both evidence-copy}@keyframes evidence-copy{0%{opacity:0;transform:translateY(-5px)}}.evidence-stamp{color:#8c3835;border:1px solid #8c383580;align-self:flex-end;padding:7px 10px;transform:rotate(-3deg)}.evidence-stamp,.inspect-label{letter-spacing:.08em;margin-top:auto;font:9px DM Mono,monospace}.inspect-label{text-transform:uppercase;border-bottom:1px solid #17211f;padding-top:18px}.suspect-grid{grid-template-columns:repeat(2,1fr);gap:18px;display:grid}.suspect-card{background:#ffffff38;border:1px solid #b5b3a7;grid-template-columns:70px 1fr;gap:20px;min-height:245px;padding:28px;animation:.5s both evidence-arrive;display:grid}.suspect-card:nth-child(2){animation-delay:60ms}.suspect-card:nth-child(3){animation-delay:.12s}.suspect-card:nth-child(4){animation-delay:.18s}.suspect-avatar{color:#d8b457;background:#17211f;place-items:center;width:62px;height:74px;font:700 19px Playfair Display,serif;display:grid}.suspect-role{color:#8c3835;letter-spacing:.1em;text-transform:uppercase;margin:0;font:9px DM Mono,monospace}.suspect-card h3{margin:5px 0 15px;font:700 25px Playfair Display,serif}.suspect-card blockquote{color:#525a54;margin:0 0 18px;font-size:13px;font-style:italic;line-height:1.6}.suspect-note{color:#777d76;letter-spacing:.04em;margin:0;font:9px/1.55 DM Mono,monospace}.deduction-area{background:#0b1c1e;grid-template-columns:.65fr 1.35fr;align-items:center;gap:calc(clamp(35px,8vw,120px));padding:calc(clamp(70px,9vw,120px)) calc(clamp(24px,10vw,160px));display:grid}.deduction-aside{color:#889b97;border-left:1px solid #8c3835;max-width:380px;padding-left:22px;font-size:14px;line-height:1.8}.answer-panel h2{letter-spacing:-.025em;max-width:780px;margin:0 0 32px;font:700 calc(clamp(28px,3.8vw,48px))/1.13 Playfair Display,serif}.answer-panel form{grid-template-columns:1fr auto;gap:12px;display:grid}.answer-panel input{color:#edf1ec;background:#102326;border:1px solid #405255;border-radius:0;outline:0;min-width:0;height:54px;padding:0 18px}.answer-panel input:focus{border-color:#d8b457}.answer-feedback{color:#d1d9d5;background:#a64d471a;border-left:2px solid #a64d47;margin-top:18px;padding:16px 18px;font-size:13px}.answer-feedback p{color:#b9c5c1;margin:8px 0 0}.reveal-backdrop{z-index:100;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#030a0be8;place-items:center;padding:20px;animation:.4s both backdrop-in;display:grid;position:fixed;inset:0}.gift-reveal{color:#18211e;text-align:center;background:#e7e0cf;width:min(560px,100%);padding:calc(clamp(45px,7vw,75px));animation:.7s cubic-bezier(.16,.8,.25,1) both reveal-in;position:relative;overflow:hidden;box-shadow:0 35px 100px #000}@keyframes backdrop-in{0%{opacity:0;-webkit-backdrop-filter:blur();backdrop-filter:blur()}}@keyframes reveal-in{0%{opacity:0;transform:translateY(45px)scale(.94)rotate(-1deg)}70%{transform:translateY(-3px)scale(1.006)rotate(.2deg)}}.gift-reveal:before{content:"";pointer-events:none;border:1px solid #b6b2a4;position:absolute;inset:12px}.gift-number{color:#18211e0e;font:700 160px Playfair Display,serif;position:absolute;top:-22px;right:-6px}.case-cleared{color:#718079;letter-spacing:.12em;text-transform:uppercase;font:9px DM Mono,monospace}.gift-reveal h2{color:#8c3835;margin:8px 0 18px;font:700 calc(clamp(52px,9vw,82px))/1 Playfair Display,serif;position:relative}.gift-message{max-width:380px;margin:0 auto;font:italic 700 23px/1.45 Playfair Display,serif;position:relative}.handoff-note{color:#65706a;max-width:360px;margin:32px auto;font-size:12px;line-height:1.7}.finale{background:radial-gradient(circle at 80% 10%,#1f3e3b,#071416 48%);min-height:calc(100svh - 72px);padding:calc(clamp(70px,10vw,140px)) calc(clamp(24px,9vw,140px));position:relative;overflow:hidden}.finale-mark{color:#be584f99;text-align:center;letter-spacing:.12em;border:4px double #a64d478c;padding:20px;font:500 14px/1.4 DM Mono,monospace;position:absolute;top:70px;right:7vw;transform:rotate(8deg)}.finale h1{letter-spacing:-.065em;max-width:800px;margin:0 0 50px;font:700 calc(clamp(58px,9vw,125px))/.86 Playfair Display,serif}.finale-copy{color:#b6c4bf;max-width:780px;font-size:17px;line-height:1.85}.finale-copy p:last-child{color:#d8b457}.gift-ledger{background:#263739;border:1px solid #263739;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:80px;display:grid}.gift-ledger article{background:#0b1b1d;min-height:180px;padding:25px}.gift-ledger span{color:#637975;font:9px DM Mono,monospace}.gift-ledger h2{color:#e8ece7;margin:25px 0 9px;font:700 25px Playfair Display,serif}.gift-ledger p{color:#849692;margin:0;font-size:12px;line-height:1.55}.birthday-signoff{border-top:1px solid #263739;margin-top:90px;padding-top:35px}.birthday-signoff p{color:#d8b457;margin:0;font:italic 700 calc(clamp(35px,6vw,70px)) Playfair Display,serif}.birthday-signoff strong{color:#849692;margin-top:15px;font-size:13px;display:block}.error-page{color:#dce5e0;text-align:center;background:#071416;place-content:center;min-height:100svh;padding:30px;display:grid}.error-page h1{color:#d8b457;margin:0;font:700 130px Playfair Display,serif}@media (width<=900px){.login-scene{grid-template-columns:1fr;gap:60px;padding:80px 0}.login-copy h1{font-size:calc(clamp(76px,21vw,130px))}.case-hero{grid-template-columns:1fr}.scene-card{display:none}.evidence-grid{grid-template-columns:repeat(2,1fr)}.case-progress{padding:0 20px;overflow-x:auto}.progress-step{min-width:120px}.deduction-area{grid-template-columns:1fr}.gift-ledger{grid-template-columns:repeat(2,1fr)}}@media (width<=620px){.login-scene{width:min(100% - 30px,470px)}.login-copy h1{font-size:70px}.login-copy h1 em{padding-left:.2em}.login-lede{margin-top:30px;font-size:16px}.login-panel{padding:52px 25px 28px}.brand small,.seal{display:none}.topbar{height:64px;padding:0 16px}.menu-button{display:block}.topbar-meta{background:#0b1b1d;border:1px solid #2b3d3f;flex-direction:column;align-items:flex-start;gap:18px;padding:22px;display:none;position:absolute;top:64px;right:10px}.topbar-meta.open{display:flex}.case-hero{min-height:0;padding:70px 20px 60px}.case-hero h1{font-size:52px}.briefing-copy{font-size:14px}.objective,.section-heading{flex-direction:column;align-items:flex-start}.case-progress{padding:0}.progress-step{justify-content:center;min-width:92px;min-height:75px}.progress-step:first-child{padding-left:0}.finale-mark,.step-label{display:none}.case-workspace{padding:65px 18px}.tab-switcher{width:100%}.tab-switcher button{flex:1}.evidence-grid,.suspect-grid{grid-template-columns:1fr}.evidence-card{min-height:210px}.evidence-card.open{min-height:280px}.suspect-card{grid-template-columns:52px 1fr;padding:22px 18px}.suspect-avatar{width:48px;height:60px}.deduction-area{padding:65px 18px}.answer-panel form,.gift-ledger{grid-template-columns:1fr}.answer-panel .primary-button{width:100%}.gift-reveal{padding:55px 28px 35px}.finale{padding:70px 20px}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
