:root{font-family:Arial,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#eaf2f8;background:#101b26;font-size:16px;--orange:#ff974d;--muted:#94a7b7;--border:#ffffff19}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;touch-action:manipulation}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid var(--orange);outline-offset:4px}button:disabled{opacity:.4;cursor:default}p,h1,h2,h3{margin:0}button,a{-webkit-tap-highlight-color:transparent}[hidden]{display:none!important}.viewer-header{height:76px;padding:0 34px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border);gap:24px}.wordmark{font-weight:700;letter-spacing:-1px;font-size:28px;display:flex;gap:8px;align-items:baseline}.wordmark>b{font-weight:400}.wordmark>span{font-size:12px;font-weight:500;letter-spacing:.12em;margin-left:18px;color:#9cb6ca}.back{font-size:14px;color:#bbcad5}.back:hover{color:var(--orange)}.explorer{display:grid;grid-template-columns:minmax(0,1fr) 310px;min-height:calc(100dvh - 76px)}.stage{position:sticky;top:0;height:calc(100dvh - 76px);min-height:560px;overflow:hidden;background:radial-gradient(ellipse at 48% 53%,#293d4d,#162431 53%,#101b26);isolation:isolate}.stage canvas{width:100%;height:100%;display:block;position:absolute;inset:0;cursor:grab;touch-action:none;outline-offset:-5px!important}.stage canvas:active{cursor:grabbing}.stage-title{position:absolute;z-index:2;top:34px;left:40px;pointer-events:none}.stage-title>p{font-size:12px;letter-spacing:.12em;color:#a7bed0}.stage-title h1{font-size:clamp(25px,3.1vw,46px);font-weight:600;line-height:1.55;letter-spacing:-.04em;margin-top:14px}.view-label{position:absolute;right:28px;top:38px;color:#a5bdcf;font-size:12px;letter-spacing:.03em;z-index:2;pointer-events:none}.stage-tools{position:absolute;right:24px;bottom:105px;display:flex;flex-direction:column;gap:9px;z-index:3}.stage-tools button{width:45px;height:45px;display:grid;place-items:center;border:1px solid #ffffff30;border-radius:50%;background:#101b26b8;font:25px Arial;backdrop-filter:blur(10px)}.stage-tools button:hover{background:#365064}.gesture-help{position:absolute;bottom:62px;left:30px;right:85px;z-index:2;display:flex;gap:25px;justify-content:center;color:#c0ced9;font-size:13px;pointer-events:none;transition:opacity .3s}.gesture-help.interacted{opacity:.42}.model-note{position:absolute;bottom:22px;left:30px;right:30px;color:#8ea5b7;font-size:12px;line-height:1.7;text-align:center;pointer-events:none;z-index:2}.control-panel{background:#142330;border-left:1px solid var(--border);padding:34px 25px 30px;min-width:0;overflow-y:auto;max-height:calc(100dvh - 76px);scrollbar-width:thin;scrollbar-color:#3d5364 transparent}.panel-title{margin-bottom:30px}.panel-kicker{color:#93b5ce;font-size:12px;letter-spacing:.11em}.panel-title h2{font-size:24px;line-height:1.6;letter-spacing:-.04em;margin-top:14px}.control-group{padding:23px 0;border-top:1px solid var(--border)}.control-group h3{font-size:14px;font-weight:500;margin-bottom:19px}.color-controls{display:flex;justify-content:space-between;gap:12px}.color-controls button{display:flex;flex-direction:column;align-items:center;gap:14px;font-size:12px;padding:5px;min-width:55px}.color-controls i{display:block;width:30px;height:30px;border-radius:50%;background:var(--color);outline:1px solid #ffffff4d;outline-offset:5px}.color-controls button.selected i{outline:2px solid var(--orange)}.color-controls button.selected span{color:var(--orange)}.view-controls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.view-controls button{border:1px solid #ffffff28;border-radius:4px;min-height:43px;font-size:14px;background:#192e3d}.view-controls button.selected{background:#dcedfa;color:#152838;border-color:#dcedfa}.view-controls button:hover:not(.selected){border-color:#91b2cb}.display-options{display:flex;flex-direction:column;gap:19px}.switch-row{display:flex;align-items:center;justify-content:space-between;min-height:27px;gap:15px;text-align:left;padding:0;font-size:14px}.switch{height:22px;width:39px;border-radius:20px;background:#466073;display:block;position:relative;flex:none;transition:background .2s}.switch::after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#e7f0f5;transition:transform .2s}.switch-row[aria-pressed=true] .switch{background:var(--orange)}.switch-row[aria-pressed=true] .switch::after{transform:translateX(17px);background:#18232c}.reset-button{width:100%;padding:13px 8px;min-height:46px;border:1px solid #ffffff38;border-radius:4px;font-size:14px;margin-bottom:25px}.reset-button:hover{background:#294152}.drawing-info{border-top:1px solid var(--border);padding-top:22px;color:#a5b8c7}.drawing-info>p:first-child{font-size:12px}.drawing-info dl{margin:15px 0;display:grid;gap:10px;font-size:13px}.drawing-info dl>div{display:flex;justify-content:space-between;gap:20px}.drawing-info dd{margin:0;color:#dbe9f4}.drawing-note{font-size:12px;line-height:1.85;margin:0 0 18px}.drawing-info>a{display:flex;align-items:center;justify-content:space-between;font-size:12px;margin-top:15px;color:#dae6ee}.drawing-info>a:hover{color:var(--orange)}.drawing-info small{font-size:12px;color:#8199aa}.dimension-labels{position:absolute;inset:0;pointer-events:none;z-index:3}.dimension-labels>span{position:absolute;left:0;top:0;transform:translate(-50%,-50%);background:#0b1e2dd9;color:#ffb881;border:1px solid #b8895855;padding:5px 10px;border-radius:4px;font-size:13px;white-space:nowrap}.load-state{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;background:#13222df0;z-index:5;padding:30px;text-align:center}.loader{width:40px;height:40px;border:2px solid #ffffff25;border-top-color:var(--orange);border-radius:50%;animation:spin 1s linear infinite}.load-state strong{font-weight:500;font-size:16px}.load-state p{font-size:14px;color:#91adbf}.error-state{position:absolute;inset:0;display:flex;flex-wrap:wrap;align-content:center;justify-content:center;gap:15px;padding:30px;z-index:6;background:#172733}.error-state img{width:min(550px,85%);height:60%;object-fit:contain}.error-state p{width:100%;text-align:center;font-size:14px;line-height:1.7}.error-state button,.error-state a{font-size:14px;border:1px solid #718c9f;border-radius:4px;padding:10px 18px;min-height:44px}.stage:fullscreen{width:100vw;height:100dvh;min-height:0}.stage:fullscreen .stage-title{top:35px;left:40px}.stage:fullscreen canvas{height:100%;width:100%}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:1100px){.explorer{grid-template-columns:minmax(0,1fr) 275px}.viewer-header{padding:0 24px}.control-panel{padding:28px 20px}.stage-title{left:25px;top:26px}.stage-title>p{font-size:12px}.stage-title h1{font-size:30px}.view-label{right:20px;top:29px;font-size:12px}.gesture-help{font-size:12px;gap:15px;left:20px;right:70px}.stage-tools{right:18px}.model-note{left:20px;right:20px}.panel-title h2{font-size:22px}}
@media(max-width:760px){.viewer-header{height:64px;padding:0 20px}.wordmark{font-size:24px;gap:6px}.wordmark>span{font-size:12px;margin-left:9px;letter-spacing:.08em}.back{font-size:12px}.explorer{display:flex;flex-direction:column;min-height:0}.stage{position:relative;top:auto;width:100%;height:66dvh;min-height:460px;max-height:700px}.stage-title{left:22px;top:23px}.stage-title>p{font-size:12px;letter-spacing:.08em}.stage-title h1{font-size:29px;line-height:1.45;margin-top:10px}.view-label{top:27px;right:20px;max-width:8em;line-height:1.6;text-align:right}.stage-tools{right:15px;bottom:99px;gap:8px}.stage-tools button{width:40px;height:40px;font-size:23px}.gesture-help{left:20px;right:20px;bottom:56px;gap:14px;font-size:12px;justify-content:center}.model-note{font-size:12px;left:20px;right:20px;bottom:17px;line-height:1.65}.control-panel{max-height:none;overflow:visible;border-left:0;border-top:1px solid var(--border);padding:24px 22px 30px;display:grid;grid-template-columns:1fr 1fr;column-gap:24px}.panel-title{display:none}.control-group{padding:0 0 22px;border:0}.control-group h3{font-size:13px;margin-bottom:17px}.color-controls{gap:9px;justify-content:flex-start}.color-controls button{font-size:12px;gap:13px;min-width:0;padding:5px 2px}.color-controls i{width:26px;height:26px}.view-controls{gap:6px}.view-controls button{min-height:38px;font-size:12px}.display-options{grid-column:1/-1;border-top:1px solid var(--border);padding:21px 0;display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}.switch-row{font-size:13px;min-height:28px}.reset-button{grid-column:1/-1;margin-bottom:24px}.drawing-info{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.drawing-info>p:first-child,.drawing-note{grid-column:1/-1}.drawing-info dl{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px}.drawing-info dl>div{flex-direction:column;gap:8px}.drawing-info>a{line-height:1.6;gap:10px}.dimension-labels>span{font-size:12px;padding:4px 7px}.load-state p{font-size:13px}}
@media(max-width:380px){.viewer-header{padding-inline:16px}.wordmark>span{font-size:12px;margin-left:4px}.back{font-size:12px}.control-panel{padding-inline:18px;column-gap:17px}.color-controls{gap:8px}.color-controls i{width:22px;height:22px}.color-controls button{font-size:12px}.switch-row{font-size:12px}.switch{width:35px;height:21px}.switch::after{width:15px;height:15px}.switch-row[aria-pressed=true] .switch::after{transform:translateX(14px)}.gesture-help{font-size:12px;gap:10px}.view-label{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Embed preserves the same complete controls without nesting another header. */
body.embedded .viewer-header{display:none}body.embedded .explorer{min-height:0}body.embedded .stage{height:760px}body.embedded .control-panel{max-height:760px}@media(max-width:760px){body.embedded .stage{height:480px;min-height:440px}body.embedded .control-panel{max-height:none}}

/* Photo references share the selected paint; cockpit preset exposes the supplied LCD detail. */
.view-controls .meter-view{grid-column:1/-1}.photo-reference{margin-top:24px;border-top:1px solid var(--border);padding-top:17px;font-size:13px;line-height:1.7}.photo-reference summary{cursor:pointer;color:#c4d6e3}.photo-reference a{display:block}.photo-reference img{display:block;width:100%;height:170px;object-fit:contain;margin:14px 0 7px;background:#e4e9eb;border-radius:4px}.photo-reference a>span{font-size:12px;color:#a9c0d1}.photo-reference summary:focus-visible{outline:2px solid var(--orange);outline-offset:4px}@media(max-width:760px){.photo-reference img{height:125px}.color-controls{gap:10px}.color-controls button{font-size:12px}.display-options{grid-template-columns:1fr}.stage-title h1{font-size:25px}.stage-title>p{display:none}.stage-title{top:19px}}

.color-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.color-controls button{min-width:0}.color-controls span{line-height:1.6;overflow-wrap:anywhere}@media(max-width:760px){.control-panel{grid-template-columns:1fr}.control-group{grid-column:1/-1}.color-controls{max-width:350px;gap:20px}.color-controls button{font-size:14px}.view-controls button{font-size:14px;min-height:44px}.switch-row{font-size:14px;min-height:34px}.photo-reference img{height:190px}}

/* A single 3D scene follows the editorial product story. Full explorer is unchanged. */
html.showcase,body.showcase{background:transparent;color:#17242a;height:100%;overflow:hidden}
body.showcase .viewer-header,body.showcase .control-panel,body.showcase .stage-title,body.showcase .view-label,body.showcase .gesture-help,body.showcase .model-note,body.showcase .stage-tools{display:none}
body.showcase .explorer{display:block;height:100%;min-height:0}
body.showcase .stage{position:relative;top:0;height:100%;min-height:0;max-height:none;width:100%;background:transparent}
body.showcase .stage canvas{pointer-events:none}
body.showcase.interactive .stage canvas{pointer-events:auto}
body.showcase .load-state{background:transparent;color:#1b2d35}
body.showcase .load-state p{color:#596e7a}
body.showcase .loader{border-color:#17242a22;border-top-color:#d57532}
body.showcase .error-state{background:#eaf0f3;color:#17242a}

.model-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:35px;filter:drop-shadow(0 22px 16px #06142133);pointer-events:none}.load-state{background:transparent;justify-content:flex-end;padding-bottom:45px;gap:10px}.load-state p{background:#13222dd9;padding:5px 12px;border-radius:20px}.load-state strong{background:#13222de6;padding:8px 15px;border-radius:20px}.showcase .load-state strong,.showcase .load-state p{background:#eef2f2e6}.variant-note{font-size:12px;line-height:1.7;color:#a5bdcf;margin:18px 0}.stage-title h1{font-size:22px}.stage-title>p{display:none}

/* Keep Japanese colour names on one line in the narrow desktop panel. */
.color-controls button span{white-space:nowrap;font-size:11px}
