.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.app-dialog.wide-dialog{width:min(920px,calc(100vw - 32px))}.source-json{max-height:300px;overflow:auto;margin:9px 0 0;padding:10px;border-radius:8px;background:#252923;color:#eee;font:10px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.pagination-controls button:disabled{opacity:.45;cursor:not-allowed}.line-amount{white-space:nowrap}.estimate-table td{overflow-wrap:anywhere}.estimate-table .line-amount{overflow-wrap:normal}.app-dialog button:disabled{opacity:.55;cursor:wait}.measure-row{grid-template-columns:minmax(90px,1fr) 80px minmax(110px,1.2fr) minmax(120px,1.3fr) 32px}.dialog-actions-spacer{flex:1}@media(max-width:680px){.app-dialog.wide-dialog{width:100vw}.workspace-actions .button.optional{display:inline-flex}.estimate-table .line-amount{white-space:nowrap}.measure-row{grid-template-columns:minmax(78px,1fr) 62px minmax(96px,1.2fr) 30px}.measure-row input[data-measure="override"]{grid-column:1/4}}

/* Review controls retain native keyboard behaviour and visible labels. */
.field input[type="checkbox"] { width: 18px; height: 18px; min-height: 18px; margin: 0 8px 0 0; vertical-align: middle; accent-color: var(--orange-dark); }
.app-dialog fieldset { min-width: 0; margin: 14px 0; padding: 14px; border: 1px solid var(--line); border-radius: 8px; }
.app-dialog legend { padding: 0 5px; font-weight: 650; }
.app-dialog fieldset .field + .field { margin-top: 10px; }
#dialogNotice:focus { outline: 3px solid var(--orange-dark); outline-offset: 2px; }

.detail-grid > .detail-section { min-width: 0; }
.detail-grid > .measurement-section { grid-column: 1 / -1; }

.catalogue-navigation { display: grid; gap: 16px; margin-bottom: 18px; }
.catalogue-navigation section { padding: 12px; border: 1px solid var(--line); border-radius: 8px; }
.catalogue-navigation .button-row, .catalogue-navigation nav { margin: 8px 0; flex-wrap: wrap; }
.catalogue-result > div { min-width: 0; width: 100%; }
.catalogue-result .field { margin: 12px 0; }
.catalogue-spec { overflow-wrap: anywhere; }

/* Editing keeps the input nodes in place while server Decimal previews update amounts. */
.cell-input { border: 1px solid #aaa89f; background: #fff; border-radius: 5px; min-height: 36px; }
.cell-input:focus-visible { outline: 3px solid var(--orange-dark); outline-offset: 2px; }
.cell-input[aria-invalid="true"] { border: 2px solid var(--red); background: #fff0ed; }
#liveEditStatus { position: sticky; top: 0; z-index: 2; padding: 8px; background: var(--paper); border: 1px solid var(--line); }
#catalogueFilters { margin: 8px 0 12px; border: 1px solid var(--line); padding: 8px; border-radius: 6px; }
#catalogueFilters > summary { cursor: pointer; font-weight: 600; }
.catalogue-navigation { margin: 10px 0; }
.mapping-proposal { display: flex; align-items: flex-start; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.mapping-proposal small { display: block; overflow-wrap: anywhere; margin-top: 5px; }
.import-summary > div { display: flex; justify-content: space-between; gap: 16px; padding: 7px 0; border-bottom: 1px solid var(--line); }
.import-summary dd { font-weight: 700; margin: 0; }
@media(max-width:680px) {
  .estimate-table td:nth-child(4)::before { content: 'Cantidad'; display:block; font-size:11px; }
  .estimate-table td:nth-child(5)::before { content: 'Precio'; display:block; font-size:11px; }
  .estimate-table td:nth-child(6)::before { content: 'Importe'; display:block; font-size:11px; }
  .estimate-table tr { grid-template-columns: 25px minmax(0,1fr) minmax(75px,1fr) minmax(75px,1fr); }
  .cell-input { width:100%; font-size:14px; }
  #catalogueForm { flex-wrap:wrap; }
  #catalogueForm .search-field { flex-basis:100%; }
}
.saved-state[data-state="error"] { color: var(--red); }
.saved-state[data-state="error"] .saved-dot { background: var(--red); }
.saved-state[data-state="dirty"] .saved-dot, .saved-state[data-state="saving"] .saved-dot { background: var(--orange-dark); }

/* Workspace sections are real panels, not ambiguous page anchors. */
.workspace-navigation{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:18px 0}
.workspace-navigation .workspace-tabs{margin:0;flex:1;display:flex}
.workspace-tabs [role=tab]{background:transparent;border:0;border-bottom:3px solid transparent;padding:12px 14px;color:var(--muted);white-space:nowrap}
.workspace-tabs [role=tab].active{color:var(--orange-dark);border-bottom-color:var(--orange);font-weight:700}
#workspaceCatalogue.active{border-color:var(--orange);background:var(--orange-soft)}
[role=tabpanel][hidden]{display:none!important}
.workspace-panels>.panel{margin:0}
@media(max-width:680px){.workspace-tabs [role=tab]{padding:10px 9px}.workspace-navigation{gap:8px}}

/* Editable measurements: visible labels and keyboard order at every width. */
.measure-row {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px 0;border-bottom:1px solid var(--border,#ddd);align-items:end}
.measure-row .field {min-width:0}
.measure-row input,.measure-row select {width:100%;min-width:0;box-sizing:border-box}
.measure-row .measure-formula {grid-column:1/-1}
@media(max-width:480px){.measure-row {grid-template-columns:minmax(0,1fr)}}

.assistant-candidate {min-width:0;margin:16px 0;padding:14px}
.assistant-candidate p,.assistant-candidate h3 {overflow-wrap:anywhere}
.assistant-candidate .form-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.assistant-candidate input,.assistant-candidate select,.assistant-candidate textarea {max-width:100%;box-sizing:border-box}
@media(max-width:600px){.assistant-candidate .form-grid {grid-template-columns:minmax(0,1fr)}}
[data-sim-fields][hidden], #simCustomer[hidden], #simLines[hidden] { display:none !important; }
#simDocuments section, #simulationPreview { overflow-wrap:anywhere; }

/* Obranto application system · 2026-10. Locally hosted OFL Archivo; no font requests. */
html{scroll-behavior:auto}body{font-family:Archivo,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;line-height:1.5}
button,input,select,textarea{font-family:inherit}input,select,textarea{accent-color:var(--orange-dark)}
h1,h2,h3,h4,p{overflow-wrap:anywhere}h1,h2,h3{font-weight:600}
:focus-visible{outline:3px solid #a63e16;outline-offset:3px}
.app-shell{grid-template-columns:216px minmax(0,1fr)}.sidebar{background:#242320;padding:26px 14px;gap:28px}.brand{font-weight:800;letter-spacing:-.055em;font-size:25px}.brand-mark{border-radius:7px;background:#e56730;color:#242320}
.primary-nav a{font-size:13px;padding:12px 10px;border-radius:6px}.primary-nav a.active{background:#3e332a;color:#fff1e6}.primary-nav a.active:before{left:-14px;background:#ee9565}
.topbar{height:56px;background:var(--paper);padding-inline:28px}.main-content{padding:20px 28px 40px;max-width:1600px}.app-footer{font-size:11px;color:var(--muted)}
#authControls{padding-bottom:10px;border-bottom:1px solid var(--line);margin-bottom:6px}#authControls .button{min-height:30px;padding:4px 8px;font-size:11px}#authControls>span{margin-right:auto}
#workspaceIdentity{font-size:11px;margin:6px 0 22px}.breadcrumb{font-size:12px}.local-badge{font-size:11px}
.page-heading h1,.workspace-head h1{font-size:26px;line-height:1.23;letter-spacing:-.035em;max-width:38ch}.workspace-head{gap:20px;margin-bottom:12px}.workspace-subline{font-size:13px;line-height:1.65}.workspace-head .eyebrow{font-size:10px}.workspace-head .status-pill{vertical-align:middle;margin-left:6px}
.button,.icon-button{border-radius:6px;background:#fff;min-height:38px;font-size:12px;border-color:#c9c2b8;transition:background-color 120ms ease-out,border-color 120ms ease-out;color:var(--ink)}
.button.primary{background:#ad4218;border-color:#ad4218;color:#fff}.button.primary:hover{background:#87320f}.button.quiet{border-color:transparent;background:transparent}.button.small{min-height:32px;font-size:12px}
.button:disabled,.app-dialog button:disabled{cursor:not-allowed;opacity:.55}.button.danger{color:var(--red);border-color:#d6a09a}
.saved-state{font-size:12px;color:var(--green)}.saved-state[data-state=error]{color:var(--red)}.saved-state[data-state=dirty],.saved-state[data-state=saving]{color:#835012}
.project-tools{display:flex;gap:4px;flex-wrap:wrap;align-items:center;padding-bottom:12px}.project-more{position:relative;margin-left:auto;font-size:12px}.project-more>summary{padding:10px;cursor:pointer}.project-more[open]>.button-row{position:absolute;z-index:5;right:0;min-width:210px;padding:10px;background:#fff;border:1px solid var(--line);box-shadow:0 8px 20px #24232015;border-radius:6px}
.workspace-summary{background:#fff;color:var(--ink);padding:16px 20px;border-left:4px solid var(--orange);box-shadow:none;border-radius:8px}.workspace-summary .label{color:var(--muted);font-size:12px}.workspace-total{font-size:28px;letter-spacing:-.03em;font-weight:600}.summary-details{color:var(--muted);gap:24px;font-size:12px}.summary-details strong{color:var(--ink);font-size:15px;font-weight:600}.workspace-summary .amount{color:var(--ink)}
.workspace-navigation{margin:20px 0 10px}.workspace-tabs [role=tab]{padding:12px 16px;font-size:13px}.workspace-tabs [role=tab].active{color:var(--orange-dark);border-color:var(--orange-dark)}
.workspace-toolbar{margin:12px 0}.workspace-toolbar .search-field{max-width:440px}.search-field input,.control{background:#fff;border-color:#bdb6ac;border-radius:6px;min-height:42px;font-size:14px}
#liveEditStatus{position:static;border:0;background:transparent;padding:0;margin:8px 0;color:var(--muted);font-size:12px}#liveReviewStatus:empty{display:none}
.card{box-shadow:none;border-color:var(--line)}.chapter-block{border-radius:8px;margin:12px 0;background:#fff}.chapter-heading{background:#eeeae3;cursor:pointer;padding:12px 14px;list-style:none}.chapter-heading:before{content:'›';font-size:20px;line-height:1;color:var(--muted)}details[open]>.chapter-heading:before{content:'⌄'}.chapter-heading::-webkit-details-marker{display:none}.chapter-title{flex:1}.chapter-title strong{font-size:13px;font-weight:600}.chapter-heading .chapter-code{font-size:12px;color:#6d4935}.chapter-heading .subtle{font-size:11px}.chapter-total{font-size:13px}.chapter-children{padding-left:12px;border-color:#e4dfd7}
.estimate-table{min-width:740px}.estimate-table th{font-size:10px;color:#625d55;background:#faf9f6;letter-spacing:.045em;padding:11px 12px}.estimate-table td{padding:12px;border-top:1px solid #ebe7e0}.estimate-table th:nth-child(2),.estimate-table td:nth-child(2){width:86px}.estimate-table th:nth-child(4),.estimate-table td:nth-child(4){width:110px}.estimate-table th:nth-child(5),.estimate-table td:nth-child(5){width:120px}.estimate-table th:nth-child(6),.estimate-table td:nth-child(6){width:158px}
.estimate-table th:nth-child(n+4){text-align:right}.item-description{font-size:13px;font-weight:600;line-height:1.45}.item-description small{font-size:12px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);font-weight:400}.item-unit{display:block;margin-top:5px;color:#705340;font-size:11px;font-weight:400}.item-code{font-size:11px;color:#74513b;overflow-wrap:anywhere}
.cell-input{font-size:13px;border:1px solid #b7afa4;background:#fff;min-height:36px;padding:6px 8px;border-radius:5px;font-variant-numeric:tabular-nums}.line-amount{font-size:13px;font-weight:600}.numeric,.amount,.chapter-total,.workspace-total{font-variant-numeric:tabular-nums;text-align:right}.workspace-total{text-align:left}.numeric{overflow-wrap:normal!important}
.data-missing{border:1px solid #e3d0ab;background:#fff8e9;color:#785018;padding:10px 12px;border-radius:6px;font-size:12px;line-height:1.5}.notice.error{color:#8d241e;background:#fff0ee;border-color:#d6a09a}.notice.success{color:#235b3b;background:#edf6ef;border-color:#a8c5b0}
.table-card-head h2,.panel h2{font-size:15px}.panel p,.detail-section p{font-size:13px;line-height:1.6;color:var(--muted)}.totals-row{font-size:13px;padding:3px 0}.totals-row.grand{font-size:16px}.totals-list{max-width:720px}.status-pill{font-size:11px;white-space:normal;line-height:1.3}
.app-dialog{border-radius:12px;background:#fff;padding:24px;width:min(700px,calc(100vw - 48px));max-height:90vh}.app-dialog.wide-dialog{width:min(1040px,calc(100vw - 48px))}.app-dialog::backdrop{background:#211d186b;backdrop-filter:blur(2px)}.dialog-header{gap:20px;margin-bottom:16px}.dialog-header h2{font-size:22px;letter-spacing:-.025em;font-weight:600;line-height:1.3}.dialog-header p{font-size:13px;color:var(--muted)}.dialog-header .icon-button{flex:none}.dialog-actions{border-top:1px solid var(--line);padding-top:16px;gap:8px;flex-wrap:wrap}.dialog-content{min-width:0}
.detail-tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--line);margin-bottom:18px}.detail-tabs button{background:transparent;border:0;border-bottom:3px solid transparent;padding:12px 14px;font-size:13px;color:var(--muted);min-height:44px}.detail-tabs button[aria-selected=true]{color:var(--orange-dark);border-bottom-color:var(--orange-dark);font-weight:600}.detail-tab-panel{min-height:210px}.detail-tab-panel>.detail-section{border:0;border-radius:0;padding:12px 0;background:transparent}.detail-tab-panel h3{font-size:15px}.detail-tab-panel h4{font-size:13px;margin:18px 0 8px}
.field{font-size:12px;color:#544e46;font-weight:600}.field input,.field select,.field textarea{font-size:14px;line-height:1.5;background:#fff;border-color:#bdb6ac;border-radius:6px;font-weight:400}.field textarea{min-height:120px}.field-grid,.form-grid{gap:16px}.field-grid>*,.form-grid>*,fieldset{min-width:0}.source-prose{background:#faf8f4;border:0;border-left:3px solid #ddd4c8;border-radius:0;font-size:14px;line-height:1.7;max-height:none;overflow-wrap:anywhere;padding:14px 16px}.source-json{font-size:11px}.resource-table{min-width:580px}.resource-table td{font-size:13px}.resource-table small{display:block;font-size:11px;color:var(--muted)}
.provenance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.provenance-grid dt{font-size:11px;color:var(--muted)}.provenance-grid dd{margin:4px 0 0;font-size:13px;overflow-wrap:anywhere}.break-anywhere{overflow-wrap:anywhere}
.catalogue-add-bar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;padding-top:18px;border-top:1px solid var(--line);margin-top:18px}.catalogue-add-bar .field:first-child{flex:1;min-width:200px}.catalogue-add-bar .field:nth-child(2){width:140px}.catalogue-add-bar .button{min-height:42px}.catalogue-result{padding:16px 0;border-bottom:1px solid var(--line);border-radius:0}.catalogue-result strong{font-size:15px;font-weight:600}.catalogue-result small{font-size:12px;line-height:1.6}.catalogue-result>div>.button{margin-top:9px}.catalogue-spec[hidden]{display:none!important}#catalogueFilters{background:#faf8f4;border:0;padding:10px 12px;font-size:12px}#catalogueResults>p[role=status]{font-size:12px;color:var(--muted);margin:6px 0 12px}
.empty-state,.loading-state{padding:40px 20px}.empty-state h2{font-size:20px}.empty-state p{font-size:14px}.import-summary{font-size:13px}.detail-section{border-radius:8px;box-shadow:none}.assistant-candidate{box-shadow:none}.assistant-candidate h3{font-size:17px}
@media(min-width:681px) and (max-width:1150px){.app-shell{grid-template-columns:184px minmax(0,1fr)}.main-content{padding:18px}.workspace-head{grid-template-columns:minmax(0,1fr)}.workspace-actions{justify-content:flex-start}.summary-details{gap:14px}.workspace-summary{grid-template-columns:minmax(0,1fr)}.primary-nav a{font-size:12px}}
@media(max-width:680px){.app-shell{display:block}.sidebar{width:230px}.main-content{padding:16px}.topbar{padding-inline:16px}.workspace-head{grid-template-columns:1fr}.workspace-head h1,.page-heading h1{font-size:23px}.workspace-actions{justify-content:flex-start}.workspace-summary{grid-template-columns:minmax(0,1fr);padding:14px}.workspace-total{font-size:26px;white-space:normal;overflow-wrap:anywhere}.summary-details{display:flex;gap:16px}.project-tools{gap:0}.project-more{margin-left:0}.project-more[open]>.button-row{right:auto;left:0}.workspace-navigation{gap:8px}.workspace-tabs [role=tab]{padding:10px;font-size:12px}.chapter-heading{padding:10px;flex-wrap:wrap}.chapter-title{flex-wrap:wrap;gap:6px}.chapter-heading .button-row{margin-left:auto}.chapter-children{padding-left:6px}.estimate-table{min-width:0}.estimate-table tr{grid-template-columns:24px minmax(0,1fr) minmax(0,1fr) minmax(0,1fr);gap:10px;padding:14px 10px}.estimate-table td{padding:0;border:0;width:auto!important}.estimate-table td:nth-child(3){grid-column:2/-1}.estimate-table td:nth-child(4){grid-column:2}.estimate-table td:nth-child(5){grid-column:3}.estimate-table td:nth-child(6){grid-column:2/-1;justify-self:end;font-size:15px}.estimate-table td:nth-child(5):before{content:'Venta / ud.'}.estimate-table td:nth-child(6):before{content:'Importe venta'}.estimate-table .item-code{display:block}.cell-input{font-size:16px}.app-dialog,.app-dialog.wide-dialog{width:100vw;max-width:100vw;max-height:100dvh;height:auto;padding:18px 16px;border-radius:0;margin:auto 0}.dialog-header h2{font-size:20px}.detail-tabs button{padding:11px 8px;font-size:12px}.provenance-grid{gap:12px}.catalogue-add-bar .field:first-child{flex-basis:100%}.catalogue-add-bar .button{flex:1}.dialog-actions .dialog-actions-spacer{display:none}.dialog-actions .button{white-space:normal}.field-grid,.detail-grid{grid-template-columns:minmax(0,1fr)}.source-prose{padding:12px;font-size:14px}#authControls .button{font-size:11px}.button{white-space:normal;text-align:center}.toolbar{flex-wrap:wrap}.toolbar .search-field{flex-basis:100%}.control{flex:1;min-width:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Control boundaries meet 3:1 against white; warnings are not conveyed by colour alone. */
.field input,.field select,.field textarea,.control,.search-field,.cell-input{border-color:#91877a}
.supplier-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.supplier-item small{display:block;color:var(--muted);margin-top:5px}.settings-actions{display:flex;gap:12px;flex-wrap:wrap}
@media(min-width:681px){.mobile-nav-toggle{display:none}}
@media(max-width:680px){.supplier-item{align-items:stretch;flex-direction:column}.estimate-table td:nth-child(5)::before{content:'Venta / unidad'}.estimate-table td:nth-child(6)::before{content:'Importe venta'}}

#authControls [hidden]{display:none!important}
#authControls #authSettings{margin-left:auto}

.measurement-help{font-size:13px;margin:12px 0}.measurement-help summary{cursor:pointer;color:var(--orange-dark)}
@media(max-width:680px){.estimate-table tr{grid-template-columns:24px minmax(0,1fr) minmax(0,1fr)}}
/* Tables retain horizontal access; sale totals occupy a separate mobile row. */
.table-scroll{max-width:100%;overflow-x:auto}
.resource-table td:first-child{white-space:normal;min-width:180px;overflow-wrap:anywhere}
@media(max-width:680px){.estimate-table td:nth-child(6){grid-row:3;grid-column:2/-1}.estimate-table td:nth-child(6)::before{display:inline;margin-right:12px}.estimate-table td:nth-child(4),.estimate-table td:nth-child(5){min-width:0}.cell-input{height:38px}}

/* Shared review surfaces: summaries keep outstanding questions visible. */
.review-topic{border-bottom:1px solid var(--line);padding:12px 0}.review-topic>summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;font-size:14px}.review-topic>summary:before{content:'›';color:var(--orange-dark)}.review-topic[open]>summary:before{content:'⌄'}.review-topic>summary strong{flex:1}.review-topic>summary span{font-size:12px;color:var(--muted)}.review-topic fieldset{border:0;padding:8px 0;margin:8px 0}.related-items{margin-top:12px;font-size:13px}.related-items summary{cursor:pointer}.related-item{display:flex;align-items:flex-start;gap:8px;font-weight:400;padding:8px 0}.related-item span{min-width:0;overflow-wrap:anywhere}.related-item input{flex:none;margin-top:2px!important}
#commercialForm .field+.field{margin-top:14px}#signInForm{max-width:440px}#signInForm .field{margin:16px 0}#businessChoice{max-width:560px}.settings-actions .button{min-height:44px}
@media(max-width:680px){.review-topic>summary{flex-wrap:wrap}.review-topic>summary span{flex-basis:100%;padding-left:20px}.dialog-header h2{overflow-wrap:anywhere}.dialog-header{align-items:flex-start}.page-heading{flex-wrap:wrap}.heading-actions{justify-content:flex-start}.project-table td:nth-child(2){padding-left:0}.project-table td:nth-child(4){font-size:13px}.project-link strong{font-size:14px}.project-table tbody tr{padding:16px 12px}}

[role=alert]:not(:empty),#supplierStatus[data-state=error]{color:var(--red);background:#fff1ee;border-left:3px solid var(--red);padding:10px 12px;overflow-wrap:anywhere}#supplierStatus[data-state=saved]{color:var(--green);background:#eef7f0;padding:10px 12px}

/* Guidance shares existing workflows; no completion badges imply commercial approval. */
.quotation-guide { margin: 0 0 18px; padding: 14px 0; border-block: 1px solid var(--line); }
.journey-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.quotation-guide summary { cursor: pointer; padding: 8px 0; }
.quotation-guide ol { padding-left: 24px; margin-bottom: 0; }
.quotation-guide li { padding: 12px 0; border-top: 1px solid var(--line); }
.quotation-guide li p { margin: 5px 0 10px; max-width: 80ch; }
.quotation-guide .button { white-space: normal; overflow-wrap: anywhere; text-align: left; max-width: 100%; }
.quotation-guide summary:focus-visible { outline: 3px solid var(--orange-dark); outline-offset: 3px; }
@media(max-width:600px) { .journey-heading { align-items: stretch; flex-direction: column; } }

/* Isolated measurement capture, synthetic QA gate only. */
.capture-host { min-width: 0; overflow-wrap: anywhere; }
.capture-host fieldset { min-width: 0; margin: 1rem 0; padding: .75rem; }
.capture-host input:not([type=checkbox]), .capture-host textarea, .capture-host select { width: 100%; box-sizing: border-box; }
.capture-host pre { white-space: pre-wrap; overflow-wrap: anywhere; max-width: 100%; }
.capture-host button { margin: .25rem; white-space: normal; }
.capture-host section { margin-block: 1rem; }
.capture-host label { display: block; margin-block: .5rem; }

/* Access is a focused task, with readable controls at phone widths. */
.main-column,#view { min-width:0; }
.access-screen .app-shell { display:block; }
.access-screen .sidebar,.access-screen .mobile-nav-toggle { display:none; }
.access-screen .main-column { min-height:100dvh; }
.access-screen .main-content { width:100%; max-width:960px; margin-inline:auto; }
.access-screen .topbar { padding-inline:clamp(20px,5vw,48px); }
.access-screen .breadcrumb span { display:inline; }
.access-screen #workspaceIdentity:empty,.access-screen #authControls:empty { display:none; }
.access-screen #authSettings { display:none; }
.access-screen #authControls { border:0; padding:0; margin:0 0 24px; }
.access-panel { width:100%; max-width:480px; margin:clamp(20px,6vh,64px) auto 32px; padding:clamp(20px,4vw,36px); border:1px solid var(--line); border-radius:12px; background:var(--panel); }
.access-panel h1 { margin:8px 0 12px; font-size:clamp(26px,5vw,32px); line-height:1.2; letter-spacing:-.03em; }
.access-panel .access-eyebrow { margin:0; color:var(--orange-dark); font-size:12px; font-weight:600; }
.access-panel .access-intro { margin:0 0 28px; color:var(--muted); font-size:15px; line-height:1.6; }
.access-panel form { display:grid; gap:20px; min-width:0; }
.access-panel .field { gap:8px; font-size:14px; min-width:0; }
.access-panel input,.access-panel select { width:100%; max-width:100%; min-width:0; min-height:48px; font-size:16px; }
.access-panel .button { width:100%; min-height:48px; font-size:16px; justify-content:center; white-space:normal; }
.access-panel [role=alert] { margin:0; color:var(--red); font-size:14px; overflow-wrap:anywhere; }
.access-panel [role=alert]:empty { display:none; }
.access-panel details { margin-top:24px; padding-top:20px; border-top:1px solid var(--line); font-size:14px; }
.access-panel details summary { cursor:pointer; padding-block:4px; }
.access-panel details p { color:var(--muted); line-height:1.6; }
@media(max-width:680px) {
  #authControls { gap:8px; }
  #authControls>span { flex-basis:100%; overflow-wrap:anywhere; font-size:13px; }
  #authControls .button { min-height:44px; padding:10px 12px; font-size:13px; }
  #authControls #authSettings { margin-left:0; }
  .access-screen #authControls>span { flex:1; min-width:0; }
  .access-screen .main-content { padding:20px 16px 32px; }
  .access-panel { margin-top:16px; }
  .field input,.field select,.field textarea,.cell-input,.measure-row input,.search-field input,.control { font-size:16px; }
  .app-footer { overflow-wrap:anywhere; }
}
