:root{color-scheme:dark;--bg:#0c1118;--panel:#111a24;--line:#283440;--text:#e8eeef;--muted:#a5b2bf;--accent:#80dcc9;--gold:#e5b879;font-family:Inter,"Noto Sans JP",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{transition:background .15s,color .15s}button,select{border:1px solid var(--line);border-radius:6px;background:#17222e;color:var(--text);padding:9px 13px;cursor:pointer;font-size:14px}button:hover,a:hover{background:#243845}button:disabled{opacity:.4;cursor:wait}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button.active,[aria-pressed=true]{border-color:#75ceba;color:#a0f0dc;background:#1b3637}a{color:#a0ddcf;text-decoration:none}p{line-height:1.7}h1,h2,h3,p{margin:0}h1{font-size:32px;font-weight:600;letter-spacing:.03em;line-height:1.4}h2{font-size:17px;font-weight:600}h3{font-size:16px;font-weight:600}button.primary{background:var(--accent);color:#102720;border-color:var(--accent);font-weight:700}button.text-button{border:0;padding:2px 4px;background:none;color:var(--accent);white-space:nowrap}input[type=range]{width:100%;accent-color:var(--accent);height:25px;cursor:pointer}input[type=checkbox]{accent-color:var(--accent)}[hidden]{display:none!important}.masthead{display:flex;align-items:center;gap:38px;border-bottom:1px solid var(--line);padding:16px 3vw}.brand{font-size:24px;letter-spacing:-.02em;color:#e6edef;white-space:nowrap;display:flex;align-items:center;gap:8px}.brand b{font-weight:400;color:var(--accent)}.brand-mark{display:inline-grid;place-items:center;width:30px;height:32px;background:#1c3639;border-radius:7px;font-size:31px;color:var(--accent);margin-right:4px}nav{display:flex;align-items:center;gap:6px}nav button,nav a{font-size:14px;border-color:transparent;background:none;padding:10px 14px;white-space:nowrap}nav a{color:var(--muted)}.edition{margin-left:auto;color:var(--muted);font-size:14px;white-space:nowrap}main{max-width:1600px;margin:auto;padding:26px 3vw 0}.heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:21px}.eyebrow{font-size:12px;letter-spacing:.13em;color:#99b4bd;margin-bottom:9px}.lead{color:var(--muted);margin-top:9px;font-size:15px}.dataset-switch{display:flex;background:#111b25;border:1px solid var(--line);border-radius:8px;padding:5px;gap:6px}.dataset-switch button{background:none;min-width:128px;font-size:16px;border-color:transparent}.dataset-switch button.active{background:#1c383c;border-color:#4e817c}.dataset-switch span{font-family:Georgia,serif;font-size:22px;color:var(--gold);margin-right:12px}.data-banner{display:flex;align-items:center;gap:11px;background:#121e27;border:1px solid var(--line);border-radius:6px;padding:10px 14px;font-size:14px;margin-bottom:17px;color:var(--muted);flex-wrap:wrap}.data-banner b{font-weight:500;color:#d0dde2}.dot{width:6px;height:6px;background:var(--accent);border-radius:50%}.data-banner button{margin-left:auto}.viewer-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.viewer{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--panel);min-width:0}.panel-heading{display:flex;justify-content:space-between;align-items:center;padding:15px 17px;border-bottom:1px solid #22303c;gap:8px;flex-wrap:wrap}.panel-heading>div{display:flex;gap:12px;align-items:center}.number{font:14px ui-monospace,monospace;color:#76919b}.badge{border:1px solid #3f474c;padding:4px 8px;border-radius:4px;font-size:12px;color:#e2c591}.badge.green{color:#8fd7c7;border-color:#2e5c56}.canvas-wrap{height:460px;max-height:49vw;position:relative;background:#05090e}.canvas-wrap canvas{display:block;width:100%;height:100%;touch-action:none}.canvas-top,.canvas-bottom{position:absolute;left:17px;right:17px;display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;color:#a9bbc6;pointer-events:none;text-shadow:0 1px 3px #000;line-height:1.5}.canvas-top{top:15px}.canvas-bottom{bottom:13px}.plane-key{color:#8fcabc}.canvas-bottom #selected-label{color:var(--gold)}.viewer-actions{display:flex;gap:7px;align-items:center;padding:10px 13px;min-height:57px;flex-wrap:wrap}.viewer-actions button{font-size:13px;padding:7px 9px}.viewer-actions label,.muted{font-size:13px;color:var(--muted);margin-left:auto}.loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:14px;background:#05090eee;font-size:15px;pointer-events:none}.spinner{width:22px;height:22px;border:2px solid #25494b;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.timeline-card{display:flex;gap:26px;align-items:center;padding:20px;border:1px solid var(--line);border-radius:8px;background:#121d28;margin-top:15px}.transport{display:flex;align-items:center;gap:6px;white-space:nowrap}.transport select{padding:9px 4px}.timeline{flex:1;min-width:140px}.timeline label{display:flex;justify-content:space-between;font-size:14px;color:#c0cdd4}.timeline label b{font-family:ui-monospace,monospace;font-weight:500}.timeline-ticks{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.label-button{color:var(--gold);border-color:#6f5b41}.label-panel{margin-top:12px;padding:17px 20px;border:1px solid #665340;border-radius:8px;background:#1d211f}.label-panel>div:first-child{display:flex;justify-content:space-between;gap:10px}.label-panel span{color:#b9b7ac;font-size:14px}.label-panel p{font-size:14px;color:#c9c4b6;margin-top:10px}.label-panel button{margin:12px 7px 0 0;border-color:var(--leaf-color);color:var(--leaf-color);background:#192125}.label-panel i{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--leaf-color);margin-right:7px}.control-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.control-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:18px 20px}.control-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.control-title button{font-size:13px;padding:6px 10px}.range-label{display:flex;justify-content:space-between;font-size:14px;color:#c2cfd5}.range-label output{color:var(--accent);font-family:ui-monospace,monospace}.two-controls{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:11px}.hint{font-size:13px;color:var(--muted);margin-top:9px;line-height:1.6}.next-step{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:30px;padding:24px 2px;display:flex;justify-content:space-between;align-items:center;gap:22px}.next-step b{font-weight:500}.next-step p{font-size:14px;color:var(--muted);margin-top:5px}footer{display:flex;justify-content:space-between;gap:22px;font-size:12px;color:var(--muted);padding:27px 0;flex-wrap:wrap}footer a{color:#a1b9c0}dialog{color:var(--text);background:#14212e;border:1px solid #475763;border-radius:12px;max-width:640px;padding:32px;line-height:1.8}dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}dialog h2{font-size:24px;margin-bottom:15px}dialog p{margin-top:14px;font-size:15px}dialog ul{padding-left:23px;font-size:14px}.dialog-close{position:absolute;right:14px;top:12px;border:0;background:none;font-size:24px}
.reference-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.reference-tabs button{min-width:120px}.reference-tabs b{color:var(--gold);font-family:Georgia,serif;font-size:18px;margin-right:8px}.reference-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,1fr);gap:25px}.media-card{background:#101923;border:1px solid var(--line);border-radius:8px;overflow:hidden}.media-card h2{padding:15px 18px}.reference-media{display:block;background:#020406;width:100%;max-height:600px;object-fit:contain}.reference-media.diagram{background:#fff;padding:10px}.media-caption{font-size:14px;color:#bac8d2;line-height:1.7;padding:14px 18px}.media-caption a{font-size:13px}.reading-card{padding:23px;background:var(--panel);border:1px solid var(--line);border-radius:8px;align-self:start}.reading-card h2{font-size:21px}.reading-card h3{margin:22px 0 8px;color:#d8e2e7}.reading-card p{font-size:15px;color:#bccbd3;margin-top:12px}.reading-card ul{padding-left:20px;color:#bccbd3;font-size:15px;line-height:1.8}.reading-card .anatomy-key{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.anatomy-key span{padding:5px 9px;border:1px solid #526a70;background:#1b2c34;border-radius:4px;color:#a7e1d3;font:15px ui-monospace,monospace}.sub-section{margin-top:27px}.sub-section>h2{font-size:22px;margin-bottom:15px}.media-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.clinical-note{color:#d9bf99;font-size:14px;border-left:2px solid #88724c;padding-left:12px;margin:17px 0}.view-table{width:100%;border-collapse:collapse;font-size:14px}.view-table th{text-align:left;color:#a6bbc7;font-weight:500;font-size:13px;padding:13px 14px;background:#19242e}.view-table td{padding:14px;border-bottom:1px solid var(--line);line-height:1.6}.view-table tr:hover{background:#13212c}.view-table td:first-child{color:#e0e9ed}.view-table td small{display:block;color:var(--muted);font-size:12px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:8px}.citation{color:var(--muted);font-size:13px;margin-top:12px;line-height:1.8}.empty-figure{padding:32px;min-height:280px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(ellipse at 50% 40%,#233c45,#0c131c 70%);gap:15px}.empty-figure p{max-width:420px;color:#b4c7ce;line-height:1.8;text-align:center}
@media(min-width:1450px){.canvas-wrap{height:500px}}
@media(max-width:1050px){.masthead{gap:18px;flex-wrap:wrap}.edition{display:none}main{padding:22px 20px 0}.timeline-card{gap:15px;flex-wrap:wrap}.label-button{padding:8px}.heading h1{font-size:27px}.dataset-switch button{min-width:100px;padding:8px}.canvas-top,.canvas-bottom{font-size:12px}.reference-layout{grid-template-columns:1.2fr 1fr}.timeline-ticks span:nth-child(2){display:none}}
@media(max-width:740px){.masthead{padding:14px 16px;gap:12px}.brand{font-size:23px}nav{width:100%;overflow:auto;gap:2px}nav button,nav a{font-size:13px;padding:9px 10px}main{padding:22px 13px 0}.heading{display:block;margin-bottom:17px}h1,.heading h1{font-size:26px}.lead{font-size:14px}.dataset-switch{margin-top:18px;width:max-content}.dataset-switch button{font-size:15px;min-width:122px}.data-banner{font-size:13px;padding:11px;gap:8px}.data-banner>span:nth-of-type(2){width:100%;order:4}.data-banner button{font-size:13px}.viewer-grid,.control-grid,.reference-layout,.media-grid{grid-template-columns:1fr;gap:14px}.canvas-wrap{max-height:none;height:390px}.panel-heading{padding:12px}.panel-heading h2{font-size:16px}.badge{font-size:11px}.timeline-card{padding:14px;gap:15px}.timeline{flex-basis:100%;order:2}.transport{flex:1}.label-button{font-size:13px}.label-panel>div:first-child{flex-direction:column;gap:5px}.control-card{padding:17px}.next-step{display:block}.next-step button{margin-top:15px}.reference-tabs{gap:6px}.reference-tabs button{min-width:0;font-size:14px}.reading-card{padding:20px}.view-table{min-width:660px}footer{font-size:12px;gap:12px;padding:24px 0}.eyebrow{font-size:10px}.canvas-bottom{font-size:11px}.reference-media{max-height:480px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}.spinner{animation:none}}

.volume-key{position:absolute;top:51px;left:17px;right:17px;display:flex;gap:7px;flex-wrap:wrap;pointer-events:none}.volume-key button{padding:6px 9px;font-size:14px;color:var(--leaf-color);border-color:var(--leaf-color);background:#0c171ddd;pointer-events:auto}.volume-key i{display:inline-block;width:7px;height:7px;background:var(--leaf-color);border-radius:50%;margin-right:6px}.canvas-top,.canvas-bottom{font-size:14px}.badge{font-size:14px}.viewer-actions button,.viewer-actions label,.muted,.control-title button,.hint,.citation{font-size:14px}.lead{font-size:16px}.reading-card p,.reading-card ul{font-size:16px}@media(max-width:740px){.canvas-top,.canvas-bottom{font-size:12px}.badge{font-size:12px}.viewer-actions button,.viewer-actions label{font-size:13px}.lead{font-size:15px}}
