/* Shared workspace: horizontal navigation and focused task panels. */
:root{color-scheme:light;--bg:#f4f7fa;--surface:#fff;--surface-raised:#f8fafc;--field-bg:#fff;--ink:#122d43;--muted:#596f82;--line:#dce6ee;--accent:#007e78;--on-accent:#fff;--soft:#e8f5f2;--warn:#80550e;--warnbg:#fff1d7;--shadow:0 24px 80px #102d4326;--demo-bg:#fff4d9;--demo-ink:#624a16;--demo-line:#e4ca8d;--demo-badge:#f4e4b6;--radius:18px;font:clamp(14px,calc(12px + .2vw),16px)/1.55 "Segoe UI",Arial,sans-serif}
:root[data-theme=dark]{color-scheme:dark;--bg:#0a1520;--surface:#132636;--surface-raised:#183043;--field-bg:#102131;--ink:#edf5fa;--muted:#a5bacb;--line:#304b5f;--accent:#70e0cb;--on-accent:#092c29;--soft:#153e3c;--warn:#f3cc84;--warnbg:#392f1e;--shadow:0 24px 80px #0008;--demo-bg:#30291c;--demo-ink:#f2d596;--demo-line:#665337;--demo-badge:#493b24}
body{background:radial-gradient(ellipse at 90% 0%,#74b7c212,transparent 45%),var(--bg)}
body.locked .app-header{display:none}
.app-header{position:relative;z-index:12;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 4px 20px #12334805}
.app-header .topbar{height:auto;min-height:76px;padding:13px 32px;gap:24px;border:0;flex-wrap:wrap}
.topbar>.brand{color:var(--ink);font-size:30px;line-height:1;letter-spacing:-1.8px;flex:0 0 auto;display:flex;align-items:center;gap:5px}
.topbar>.brand span{color:var(--accent);font-size:30px}
.app-header .session-info{margin-right:auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.app-header #organization-switch{width:auto;max-width:300px;border:0;padding:3px 20px 3px 0;background:transparent;font-weight:600;font-size:13px}
.app-header #session-user{font-size:10px;letter-spacing:.15px}
.app-header .top-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.app-header .top-actions button{min-height:36px;padding:7px 11px;font-size:11px}
.app-header .theme-label{font-size:0;gap:0}.app-header .theme-label select{width:98px;padding:7px 9px;min-height:36px;font-size:11px}
.sidebar.horizontal-navigation{position:static;inset:auto;width:100%;height:auto;min-height:0;max-height:none;padding:0 32px;background:var(--surface);color:var(--muted);overflow:visible;display:block;border:0}
.sidebar.horizontal-navigation>p,.sidebar.horizontal-navigation>.sidebar-footer{display:none}
.primary-menu{display:flex;gap:6px;overflow-x:auto;max-width:100%;padding:2px 0 10px;scrollbar-width:thin;align-items:center}
.primary-menu-item{flex:0 0 auto;padding:10px 16px;min-height:40px;white-space:nowrap;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);font-size:12px;font-weight:650;transition:background .15s,color .15s}
.primary-menu-item{display:inline-flex;align-items:center;gap:8px}.primary-menu-item svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.primary-menu-item:hover{background:var(--bg);color:var(--ink)}
.primary-menu-item[aria-pressed=true]{background:var(--ink);color:var(--surface);box-shadow:0 3px 8px #12334816}
:root[data-theme=dark] .primary-menu-item[aria-pressed=true]{background:var(--accent);color:#0c302e}
.sidebar.horizontal-navigation nav{display:flex;gap:4px;padding:0;margin:0;border-top:1px solid var(--line);min-width:0;overflow-x:auto;scrollbar-width:thin;max-width:100%}
.sidebar.horizontal-navigation nav a{display:flex;flex:0 0 auto;align-items:center;gap:7px;white-space:nowrap;font-size:12px;padding:12px 13px;margin:0;border-radius:0;border-bottom:3px solid transparent;min-height:43px;color:var(--muted)}
.sidebar.horizontal-navigation nav a:hover{color:var(--ink);background:var(--bg)}
.sidebar.horizontal-navigation nav a.active{color:var(--accent);background:transparent;border-bottom-color:var(--accent);font-weight:650}
.sidebar nav [data-context-hidden=true]{display:none!important}
.workspace{margin-left:0}.workspace main{width:100%;max-width:none;padding:clamp(20px,2vw,36px) clamp(18px,2.2vw,48px) 48px;margin:0;min-width:0}
.heading{margin-bottom:24px;align-items:center}.heading h1{font-size:34px;line-height:1.2;font-weight:650;letter-spacing:-1.25px;margin:6px 0 8px}.heading .eyebrow{color:var(--accent);font-weight:700;letter-spacing:2px}.heading .muted{font-size:13px;max-width:750px}
.hero{border-radius:22px;padding:26px 32px;min-height:210px;background:linear-gradient(115deg,#102b40,#164a5b);margin-bottom:24px;box-shadow:0 12px 28px #102d4310}.hero h2{font-size:32px;font-weight:550}.hero img{max-height:165px}
.metrics{gap:18px;margin:22px 0 28px}.metrics article{border:1px solid var(--line);border-radius:16px;padding:18px 22px;background:var(--surface);position:relative;box-shadow:0 4px 14px #12334804}.metrics article:before{content:'';position:absolute;left:0;top:24%;height:52%;width:3px;background:var(--accent);border-radius:2px}.metrics strong{font-size:31px}.metrics span{font-size:12px}
.connector-card{border-radius:var(--radius);padding:24px;background:var(--surface);box-shadow:0 4px 18px #12334804;border-color:var(--line)}
.primary{background:var(--accent);box-shadow:0 3px 9px #007e7818}.primary:hover{filter:brightness(1.06)}.secondary:hover{border-color:var(--accent);background:var(--soft)}
.page-tabs{display:flex;gap:5px;overflow-x:auto;max-width:100%;padding:7px;margin:0 0 24px;background:var(--surface);border:1px solid var(--line);border-radius:14px;scrollbar-width:thin}
.page-tabs{position:sticky;top:8px;z-index:10;box-shadow:0 4px 12px #12334806}
.page-tabs button{flex:0 0 auto;white-space:nowrap;min-height:40px;padding:9px 16px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-size:12px;font-weight:600}
.page-tabs button[aria-selected=true]{color:var(--accent);background:var(--soft);box-shadow:inset 0 0 0 1px #007e7810}
.page-panel{min-width:0}.page-panel>.connector-card+.connector-card{margin-top:20px}.page-panel>.ai-workspace:first-child{margin-top:0}.page-panel>.admin-section-title{margin-top:22px}
.page-panel table{border-radius:13px;overflow:hidden}.page-panel .timeline{max-height:520px;overflow:auto}
.page-panel .ai-run-list{max-height:260px;overflow:auto;align-content:start}.agent-grid{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:16px}.agent-grid article{border-top:3px solid var(--accent)}
.policy-selector{margin:16px 0 4px;max-width:430px}.policy-selector select{margin-top:6px}
.rbac-settings .license-modules{max-height:460px;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.file-dropzone{padding:22px;border:1.5px dashed #6aafa9;border-radius:14px;background:linear-gradient(120deg,var(--soft),var(--surface));font-weight:650;gap:12px!important;min-width:0}.file-dropzone input{background:var(--surface);border:1px solid var(--line);font-size:13px;font-weight:400}.file-dropzone input::file-selector-button{border:0;border-radius:7px;padding:9px 14px;margin-right:12px;background:var(--accent);color:var(--on-accent);font-weight:600;cursor:pointer}.file-dropzone small{font-weight:400;font-size:12px}
.upload-heading{display:flex;gap:16px;align-items:center}.upload-heading strong{display:block;font-size:18px;letter-spacing:-.35px}.upload-heading small{display:block;margin-top:5px;color:var(--muted)}.upload-glyph{width:58px;height:58px;color:var(--accent);flex:0 0 58px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:8px}
.demo-ocr-samples{background:linear-gradient(115deg,var(--soft),var(--surface));margin-bottom:20px}.demo-ocr-samples h2{font-size:19px}.demo-ocr-samples .tracking-controls{display:flex;flex-wrap:wrap}.demo-ocr-samples .tracking-controls button{flex:1;min-width:min(220px,100%)}
.form-grid label:has(>input[type=checkbox]){display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-size:12px}.form-grid input[type=checkbox]{width:17px;height:17px;min-width:17px;margin:2px 0;flex:0 0 17px}.ocr-options{border:1px solid var(--line);border-radius:12px;padding:10px 16px;background:var(--bg)}.ocr-options summary{font-size:12px;font-weight:600;cursor:pointer;min-height:28px;line-height:28px}.ocr-options .form-grid{margin-top:14px}.ocr-options[open]{padding-bottom:16px}#extraction-confirmation{scroll-margin-top:24px}
.extraction-source{top:20px}.extraction-source [data-source-view]{max-height:720px;overflow:auto}.extraction-fields [data-field-results]{max-height:760px;overflow:auto;padding-right:6px}
#demo-banner{border-bottom:1px solid var(--demo-line);background:var(--demo-bg);color:var(--demo-ink);padding:10px 34px;font-size:11px;display:flex;align-items:center;gap:14px;flex-wrap:wrap}#demo-banner strong{font-size:10px;padding:3px 8px;border-radius:5px;background:var(--demo-badge)}#demo-banner a{margin-left:auto}
.local-note{margin-top:28px;border-top:1px solid var(--line);padding-top:16px;font-size:11px;color:var(--muted)}
@media(min-width:1050px){.app-header .topbar{flex-wrap:nowrap}}
@media(min-width:761px){.app-header{position:sticky;top:0}.page-tabs{top:calc(var(--app-header-height,176px) + 8px)}}
@media(max-width:760px){.app-header .topbar{padding:14px 18px;gap:12px}.topbar>.brand{font-size:27px}.app-header .session-info{flex:1;min-width:140px}.app-header #organization-switch{max-width:100%;width:100%;font-size:12px}.app-header .top-actions{width:100%;gap:6px}.app-header .top-actions .theme-label{margin-left:auto}.sidebar.horizontal-navigation{padding:0 16px}.primary-menu{gap:3px;padding-bottom:7px}.primary-menu-item{padding:9px 13px;font-size:12px}.sidebar.horizontal-navigation nav a{padding:11px 12px;font-size:11px}.workspace main{padding:24px 18px 36px}.heading{align-items:flex-start;gap:10px}.heading h1{font-size:28px}.heading>.primary{font-size:11px;padding:9px 12px;white-space:nowrap}.hero{padding:23px;min-height:180px}.hero h2{font-size:27px}.hero img{max-height:140px}.connector-card{padding:20px}.page-tabs{margin-bottom:20px;padding:5px}.page-tabs button{padding:8px 12px;font-size:11px}.metrics{gap:10px}.metrics article{padding:16px}.metrics strong{font-size:26px}.file-dropzone{padding:17px}.extraction-source [data-source-view],.extraction-fields [data-field-results]{max-height:560px}#demo-banner{padding:10px 18px;gap:7px}#demo-banner a{margin-left:0}}
@media(max-width:420px){.heading{flex-wrap:wrap}.metrics{grid-template-columns:1fr}.metrics article{display:flex;justify-content:space-between;align-items:center}.metrics strong{margin:0}.page-tabs{border-radius:11px}.app-header .top-actions button{font-size:10px;padding:7px 9px}.file-dropzone input{font-size:11px;padding:8px}.file-dropzone input::file-selector-button{padding:8px;margin-right:6px}}

/* Fluid sizing belongs to the viewport; the application never changes browser zoom. */
html{width:100%;min-width:0;scrollbar-gutter:stable}body,.workspace,.app-header,#records{width:100%;min-width:0;max-width:100%}
.workspace main>*{min-width:0;max-width:100%}
:where(.connector-grid,.admin-grid,.metrics,.mail-providers,.demo-tour,.portal-layout,.form-grid,.extraction-workspace)>*{min-width:0}
.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-grid,.connector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
input,select,textarea{background:var(--field-bg);color:var(--ink);color-scheme:inherit}
option,optgroup{background:var(--surface);color:var(--ink)}
.primary{color:var(--on-accent)}
.muted{font-size:.875rem}.form-grid label,.sidebar.horizontal-navigation nav a,.primary-menu-item,.page-tabs button,table{font-size:.875rem}
th{font-size:.8125rem}.app-header #session-user{font-size:.75rem}.app-header #organization-switch{font-size:.875rem}.app-header .top-actions button{font-size:.8125rem}
.document-versions small,.connector-card small{font-size:.75rem}
button,summary,p,label,dd,.document-card strong{overflow-wrap:anywhere}
.workspace #records>.document-cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));align-items:start;gap:20px}
.workspace #records>.document-cards>section{min-width:0}.document-card{min-width:0;height:100%}
.document-share select{min-width:0}.document-share{flex-wrap:wrap}
.upload-heading>span{min-width:0}.upload-heading strong{font-size:clamp(16px,1.2vw,20px)}
.ocr-image-scroll{background:var(--surface-raised)}
@media(min-width:1900px){.workspace main{padding-inline:2.5vw}.agent-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}}
@media(max-width:850px){.admin-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:760px){.app-header .topbar{column-gap:12px;row-gap:10px}.app-header .session-info{flex:1 1 160px}.app-header .top-actions{justify-content:flex-start;max-width:100%}.app-header .top-actions button{max-width:100%;min-height:40px}.app-header .theme-label{flex:0 0 auto}.sidebar.horizontal-navigation nav{justify-content:flex-start}.form-grid,.connector-grid{grid-template-columns:minmax(0,1fr)}.form-grid .full{grid-column:1/-1}.heading .muted{max-width:none}.upload-glyph{width:46px;height:46px;flex-basis:46px}.upload-heading{gap:10px}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.app-header .top-actions .theme-label{margin-left:0}.app-header .top-actions{gap:7px}.app-header .top-actions button{flex:1 1 auto}.app-header .top-actions select{max-width:100%}.detail-grid{grid-template-columns:minmax(0,1fr)}.dialog-footer{flex-wrap:wrap}.dialog-footer button{flex:1 1 auto}}
