*{box-sizing:border-box;margin:0}
[hidden]{display:none!important}
@view-transition{navigation:auto}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{background:var(--desk) linear-gradient(var(--desk-grid) 1px,transparent 1px) 0 0/100% 24px;color:var(--text);font:400 var(--fs-0)/var(--lh-body) var(--f-body);padding-bottom:calc(72px + env(safe-area-inset-bottom))}
h1,h2,h3{font-family:var(--f-fa-display);font-weight:400;line-height:var(--lh-head)}
html[lang=en] :is(h1,h2,h3){font-family:var(--f-en-display);font-weight:800;letter-spacing:-.01em}
h1{font-size:var(--fs-4)}h2{font-size:var(--fs-3)}h3{font-size:var(--fs-2)}
a{color:var(--link)}:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.skip{position:absolute;inset-inline-start:8px;top:-60px;background:var(--ink);color:#fff;padding:12px 16px;z-index:50;border-radius:var(--r-ui)}.skip:focus{top:8px}
.w{max-width:var(--maxw);margin-inline:auto;padding-inline:var(--gutter)}
main>section{padding-block:var(--s-6)}
.mono{font:400 var(--fs-sm) var(--f-mono)}.lead{max-width:58ch;color:var(--text-mute)}
.top{position:sticky;top:0;z-index:20;background:var(--desk);border-bottom:2px solid var(--ink);display:flex;align-items:center;gap:var(--s-3);padding:8px var(--gutter);padding-top:calc(8px + env(safe-area-inset-top))}
.brand{display:flex;gap:10px;align-items:center;text-decoration:none;color:var(--ink);font:800 18px var(--f-en-display);margin-inline-end:auto}
.brand img{background:var(--ink);border-radius:8px;padding:3px 6px;height:36px;width:auto}
.dnav{display:none;gap:4px}.dnav a{min-height:var(--tap);padding:0 14px;display:flex;align-items:center;color:var(--ink);text-decoration:none;font-weight:700;border-bottom:4px solid transparent}.dnav a[aria-current]{border-color:var(--pink)}
.ib,.lang{min-height:var(--tap);min-width:var(--tap);display:grid;place-items:center;border:2px solid var(--ink);border-radius:var(--r-ui);color:var(--ink);text-decoration:none;font:800 15px var(--f-en-display);background:var(--paper)}
.bar{position:fixed;inset:auto 0 0 0;z-index:20;background:var(--ink);display:grid;grid-template-columns:repeat(5,1fr);padding-bottom:env(safe-area-inset-bottom)}
.bar a{min-height:56px;color:#fff;text-decoration:none;font:700 14px/1.2 var(--f-body);display:grid;justify-items:center;align-content:center;gap:2px;text-align:center;padding:4px 2px}.bar a[aria-current]{background:var(--pink);color:var(--ink)}
.bar svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn{min-height:var(--tap);padding:0 22px;border-radius:var(--r-ui);font:900 var(--fs-0) var(--f-body);border:2px solid var(--ink);background:var(--pink);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:var(--shadow-pencil);cursor:pointer;transition:transform var(--t-fast),box-shadow var(--t-fast)}
.btn.o{background:var(--paper)}.btn:active{transform:translate(3px,4px);box-shadow:1px 1px 0 var(--ink)}
.row2{display:flex;flex-wrap:wrap;gap:var(--s-4);align-items:center}
.tag{font:400 13px var(--f-mono);border:1.5px dashed currentColor;padding:0 8px;display:inline-block;width:fit-content}
.chip{font-weight:700;font-size:var(--fs-sm);background:var(--cyan);color:var(--ink);padding:2px 10px;border-radius:var(--r-pill);width:fit-content}
.chips{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-block:var(--s-4)}.chips button{min-height:var(--tap);padding:0 18px;border:2px solid var(--ink);background:var(--paper);border-radius:var(--r-pill);font:700 var(--fs-0) var(--f-body);color:var(--ink);cursor:pointer}.chips button[aria-pressed=true]{background:var(--ink);color:#fff}
.sh{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-4);margin-bottom:var(--s-5)}
.mk{background:linear-gradient(transparent 60%,var(--pink) 60% 92%,transparent 92%);-webkit-box-decoration-break:clone;box-decoration-break:clone}
.hero{display:grid;gap:var(--s-6);align-items:center}.hero h1{font-size:var(--fs-5)}.sub{font:800 var(--fs-1) var(--f-en-display);margin-top:var(--s-3)}
.stk{background:var(--ink);border-radius:26px;padding:12px;width:min(280px,66vw);justify-self:center;transform:rotate(-4deg);box-shadow:var(--shadow-pink)}.stk img{width:100%;height:auto;display:block}
.drop{animation:drop var(--t-drop) var(--ease-drop) both;animation-delay:calc(var(--i,0)*120ms)}
@keyframes drop{from{opacity:0;transform:translateY(-50px) rotate(calc(var(--r,0deg)*3))}}
.notes{display:grid;gap:var(--s-5)}
.note{background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-note);box-shadow:var(--shadow-pencil);padding:var(--s-5) var(--s-4) var(--s-4);position:relative;transform:rotate(var(--r,0deg));display:grid;gap:var(--s-2);align-content:start}
.note:before{content:"";position:absolute;top:-12px;inset-inline-start:36%;width:72px;height:22px;background:var(--cyan);transform:rotate(-3deg)}.note:nth-child(2):before{background:var(--pink)}
.notes .note:nth-child(1){--r:-2deg}.notes .note:nth-child(2){--r:1.5deg}.notes .note:nth-child(3){--r:-1deg}
.lit{background:var(--ink);color:var(--text-on-ink);border-radius:var(--r-lit);padding:var(--s-5);display:grid;gap:var(--s-5)}.lit>div{display:grid;gap:var(--s-3);align-content:center}.lit p{color:var(--text-mute-on-ink)}.lit a:not(.btn){color:#9ad8f7}
.ph{aspect-ratio:16/9;border-radius:var(--r-note);background:repeating-linear-gradient(135deg,var(--ink-2) 0 14px,var(--ink-3) 14px 28px);display:grid;place-items:center;border:0;width:100%}.ph.v{background:repeating-linear-gradient(135deg,#d3dee8 0 14px,#e3ecf2 14px 28px);border-bottom:2px solid var(--ink);border-radius:0}
.route{display:flex;align-items:center;max-width:300px;margin-top:var(--s-2)}.route .n{width:16px;height:16px;border-radius:50%;border:3px solid var(--cyan);background:var(--ink);flex:none}.route .n.d{background:var(--pink);border-color:var(--pink)}.route .l{flex:1;border-top:4px dotted var(--cyan);min-width:28px}.route .l.d{border-top-style:solid;border-color:var(--pink)}
.strip{display:flex;gap:var(--s-4);overflow-x:auto;scroll-snap-type:x proximity;padding:var(--s-3) 6px 18px}.strip .card{flex:0 0 260px;scroll-snap-align:start}
.card{background:var(--paper);border:2px solid var(--ink);border-radius:var(--r-note);box-shadow:var(--shadow-pencil);text-decoration:none;color:var(--ink);display:grid;align-content:start;overflow:hidden;transition:transform var(--t-mid) var(--ease-drop)}.card:hover{transform:translateY(-4px)}
.card h3{font-size:var(--fs-1);padding:var(--s-3) var(--s-4) 0;line-height:1.4}.card .mono{padding:var(--s-1) var(--s-4) var(--s-3);color:var(--text-mute)}.card .tag{margin:var(--s-3) var(--s-4) 0}
.grid{display:grid;gap:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.grid .card:nth-child(odd){--r:-.6deg;transform:rotate(-.6deg)}.grid .card:nth-child(even){transform:rotate(.5deg)}
.stub{display:grid;grid-template-columns:76px 1fr;gap:var(--s-4);align-items:center;background:var(--paper);border:2px solid var(--ink);padding:var(--s-3) var(--s-4);border-radius:var(--r-note);text-decoration:none;color:var(--ink);margin-bottom:var(--s-3);min-height:var(--tap)}.stub b{font:800 30px/1.1 var(--f-en-display);border-inline-end:2px dashed var(--ink);padding-inline-end:var(--s-3);text-align:center}.stub strong{font-size:var(--fs-1);line-height:1.4}.stub .mono{color:var(--text-mute)}
.shelf{margin-block:var(--s-6)}.shelf .rowS{display:flex;gap:var(--s-5);align-items:flex-end;min-height:150px;border-bottom:16px solid var(--ink);box-shadow:0 10px 0 -2px #a9bfcf;padding-inline:var(--s-5);perspective:700px}
.obj{position:relative;display:block;transition:transform var(--t-mid) var(--ease-drop)}.obj:hover,.obj:focus-visible{transform:translateY(-18px) rotateX(var(--rx,0)) rotateY(var(--ry,0))}
.obj i{display:block;border:3px solid var(--ink);background:var(--pink);position:relative}.cart i{width:76px;height:104px;border-radius:8px 8px 4px 4px}.cart i:after{content:"";position:absolute;inset:10px 10px auto;height:44px;background:var(--ink);border-radius:4px}.tile i{width:92px;height:92px;border-radius:24px;background:var(--cyan)}.disc i{width:96px;height:96px;border-radius:50%;border:10px solid var(--blue);background:var(--ink)}
.rowS .obj:nth-child(3n+2) .cart i,.rowS .obj:nth-child(3n+2) i{background:var(--blue)}
.lbl{position:absolute;bottom:calc(100% + 8px);inset-inline-start:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:0 10px;border-radius:6px;font-size:var(--fs-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--t-fast)}.obj:hover .lbl,.obj:focus-visible .lbl{opacity:1}
.caps{list-style:none;padding:0;display:grid;gap:var(--s-3);margin-top:var(--s-5)}.caps li{display:flex;flex-wrap:wrap;gap:var(--s-3);align-items:center;background:var(--paper);border:2px solid var(--ink);padding:var(--s-2) var(--s-4);border-radius:var(--r-note);min-height:var(--tap)}.caps a{font-weight:700;color:var(--ink)}
.crumb{display:inline-flex;min-height:var(--tap);align-items:center;font-weight:700}
.facts{display:grid;gap:var(--s-2);margin-block:var(--s-3)}.facts div{display:flex;gap:var(--s-3);flex-wrap:wrap}.facts dt{color:var(--text-mute-on-ink);min-width:7em}.facts dd{overflow-wrap:anywhere}
.cols{display:grid;gap:var(--s-6)}
.prose{max-width:68ch}.prose h2{margin-block:var(--s-6) var(--s-3)}.prose p,.prose ul{margin-bottom:var(--s-4)}.prose ul{padding-inline-start:var(--s-5)}
.cl{list-style:none;padding:0;position:relative;display:grid;gap:var(--s-5);padding-inline-start:36px;max-width:60ch}.cl:before{content:"";position:absolute;inset-block:8px;inset-inline-start:9px;border-inline-start:4px dotted var(--cyan)}.cl li{position:relative}.cl li:before{content:"";position:absolute;inset-inline-start:-35px;top:7px;width:18px;height:18px;border-radius:50%;background:var(--pink);border:3px solid var(--ink)}
.js .tl li{opacity:.35;transition:opacity var(--t-mid)}.js .tl li.on{opacity:1}
.gal{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--s-3)}.gal .ph{cursor:pointer;color:#9aa3ff}
dialog{border:2px solid var(--ink);border-radius:var(--r-lit);padding:var(--s-5);max-width:min(92vw,560px)}dialog .ph{margin-bottom:var(--s-3)}
details.playbox{margin-block:var(--s-4)}details.playbox summary{list-style:none;width:fit-content}details.playbox summary::-webkit-details-marker{display:none}.playbox iframe{width:100%;aspect-ratio:16/10;border:2px solid var(--ink);background:var(--ink);margin-top:var(--s-3)}
.hintD{display:none}@media(pointer:fine){.hintD{display:block}.hintM{display:none}}
.thread{position:fixed;inset-block:84px 90px;inset-inline-end:8px;width:0;border-inline-start:4px dotted var(--cyan);z-index:5;pointer-events:none}.thread b{position:absolute;top:0;inset-inline-start:-12px;width:20px;height:20px;background:var(--pink);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);transform:translateY(calc(var(--p,0)*(100vh - 214px)))}
.art{max-width:68ch;margin-inline:auto}.art h1{font-size:var(--fs-4);margin-block:var(--s-3)}.art .cover{margin-block:var(--s-5)}
.pager{display:flex;gap:var(--s-3);flex-wrap:wrap;margin-top:var(--s-5)}.pager a,.pager span{min-width:var(--tap);min-height:var(--tap);display:grid;place-items:center;padding:0 14px;border:2px solid var(--ink);border-radius:var(--r-ui);background:var(--paper);color:var(--ink);text-decoration:none;font-weight:700}.pager [aria-current]{background:var(--ink);color:#fff}
.avatar{background:var(--ink);border-radius:26px;padding:10px;width:min(240px,60vw);transform:rotate(3deg);box-shadow:var(--shadow-pink)}.avatar img{width:100%;height:auto;display:block}
input[type=search]{width:100%;min-height:var(--tap);padding:0 16px;border:2px solid var(--ink);border-radius:var(--r-ui);font:400 var(--fs-0) var(--f-body);background:var(--paper)}
.nf .slot{width:96px;height:96px;border:3px dashed var(--ink);border-radius:24px;display:grid;place-items:center}.nf .slot b{width:36px;height:36px;background:var(--pink);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);animation:blink 2s steps(2) infinite}@keyframes blink{50%{opacity:.15}}
.foot{background:var(--ink);color:#fff;margin-top:var(--s-7);padding:var(--s-6) 0 var(--s-7)}.foot .w{display:grid;gap:var(--s-5)}.foot a{color:#9ad8f7}.foot .btn{color:var(--ink)}.foot button.litebtn{min-height:var(--tap);background:none;border:2px solid #fff;color:#fff;border-radius:var(--r-ui);padding:0 16px;font:700 var(--fs-0) var(--f-body);cursor:pointer;width:fit-content}.foot button[aria-pressed=true]{background:var(--cyan);color:var(--ink);border-color:var(--cyan)}
.pick{min-height:100vh;display:grid;place-content:center;gap:var(--s-5);text-align:center;justify-items:center;padding:var(--s-5)}.pick img{width:200px;height:auto;background:var(--ink);border-radius:26px;padding:10px}
.ph.sk{background:repeating-linear-gradient(135deg,#d9e3ea 0 12px,#e9f0f5 12px 24px);min-height:64px}
@media(min-width:900px){body{padding-bottom:0}.bar{display:none}.dnav{display:flex}.hero{grid-template-columns:1.5fr 1fr}.notes{grid-template-columns:1.2fr 1fr 1.4fr;align-items:start}.notes .note:nth-child(2){margin-top:36px}.lit{grid-template-columns:1.2fr 1fr}.cols{grid-template-columns:1fr 340px;align-items:start}.cols aside{position:sticky;top:100px}.grid .card:nth-child(4n+1){grid-column:span 2}.thread{inset-inline-end:24px}}
html[data-lite] *,html[data-lite] *:before,html[data-lite] *:after{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.chips a{min-height:var(--tap);padding:0 18px;border:2px solid var(--ink);background:var(--paper);border-radius:var(--r-pill);font-weight:700;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center}.chips a[aria-current]{background:var(--ink);color:#fff}
.cols>*,.lit>*{min-width:0}
.lbl{inset-inline-start:auto;left:50%}
.shelf{overflow-x:clip}
.th,.po,.cover{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}.th{border-bottom:2px solid var(--ink)}.cover{border:2px solid var(--ink);margin-block:var(--s-5)}.lit .po{border-radius:var(--r-note)}
.card h3 a{color:inherit;text-decoration:none}.card h3 a:hover{text-decoration:underline}.cth a{display:block}.cact{padding:0 var(--s-4) var(--s-3)}
.embf{width:100%;aspect-ratio:16/9;border:0;display:block}.emb{position:relative}.emb .btn{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.trailer video{width:100%;height:auto;aspect-ratio:16/9;background:var(--ink);border:2px solid var(--ink);display:block}
.gal .g img{width:100%;height:100%;object-fit:cover;display:block}.gal .g:not(.ph){padding:0;border:2px solid var(--ink);background:none;aspect-ratio:4/3;overflow:hidden;cursor:pointer}dialog img{max-width:100%;height:auto;display:block;margin-bottom:var(--s-3)}
.mt16{margin-top:16px}.mt24{margin-top:24px}.mt32{margin-top:32px}.my16{margin-block:16px}.my24{margin-block:24px}.sec{margin-block:24px 12px;font-size:var(--fs-2)}
.chip.pk{background:var(--pink)}.brand.wh{color:#fff}.note.n1{--r:-1deg}.stk{--r:-4deg}.btn.dis{opacity:.7;cursor:not-allowed;box-shadow:none}
.notes .note:nth-child(1){--i:1}.notes .note:nth-child(2){--i:2}.notes .note:nth-child(3){--i:3}
.note{transform:translate(var(--dx,0px),var(--dy,0px)) rotate(var(--r,0deg))}.note h2{font-size:var(--fs-2)}.ct{font-size:var(--fs-1);padding:var(--s-3) var(--s-4) 0;line-height:1.4;font-family:var(--f-fa-display)}html[lang=en] .ct{font-family:var(--f-en-display)}
@media(pointer:fine){.js .notes .note{cursor:grab}.js .notes .note.drag{cursor:grabbing;z-index:5;box-shadow:8px 10px 0 var(--ink)}}
.cur{position:fixed;left:0;top:0;width:22px;height:22px;background:var(--pink);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);pointer-events:none;z-index:99;transform:translate3d(-100px,-100px,0);will-change:transform;opacity:0;transition:opacity .15s,scale .15s}.cur.on{opacity:.9}.cur.big{scale:1.8}
@media(prefers-reduced-motion:no-preference){::view-transition-old(root){animation:vt-out .18s ease both}::view-transition-new(root){animation:vt-in .26s var(--ease-out) both}}
@keyframes vt-out{to{opacity:0;transform:translateY(-6px)}}@keyframes vt-in{from{opacity:0;transform:translateY(8px)}}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pick main{display:contents}
.ar{flex:none;margin-inline-end:6px}html[dir=ltr] .ar{transform:scaleX(-1)}.crumb{gap:2px}
