/* Usability refinements to the approved white, coral and tactile visual system. */
:root{--muted:#58615b}
#save-status[data-state=pending]{background:#fff8e8;color:#64522d}#save-status[data-state=pending]::before{content:'…';background:#fff0c6;color:#64522d}
.primary,.quick-run,.primary-nav>a[aria-current=page],.primary-nav .is-current>summary,.weight-modes input:checked+span{color:#27251f}
button,summary,input:not([type=checkbox]):not([type=radio]),select,.text-button,.file-button,.secondary-small,.pagination button,.hero-action-row button,.export-menu>summary,.presenter-toolbar button,#skip-result-animation{min-height:44px}
button,summary,.history-link{min-width:44px}
.nav-menu a,.project-popover>a,footer a{min-height:44px;align-content:center}
.primary-nav>a,.primary-nav summary{min-height:44px}
.history-link{display:flex;align-items:center;justify-content:center}
.check{min-height:44px}.weight-modes span{min-height:44px;display:flex;align-items:center;justify-content:center}
.hint,small,.run-note,footer,.protocol-meta,.result-note{color:#58615b}
.protocol-meta{display:block;font-size:11px}
.workspace-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 12px;position:relative;z-index:10}
.workspace-tools button{font-size:13px;border-radius:13px;padding:9px 15px}
.workspace-tools .quick-run{margin-left:auto;background:linear-gradient(#ffad94,#f17a5b);border-color:#ed7153;box-shadow:inset 0 1px 1px #ffe0d1,0 3px 5px #69382c20;font-weight:750}
.result-tools{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:12px 0 0;padding:12px 0;border-block:1px solid #e5e7e4}
.result-tools .search-field{flex:1;max-width:360px;min-width:150px}.result-tools label{font-size:12px}.result-tools input,.result-tools select{margin-top:5px;font-size:14px}
.result-tools>button{font-size:12px;margin-left:auto}
.input-foot{display:flex;justify-content:space-between;gap:10px;margin-top:8px}.input-foot small{font-size:11px}
#preview-status{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;margin-top:12px;line-height:1.6;color:#45554a}
#raw-label{position:static;clip-path:none;width:auto;height:auto;overflow:visible;font-size:12px;margin:10px 0 6px;color:#58615b}
#raw{min-height:140px;font-size:15px;line-height:1.45}
.input-panel>details>summary{font-size:12px;min-height:44px;padding-block:10px}
.input-panel>details{margin-top:8px}.input-panel>details[open]{width:100%}
#source-kind{font-size:11px;margin:0 0 8px}
.source-sets{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:12px 0}.source-sets label{flex:1;min-width:140px}.source-sets select{font-size:13px}.source-sets button{font-size:12px;padding:8px 10px}
.constraint-picker{margin:12px 0}.constraint-picker .fields-grid{margin-block:12px}.constraint-row{display:flex;gap:8px;align-items:center;justify-content:space-between;padding-block:8px;border-bottom:1px solid var(--line);font-size:12px;overflow-wrap:anywhere}.constraint-row span{min-width:0}.constraint-row button{font-size:11px;padding:8px}.constraint-picker>button{width:100%}
.settings-panel textarea{margin-bottom:6px}.settings-panel label{line-height:1.45}.advanced-settings>summary,#list-options>summary,#audit>summary{min-height:44px;align-content:center}
.error{border-left:3px solid #a53729;padding:10px 12px;background:#fff5f0;border-radius:5px}.error:empty{border:0;padding:0}
[aria-invalid=true]{border-color:#a53729!important}
#other-page .panel>h2{font-size:24px;letter-spacing:-.5px}#other-page .panel{padding-top:12px}
.page-toolbar{gap:10px}.service-filters,.history-filters,.library-filters{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin:18px 0}.service-filters label,.history-filters label,.library-filters label{flex:1;min-width:140px}
.project-row>div:first-child,.history-row>div:first-child{min-width:0;max-width:100%}#other-page :is(p,h2,h3,small){overflow-wrap:anywhere;word-break:normal}.row-actions{flex-shrink:0}.row-actions button{min-height:44px}
.file-status{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.file-status[data-state=error]{color:#923828;background:#fff2eb;padding:12px;border-radius:12px}.file-status[data-state=success]{color:#245d3e;background:#e5f3e8;padding:12px;border-radius:12px}
.dialog-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}.dialog-actions button{flex:0 1 auto}.dialog-actions .danger{color:#fff;background:#a53729;border-color:#a53729}
#confirm-dialog{max-width:540px;padding:28px;box-shadow:0 24px 80px #18271c36}#confirm-dialog h2{font-size:24px;letter-spacing:-.5px}#confirm-dialog p{font-size:15px;overflow-wrap:anywhere}#confirm-dialog label{margin-block:16px}
#confirm-message{max-height:55dvh;overflow:auto;line-height:1.6}
#presenter-label{overflow-wrap:anywhere}.presenter-toolbar strong{min-width:0}.presenter-toolbar strong span{display:block;line-height:1.5;margin-top:6px}
.prose button{max-width:100%;white-space:normal}.page-empty{padding:30px 16px}
@media(min-width:1000px){.workspace-tools{padding-top:2px}.preparation-strip{margin-top:18px}.source-sets>button{flex:1}}
@media(max-width:700px){
  .workspace-tools{position:sticky;top:0;background:#ffffffed;backdrop-filter:blur(10px);border-bottom:1px solid #e3e6e2;padding:8px 0;gap:6px}
  .workspace-tools button{font-size:11px;padding:8px 9px;flex:1}.workspace-tools .quick-run{flex:1.4;margin:0}
  .result-tools{gap:8px}.result-tools label{font-size:11px}.result-tools input,.result-tools select{font-size:16px}.result-tools .search-field{max-width:none;min-width:0;flex:1}.result-tools>label:not(.search-field){flex:0 0 112px}.result-tools>button{flex:1 1 100%;font-size:11px;padding:8px}
  .history-link{width:44px;min-width:44px}.primary-nav>a,.primary-nav summary{font-size:12px;min-height:44px}
  .app-header{margin-inline:12px}.hero-action-row button,.export-menu>summary{min-height:44px}.hero-action-row .nav-menu button{font-size:14px}
  .file-button,.text-button,.secondary-small,.pagination button,.presenter-toolbar button,#skip-result-animation{min-height:44px;font-size:13px}
  .input-foot{flex-wrap:wrap}#preview-status{gap:8px;font-size:12px}#admission-count{white-space:normal;font-size:12px}.section-title{align-items:start}.section-title h2{line-height:1.5}
  #raw{font-size:16px;min-height:150px}.settings-panel details label,.settings-panel details input,.settings-panel details textarea,#list-options input,#list-options select,#list-options textarea{font-size:16px}
  .source-sets button{flex:1}.source-sets label{flex-basis:100%}
  .protocol-meta{font-size:11px}.fields-grid{gap:10px}.constraint-picker .fields-grid{grid-template-columns:1fr}
  .row-actions button{font-size:12px}.page-toolbar button{flex:1}.service-filters,.history-filters,.library-filters{gap:10px}
  #confirm-dialog{padding:22px}.dialog-actions button{flex:1}.presenter-toolbar strong span{display:block}.presenter-toolbar{margin-bottom:24px}
  body[data-mode=numbers] .fields-grid{grid-template-columns:1fr 1fr}body[data-mode=numbers] .fields-grid label:last-child{grid-column:1/-1}
  .input-panel>details>summary{font-size:12px}footer{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.workspace-tools{backdrop-filter:none}}
[data-reduced-motion=true] *,[data-reduced-motion=true] *::before,[data-reduced-motion=true] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
[data-reduced-motion=true] .mode-icon:hover{transform:none!important}
.qa-diagnostics{margin:20px 0}.qa-diagnostics pre{max-height:400px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}
@media print{.workspace-tools,.result-tools{display:none!important}}
/* Help stays below the working surface and uses the existing tactile palette. */
.page-guide{margin:64px auto 24px;max-width:1040px;border-top:1px solid #e7e9e4;padding-top:32px;color:#3e4941}
.guide-copy>p,.guide-copy>ol{max-width:780px;font-size:15px;line-height:1.75}
.guide-copy h2{font-size:clamp(20px,3vw,26px);letter-spacing:-.035em;color:#25372d;margin:24px 0 14px}
.guide-copy .eyebrow{color:#67756b;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin:0}
.guide-copy ol{padding-left:24px}.guide-copy li{padding-left:6px;margin:12px 0}
.guide-faq{max-width:840px}.guide-faq details{border-bottom:1px solid #e7e9e4;padding:4px 0}
.guide-faq summary{cursor:pointer;min-height:48px;align-content:center;font-weight:600;line-height:1.5;padding:12px 0}
.guide-faq details p{line-height:1.75;max-width:760px;margin:0 0 18px}
.guide-links{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 24px}
.guide-links a{min-height:44px;padding:10px 14px;border:1px solid #e3e8df;border-radius:14px;color:#33453a;background:#fafbf7;align-content:center;text-decoration:none;font-size:13px}
.guide-links a[aria-current=page]{background:#e9f1df;border-color:#ccdaba}
.guide-copy a:focus-visible,.guide-faq summary:focus-visible{outline:3px solid #dd6a50;outline-offset:3px}
@media(hover:hover) and (pointer:fine){.guide-links a:hover{background:#f0f4e9}}
@media(max-width:600px){.page-guide{margin-top:40px;padding-top:24px}.guide-copy>p,.guide-copy>ol,.guide-faq details p{font-size:14px}.guide-links{gap:6px}.guide-links a{font-size:12px;padding:10px}}
