:root{color-scheme:light;--cream: #f6efe2;--cream-deep: #eadfca;--paper: #fbf6ec;--oak: #7a5230;--oak-dark: #4d3019;--oak-light: #96683f;--ink: #2b2118;--ink-soft: #5a4a3a;--brass: #b08a4a;--brass-light: #e2c37f;--brass-dark: #7c5d2b;--rule-red: #c9553f;--rule-blue: #a9bfd6;--serif: Georgia, "Iowan Old Style", "Songti SC", "Noto Serif CJK SC", serif;--mono: "American Typewriter", "Courier New", Courier, ui-monospace, monospace;font-family:var(--serif);color:var(--ink);background:var(--oak-dark)}*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;min-width:320px;min-height:100vh;background:var(--oak-dark)}a{color:inherit;text-decoration:none}p,h1,h2,h3,ul,ol,dl,figure{margin:0}ul,ol{padding:0;list-style:none}.catalog-shell{min-height:100vh}.small-caps,.sign-kicker,.label-slot,.stamp,.section-tab,.plate,.notice-label,.typed-label,.fan-tag,.library-card-table th,.foot-studio{font-variant-caps:small-caps;letter-spacing:.12em}.token{font-family:var(--mono);font-size:.92em;padding:0 .28em;border-radius:3px;background:#b08a4a2e;color:#7a4a12;white-space:nowrap}.masthead{position:relative;padding:clamp(28px,5vw,56px) clamp(18px,5vw,64px) clamp(26px,4vw,48px);background:repeating-linear-gradient(92deg,rgba(0,0,0,.08) 0 2px,transparent 2px 9px),linear-gradient(180deg,var(--oak-light),var(--oak) 60%,#6a4526);color:var(--cream);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px 32px;align-items:start;border-bottom:6px solid var(--oak-dark);box-shadow:inset 0 -12px 30px #00000040}.sign{display:inline-block;padding:clamp(18px,3vw,34px) clamp(20px,4vw,48px) clamp(20px,3vw,36px);background:radial-gradient(circle at 20% 10%,rgba(255,255,255,.7),transparent 45%),var(--cream);color:var(--ink);border:2px solid var(--brass-dark);outline:1px solid var(--brass-light);outline-offset:-8px;box-shadow:0 14px 30px #00000059,inset 0 0 0 5px var(--cream),inset 0 0 0 6px var(--brass);max-width:100%}.sign-kicker{font-size:clamp(11px,1.1vw,13px);color:var(--brass-dark)}.sign-brand{margin-top:8px;font-size:clamp(50px,10vw,128px);line-height:.95;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--ink);text-shadow:1px 1px 0 var(--brass-light),2px 2px 0 rgba(0,0,0,.08);overflow-wrap:anywhere}.sign-subtitle{margin-top:16px;padding-top:12px;border-top:1px solid var(--rule-red);font-size:clamp(17px,1.9vw,24px);font-style:italic;line-height:1.4;max-width:44ch}.plates{display:grid;gap:12px;justify-items:end;align-content:start}.plate-row{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.plate{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 12px;font-size:12px;color:#3b2a12;background:linear-gradient(160deg,var(--brass-light),var(--brass) 55%,#8d6b32);border:1px solid var(--brass-dark);border-radius:3px;box-shadow:0 2px #00000059,inset 0 1px #ffffff8c;text-shadow:0 1px 0 rgba(255,255,255,.35);position:relative;overflow:hidden}.plate:before,.plate:after{content:"";position:absolute;top:50%;width:4px;height:4px;margin-top:-2px;border-radius:50%;background:#5b4118;box-shadow:inset 0 1px 1px #0009}.plate:before{left:4px}.plate:after{right:4px}.plate[aria-current=page]{background:linear-gradient(160deg,#f0dba2,#c9a45c 55%,#a07a38);font-weight:700}.plate-store{flex-direction:column;gap:2px;padding:12px 26px;min-width:190px;font-variant-caps:normal;letter-spacing:0}.plate-store-name{font-size:15px;font-weight:700;letter-spacing:.06em;font-variant-caps:small-caps}.plate-store-price{font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:#4d3616;text-shadow:0 1px 0 rgba(255,255,255,.5)}.wall{padding:0 clamp(14px,4vw,48px) clamp(28px,4vw,48px);background:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 14px),linear-gradient(180deg,#3f2612,var(--oak-dark))}.wall-top{display:flex;justify-content:flex-end;padding:clamp(22px,3vw,40px) 0 clamp(64px,6vw,84px)}.notice{position:relative;width:min(100%,60ch);padding:18px 22px 20px 26px;background:var(--paper);color:var(--ink-soft);font-size:15px;line-height:1.6;border-left:3px solid var(--rule-red);box-shadow:0 8px 20px #0006;transform:rotate(.6deg);background-image:repeating-linear-gradient(180deg,transparent 0 25px,rgba(169,191,214,.5) 25px 26px);background-position:0 30px}.notice-label{display:block;margin-bottom:4px;font-size:11px;color:var(--brass-dark)}.drawer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px;background:linear-gradient(180deg,#2c1a0c,#1e1108);border:8px solid var(--oak);border-radius:4px;box-shadow:0 30px 60px #00000080,inset 0 0 0 2px var(--oak-dark)}.drawer{position:relative;aspect-ratio:5 / 3;min-height:96px;background:#16100a;box-shadow:inset 0 6px 16px #000c}.drawer-front{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12%;padding:8%;background:repeating-linear-gradient(88deg,rgba(0,0,0,.09) 0 1px,transparent 1px 7px,rgba(255,255,255,.04) 7px 8px),linear-gradient(180deg,var(--oak-light),var(--oak) 55%,#6a4526);border:2px solid var(--oak-dark);box-shadow:inset 0 1px #ffffff2e,0 3px #0006;transition:transform .3s ease,box-shadow .3s ease;transform-origin:50% 100%}.drawer-front:hover,.drawer-front:focus-visible{transform:translateY(3%);box-shadow:inset 0 1px #ffffff2e,0 10px 22px #00000080;outline:none}.drawer-front:focus-visible .label-slot{box-shadow:0 0 0 2px var(--brass-light)}.label-slot{display:flex;align-items:center;gap:.6em;max-width:100%;padding:.35em .8em;background:var(--paper);color:var(--ink);border:3px solid var(--brass);outline:1px solid var(--brass-dark);box-shadow:inset 0 0 0 1px var(--brass-dark),0 1px 3px #0006;font-size:clamp(11px,1.15vw,15px);line-height:1.2}.label-index{font-family:var(--mono);font-size:.85em;color:var(--rule-red);letter-spacing:0}.label-text{overflow-wrap:anywhere}.pull{position:relative;width:26%;height:10px;min-width:34px;border-radius:6px;background:linear-gradient(180deg,var(--brass-light),var(--brass) 55%,var(--brass-dark));box-shadow:0 2px 3px #00000080,inset 0 1px #fff9;overflow:hidden}.pull:before,.pull:after{content:"";position:absolute;top:-3px;width:6px;height:16px;border-radius:3px;background:linear-gradient(180deg,var(--brass-light),var(--brass-dark))}.pull:before{left:8%}.pull:after{right:8%}.glint,.pull>span{display:none}.pull:after{z-index:1}.drawer-front:after{content:"";position:absolute;left:37%;right:37%;bottom:calc(-4% + 46px);height:10px;pointer-events:none;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.75) 50%,transparent 70%);background-size:300% 100%;opacity:0;animation:glint 7s ease-in-out infinite;animation-delay:calc(var(--glint, 0) * 1s);mix-blend-mode:screen}.drawer:nth-child(2) .drawer-front:after{--glint: 1.4}.drawer:nth-child(3) .drawer-front:after{--glint: 2.8}.drawer:nth-child(4) .drawer-front:after{--glint: 4.2}.drawer:nth-child(5) .drawer-front:after{--glint: 5.6}.drawer:nth-child(6) .drawer-front:after{--glint: 6.3}@keyframes glint{0%,82%{opacity:0;background-position:120% 0}86%{opacity:.9}94%{opacity:0;background-position:-20% 0}to{opacity:0}}.drawer.is-open{z-index:3;overflow:visible}.drawer.is-open .drawer-front{transform:translateY(34%) scale(1.03);box-shadow:inset 0 1px #ffffff2e,0 18px 30px #0009}.drawer.is-open .drawer-front:hover{transform:translateY(37%) scale(1.03)}.cavity{position:absolute;left:6%;right:6%;bottom:46%;height:30%;background:linear-gradient(180deg,#0f0906,#201409);box-shadow:inset 0 8px 14px #000000e6}.fan-card{position:absolute;left:50%;bottom:8%;width:62%;aspect-ratio:5 / 3;padding:7% 8%;background:linear-gradient(180deg,transparent 32%,var(--rule-red) 32%,var(--rule-red) calc(32% + 1px),transparent calc(32% + 1px)),repeating-linear-gradient(180deg,transparent 0 calc(16% - 1px),rgba(169,191,214,.55) calc(16% - 1px) 16%),var(--paper);background-position:0 0,0 40%,0 0;color:var(--ink);box-shadow:0 4px 10px #00000059,0 0 0 1px #00000014;font-size:clamp(8px,.95vw,12px);line-height:1.25;transform-origin:50% 100%;--tx: calc((var(--i) - 2) * 26%);--rot: calc((var(--i) - 2) * 7deg);--lift: calc(46% + (2 - var(--i)) * (2 - var(--i)) * -5%);transform:translate(calc(-50% + var(--tx)),calc(-1 * var(--lift))) rotate(var(--rot));animation:slide-out 1.1s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(.12s + var(--i) * .11s)}.fan-card .fan-tag{display:block;font-size:.8em;color:var(--brass-dark)}.fan-card .fan-title{display:block;margin-top:.1em;font-weight:700;font-size:1.05em}.fan-card .token{display:inline-block;margin-top:.45em;font-size:.85em}@keyframes slide-out{0%{transform:translate(-50%,30%) rotate(0);opacity:0}to{transform:translate(calc(-50% + var(--tx)),calc(-1 * var(--lift))) rotate(var(--rot));opacity:1}}.desk{padding:clamp(28px,4vw,56px) clamp(16px,4vw,56px) clamp(56px,6vw,96px);background:repeating-linear-gradient(180deg,transparent 0 31px,rgba(169,191,214,.45) 31px 32px),linear-gradient(90deg,transparent 0 clamp(28px,4vw,64px),var(--rule-red) clamp(28px,4vw,64px),var(--rule-red) calc(clamp(28px,4vw,64px) + 1px),transparent calc(clamp(28px,4vw,64px) + 1px)),var(--cream);color:var(--ink)}.desk-section{max-width:1180px;margin:0 auto;padding-top:clamp(28px,4vw,52px);scroll-margin-top:20px}.desk-section:first-child{padding-top:0}.section-tab{display:inline-block;padding:6px 16px 5px;font-size:13px;font-weight:700;color:var(--ink);background:var(--cream-deep);border:1px solid var(--brass);border-bottom:0;border-radius:6px 6px 0 0;box-shadow:inset 0 -3px #b08a4a59}.card-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:clamp(18px,3vw,32px) clamp(16px,2.5vw,28px);padding:22px clamp(4px,1vw,12px) 6px;border-top:1px solid var(--brass)}.index-card{position:relative;min-height:156px;padding:34px 20px 20px;background:repeating-linear-gradient(180deg,transparent 0 27px,rgba(169,191,214,.6) 27px 28px),var(--paper);background-position:0 44px,0 0;border:1px solid rgba(43,33,24,.12);border-radius:3px;box-shadow:0 6px 14px #2b211824,0 1px #ffffffb3 inset;line-height:1.5}.index-card:before{content:"";position:absolute;left:0;right:0;top:44px;height:1px;background:var(--rule-red)}.card-row>.index-card:nth-child(odd){transform:rotate(-1.2deg)}.card-row>.index-card:nth-child(2n){transform:rotate(1.1deg)}.card-row>.index-card:nth-child(3n){transform:rotate(1.8deg)}.card-row>.index-card:nth-child(4n){transform:rotate(-.8deg)}.stamp{position:absolute;top:10px;right:12px;padding:2px 7px;font-size:10px;font-weight:700;color:var(--brass-dark);border:1.5px solid var(--brass-dark);border-radius:3px;transform:rotate(-6deg);opacity:.85;background:#fbf6eccc}.stamp-red{color:var(--rule-red);border-color:var(--rule-red);transform:rotate(5deg)}.card-title{font-size:clamp(17px,1.6vw,21px);font-weight:700;line-height:1.25;overflow-wrap:anywhere}.card-title a{text-decoration:underline;text-decoration-color:var(--brass);text-underline-offset:3px}.card-body{margin-top:10px;color:var(--ink-soft);font-size:15px}.card-foot{margin-top:14px;font-size:13px;color:var(--ink-soft);font-style:italic}.scene-card{padding-bottom:18px}.sample{margin-top:14px;padding-top:6px;border-top:1px dashed rgba(176,138,74,.6)}.typed{font-family:var(--mono);font-size:13px;line-height:1.7;color:var(--ink);overflow-wrap:anywhere}.typed-label{display:inline-block;min-width:4.5em;margin-right:.5em;font-family:var(--serif);font-size:10px;color:var(--brass-dark)}.fill-line{color:#6a3d1c}.fill{display:inline;clip-path:inset(0 0 0 0);animation:typewriter 9s steps(26,end) infinite;animation-delay:var(--delay, 0s)}@keyframes typewriter{0%,8%{clip-path:inset(0 100% 0 0)}48%,88%{clip-path:inset(0 0 0 0)}96%,to{clip-path:inset(0 100% 0 0)}}.variables-desk{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:clamp(18px,3vw,32px);padding:22px clamp(4px,1vw,12px) 6px;border-top:1px solid var(--brass)}.variable-card{transform:rotate(-.8deg)}.filled-card{transform:rotate(1deg)}.variable-card .template-line{margin-top:12px;font-size:14px}.fields{margin:14px 0 0;display:grid;gap:6px}.field{display:flex;gap:12px;align-items:baseline;font-size:13px}.field dt{min-width:7em}.field dd{margin:0;font-family:var(--mono);color:var(--ink-soft);border-bottom:1px dotted var(--brass)}.filled-card .fill-line{font-size:16px;margin-top:4px}.flip-card{perspective:900px}.flip-card summary{list-style:none;cursor:pointer;display:block;font-size:clamp(17px,1.6vw,21px);font-weight:700;line-height:1.25}.flip-card summary::-webkit-details-marker{display:none}.flip-card summary .card-title{display:block}.flip-card summary:after{content:"+";position:absolute;left:12px;top:12px;font-family:var(--mono);font-size:14px;color:var(--rule-red)}.flip-card[open] summary:after{content:"−"}.flip-card summary:focus-visible{outline:2px solid var(--brass);outline-offset:4px}.flip-answer{position:relative;margin-top:14px;padding:12px 14px;color:var(--ink-soft);font-size:15px;background:#eadfcab3;border:1px solid rgba(176,138,74,.5);transform-origin:50% 0;animation:flip-in .45s ease both}.flip-answer .stamp{top:-9px;right:10px}@keyframes flip-in{0%{transform:rotateX(-80deg);opacity:0}to{transform:rotateX(0);opacity:1}}.library-card{position:relative;max-width:640px;margin-top:22px;padding:20px 22px 22px;background:var(--paper);border:1px solid rgba(43,33,24,.18);box-shadow:0 8px 18px #2b211829;transform:rotate(-.6deg)}.library-card:before{content:"";position:absolute;left:0;right:0;top:56px;height:1px;background:var(--rule-red)}.library-card-title{font-size:11px;font-variant-caps:small-caps;letter-spacing:.14em;color:var(--brass-dark);padding-bottom:20px}.library-card-body{margin-top:14px;font-size:16px;line-height:1.55}.library-card-table{width:100%;margin-top:16px;border-collapse:collapse;font-size:13px}.library-card-table th,.library-card-table td{padding:8px 0;border-top:1px solid rgba(169,191,214,.9);text-align:left;vertical-align:top}.library-card-table th{width:6.5em;font-weight:400;color:var(--brass-dark);padding-right:12px}.library-card-table td{font-family:var(--mono);color:var(--ink-soft)}.library-card-table td a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--brass)}.hero-slot{position:relative;margin-top:30px;width:min(100%,720px);aspect-ratio:16 / 9;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:28px;background:var(--paper);border:1px dashed var(--brass);box-shadow:0 8px 18px #2b211824;text-align:center}.hero-slot-size{font-family:var(--mono);font-size:13px;letter-spacing:.16em;color:var(--brass-dark)}.hero-slot figcaption{max-width:52ch;font-size:14px;line-height:1.55;color:var(--ink-soft)}.corner{position:absolute;width:26px;height:26px;background:var(--oak);clip-path:polygon(0 0,100% 0,0 100%)}.corner-tl{left:-1px;top:-1px}.corner-tr{right:-1px;top:-1px;transform:rotate(90deg)}.corner-br{right:-1px;bottom:-1px;transform:rotate(180deg)}.corner-bl{left:-1px;bottom:-1px;transform:rotate(270deg)}.catalog-foot{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:16px 28px;align-items:baseline;padding:22px clamp(16px,4vw,56px) 30px;background:var(--oak-dark);color:var(--cream-deep);border-top:6px solid var(--oak);font-size:12px}.foot-studio{color:var(--brass-light);font-size:13px}.foot-disclaimer{color:#eadfcabf;line-height:1.5}.foot-hub{font-family:var(--mono);color:var(--brass-light);border-bottom:1px solid var(--brass-dark)}@media(max-width:900px){.masthead{grid-template-columns:1fr}.plates{justify-items:start}.plate-row,.wall-top{justify-content:flex-start}}@media(max-width:720px){.drawer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;border-width:6px}.label-slot{border-width:2px;padding:.3em .6em;gap:.4em}.pull{height:7px;min-width:28px}.pull:before,.pull:after{height:12px;width:5px;top:-2px}.drawer-front:after{display:none}.fan-card{width:70%;font-size:8px}.catalog-foot{grid-template-columns:1fr;gap:10px}.card-row>.index-card,.variable-card,.filled-card,.library-card{transform:rotate(0)}.index-card{min-height:0}}@media(max-width:400px){.sign{padding:16px 16px 18px}.sign-brand{font-size:clamp(38px,15vw,56px)}.label-slot{font-size:10px}.label-index,.fan-card .token{display:none}.fan-card{font-size:7px}.typed-label{display:block;min-width:0;margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fan-card,.fill,.flip-answer,.drawer-front:after{animation:none}.fill{clip-path:none}.drawer-front:after{display:none}.drawer-front,.drawer-front:hover{transition:none}}
