/* v174 — neutral, task-oriented engineering workspace. */
:root{color-scheme:dark;--bg:#1d2329;--panel:#15191d;--text:#e0e5ea;--muted:#a9b3bd;--cyan:#285e91;--line:#394149;--orange:#9a571a}
body{background:var(--bg);color:var(--text);font-family:'Yu Gothic UI','Meiryo',system-ui,sans-serif;font-size:13px;padding-bottom:32px}
button,input,select{font:inherit}button{color:#e0e5ea;background:#15191d;border-color:#394149;border-radius:4px;box-shadow:none;transition:background 100ms,color 100ms}button:hover{background:#1d2329;border-color:#394149}button:active{transform:none}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #285e91;outline-offset:2px}
button.primary{background:#315f87;border-color:#315f87;color:white;box-shadow:none}button.primary:hover{background:#254b6c}
header{height:52px;min-height:52px;padding:0 18px;background:#15191d;border-bottom:1px solid #394149;gap:12px}
.brand{font-size:18px;font-weight:650;letter-spacing:0;color:#e0e5ea;white-space:nowrap}.brand b,.brand span{color:inherit;font-weight:inherit;font-size:inherit}
header nav{gap:2px}header button.nav{font-size:12px;font-weight:500;padding:0 12px;color:#e0e5ea}header button.nav:hover{background:#1d2329}header .nav span{color:inherit}
main{gap:8px;padding:8px 10px 0;height:max(580px,calc(100dvh - 220px))}
main>aside,main>.stage{border:1px solid #394149;border-radius:3px;box-shadow:none}main>aside{background:#15191d}
.layer-header{padding:12px 10px 9px;border-bottom:1px solid #394149}.layer-titlebar{margin-bottom:10px}.layer-titlebar h2{font-size:14px;font-weight:650;color:#e0e5ea}
.window-controls button{color:#e0e5ea!important;background:transparent;border:1px solid transparent;border-radius:3px}.window-controls button:hover{background:#1d2329;border-color:#394149}
#classificationOpen .hub,#panelReopen .hub{fill:#f6f7f8}#panelReopen{background:#15191d;color:#e0e5ea;border-color:#394149;box-shadow:none}
.layer-actions button{font-size:11px;color:#e0e5ea}.layer-actions #restore{color:#e0e5ea;border-color:#394149}.layer-batch{background:none;border:0;border-top:1px solid #394149;border-radius:0;margin-top:10px;padding:8px 0 0}.batch-caption{color:#a9b3bd;font-size:11px}.batch-actions button{font-size:12px}.layer-batch button{border-radius:3px}
.layer-legend{color:#a9b3bd;gap:9px;flex-wrap:wrap;font-size:10px}.legend-normal,.legend-transparent,.legend-hidden{color:#a9b3bd}#layerSummary{color:#a9b3bd;font-size:10px}
.layer-heading-scroll{background:#15191d;border-color:#394149}#partList .layer-columns{background:#15191d;color:#e0e5ea;font-size:11px}
.layer-rows-scroll{scrollbar-color:#b1bac2 transparent}#partList .layer-row{border-radius:2px;min-height:36px}#partList .layer-row:hover{background:#15191d}#partList .layer-row.selected{background:#1d2329;border-color:transparent}
#partList .layer-name{color:#e0e5ea;font-weight:400}#partList .layer-expand{color:#a9b3bd}#partList .layer-row .layer-name{font-size:12px}.layer-count{color:#a9b3bd}
.layer-state.normal{color:#e0e5ea}.layer-state.transparent,.layer-state.section{color:#a9b3bd}.layer-state.hidden{color:#a9b3bd}.layer-state.mixed{color:#e0e5ea}
#partList .layer-modes button{color:#a9b3bd}#partList .layer-modes button:hover{color:#e0e5ea;background:#1d2329;border-color:#394149}
#partList .layer-modes button[aria-pressed=true],#partList .layer-modes button[data-layer-mode=transparent][aria-pressed=true],#partList .layer-modes button[data-layer-mode=hidden][aria-pressed=true]{color:#e0e5ea;background:#1d2329;border-color:#394149;border-radius:3px}
.layer-check{accent-color:#386789}.layer-bottom{background:#15191d;padding:9px 10px;border-color:#394149}.layer-bottom .toggle{color:#e0e5ea}.switch{background:#39434c;box-shadow:none}.switch:after{background:#15191d}input:checked+.switch,input:checked~.switch{background:#496e8c}
.aside-footer{background:#15191d;border-color:#394149;color:#a9b3bd;padding:8px 10px;font-size:10px}.aside-footer button{color:#e0e5ea;background:none;font-size:10px}
#panelResize:before{background:#a1aab2}#panelResize:hover:before{background:#496e8c}
main>.stage{background:#343b40}.viewer-header{background:#15191d;border-bottom:1px solid #394149;padding:10px 12px!important;column-gap:14px;row-gap:8px;align-items:center}
.viewer-header .stage-heading{color:#e0e5ea}.viewer-header .eyebrow{letter-spacing:0;font-size:11px;color:#a9b3bd;font-weight:400}.viewer-header .stage-heading h1{font-size:15px;font-weight:600;gap:6px}.viewer-header #chapterNumber{font-size:12px;font-weight:500;line-height:1.2;color:#a9b3bd;border-right:1px solid #394149;padding-right:7px}.viewer-header .status{color:#a9b3bd;font-size:10px}.status-dot{width:5px;height:5px;background:#7b858d;box-shadow:none}.separator{color:#a9b3bd}
.viewer-header .header-selection{background:none!important;box-shadow:none!important;border:0!important;border-left:1px solid #394149!important;border-radius:0!important;padding:4px 12px!important;gap:4px!important;min-width:140px;max-width:340px;flex:1 1 160px!important}.viewer-header .header-selection>span{font-size:10px;letter-spacing:0;color:#a9b3bd}.viewer-header .header-selection #partTitle{color:#e0e5ea;font-size:13px;line-height:1.5;font-weight:500;letter-spacing:0}
.viewer-controls{flex-basis:345px;gap:7px}.segmented{border-color:#394149;border-radius:4px;background:#1d2329;backdrop-filter:none;padding:2px;gap:1px}.segmented button{color:#e0e5ea;border-radius:2px;font-size:12px}.segmented button.active{color:#e0e5ea;background:#15191d;box-shadow:0 0 0 1px #bac5cd}
.viewer-header .viewbar button{font-size:11px;min-height:29px;padding:4px 8px}.glass{background:#15191d;border-color:#394149;color:#e0e5ea;border-radius:4px}#soilToggle[aria-pressed=true]{background:#1d2329;color:#e0e5ea;border-color:#394149}
.viewer-header .viewer-transport .viewport-play{border-radius:3px;background:#15191d;border-color:#394149;color:#e0e5ea;box-shadow:none}.viewer-header .viewport-play:hover,.viewer-header .viewport-play.playing{background:#1d2329;color:#e0e5ea;box-shadow:none}
#viewportTime{color:#a9b3bd}#viewportSeek{background:linear-gradient(to right,#597d99 var(--progress,0%),#39434c var(--progress,0%));accent-color:#597d99}#viewportSeek::-webkit-slider-thumb{background:#466e8d}#viewportSeek::-moz-range-thumb{background:#466e8d}
#copyControls{background:#15191d;border-color:#394149;border-radius:3px;padding:7px}.copy-caption{color:#e0e5ea;font-size:11px}.copy-caption output{color:#e0e5ea}.copy-caption span,#copyControls small{color:#a9b3bd}.copy-actions input{accent-color:#496e8c}
.stage .canvas-bottom{background:#15191d!important;border-top:1px solid #394149;padding:6px 10px;gap:8px}.stage #gestureHint{color:#a9b3bd;font-size:10px}.orientation{display:none}.toolbox button{font-size:11px}.toolbox .zoom button{color:#e0e5ea}
.viewer-messages{gap:0;margin:0 10px}.viewer-messages #selectionTag{display:none!important}.viewer-messages #soilNotice,.viewer-messages #highlightNotice,.viewer-messages #chamberNotice,.viewer-messages .view-note{background:none!important;border:0!important;border-radius:0!important;color:#a9b3bd;padding:5px 3px;font-size:11px;line-height:1.5}
body>.selection-details{background:#15191d;border:1px solid #394149;border-radius:3px;margin:4px 10px 0;box-shadow:none}body>.selection-details>summary{font-size:12px;padding:9px 12px;color:#e0e5ea}body>.selection-details .part-info{padding:4px 12px 12px;gap:7px 18px}body>.selection-details .part-info p{font-size:12px;color:#e0e5ea;line-height:1.7}.look-for{border-left:1px solid #394149;color:#a9b3bd}.part-meta{font-size:10px;color:#a9b3bd}.locate-actions button{font-size:11px}.selection-details #focus{background:#15191d;color:#e0e5ea;border-color:#394149}
.playback{background:#15191d;border-top:1px solid #394149;padding:12px 16px;margin-top:8px;min-height:100px!important;gap:16px}.transport button{min-height:32px;border-radius:4px;font-size:12px}.transport select{background:#15191d;color:#e0e5ea;border:1px solid #394149;border-radius:4px;font-size:12px}.timeline-top{color:#a9b3bd;font-size:11px}#seek{accent-color:#557b97}#chapters{padding-bottom:0;gap:4px}#chapters button{color:#a9b3bd;background:none;border:0;border-radius:2px;font-size:11px;min-height:28px}#chapters button.active{background:#1d2329;color:#e0e5ea}
#bearingGuide{background:#15191d!important;color:#e0e5ea;border:1px solid #394149!important;border-radius:3px!important;margin:8px 10px!important;font-size:12px}#bearingGuide p{line-height:1.7}#bearingGuide small{color:#a9b3bd}
dialog{color:#e0e5ea;background:#15191d;border-color:#394149;border-radius:6px;padding:26px;box-shadow:0 12px 42px #0003}dialog::backdrop{background:#17232d70;backdrop-filter:none}dialog h2,#classification h2{font-size:20px;line-height:1.5;letter-spacing:0;margin:10px 0 16px}dialog p,dialog dd,#classification ul{color:#e0e5ea;font-size:13px;line-height:1.7}dialog dt,#classification h3{color:#e0e5ea;font-weight:600}dialog a,#classification a{color:#e0e5ea}.dialog-close{display:inline-flex;align-items:center;justify-content:center;gap:6px}dialog>.dialog-close:first-child{color:#a9b3bd;width:32px;height:32px;min-height:32px;padding:0}.eyebrow{letter-spacing:0;color:#a9b3bd}
#shellText,.ink-rgb input,#shellInk{background:#15191d;color:#e0e5ea;border-color:#394149;border-radius:3px}#shellSizeValue{color:#e0e5ea}#shellLabelForm p,#shellLabelForm small{color:#a9b3bd}#shellSize{accent-color:#557b97}.ink-swatches button[aria-pressed=true]{outline-color:#355e7b}
#loading{background:#15191d;color:#e0e5ea}#loading small{color:#a9b3bd}.loader{border-color:#394149;border-top-color:#4f708a}#toast{background:#15191d;color:#e0e5ea;border:1px solid #394149;border-radius:3px;box-shadow:none;font-size:12px}
.ui-icon{width:16px;height:16px;flex:none;display:inline-block;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;vertical-align:middle}button:has(.ui-icon){align-items:center;justify-content:center;gap:5px}button.nav:has(.ui-icon),.viewbar button:has(.ui-icon),.toolbox button:has(.ui-icon),.transport button:has(.ui-icon){display:inline-flex}.window-controls button svg{color:inherit}.cutterhead-icon{color:inherit}
@media(max-width:1100px){.viewer-controls{flex:1 1 330px}.viewer-header .header-selection{max-width:none}.viewer-header .header-selection #partTitle{font-size:13px}}
@media(max-width:700px){header{height:auto;min-height:48px;padding:8px 10px;flex-wrap:wrap;gap:4px}.brand{font-size:16px}header nav{margin-left:auto}header button.nav{padding:4px 8px;min-height:32px;font-size:11px}main{padding:8px;gap:8px}.viewer-header{gap:8px;padding:10px!important}.viewer-controls{flex:0 0 auto;width:100%}.viewer-header .header-selection{flex:0 0 auto!important;border-left:0!important;border-top:1px solid #394149!important;padding:7px 0 0!important;width:100%}.viewer-header .viewbar{gap:4px}.viewer-header .viewer-transport .viewport-play{min-width:36px}.layer-header{padding:10px}.viewer-messages{margin:0 8px}body>.selection-details{margin:4px 8px 0}.playback{padding:12px;gap:10px}.transport{justify-content:flex-start}.layer-legend{gap:7px}main.layers-hidden .viewer-header{padding-left:54px!important}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
/* Keep controls in document flow on narrow screens; the viewer has its own transport. */
.viewer-header .stage-heading #chapterNumber{font-size:15px!important;font-weight:500}
.toggle .switch:after{background:#15191d!important}.toggle input:checked~.switch{background:#496e8c!important}
.playback{position:static!important}
@media(max-width:700px){main{height:auto!important;min-height:0;flex:none}body{height:auto;min-height:100dvh}.playback{margin-bottom:20px}}
.selection-details #focus{display:inline-flex!important;justify-content:center;align-items:center;gap:6px}

/* v175: black workspace and generated transparent brand emblem. */
:root{--bg:#0b0d10;--panel:#15191d;--text:#e0e5ea;--muted:#a9b3bd;--line:#394149}
body,main>.stage{background:#0b0d10}.brand{display:inline-flex;align-items:center;gap:10px;color:#eef1f4}.brand-icon{width:38px;height:38px;object-fit:contain;flex:none}.brand span{color:inherit}.toggle .switch:after{background:#fff!important}.viewer-header .header-selection #partTitle{color:#eef1f4}.layer-state.normal{color:#afc7b9}.layer-state.mixed{color:#d6ba89}.layer-state.hidden{color:#a5acb3}.layer-state.transparent,.layer-state.section{color:#a5bed3}.viewer-header .header-selection{border-left-color:#394149!important}.viewer-messages #soilNotice,.viewer-messages #highlightNotice,.viewer-messages #chamberNotice,.viewer-messages .view-note{color:#a9b3bd}.viewer-header #chapterNumber{color:#a9b3bd}.selection-details #focus{color:#d4e1ec}.ui-icon{color:inherit}@media(max-width:700px){.brand-icon{width:30px;height:30px}.brand{gap:7px}}

/* v176: approved flat emblem; original raster preserved. */
.brand-mark{display:block;position:relative;width:38px;height:38px;overflow:hidden;flex:none;isolation:isolate;border-radius:50%;background:#15191d}.brand-mark .brand-icon{position:absolute;width:72px;height:72px;max-width:none;left:50%;top:50%;transform:translate(-50%,-50%);mix-blend-mode:screen;object-fit:contain}@media(max-width:700px){.brand-mark{width:30px;height:30px}.brand-mark .brand-icon{width:57px;height:57px}}
