:root{color-scheme:dark;--ink:#102f34;--cream:#f5eddb;--sage:#b8d3bc;--copper:#dfa774;--muted:#a7bcb7;--line:#335056}*{box-sizing:border-box}body{margin:0;background:var(--ink);color:var(--cream);font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;background-image:radial-gradient(ellipse at 85% 0%,#284a4a 0,transparent 45%)}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #f8c684;outline-offset:4px}button:disabled{cursor:default}a{color:inherit;text-underline-offset:4px}.shell{max-width:1152px;margin:auto;padding:0 38px}header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:30px 0;border-bottom:1px solid var(--line)}.brand{font-size:24px;letter-spacing:3px;text-decoration:none}.brand span{display:block;font-size:9px;letter-spacing:3.4px;margin:7px 0 0 24px;color:var(--muted)}.quiet{color:var(--cream);border:1px solid var(--line);background:transparent;padding:11px 17px;border-radius:6px}.intro{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:35px 0 27px}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:700;color:var(--copper);margin:0 0 16px}h1{font-family:Georgia,serif;font-size:clamp(35px,5vw,59px);font-weight:400;line-height:1.07;letter-spacing:-1.8px;margin:0}h1 em{font-weight:400;color:#bad4c3}.lede{color:var(--muted);font-size:15px;max-width:440px;line-height:1.6;margin-bottom:0}.courier{width:220px;text-align:center;flex-shrink:0}.courier img{width:185px;border-radius:50%;display:block;margin:auto}.courier p{font-size:10px;letter-spacing:.6px;color:var(--muted);margin:10px 0 0}#shifts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 22px}#shifts button{font-size:12px;text-align:left;padding:13px;background:#17393d;color:var(--muted);border:1px solid var(--line);border-radius:5px;min-height:43px}#shifts button[aria-current=step]{color:var(--cream);border-color:var(--copper);background:#2c4441}.desk{display:grid;grid-template-columns:260px 1fr;border:1px solid #486064;border-radius:12px;overflow:hidden;box-shadow:0 22px 60px #061e2466}.brief{padding:27px 25px;background:#17383c;border-right:1px solid var(--line)}.row{display:flex;justify-content:space-between;align-items:center;gap:10px}.brief .row{align-items:start}.brief .eyebrow{font-size:9px;letter-spacing:1.2px}#integrity{color:#edba9c;font-size:13px;white-space:nowrap;letter-spacing:2px}h2{font-family:Georgia,serif;font-weight:400;font-size:29px;line-height:1.1;margin:7px 0 18px}.brief>p{font-size:14px;line-height:1.7;color:#dce2d6}.brief details{margin-top:28px;color:var(--muted);font-size:12px;line-height:1.7}.brief details p{margin-bottom:0}summary{cursor:pointer;text-underline-offset:3px}details[open] summary{color:var(--cream)}.workspace{padding:22px 25px 25px;min-width:0;background:#0c282d}.progress{font-size:10px;letter-spacing:1.2px;color:var(--muted)}#meter{height:3px;background:var(--line);margin:14px 0 20px;border-radius:4px}#meter:before{content:"";display:block;width:var(--progress,0%);background:var(--copper);height:100%;transition:width .3s}.letter{background:var(--cream);color:#233c3e;min-height:265px;padding:23px 25px;border-radius:3px;position:relative;box-shadow:0 5px 0 -2px #c6c0ac,0 9px 0 -4px #727d70;animation:arrive .3s ease}.letter-top{display:flex;justify-content:space-between;align-items:start;gap:10px}.letter-top>span:first-child{border:1px solid #9caaa0;border-radius:4px;padding:5px 8px;font-size:10px;font-weight:650}.letter-top>span.owner{background:#d1e3cf;border-color:#789c79}.postmark{border:2px dashed #a4aaa0;border-radius:50%;font-size:8px;line-height:1.7;letter-spacing:1px;text-align:center;padding:9px 11px;transform:rotate(-9deg);opacity:.7;white-space:pre-line}.sender{font-size:9px;letter-spacing:1.4px;text-transform:uppercase;font-weight:600;margin:8px 0 12px;color:#667269}h3{font-family:Georgia,serif;font-size:25px;line-height:1.15;font-weight:400;margin:0 0 14px}#body{font-family:Georgia,serif;font-size:19px;line-height:1.6;margin:0 0 20px;white-space:pre-wrap}.letter details{font-size:11px;color:#4d645d;line-height:1.6}.letter details[open] summary{color:#254b42}.letter details p{max-width:520px}.actions{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:23px}.actions button{display:flex;flex-direction:column;align-items:center;position:relative;border:1px solid #4d6360;border-radius:7px;background:#193a3e;color:var(--cream);padding:9px 5px 12px;min-width:0}.actions img{width:55px;height:55px;border-radius:50%;object-fit:cover;pointer-events:none}.actions b{display:block;font-size:13px;margin:3px 0 6px}.actions small{display:block;font-size:9px;color:var(--muted)}kbd{font:10px ui-monospace,monospace;color:var(--muted);border:1px solid var(--line);border-radius:3px;padding:2px 5px}.actions kbd{position:absolute;right:6px;top:6px}.actions .chosen{border:2px solid var(--copper);padding:8px 4px 11px}.actions .correct-answer{background:#294e44;border-color:#a7c99d}.actions button:disabled:not(.chosen):not(.correct-answer){opacity:.4}#feedback{margin-top:18px;border-left:3px solid #a9cca7;padding:2px 0 0 15px}#feedback.bad{border-color:#e5a093}#feedback h3{font:600 14px ui-sans-serif,sans-serif;margin:2px 0 8px}#feedback p{font-size:13px;line-height:1.65;color:#c3d1c7;margin:0 0 13px}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:#d5b38a;color:#203c3c;border:1px solid #d5b38a;border-radius:5px;font-weight:700;font-size:13px;padding:12px 18px;min-height:43px}#result{padding:40px 8px 25px;min-height:340px}#result h3{font-size:37px;max-width:360px}#result p:not(.eyebrow){line-height:1.7;color:var(--muted);max-width:440px}.result-actions{display:flex;gap:12px;flex-wrap:wrap}.bottom{display:flex;align-items:center;justify-content:space-between;padding:15px 0;color:var(--muted);font-size:12px;gap:10px}.bottom .quiet{font-size:11px;padding:7px 12px}.about{border-top:1px solid var(--line);margin:25px 0;padding:28px 0;max-width:730px}.about h2{font-size:25px}.about p{font-size:12px;line-height:1.8;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:9px;letter-spacing:1.8px;color:var(--muted);border-top:1px solid var(--line);padding:25px 0 35px}footer span{letter-spacing:1px}dialog{background:var(--cream);color:#233c3e;border:1px solid #d0bd9e;padding:37px;border-radius:12px;max-width:550px;width:calc(100% - 32px);max-height:calc(100dvh - 32px);box-shadow:0 20px 70px #0007}dialog::backdrop{background:#041e26bd;backdrop-filter:blur(7px)}dialog h2{font-size:34px}dialog p{font-size:13px;line-height:1.8}dialog .eyebrow{color:#7c5b3b}.close{position:absolute;right:14px;top:8px;font-size:27px;border:0;background:transparent;color:#29484a;min-width:40px;min-height:40px}[hidden]{display:none!important}@keyframes arrive{from{transform:translateY(7px);opacity:.4}to{transform:none;opacity:1}}@media(hover:hover){button:not(:disabled):hover{filter:brightness(1.12)}.quiet:hover{background:#ffffff0a}}@media(max-width:760px){.shell{padding:0 20px}.desk{grid-template-columns:1fr}.brief{border-right:0;border-bottom:1px solid var(--line);padding:22px}.brief h2{font-size:27px;margin:2px 0 12px}.brief>p{margin:0;font-size:13px}.brief details{margin-top:13px}.intro{padding:28px 0}.courier{width:120px}.courier img{width:120px}.courier p{display:none}h1{font-size:38px}#shifts{grid-template-columns:repeat(2,1fr)}.workspace{padding:20px}.brief .row{justify-content:space-between}.letter{min-height:260px}.actions small{font-size:9px}}@media(max-width:440px){.shell{padding:0 14px}header{padding:22px 0}.brand{font-size:19px}.brand span{font-size:7px;letter-spacing:2px}.quiet{font-size:11px;padding:10px}.intro{gap:8px}.courier{width:86px}.courier img{width:90px}h1{font-size:31px;letter-spacing:-1px}.lede{font-size:12px}.eyebrow{font-size:8px;letter-spacing:1.7px}#shifts button{font-size:10px;padding:10px}.workspace{padding:16px}.letter{padding:18px}.postmark{font-size:7px;padding:7px}.letter-top>span:first-child{font-size:9px}#body{font-size:17px}.actions{gap:6px}.actions small{font-size:8px}.actions img{width:47px;height:47px}.actions kbd{display:none}.actions b{font-size:12px}.progress{font-size:9px}dialog{padding:29px 23px}}@media(prefers-reduced-motion:reduce){*,*:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
