:root{--ink:#162b3b;--paper:#f4f0e6;--card:#fffdf8;--red:#f0543a;--yellow:#f6c747;--blue:#43a6bf;--muted:#67747a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:Noto Sans JP,sans-serif;line-height:1.75}.site-header{z-index:10;background:#faf7ef;border-bottom:1px solid #d8d2c5;justify-content:space-between;align-items:center;height:66px;padding:0 clamp(20px,5vw,74px);display:flex;position:sticky;top:0}.brand{letter-spacing:.04em;color:inherit;font-size:14px;font-weight:900;text-decoration:none}.brand span{color:var(--red);padding:0 6px}.brand b{font-weight:500}.text-button{color:var(--ink);font:inherit;border:0;border-bottom:1px solid var(--ink);cursor:pointer;background:0 0;padding:2px;font-size:13px}.hero{background:var(--ink);color:#f8f3e8;text-align:center;padding:clamp(70px,12vw,148px) 24px 86px;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";opacity:.7;border:1px solid #466070;border-radius:50%;position:absolute}.hero:before{width:470px;height:470px;top:-310px;left:-100px}.hero:after{width:720px;height:720px;bottom:-570px;right:-200px}.eyebrow{letter-spacing:.16em;color:var(--red);margin:0 0 15px;font:500 11px/1 DM Mono,monospace}.hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(46px,8vw,104px);font-weight:900;line-height:1.12;position:relative}.hero h1 em,.closing em,.about-copy em{color:var(--yellow);font-style:normal}.hero-copy{color:#cbd4d1;margin:29px 0 26px;font-size:clamp(14px,2vw,17px);line-height:2}.circuit{justify-content:center;align-items:center;gap:10px;font:500 14px DM Mono,monospace;display:flex}.circuit span{border:1px solid #8aa0a2;border-radius:50%;place-items:center;width:31px;height:31px;display:grid}.circuit i{background:#8aa0a2;width:46px;height:1px}.circuit strong{color:var(--yellow);font-size:22px}.tagline{margin:30px 0 0;font-weight:700}.tagline b{color:var(--red);padding:0 2px;font-size:21px}.controls{flex-wrap:wrap;align-items:center;gap:18px;max-width:1190px;margin:-31px auto 0;padding:0 24px;display:flex;position:relative}.search{background:#fffdf8;border:1px solid #d9d4ca;align-items:center;width:295px;padding:0 13px;display:flex;box-shadow:5px 5px #d7d0c1}.search span{font-size:22px;line-height:1}.search input{background:0 0;border:0;outline:0;width:100%;padding:14px 9px;font:13px Noto Sans JP,sans-serif}.filters{flex-wrap:wrap;gap:7px;display:flex}.filter{color:#506068;cursor:pointer;background:#f9f6ef;border:1px solid #c9c8bf;border-radius:999px;padding:9px 13px;font:500 12px Noto Sans JP,sans-serif}.filter.active{background:var(--ink);color:#fff;border-color:var(--ink)}.filter small{font:11px DM Mono,monospace}.atlas-head,.cards,.closing{max-width:1190px;margin-left:auto;margin-right:auto;padding-left:24px;padding-right:24px}.atlas-head{justify-content:space-between;align-items:end;padding-top:92px;padding-bottom:28px;display:flex}.atlas-head h2,.closing h2{letter-spacing:-.055em;margin:0;font-size:clamp(26px,3.5vw,44px);line-height:1.35}.result-count{color:var(--muted);margin:0;font:12px DM Mono,monospace}.cards{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.card{background:var(--card);text-align:left;color:var(--ink);cursor:pointer;border:1px solid #d8d2c5;flex-direction:column;align-items:flex-start;min-height:270px;padding:24px;font-family:inherit;transition:transform .18s,box-shadow .18s;display:flex}.card:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-3px,-3px)}.badge{letter-spacing:.03em;color:#58717b;font-size:10px;font-weight:700}.card.near .badge{color:#9b731a}.card.original .badge{color:#b74a3b}.card h3{letter-spacing:-.045em;margin:15px 0 16px;font-size:22px;line-height:1.4}.equation{align-items:center;gap:7px;width:100%;font-size:12px;font-weight:500;line-height:1.4;display:flex}.equation span{text-align:center;background:#e9eff0;border-radius:2px;flex:1;padding:5px 7px}.equation b{color:var(--red);font:500 19px DM Mono,monospace}.card p{color:#526269;margin:18px 0;font-size:13px;line-height:1.8}.open{color:var(--red);margin-top:auto;font:500 11px DM Mono,monospace}.open i{padding-left:4px;font-size:16px;font-style:normal}.empty{text-align:center;color:var(--muted);grid-column:1/-1;padding:50px}.closing{text-align:center;padding-top:130px;padding-bottom:130px}.closing h2{margin-bottom:23px;font-size:clamp(30px,4.3vw,56px)}.closing p:last-child{color:#5b696c;font-size:14px}dialog{width:min(750px,100% - 30px);color:var(--ink);background:#fffcf5;border:0;padding:0;box-shadow:0 18px 80px #081a284d}dialog::backdrop{background:#102331bf}.dialog-close{color:var(--ink);cursor:pointer;background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:14px;right:16px}.detail-number{color:#788488;margin:10px 0;font:500 11px DM Mono,monospace}.detail-number+.badge{margin-top:0}#detailContent{padding:50px}.detail-number{order:2}.detail-number,.badge{display:block}.detail-number{margin-top:13px}#detailContent h2{letter-spacing:-.06em;margin:0 0 24px;font-size:clamp(28px,5vw,48px);line-height:1.25}.detail-equation{border-top:1px solid #ddd8cd;border-bottom:1px solid #ddd8cd;align-items:center;gap:15px;padding:19px 0;font-size:15px;display:flex}.detail-equation span{text-align:center;background:#e8f0f0;flex:1;padding:9px}.detail-equation b{color:var(--red);font:500 26px DM Mono}.detail-grid{grid-template-columns:1fr 1fr;gap:0 34px;margin-top:24px;display:grid}.detail-grid section{border-bottom:1px solid #e0dbd0;padding:16px 0}.detail-grid h3{letter-spacing:.08em;color:var(--red);margin:0;font-size:11px}.detail-grid p{margin:7px 0 0;font-size:14px;line-height:1.8}.detail-grid+blockquote,.about-copy blockquote{border-left:4px solid var(--yellow);margin:28px 0 0;padding:4px 16px;font-size:17px;font-weight:700}.about-copy{max-width:620px;padding:55px}.about-copy h2{letter-spacing:-.06em;font-size:38px;line-height:1.3}.about-copy p{font-size:14px}@media (width<=760px){.site-header{height:58px}.brand b{display:none}.hero{padding-bottom:78px}.controls{margin-top:-27px}.search{width:100%;box-shadow:none}.filters{flex-wrap:nowrap;width:100%;padding-bottom:2px;overflow-x:auto}.filter{white-space:nowrap}.atlas-head{flex-direction:column;align-items:start;gap:10px;padding-top:62px}.cards{grid-template-columns:1fr;gap:10px}.card{min-height:230px}.closing{padding-top:88px;padding-bottom:88px}.detail-grid{grid-template-columns:1fr}#detailContent{padding:42px 25px}.about-copy{padding:44px 25px}.about-copy h2{font-size:33px}}
