:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#213c39;background:#f3f5f1;font-size:15px;--green:#173c38;--muted:#6e7c75;--border:#dce3dc}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{background:var(--green);color:white;border:1px solid transparent;border-radius:8px;padding:11px 17px;cursor:pointer;font-weight:600}button:disabled{opacity:.5;cursor:wait}button:hover{filter:brightness(1.13)}a{color:#216754}input,select,textarea{width:100%;background:white;border:1px solid #cbd6cc;border-radius:7px;padding:10px;color:#213c39;margin-top:7px}input:focus,select:focus,textarea:focus{outline:2px solid #4e9681;outline-offset:1px}label{display:block;font-size:.88rem;font-weight:600}small,.muted{color:var(--muted)}small{display:block;font-size:.8rem;margin-top:5px}h1{font-size:2rem;letter-spacing:-1px;margin:4px 0}h2{font-size:1.3rem;letter-spacing:-.4px}h3{font-size:1.05rem}p{line-height:1.55}.eyebrow{font-size:.68rem;font-weight:700;letter-spacing:1.8px;color:#698077}.brand-mark{display:inline-grid;place-items:center;background:#dceaac;color:var(--green);width:43px;height:43px;border-radius:12px;font-size:17px;font-weight:800}.logo{display:flex;align-items:center;gap:12px;margin-bottom:36px}.logo strong{font-size:1.25rem}aside{position:fixed;inset:0 auto 0 0;width:248px;background:#fff;border-right:1px solid var(--border);padding:28px 20px;display:flex;flex-direction:column;overflow:auto}nav{display:grid;gap:4px}nav button{text-align:left;background:none;color:#5c7068;font-size:.9rem;padding:12px}nav button.active{background:#e8efe2;color:#173c38}nav button:hover{background:#f1f5ee}.account{margin-top:auto;padding-top:30px}.account button{margin-top:12px}.workspace{margin-left:248px;padding:32px 42px;max-width:1600px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.office-tag{font-size:.78rem;border:1px solid var(--border);border-radius:30px;padding:9px 13px;background:white;color:#5c7068}.welcome{border-radius:15px;padding:26px 30px;background:#173c38;color:#fff;background-image:radial-gradient(circle at 95% 20%,#476a4d 0,transparent 45%);margin-bottom:24px}.welcome .eyebrow{color:#cadf9b}.welcome h2{font-size:1.9rem;margin:12px 0}.welcome p:last-child{color:#cfdbce;margin-bottom:0}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}.stats article{background:white;border:1px solid var(--border);border-radius:12px;padding:22px}.stats strong{display:block;font-size:2.1rem;margin-top:15px;font-weight:650}.stats .amount{font-size:1.45rem}.panel{background:white;border:1px solid var(--border);border-radius:12px;padding:22px;margin-bottom:20px}.panel h2{margin-top:0}.columns,.report-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.toolbar p{color:var(--muted)}.toolbar>div{display:flex;gap:12px}.toolbar input{margin:0}.secondary{background:white;color:#244a3d;border-color:var(--border)}.link{background:none;color:#27694c;padding-left:0}.filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap}.filters label{flex:1;min-width:135px}.filters label:first-child{flex:2}.filters button{font-size:.8rem}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:.88rem;margin-top:18px}th{text-align:left;text-transform:uppercase;font-size:.65rem;letter-spacing:1px;color:var(--muted);padding:12px 10px;background:#f5f7f3}td{padding:16px 10px;border-bottom:1px solid #edf0ea;vertical-align:top}td .secondary{font-size:.8rem;padding:7px 12px}.badge{display:inline-block;border-radius:20px;padding:5px 10px;background:#edf3e5;color:#45613e;font-size:.75rem}.urgent{color:#a54e2b}.visitor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:22px}.visitor{display:flex;align-items:start;gap:18px;padding:20px;border:1px solid var(--border);border-radius:12px;background:white}.visitor img{width:100px;height:120px;object-fit:cover;border-radius:10px}.visitor h3{margin:8px 0}.visitor p{margin:7px 0;font-size:.85rem}.token{font-size:1.8rem;font-weight:750}.meeting{border:2px solid #789c4c;background:#fbfdf5}.visitor select{font-size:.8rem}.login{width:min(440px,92vw);margin:8vh auto;background:#fff;padding:35px;border-radius:18px;border:1px solid var(--border)}.login label{margin:18px 0}.login form>button{width:100%;margin:10px 0}.login .brand-mark{margin-bottom:20px}dialog{border:1px solid var(--border);border-radius:16px;padding:28px;max-width:850px;width:94vw;max-height:92vh;color:#213c39}dialog::backdrop{background:#102c2877;backdrop-filter:blur(3px)}.close{float:right}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:25px}.wide{grid-column:1/-1}.form-grid>button{margin-top:12px}dl{display:grid;grid-template-columns:1fr 2fr;gap:10px 20px}dt{font-size:.84rem;color:var(--muted)}dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.actions{display:flex;gap:12px;margin:25px 0}.timeline article{border-left:2px solid #b2c5a8;padding:4px 0 4px 18px;margin:12px 0}.timeline p{white-space:pre-wrap;font-size:.85rem}.letter-body{white-space:pre-wrap;line-height:1.8;min-height:200px;margin-top:35px}#notice{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);padding:15px 24px;border-radius:10px;background:#183e34;color:white;box-shadow:0 8px 30px #0002;max-width:90vw;opacity:0;pointer-events:none;z-index:1000}#notice.visible{opacity:1}.loading{padding:40px}summary{cursor:pointer;padding:20px 0}form#upload-form{display:flex;gap:15px;align-items:end}form#upload-form label{flex:1}@media(max-width:1000px){aside{width:205px;padding:22px 12px}.workspace{margin-left:205px;padding:25px}.stats{grid-template-columns:1fr 1fr}.office-tag{display:none}.columns,.report-grid{grid-template-columns:1fr}}@media(max-width:650px){aside{position:static;width:100%;padding:16px}.logo{margin-bottom:12px}.logo .brand-mark{width:34px;height:34px}aside>.eyebrow{display:none}nav{display:flex;overflow:auto;padding-bottom:6px}nav button{white-space:nowrap;padding:9px}.account{display:flex;gap:10px;align-items:center;padding-top:10px}.account small{margin:0}.account button{margin:0 0 0 auto;padding:6px 10px}.workspace{margin:0;padding:20px 15px}header{margin-bottom:20px}h1{font-size:1.6rem}.welcome{padding:22px}.welcome h2{font-size:1.5rem}.stats{gap:10px}.stats article{padding:16px}.toolbar{align-items:start;flex-direction:column;gap:10px}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.panel{padding:16px}.visitor img{width:80px;height:100px}dialog{padding:20px}dl{grid-template-columns:1fr}dd{margin-bottom:12px}form#upload-form{display:block}form#upload-form button{margin-top:12px}}@media print{body{background:white}aside,header,.toolbar,.filters,.actions,button,#notice,#upload-form{display:none!important}.workspace{margin:0;padding:0;max-width:none}.panel{break-inside:avoid}.stats{grid-template-columns:repeat(4,1fr)}body:has(dialog[open]) #app{display:none}dialog[open]{position:static;width:100%;max-width:none;max-height:none;overflow:visible;border:0;padding:0}dialog[open]::backdrop{display:none}.timeline{font-size:10pt}a{color:black}th,td{font-size:10pt}}

/* Professional workspace and analytics dashboard. */
:root { color:#263348; background:#f4f6fa; --green:#166b60; --muted:#788498; --border:#e5eaf1; }
body { background:#f4f6fa; }
aside { width:246px; background:#14263a; color:#e9f0f8; border:0; padding:30px 18px 22px; }
.logo { padding:0 10px; margin-bottom:32px; gap:11px; }
.logo strong { font-size:1.16rem; letter-spacing:-.4px; }
aside .brand-mark { width:38px; height:38px; border-radius:11px; background:#d3e7dd; color:#173f3c; font-size:15px; }
aside>.eyebrow { color:#7f95ac; padding-left:15px; font-size:.62rem; letter-spacing:1.6px; }
nav { gap:5px; }
nav button { color:#a9bbcd; font-weight:500; font-size:.84rem; display:flex; align-items:center; gap:12px; border-radius:7px; padding:12px 14px; }
nav button::before { content:'◇'; font-size:17px; width:18px; color:#839bb4; text-align:center; }
nav button[data-page="dashboard"]::before { content:'▦'; }
nav button[data-page="visitors"]::before { content:'♙'; }
nav button[data-page="applications"]::before { content:'▤'; }
nav button[data-page="events"]::before { content:'▣'; }
nav button[data-page="reports"]::before { content:'▥'; }
nav button[data-page="social"]::before { content:'↗'; }
nav button[data-page="funds"]::before { content:'◈'; }
nav button.active { color:#fff; background:#254b52; box-shadow:inset 3px 0 #7bc4ad; }
nav button.active::before { color:#b5e0cf; }
nav button:hover { color:#fff; background:#20394d; }
.account { border-top:1px solid #2b3d50; margin-top:auto; padding:22px 10px 0; }
.account strong { font-size:.88rem; }
.account small { color:#91a6bd; text-transform:capitalize; }
.account button { font-size:.73rem; padding:8px 10px; margin-right:5px; background:#1f354a; border-color:#34495f; color:#d0dce8; }
.workspace { margin-left:246px; padding:30px 36px 26px; max-width:1800px; }
.workspace>header { padding-bottom:22px; margin-bottom:25px; border-bottom:1px solid #e0e6ee; }
.workspace>header h1 { color:#1e3046; font-size:1.6rem; letter-spacing:-.6px; font-weight:650; }
.workspace>header .eyebrow { color:#8995a7; letter-spacing:1px; font-size:.65rem; margin-bottom:8px; }
.office-tag { color:#68788c; border-radius:7px; padding:9px 12px; font-size:.72rem; }
button { border-radius:7px; }
.panel { border-color:#e6eaf1; border-radius:12px; padding:23px; box-shadow:0 3px 14px #233f6003; }
.panel h2 { color:#25364a; font-size:.98rem; font-weight:650; letter-spacing:-.15px; }
input,select,textarea { color:#33465d; border-color:#dce3ec; border-radius:6px; }
.dashboard-toolbar { display:flex; align-items:center; justify-content:space-between; gap:22px; margin-bottom:22px; }
.dashboard-kicker { color:#7c8ca1; font-size:.61rem; letter-spacing:1.6px; font-weight:750; margin:0 0 10px; }
.dashboard-toolbar h2 { margin:0 0 9px; font-size:1.65rem; font-weight:650; color:#23364c; letter-spacing:-.7px; }
.dashboard-toolbar .muted { font-size:.82rem; margin:0; line-height:1.6; }
.dashboard-controls { display:flex; gap:10px; align-items:end; flex-shrink:0; }
.dashboard-controls label { color:#7b899d; font-size:.66rem; font-weight:550; }
.dashboard-controls select { width:153px; font-size:.77rem; padding:10px 12px; margin-top:6px; height:38px; }
.dashboard-controls button { font-size:.77rem; font-weight:550; height:38px; padding:8px 13px; }
.dashboard-summary { display:flex; align-items:center; gap:9px; font-size:.74rem; color:#6e7f91; margin:0 0 18px; }
.summary-dot,.live-label>span { width:6px; height:6px; background:#339b7c; border-radius:50%; flex-shrink:0; }
.dashboard-summary strong { color:#35536a; font-weight:650; }
.summary-divider { color:#bec8d3; margin:0 9px; }
.summary-right { margin-left:auto; font-size:.69rem; color:#8d99aa; }
.dashboard-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:22px; }
.metric-card { background:white; border:1px solid var(--border); border-radius:11px; padding:20px 21px 17px; box-shadow:0 3px 10px #203d6303; }
.metric-top { display:flex; justify-content:space-between; align-items:center; gap:10px; color:#718095; font-size:.74rem; font-weight:550; }
.metric-symbol { display:grid; place-items:center; height:28px; width:28px; border-radius:8px; background:#eaf4f0; color:#378a74; font-size:17px; }
.metric-card.amber .metric-symbol { background:#fdf4e6; color:#ba8d42; }
.metric-card.rose .metric-symbol { background:#fbefec; color:#c47b70; }
.metric-card.purple .metric-symbol { background:#efedf9; color:#8276c5; }
.metric-card>strong { display:block; font-size:2.1rem; color:#263a50; font-weight:650; letter-spacing:-1.3px; margin:13px 0 9px; line-height:1.1; }
.metric-card>p { color:#8894a5; font-size:.65rem; line-height:1.6; margin:0; }
.dashboard-main-grid,.dashboard-secondary-grid { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:20px; }
.dashboard-main-grid>.panel,.dashboard-secondary-grid>.panel { min-width:0; }
.panel-heading { display:flex; align-items:start; justify-content:space-between; gap:15px; margin-bottom:18px; }
.panel-heading h2 { margin:0 0 7px; }
.panel-heading p { color:#8a96a7; font-size:.68rem; margin:0; line-height:1.5; }
.subtle-tag { color:#8390a2; background:#f5f7fa; border:1px solid #e9edf3; border-radius:5px; padding:5px 8px; font-size:.63rem; white-space:nowrap; }
.chart-legend { display:flex; gap:20px; margin:3px 0 8px; }
.chart-legend>span { display:inline-flex; align-items:center; gap:7px; font-size:.65rem; color:#7e8ba0; }
.trend-svg { display:block; width:100%; height:auto; overflow:visible; }
.chart-grid { stroke:#ecf0f5; stroke-width:1; stroke-dasharray:4 5; }
.chart-label { fill:#8c99ab; font-size:11px; font-family:inherit; }
.chart-data { margin-top:7px; }
.chart-data summary { padding:3px 0; font-size:.61rem; color:#8c99aa; }
.chart-data table { font-size:.7rem; }
.chart-data[open] { max-height:220px; overflow:auto; }
.chart-data td { padding:7px 9px; }
.chart-empty { color:#8796a8; font-size:.7rem; text-align:center; margin:5px 0; }
.donut-layout { display:flex; align-items:center; justify-content:center; gap:15px; min-height:205px; }
.donut-layout>svg { width:53%; max-width:210px; flex-shrink:0; }
.donut-track { stroke:#eef1f6; }
.donut-value { font-size:34px; font-weight:650; fill:#2f4056; letter-spacing:-1px; }
.donut-legend { flex:1; min-width:110px; }
.donut-legend>div { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:11px 0; border-bottom:1px solid #f0f2f7; }
.donut-legend>div:last-child { border-bottom:0; }
.donut-legend span { display:flex; align-items:center; gap:7px; font-size:.68rem; color:#78889b; }
.donut-legend strong { font-size:.8rem; color:#3d4e64; }
.bar-list { display:grid; gap:19px; margin-top:25px; }
.bar-label { display:flex; justify-content:space-between; gap:10px; margin-bottom:9px; font-size:.72rem; color:#77869a; }
.bar-label strong { color:#425469; font-size:.75rem; }
.bar-svg { width:100%; height:7px; display:block; }
.bar-track { fill:#f0f3f7; }
.empty-state { text-align:center; padding:30px 10px; color:#91a0b2; font-size:.76rem; }
.empty-mark { display:inline-grid; place-items:center; height:37px; width:37px; border-radius:50%; background:#f0f5f4; color:#81a69d; font-size:17px; }
.empty-state p { margin:11px 0 0; }
.live-label { display:inline-flex; align-items:center; gap:5px; background:#edf6f0; color:#59927b; font-size:.55rem; letter-spacing:.8px; border-radius:4px; padding:5px 7px; }
.live-label>span { width:4px; height:4px; }
.meeting-profile { display:flex; flex-wrap:wrap; align-items:center; gap:13px; padding:13px 0 20px; }
.meeting-profile img { width:56px; height:66px; border-radius:9px; object-fit:cover; }
.meeting-token { color:#2c635a; font-size:1.6rem; font-weight:650; letter-spacing:-1px; }
.meeting-profile>div { flex:1; min-width:100px; }
.meeting-caption { font-size:.52rem; letter-spacing:1px; color:#75a094; font-weight:650; }
.meeting-profile h3 { margin:6px 0 4px; color:#3d5167; font-size:.88rem; }
.meeting-profile p { margin:0; font-size:.65rem; color:#8c99a9; }
.queue-summary { display:flex; gap:24px; padding:16px 0; border-top:1px solid #edf0f5; border-bottom:1px solid #edf0f5; color:#8492a4; font-size:.68rem; }
.queue-summary strong { color:#40556b; margin-right:4px; font-size:.9rem; }
.text-button { background:none; padding:0; color:#358370; border:0; font-size:.68rem; font-weight:600; white-space:nowrap; text-align:left; }
.meeting-panel>.text-button { margin-top:20px; }
.task-row { display:flex; align-items:center; gap:12px; width:100%; background:none; padding:15px 0; border:0; border-bottom:1px solid #eff2f6; border-radius:0; color:inherit; text-align:left; }
.task-row:last-child { border-bottom:0; }
.task-row:hover { background:#f9fbfd; filter:none; }
.task-id { display:grid; place-items:center; height:32px; min-width:40px; background:#f1f5f9; border-radius:6px; color:#8796a8; font-size:.65rem; font-weight:500; }
.task-copy { flex:1; min-width:0; }
.task-copy strong { font-size:.75rem; font-weight:550; color:#47596f; display:block; overflow-wrap:anywhere; }
.task-copy small { font-size:.63rem; color:#94a0af; font-weight:400; }
.task-state { font-size:.6rem; color:#7e8ea3; text-align:right; white-space:nowrap; font-weight:550; }
.task-state.overdue { color:#bb796d; }
.task-state.urgent { color:#bf934e; }
.task-state small { font-size:.58rem; color:#9da8b7; font-weight:400; }
.dashboard-footer-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:20px; }
.schedule-row { display:flex; align-items:start; gap:14px; padding:14px 0; background:none; width:100%; text-align:left; color:#465a70; border:0; border-bottom:1px solid #edf0f5; border-radius:0; }
.schedule-time { color:#9aa7b8; font-size:.66rem; padding-top:2px; min-width:42px; font-weight:500; }
.schedule-row strong { font-size:.73rem; font-weight:550; }
.schedule-row small { font-size:.64rem; font-weight:400; }
.dashboard-empty-copy { font-size:.73rem; padding-top:15px; }
.fund-panel { background:#edf4f2; border-color:#dfebe6; }
.fund-panel h2 { font-size:1.8rem; color:#336b5d; margin:15px 0 4px; letter-spacing:-1px; overflow-wrap:anywhere; }
.fund-panel>p:not(.dashboard-kicker) { font-size:.67rem; color:#7f9b90; margin:0; }
.fund-details { display:grid; gap:12px; margin:24px 0; color:#7d968c; font-size:.68rem; }
.fund-details strong { color:#436b5f; margin-right:5px; }
.dashboard-footnote { margin:0 0 10px; font-size:.64rem; color:#95a1b1; }
@media(min-width:1600px) { .workspace { padding-left:46px; padding-right:46px; } }
@media(max-width:1200px) { .workspace { padding:26px; } .metric-card { padding:17px; } .dashboard-main-grid,.dashboard-secondary-grid { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); } .donut-layout { flex-direction:column; gap:0; } .donut-layout>svg { width:160px; } .donut-legend { width:100%; } .donut-legend>div { padding:7px 0; } }
@media(max-width:1000px) { aside { width:205px; padding:24px 12px; } .workspace { margin-left:205px; padding:24px; } .dashboard-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); } .dashboard-toolbar { align-items:start; flex-direction:column; } .dashboard-main-grid,.dashboard-secondary-grid { grid-template-columns:1fr; gap:0; } .donut-layout { flex-direction:row; gap:20px; } .donut-legend { width:auto; } .donut-layout>svg { width:180px; } }
@media(max-width:650px) { aside { position:static; width:100%; padding:16px; } .logo { padding:0; margin-bottom:12px; } nav { gap:5px; } nav button { padding:10px; font-size:.77rem; gap:7px; flex-shrink:0; } nav button::before { font-size:14px; width:14px; } nav button.active { box-shadow:inset 0 -2px #7bc4ad; } .account { padding:12px 0 0; margin-top:8px; flex-wrap:wrap; } .account button { margin:0; } .account button:first-of-type { margin-left:auto; } .workspace { margin-left:0; padding:22px 15px; } .workspace>header { padding-bottom:17px; margin-bottom:22px; } .workspace>header h1 { font-size:1.4rem; } .dashboard-toolbar h2 { font-size:1.4rem; } .dashboard-toolbar .muted { font-size:.76rem; } .dashboard-toolbar { gap:16px; } .dashboard-controls { width:100%; } .dashboard-controls label { flex:1; } .dashboard-controls select { width:100%; } .dashboard-metrics { gap:11px; margin-bottom:16px; } .metric-card { padding:15px 13px; } .metric-top { font-size:.66rem; gap:5px; } .metric-symbol { width:24px; height:24px; flex-shrink:0; } .metric-card>strong { font-size:1.85rem; } .metric-card>p { font-size:.59rem; min-height:30px; } .panel { padding:20px 17px; margin-bottom:16px; } .summary-right { display:none; } .dashboard-summary { font-size:.68rem; } .donut-layout { gap:10px; } .donut-layout>svg { width:49%; max-width:175px; } .donut-legend { min-width:110px; } .dashboard-footer-grid { grid-template-columns:1fr; gap:0; } .task-row { gap:8px; } .task-id { min-width:34px; } .task-state { font-size:.57rem; } .dashboard-footnote { font-size:.59rem; margin-top:7px; } }
@media(prefers-reduced-motion:no-preference) { button,a { transition:background-color .15s,box-shadow .15s; } }
@media print { aside,.dashboard-controls,.chart-data,.text-button { display:none!important; } .workspace { margin:0!important; padding:0; } .dashboard-metrics { grid-template-columns:repeat(4,1fr); } .dashboard-main-grid,.dashboard-secondary-grid { grid-template-columns:1.5fr 1fr; } .dashboard-toolbar,.dashboard-summary { break-after:avoid; } .panel,.metric-card { box-shadow:none; } .trend-svg { width:100%; } .chart-grid { stroke:#ddd; } .task-row,.schedule-row { display:flex!important; } }
/* Shared icon treatment and readable supporting text. */
nav button::before { display:none; }
.navigation-icon { width:17px; height:17px; flex-shrink:0; opacity:.9; }
.metric-top { font-size:.8rem; }
.metric-card>p,.panel-heading p,.chart-legend>span,.dashboard-footnote,.summary-right { font-size:.72rem; }
.task-copy strong { font-size:.82rem; }
.task-copy small,.bar-label,.donut-legend span { font-size:.72rem; }
@media(max-width:650px) { .metric-top { font-size:.72rem; } .metric-card>p { font-size:.66rem; } .metric-symbol { width:22px; height:22px; } .dashboard-controls { flex-wrap:wrap; } .dashboard-controls label { min-width:160px; } .account { gap:8px; } .account button { flex-shrink:0; } .navigation-icon { width:15px; height:15px; } .dashboard-footnote { font-size:.68rem; } }

/* Linked area management. */
.area-actions,.area-pagination { display:flex; gap:8px; }
.area-pagination { justify-content:flex-end; margin-top:18px; }
.area-actions button { white-space:nowrap; }
.danger { color:#ad5a53; }
.danger-button { background:#ab5048; }
.area-path { min-width:180px; font-size:.78rem; color:#8290a1; overflow-wrap:anywhere; }
.area-stats strong { font-size:1.6rem; }
.area-picker { border:1px solid #e1e8ed; padding:18px; border-radius:9px; margin:0; }
.area-picker legend { color:#53697c; font-size:.8rem; font-weight:650; }
.area-picker p { margin:0 0 15px; font-size:.76rem; }
.area-picker-selects { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
@media(max-width:650px) { .area-picker-selects { grid-template-columns:1fr; } .area-actions { flex-direction:column; } }

/* Location briefings: printable field notes with the same workspace design. */
.location-selector { display:grid; grid-template-columns:minmax(180px,1fr) minmax(260px,2fr); gap:18px; }
.location-selector label { font-size:.76rem; color:#6f8094; }
.location-hero { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:27px 30px; background:#183c47; border-radius:12px; margin-bottom:17px; color:#d6e5e7; }
.location-hero h2 { margin:0 0 10px; font-size:1.9rem; font-weight:650; letter-spacing:-.7px; color:#fff; }
.location-hero p:last-child { font-size:.81rem; margin:0; color:#a9c5c8; }
.location-hero .dashboard-kicker { color:#8dc4b7; }
.location-hero button { flex-shrink:0; font-size:.75rem; border-color:#46646b; color:#dbeae8; background:#264b54; }
.location-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin:13px 0 22px; }
.location-breadcrumb>a { background:#fff; border:1px solid #e4eaf0; border-radius:7px; padding:8px 12px; text-decoration:none; color:#3e6f65; font-size:.75rem; font-weight:600; }
.location-breadcrumb>a:hover { border-color:#82b3a6; }
.location-breadcrumb small { font-size:.6rem; color:#9aa5b3; font-weight:400; }
.location-breadcrumb>span { color:#b1becc; }
.brief-filters { display:flex; flex-wrap:wrap; align-items:end; gap:12px; }
.brief-filters>div { flex:2; min-width:200px; padding-bottom:5px; }
.brief-filters>div strong { font-size:.77rem; color:#64798e; }
.brief-filters>div small { font-size:.68rem; line-height:1.6; }
.brief-filters label { flex:1; min-width:120px; font-size:.7rem; color:#7c8d9f; }
.brief-filters button { font-size:.73rem; }
.brief-scope-note { border-left:3px solid #8fb4a9; color:#7e8fa2; font-size:.73rem; line-height:1.8; padding:9px 15px; background:#edf3f2; border-radius:0 6px 6px 0; margin-bottom:22px; }
.brief-scope-note strong { color:#5f8078; }
.brief-money-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; padding:5px 0 10px; }
.brief-money-grid>div { background:#f5f8fa; border:1px solid #e9edf2; border-radius:8px; padding:15px 12px; }
.brief-money-grid small { font-size:.62rem; color:#8595a5; line-height:1.6; }
.brief-money-grid strong { display:block; font-size:1.12rem; font-weight:650; color:#376b60; margin-top:12px; overflow-wrap:anywhere; }
.brief-caption { color:#95a1af; font-size:.67rem; line-height:1.7; margin:20px 0 0; }
.brief-action-row { display:flex; align-items:start; justify-content:space-between; gap:15px; border-bottom:1px solid #edf1f5; padding:16px 0; }
.brief-action-row:last-child { border-bottom:0; }
.brief-action-row>div { min-width:0; flex:1; }
.brief-action-row .text-button { font-size:.78rem; white-space:normal; line-height:1.6; text-align:left; }
.brief-action-row small { font-size:.67rem; color:#96a3b1; line-height:1.6; }
.brief-action-row p { font-size:.76rem; color:#76899c; margin:8px 0 0; white-space:pre-wrap; overflow-wrap:anywhere; }
.brief-action-row .task-state { margin-top:4px; font-size:.65rem; }
.brief-contact { padding:15px 0; border-bottom:1px solid #edf1f5; }
.brief-contact:last-of-type { border-bottom:0; }
.brief-contact strong { font-size:.82rem; color:#425b70; }
.brief-contact p { font-size:.73rem; color:#8898aa; margin:5px 0; }
.brief-contact small { font-size:.65rem; line-height:1.7; }
.brief-contact>a { display:inline-block; margin-top:8px; font-size:.76rem; text-decoration:none; }
.programme-brief-link { padding:0 0 12px 56px; }
.programme-brief-link>a { font-size:.68rem; }
.location-hero~.dashboard-metrics .metric-card:first-child>strong { font-size:clamp(1.15rem,2vw,1.9rem); overflow-wrap:anywhere; }
.area-actions .text-button { align-self:center; font-size:.73rem; }
@media(max-width:1000px) { .location-selector { grid-template-columns:1fr; } .brief-money-grid { gap:8px; } }
@media(max-width:650px) { .location-hero { flex-direction:column; align-items:start; padding:22px; } .location-hero h2 { font-size:1.55rem; } .location-hero p:last-child { font-size:.75rem; } .location-breadcrumb { gap:7px; } .location-breadcrumb>a { padding:7px 9px; font-size:.69rem; } .location-selector { padding:17px; } .location-selector select { width:100%; min-width:0; font-size:.77rem; } .brief-filters>div { flex-basis:100%; } .brief-filters label { min-width:100px; } .brief-money-grid { grid-template-columns:1fr; } .brief-money-grid>div { display:flex; align-items:center; justify-content:space-between; gap:14px; } .brief-money-grid strong { margin:0; font-size:1rem; } .brief-action-row { gap:9px; } .brief-action-row .badge { font-size:.6rem; } .brief-scope-note { font-size:.68rem; } }
@media print { .location-selector,.brief-filters,.location-hero button { display:none!important; } .location-hero { background:white; color:#263348; padding:0; margin-bottom:12px; } .location-hero h2 { color:#263348; font-size:22pt; } .location-hero .dashboard-kicker,.location-hero p:last-child { color:#666; } .location-breadcrumb { gap:5px; } .location-breadcrumb>a { border:0; padding:0 5px; color:#444; } .location-breadcrumb a::after { content:none; } .brief-action-row button.text-button { display:inline!important; color:#333; } .brief-scope-note { background:white; color:#555; } .location-hero~.dashboard-metrics .metric-card:first-child>strong { font-size:1.1rem; } }
.brief-report-range { font-size:.73rem; color:#7b8b9d; margin:0 0 18px; }
@media print { .brief-record-button,.location-link { display:inline!important; color:#333!important; background:none; padding:0; font-size:inherit; } .brief-report-range { color:#555; } .brief-record-button::after,.location-link::after { content:none; } }

/* Office workflow tools and language controls. */
aside>nav { min-height:0; overflow-y:auto; flex:1; }
aside>.logo,aside>.eyebrow,aside>.account { flex-shrink:0; }
.language-control { display:block; color:#99afc3; font-size:.6rem; font-weight:500; margin-bottom:17px; }
.language-control select { font-size:.75rem; padding:8px 10px; margin-top:7px; background:#20394e; border-color:#344c62; color:#e0ebf5; }
.login .language-control { color:#7a8c9f; margin-bottom:22px; }
.login .language-control select { background:#f6f9fb; border-color:#dae3ec; color:#39576e; }
:lang(or) { font-family:'Nirmala UI','Noto Sans Oriya','Segoe UI',sans-serif; }
:lang(hi) { font-family:'Nirmala UI','Noto Sans Devanagari','Segoe UI',sans-serif; }
.workflow-card { border:1px solid #e4eaf0; border-radius:10px; padding:20px; margin:20px 0; background:#fbfcfe; }
.workflow-card h3 { font-size:.95rem; color:#37566c; margin:0 0 15px; }
.workflow-card p { font-size:.81rem; color:#788b9e; line-height:1.7; overflow-wrap:anywhere; white-space:pre-wrap; }
.workflow-card small { font-size:.69rem; line-height:1.7; }
.workflow-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; margin:20px 0 10px; }
.workflow-form>button { grid-column:1/-1; justify-self:start; font-size:.8rem; }
.workflow-form label { font-size:.75rem; }
.workflow-list-row { display:flex; justify-content:space-between; gap:15px; align-items:start; padding:15px 0; border-bottom:1px solid #e8edf3; }
.workflow-list-row:last-child { border-bottom:0; }
.workflow-list-row>div { min-width:0; flex:1; }
.workflow-list-row .text-button { white-space:normal; line-height:1.6; font-size:.79rem; }
.workflow-list-row p { font-size:.75rem; color:#8a9aaa; margin:6px 0 0; }
.workflow-list-row .badge { flex-shrink:0; font-size:.66rem; }
.document-check-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.8fr); gap:18px; padding:20px 0; border-bottom:1px solid #e8edf3; }
.document-check-row:last-child { border-bottom:0; }
.document-check-row strong { font-size:.82rem; color:#557080; }
.document-check-form { display:grid; grid-template-columns:1fr 1fr; gap:9px; }
.document-check-form select,.document-check-form input { margin:0; font-size:.73rem; min-width:0; }
.document-check-form input { grid-column:1/-1; }
.document-check-form button { justify-self:start; font-size:.73rem; padding:8px 12px; }
.checklist-preview { background:#f0f5f4; border:1px solid #deebe6; padding:17px 20px; border-radius:8px; }
.checklist-preview strong { color:#53796e; font-size:.78rem; }
.checklist-preview ul,.checklist-preview p { font-size:.76rem; color:#78948b; line-height:1.8; margin:10px 0; }
.checklist-preview small { font-size:.66rem; }
.workflow-log { border-left:2px solid #aac6bb; padding:5px 13px; margin:15px 0; }
.readiness-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px; margin:16px 0; }
.readiness-item { display:flex; align-items:center; gap:9px; font-size:.75rem; color:#9a9da5; padding:11px; background:#f3f5f8; border-radius:6px; }
.readiness-item span { font-size:15px; color:#aab4c0; }
.readiness-item.is-ready { background:#edf5ef; color:#578676; }
.readiness-item.is-ready span { color:#42866a; }
.daily-stop-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(330px,1fr)); gap:20px; }
.daily-stop h2 .text-button { font-size:1.05rem; font-weight:650; color:#315b6a; white-space:normal; }
.daily-stop-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:22px 0; }
.daily-stop-stats span { font-size:.65rem; color:#8b9eaa; line-height:1.7; }
.daily-stop-stats strong { display:block; font-size:1.1rem; font-weight:650; color:#4c7a6d; overflow-wrap:anywhere; }
.daily-stop-stats span:first-child { grid-column:1/-1; }
.daily-controls { display:flex; gap:12px; align-items:center; }
.daily-controls input { width:160px; font-size:.77rem; margin:0; }
.verification-label { color:#6f9a88; }
#task-scope { width:190px; font-size:.8rem; margin:0; }
@media(max-width:650px) { aside>nav { flex:initial; overflow-x:auto; overflow-y:hidden; } .account .language-control { flex-basis:100%; display:flex; justify-content:space-between; align-items:center; margin:0 0 10px; gap:10px; } .account .language-control select { width:150px; margin:0; } .workflow-card { padding:16px; } .workflow-form,.document-check-row,.readiness-grid { grid-template-columns:1fr; } .document-check-form { grid-template-columns:1fr; } .workflow-form>.wide { grid-column:1; } .workflow-list-row { gap:10px; } .daily-stop-grid { grid-template-columns:1fr; gap:0; } .daily-controls { flex-wrap:wrap; } .daily-stop-stats { gap:10px; } .language-control select { min-width:0; } }
@media print { .language-control,.workflow-form,.document-check-form,.daily-controls,#task-scope { display:none!important; } .workflow-card { background:white; break-inside:avoid; } .workflow-card .text-button,.workflow-list-row .text-button,.daily-stop .text-button { display:inline!important; color:#333; } .readiness-item,.readiness-item.is-ready { background:white; color:#444; } .daily-stop-grid { grid-template-columns:1fr; } .daily-stop { break-inside:avoid; } }
