@font-face{font-family:PixelTitle;src:url(assets/display.ttf)}@font-face{font-family:Mono;src:url(assets/mono.ttf)}
:root{--ink:#142433;--muted:#637179;--paper:#f4f1e8;--card:#fffdf7;--line:#d8ddd7;--yellow:#ffd83e;--mint:#b8e5ca;--rose:#ffb9ad;--blue:#c4d9f5}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,sans-serif}button,input,a{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-underline-offset:4px}button{cursor:pointer;font:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #0c81b3;outline-offset:4px}.top{padding:22px max(24px,calc((100vw - 1320px)/2));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{display:flex;align-items:center;gap:12px;font:12px/1.4 PixelTitle;text-decoration:none}.brandmark{display:grid;place-items:center;background:var(--yellow);width:42px;height:46px;box-shadow:4px 4px 0 var(--ink);font-size:30px}nav{display:flex;gap:28px;font:11px Mono}nav a{min-height:44px;display:flex;align-items:center}main{max-width:1320px;margin:auto;padding:0 24px}.intro{padding:48px 0 27px}.kicker,.section-label{font:10px Mono;letter-spacing:1.3px}.intro-row{display:flex;align-items:center;justify-content:space-between;gap:30px}h1{font:clamp(30px,4vw,55px)/1.12 PixelTitle;letter-spacing:-.8px;margin:22px 0 17px}h1 em{font-style:normal;background:var(--yellow);padding:0 7px 3px;margin-left:-7px}.intro p{font-size:16px;line-height:1.55}.numbers{display:flex;gap:26px;align-self:center}.numbers div{display:flex;flex-direction:column;gap:10px}.numbers strong{font:38px PixelTitle}.numbers span{font:9px Mono;white-space:nowrap}.explain{display:flex;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:27px;padding-top:20px;font:10px Mono}.explain>span{display:flex;align-items:center;gap:7px}.explain p{flex:1;min-width:300px;font:11px/1.5 Arial;margin:0;color:var(--muted)}.dot{height:7px;width:7px;display:inline-block;border-radius:50%}.dot.live{background:#298355}.dot.concept{background:#c98d00}.dot.reserve{background:#88929b}.tools{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;padding:24px 0 14px}.filters{display:flex;flex-wrap:wrap;gap:7px}.filters button{border:1px solid #bbc5c5;background:transparent;border-radius:4px;padding:11px 13px;min-height:44px;font-size:12px;color:var(--ink)}.filters button b{font:10px Mono;margin-left:5px;opacity:.6}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.search{display:flex;align-items:center;gap:9px;border-bottom:2px solid var(--ink);min-width:260px;height:44px}.search>span{font-size:27px}.search input{font:12px Arial;background:transparent;border:0;width:100%;min-width:0;color:var(--ink);padding:10px 0;outline-offset:6px}.result-line{display:flex;justify-content:space-between;gap:16px;color:var(--muted);font:10px/1.5 Mono;margin:12px 0 17px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.card{display:flex;flex-direction:column;border:1px solid var(--line);background:var(--card);border-radius:8px;overflow:hidden;transition:transform .15s,box-shadow .15s}.card:hover{transform:translateY(-3px);box-shadow:0 8px 0 #1424330d}.card[hidden]{display:none}.card-open{padding:0;border:0;color:inherit;background:none;text-align:left;width:100%;display:flex;flex:1;flex-direction:column}.portrait{height:226px;background:var(--tone,#e8eadf);position:relative;display:grid;place-items:center;width:100%;background-image:linear-gradient(#ffffff3b 1px,transparent 1px),linear-gradient(90deg,#ffffff3b 1px,transparent 1px);background-size:18px 18px}.portrait canvas{display:block;width:210px;height:214px;max-width:100%;object-fit:contain;image-rendering:pixelated}.topline{position:absolute;inset:12px 12px auto;display:flex;justify-content:space-between;font:9px Mono}.status{background:#fffc;padding:5px 7px;border-radius:3px;display:flex;align-items:center;gap:5px}.number{opacity:.55;padding:5px 0}.card-info{padding:18px 17px 12px;flex:1;width:100%}.card-role{font:9px/1.5 Mono;letter-spacing:.3px;color:#566b72;text-transform:uppercase}.card h2{font:17px/1.25 PixelTitle;margin:8px 0 11px;min-height:43px}.card .brief{font:13px/1.5 Arial;color:#4d5c65;margin:0 0 13px;min-height:59px}.card .stats{display:flex;gap:5px;flex-wrap:wrap}.stats span{font:9px/1.4 Mono;padding:5px 7px;border:1px solid #b7c3bf;border-radius:3px;background:#fff8}.card-quote{background:#f0f3ed;border-top:1px solid var(--line);padding:13px 17px;min-height:65px;font:12px/1.5 Arial}.card-quote small{display:block;color:#76848a;font:8px Mono;margin-bottom:5px}.card-bottom{display:flex;justify-content:space-between;padding:11px 17px;font:9px Mono;border-top:1px solid var(--line);width:100%}.card-bottom span:first-child{color:var(--muted)}.notes{margin:50px 0;padding:26px 0;border-top:2px solid var(--ink)}.notes h2{font:21px PixelTitle;margin:0 0 20px}.notes>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.notes p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.notes b{color:var(--ink)}footer{max-width:1320px;padding:20px 24px 34px;margin:auto;display:flex;justify-content:space-between;gap:20px;font:9px Mono;color:var(--muted)}dialog{border:0;border-radius:12px;box-shadow:0 30px 80px #0008;padding:32px;background:var(--card);color:var(--ink);width:min(950px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#10212cbb;backdrop-filter:blur(4px)}.close{position:sticky;top:0;display:block;margin:-16px -16px -28px auto;width:44px;height:44px;border:1px solid #a8b7b1;border-radius:50%;background:#fff;z-index:2;font-size:24px}.detail-main{display:grid;grid-template-columns:38% 1fr;gap:30px}.detail-art{background:#e9ede3;border-radius:8px;padding:16px 12px 12px;display:flex;align-items:center;flex-direction:column;justify-content:center}.detail-art canvas{width:100%;max-width:300px;height:300px;object-fit:contain;image-rendering:pixelated}.pose-buttons{display:flex;flex-wrap:wrap;justify-content:center;gap:5px;margin-top:8px}.pose-buttons button{padding:8px 9px;min-height:40px;font:10px Mono;border:1px solid #aab8b2;background:#f9fbf4;border-radius:3px}.pose-buttons button[aria-pressed=true]{background:var(--yellow);color:#142433}.detail-copy{padding:12px 24px 8px 0}.meta{font:10px/1.5 Mono;color:var(--muted)}.detail-copy h2{font:clamp(23px,3vw,32px)/1.15 PixelTitle;margin:13px 0 12px}.detail-role{font:11px/1.5 Mono;color:#40755d;margin-bottom:19px}.detail-copy p,.detail-copy li{font-size:13px;line-height:1.5}.detail-copy h3{font:12px Mono;margin:19px 0 9px}.detail-copy ul{padding-left:16px;margin:0 0 17px}.detail-copy li{margin-bottom:8px}.detail-copy .stats{display:flex;flex-wrap:wrap;gap:5px}.detail-copy p.note{font:11px/1.5 Arial;color:var(--muted);margin:13px 0}.detail-copy a{font:10px Mono}.dialogues{border-top:1px solid var(--line);margin-top:26px;padding-top:22px}#detail-quotes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.quote{background:#edf1e9;padding:16px;border-left:3px solid #bfd1b6}.quote-meta{font:9px Mono;display:flex;justify-content:space-between;gap:8px;color:#5d7772}.quote p{margin:10px 0 0;font:16px/1.4 Arial}.dialogue-nav{display:flex;justify-content:space-between;gap:8px;margin-top:24px}.dialogue-nav button{padding:12px;border:1px solid #a7b9b0;border-radius:4px;background:transparent;font:10px Mono;min-height:44px}.dialogue-nav #copy{background:var(--yellow);border-color:var(--yellow)}.copy-state{font:10px Mono;color:#38765a;text-align:center;min-height:14px;margin:12px 0 0}#empty,#error{padding:50px 0;text-align:center}body:has(dialog[open]){overflow:hidden}@media(prefers-reduced-motion:reduce){.card{transition:none}.card:hover{transform:none}}@media(max-width:1100px){.numbers{gap:16px}.numbers strong{font-size:30px}.numbers span{font-size:8px}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tools{flex-direction:column}.search{width:100%;max-width:450px}.intro-row{align-items:flex-start}.numbers{flex-direction:column;gap:14px}.numbers div{flex-direction:row;align-items:center;gap:12px}.numbers strong{min-width:58px}.portrait{height:245px}}@media(max-width:720px){.top{padding:16px 18px;gap:12px}.brand{font-size:10px}.brandmark{width:34px;height:37px;font-size:24px}nav{gap:14px;font-size:10px}nav a:last-child{display:none}main{padding:0 18px}.intro{padding:30px 0 16px}.kicker{font-size:8px;letter-spacing:.7px}.intro-row{display:block}h1{font-size:34px}.intro p{font-size:14px}.numbers{flex-direction:row;gap:26px;margin-top:27px}.numbers div{display:block}.numbers strong{font-size:28px;display:block;margin-bottom:8px}.numbers span{font-size:8px}.explain{gap:13px;font-size:9px;margin-top:24px}.explain p{min-width:100%;font-size:11px}.tools{padding-top:15px}.filters{gap:6px}.filters button{font-size:11px;padding:9px 10px}.filters button b{font-size:9px}.result-line{font-size:9px}.result-line span:last-child{display:none}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portrait{height:196px}.portrait canvas{width:175px;height:182px}.card-info{padding:14px 12px 10px}.card h2{font-size:15px;min-height:38px}.card-role{font-size:8px}.card .brief{font-size:11px;min-height:65px}.stats span{font-size:8px;padding:4px 5px}.card-quote{padding:11px 12px;font-size:11px;min-height:76px}.card-bottom{padding:10px 12px;font-size:8px}.topline{inset:9px 9px auto;font-size:8px}.notes{margin-top:35px}.notes>div{grid-template-columns:1fr;gap:18px}footer{font-size:8px;padding:15px 18px 26px;flex-wrap:wrap}dialog{padding:23px 18px;width:calc(100% - 20px);max-height:calc(100dvh - 20px)}.detail-main{grid-template-columns:1fr;gap:15px}.detail-art{padding-top:20px}.detail-art canvas{height:230px;width:230px}.detail-copy{padding:0}.detail-copy h2{font-size:27px}.detail-copy p,.detail-copy li{font-size:13px}.dialogues{margin-top:16px}#detail-quotes{grid-template-columns:1fr}.quote p{font-size:15px}.dialogue-nav{flex-wrap:wrap}.dialogue-nav #copy{order:3;flex:1 0 100%}.dialogue-nav button{flex:1;font-size:10px}.close{position:sticky;display:block;top:0;margin:-10px -4px -34px auto}.wide{display:none}}@media(max-width:365px){h1{font-size:28px}.numbers{gap:17px}.grid{grid-template-columns:1fr}.portrait{height:230px}.portrait canvas{width:216px;height:216px}.card h2,.card .brief{min-height:0}.card h2{font-size:19px}.card-quote{min-height:0}.card-role{font-size:9px}.card .brief{font-size:13px}nav{gap:10px}.brand span:last-child{font-size:8px}}
