@font-face{font-family:Open;src:url('assets/open-sans.ttf');font-display:swap}@font-face{font-family:Open;src:url('assets/open-sans-bold.ttf');font-weight:700;font-display:swap}@font-face{font-family:Playfair;src:url('assets/playfair-display.ttf');font-display:swap}
:root{--ink:#191919;--text:#333;--gold:#ca9b52;--paper:#faf8f4;--border:#ded7cb;--mono:ui-monospace,SFMono-Regular,Consolas,monospace}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--text);font:16px/1.7 Open,sans-serif}header,main,footer{max-width:1240px;margin:auto;padding:26px 40px}header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);font-size:13px}a{color:var(--ink);text-underline-offset:4px}header a{font-weight:700;text-decoration:none}header a span{font-weight:400;color:#665e52}.stamp,.eyebrow{font:11px/1.6 var(--mono);letter-spacing:1.3px;text-transform:uppercase}.stamp{color:#665e52}main{padding-top:34px;padding-bottom:70px}h1,h2{font-family:Playfair,serif;color:var(--ink);line-height:1.16;font-weight:400}h1{font-size:clamp(36px,5.3vw,64px);margin:16px 0 22px;letter-spacing:-1.5px}h2{font-size:28px;margin:14px 0 22px}p{max-width:700px}.lead{font-size:21px;line-height:1.55}.gold{color:var(--gold)}.hero{background:#191b1c;color:#e8e4dd;padding:48px 42px;display:grid;grid-template-columns:1.05fr 1fr;gap:36px;border:1px solid #343638;position:relative;isolation:isolate;overflow:hidden}.hero:before{content:'';position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#ffffff04 1px,transparent 1px),linear-gradient(90deg,#ffffff04 1px,transparent 1px);background-size:32px 32px;mask-image:linear-gradient(to right,transparent,#000)}.hero h1{color:#faf8f4;margin:22px 0 25px;font-size:clamp(35px,5vw,60px)}.hero .eyebrow{color:#d1b280;display:flex;align-items:center;gap:9px}.signal{width:6px;height:6px;background:var(--gold);display:inline-block;box-shadow:0 0 0 4px #ca9b521c}.hero .lead{font-size:22px;line-height:1.45;margin:0 0 22px}.hero .lead span{color:#c4c0b8}.hero-description{font-size:14px;color:#c4c0b8;line-height:1.8;margin:0 0 27px}.hero button{background:var(--gold);color:#191919;border-color:var(--gold);min-width:210px}.hero button:hover{background:#deba7e}.hero-footnote{font:10px/1.8 var(--mono);color:#b9b5ae;margin-top:15px;letter-spacing:.2px}.console{align-self:center;min-width:0;background:#141617;border:1px solid #41413d;box-shadow:0 16px 40px #0003;font-family:var(--mono)}.console-bar{display:flex;align-items:center;gap:14px;border-bottom:1px solid #393b39;background:#232526;padding:13px 16px;font-size:10px;color:#bcb9b2}.console-dots{color:#9c8258;font-size:9px;letter-spacing:3px;white-space:nowrap}.console-body{padding:28px 24px}.terminal-label{font:9px/1.8 var(--mono);letter-spacing:1px;color:#b9b5ae;margin:0}.console-quote{font:24px/1.5 Playfair,serif;color:#f0ece5;margin:20px 0 28px}.trace{border-top:1px solid #333633}.trace>div{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #333633;font-size:11px;color:#d3d0c9}.node{font-size:10px;color:#cca970}.trace-mark{margin-left:auto;color:#cca970;font-size:16px}.terminal-code{font:11px/1.7 var(--mono);background:#25251f;padding:14px 12px;margin:22px 0;color:#cca970;overflow-wrap:anywhere}.terminal-code span{color:#e4dfd5}.terminal-bottom{font-size:8px;letter-spacing:.5px}.cursor{display:inline-block;background:#ca9b52;width:5px;height:9px;margin-left:8px;animation:blink 1.5s steps(2,end) infinite}@keyframes blink{50%{opacity:0}}.mission-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--border);border-top:0;background:#f3efe8}.mission-strip>div{display:flex;align-items:center;gap:13px;padding:20px 22px;border-right:1px solid var(--border)}.mission-strip>div:last-child{border-right:0}.mission-strip b{font:24px var(--mono);color:#8b632d}.mission-strip span{font:10px/1.6 var(--mono);color:#5c554b}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin:60px 0;align-items:start}.intro-grid p{font-size:15px}.small,footer{font-size:13px}.protocol{border:1px solid var(--border);background:#fff}.protocol>div{display:flex;gap:20px;align-items:center;padding:16px 22px;border-bottom:1px solid var(--border)}.protocol>div:last-child{border:0}.protocol p{margin:0;font-size:13px}.protocol-code{display:grid;place-items:center;width:32px;height:32px;flex-shrink:0;background:#f4efe6;border:1px solid #ddd0bb;color:#6f5025;font:16px var(--mono)}.case-index{border-top:1px solid var(--border);padding-top:28px}.case-index ol{list-style:none;padding:0;margin:0}.case-index li{display:flex;gap:25px;align-items:center;border-top:1px solid var(--border);padding:18px 0;font-size:14px}.case-index li:last-child{border-bottom:1px solid var(--border)}.file-number{font:11px var(--mono);color:#796244;white-space:nowrap}.file-state{margin-left:auto;font:10px var(--mono);color:#6a6358;white-space:nowrap}.file-state span{margin-left:18px;color:#8b632d}
button{font:700 13px Open;cursor:pointer;border:1px solid var(--ink);background:var(--ink);color:white;padding:14px 21px;border-radius:2px}button:hover{background:#443820}button.secondary{background:transparent;color:var(--ink);border-color:#998a73}button.secondary:hover{background:#eee7db}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #a7752c;outline-offset:4px}button:disabled{cursor:default;opacity:.6}[hidden]{display:none!important}.case-top{display:flex;justify-content:space-between;gap:20px;font:11px var(--mono)}.track{display:flex;gap:6px;margin:20px 0 30px}.track span{height:4px;background:#e3dccf;flex:1}.track .active{background:#a7752c}#game>h1{font-size:44px}#game>.lead{font-size:17px;margin-bottom:32px}.board{display:grid;grid-template-columns:.9fr 1.1fr;gap:36px}.board>*,.intro-grid>*{min-width:0}.records{background:#eee9e0;padding:24px;border:1px solid var(--border);height:fit-content}.board h2{font-size:27px;margin:9px 0 14px}.board .eyebrow{color:#796244}.board .small{font-size:12px;color:#655c50}.record{background:white;margin-top:22px;border:1px solid #d9d0c3}.record-meta{display:flex;justify-content:space-between;gap:8px;padding:10px 15px;background:#f5f2ed;border-bottom:1px solid #e3dccf;font:9px/1.6 var(--mono);color:#6b5940}.record h3{font:700 13px Open;margin:20px 18px 12px;color:#191919}.record p{font-size:14px;margin:0 18px 20px;line-height:1.85}.record-end{border-top:1px dashed #e3dccf;margin:0 18px;padding:10px 0;font:8px var(--mono);color:#797065}.record-end span{float:right}.claim{padding:20px;background:white;border:1px solid var(--border);margin:18px 0}.claim-meta{display:flex;justify-content:space-between;gap:8px;font:9px var(--mono);color:#776248;margin-bottom:14px;letter-spacing:.7px}.claim-meta span{color:#716a61}.claim label{display:block;margin-bottom:16px;font-weight:700;font-size:14px;line-height:1.75}select{font:13px Open;width:100%;padding:12px;border:1px solid #b7aa96;border-radius:2px;background:#faf8f4;color:#191919}select:disabled{opacity:1;color:#5b5348}fieldset{border:0;border-top:1px solid var(--border);padding:22px 0 0;margin:27px 0}legend{font-weight:700;font-size:13px;margin-bottom:14px;padding-right:10px}.option{display:flex;gap:11px;background:white;border:1px solid var(--border);padding:14px;margin:9px 0;font-size:13px;cursor:pointer}.option:has(input:checked){border-color:#8f6832;background:#f3ecdf}.option input{margin-top:5px;flex-shrink:0;accent-color:#876125}.actions{display:flex;gap:12px;flex-wrap:wrap}.hint{font-size:14px;padding:15px;border-left:3px solid var(--gold);background:#fff}#validation{color:#923922;font-size:13px}#feedback{padding:28px;background:#fff;border:1px solid #a7752c;margin-top:35px}.explanation{padding:17px 0;border-bottom:1px solid var(--border);font-size:14px}.explanation p{margin:8px 0}.status{font:10px/1.8 var(--mono);color:#76521f}.lesson{font-weight:700;font-size:14px;background:var(--paper);padding:18px;margin-bottom:25px}.review-item{border-bottom:1px solid var(--border);padding:16px 0;font-size:14px}#ending .actions{margin:28px 0}#ending h1{font-size:48px}footer{border-top:1px solid var(--border)}footer a{float:right}footer p{font-size:11px;color:#665e52}
@media(min-width:1000px){.records{position:sticky;top:20px}}@media(max-width:900px){.hero{padding:32px 26px;gap:24px}.console-body{padding:22px 18px}.console-quote{font-size:21px}.intro-grid{gap:35px}.mission-strip>div{padding:17px 12px;gap:10px}.mission-strip span{font-size:9px}.board{gap:24px}}
@media(max-width:700px){header,main,footer{padding:22px}header .stamp{display:none}header a span{display:block}main{padding:24px 18px 50px}.hero{grid-template-columns:1fr;padding:28px 23px;gap:28px}.hero h1{font-size:42px}.hero .lead{font-size:21px}.hero .eyebrow{font-size:9px}.hero-description br{display:none}.console{width:100%}.console-bar{font-size:9px;gap:10px}.console-quote{font-size:23px}.terminal-label{font-size:8px}.terminal-code{font-size:10px}.mission-strip{grid-template-columns:repeat(2,1fr)}.mission-strip>div:nth-child(2){border-right:0}.mission-strip>div:nth-child(-n+2){border-bottom:1px solid var(--border)}.mission-strip>div{padding:16px 14px}.mission-strip span{font-size:9px}.intro-grid,.board{grid-template-columns:1fr;gap:28px}.intro-grid{margin:38px 4px}.records{padding:18px}.case-index{margin:0 4px}.case-index li{gap:12px;font-size:12px}.file-number{font-size:9px}.file-state{font-size:9px}.file-state span{display:none}.case-index h2{font-size:25px}h1,#game>h1{font-size:36px}#ending h1{font-size:37px}.lead{font-size:18px}footer a{float:none;display:block}.case-top{font-size:10px}.case-top .eyebrow{font-size:10px}.actions button{flex-grow:1}.claim{padding:18px}.claim-meta{font-size:8px}#feedback{padding:22px}.record-meta{font-size:8px}.record p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.cursor{animation:none}html{scroll-behavior:auto}}
.bot-hello{display:flex;align-items:center;gap:22px;margin:7px 0 28px}.bot-hello>div:last-child{min-width:0}.bot-hello .console-quote{font-size:21px;margin:14px 0 10px}.bot-caption{font:10px/1.7 var(--mono);color:#b9b5ae}.byte-bot{position:relative;flex-shrink:0;width:92px;height:93px;background:#ca9b52;border-radius:17px 17px 12px 12px;border:3px solid #e5c48f;box-shadow:inset 0 -8px #a77938,0 10px 0 #0003;transform:rotate(-5deg)}.bot-antenna{position:absolute;width:3px;height:15px;background:#ca9b52;top:-18px;left:43px}.bot-antenna:before{content:'';position:absolute;top:-6px;left:-4px;width:11px;height:11px;border:2px solid #e5c48f;background:#ca9b52;border-radius:50%}.bot-face{position:absolute;inset:17px 10px 22px;border-radius:6px;background:#171b1c;display:flex;align-items:center;justify-content:center;gap:14px}.bot-face i{display:block;width:9px;height:12px;background:#e5c48f;border-radius:3px;transform:translateY(-4px)}.bot-mouth{position:absolute;bottom:10px;left:27px;width:13px;height:3px;background:#e5c48f}.bot-feet:before,.bot-feet:after{content:'';position:absolute;width:14px;height:12px;background:#ca9b52;bottom:-10px;border-radius:0 0 3px 3px}.bot-feet:before{left:17px}.bot-feet:after{right:17px}.bot-reaction{padding:17px 20px;background:#191b1c;border-left:4px solid #ca9b52;color:#eee6d9;font:14px/1.8 var(--mono)}.bot-reaction:before{content:'LAB LOG / ';color:#e5c48f;font-size:10px}.rank{display:inline-block;padding:9px 16px;border:1px solid #a7752c;background:#f1e5ce;color:#6b4b20;font:12px/1.8 var(--mono);margin:7px 0 10px}.hero button{min-width:230px}@media(max-width:900px){.bot-hello{gap:16px}.byte-bot{width:72px;height:76px}.bot-face{inset:13px 8px 18px;gap:11px}.bot-mouth{left:19px}.bot-antenna{left:32px}.bot-hello .console-quote{font-size:19px}}@media(max-width:700px){.bot-hello{gap:17px}.bot-hello .console-quote{font-size:19px}.bot-caption{font-size:9px}.bot-reaction{font-size:12px}}@media(max-width:360px){.bot-hello{flex-direction:column;align-items:flex-start;gap:27px}.hero .eyebrow{letter-spacing:.7px}.hero button{min-width:0;width:100%}}
.team-intro{border-top:1px solid var(--border);padding:30px 0 40px}.team-intro>p{font-size:14px}.team-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}.team-cards article{display:flex;gap:15px;padding:21px 18px;background:#fff;border:1px solid var(--border)}.team-avatar{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border:1px solid #d6bd95;border-radius:50%;background:#f3ebdf;color:#76521f;font:16px Playfair}.team-cards h3{font-size:14px;margin:0;color:#191919}.team-cards p{font:10px/1.8 var(--mono);margin:3px 0 12px;color:#796244}.team-cards article div>span{font-size:12px}.team-question{border-left:3px solid #ca9b52;background:#f0e9de;padding:18px 22px;margin:22px 0 32px}.team-question .eyebrow{color:#76521f;font-size:9px}.team-question p{font-size:16px;font-weight:700;margin:8px 0 0;max-width:900px}.team-reaction{display:flex;align-items:center;gap:17px;margin:22px 0}.team-reaction .bot-reaction{flex:1;margin:0}.bot-reaction:before{content:'TEAM LOG / '}.verdict-seal{flex-shrink:0;display:grid;place-items:center;width:48px;height:48px;border:2px solid #b88b47;border-radius:50%;background:#faf3e5;color:#76521f;font:27px var(--mono)}.byte-bot{animation:bot-bob 5s ease-in-out infinite}.bot-face i{transform-origin:center;animation:bot-blink 7s ease-in-out infinite}.record{animation:record-arrive .4s ease-out both}.record:nth-child(2){animation-delay:.09s}#feedback:not([hidden]) .verdict-seal{animation:seal-arrive .45s ease-out both}#feedback[data-perfect=true]:not([hidden]) .verdict-seal{animation:seal-arrive .45s ease-out both,seal-glow 1s ease-out .45s}#feedback:not([hidden]) .bot-reaction{animation:record-arrive .35s ease-out both}.rank{animation:seal-arrive .4s ease-out both}@keyframes bot-bob{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-5px) rotate(-2deg)}}@keyframes bot-blink{0%,42%,46%,100%{transform:translateY(-4px) scaleY(1)}44%{transform:translateY(-4px) scaleY(.15)}}@keyframes record-arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes seal-arrive{from{opacity:0;transform:scale(.75) rotate(-10deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes seal-glow{0%{box-shadow:0 0 0 0 #ca9b5240}100%{box-shadow:0 0 0 14px #ca9b5200}}@media(max-width:900px){.team-cards{gap:12px}.team-cards article{padding:16px 13px;gap:10px}}@media(max-width:700px){.team-cards{grid-template-columns:1fr}.team-question{padding:16px 18px}.team-question p{font-size:14px}.team-intro{margin:0 4px}.verdict-seal{width:36px;height:36px;font-size:20px}.team-reaction{gap:10px}}@media(prefers-reduced-motion:reduce){.byte-bot,.bot-face i,.record,#feedback:not([hidden]) .verdict-seal,#feedback[data-perfect=true]:not([hidden]) .verdict-seal,#feedback:not([hidden]) .bot-reaction,.rank{animation:none!important}}
.motion-control{display:flex;align-items:center;gap:9px;font:10px/1.8 var(--mono);color:#c4c0b8;cursor:pointer;margin-top:14px}.motion-control input{accent-color:#ca9b52;width:14px;height:14px;margin:0}.reduce-motion .byte-bot,.reduce-motion .bot-face i,.reduce-motion .record,.reduce-motion #feedback:not([hidden]) .verdict-seal,.reduce-motion #feedback[data-perfect=true]:not([hidden]) .verdict-seal,.reduce-motion #feedback:not([hidden]) .bot-reaction,.reduce-motion .rank,.reduce-motion .cursor{animation:none!important}
