.hvt-workspace { --ws-accent:var(--lab-green-dark); margin:0; background:var(--lab-paper); font-family:var(--lab-font-body); font-size:14px; color:var(--lab-ink); }
.hvt-workspace [hidden] { display:none!important; }
.hvt-workspace * { box-sizing:border-box; }
.hvt-workspace button,.hvt-workspace input,.hvt-workspace select,.hvt-workspace textarea { font:inherit; }
.hvt-workspace button { border:1px solid var(--lab-line); border-radius:3px; padding:7px 11px; color:var(--lab-ink); background:white; min-height:36px; cursor:pointer; }
.hvt-workspace button:hover { border-color:var(--ws-accent); background:var(--lab-soft); }
.hvt-workspace button:disabled { cursor:not-allowed; color:var(--lab-muted); background:var(--lab-paper); }
.hvt-workspace :is(button,a,input,textarea,select,summary):focus-visible { outline:3px solid var(--ws-accent); outline-offset:2px; }
.hvt-workspace .ws-primary { color:#fff; border-color:var(--ws-accent); background:var(--ws-accent); }
.hvt-workspace .ws-primary:hover { color:var(--ws-accent); background:var(--lab-soft); }
.ws-skip { position:absolute; top:-80px; padding:10px; background:white; z-index:100; }.ws-skip:focus { top:0; }
.ws-header { display:flex; gap:18px; align-items:center; background:var(--lab-dark); color:white; padding:13px 20px; min-height:70px; }
.hvt-workspace .ws-brand { color:white; font:800 22px var(--lab-font-display); text-decoration:none; white-space:nowrap; }.ws-brand span { color:var(--lab-green); font-weight:400; }
.ws-identity { flex:1; min-width:0; }.ws-identity strong { display:block; font-size:15px; overflow-wrap:anywhere; }.ws-identity small { color:#c4d3d1; display:block; font-size:11px; }
#ws-state { font-size:12px; text-transform:uppercase; white-space:nowrap; }
.ws-toolbar { display:flex; align-items:center; gap:14px; padding:8px 20px; background:#fff; border-bottom:1px solid var(--lab-line); }.ws-toolbar label { display:flex; align-items:center; gap:8px; }.ws-toolbar select { padding:6px; border:1px solid var(--lab-line); }#ws-save-state { margin-left:auto; font-size:11px; color:var(--lab-muted); }
.ws-layout { display:grid; grid-template-columns:168px minmax(0,1fr) minmax(230px,23%); min-height:calc(100vh - 158px); }
.ws-nav { padding:22px 10px; border-right:1px solid var(--lab-line); background:#fff; }.ws-nav>p:first-child { font-size:10px; letter-spacing:.12em; margin:0 10px 15px; }.ws-nav ol { list-style:none; padding:0; margin:0 0 25px; }.ws-nav button { display:flex; width:100%; gap:12px; text-align:left; border:0; border-radius:0; font-size:12px; padding:11px 10px; }.ws-nav [aria-current="step"] { background:var(--lab-soft); box-shadow:inset 3px 0 var(--ws-accent); color:var(--ws-accent); font-weight:700; }.ws-nav button small { display:block; font-size:10px; font-weight:400; }.ws-nav a { display:block; margin:12px 10px; font-size:12px; }.ws-local-note { padding:12px 10px; border-top:1px solid var(--lab-line); font-size:11px; line-height:1.6; color:var(--lab-muted); }
.ws-content { min-width:0; padding:24px 26px 45px; }.ws-content h1 { margin:0 0 8px; font:700 24px/1.25 var(--lab-font-display); letter-spacing:-.03em; }.ws-content h2 { margin:26px 0 12px; font-size:16px; }.ws-content h3 { font-size:14px; }.ws-lead { margin:0 0 20px; color:var(--lab-muted); max-width:850px; }.ws-origin { font-size:10px; text-transform:uppercase; letter-spacing:.08em; color:var(--ws-accent); }
.ws-mentor { min-width:0; padding:24px 20px; background:#fff; border-left:1px solid var(--lab-line); }.ws-mentor h2 { font:700 17px var(--lab-font-display); margin:0; }.ws-mentor>p { font-size:12px; color:var(--lab-muted); }.ws-mentor article { margin:22px 0; border-top:1px solid var(--lab-line); padding-top:15px; }.ws-mentor h3 { font-size:13px; margin:8px 0; }.ws-mentor p { font-size:12px; line-height:1.65; overflow-wrap:anywhere; }.ws-mentor small { font-size:10px; color:var(--lab-muted); }
.ws-status { display:flex; flex-wrap:wrap; gap:10px 25px; padding:8px 20px; background:var(--lab-dark); color:#d3e3df; font-size:10px; }.ws-status span:last-child { margin-left:auto; }
.ws-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px 20px; margin:15px 0; }.ws-field { display:flex; flex-direction:column; gap:5px; font-size:12px; font-weight:600; }.ws-field input,.ws-field select,.ws-field textarea { width:100%; padding:9px; border:1px solid #a8b8b5; background:#fff; border-radius:3px; color:var(--lab-ink); }.ws-field textarea { min-height:90px; resize:vertical; line-height:1.5; }.ws-field small { font-weight:400; color:var(--lab-muted); }.ws-wide { grid-column:1/-1; }.ws-field input[type=checkbox] { width:auto; align-self:flex-start; }.ws-reason { border-top:1px solid var(--lab-line); padding-top:14px; }
.ws-actions { display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin:16px 0; }.ws-box { padding:15px; border:1px solid var(--lab-line); background:#fff; margin:14px 0; }.ws-table-wrap { max-width:100%; overflow:auto; margin:12px 0; border:1px solid var(--lab-line); background:white; }.ws-table { border-collapse:collapse; width:100%; font-size:12px; }.ws-table caption { text-align:left; padding:10px; color:var(--lab-muted); }.ws-table :is(th,td) { padding:9px 11px; text-align:left; border-bottom:1px solid var(--lab-line); vertical-align:top; }.ws-table th { background:var(--lab-soft); font-weight:600; white-space:nowrap; }.ws-table td { overflow-wrap:anywhere; max-width:450px; }.ws-table code { white-space:nowrap; }.ws-table tbody tr:last-child td { border-bottom:0; }
.ws-message { margin:12px 20px; padding:12px 16px; border-left:4px solid var(--ws-accent); background:white; }.ws-warning { border-left:3px solid var(--lab-green-dark); background:var(--lab-soft); padding:12px 15px; font-size:12px; line-height:1.6; }.ws-metrics { display:flex; flex-wrap:wrap; gap:10px 25px; border-block:1px solid var(--lab-line); padding:16px 0; margin:16px 0; }.ws-metrics span { display:block; color:var(--lab-muted); font-size:10px; }.ws-metrics strong { font-size:19px; font-weight:600; }
.ws-equation { padding:15px; font:14px/1.7 Consolas,monospace; background:white; border:1px solid var(--lab-line); overflow-wrap:anywhere; white-space:pre-wrap; }.ws-subnav { display:flex; flex-wrap:wrap; gap:5px; margin:15px 0; border-bottom:1px solid var(--lab-line); padding-bottom:10px; }.ws-subnav [aria-pressed=true] { color:#fff; background:var(--ws-accent); }.ws-chart { min-height:370px; width:100%; background:white; }.ws-pre { white-space:pre-wrap; overflow-wrap:anywhere; font:12px/1.6 var(--lab-font-body); }
.hvt-workspace.ws-hide-mentor .ws-layout { grid-template-columns:168px minmax(0,1fr); }.ws-hide-mentor .ws-mentor { display:none; }.hvt-workspace.ws-hide-nav .ws-layout { grid-template-columns:minmax(0,1fr) minmax(230px,23%); }.ws-hide-nav .ws-nav { display:none; }.hvt-workspace.ws-hide-mentor.ws-hide-nav .ws-layout { grid-template-columns:1fr; }
@media(max-width:1050px){.ws-layout { grid-template-columns:150px minmax(0,1fr); }.ws-mentor { display:none; }.ws-content { padding:20px; }.hvt-workspace.ws-hide-nav .ws-layout { grid-template-columns:1fr; }.hvt-workspace.ws-show-mentor .ws-mentor { display:block; grid-column:1/-1; border-top:1px solid var(--lab-line); }.ws-header { gap:10px; }#ws-state { display:none; }}
@media(max-width:700px){.ws-header { flex-wrap:wrap; padding:12px; }.ws-identity { flex-basis:60%; }.ws-toolbar { flex-wrap:wrap; padding:8px 12px; gap:8px; }#ws-save-state { order:5; width:100%; margin:0; }.ws-layout,.hvt-workspace.ws-hide-mentor .ws-layout { display:block; }.ws-nav { display:none; border-bottom:1px solid var(--lab-line); }.ws-show-nav .ws-nav { display:block; }.ws-nav ol { display:grid; grid-template-columns:1fr 1fr; }.ws-fields { grid-template-columns:1fr; }.ws-content { padding:20px 12px; }.ws-status { padding:10px 12px; }.ws-status span:last-child { margin:0; }.ws-mentor { padding:20px 12px; }.ws-chart { min-height:340px; }}
@media print {.ws-nav,.ws-mentor,.ws-toolbar,.ws-status,.ws-header button,.ws-actions { display:none!important; }.ws-layout { display:block!important; }.ws-content { padding:0; }.ws-table-wrap { overflow:visible; }.ws-chart { break-inside:avoid; }}
