/* Scoped utility workspaces. Site tokens provide light/dark themes. */
.uw-tool-premium > .wrap { max-width: 1500px; }
.uw-workbench { --wb-blue:#2563eb; min-width:0; margin:1.5rem 0; border:1px solid var(--line); border-radius:22px; background:var(--surface); box-shadow:var(--shadow-2); overflow:clip; }
.uw-wb-projectbar { display:flex; align-items:center; flex-wrap:wrap; gap:.6rem; padding:1rem 1.2rem; border-bottom:1px solid var(--line); background:var(--surface-2); }
.uw-wb-projectbar label { font-size:.8rem; color:var(--muted); }
.uw-wb-projectbar input[type=text] { min-width:0; width:14rem; max-width:100%; }
.uw-wb-projectbar select { min-width:0; max-width:13rem; }
.uw-workbench button,.uw-workbench .uw-download { min-height:40px; border-radius:9px; padding:.5rem .8rem; font-size:.86rem; }
.uw-workbench button.secondary,.uw-workbench .uw-download { background:var(--surface); color:var(--ink); border:1px solid var(--line); box-shadow:none; }
.uw-workbench button:disabled { opacity:.5; cursor:not-allowed; }
.uw-wb-columns { display:grid; grid-template-columns:minmax(310px,.85fr) minmax(0,1.15fr); }
.uw-wb-inputs { min-width:0; padding:1.2rem; border-inline-end:1px solid var(--line); background:var(--surface-2); }
.uw-wb-panelhead { display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-bottom:1rem; }
.uw-wb-panelhead h2 { margin:0; font-size:1rem; letter-spacing:-.01em; }
.uw-wb-badge { display:inline-flex; align-items:center; gap:.4rem; padding:.2rem .55rem; border:1px solid var(--line); border-radius:99px; font-size:.74rem; color:var(--muted); }
.uw-wb-inputs .tool-form { padding:0; border:0; background:none; box-shadow:none; border-radius:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.uw-wb-inputs .field { min-width:0; }
.uw-wb-inputs .field > label,.uw-wb-inputs legend { font-size:.85rem; }
.uw-wb-inputs .field-textarea,.uw-wb-inputs .table-field,.uw-wb-inputs .field-text,.uw-wb-inputs .field-url { grid-column:1/-1; }
.uw-wb-inputs .field textarea { font-size:.88rem; line-height:1.5; resize:vertical; min-height:5rem; }
.uw-wb-inputs .table-field { padding:.65rem; }
.uw-wb-inputs .input-table input { min-width:85px; }
.uw-wb-inputs .input-table textarea { min-width:220px; }
.uw-wb-inputs .actions { border-top:1px solid var(--line); padding-top:1rem; position:static; background:var(--surface-2); }
.uw-wb-imports { display:flex; flex-wrap:wrap; gap:.6rem; margin-bottom:1rem; }
.uw-wb-imports label { display:grid; gap:.25rem; font-size:.8rem; min-width:0; max-width:100%; }
.uw-wb-imports input[type=file] { width:100%; min-width:0; max-width:100%; font-size:.8rem; }
.uw-wb-results { min-width:0; padding:1.2rem; }
.uw-wb-status { margin:0; padding:.7rem 1.2rem; border-bottom:1px solid var(--line); color:var(--muted); font-size:.85rem; min-height:42px; }
.uw-wb-status[data-error=true] { color:var(--danger); background:var(--danger-bg); }
.uw-wb-status[data-busy=true]::before { content:""; display:inline-block; width:.7rem; height:.7rem; border:2px solid var(--line); border-top-color:var(--accent); border-radius:50%; margin-inline-end:.5rem; animation:uw-wb-spin .8s linear infinite; }
@keyframes uw-wb-spin { to { transform:rotate(360deg); } }
.uw-wb-empty { display:grid; align-content:center; min-height:340px; padding:2rem; background:var(--surface-2); border:1px dashed var(--line); border-radius:16px; text-align:center; color:var(--muted); }
.uw-wb-empty .uw-wb-empty-icon { font-size:2.7rem; color:var(--accent-text); }
.uw-wb-empty h3 { color:var(--ink); margin:1rem 0 .4rem; }
.uw-wb-metrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(125px,1fr)); gap:.7rem; margin-bottom:1rem; }
.uw-wb-metric { padding:.8rem; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); min-width:0; }
.uw-wb-metric strong { display:block; font-size:1.55rem; line-height:1.2; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; letter-spacing:-.03em; }
.uw-wb-metric span { display:block; color:var(--muted); font-size:.76rem; margin-top:.35rem; }
.uw-wb-figure { margin:0 0 1rem; padding:.5rem; background:#fff; border:1px solid var(--line); border-radius:12px; overflow:hidden; }
.uw-wb-figure img { display:block; max-width:100%; height:auto; margin:auto; }
.uw-wb-figure figcaption { color:#475569; font-size:.76rem; padding:.5rem; }
.uw-wb-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.45rem; margin:.7rem 0; }
.uw-download { display:inline-flex; align-items:center; text-decoration:none; max-width:100%; overflow-wrap:anywhere; }
.uw-wb-export { border-top:1px solid var(--line); margin-top:1rem; padding-top:.75rem; }
.uw-wb-export h3 { font-size:.95rem; margin:.25rem 0; }
.uw-wb-table { margin:1rem 0; }
.uw-wb-table header { display:flex; justify-content:space-between; align-items:center; gap:.5rem; flex-wrap:wrap; }
.uw-wb-table h3 { font-size:.95rem; margin:.35rem 0; }
.uw-wb-table input[type=search] { min-width:0; width:12rem; max-width:100%; font-size:.8rem; }
.uw-wb-table table { font-size:.79rem; }
.uw-wb-table th button { color:inherit; background:none; border:0; min-height:32px; padding:.1rem; font:inherit; text-align:start; }
.uw-wb-table td { max-width:22rem; white-space:normal; overflow-wrap:anywhere; }
.uw-wb-table footer { display:flex; align-items:center; justify-content:space-between; gap:.5rem; font-size:.76rem; color:var(--muted); }
.uw-wb-cards { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr)); gap:.8rem; }
.uw-wb-card { min-width:0; padding:1rem; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); }
.uw-wb-card h3 { font-size:1rem; margin:0 0 .3rem; }
.uw-wb-card p { font-size:.84rem; margin:.4rem 0; }
.uw-wb-card small { color:var(--muted); }
.uw-wb-pill { display:inline-block; border:1px solid var(--line); border-radius:6px; font-size:.7rem; padding:.15rem .4rem; margin:.2rem .2rem .2rem 0; }
.uw-wb-card[data-resolved=true] { opacity:.68; }
.uw-wb-source { font-size:.75rem; display:flex; align-items:center; min-height:24px; width:fit-content; max-width:100%; margin-top:.6rem; }
.uw-wb-preview { white-space:pre-wrap; padding:1rem; border:1px solid var(--line); border-radius:12px; line-height:1.8; max-height:38rem; overflow:auto; margin:.7rem 0; }
.uw-wb-preview mark { color:inherit; background:color-mix(in srgb,var(--accent) 14%,var(--surface)); border-radius:3px; padding:.08rem 0; }
.uw-wb-preview mark[data-long=true] { background:color-mix(in srgb,#d97706 20%,var(--surface)); }
.uw-wb-preview pre { white-space:pre-wrap; overflow-wrap:anywhere; }
.uw-wb-preview code { white-space:pre-wrap; }
.uw-wb-warning { padding:.7rem .9rem; border-inline-start:3px solid #b45309; background:var(--surface-2); margin:.6rem 0; font-size:.82rem; }
.uw-wb-tabs { display:none; padding:.6rem 1rem; border-bottom:1px solid var(--line); gap:.5rem; }
.uw-wb-tabs button[aria-selected=true] { background:var(--accent-solid); color:var(--on-accent); }
.uw-wb-library { display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; }
.uw-wb-recovery { padding:.8rem 1rem; background:var(--accent-tint); font-size:.85rem; }
.uw-wb-room-stage { position:relative; width:100%; }
.uw-wb-room-stage canvas { width:100%; height:auto; display:block; background:var(--surface-2); border:1px solid var(--line); border-radius:12px; touch-action:manipulation; }
.uw-wb-room-stage pre { white-space:pre-wrap; padding:1rem; border:1px solid var(--line); border-radius:12px; max-height:26rem; overflow:auto; }
.uw-wb-presence { display:flex; flex-wrap:wrap; gap:.4rem; margin:.6rem 0; }
.uw-wb-avatar { border-radius:99px; padding:.25rem .6rem; background:var(--accent-tint); color:var(--accent-text); font-size:.73rem; }
.uw-wb-score { display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1.2rem; border-radius:12px; background:var(--surface-2); text-align:center; }
.uw-wb-score strong { font-size:2.2rem; font-variant-numeric:tabular-nums; }
.uw-wb-player input[type=range] { width:100%; }
.uw-wb-player output { display:block; font-variant-numeric:tabular-nums; margin:.5rem 0; }
.uw-wb-dialog { max-width:min(900px,calc(100vw - 2rem)); max-height:85dvh; overflow:auto; background:var(--surface); color:var(--ink); border:1px solid var(--line); border-radius:18px; padding:1.25rem; }
.uw-wb-dialog::backdrop { background:#0f172a88; }
.uw-wb-dialog pre { max-width:100%; max-height:16rem; overflow:auto; }
.uw-workbench [hidden] { display:none!important; }
@media (max-width:900px) {
 .uw-wb-columns { grid-template-columns:minmax(0,1fr); }
 .uw-wb-inputs { border-inline-end:0; }
 .uw-wb-tabs { display:flex; }
 .uw-workbench[data-panel=inputs] .uw-wb-results { display:none; }
 .uw-workbench[data-panel=results] .uw-wb-inputs { display:none; }
 .uw-wb-projectbar { padding:.8rem; }
 .uw-wb-projectbar input[type=text] { width:100%; }
 .uw-wb-projectbar > label { flex:1 1 100%; }
}
@media (prefers-reduced-motion:reduce) { .uw-wb-status[data-busy=true]::before { animation:none; } }
@media print {
 .site-header,.site-footer,.uw-wb-projectbar,.uw-wb-tabs,.uw-wb-inputs,.uw-wb-status,.uw-wb-actions,.uw-wb-export,.fb-fab,.uw-cb,.tool-more,.examples { display:none!important; }
 .uw-workbench,.uw-wb-columns,.uw-workbench .uw-wb-results { display:block!important; overflow:visible; border:0; box-shadow:none; }
 .uw-wb-results { padding:0; }
 .uw-wb-table footer,.uw-wb-table input { display:none; }
 .uw-wb-card,.uw-wb-metric,.uw-wb-figure { break-inside:avoid; }
}

.uw-workbench .everyday-result audio.uw-wb-audio { display:block; width:100%; height:54px; margin:.75rem 0; }

.uw-wb-project-options { flex:1 1 100%; min-width:0; }
.uw-wb-project-options > summary { color:var(--muted); font-size:.82rem; cursor:pointer; padding:.35rem 0; }
.uw-wb-project-options[open] > summary { margin-bottom:.65rem; }
.uw-wb-project-options input[type=file] { max-width:100%; min-width:0; font-size:.8rem; }
.uw-wb-project-options label:not(.check) { display:grid; gap:.25rem; }
.uw-wb-project-options .check { display:flex; align-items:center; gap:.4rem; }
@media (prefers-reduced-motion:reduce) { .uw-wb-status[data-busy=true]::before { animation:none; } }

.uw-wb-figure-tools { display:flex; align-items:end; justify-content:space-between; flex-wrap:wrap; gap:.7rem; margin:.35rem .35rem .8rem; }
.uw-wb-figure-tools label { display:grid; gap:.3rem; font-size:.8rem; color:#475569; min-width:0; flex:1 1 12rem; }
.uw-wb-figure-tools select { max-width:100%; min-width:0; color:#0f172a; background:#fff; }
.uw-wb-figure > p { margin:.65rem; color:#475569; }
.uw-wb-zoom { width:min(1100px,calc(100vw - 2rem)); }
.uw-wb-zoom h2 { font-size:1.1rem; margin:0 0 1rem; }
.uw-wb-zoom-scroll { max-width:100%; max-height:65dvh; overflow:auto; margin-top:.7rem; border:1px solid var(--line); border-radius:10px; background:#fff; }
.uw-wb-zoom-scroll img { display:block; width:100%; min-width:800px; height:auto; max-width:none; }
.uw-wb-import-summary { display:grid; gap:.5rem; padding:.7rem; margin:.7rem 0; border:1px solid var(--line); border-radius:10px; font-size:.85rem; }

.uw-wb-source-size { flex:1 1 100%; min-width:0; border:1px solid var(--line); border-radius:10px; padding:.65rem; }
.uw-wb-source-size p { margin:.15rem 0; overflow-wrap:anywhere; }
.uw-wb-layouts { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr)); gap:.5rem; }
.uw-wb-layouts button { text-align:start; line-height:1.5; }
.uw-wb-layouts button[aria-pressed=true] { border-color:var(--accent); background:var(--accent-tint); color:var(--accent-text); }
.uw-wb-figure[aria-busy=true] img { opacity:.55; }

.uw-wb-browse-controls { display:flex; align-items:end; flex-wrap:wrap; gap:.6rem; margin:0 0 1rem; }
.uw-wb-browse-controls > label { display:grid; gap:.3rem; flex:1 1 12rem; min-width:0; font-size:.8rem; color:var(--muted); }
.uw-wb-browse-controls input,.uw-wb-browse-controls select { max-width:100%; width:100%; min-width:0; }
.uw-wb-selection { padding:.8rem; border:1px solid var(--line); border-radius:12px; background:var(--surface-2); margin-bottom:1rem; }
.uw-wb-selection p { margin:0; }
.uw-browse-day { grid-column:1/-1; font-size:.95rem; margin:.8rem 0 .15rem; }
.uw-wb-check { display:flex; align-items:center; gap:.5rem; font-size:.8rem; margin:.6rem 0; }
.uw-wb-check input { width:1.1rem; height:1.1rem; flex:none; accent-color:var(--accent); }
.uw-browse-hit mark,.uw-browse-context mark { background:#fef3c7; color:#713f12; border-radius:3px; }
.uw-browse-context { white-space:pre-wrap; overflow-wrap:anywhere; }
.uw-wb-figure-tools input[type=time] { max-width:100%; min-width:0; background:#fff; color:#0f172a; }
.uw-wb-card h4 { font-size:1rem; margin:0 0 .3rem; }

.uw-wb-rhythm { margin:1rem 0; min-width:0; }
.uw-wb-rhythm > h3 { margin-bottom:.7rem; }
.uw-wb-rhythm .uw-wb-card button[aria-pressed=true] { border-color:var(--accent); background:var(--accent-tint); color:var(--accent-text); }
.uw-wb-sentence-detail { margin-top:1rem; padding-top:.8rem; border-top:1px solid var(--line); }
.uw-wb-sentence-detail h4 { margin:.3rem 0; font-size:.9rem; }
.uw-wb-draft-comparison th,.uw-wb-draft-comparison td { white-space:normal; overflow-wrap:anywhere; }

.uw-wb-rhythm .uw-wb-card p { overflow-wrap:anywhere; }

.uw-wb-import-preview { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr)); gap:.7rem; margin:.8rem 0; }
.uw-wb-import-preview figure { margin:0; min-width:0; }
.uw-wb-import-preview img { display:block; width:100%; background:#fff; border:1px solid var(--line); }
.uw-wb-import-preview figcaption { font-size:.75rem; margin:.3rem 0; }
