:root{color-scheme:dark;--bg:#101c1f;--panel:#142328;--edge:#2a4145;--ink:#e8f1e8;--muted:#a3b8b7;--lime:#c5f58b}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 'Segoe UI',Arial,sans-serif}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}a{color:var(--lime);text-decoration:none}a:hover{text-decoration:underline}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--lime);outline-offset:3px}header{min-height:80px;border-bottom:1px solid var(--edge);display:flex;align-items:center;gap:40px;padding:18px 30px}.brand{font-size:26px;letter-spacing:-1px;font-weight:700;color:var(--ink);white-space:nowrap}.brand span,h1 span{color:var(--lime)}header nav{display:flex;gap:25px}header nav a{font-size:14px;color:var(--muted)}header nav a[aria-current]{color:var(--lime);border-bottom:2px solid;padding-bottom:9px}.edition{margin-left:auto;font-size:12px;letter-spacing:2px;color:var(--muted)}main{display:grid;grid-template-columns:250px minmax(420px,1fr) 270px;max-width:1900px;margin:auto}.library{padding:32px 23px;border-right:1px solid var(--edge)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.7px;color:var(--lime)}h1{font-size:38px;line-height:1.1;letter-spacing:-1.4px;margin:16px 0}h2{font-size:27px;line-height:1.2;letter-spacing:-.7px;margin:8px 0}h3{font-size:20px;margin:8px 0}.library p,.muted,.description{color:var(--muted)}.library p{font-size:14px}.search-label{display:block;font-size:13px;margin:23px 0 6px}input[type=search]{width:100%;border:1px solid var(--edge);background:#102025;padding:11px;border-radius:8px;font-size:14px;color:var(--ink)}.catalogue-group{margin-top:24px}.catalogue-group h3{display:flex;justify-content:space-between;align-items:center;font-size:14px;letter-spacing:.4px;color:var(--ink)}.catalogue-group h3 span{color:var(--muted);font-size:12px;font-weight:400}.tissue-button{display:block;width:100%;border:0;background:transparent;color:var(--muted);text-align:left;padding:9px 10px;border-radius:7px;font-size:14px;line-height:1.35;margin:2px 0}.tissue-button:hover{background:#203238}.tissue-button[aria-current]{background:#c5f58b;color:#18251d;font-weight:600}.library-note{font-size:13px;color:var(--muted);border-top:1px solid var(--edge);padding-top:20px;margin-top:30px}.study{padding:32px 25px 40px;min-width:0}.heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.badge{font-size:10px;letter-spacing:1.3px;border:1px solid var(--edge);padding:7px 9px;border-radius:20px;white-space:nowrap}.description{min-height:50px;margin:12px 0 22px}.stage{position:relative;height:510px;border:1px solid var(--edge);border-radius:14px;overflow:hidden;background:radial-gradient(ellipse at 45% 45%,#243a40,#112025 75%)}#canvas-host{position:absolute;inset:0}canvas{display:block;width:100%;height:100%;touch-action:none}.stage-top,.stage-bottom{position:absolute;z-index:2;pointer-events:none;font-size:11px;color:var(--muted);letter-spacing:1px}.stage-top{top:17px;left:18px;right:18px;display:flex;justify-content:space-between}.stage-top b{color:var(--lime)}.stage-bottom{bottom:15px;left:18px;font-size:12px;letter-spacing:0}#labels,#leaders{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#leaders{z-index:3;overflow:hidden}#labels{z-index:4}.model-label{position:absolute;pointer-events:auto;font-size:12px;line-height:1.25;text-align:left;background:#112025ed;border:1px solid #4b6265;color:#eff7ed;border-radius:5px;min-height:27px;padding:5px 8px;max-width:155px;box-shadow:0 2px 8px #0004}.model-label.selected{border-color:var(--lime);color:var(--lime)}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px}.controls button{border:1px solid var(--edge);background:var(--panel);color:var(--ink);padding:8px 10px;border-radius:7px;font-size:13px}.controls button.active{color:var(--lime);border-color:#749653}.controls label{display:flex;align-items:center;gap:5px;font-size:13px;margin:0 5px}input[type=checkbox]{accent-color:var(--lime)}#download{margin-left:auto}.section-note{font-size:12px;color:var(--muted);margin-top:13px}.cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:25px}.cards article,.reading,.group-overview{border:1px solid var(--edge);background:var(--panel);border-radius:10px;padding:20px}.cards ul,.group-columns ul{padding-left:19px;margin-bottom:0}.cards li{margin-bottom:9px;font-size:15px}.reading{margin-top:14px}.reading p{margin-bottom:0}.group-overview{margin-top:14px}.group-overview summary{cursor:pointer;font-weight:600}.group-overview p,.group-columns{font-size:14px;color:var(--muted)}.group-columns{display:grid;grid-template-columns:1fr 1fr;gap:20px}.group-overview a{display:inline-block;font-size:13px;margin-top:15px}.inspector{padding:32px 20px;border-left:1px solid var(--edge)}.inspector h2{font-size:23px}.muted{font-size:14px}.part-button{display:flex;gap:10px;align-items:center;width:100%;padding:11px 8px;border:0;border-bottom:1px solid var(--edge);background:transparent;color:var(--ink);text-align:left;font-size:14px}.part-button span{font-size:11px;color:var(--muted)}.part-button.selected{color:var(--lime);background:#24352b}#detail{background:#1e3031;border:1px solid #405950;border-radius:10px;margin-top:23px;padding:18px}#detail p{font-size:14px;margin-bottom:0;color:#c3d4cd}.key{display:grid;gap:8px;margin-top:26px;font-size:12px;color:var(--muted)}.key span{display:flex;align-items:center;gap:8px}.key i{width:9px;height:9px;border-radius:50%}#viewer-error{position:absolute;z-index:7;inset:70px 20px auto;padding:20px;border:1px solid #ce8c8c;background:#382528;border-radius:10px}
@media(min-width:1600px){.stage{height:620px}.study{padding:35px 40px}main{grid-template-columns:270px minmax(500px,1fr) 310px}}
@media(max-width:1150px){main{grid-template-columns:210px minmax(0,1fr)}.inspector{grid-column:2;border-left:0;border-top:1px solid var(--edge)}#parts{display:grid;grid-template-columns:1fr 1fr;gap:4px}.library{grid-row:1/3}.edition{display:none}.stage{height:490px}.study{padding:25px 18px}.model-label{font-size:11px;max-width:135px}}
@media(max-width:700px){header{padding:14px 16px;gap:13px;flex-wrap:wrap}.brand{font-size:23px}header nav{gap:17px;width:100%}main{display:block}.library{border-right:0;border-bottom:1px solid var(--edge);padding:18px}.library h1{font-size:27px;line-height:1.15;margin:10px 0}.library h1 br{display:none}.library>p,.library-note{display:none}.search-label{margin-top:10px}#catalogue{display:flex;gap:12px;overflow:auto;max-height:200px}.catalogue-group{min-width:200px;margin-top:10px}.study{padding:22px 12px}.heading h2{font-size:24px}.badge{display:none}.description{font-size:15px}.stage{height:480px}.stage-bottom{font-size:10px;left:10px}.stage-top{font-size:10px}.model-label{font-size:10px;max-width:115px;min-height:24px;padding:4px 5px}.cards{gap:9px}.cards article{padding:14px}.cards li{font-size:14px}.cards h3{font-size:18px}.inspector{padding:23px 16px}.group-columns{grid-template-columns:1fr}.eyebrow{font-size:10px}.controls button{font-size:12px}#download{margin-left:0}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
