:root{color-scheme:light dark;--bg:#faf8f4;--fg:#1f1d1a;--muted:#6b665e;--rule:#ddd8cd;--accent:#b4410e;--line:#2b2b2b;--wood:#ece7dc;--glass:#cfe3ee;--hardware:#b9a16b;--highlight:#f4a261;--phi:1.618;--page:61.8rem;--split:minmax(0, 1.618fr) minmax(0, 1fr);--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans:system-ui, sans-serif;--step--1:.786rem;--step-0:1rem;--step-1:1.272rem;--step-2:1.618rem;--step-3:2.058rem;--step-4:2.618rem;--step-6:4.236rem;--s-1:.236rem;--s-2:.382rem;--s-3:.618rem;--s-4:1rem;--s-5:1.618rem;--s-6:2.618rem;--s-7:4.236rem}@media (prefers-color-scheme:dark){:root{--bg:#171614;--fg:#ece9e2;--muted:#a39e94;--rule:#38352f;--accent:#fb923c;--line:#d9d5cc;--wood:#3a362f;--glass:#2a3b47;--hardware:#8a7747;--highlight:#a3470c}}*{box-sizing:border-box}body{background:var(--bg);color:var(--fg);font-family:var(--sans);margin:0;line-height:1.55}a{color:var(--accent)}.site-header,main{max-width:var(--page);padding:0 var(--s-4);margin:0 auto}.site-header{padding-top:var(--s-4);padding-bottom:var(--s-3);border-bottom:3px double var(--rule)}.site-header a{color:inherit;font-family:var(--serif);font-size:var(--step-1);letter-spacing:.06em;text-decoration:none}main{padding-bottom:var(--s-7)}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.15}h1{margin:var(--s-6) 0 var(--s-2);font-size:var(--step-3)}h2{margin:var(--s-6) 0 var(--s-3);font-size:var(--step-2)}.lede{margin:0 0 var(--s-5);color:var(--muted);font-family:var(--serif);font-size:var(--step-1);font-style:italic}.label{align-items:center;gap:var(--s-4);margin:var(--s-7) 0 var(--s-4);color:var(--muted);font-family:var(--sans);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;font-weight:600;display:flex}.label:after{content:"";border-top:1px solid var(--rule);flex:1}.aka{color:var(--muted);margin:0;font-size:.9375rem}.term-list{gap:0 var(--s-6);grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));margin:0;padding:0;list-style:none;display:grid}.term-list li{border-top:1px solid var(--rule);padding:.625rem 0}.term-list a{font-weight:600}.term-list a.is-active{background:var(--highlight);color:var(--fg)}.term-list span{color:var(--muted);font-size:.9375rem;display:block}.hero{grid-template-columns:var(--split);gap:var(--s-6);padding:var(--s-6) 0 0;align-items:center;display:grid}.hero h1{margin:var(--s-3) 0 var(--s-4);font-size:var(--step-6);letter-spacing:.01em;font-weight:400}.hero .lede{max-width:26em;font-size:var(--step-2);margin:0}.hero .eyebrow{color:var(--accent);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;margin:0;font-weight:600}.plate{padding:var(--s-4);border:1px solid var(--line);outline:1px solid var(--rule);outline-offset:5px;margin:0}.plate svg{max-height:24rem}.plate figcaption{margin-top:var(--s-3);padding-top:var(--s-3);border-top:1px solid var(--rule);color:var(--muted);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase}.cards{gap:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(12.5rem,1fr));margin:0;padding:0;list-style:none;display:grid}.card{color:inherit;text-decoration:none;display:block}.card .thumb{aspect-ratio:1.618;padding:var(--s-4);border:1px solid var(--rule);justify-content:center;align-items:center;transition:border-color .2s;display:flex}.card .thumb svg{width:auto;max-width:100%;height:100%}.card:hover .thumb,.card:focus-visible .thumb{border-color:var(--accent)}.card h3{margin:var(--s-3) 0 0;font-size:var(--step-1);font-weight:500}.card p{margin:var(--s-1) 0 0;color:var(--muted);font-size:.9375rem}.card .count{margin-top:var(--s-2);color:var(--muted);font-size:var(--step--1);letter-spacing:.14em;text-transform:uppercase;display:block}.tab-list{border-bottom:1px solid var(--rule);flex-wrap:wrap;gap:.25rem 1rem;margin-top:1.5rem;display:flex}.tab-list button{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:.5rem .125rem;font-weight:600}.tab-list button:hover{color:var(--fg)}.tab-list button[aria-selected=true]{border-bottom-color:var(--accent);color:var(--fg)}.diagram{grid-template-columns:var(--split);gap:var(--s-6);align-items:start;margin:1.5rem 0 0;display:grid}.diagram svg,.plate svg,.thumb svg{width:100%;height:auto;max-height:80vh;fill:var(--wood);stroke:var(--line);display:block}.diagram svg .glass,.plate svg .glass,.thumb svg .glass{fill:var(--glass)}.diagram svg .hardware,.plate svg .hardware,.thumb svg .hardware{fill:var(--hardware)}.diagram svg [data-term]{cursor:pointer;outline:none}.diagram svg [data-term].is-active,.diagram svg [data-term].is-active [data-term]{fill:var(--highlight)}.diagram figcaption{color:var(--muted);grid-column:1/-1;font-size:.9375rem}.diagram-panel{border:1px solid var(--rule);border-radius:.5rem;min-height:11rem;padding:1rem 1.25rem;position:sticky;top:1rem}.diagram-panel h3{font-size:var(--step-2);margin:0;line-height:1.2}.diagram-panel p{margin:.5rem 0 0}.quiz svg [data-term]{cursor:default}.quiz-progress{color:var(--muted);font-size:.9375rem}.quiz-choices{gap:.5rem;margin-top:1rem;display:grid}.diagram-panel .quiz-choices button,.diagram-panel .quiz-next{border:1px solid var(--rule);color:var(--fg);font:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:.375rem;padding:.5rem .75rem;text-decoration:none}.diagram-panel .quiz-choices button:hover:not(:disabled),.diagram-panel .quiz-next:hover{border-color:var(--accent)}.diagram-panel .quiz-choices button:disabled{cursor:default}.diagram-panel .quiz-choices button.is-correct{border-color:var(--fg);background:var(--highlight)}.diagram-panel .quiz-choices button.is-wrong{color:var(--muted);text-decoration:line-through}.quiz-verdict{font-weight:600}.diagram-panel .quiz-next{background:var(--accent);border-color:var(--accent);color:var(--bg);margin-top:.75rem;font-weight:600}.diagram-panel .quiz-next:hover{border-color:var(--fg)}.diagram-panel .hint{color:var(--muted);margin:0}.diagram-panel button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:underline}@media (width<=40rem){.hero{grid-template-columns:minmax(0,1fr)}.hero h1{font-size:var(--step-4)}.diagram{grid-template-columns:minmax(0,1fr);gap:1rem}.diagram svg{max-height:60vh}.diagram-panel{min-height:9rem;position:static}}
