*, *::before, *::after { box-sizing: border-box; }
[hidden] { display:none !important; }
:root { --navy:#0f1e38; --navy-mid:#1a3056; --blue:#1d6fbf; --blue-lt:#2d8de8; --accent:#f0a500; --success:#177b57; --error:#c93434; --bg:#f4f6fa; --surface:#fff; --surface-soft:#fbfcff; --border:#dce3ef; --text:#1a2438; --muted:#6b7a96; --header:var(--navy); --header-hover:rgba(255,255,255,.08); --on-header:#fff; --on-header-muted:rgba(255,255,255,.68); --logo-sub:rgba(255,255,255,.5); --secondary-btn-bg:#0f1e38; --secondary-btn-hover:#1a3056; --hover-border:#b8cce5; --hover-bg:#eef4fd; --blue-soft:#e8f1fb; --amber-soft:#fef4e0; --amber-text:#9b6900; --ready-bg:#e2f5ec; --ready-text:#116844; --prototype-bg:#fef1d4; --prototype-text:#8a5c00; --planned-bg:#edf0f5; --note-bg:#fffaf0; --notice-bg:#fff4d9; --notice-text:#735000; --success-bg:#edfaf4; --success-border:#9fe0c5; --error-bg:#fdf0f0; --error-border:#f0b8b8; --loading-bg:#eef4fd; --loading-border:#c3d9f5; --shadow:rgba(29,111,191,.12); --font:'Segoe UI',Arial,system-ui,sans-serif; --mono:'Cascadia Mono','SFMono-Regular',Consolas,monospace; color-scheme:light; }
[data-theme="dark"] { --navy:#e7eefc; --navy-mid:#c8d5ec; --blue:#74b7ff; --blue-lt:#9dccff; --accent:#f6bc45; --success:#6ed5aa; --error:#ff8c8c; --bg:#0e1421; --surface:#151d2c; --surface-soft:#111827; --border:#2d3a50; --text:#edf3ff; --muted:#a9b6ca; --header:#08101f; --header-hover:rgba(116,183,255,.16); --on-header:#f8fbff; --on-header-muted:rgba(248,251,255,.72); --logo-sub:rgba(248,251,255,.55); --secondary-btn-bg:#263a59; --secondary-btn-hover:#315070; --hover-border:#4e6686; --hover-bg:#1d2b42; --blue-soft:#18345a; --amber-soft:#3b2b12; --amber-text:#f2c36b; --ready-bg:#123829; --ready-text:#8ce6be; --prototype-bg:#3d2c10; --prototype-text:#f4c76e; --planned-bg:#243044; --note-bg:#2b2417; --notice-bg:#342710; --notice-text:#f0c46c; --success-bg:#123829; --success-border:#2e8b66; --error-bg:#3b1e24; --error-border:#8f4650; --loading-bg:#172b45; --loading-border:#315f92; --shadow:rgba(0,0,0,.34); color-scheme:dark; }
html { font-size:16px; scroll-behavior:smooth; }
body { margin:0; min-height:100vh; display:flex; flex-direction:column; background:var(--bg); color:var(--text); font-family:var(--font); line-height:1.5; -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
svg { width:20px; height:20px; }
.sr-only { width:1px; height:1px; margin:-1px; padding:0; position:absolute; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.site-header { min-height:64px; padding:0 2rem; display:flex; align-items:center; gap:1.25rem; position:sticky; top:0; z-index:10; border-bottom:1px solid rgba(255,255,255,.1); background:var(--header); box-shadow:0 6px 24px rgba(0,0,0,.16); }
.logo { display:flex; align-items:center; gap:.75rem; color:var(--on-header); text-decoration:none; }
.logo:focus-visible { border-radius:8px; outline:3px solid rgba(116,183,255,.45); outline-offset:4px; }
.logo-icon { width:36px; height:36px; display:grid; place-items:center; flex:none; border-radius:8px; background:var(--blue); }
.logo-icon svg { fill:var(--on-header); }
.logo-text { display:flex; flex-direction:column; line-height:1.1; }
.logo-title { font-size:.95rem; font-weight:600; }
.logo-sub { color:var(--logo-sub); font-size:.68rem; letter-spacing:.04em; text-transform:uppercase; }
.language-select { display:flex; align-items:center; gap:.45rem; flex:none; color:var(--muted); font-size:.72rem; font-weight:600; }
.language-select label { color:var(--muted); }
.language-select select { min-height:34px; max-width:150px; padding:.35rem .55rem; border:1px solid var(--border); border-radius:6px; color:var(--text); background:var(--surface); font:600 .76rem var(--font); }
.language-select select:focus { outline:3px solid rgba(116,183,255,.45); outline-offset:2px; }
.language-select option { color:#1a2438; background:#fff; }
.header-context { max-width:260px; margin-left:auto; padding-left:1rem; display:flex; flex-direction:column; align-items:flex-end; border-left:1px solid rgba(255,255,255,.14); line-height:1.2; }
.context-org { max-width:100%; overflow:hidden; color:var(--on-header); font-size:.78rem; font-weight:600; text-overflow:ellipsis; white-space:nowrap; }
.context-role { max-width:100%; overflow:hidden; color:var(--on-header-muted); font:500 .64rem var(--mono); letter-spacing:.04em; text-transform:uppercase; text-overflow:ellipsis; white-space:nowrap; }
.tool-launcher { width:46px; height:38px; display:flex; align-items:center; gap:.35rem; overflow:hidden; flex:none; border:1px solid rgba(255,255,255,.18); border-radius:999px; color:var(--on-header); background:rgba(255,255,255,.08); transition:width .18s ease, background .18s ease, border-color .18s ease; }
.tool-launcher:focus-within,.tool-launcher:hover,.tool-launcher.is-open { width:230px; border-color:rgba(255,255,255,.34); background:rgba(255,255,255,.13); }
.tool-launcher-icon { width:44px; display:grid; place-items:center; flex:0 0 44px; color:var(--on-header-muted); }
.tool-launcher input { min-width:0; width:100%; height:100%; padding:0 .1rem; border:0; color:var(--on-header); background:transparent; font:600 .82rem var(--font); text-transform:uppercase; outline:0; }
.tool-launcher input::placeholder { color:var(--on-header-muted); opacity:1; }
.tool-launcher button { min-width:58px; height:28px; margin-right:.35rem; padding:0 .55rem; border:0; border-radius:999px; color:var(--navy); background:var(--accent); font:700 .68rem var(--mono); cursor:pointer; }
.tool-launcher button:hover,.tool-launcher button:focus-visible { filter:brightness(1.05); outline:0; }
.site-nav { display:flex; flex:none; gap:.25rem; }
.site-nav a { min-height:36px; padding:.55rem .7rem; position:relative; display:inline-flex; align-items:center; border-radius:6px; color:var(--on-header-muted); font-size:.82rem; font-weight:500; text-decoration:none; }
.site-nav a:hover,.site-nav a[aria-current="page"] { color:var(--on-header); background:var(--header-hover); }
.site-nav a[aria-current="page"] { box-shadow:inset 0 0 0 1px rgba(255,255,255,.14); }
.site-nav a[aria-current="page"]::after { content:""; height:2px; position:absolute; right:.7rem; bottom:2px; left:.7rem; border-radius:999px; background:var(--accent); }
.site-nav a:focus-visible { color:var(--on-header); background:var(--header-hover); outline:3px solid rgba(116,183,255,.42); outline-offset:2px; }
.account-menu { position:relative; flex:none; }
.account-menu-button { width:40px; height:40px; padding:0; display:grid; place-items:center; border:1px solid rgba(255,255,255,.22); border-radius:999px; color:var(--on-header); background:rgba(255,255,255,.1); cursor:pointer; }
.account-menu-button:hover,.account-menu-button:focus-visible { background:var(--header-hover); outline:0; }
.account-menu-button:focus-visible { box-shadow:0 0 0 3px rgba(116,183,255,.42); }
.account-avatar { width:30px; height:30px; display:grid; place-items:center; border-radius:999px; color:var(--navy); background:var(--accent); font:700 .78rem var(--mono); letter-spacing:.02em; }
.account-menu-panel { width:min(320px,calc(100vw - 2rem)); padding:1.1rem; position:absolute; top:calc(100% + .7rem); right:0; display:grid; gap:.9rem; border:1px solid var(--border); border-radius:12px; color:var(--text); background:var(--surface); box-shadow:0 20px 48px rgba(0,0,0,.24); }
.account-menu-panel[hidden] { display:none; }
.account-menu-panel::before { content:""; width:.8rem; height:.8rem; position:absolute; top:-.45rem; right:.9rem; border-top:1px solid var(--border); border-left:1px solid var(--border); background:var(--surface); transform:rotate(45deg); }
.account-summary { min-width:0; padding-bottom:.75rem; display:grid; gap:.2rem; border-bottom:1px solid var(--border); line-height:1.3; }
.account-summary strong { overflow:hidden; color:var(--navy); font-size:.9rem; text-overflow:ellipsis; white-space:nowrap; }
.account-summary span { overflow:hidden; color:var(--muted); font-size:.74rem; text-overflow:ellipsis; white-space:nowrap; }
.account-setting { min-width:0; display:grid; grid-template-columns:minmax(84px,.8fr) minmax(0,1.2fr); gap:.75rem; align-items:center; color:var(--muted); font-size:.76rem; font-weight:600; }
.account-setting>span:first-child,.account-setting>label { color:var(--muted); }
.account-setting select,.guidance-select select { width:100%; min-height:34px; padding:.35rem .55rem; border:1px solid var(--border); border-radius:6px; color:var(--text); background:var(--surface); font:600 .76rem var(--font); }
.account-setting select:focus,.guidance-select select:focus { outline:3px solid rgba(116,183,255,.35); outline-offset:2px; }
.account-menu-actions { margin-top:.1rem; padding-top:.75rem; display:grid; gap:.25rem; border-top:1px solid var(--border); }
.account-menu-actions a { min-height:34px; padding:.5rem .55rem; display:flex; align-items:center; border-radius:6px; color:var(--blue); font-size:.8rem; font-weight:600; text-decoration:none; }
.account-menu-actions a:hover,.account-menu-actions a:focus-visible { background:var(--hover-bg); outline:0; }
.demo-environment-banner { padding:.5rem 1rem; border-bottom:1px solid rgba(115,80,0,.18); color:#4d3500; background:#ffe39b; text-align:center; font:600 .7rem var(--mono); letter-spacing:.045em; text-transform:uppercase; }
.page-wrap { width:100%; max-width:800px; flex:1; margin:0 auto; padding:2.5rem 1.5rem 4rem; }
.page-wrap.wide { max-width:1050px; }
.page-title { margin-bottom:2rem; }
.page-title h1 { max-width:820px; margin:.25rem 0 0; color:var(--navy); font-size:clamp(1.65rem,3vw,2rem); line-height:1.2; letter-spacing:-.018em; }
.page-title p { margin:.45rem 0 0; color:var(--muted); font-weight:300; }
.tool-launcher-notice { margin:-.75rem 0 1.5rem; padding:.75rem 1rem; border:1px solid var(--notice-bg); border-radius:8px; color:var(--notice-text); background:var(--notice-bg); }
.tool-launcher-notice p { margin:0; font-size:.84rem; line-height:1.45; }
.eyebrow { color:var(--blue)!important; font:500 .75rem var(--mono)!important; letter-spacing:.08em; text-transform:uppercase; }
.back-link { display:inline-block; margin-bottom:.75rem; color:var(--blue); font-size:.82rem; text-decoration:none; }
.week-label { display:inline-block; margin-top:.75rem; padding:.3rem .7rem; border-radius:4px; color:var(--blue); background:var(--blue-soft); font:400 .75rem var(--mono); }
.category-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; align-items:stretch; }
.tool-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.tool-section+.tool-section { margin-top:3rem; padding-top:2.25rem; border-top:1px solid var(--border); }
.tool-section-heading { margin-bottom:1rem; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; }
.tool-section-heading h2 { margin:.2rem 0 0; color:var(--navy); font-size:1.3rem; }
.tool-section-heading p:not(.eyebrow) { max-width:600px; margin:.35rem 0 0; color:var(--muted); font-size:.84rem; line-height:1.5; }
.tool-section-heading>a { flex:none; color:var(--blue); font-size:.82rem; font-weight:600; text-decoration:none; }
.testing-tools .tool-card { background:var(--surface-soft); }
.converter-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.converter-launch-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; align-items:stretch; }
.converter-launch-grid.data-tool-grid { align-items:stretch; }
.converter-hero { margin-bottom:1.5rem; padding:1.5rem; display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); gap:1.25rem; align-items:end; border:1px solid var(--border); border-radius:12px; background:var(--surface); box-shadow:0 10px 28px rgba(15,30,56,.06); }
.converter-hero-copy h1 { margin:.25rem 0 0; color:var(--navy); font-size:2rem; line-height:1.15; }
.converter-hero-copy p:not(.eyebrow) { max-width:640px; margin:.55rem 0 0; color:var(--muted); font-size:.94rem; line-height:1.55; }
.converter-hero-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }
.converter-hero-stats div { min-width:0; padding:.85rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.converter-hero-stats strong { display:block; color:var(--blue); font-size:1.25rem; line-height:1; }
.converter-hero-stats span { display:block; margin-top:.35rem; color:var(--muted); font:600 .62rem var(--mono); letter-spacing:.05em; text-transform:uppercase; line-height:1.35; }
.converter-category-hero { align-items:start; }
.category-hero-simple { grid-template-columns:1fr; align-items:start; }
.converter-hero-note { margin:0; align-self:stretch; }
.converter-column { min-width:0; display:flex; flex-direction:column; gap:1.25rem; }
.tool-card { min-height:260px; padding:1.6rem; position:relative; display:flex; flex-direction:column; border:1px solid var(--border); border-radius:14px; color:inherit; background:var(--surface); text-decoration:none; transition:.2s ease; }
.tool-card:hover,.tool-card:focus-visible { transform:translateY(-3px); border-color:var(--hover-border); box-shadow:0 10px 28px var(--shadow); }
.tool-card:focus-visible { outline:3px solid rgba(29,111,191,.2); outline-offset:3px; }
.tool-card h2 { margin:1.35rem 0 .4rem; color:var(--navy); font-size:1.2rem; }
.tool-card p { margin:0; color:var(--muted); font-size:.9rem; line-height:1.55; }
.category-card { min-height:255px; padding:1.35rem; position:relative; display:flex; flex-direction:column; border:1px solid var(--border); border-radius:12px; color:inherit; background:var(--surface); text-decoration:none; transition:.2s ease; }
.category-card:hover,.category-card:focus-visible { transform:translateY(-3px); border-color:var(--hover-border); box-shadow:0 10px 28px var(--shadow); }
.category-card:focus-visible { outline:3px solid rgba(29,111,191,.2); outline-offset:3px; }
.category-card h2 { margin:1.2rem 0 .4rem; color:var(--navy); font-size:1.1rem; line-height:1.25; }
.category-card p { margin:0; color:var(--muted); font-size:.84rem; line-height:1.5; }
.category-card>.status-tags { position:absolute; top:1.35rem; right:1.35rem; max-width:calc(100% - 5rem); }
.category-card-tools { margin-top:1rem; display:flex; flex-wrap:wrap; gap:.4rem; }
.category-card-tools span { padding:.28rem .52rem; border:1px solid var(--border); border-radius:999px; color:var(--muted); background:var(--surface-soft); font:500 .68rem var(--mono); }
.card-link { margin-top:auto; padding-top:1.4rem; color:var(--blue); font-size:.86rem; font-weight:600; }
.daily-desk { margin-bottom:2.5rem; padding:1.2rem; border:1px solid var(--border); border-radius:12px; background:var(--surface); box-shadow:0 10px 26px rgba(15,30,56,.05); }
.daily-desk-heading { margin-bottom:1rem; display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; }
.daily-desk-heading h2 { margin:.2rem 0 0; color:var(--navy); font-size:1.18rem; line-height:1.3; }
.daily-desk-heading>a { flex:none; color:var(--blue); font-size:.82rem; font-weight:600; text-decoration:none; }
.daily-desk-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; }
.daily-desk-item { min-width:0; padding:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.daily-desk-item h3 { margin:.55rem 0 .25rem; color:var(--navy); font-size:.92rem; line-height:1.3; }
.daily-desk-item p { margin:0; color:var(--muted); font-size:.78rem; line-height:1.45; overflow-wrap:anywhere; }
.daily-desk-item a { display:inline-flex; margin-top:.65rem; color:var(--blue); font-size:.78rem; font-weight:600; text-decoration:none; }
.dashboard-priority-strip { margin-top:1.25rem; padding-top:1.2rem; border-top:1px solid var(--border); }
.dashboard-priority-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.dashboard-priority-card { min-width:0; min-height:190px; padding:1.25rem; display:flex; flex-direction:column; justify-content:space-between; gap:1.25rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); box-shadow:0 8px 22px rgba(15,30,56,.05); }
.dashboard-priority-card h2 { margin:.85rem 0 .35rem; color:var(--navy); font-size:1.05rem; line-height:1.25; }
.dashboard-priority-card p { margin:0; color:var(--muted); font-size:.86rem; line-height:1.5; }
.dashboard-priority-card .dashboard-priority-evidence { margin-top:.65rem; color:var(--text); font-size:.78rem; }
.dashboard-priority-footer { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.dashboard-priority-footer span { color:var(--muted); font:500 .7rem var(--mono); letter-spacing:.04em; text-transform:uppercase; }
.dashboard-priority-footer a { flex:none; color:var(--blue); font-size:.84rem; font-weight:600; text-decoration:none; }
.dashboard-priority-footer .task-action-links { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:.45rem .7rem; text-transform:none; letter-spacing:0; }
.task-action-links a+a { color:var(--muted); }
.status-tags { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.35rem; }
.tool-card>.status-tags { position:absolute; top:1.6rem; right:1.6rem; max-width:calc(100% - 5.2rem); }
.status-tag { display:inline-block; width:max-content; padding:.25rem .52rem; border:1px solid transparent; border-radius:999px; font:600 .63rem var(--mono); line-height:1.25; text-transform:uppercase; letter-spacing:.045em; }
.tool-card>.status-tag { position:absolute; top:1.6rem; right:1.6rem; }
.status-label { margin-right:.3rem; font-weight:700; }
.status-tag.ready { border-color:color-mix(in srgb,var(--ready-text) 18%,transparent); color:var(--ready-text); background:var(--ready-bg); }
.status-tag.prototype { border-color:color-mix(in srgb,var(--prototype-text) 18%,transparent); color:var(--prototype-text); background:var(--prototype-bg); }
.status-tag.planned { border-color:color-mix(in srgb,var(--muted) 16%,transparent); color:var(--muted); background:var(--planned-bg); }
.card { margin-bottom:1.25rem; overflow:hidden; border:1px solid var(--border); border-radius:12px; background:var(--surface); }
.card-header { padding:1.25rem 1.5rem 0; display:flex; align-items:flex-start; gap:1rem; }
.card-icon { width:42px; height:42px; display:grid; place-items:center; flex:none; border-radius:10px; font-weight:600; }
.card-icon.blue { color:var(--blue); background:var(--blue-soft); }
.card-icon.amber { color:var(--amber-text); background:var(--amber-soft); }
.card-meta { flex:1; }
.card-meta h2 { margin:.15rem 0 0; color:var(--navy); font-size:1.05rem; }
.card-meta p { margin:.25rem 0 0; color:var(--muted); font-size:.85rem; line-height:1.5; }
.card-meta .status-tag { margin-bottom:.45rem; }
.card-body { padding:1.25rem 1.5rem 1.5rem; }
.converter-card { margin-bottom:0; }
.converter-card.featured { min-height:455px; }
.converter-card.category-featured { display:flex; flex-direction:column; }
.converter-card.category-featured .card-body { margin-top:auto; }
.converter-card.muted-tool { min-height:145px; margin-bottom:0; opacity:.78; }
.converter-card.tool-launch { opacity:1; transition:.18s ease; }
.converter-card.tool-launch:hover { transform:translateY(-2px); border-color:var(--hover-border); box-shadow:0 10px 26px var(--shadow); }
.converter-card.tool-launch:focus-within { outline:3px solid rgba(29,111,191,.18); outline-offset:3px; border-color:var(--hover-border); }
.converter-launch-grid .converter-card { min-height:300px; }
.data-tool-grid .converter-card { min-height:300px; }
.converter-launch-grid .card-header { padding:1.2rem 1.2rem 0; gap:.85rem; }
.converter-launch-grid .card-body { padding:1rem 1.2rem 1.2rem; }
.converter-section-divider { grid-column:1/-1; margin:.25rem 0; display:flex; align-items:center; gap:1rem; color:var(--muted); font:500 .72rem var(--mono); letter-spacing:.06em; text-transform:uppercase; }
.converter-section-divider::before,.converter-section-divider::after { content:""; height:1px; flex:1; background:var(--border); }
.category-overview-card .card-icon { width:48px; }
.tool-launch-link { min-height:100%; display:flex; flex:1; flex-direction:column; color:inherit; text-decoration:none; }
.tool-launch-link .card-body { display:flex; flex:1; flex-direction:column; }
.tool-detail { margin:0 0 1rem; color:var(--muted); font-size:.84rem; line-height:1.55; }
.converter-note { margin:0 0 1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.converter-note summary,.converter-note h2 { margin:0; padding:.62rem .75rem; color:var(--muted); font:600 .7rem var(--mono); letter-spacing:.04em; text-transform:uppercase; cursor:pointer; }
.converter-note h2 { cursor:default; }
.converter-note p { margin:0; padding:0 .75rem .75rem; color:var(--muted); font-size:.78rem; line-height:1.5; }
.planned-action { margin-top:auto; display:inline-flex; width:max-content; color:var(--muted); font:500 .72rem var(--mono); text-transform:uppercase; letter-spacing:.04em; }
.converter-column-primary .muted-tool { flex:1; }
.converter-column-secondary.dense { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; }
.admin-tool-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; align-items:stretch; }
.admin-tool-card { min-height:235px; margin-bottom:0; }
.admin-tool-card .card-header { padding:1rem 1rem 0; gap:.75rem; }
.admin-tool-card .card-icon { width:40px; height:40px; font-size:.78rem; }
.admin-tool-card .card-meta h2 { font-size:.98rem; line-height:1.25; }
.admin-tool-card .card-meta p { font-size:.8rem; }
.admin-tool-card .card-body { padding:1rem; }
.admin-data-panel .card-meta p { overflow-wrap:anywhere; }
.admin-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; }
.admin-summary-item { min-height:92px; padding:1rem; display:flex; flex-direction:column; justify-content:space-between; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.admin-summary-item span { color:var(--muted); font:500 .72rem var(--mono); letter-spacing:.04em; text-transform:uppercase; overflow-wrap:anywhere; }
.admin-summary-item strong { color:var(--navy); font-size:1.55rem; line-height:1; }
.admin-table-wrap { width:100%; overflow-x:auto; border:1px solid var(--border); border-radius:8px; }
.admin-data-table { width:100%; min-width:760px; border-collapse:collapse; font-size:.82rem; }
.admin-data-table th,.admin-data-table td { padding:.7rem .8rem; border-bottom:1px solid var(--border); text-align:left; vertical-align:top; }
.admin-data-table th { color:var(--muted); background:var(--surface-soft); font:600 .68rem var(--mono); letter-spacing:.05em; text-transform:uppercase; white-space:nowrap; }
.admin-data-table td { color:var(--text); overflow-wrap:anywhere; }
.admin-data-table tbody tr:last-child td { border-bottom:0; }
.log-tail { max-height:520px; margin:0; padding:1rem; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; border:1px solid var(--border); border-radius:6px; color:var(--text); background:var(--surface-soft); font:400 .78rem/1.55 var(--mono); }
.admin-empty-state { margin:0; padding:1rem; border:1px dashed var(--border); border-radius:8px; color:var(--muted); background:var(--surface-soft); font-size:.86rem; }
.diagnostics-summary .admin-summary-item { min-height:105px; }
.diagnostic-ok strong { color:var(--success); }
.diagnostic-warning strong { color:var(--amber-text); }
.diagnostic-error strong { color:var(--error); }
.diagnostic-status.ok { color:var(--ready-text); background:var(--ready-bg); }
.diagnostic-status.warning { color:var(--prototype-text); background:var(--prototype-bg); }
.diagnostic-status.error { color:var(--error); background:var(--error-bg); }
.diagnostic-table td:nth-child(2) { width:1%; white-space:nowrap; }
.backup-action-form { margin-top:1rem; }
.backup-restore-form { display:grid; gap:1rem; }
.backup-restore-form .file-field,.backup-restore-form .text-field,.backup-restore-form .honest-note { margin-bottom:0; }
.backup-restore-form .btn { width:max-content; }
.access-admin-layout { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; align-items:start; margin-bottom:1.25rem; }
.access-admin-card { margin-bottom:0; }
.access-admin-form { display:grid; gap:.85rem; }
.access-admin-form .text-field,.access-admin-form .select-field,.access-admin-form .check-field { margin-bottom:0; }
.access-admin-form .btn { width:max-content; }
.form-actions { display:flex; flex-wrap:wrap; gap:.6rem; align-items:center; }
.access-row { padding:.55rem 0; border-bottom:1px solid var(--border); }
.access-row:first-child { padding-top:0; }
.access-row:last-child { padding-bottom:0; border-bottom:0; }
.access-row strong { display:block; color:var(--navy); font-size:.83rem; }
.access-row span,.muted-text { display:block; margin-top:.12rem; color:var(--muted); font:400 .72rem var(--mono); }
.inline-action-form { margin-top:.45rem; }
.inline-action-form .btn { padding:.45rem .7rem; font-size:.72rem; }
.mapping-row { display:flex; gap:1rem; align-items:center; justify-content:space-between; }
.mapping-row .btn { flex:0 0 auto; padding:.5rem .8rem; }
@media (max-width:720px) { .mapping-row { align-items:flex-start; flex-direction:column; } }
.recent-work-strip { margin-bottom:2rem; }
.recent-work-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:1.25rem; align-items:start; }
.recent-work-card { margin-bottom:0; }
.recent-work-list { display:grid; gap:.85rem; }
.recent-work-list.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.recent-work-item { padding:1rem; display:flex; justify-content:space-between; gap:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.recent-work-item h3 { margin:.55rem 0 .25rem; color:var(--navy); font-size:.98rem; line-height:1.3; }
.recent-work-item p { margin:0; color:var(--muted); font-size:.8rem; overflow-wrap:anywhere; }
.recent-work-item time { flex:none; color:var(--muted); font:500 .72rem var(--mono); white-space:nowrap; }
.recent-work-main { min-width:0; }
.recent-work-meta { margin:.65rem 0 0; display:grid; gap:.45rem; }
.recent-work-meta div { min-width:0; }
.recent-work-meta dt { color:var(--muted); font:600 .62rem var(--mono); letter-spacing:.05em; text-transform:uppercase; }
.recent-work-meta dd { margin:.12rem 0 0; color:var(--text); font-size:.8rem; overflow-wrap:anywhere; }
.recent-work-time { min-width:118px; display:grid; align-content:start; gap:.18rem; text-align:right; }
.recent-work-time span { color:var(--muted); font:600 .62rem var(--mono); letter-spacing:.05em; text-transform:uppercase; }
.workbench-task-list { display:grid; gap:.85rem; }
.workbench-current-sections { display:grid; gap:1.2rem; }
.workbench-section-heading { margin-bottom:.65rem; }
.workbench-section-heading h3 { margin:0; color:var(--navy); font-size:1rem; line-height:1.3; }
.workbench-section-heading p { margin:.2rem 0 0; color:var(--muted); font-size:.82rem; line-height:1.45; }
.workbench-task-row { padding:1rem; display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); }
.workbench-task-row h2,.workbench-task-row h3 { margin:.55rem 0 .3rem; color:var(--navy); font-size:1rem; line-height:1.3; }
.workbench-task-row h3 { margin-top:0; font-size:.95rem; }
.workbench-task-row p { margin:0; color:var(--muted); font-size:.84rem; line-height:1.5; }
.workbench-task-row .workbench-completion-note { margin-top:.5rem; color:var(--text); font-size:.78rem; }
.workbench-task-row .workbench-evidence { margin-top:.55rem; color:var(--text); font-size:.78rem; }
.workbench-completion-form { margin-top:.75rem; display:grid; gap:.35rem; }
.workbench-completion-form label { color:var(--text); font-size:.76rem; font-weight:600; }
.workbench-completion-controls { display:flex; flex-wrap:wrap; gap:.45rem; align-items:center; }
.workbench-status-field,.workbench-note-field { display:grid; gap:.22rem; }
.workbench-status-field { flex:0 1 150px; min-width:140px; }
.workbench-note-field { flex:1 1 260px; min-width:220px; }
.workbench-completion-controls input,.workbench-completion-controls select { width:100%; min-height:36px; padding:.5rem .6rem; border:1px solid var(--border); border-radius:6px; background:var(--surface-soft); color:var(--text); font:400 .82rem var(--font); }
.status-action { min-height:34px; padding:.45rem .65rem; border:1px solid var(--border); border-radius:6px; background:var(--surface); color:var(--text); font:600 .74rem var(--font); cursor:pointer; }
.status-action.primary { border-color:var(--success-border); color:var(--ready-text); background:var(--ready-bg); }
.status-action:hover { border-color:var(--hover-border); background:var(--hover-bg); }
.workbench-task-row .workbench-note-guidance { color:var(--muted); font-size:.74rem; }
.workbench-task-action { flex:0 0 180px; display:grid; gap:.55rem; justify-items:end; text-align:right; }
.workbench-task-action span { color:var(--muted); font:600 .68rem var(--mono); letter-spacing:.05em; text-transform:uppercase; }
.workbench-task-action a,.workbench-task-row.compact a { color:var(--blue); font-size:.84rem; font-weight:600; text-decoration:none; white-space:nowrap; }
.workbench-task-action a+a,.workbench-inline-actions a+a { color:var(--muted); }
.workbench-inline-actions { display:flex; flex-wrap:wrap; gap:.45rem .7rem; justify-content:flex-end; }
.workbench-area-list { display:grid; gap:1.25rem; }
.workbench-area>h2 { margin:0 0 .75rem; color:var(--navy); font-size:1.05rem; }
.workbench-task-list.compact { gap:.55rem; }
.workbench-task-row.compact { padding:.85rem 1rem; align-items:center; }
.guidance-layout { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; align-items:start; }
.guidance-card { margin-bottom:0; }
.monthly-guidance-flow { display:grid; gap:.85rem; max-width:900px; }
.guidance-step { padding:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); }
.guidance-step-heading { display:grid; grid-template-columns:2rem minmax(0,1fr); gap:.75rem; align-items:start; }
.guidance-step-number { width:2rem; height:2rem; display:grid; place-items:center; border-radius:50%; color:var(--navy); background:var(--planned-bg); font:700 .78rem var(--mono); }
.guidance-step h2 { margin:.25rem 0 .2rem; color:var(--navy); font-size:1rem; line-height:1.3; }
.guidance-step p { margin:0; color:var(--muted); font-size:.82rem; line-height:1.5; }
.guidance-step-body { margin:.75rem 0 0 2.75rem; }
.guidance-step-action .guidance-step-body { display:flex; flex-wrap:wrap; gap:.65rem; align-items:center; }
.guidance-list { margin:0; padding-left:1.2rem; color:var(--text); font-size:.86rem; line-height:1.6; }
.guidance-list li+li { margin-top:.35rem; }
.workflow-guidance-panel { margin:0 0 1rem; padding:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.workflow-guidance-panel h3 { margin:.2rem 0 .35rem; color:var(--navy); font-size:1rem; }
.workflow-guidance-panel h2 { margin:.2rem 0 .35rem; color:var(--navy); font-size:1rem; }
.workflow-guidance-panel p:not(.eyebrow) { margin:0; color:var(--muted); font-size:.84rem; line-height:1.5; }
.guidance-reveal-button { min-height:34px; margin:0 0 1rem; padding:.45rem .7rem; border:1px solid var(--border); border-radius:6px; color:var(--blue); background:var(--surface); font:600 .78rem var(--font); cursor:pointer; }
.guidance-reveal-button:hover,.guidance-reveal-button:focus-visible { border-color:var(--hover-border); background:var(--hover-bg); outline:0; }
.guidance-report-box { margin-top:1rem; padding:.85rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); }
.guidance-report-box h4 { margin:0 0 .45rem; color:var(--navy); font-size:.84rem; }
.guidance-report-box ul { margin:0; padding-left:1.1rem; color:var(--muted); font-size:.8rem; line-height:1.55; }
.guidance-report-box li+li { margin-top:.25rem; }
.guidance-report-box strong { color:var(--text); font-weight:600; }
.guidance-inline-link { display:inline-block; margin-top:.85rem; color:var(--blue); font-size:.82rem; font-weight:600; text-decoration:none; }
.empty-work-state { padding:1rem; border:1px dashed var(--border); border-radius:8px; color:var(--muted); background:var(--surface-soft); font-size:.86rem; }
.empty-work-state p { margin:0; }
.confidence-strip { margin-top:2rem; padding-top:1.5rem; border-top:1px solid var(--border); }
.confidence-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; }
.confidence-item { min-width:0; padding:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.confidence-item h3 { margin:.55rem 0 .25rem; color:var(--navy); font-size:.88rem; }
.confidence-item p { margin:0; color:var(--muted); font-size:.78rem; line-height:1.45; }
.document-template-summary { padding:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.document-template-summary.active { border-color:var(--hover-border); background:var(--hover-bg); }
.document-template-summary strong { display:block; color:var(--navy); font-size:.92rem; }
.document-template-summary span { display:block; margin-top:.18rem; color:var(--blue); font:500 .68rem var(--mono); letter-spacing:.04em; text-transform:uppercase; }
.document-template-summary p { margin:.65rem 0 0; color:var(--muted); font-size:.82rem; line-height:1.5; }
.document-template-summary+.document-template-summary { margin-top:.75rem; }
.document-helper-form { display:grid; gap:.85rem; }
.document-helper-form .text-field { margin-bottom:0; }
.field-help { color:var(--muted); font-size:.74rem; line-height:1.45; }
.muted-text.inline { display:inline; margin-top:0; }
.more-tools { margin-top:1.25rem; padding:1.5rem; display:grid; grid-template-columns:minmax(220px,.8fr) minmax(0,2fr); gap:1.5rem; align-items:center; }
.more-tools-intro h2 { margin:.5rem 0 .25rem; color:var(--navy); font-size:1.15rem; }
.more-tools-intro p { margin:0; color:var(--muted); font-size:.85rem; }
.tool-category-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.tool-category-links a { padding:.85rem 1rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; border:1px solid var(--border); border-radius:8px; color:var(--navy); background:var(--bg); font-size:.86rem; font-weight:600; text-decoration:none; transition:.18s ease; }
.tool-category-links a:hover,.tool-category-links a[aria-current="page"] { border-color:var(--hover-border); color:var(--blue); background:var(--hover-bg); }
.honest-note { margin:0 0 1rem; padding:.8rem 1rem; border-left:3px solid var(--accent); color:var(--muted); background:var(--note-bg); font-size:.82rem; line-height:1.5; }
.safeguarding-panel { margin-bottom:1.25rem; }
.safeguarding-list { margin:0; padding-left:1.2rem; color:var(--muted); font-size:.84rem; line-height:1.6; }
.safeguarding-list li+li { margin-top:.35rem; }
.source-links { margin-top:1rem; display:flex; flex-wrap:wrap; gap:.6rem; }
.source-links a { padding:.5rem .7rem; border:1px solid var(--border); border-radius:8px; color:var(--blue); background:var(--surface-soft); font-size:.78rem; font-weight:600; text-decoration:none; }
.source-links a:hover { border-color:var(--hover-border); background:var(--hover-bg); }
.file-field { margin-bottom:1rem; padding:1rem; display:flex; flex-direction:column; gap:.6rem; border:2px dashed var(--border); border-radius:8px; color:var(--muted); font-size:.82rem; background:var(--bg); transition:.18s ease; }
.file-field:hover { border-color:var(--hover-border); background:var(--hover-bg); }
.file-field.has-file { border-color:var(--success-border); color:var(--text); background:var(--success-bg); }
.file-field>span { color:var(--text); font-weight:600; }
.selected-file-label { display:none; max-width:100%; overflow:hidden; color:var(--success); font:600 .74rem var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.file-field.has-file .selected-file-label { display:block; }
.mode-toggle { margin:0 0 1rem; padding:0; display:flex; flex-wrap:wrap; gap:.6rem; border:0; }
.mode-toggle legend { width:100%; margin-bottom:.1rem; color:var(--muted); font-size:.78rem; font-weight:600; }
.mode-toggle label { min-height:40px; padding:.55rem .8rem; display:inline-flex; align-items:center; gap:.45rem; border:1px solid var(--border); border-radius:8px; color:var(--text); background:var(--surface-soft); font-size:.84rem; cursor:pointer; }
.mode-toggle input { accent-color:var(--blue); }
.check-field { margin:0 0 1rem; padding:.7rem .8rem; display:flex; align-items:center; gap:.55rem; border:1px solid var(--border); border-radius:8px; color:var(--text); background:var(--surface-soft); font-size:.84rem; cursor:pointer; }
.check-field input { accent-color:var(--blue); }
.ocr-language-field { max-width:220px; }
.select-field { margin-bottom:1rem; display:flex; flex-direction:column; gap:.45rem; color:var(--muted); font-size:.82rem; }
.select-field select { width:100%; min-height:42px; padding:.55rem .75rem; border:1px solid var(--border); border-radius:8px; color:var(--text); background:var(--surface-soft); font:500 .88rem var(--font); }
.select-field select:focus { outline:3px solid rgba(29,111,191,.16); border-color:var(--hover-border); }
.text-field { margin-bottom:1rem; display:flex; flex-direction:column; gap:.45rem; color:var(--muted); font-size:.82rem; }
.text-field input,.text-field textarea { width:100%; min-height:42px; padding:.55rem .75rem; border:1px solid var(--border); border-radius:8px; color:var(--text); background:var(--surface-soft); font:500 .88rem var(--font); }
.text-field textarea { resize:vertical; line-height:1.5; }
.text-field input:focus,.text-field textarea:focus { outline:3px solid rgba(29,111,191,.16); border-color:var(--hover-border); }
.btn { min-height:42px; padding:.65rem 1.2rem; display:inline-flex; align-items:center; justify-content:center; border:1px solid transparent; border-radius:8px; color:#fff; font:600 .88rem var(--font); cursor:pointer; text-decoration:none; transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease; }
.btn-primary { background:var(--blue); }
.btn-primary:hover:not(:disabled) { background:var(--blue-lt); }
.btn-secondary { background:var(--secondary-btn-bg); }
.btn-secondary:hover:not(:disabled) { background:var(--secondary-btn-hover); }
.btn:hover:not(:disabled) { transform:translateY(-1px); box-shadow:0 5px 14px var(--shadow); }
.btn:focus-visible { outline:3px solid rgba(29,111,191,.24); outline-offset:3px; }
.btn:disabled { opacity:.55; cursor:not-allowed; }
.upload-grid { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; margin-bottom:1rem; }
.upload-zone { min-height:130px; padding:1rem; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.35rem; border:2px dashed var(--border); border-radius:8px; background:var(--bg); cursor:pointer; text-align:center; }
.upload-zone:hover,.upload-zone.drag-over { border-color:var(--blue); background:var(--hover-bg); }
.upload-zone.has-file { border-color:var(--success); background:var(--success-bg); }
.upload-zone.has-error { border-color:var(--error); background:var(--error-bg); }
.upload-zone-disabled { opacity:.72; cursor:not-allowed; }
.upload-zone-disabled:hover { border-color:var(--border); background:var(--bg); }
.upload-zone input { position:absolute; width:1px; height:1px; opacity:0; }
.upload-label { color:var(--muted); font-size:.78rem; font-weight:600; letter-spacing:.05em; text-transform:uppercase; }
.upload-hint { color:var(--muted); font-size:.78rem; }
.upload-zone.has-error .upload-hint { color:var(--error); font-weight:600; }
.upload-filename { max-width:100%; overflow:hidden; color:var(--success); font:400 .72rem var(--mono); text-overflow:ellipsis; white-space:nowrap; }
.upload-zone-multi { justify-content:flex-start; }
.upload-file-list { width:100%; display:grid; gap:.25rem; margin-top:.35rem; }
.upload-file-item { min-width:0; padding:.25rem .4rem; overflow:hidden; border:1px solid var(--border); border-radius:6px; background:var(--surface); color:var(--text); font:400 .72rem var(--mono); text-align:left; text-overflow:ellipsis; white-space:nowrap; }
.upload-file-queue .upload-file-item { display:flex; align-items:center; justify-content:space-between; gap:.45rem; overflow:visible; white-space:normal; }
.upload-file-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.upload-file-actions { display:inline-flex; flex:0 0 auto; gap:.2rem; }
.upload-file-action { width:1.55rem; height:1.55rem; display:inline-flex; align-items:center; justify-content:center; border:1px solid var(--border); border-radius:6px; color:var(--muted); background:var(--surface-soft); font:700 .85rem var(--font); cursor:pointer; }
.upload-file-action:hover:not(:disabled) { color:var(--blue); border-color:var(--hover-border); background:var(--hover-bg); }
.upload-file-action:disabled { opacity:.38; cursor:not-allowed; }
.upload-note { color:var(--muted); font-size:.78rem; font-style:italic; }
.vat-calculator { display:grid; gap:1rem; }
.vat-input-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; align-items:start; }
.vat-input-grid .text-field,.vat-input-grid .select-field,.vat-input-grid .mode-toggle { margin-bottom:0; }
.vat-money-input { min-height:42px; display:flex; align-items:center; gap:.45rem; padding:0 .75rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); color:var(--muted); }
.vat-money-input:focus-within { outline:3px solid rgba(29,111,191,.16); border-color:var(--hover-border); }
.vat-money-input input { min-height:40px; padding:.55rem 0; border:0; outline:0; background:transparent; }
.vat-mode-toggle { align-content:start; }
.vat-mode-toggle legend { margin-bottom:.45rem; }
.vat-result-panel { padding:1rem; border:1px solid var(--success-border); border-radius:8px; background:var(--surface); }
.vat-result-heading { margin-bottom:.85rem; display:flex; align-items:flex-start; justify-content:space-between; gap:1rem; }
.vat-result-heading h3 { margin:.2rem 0 0; color:var(--navy); font-size:1rem; }
.vat-result-grid { margin:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; }
.vat-result-grid div { min-width:0; padding:.9rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.vat-result-grid dt { color:var(--muted); font:600 .68rem var(--mono); letter-spacing:.04em; text-transform:uppercase; }
.vat-result-grid dd { margin:.4rem 0 0; color:var(--navy); font:700 1.35rem var(--font); overflow-wrap:anywhere; }
.vat-result-panel .upload-note { margin:.85rem 0 0; }
.vat-assurance-list { grid-template-columns:repeat(3,minmax(0,1fr)); }
.output-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
.output-preview-panel { min-height:130px; padding:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.output-preview-panel h3 { margin:0 0 .45rem; color:var(--navy); font-size:.92rem; }
.output-preview-panel p { margin:0; color:var(--muted); font-size:.82rem; line-height:1.5; }
.divider { margin:.25rem 0 1.5rem; display:flex; align-items:center; gap:1rem; color:var(--muted); font-size:.78rem; }
.divider::before,.divider::after { content:""; height:1px; flex:1; background:var(--border); }
.status-panel { display:none; margin-top:1rem; padding:1rem 1.2rem; border-radius:8px; }
.status-panel.show { display:block; }
.status-panel.loading { color:var(--blue); border:1px solid var(--loading-border); background:var(--loading-bg); }
.status-panel.success { color:var(--success); border:1px solid var(--success-border); background:var(--success-bg); }
.status-panel.error { color:var(--error); border:1px solid var(--error-border); background:var(--error-bg); }
.status-panel.workflow-review-panel.success { color:var(--text); border:1px solid var(--success-border); background:var(--surface); }
.status-panel.workflow-review-panel.success .status-title { color:var(--success); }
.status-title { font-size:.88rem; font-weight:600; }
.status-msg { margin-top:.2rem; color:var(--muted); font-size:.8rem; }
.download-btn { display:none; margin-top:.75rem; }
.download-btn.show { display:inline-flex; }
.download-list { display:flex; flex-wrap:wrap; gap:.75rem; }
.download-list .download-btn { margin-top:.75rem; }
.deductions-preview { margin-top:1rem; color:var(--text); }
.deductions-preview h3 { margin:0 0 .65rem; color:var(--navy); font-size:.9rem; }
.deductions-preview-table { width:100%; border-collapse:collapse; overflow-wrap:anywhere; font-size:.78rem; }
.deductions-preview-table th,.deductions-preview-table td { padding:.55rem .45rem; border-top:1px solid var(--success-border); text-align:left; vertical-align:top; }
.deductions-preview-table th { color:var(--muted); font-size:.68rem; font-weight:600; letter-spacing:.04em; text-transform:uppercase; }
.deduction-recipient { display:inline-flex; padding:.18rem .42rem; border-radius:999px; font-size:.68rem; font-weight:600; white-space:nowrap; }
.deduction-recipient.ready { color:var(--success); background:rgba(32,122,89,.12); }
.deduction-recipient.warning { color:var(--amber-text); background:var(--prototype-bg); }
.deductions-warning { margin:.75rem 0 0; color:var(--amber-text); font-size:.78rem; font-weight:600; line-height:1.45; }
.workflow-review { min-width:0; margin-top:1rem; display:grid; gap:1rem; }
.workflow-output-strip { margin-top:1rem; padding-top:.9rem; border-top:1px solid var(--success-border); }
.workflow-output-strip h3 { margin:0 0 .65rem; color:var(--navy); font-size:.92rem; }
.workflow-output-strip .download-list { margin-top:0; }
.workflow-review-intro h3,.workflow-review-section h3 { margin:0 0 .55rem; color:var(--navy); font-size:.92rem; }
.workflow-review-intro p,.workflow-review-empty { margin:0; color:var(--muted); font-size:.82rem; line-height:1.5; }
.workflow-review-section { min-width:0; padding-top:.9rem; border-top:1px solid var(--success-border); }
.workflow-review-details { min-width:0; padding-top:.65rem; border-top:1px solid var(--success-border); }
.workflow-review-details summary { padding:.65rem .75rem; border:1px solid var(--border); border-radius:8px; color:var(--blue); background:var(--surface-soft); cursor:pointer; font-size:.82rem; font-weight:700; }
.workflow-review-details[open] summary { margin-bottom:.75rem; border-color:var(--hover-border); background:var(--hover-bg); }
.workflow-review-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; }
.workflow-review-item { min-width:0; padding:.8rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.workflow-review-item-right { grid-column:2; }
.workflow-review-item h4 { margin:.45rem 0 .2rem; color:var(--navy); font-size:.84rem; line-height:1.3; overflow-wrap:anywhere; }
.workflow-review-item p { margin:0; color:var(--muted); font-size:.78rem; line-height:1.45; overflow-wrap:anywhere; }
.workflow-review-section .btn { margin-top:.75rem; }
.workflow-review-actions { justify-content:space-between; align-items:center; }
.outturn-table-panel { min-width:0; max-width:100%; display:grid; gap:.75rem; }
.outturn-table-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }
.outturn-table-filter { margin-bottom:0; }
.outturn-table-panel .admin-table-wrap { min-width:0; max-width:100%; }
.outturn-filter-state { margin:0; color:var(--muted); font:500 .76rem var(--mono); }
.outturn-all-rows-details { margin-top:.75rem; padding-top:0; border-top:0; }
.outturn-all-rows-details summary { padding:.65rem .75rem; border:1px solid var(--border); border-radius:8px; color:var(--blue); background:var(--surface-soft); cursor:pointer; font-size:.82rem; font-weight:700; }
.outturn-all-rows-details[open] summary { margin-bottom:.75rem; border-color:var(--hover-border); background:var(--hover-bg); }
.outturn-review-table { min-width:920px; }
.outturn-movement-table { min-width:760px; }
.outturn-review-table td,.outturn-review-table th { overflow-wrap:anywhere; }
.workflow-source-list { margin:.85rem 0 0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; list-style:none; }
.workflow-source-list li { min-width:0; padding:.75rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); }
.workflow-source-list strong { display:block; color:var(--navy); font-size:.82rem; }
.workflow-source-list span { display:inline-flex; margin:.4rem 0; padding:.15rem .45rem; border-radius:999px; color:var(--muted); background:var(--planned-bg); font-size:.66rem; font-weight:700; }
.workflow-source-list p { margin:0; color:var(--muted); font-size:.76rem; line-height:1.45; }
.workforce-step { margin:0 0 1rem; display:grid; grid-template-columns:34px minmax(0,1fr); gap:.85rem; align-items:start; }
.workforce-step-marker { width:34px; height:34px; display:grid; place-items:center; border:1px solid var(--border); border-radius:8px; color:var(--navy); background:var(--surface-soft); font:700 .78rem var(--mono); }
.workforce-step-body { min-width:0; padding:1rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.workforce-step-body h3 { margin:0 0 .75rem; color:var(--navy); font-size:.95rem; }
.workforce-step-body .select-field { margin-bottom:.85rem; }
.workforce-period-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.workforce-period-grid .text-field { margin-bottom:0; }
.workforce-term-note { margin:.7rem 0 0; color:var(--muted); font-size:.78rem; line-height:1.45; }
.workforce-action-row { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.workforce-action-row p { margin:.2rem 0 0; color:var(--muted); font-size:.82rem; line-height:1.45; }
.workforce-upload-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.workforce-expected-list { margin:.85rem 0 0; display:grid; gap:.35rem; }
.workforce-expected-list p { margin:0; color:var(--muted); font-size:.76rem; line-height:1.45; }
.workforce-expected-list strong { color:var(--navy); }
.workforce-review-subtitle { margin:.2rem 0 .8rem; color:var(--muted); font-size:.82rem; }
.workflow-review-panel .workflow-review-card>h4 { margin:1rem 0 .55rem; color:var(--navy); font-size:.82rem; }
.document-field-section { margin:0 0 1rem; padding:0 0 .9rem; border:0; border-bottom:1px solid var(--border); }
.document-field-section legend { margin:0 0 .65rem; color:var(--navy); font-weight:700; font-size:.88rem; }
.document-field-section:last-of-type { border-bottom:0; }
.workforce-review-status { margin:0 0 .75rem; padding:.75rem; display:grid; gap:.25rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.workforce-review-status strong { color:var(--navy); font-size:.9rem; }
.workforce-review-status span { color:var(--muted); font-size:.78rem; line-height:1.4; }
.workforce-review-status.ok { border-color:var(--success); }
.workforce-review-status.check { border-color:var(--accent); }
.workforce-review-steps { margin:0 0 1rem; padding:0; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.55rem; list-style:none; }
.workforce-review-step { padding:.65rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); }
.workforce-review-step strong { display:block; color:var(--navy); font-size:.78rem; }
.workforce-review-step span { display:inline-flex; margin:.35rem 0; padding:.12rem .42rem; border-radius:999px; font-size:.66rem; font-weight:700; }
.workforce-review-step.ok span { color:var(--success); background:var(--ready-bg); }
.workforce-review-step.check span { color:var(--amber-text); background:var(--prototype-bg); }
.workforce-review-step p { margin:0; color:var(--muted); font-size:.72rem; line-height:1.35; }
.workforce-source-list { margin:.7rem 0 1rem; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; list-style:none; }
.workforce-source-card { min-width:0; padding:.75rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.workforce-source-card strong { display:block; color:var(--navy); font-size:.8rem; }
.workforce-source-card span { display:inline-flex; margin:.4rem 0; padding:.15rem .45rem; border-radius:999px; font-size:.68rem; font-weight:700; }
.workforce-source-card.ok span { color:var(--success); background:var(--ready-bg); }
.workforce-source-card.check span { color:var(--amber-text); background:var(--prototype-bg); }
.workforce-source-card p { margin:0; color:var(--muted); font-size:.76rem; line-height:1.45; }
.workforce-calculation-row td { padding:.3rem .45rem .75rem; color:var(--muted); background:var(--surface-soft); }
.workforce-calculation-row details { font-size:.76rem; line-height:1.45; }
.workforce-calculation-row summary { color:var(--blue); cursor:pointer; font-weight:600; }
.workforce-calculation-row p { margin:.35rem 0 0; }
.workforce-download-detail { align-self:center; color:var(--muted); font-size:.78rem; line-height:1.4; }
.workforce-warning-list { display:grid; gap:.65rem; }
.workforce-warning-list p { margin:.25rem 0 0; color:var(--muted); font-size:.76rem; line-height:1.45; }
.workforce-warning-list ul { margin:.35rem 0 0; padding-left:1rem; }
.workforce-warning-list li+li { margin-top:.25rem; }
.workforce-evidence-note { margin:.75rem 0; padding:.75rem; border:1px solid var(--success-border); border-radius:8px; background:var(--success-bg); }
.workforce-evidence-note h4 { margin:0 0 .4rem; color:var(--navy); font-size:.8rem; }
.workforce-evidence-note ul { margin:0; padding-left:1rem; color:var(--muted); font-size:.76rem; line-height:1.45; }
.workforce-match-list { margin:0; padding:0; display:grid; gap:.8rem; list-style:none; }
.workforce-match-card { padding:.8rem; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.workforce-match-card>strong { display:block; margin-bottom:.55rem; color:var(--navy); }
.workforce-match-options { display:grid; gap:.45rem; }
.workforce-match-option { display:grid; grid-template-columns:18px minmax(0,1fr); gap:.55rem; align-items:start; padding:.55rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); cursor:pointer; }
.workforce-match-option input { margin-top:.15rem; }
.workforce-match-option strong { display:block; color:var(--navy); font-size:.82rem; }
.workforce-match-option small { display:block; margin-top:.15rem; color:var(--muted); font-size:.73rem; line-height:1.35; }
.pdf-output-panel { min-height:160px; padding:1rem; display:flex; flex-direction:column; justify-content:center; gap:.35rem; border:1px dashed var(--border); border-radius:8px; color:var(--muted); background:var(--bg); }
.pdf-output-panel strong { color:var(--navy); font-size:.95rem; }
.pdf-output-panel span { font-size:.84rem; line-height:1.5; }
.pdf-output-panel.ready { border-color:var(--success-border); background:var(--success-bg); }
.pdf-output-panel.error { border-color:var(--error-border); background:var(--error-bg); }
.inline-message { display:none; margin-top:1rem; padding:.7rem .8rem; border-radius:6px; font-size:.8rem; }
.inline-message.show { display:block; }
.inline-message.notice { color:var(--notice-text); background:var(--notice-bg); }
.inline-message.error { color:var(--error); background:var(--error-bg); }
.inline-message.success { color:var(--success); background:var(--success-bg); }
.ai-tool-layout { display:grid; grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr); gap:1.25rem; align-items:start; }
.ai-tool-panel,.ai-result-panel { margin-bottom:0; }
.image-tool-stack { display:grid; gap:1.25rem; }
.image-upload-zone { margin-bottom:1rem; }
.markdown-preview { width:100%; min-height:420px; padding:1rem; resize:vertical; border:1px solid var(--border); border-radius:8px; color:var(--text); background:var(--surface-soft); font:400 .82rem/1.55 var(--mono); }
.image-dimension-summary { margin:.75rem 0 1rem; color:var(--muted); font:500 .82rem var(--mono); }
.image-preview-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.image-preview-grid figure { margin:0; min-width:0; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); overflow:hidden; }
.image-preview-grid img { display:block; width:100%; aspect-ratio:4/3; object-fit:contain; background:var(--surface); }
.image-preview-grid img:not([src]) { visibility:hidden; }
.image-preview-grid figcaption { padding:.7rem .85rem; color:var(--muted); font:500 .75rem var(--mono); overflow-wrap:anywhere; }
#aiDisclosure { display:none; margin-top:1rem; }
#aiDisclosure.show { display:block; }
.markdown-preview:focus { outline:3px solid rgba(29,111,191,.16); border-color:var(--hover-border); }
.result-actions { margin-top:1rem; display:flex; flex-wrap:wrap; gap:.75rem; }
.roadmap-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.roadmap-card { margin:0; padding:1.5rem; }
.roadmap-card h2 { margin:0 0 1.25rem; color:var(--navy); font-size:1.15rem; }
.roadmap-item+.roadmap-item { margin-top:1.25rem; padding-top:1.25rem; border-top:1px solid var(--border); }
.roadmap-item h3 { margin:0 0 .3rem; color:var(--text); font-size:.95rem; }
.roadmap-item p,.roadmap-vision { margin:0; color:var(--muted); font-size:.88rem; line-height:1.6; }
.roadmap-list { margin:0; padding-left:1.2rem; color:var(--muted); font-size:.88rem; line-height:1.8; }
.roadmap-notice { width:100%; margin:2rem 0 0; padding:1.25rem 1.5rem; }
.roadmap-notice p { margin:0; color:var(--muted); font-size:.88rem; line-height:1.5; }
.roadmap-notice a { color:var(--blue); font-weight:600; }
.issue-card { display:flex; flex-direction:column; gap:1rem; }
.issue-card-action { width:max-content; }
.issue-report-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr); gap:1.25rem; align-items:start; }
.issue-report-card,.issue-context-card { margin-bottom:0; }
.issue-report-form { display:grid; gap:1rem; }
.issue-report-form .text-field,.issue-report-form .select-field { margin-bottom:0; }
.issue-actions { display:flex; flex-wrap:wrap; gap:.75rem; }
.issue-context-list { margin:0; display:grid; gap:1rem; }
.issue-context-list div { min-width:0; padding-bottom:1rem; border-bottom:1px solid var(--border); }
.issue-context-list div:last-child { padding-bottom:0; border-bottom:0; }
.issue-context-list dt { color:var(--muted); font-size:.72rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; }
.issue-context-list dd { margin:.25rem 0 0; overflow-wrap:anywhere; color:var(--text); font-size:.84rem; line-height:1.45; }
.policy-notice { margin:0 0 1rem; padding:.9rem 1rem; border:1px solid; border-radius:8px; font-size:.86rem; }
.policy-notice.success { color:var(--success); border-color:var(--success-border); background:var(--success-bg); }
.policy-notice.error { color:var(--error); border-color:var(--error-border); background:var(--error-bg); }
.policy-summary { margin-bottom:1.25rem; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; }
.policy-summary article { padding:1rem 1.15rem; display:grid; gap:.2rem; border:1px solid var(--border); border-radius:10px; background:var(--surface); }
.policy-summary strong { color:var(--navy); font-size:1.45rem; }.policy-summary span { color:var(--muted); font-size:.76rem; }.policy-summary .policy-summary-overdue strong { color:var(--error); }
.policy-import-layout { display:grid; grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr); gap:1.5rem; align-items:center; }
.policy-import-layout h2,.policy-list-heading h2 { margin:.15rem 0 .35rem; color:var(--navy); font-size:1.1rem; }
.policy-import-layout p,.policy-list-heading p { margin:.3rem 0 0; color:var(--muted); font-size:.84rem; line-height:1.55; }
.policy-upload-form { display:grid; gap:.75rem; }.policy-upload-form .file-field { margin:0; }
.policy-list-heading { margin-bottom:1rem; display:flex; justify-content:space-between; align-items:flex-start; gap:1.25rem; }
.policy-list-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.6rem; }
.policy-list-controls { margin-bottom:.75rem; padding:.75rem; display:grid; grid-template-columns:minmax(220px,1fr) minmax(170px,.45fr) auto; gap:.75rem; align-items:end; border:1px solid var(--border); border-radius:8px; background:var(--surface-soft); }
.policy-list-controls label { display:grid; gap:.3rem; color:var(--muted); font-size:.7rem; font-weight:600; }
.policy-list-controls input,.policy-list-controls select { width:100%; min-height:38px; padding:.55rem .65rem; border:1px solid var(--border); border-radius:7px; color:var(--text); background:var(--surface); font:inherit; }
.policy-result-count { margin:0; padding-bottom:.65rem; color:var(--muted); font-size:.72rem; white-space:nowrap; }
.policy-table-wrap { overflow-x:visible; }.policy-review-table { width:100%; min-width:0; table-layout:fixed; }.policy-review-table th:nth-child(1) { width:35%; }.policy-review-table th:nth-child(2) { width:22%; }.policy-review-table th:nth-child(3) { width:43%; }.policy-review-table td { vertical-align:top; overflow-wrap:anywhere; }
.policy-source-link { margin-top:.25rem; display:block; color:var(--blue); font-size:.76rem; font-weight:600; overflow-wrap:anywhere; }
.policy-review-table details { margin-top:.45rem; color:var(--muted); font-size:.72rem; }.policy-review-table details p,.policy-result-note { margin:.3rem 0 0; color:var(--muted); font-size:.72rem; line-height:1.45; }
.policy-muted { color:var(--muted); }.policy-empty { padding:2rem 1rem; border:1px dashed var(--border); border-radius:9px; text-align:center; }
.policy-estimate-label { margin-top:.25rem; display:block; color:var(--muted); font-size:.68rem; font-weight:600; }
.policy-row-meta { margin-top:.55rem; padding-top:.4rem; display:flex; flex-wrap:wrap; justify-content:space-between; gap:.4rem .75rem; border-top:1px solid var(--border); color:var(--muted); font-size:.67rem; }
.policy-remove-link { padding:0; border:0; color:var(--blue); background:transparent; font:600 .67rem var(--font); text-decoration:underline; cursor:pointer; }
.policy-pagination { margin-top:1rem; display:flex; justify-content:center; align-items:center; gap:.75rem; }.policy-pagination[hidden] { display:none; }.policy-pagination span { min-width:90px; color:var(--muted); font-size:.76rem; text-align:center; }
.policy-empty h3 { margin:0; color:var(--navy); font-size:1rem; }.policy-empty p { margin:.4rem auto 0; max-width:600px; color:var(--muted); font-size:.82rem; }
.site-footer { padding:1.25rem 2rem; display:flex; justify-content:space-between; gap:2rem; color:var(--logo-sub); background:var(--header); font-size:.72rem; line-height:1.6; }
.footer-demo,.footer-meta { display:flex; flex-direction:column; }
.footer-demo strong { color:rgba(255,255,255,.85); font-weight:600; }
.footer-links { display:flex; gap:.5rem; }
.footer-links a { color:rgba(255,255,255,.75); }
.footer-links a:hover { color:#fff; }
.footer-meta { align-items:flex-end; text-align:right; }
.footer-report-link { margin-top:.2rem; color:rgba(255,255,255,.75); font-weight:600; text-decoration:none; }
.footer-report-link:hover { color:#fff; }
.legal-content { padding:1.5rem; }
.legal-content h2 { margin:1.5rem 0 .4rem; color:var(--navy); font-size:1.05rem; }
.legal-content h2:first-child { margin-top:0; }
.legal-content p,.legal-content li { color:var(--muted); font-size:.9rem; line-height:1.65; }
.legal-content p { margin:.35rem 0 0; }
.legal-content ul { margin:.5rem 0 0; padding-left:1.2rem; }
.page-wrap.login-page { max-width:100%; padding:0 1.5rem; display:flex; }
.login-shell { width:100%; min-height:560px; padding:4rem 0; display:grid; place-items:center; }
.login-card { width:min(100%,460px); padding:2.75rem; border:1px solid var(--border); border-radius:16px; background:var(--surface); box-shadow:0 18px 50px var(--shadow); text-align:center; }
.login-card.demo-login-card { width:min(100%,900px); }
.login-emblem { width:58px; height:58px; margin:0 auto 1.4rem; display:grid; place-items:center; border-radius:14px; background:var(--secondary-btn-bg); }
.login-emblem svg { width:28px; height:28px; fill:#fff; }
.login-card h1 { margin:.45rem 0 0; color:var(--navy); font-size:2rem; line-height:1.18; }
.login-intro { max-width:340px; margin:.8rem auto 2rem; color:var(--muted); font-size:.95rem; line-height:1.6; }
.microsoft-login { min-height:44px; width:100%; padding:.7rem 1.1rem; display:flex; align-items:center; justify-content:center; gap:.85rem; border:1px solid #8c8c8c; color:#5e5e5e; background:#fff; box-shadow:0 2px 4px rgba(0,0,0,.12); font-family:"Segoe UI",var(--font); font-size:.95rem; font-weight:600; text-decoration:none; transition:.18s ease; }
.microsoft-login+.microsoft-login { margin-top:.75rem; }
.microsoft-login:hover { border-color:#666; background:#f7f7f7; box-shadow:0 3px 8px rgba(0,0,0,.16); }
.microsoft-login:focus-visible { outline:3px solid rgba(29,111,191,.3); outline-offset:3px; }
.microsoft-mark { width:21px; height:21px; display:grid; flex:none; grid-template-columns:1fr 1fr; gap:2px; }
.microsoft-mark span { display:block; }
.ms-red { background:#f25022; }
.ms-green { background:#7fba00; }
.ms-blue { background:#00a4ef; }
.ms-yellow { background:#ffb900; }
.google-mark { width:24px; height:24px; display:grid; place-items:center; flex:none; border-radius:50%; color:#1a73e8; background:#fff; border:1px solid #dadce0; font:700 1rem Arial,sans-serif; }
.login-help { margin:1rem 0 0; color:var(--muted); font-size:.78rem; }
.dev-login-form { display:flex; flex-direction:column; gap:.85rem; text-align:left; }
.dev-login-form .select-field { margin-bottom:0; }
.login-submit { width:100%; justify-content:center; }
.demo-persona-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; text-align:left; }
.demo-persona-grid form { min-width:0; }
.demo-persona-card { width:100%; min-height:240px; padding:1.25rem; display:flex; flex-direction:column; align-items:flex-start; border:1px solid var(--border); border-radius:12px; color:var(--text); background:var(--surface-soft); font-family:var(--font); text-align:left; cursor:pointer; transition:.18s ease; }
.demo-persona-card:hover { transform:translateY(-2px); border-color:var(--hover-border); background:var(--hover-bg); box-shadow:0 8px 22px var(--shadow); }
.demo-persona-card:focus-visible { outline:3px solid rgba(29,111,191,.3); outline-offset:3px; }
.demo-persona-name { color:var(--navy); font-size:1.05rem; font-weight:600; }
.demo-persona-role { margin-top:.3rem; color:var(--blue); font:500 .7rem var(--mono); letter-spacing:.04em; text-transform:uppercase; }
.demo-persona-description { margin-top:1rem; color:var(--muted); font-size:.84rem; line-height:1.55; }
.demo-persona-action { margin-top:auto; padding-top:1.25rem; color:var(--blue); font-size:.78rem; font-weight:600; }
.demo-sample-panel { margin:0 0 1.25rem; padding:1rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; border:1px solid var(--loading-border); border-radius:10px; background:var(--loading-bg); }
.demo-sample-panel h3 { margin:0; color:var(--navy); font-size:.92rem; }
.demo-sample-panel p { max-width:500px; margin:.3rem 0 0; color:var(--muted); font-size:.8rem; line-height:1.5; }
.demo-sample-scenarios { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; flex:1; max-width:560px; }
.demo-sample-scenario { min-width:0; padding:.75rem; border:1px solid var(--border); border-radius:8px; background:var(--surface); }
.demo-sample-scenario h4 { margin:0; color:var(--navy); font-size:.82rem; }
.demo-sample-scenario p { margin:.2rem 0 .65rem; font-size:.74rem; }
.demo-sample-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.55rem; flex:none; }
.demo-sample-actions .btn { padding:.55rem .75rem; font-size:.78rem; }
.config-upload-form .file-field,.font-upload-form .file-field { margin-bottom:0; }
.font-list { list-style:none; margin:.75rem 0 0!important; padding:0!important; }
.font-list li { padding:.7rem 0; display:flex; justify-content:space-between; gap:1rem; border-top:1px solid var(--border); }
.font-list li:first-child { border-top:0; }
.font-list span { color:var(--muted); font:400 .78rem var(--mono); white-space:nowrap; }
@media (max-width:960px) { .category-grid,.admin-tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .admin-summary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:840px) { .header-context { display:none; } .site-nav { margin-left:auto; } .tool-launcher:focus-within,.tool-launcher:hover,.tool-launcher.is-open { width:170px; } }
@media (max-width:720px) { .site-header { padding:.75rem 1rem 0; flex-wrap:wrap; gap:.6rem 1rem; } .account-menu { margin-left:auto; } .tool-launcher { order:3; margin-left:0; } .tool-launcher:focus-within,.tool-launcher:hover,.tool-launcher.is-open { width:min(230px,calc(100vw - 7rem)); } .site-nav { order:4; width:calc(100% + 2rem); margin:0 -1rem; padding:.15rem 1rem .65rem; align-items:flex-start; flex-wrap:nowrap; gap:.25rem; overflow-x:auto; scrollbar-width:none; } .site-nav::-webkit-scrollbar { display:none; } .site-nav a { min-height:34px; flex:none; } .category-grid,.tool-grid,.converter-grid,.converter-launch-grid,.converter-column-secondary.dense,.upload-grid,.roadmap-grid,.ai-tool-layout,.admin-tool-grid,.admin-summary-grid,.issue-report-layout,.recent-work-layout,.recent-work-list.compact,.confidence-list,.access-admin-layout,.demo-persona-grid,.image-preview-grid,.dashboard-priority-grid,.daily-desk-grid,.guidance-layout,.converter-hero,.demo-sample-scenarios,.vat-input-grid,.vat-result-grid,.vat-assurance-list { grid-template-columns:1fr; } .daily-desk-heading { align-items:flex-start; flex-direction:column; } .category-card { min-height:0; } .dashboard-priority-card { min-height:0; } .demo-persona-card { min-height:0; } .demo-sample-panel { align-items:flex-start; flex-direction:column; } .demo-sample-scenarios { max-width:none; width:100%; } .demo-sample-actions { justify-content:flex-start; } .converter-card.featured { min-height:0; } .converter-launch-grid .converter-card { min-height:0; } .converter-hero { align-items:start; } .converter-hero-stats { grid-template-columns:1fr; } .admin-tool-card { min-height:0; } .recent-work-item,.workbench-task-row { flex-direction:column; } .recent-work-time,.workbench-task-action { text-align:left; justify-items:start; } .workbench-task-action { flex:auto; } .workbench-inline-actions { justify-content:flex-start; } .more-tools { grid-template-columns:1fr; } .site-footer { flex-direction:column; } }
@media (max-width:520px) { .guidance-step { padding:.85rem; } .guidance-step-heading { grid-template-columns:1.7rem minmax(0,1fr); gap:.6rem; } .guidance-step-number { width:1.7rem; height:1.7rem; } .guidance-step-body { margin-left:0; } }
@media (max-width:720px) { .deductions-preview-table { display:block; overflow-x:auto; } .deduction-recipient { white-space:normal; } }
@media (max-width:720px) { .workflow-review-list { grid-template-columns:1fr; } .workflow-review-item-right { grid-column:auto; } }
@media (max-width:720px) { .outturn-table-filters { grid-template-columns:1fr; } }
@media (max-width:720px) { .workflow-source-list { grid-template-columns:1fr; } }
@media (max-width:720px) { .workforce-step { grid-template-columns:1fr; } .workforce-step-marker { width:30px; height:30px; } .workforce-action-row { align-items:flex-start; flex-direction:column; } .workforce-period-grid,.workforce-upload-grid,.workforce-source-list,.workforce-review-steps { grid-template-columns:1fr; } }
@media (max-width:720px) { .footer-meta { align-items:flex-start; text-align:left; } }
@media (max-width:720px) { .policy-summary,.policy-import-layout,.policy-list-controls { grid-template-columns:1fr; }.policy-list-heading { align-items:flex-start; flex-direction:column; }.policy-list-actions { justify-content:flex-start; }.policy-result-count { padding-bottom:0; }.policy-review-table thead { display:none; }.policy-review-table,.policy-review-table tbody,.policy-review-table tr,.policy-review-table td { display:block; width:100%; }.policy-review-table tr { padding:.85rem 0; border-top:1px solid var(--border); }.policy-review-table td { padding:.25rem .5rem; border:0; }.policy-review-table td:nth-child(2)::before { content:"Review date: "; color:var(--muted); font-size:.72rem; font-weight:600; } }
@media (max-width:430px) { .logo-sub { display:none; } .page-wrap { padding:2rem 1rem 3rem; } .page-wrap.login-page { padding:0 1rem; } .tool-category-links { grid-template-columns:1fr; } .login-shell { min-height:500px; padding:2.5rem 0; } .login-card { padding:2rem 1.35rem; } .login-card h1 { font-size:1.7rem; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; animation-iteration-count:1!important; } .category-card:hover,.category-card:focus-visible,.tool-card:hover,.converter-card.tool-launch:hover,.demo-persona-card:hover,.btn:hover:not(:disabled) { transform:none; } }
