/* Shared controls for the three tool workbenches; the reading shell is separate. */
.tool-reader .tool-console {
  --console-panel:#faf9f6; --console-view:#eae9e5; --console-line:#d7d6d1;
  --console-ink:#3c3f3b; --console-muted:#73766f; --console-selected:#494b47;
  --console-selected-ink:#fff; --console-field:#fff; --console-track:#deded8;
  --console-hover:#eeede8; --console-focus:#6c756a; --console-inspector-width:30%;
  border:1px solid var(--console-line); border-radius:12px; overflow:hidden;
  background:var(--console-panel); color:var(--console-ink); font-size:14px;
  font-weight:400; line-height:1.5; letter-spacing:0;
}
.tool-reader[data-detail-mode="study"] .tool-console {
  --console-panel:#343630; --console-view:#292b27; --console-line:#50534c;
  --console-ink:#eeeee8; --console-muted:#b4b7ad; --console-selected:#d9ddd3;
  --console-selected-ink:#30332d; --console-field:#2d302a; --console-track:#56594f;
  --console-hover:#41443c; --console-focus:#c7cebc;
}
.tool-console .console-header { display:flex; align-items:center; gap:16px; min-height:64px; box-sizing:border-box; padding:16px 24px; border-bottom:1px solid var(--console-line); background:var(--console-panel); }
.tool-console .console-title { margin:0; color:var(--console-ink); font:inherit; font-size:16px; font-weight:400; line-height:1.5; }
.tool-console .console-header > [data-console-fullscreen] { margin-left:auto; }
.tool-console .console-workspace { display:grid; grid-template-columns:minmax(0,1fr) minmax(272px,var(--console-inspector-width)); align-items:stretch; }
.tool-console .console-inspector { min-width:0; box-sizing:border-box; padding:24px; border-left:1px solid var(--console-line); background:var(--console-panel); }
.tool-console :is(.console-segments,.console-modes) { display:inline-flex; min-width:0; align-items:stretch; border:1px solid var(--console-line); border-radius:11px; background:var(--console-panel); overflow:hidden; gap:0; padding:0; }
.tool-console .console-segments { width:100%; }
  .tool-reader .tool-console :is(.console-segments,.console-modes) > button { flex:1 1 0; min-width:0; min-height:36px; box-sizing:border-box; border:0; border-radius:0; padding:7px 11px; background:transparent; color:var(--console-muted); font:inherit; font-size:13px; line-height:20px; font-weight:400; white-space:nowrap; cursor:pointer; transition:background-color var(--motion-duration-state,180ms) var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1)),color var(--motion-duration-state,180ms) var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1)); }
.tool-reader .tool-console :is(.console-segments,.console-modes) > button + button { border-left:1px solid var(--console-line); }
.tool-reader .tool-console :is(.console-segments,.console-modes) > button:hover:not(:disabled,[aria-selected="true"],[aria-pressed="true"]) { background:var(--console-hover); color:var(--console-ink); }
.tool-reader .tool-console :is(.console-segments,.console-modes) > button:is([aria-selected="true"],[aria-pressed="true"]) { border-radius:10px; background:var(--console-selected); color:var(--console-selected-ink); }
.tool-console .console-modes { width:auto; }
.tool-reader .tool-console .console-modes > button { flex:0 0 auto; min-width:50px; }
.tool-console .console-section-heading { display:flex; align-items:center; gap:12px; min-height:32px; margin:0 0 20px; color:var(--console-muted); font-size:13px; font-weight:400; }
.tool-console .console-section-heading::after { content:""; height:1px; flex:1; background:var(--console-line); }
.tool-console .console-section-heading > .console-icon-button { order:1; }
.tool-console .console-control { display:block; min-width:0; margin:0 0 22px; color:var(--console-ink); font-size:14px; line-height:20px; font-weight:400; }
.tool-console .console-control-row { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:36px; margin-bottom:8px; color:var(--console-ink); }
.tool-console .console-field { display:inline-flex; flex:none; align-items:center; gap:8px; min-width:104px; color:var(--console-muted); font-size:12px; font-weight:400; }
.tool-console input.console-number { box-sizing:border-box; min-width:0; width:76px; height:36px; padding:5px 8px; border:1px solid var(--console-line); border-radius:6px; background:var(--console-field); color:var(--console-ink); font:inherit; font-size:14px; line-height:24px; font-weight:400; text-align:center; font-variant-numeric:tabular-nums; appearance:textfield; }
.tool-console input.console-number::-webkit-inner-spin-button,.tool-console input.console-number::-webkit-outer-spin-button { margin:0; -webkit-appearance:none; }
.tool-console .console-unit { min-width:20px; color:var(--console-muted); font-size:12px; font-weight:400; }
.tool-console input.console-range[type="range"] { display:block; box-sizing:border-box; width:100%; height:24px; margin:0; padding:0; border:0; border-radius:0; appearance:none; -webkit-appearance:none; color:var(--console-selected); cursor:pointer; background:linear-gradient(to right,var(--console-selected) 0 var(--console-progress,50%),var(--console-track) var(--console-progress,50%) 100%) center / 100% 4px no-repeat; }
.tool-console input.console-range[type="range"]::-webkit-slider-runnable-track { height:4px; border:0; border-radius:3px; background:transparent; }
.tool-console input.console-range[type="range"]::-webkit-slider-thumb { width:16px; height:16px; margin-top:-6px; appearance:none; -webkit-appearance:none; border:1px solid var(--console-panel); border-radius:50%; background:var(--console-selected); }
.tool-console input.console-range[type="range"]::-moz-range-track { height:4px; border:0; border-radius:3px; background:var(--console-track); }
.tool-console input.console-range[type="range"]::-moz-range-progress { height:4px; border-radius:3px; background:var(--console-selected); }
.tool-console input.console-range[type="range"]::-moz-range-thumb { width:16px; height:16px; border:1px solid var(--console-panel); border-radius:50%; background:var(--console-selected); }
.tool-console select.console-select { box-sizing:border-box; width:100%; min-width:0; min-height:36px; padding:6px 28px 6px 12px; border:1px solid var(--console-line); border-radius:6px; background-color:var(--console-field); color:var(--console-ink); font:inherit; font-size:14px; cursor:pointer; }
.tool-console .console-icon-button { display:inline-flex; flex:none; align-items:center; justify-content:center; width:34px; height:34px; min-height:34px; padding:7px; border:1px solid transparent; border-radius:7px; background:transparent; color:var(--console-muted); cursor:pointer; transition:background-color var(--motion-duration-feedback,120ms) var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1)),border-color var(--motion-duration-feedback,120ms) var(--motion-ease-standard,cubic-bezier(.2,.7,.2,1)); }
.tool-console .console-icon-button:hover:not(:disabled) { border-color:var(--console-line); background:var(--console-hover); }
.tool-console .console-icon { display:block; width:20px; height:20px; opacity:.68; }
.tool-reader[data-detail-mode="study"] .tool-console .console-icon { filter:invert(1); }
.tool-console :is(button,input,select,summary):focus-visible { outline:2px solid var(--console-focus); outline-offset:3px; }
.tool-reader .tool-console :is(.console-segments,.console-modes) > button:focus-visible { outline-offset:-3px; }
.tool-console :is(button,input,select):disabled { opacity:.45; cursor:default; transition:none; }
.tool-console .console-disclosure { margin-top:16px; padding-top:16px; border-top:1px solid var(--console-line); }
.tool-console .console-disclosure > summary { min-height:36px; padding:6px 0; color:var(--console-muted); font-size:13px; cursor:pointer; }
.tool-console .console-disclosure > summary::marker { color:var(--console-muted); }
.tool-console:fullscreen { display:flex; flex-direction:column; width:100%; height:100%; max-width:none; box-sizing:border-box; border:0; border-radius:0; overflow:auto; }
.tool-console:fullscreen > .console-workspace { flex:1; }
.tool-console [hidden] { display:none !important; }
@media(max-width:1050px) {
  .tool-console .console-workspace { grid-template-columns:minmax(0,1fr); }
  .tool-console .console-inspector { border-left:0; border-top:1px solid var(--console-line); }
}
@media(max-width:600px) {
  .tool-console .console-header { min-height:58px; padding:14px 16px; }
  .tool-console .console-inspector { padding:18px 16px; }
  .tool-reader .tool-console :is(.console-segments,.console-modes) > button { min-height:40px; padding-inline:8px; font-size:12px; }
  .tool-console .console-control { margin-bottom:16px; font-size:13px; }
  .tool-console .console-control-row { flex-direction:column; align-items:flex-start; justify-content:flex-start; gap:6px; }
  .tool-console input.console-number { width:64px; height:36px; }
  .tool-console .console-field { gap:5px; min-width:85px; }
  .tool-console .console-unit { min-width:16px; }
  .tool-console input.console-range[type="range"] { height:36px; }
}
@media(prefers-reduced-motion:reduce) {
  .tool-reader .tool-console :is(.console-segments,.console-modes) > button,
  .tool-console .console-icon-button { transition:none; }
}
@media(forced-colors:active) {
  .tool-console input.console-range[type="range"] { appearance:auto; background:none; }
}
