:root{
  --bg:#171511;
  --bg-2:#201c17;
  --panel:#242019;
  --panel-2:#2c261f;
  --paper:#eee8df;
  --paper-2:#ddd3c7;
  --ink:#1a1713;
  --text:#f3eee7;
  --muted:#a99e91;
  --line:rgba(255,255,255,.09);
  --line-dark:rgba(24,20,16,.10);
  --sand:#e6c789;
  --sand-2:#f2dfba;
  --sage:#9eae98;
  --sage-2:#c9d3c5;
  --blue:#93a8b7;
  --rust:#c28f73;
  --danger:#d99286;
  --shadow:0 24px 70px rgba(0,0,0,.28);
  --soft-shadow:0 12px 34px rgba(20,14,9,.12);
  --radius-xl:32px;
  --radius-lg:24px;
  --radius-md:18px;
  --radius-sm:14px;
  --rail:254px;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html{background:var(--bg);color-scheme:dark;scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:linear-gradient(135deg,#16130f 0%,#1d1914 48%,#15130f 100%);color:var(--text);overflow-x:hidden}
button,input,select,textarea{font:inherit}button{color:inherit}a{color:inherit}
.ambient{position:fixed;filter:blur(90px);border-radius:50%;pointer-events:none;opacity:.25;z-index:0}.ambient-a{width:480px;height:480px;right:-170px;top:-120px;background:#8a7562}.ambient-b{width:380px;height:380px;left:10%;bottom:-170px;background:#46544c;opacity:.17}
.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:var(--rail) minmax(0,1fr);min-height:100vh}
.rail{height:100vh;position:sticky;top:0;padding:22px 16px 18px;border-right:1px solid var(--line);background:rgba(19,17,14,.80);backdrop-filter:blur(28px);display:flex;flex-direction:column;z-index:30}
.brand{display:flex;align-items:center;gap:11px;padding:4px 6px 19px}.brand-mark{width:43px;height:43px;border-radius:15px;background:linear-gradient(145deg,#3a332a,#1b1813);border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 11px 25px rgba(0,0,0,.22);display:grid;place-items:center;font-weight:800;color:var(--sand)}.brand>div:nth-child(2){min-width:0}.brand strong{display:block;font-size:14px;letter-spacing:-.01em}.brand span{display:block;font-size:10px;color:var(--muted);margin-top:2px}
.kicker{font-size:9px;letter-spacing:.14em;font-weight:800;color:#857a6e}.workspace-card{padding:15px 14px;margin:0 2px 15px;border-radius:20px;background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.02));border:1px solid var(--line);box-shadow:inset 0 1px 0 rgba(255,255,255,.05)}.workspace-card strong,.workspace-card small{display:block}.workspace-card strong{font-size:13px;margin-top:5px}.workspace-card small{font-size:10px;color:var(--muted);margin-top:5px}
.rail-nav{display:flex;flex-direction:column;gap:5px;overflow:auto;padding-right:2px}.nav-btn{width:100%;border:0;background:transparent;border-radius:15px;padding:10px 11px;display:flex;align-items:center;gap:10px;text-align:left;color:#afa497;cursor:pointer;transition:.2s ease}.nav-btn:hover{background:rgba(255,255,255,.04);color:#fff}.nav-btn.active{background:linear-gradient(145deg,rgba(230,199,137,.16),rgba(230,199,137,.06));color:#f7ead1;border:1px solid rgba(230,199,137,.16);box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.nav-icon{width:25px;height:25px;border-radius:9px;background:rgba(255,255,255,.04);display:grid;place-items:center;font-size:12px}.nav-btn.active .nav-icon{background:rgba(230,199,137,.14);color:var(--sand)}.nav-btn span:last-child{font-size:11px;font-weight:650}
.rail-note{margin-top:auto;padding:13px;border-radius:18px;border:1px solid var(--line);background:rgba(255,255,255,.025);display:flex;align-items:flex-start;gap:9px}.privacy-dot{width:8px;height:8px;border-radius:99px;background:var(--sage);box-shadow:0 0 0 4px rgba(158,174,152,.10);margin-top:4px;flex:0 0 auto}.rail-note strong{font-size:10px;display:block}.rail-note small{font-size:9px;color:#83796e;line-height:1.45;display:block;margin-top:3px}
.main{min-width:0;padding-bottom:86px}.topbar{height:84px;padding:0 26px;display:flex;align-items:center;gap:12px;justify-content:space-between;position:sticky;top:0;z-index:20;background:rgba(23,21,17,.72);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.06)}.top-context h1{margin:4px 0 0;font-size:20px;letter-spacing:-.03em}.top-actions{display:flex;align-items:center;gap:9px}.glass-btn{height:42px;padding:0 14px;border-radius:14px;border:1px solid var(--line);background:rgba(255,255,255,.045);cursor:pointer}.profile{border:1px solid var(--line);background:rgba(255,255,255,.045);padding:5px 9px 5px 5px;border-radius:16px;display:flex;align-items:center;gap:8px;cursor:pointer}.profile-avatar{width:34px;height:34px;border-radius:12px;background:linear-gradient(145deg,#d9c299,#9f8765);display:grid;place-items:center;color:#2a2118;font-size:10px;font-weight:900}.profile span:last-child{display:flex;flex-direction:column;text-align:left}.profile strong{font-size:11px}.profile small{font-size:9px;color:var(--muted);margin-top:2px}.icon-btn{width:36px;height:36px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.045);display:grid;place-items:center;cursor:pointer}.mobile-only{display:none}
.level-tabs{display:flex;gap:7px;padding:17px 26px 0;overflow:auto;scrollbar-width:none}.level-tabs::-webkit-scrollbar{display:none}.level-tabs button{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:999px;padding:8px 12px;white-space:nowrap;font-size:10px;color:#978c80;cursor:pointer}.level-tabs button.active{background:var(--paper);color:var(--ink);border-color:var(--paper);font-weight:800;box-shadow:0 8px 22px rgba(0,0,0,.14)}
.content{padding:20px 26px 36px;max-width:1550px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px}.page-head h2{font-size:30px;letter-spacing:-.045em;margin:5px 0 8px}.page-head p{font-size:12px;color:var(--muted);line-height:1.55;max-width:760px;margin:0}.page-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.primary-btn,.soft-btn,.paper-btn{border:0;border-radius:14px;padding:10px 13px;font-size:10px;font-weight:800;cursor:pointer}.primary-btn{background:var(--sand);color:#261e15}.soft-btn{background:rgba(255,255,255,.055);border:1px solid var(--line)}.paper-btn{background:var(--paper);color:var(--ink)}
.hero{position:relative;min-height:256px;border-radius:34px;overflow:hidden;background:
 radial-gradient(circle at 15% 20%,rgba(236,221,197,.26),transparent 30%),
 radial-gradient(circle at 90% 0%,rgba(158,174,152,.20),transparent 30%),
 linear-gradient(125deg,#3b342a 0%,#27221b 48%,#4a443a 100%);border:1px solid rgba(255,255,255,.09);box-shadow:var(--shadow);padding:25px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:20px;isolation:isolate}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(23,19,15,.12),rgba(23,19,15,.38));z-index:-1}.hero:after{content:"";position:absolute;width:420px;height:220px;right:-60px;bottom:-110px;border-radius:50%;background:rgba(230,199,137,.11);filter:blur(2px);z-index:-1}.hero h2{font-size:36px;margin:9px 0 10px;letter-spacing:-.05em;max-width:650px}.hero p{max-width:650px;color:#c5b9aa;font-size:12px;line-height:1.6}.hero-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.09);font-size:9px}.hero-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.hero-card{align-self:stretch;padding:18px;border-radius:28px;background:rgba(238,232,223,.91);color:var(--ink);box-shadow:0 22px 44px rgba(0,0,0,.16);display:flex;flex-direction:column;justify-content:space-between}.hero-card .kicker{color:#7d6e5b}.hero-card h3{font-size:22px;margin:6px 0 4px}.hero-card p{color:#6e6256;font-size:10px;margin:0}.hero-mini{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.hero-mini>div{padding:10px;border-radius:16px;background:rgba(40,34,28,.055);border:1px solid rgba(40,34,28,.06)}.hero-mini strong{display:block;font-size:18px}.hero-mini span{font-size:8px;color:#74695e}
.grid{display:grid;gap:13px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:14px}.two-col{grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr)}.three-col{grid-template-columns:repeat(3,minmax(0,1fr))}.four-col{grid-template-columns:repeat(4,minmax(0,1fr))}.card{border-radius:var(--radius-lg);border:1px solid var(--line);background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 16px 44px rgba(0,0,0,.14);overflow:hidden}.card.paper{background:linear-gradient(155deg,#f2ede5,#ded4c8);color:var(--ink);border-color:rgba(255,255,255,.42);box-shadow:var(--soft-shadow)}.card-pad{padding:17px}.stat-card{padding:16px}.stat-value{font-size:27px;font-weight:800;letter-spacing:-.05em}.stat-label{font-size:10px;color:#d8cfc4;margin-top:4px}.stat-sub{font-size:9px;color:#847a70;margin-top:5px}.paper .stat-label{color:#51483e}.paper .stat-sub{color:#83766a}.card-head{padding:15px 17px 11px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.paper .card-head{border-bottom-color:var(--line-dark)}.card-head h3{font-size:13px;margin:0}.card-head small{font-size:9px;color:var(--muted)}
.section-title{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:23px 1px 11px}.section-title h3{font-size:15px;margin:0;letter-spacing:-.02em}.section-title p{font-size:9px;color:var(--muted);margin:0}.list{display:flex;flex-direction:column}.list-row{display:flex;align-items:center;gap:11px;padding:12px 15px;border-bottom:1px solid rgba(255,255,255,.055)}.paper .list-row{border-bottom-color:rgba(24,20,16,.08)}.list-row:last-child{border-bottom:0}.mini-icon{width:35px;height:35px;border-radius:12px;background:rgba(230,199,137,.12);border:1px solid rgba(230,199,137,.12);display:grid;place-items:center;color:var(--sand);font-weight:900;flex:0 0 auto}.paper .mini-icon{background:rgba(38,30,21,.07);color:#4a3b2c}.grow{flex:1;min-width:0}.list-row strong{display:block;font-size:10px}.list-row small{display:block;font-size:9px;color:var(--muted);margin-top:3px;line-height:1.4}.paper .list-row small{color:#776b60}.list-meta{text-align:right;font-size:9px;color:#8f8478}.paper .list-meta{color:#786c5f}
.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;font-size:8px;border:1px solid var(--line);white-space:nowrap}.badge.sand{color:#f1dcae;background:rgba(230,199,137,.08);border-color:rgba(230,199,137,.18)}.badge.sage{color:#d4e0d0;background:rgba(158,174,152,.08);border-color:rgba(158,174,152,.20)}.badge.blue{color:#ccd8e0;background:rgba(147,168,183,.08);border-color:rgba(147,168,183,.20)}.badge.rust{color:#ebc7b5;background:rgba(194,143,115,.08);border-color:rgba(194,143,115,.20)}.badge.gray{color:#b8aea3}.paper .badge{border-color:rgba(28,23,19,.10);color:#544a40;background:rgba(255,255,255,.22)}
.progress{height:7px;border-radius:99px;background:rgba(255,255,255,.065);overflow:hidden}.paper .progress{background:rgba(28,23,19,.09)}.progress span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--sand),#d8a871)}.progress.sage span{background:linear-gradient(90deg,#a8b7a3,#7e9482)}
.segmented{display:flex;gap:4px;padding:4px;border-radius:15px;background:rgba(255,255,255,.035);border:1px solid var(--line);width:max-content;max-width:100%;overflow:auto}.segmented button{border:0;background:transparent;border-radius:11px;padding:7px 10px;color:#988d80;font-size:9px;white-space:nowrap;cursor:pointer}.segmented button.active{background:var(--paper);color:var(--ink);box-shadow:0 7px 18px rgba(0,0,0,.12);font-weight:800}
.role-room-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.role-room{min-height:185px;padding:16px;border-radius:25px;background:linear-gradient(155deg,#ece5dc,#d5c8ba);color:var(--ink);position:relative;overflow:hidden;box-shadow:var(--soft-shadow);cursor:pointer}.role-room:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-22px;bottom:-28px;background:rgba(255,255,255,.3)}.role-room .room-icon{width:40px;height:40px;border-radius:14px;background:#29241e;color:#f3e3c4;display:grid;place-items:center}.role-room h3{font-size:16px;margin:16px 0 6px}.role-room p{font-size:9px;color:#665c52;line-height:1.5;margin:0}.room-avatars{display:flex;margin-top:16px}.room-avatar{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#3b342d;color:#f5eadb;border:2px solid #e8dfd4;font-size:7px;font-weight:900;margin-left:-5px}.room-avatar:first-child{margin-left:0}.room-more{font-size:8px;color:#766a5f;margin-left:7px;align-self:center}
/* Shared ministry */
.ministry-hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:13px}.territory-map-card{padding:16px}.map-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:12px}.map-top h3{font-size:14px;margin:4px 0 0}.map-legend{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.legend-item{display:flex;align-items:center;gap:5px;font-size:8px;color:var(--muted)}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.available{background:#c6d0bd}.legend-dot.active{background:#e3c47f}.legend-dot.planned{background:#9eafbb}.legend-dot.recent{background:#b99a89}.territory-map{position:relative;border-radius:24px;overflow:hidden;background:linear-gradient(150deg,#e8e0d5,#c9b8a6);height:420px;border:1px solid rgba(255,255,255,.24);box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}.territory-map:before,.territory-map:after{content:"";position:absolute;border-radius:50%;filter:blur(1px);opacity:.42}.territory-map:before{width:300px;height:300px;background:#b4c1b0;right:-100px;top:-80px}.territory-map:after{width:260px;height:260px;background:#d1b28c;left:-100px;bottom:-110px}.territory-svg{width:100%;height:100%;position:relative;z-index:2}.territory-svg polygon{stroke:rgba(45,38,31,.36);stroke-width:1.2;cursor:pointer;transition:.18s}.territory-svg polygon:hover{filter:brightness(1.06);stroke:#2f2a24;stroke-width:2}.territory-svg text{font-size:12px;font-weight:800;fill:#2a241d;pointer-events:none}.territory-svg .available{fill:#c8d1be}.territory-svg .active{fill:#e3c77f}.territory-svg .planned{fill:#a6bac5}.territory-svg .recent{fill:#c7a38f}.map-label{position:absolute;z-index:3;left:15px;bottom:14px;background:rgba(39,34,28,.85);color:#f5eee5;padding:8px 10px;border-radius:14px;font-size:8px;backdrop-filter:blur(10px)}
.coverage-card{padding:18px;display:flex;flex-direction:column;min-height:100%}.coverage-ring{--p:68;width:132px;height:132px;border-radius:50%;background:conic-gradient(var(--sand) calc(var(--p)*1%),rgba(255,255,255,.06) 0);margin:6px auto 14px;display:grid;place-items:center;position:relative}.coverage-ring:before{content:"";position:absolute;inset:12px;background:var(--panel-2);border-radius:50%}.coverage-ring>div{position:relative;z-index:1;text-align:center}.coverage-ring strong{display:block;font-size:28px}.coverage-ring span{font-size:8px;color:var(--muted)}.coverage-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.coverage-stat{padding:10px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid var(--line)}.coverage-stat strong{display:block;font-size:15px}.coverage-stat span{display:block;font-size:8px;color:var(--muted);margin-top:3px}
.territory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.territory-card{padding:14px;border-radius:21px;background:rgba(255,255,255,.04);border:1px solid var(--line);cursor:pointer;transition:.18s}.territory-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.06)}.territory-card.active-state{border-color:rgba(230,199,137,.28);box-shadow:inset 0 0 0 1px rgba(230,199,137,.05)}.territory-card h4{font-size:13px;margin:8px 0 3px}.territory-card p{font-size:9px;color:var(--muted);line-height:1.45;margin:0}.territory-footer{display:flex;justify-content:space-between;gap:8px;align-items:end;margin-top:12px}.territory-footer span{font-size:8px;color:#8c8175}.cong-tag{display:inline-flex;align-items:center;gap:5px;font-size:8px;color:#d9cfc3}.cong-dot{width:7px;height:7px;border-radius:50%}.riverside{background:#d3b26e}.lakeside{background:#8ca4b4}.hillview{background:#97aa92}
.decision-card{padding:18px}.decision-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.decision-title h3{font-size:17px;margin:5px 0 5px}.decision-title p{font-size:9px;color:var(--muted);margin:0}.approval-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.approval{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:15px;background:rgba(255,255,255,.035);border:1px solid var(--line);font-size:8px}.approval i{width:19px;height:19px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-weight:900;background:rgba(255,255,255,.06)}.approval.ok i{background:#9eae98;color:#172016}.approval.wait i{background:#dec27c;color:#2c2112}.decision-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.decision-summary>div{padding:10px;border-radius:16px;background:rgba(255,255,255,.035);border:1px solid var(--line)}.decision-summary span{display:block;font-size:7px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.decision-summary strong{display:block;font-size:10px;margin-top:4px}.decision-actions{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.timeline{padding:15px 17px}.timeline-item{display:grid;grid-template-columns:58px 12px 1fr;gap:9px;padding:8px 0}.timeline-time{font-size:9px;color:#8d8276;text-align:right;padding-top:1px}.timeline-dot{width:8px;height:8px;border-radius:50%;background:var(--sand);box-shadow:0 0 0 4px rgba(230,199,137,.09);margin-top:2px}.timeline-copy strong{font-size:10px;display:block}.timeline-copy span{font-size:8px;color:var(--muted);display:block;margin-top:2px}
.notice{border-radius:18px;padding:12px 14px;background:rgba(230,199,137,.07);border:1px solid rgba(230,199,137,.16);font-size:9px;color:#cdbb9d;line-height:1.55}.notice strong{color:#f0dfbd}.notice.sage{background:rgba(158,174,152,.07);border-color:rgba(158,174,152,.18);color:#c4d0c0}.notice.red{background:rgba(217,146,134,.07);border-color:rgba(217,146,134,.18);color:#e0b3ab}
.table-wrap{overflow:auto}.data-table{width:100%;border-collapse:collapse;font-size:9px}.data-table th{padding:10px 13px;text-align:left;font-size:8px;color:#82776c;text-transform:uppercase;letter-spacing:.09em;border-bottom:1px solid var(--line)}.data-table td{padding:11px 13px;border-bottom:1px solid rgba(255,255,255,.055);color:#d5ccc1}.paper .data-table td{color:#4f473e;border-bottom-color:rgba(24,20,16,.08)}.paper .data-table th{border-bottom-color:rgba(24,20,16,.08)}.data-table tr:last-child td{border-bottom:0}
.dept-card{padding:15px}.dept-card h4{font-size:12px;margin:0}.dept-meta{display:flex;justify-content:space-between;margin:8px 0 10px;font-size:8px;color:var(--muted)}
/* forms/modal */
.modal-backdrop{position:fixed;inset:0;background:rgba(10,8,6,.70);backdrop-filter:blur(12px);z-index:100;display:grid;place-items:center;padding:18px}.modal-backdrop[hidden]{display:none}.modal{width:min(720px,100%);max-height:90vh;overflow:auto;border-radius:29px;border:1px solid rgba(255,255,255,.12);background:linear-gradient(155deg,#29241e,#1d1a16);box-shadow:0 40px 100px rgba(0,0,0,.46)}.modal-head{display:flex;justify-content:space-between;align-items:flex-start;padding:18px 20px;border-bottom:1px solid var(--line)}.modal-head h2{font-size:20px;margin:5px 0 0}.modal-body{padding:20px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:flex;flex-direction:column;gap:5px}.field.full{grid-column:1/-1}.field label{font-size:8px;color:#908579;text-transform:uppercase;letter-spacing:.09em}.field input,.field select,.field textarea{background:rgba(255,255,255,.045);border:1px solid var(--line);border-radius:13px;color:var(--text);padding:10px 11px;outline:0}.field textarea{min-height:84px;resize:vertical}.modal-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:15px}.role-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.role-card{border:1px solid var(--line);background:rgba(255,255,255,.035);padding:12px;border-radius:16px;text-align:left;cursor:pointer}.role-card.active{border-color:rgba(230,199,137,.32);background:rgba(230,199,137,.08)}.role-card strong{display:block;font-size:10px}.role-card span{display:block;font-size:8px;color:var(--muted);margin-top:4px}.toast{position:fixed;right:22px;bottom:22px;z-index:120;background:#ede6dd;color:#211b15;border-radius:14px;padding:10px 13px;font-size:9px;box-shadow:var(--shadow);transform:translateY(18px);opacity:0;pointer-events:none;transition:.2s}.toast.show{opacity:1;transform:none}
.source-card{padding:15px}.source-card strong,.source-card a{font-size:10px;font-weight:800;text-decoration:none}.source-card p{font-size:8px;color:var(--muted);line-height:1.5;margin:6px 0 0}.source-type{font-size:7px;color:#8f8274;text-transform:uppercase;letter-spacing:.09em;margin-bottom:4px}
.privacy-grid{grid-template-columns:repeat(3,1fr)}.privacy-card{padding:16px;min-height:210px}.privacy-card h3{font-size:14px;margin:0 0 8px}.privacy-card ul{padding-left:16px;margin:0;font-size:9px;color:var(--muted);line-height:1.75}.privacy-card.green{border-top:3px solid var(--sage)}.privacy-card.amber{border-top:3px solid var(--sand)}.privacy-card.red{border-top:3px solid var(--danger)}
.bottom-nav{display:none}.present-mode .rail,.present-mode .top-actions,.present-mode .level-tabs{display:none}.present-mode .app-shell{grid-template-columns:1fr}.present-mode .topbar{padding-left:38px}.present-mode .content{max-width:1440px}.present-mode .bottom-nav{display:none}
@media(max-width:1180px){.stats-grid{grid-template-columns:repeat(2,1fr)}.role-room-grid{grid-template-columns:repeat(2,1fr)}.territory-grid{grid-template-columns:repeat(2,1fr)}.four-col{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.ministry-hero{grid-template-columns:1fr}.three-col{grid-template-columns:repeat(2,1fr)}.decision-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){:root{--rail:280px}.two-col{grid-template-columns:1fr}.app-shell{display:block}.rail{position:fixed;left:0;transform:translateX(-105%);pointer-events:none;transition:.22s;box-shadow:0 0 70px rgba(0,0,0,.5)}.rail.open{transform:none;pointer-events:auto}.mobile-only{display:grid}.topbar{height:72px;padding:0 15px}.top-context .kicker{display:none}.top-context h1{font-size:17px;margin:0}.top-actions .glass-btn,.profile span:last-child{display:none}.profile{padding:4px}.level-tabs{padding:12px 15px 0}.content{padding:16px 15px 100px}.page-head{flex-direction:column}.page-head h2{font-size:26px}.page-actions{justify-content:flex-start}.hero{padding:19px;border-radius:28px;min-height:auto}.hero h2{font-size:30px}.hero-card{border-radius:24px}.territory-map{height:340px}.bottom-nav{position:fixed;z-index:55;left:12px;right:12px;bottom:12px;height:65px;border-radius:23px;background:rgba(32,29,24,.92);border:1px solid rgba(255,255,255,.10);backdrop-filter:blur(20px);box-shadow:0 20px 55px rgba(0,0,0,.32);display:flex;align-items:center;justify-content:space-around;padding:6px 8px}.bottom-nav button{width:52px;height:50px;border:0;background:transparent;color:#92867a;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:8px}.bottom-nav button.active{background:rgba(238,232,223,.10);color:#f0dfbd}.bottom-nav i{font-style:normal;font-size:15px}.present-mode .topbar{padding-left:15px}.privacy-grid{grid-template-columns:1fr}.modal{border-radius:25px}}
@media(max-width:560px){.stats-grid,.role-room-grid,.territory-grid,.three-col,.four-col,.form-grid,.role-grid{grid-template-columns:1fr}.hero-mini{grid-template-columns:1fr 1fr 1fr}.territory-map{height:300px}.map-top{flex-direction:column}.map-legend{justify-content:flex-start}.decision-summary{grid-template-columns:1fr 1fr}.page-head{gap:13px}.topbar .profile{margin-left:auto}.coverage-ring{width:118px;height:118px}.content{padding-left:12px;padding-right:12px}.level-tabs{padding-left:12px;padding-right:12px}.hero{border-radius:25px}.card{border-radius:21px}}
@media print{body{background:#fff;color:#111}.rail,.topbar,.level-tabs,.bottom-nav,.page-actions{display:none!important}.app-shell{display:block}.content{padding:0}.card,.hero{box-shadow:none;background:#fff!important;color:#111;border-color:#ccc}.hero p,.page-head p,.stat-label,.stat-sub,.list-row small{color:#555!important}}


/* ==========================================================
   v0.3 — adaptive neumorphism / off-white + blue + violet
   Design references: soft light, soft shadow, raised/pressed depth.
   ========================================================== */
:root{
  --bg:#eef1f5;--bg-2:#e8ecf1;--surface:#eef1f5;--surface-2:#e7ebf0;
  --panel:#eef1f5;--panel-2:#e7ebf0;--paper:#f1f3f6;--paper-2:#e7ebf0;
  --ink:#26384c;--text:#26384c;--muted:#758396;--line:rgba(72,91,113,.12);--line-dark:rgba(72,91,113,.12);
  --blue:#5d86b4;--blue-2:#3f6f9f;--blue-soft:#d9e5f2;--purple:#7b6bb5;--purple-soft:#e1dcf1;
  --sand:#5d86b4;--sand-2:#d9e5f2;--sage:#77978a;--sage-2:#dce9e3;--rust:#9a7ab2;--danger:#b96f78;
  --shadow-dark:rgba(155,164,178,.34);--shadow-light:rgba(255,255,255,.94);
  --neu-out:11px 11px 24px var(--shadow-dark),-11px -11px 24px var(--shadow-light);
  --neu-soft:7px 7px 16px var(--shadow-dark),-7px -7px 16px var(--shadow-light);
  --neu-in:inset 5px 5px 11px rgba(166,174,187,.28),inset -5px -5px 11px rgba(255,255,255,.82);
  --shadow:var(--neu-out);--soft-shadow:var(--neu-soft);
  color-scheme:light;
}
html[data-theme="light"]{color-scheme:light}
html[data-theme="dark"]{
  --bg:#171c25;--bg-2:#121720;--surface:#1c222c;--surface-2:#171d26;--panel:#1c222c;--panel-2:#171d26;--paper:#1f2631;--paper-2:#181e27;
  --ink:#edf2f8;--text:#edf2f8;--muted:#94a1b3;--line:rgba(213,224,239,.09);--line-dark:rgba(213,224,239,.09);
  --blue:#7da4cf;--blue-2:#9bb8d8;--blue-soft:#26384d;--purple:#9b8fd0;--purple-soft:#312d46;
  --sand:#7da4cf;--sand-2:#26384d;--sage:#88a99b;--sage-2:#253a34;--rust:#a78ac0;--danger:#cf8991;
  --shadow-dark:rgba(5,8,13,.72);--shadow-light:rgba(49,59,75,.48);
  --neu-in:inset 5px 5px 11px rgba(7,10,16,.52),inset -5px -5px 11px rgba(52,61,77,.26);
  color-scheme:dark;
}
@media(prefers-color-scheme:dark){
 html:not([data-theme]){
  --bg:#171c25;--bg-2:#121720;--surface:#1c222c;--surface-2:#171d26;--panel:#1c222c;--panel-2:#171d26;--paper:#1f2631;--paper-2:#181e27;
  --ink:#edf2f8;--text:#edf2f8;--muted:#94a1b3;--line:rgba(213,224,239,.09);--line-dark:rgba(213,224,239,.09);
  --blue:#7da4cf;--blue-2:#9bb8d8;--blue-soft:#26384d;--purple:#9b8fd0;--purple-soft:#312d46;--sand:#7da4cf;--sand-2:#26384d;--sage:#88a99b;--sage-2:#253a34;--rust:#a78ac0;--danger:#cf8991;
  --shadow-dark:rgba(5,8,13,.72);--shadow-light:rgba(49,59,75,.48);--neu-in:inset 5px 5px 11px rgba(7,10,16,.52),inset -5px -5px 11px rgba(52,61,77,.26);color-scheme:dark;
 }
}
html{background:var(--bg)}
body{background:var(--bg);color:var(--text)}
.ambient{opacity:.18;filter:blur(105px)}.ambient-a{background:var(--blue);}.ambient-b{background:var(--purple);opacity:.12}
.rail{background:color-mix(in srgb,var(--surface) 93%,transparent);border-right:0;box-shadow:8px 0 30px rgba(80,96,116,.09)}
.brand-mark,.workspace-card,.glass-btn,.profile,.icon-btn,.nav-btn.active,.level-tabs button,.card,.role-room,.territory-card,.approval,.decision-summary>div,.coverage-stat,.segmented,.modal,.bottom-nav{border-color:transparent}
.brand-mark{background:var(--surface);color:var(--blue-2);box-shadow:var(--neu-soft)}
.kicker{color:var(--muted)}
.workspace-card{background:var(--surface);box-shadow:var(--neu-soft)}
.nav-btn{color:var(--muted)}.nav-btn:hover{background:var(--surface-2);color:var(--text);box-shadow:var(--neu-in)}
.nav-btn.active{background:var(--surface);color:var(--blue-2);box-shadow:var(--neu-in)}.nav-btn.active .nav-icon{background:var(--blue-soft);color:var(--blue-2)}.nav-icon{background:transparent}
.rail-note{background:var(--surface);border:0;box-shadow:var(--neu-soft)}.rail-note small{color:var(--muted)}.privacy-dot{background:var(--purple);box-shadow:0 0 0 4px color-mix(in srgb,var(--purple) 12%,transparent)}
.topbar{background:color-mix(in srgb,var(--bg) 88%,transparent);border:0;box-shadow:0 8px 28px rgba(92,104,120,.07)}
.glass-btn,.profile,.icon-btn{background:var(--surface);box-shadow:var(--neu-soft);color:var(--text)}.glass-btn:active,.icon-btn:active,.profile:active{box-shadow:var(--neu-in)}
.profile-avatar{background:linear-gradient(145deg,var(--blue-soft),var(--purple-soft));color:var(--blue-2);box-shadow:var(--neu-in)}
.level-tabs{padding-top:20px;padding-bottom:7px}.level-tabs button{background:var(--surface);color:var(--muted);box-shadow:var(--neu-soft);border:0}.level-tabs button.active{background:var(--surface);color:var(--blue-2);box-shadow:var(--neu-in)}
.primary-btn{background:var(--blue);color:white;box-shadow:5px 5px 12px color-mix(in srgb,var(--blue) 28%,transparent),-4px -4px 10px var(--shadow-light)}.primary-btn:active{box-shadow:inset 4px 4px 9px color-mix(in srgb,var(--blue-2) 55%,transparent),inset -3px -3px 8px color-mix(in srgb,white 24%,transparent)}
.soft-btn,.paper-btn{background:var(--surface);color:var(--text);border:0;box-shadow:var(--neu-soft)}.soft-btn:active,.paper-btn:active{box-shadow:var(--neu-in)}
.card,.card.paper,.neu-panel{background:var(--surface);color:var(--text);border:0;box-shadow:var(--neu-soft)}
.stat-card.paper{background:var(--surface);color:var(--blue-2);box-shadow:var(--neu-in)}.stat-label,.paper .stat-label{color:var(--text)}.stat-sub,.paper .stat-sub{color:var(--muted)}
.card-head,.paper .card-head{border-bottom-color:var(--line)}
.list-row,.paper .list-row{border-bottom-color:var(--line)}.list-row small,.paper .list-row small,.list-meta,.paper .list-meta{color:var(--muted)}
.mini-icon,.paper .mini-icon{background:var(--blue-soft);color:var(--blue-2);border:0;box-shadow:var(--neu-in)}
.badge{border:0;box-shadow:var(--neu-in);background:var(--surface);color:var(--muted)}.badge.sand,.badge.blue{color:var(--blue-2);background:var(--surface)}.badge.sage{color:var(--sage);background:var(--surface)}.badge.rust{color:var(--purple);background:var(--surface)}.paper .badge{background:var(--surface);color:var(--text);border:0}
.progress{background:var(--surface-2);box-shadow:var(--neu-in)}.progress span{background:linear-gradient(90deg,var(--blue),var(--purple))}.progress.sage span{background:linear-gradient(90deg,var(--sage),var(--blue))}
.segmented{background:var(--surface);box-shadow:var(--neu-in)}.segmented button{color:var(--muted)}.segmented button.active{background:var(--surface);color:var(--blue-2);box-shadow:var(--neu-soft)}
.role-room{background:var(--surface);color:var(--text);box-shadow:var(--neu-soft)}.role-room:after{background:color-mix(in srgb,var(--purple) 11%,transparent)}.role-room .room-icon{background:var(--surface);color:var(--purple);box-shadow:var(--neu-in)}.role-room p,.room-more{color:var(--muted)}.room-avatar{background:var(--blue);color:white;border-color:var(--surface)}
.territory-map{background:linear-gradient(145deg,var(--surface),var(--surface-2));border:0;box-shadow:var(--neu-in)}.territory-map:before{background:var(--blue-soft)}.territory-map:after{background:var(--purple-soft)}.territory-svg polygon{stroke:color-mix(in srgb,var(--text) 26%,transparent)}.territory-svg text{fill:var(--text)}
.legend-dot.available{background:#9cb5a8}.legend-dot.active{background:var(--blue)}.legend-dot.planned{background:var(--purple)}.legend-dot.recent{background:#9dacc0}.riverside{background:var(--blue)}.lakeside{background:var(--purple)}.hillview{background:#7fa596}.cong-tag{color:var(--text)}
.territory-card{background:var(--surface);box-shadow:var(--neu-soft)}.territory-card:hover{background:var(--surface);box-shadow:var(--neu-in);transform:none}.territory-card.active-state{border:0;box-shadow:var(--neu-in)}.territory-footer span{color:var(--muted)}
.approval,.decision-summary>div,.coverage-stat{background:var(--surface);box-shadow:var(--neu-in)}.approval i{background:var(--surface)}.approval.ok i{background:var(--sage-2);color:var(--sage)}.approval.wait i{background:var(--purple-soft);color:var(--purple)}
.timeline-dot{background:var(--purple);box-shadow:0 0 0 4px color-mix(in srgb,var(--purple) 12%,transparent)}.timeline-time{color:var(--muted)}
.notice{background:color-mix(in srgb,var(--blue) 7%,var(--surface));border:0;color:var(--muted);box-shadow:var(--neu-in)}.notice strong{color:var(--blue-2)}.notice.sage{color:var(--muted);background:color-mix(in srgb,var(--sage) 7%,var(--surface))}.notice.red{color:var(--muted);background:color-mix(in srgb,var(--danger) 7%,var(--surface))}
.data-table td,.paper .data-table td{color:var(--text);border-bottom-color:var(--line)}.data-table th,.paper .data-table th{color:var(--muted);border-bottom-color:var(--line)}
.modal-backdrop{background:rgba(19,24,33,.50)}.modal{background:var(--surface);box-shadow:18px 18px 48px var(--shadow-dark),-14px -14px 38px var(--shadow-light)}.field label{color:var(--muted)}.field input,.field select,.field textarea{background:var(--surface);border:0;color:var(--text);box-shadow:var(--neu-in)}.role-card{background:var(--surface);border:0;color:var(--text);box-shadow:var(--neu-soft)}.role-card.active{background:var(--surface);box-shadow:var(--neu-in);color:var(--blue-2)}
.toast{background:var(--surface);color:var(--text);box-shadow:var(--neu-out)}
.bottom-nav{background:color-mix(in srgb,var(--surface) 91%,transparent);border:0;box-shadow:var(--neu-out)}.bottom-nav button{color:var(--muted)}.bottom-nav button.active{background:var(--surface);color:var(--blue-2);box-shadow:var(--neu-in)}
/* Overview weather + time */
.overview-hero{background:var(--surface);color:var(--text);border:0;box-shadow:var(--neu-out);padding:26px;grid-template-columns:minmax(0,1fr) minmax(460px,.82fr);align-items:stretch;isolation:isolate}
.overview-hero:before{background:radial-gradient(circle at 11% 18%,color-mix(in srgb,var(--blue) 10%,transparent),transparent 31%),radial-gradient(circle at 78% 76%,color-mix(in srgb,var(--purple) 9%,transparent),transparent 29%)}.overview-hero:after{background:color-mix(in srgb,var(--purple) 7%,transparent)}
.overview-hero h2{color:var(--text);font-size:42px}.overview-hero p{color:var(--muted)}.hero-chip{background:var(--surface);border:0;color:var(--blue-2);box-shadow:var(--neu-in)}.hero-chip i{width:7px;height:7px;border-radius:50%;background:var(--purple);display:inline-block}.hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}.hero-context-line{display:flex;align-items:center;gap:8px;margin-top:23px;font-size:9px;color:var(--muted);flex-wrap:wrap}.hero-context-line strong{color:var(--text)}
.overview-context{display:grid;grid-template-columns:.83fr 1.17fr;gap:14px;min-width:0}.neu-card{background:var(--surface);border:0;border-radius:29px;box-shadow:var(--neu-soft);padding:18px;min-width:0}.widget-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.accent-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.accent-dot.blue{background:var(--blue);box-shadow:0 0 0 5px color-mix(in srgb,var(--blue) 10%,transparent)}.accent-dot.purple{background:var(--purple);box-shadow:0 0 0 5px color-mix(in srgb,var(--purple) 10%,transparent)}
.clock-card{display:flex;flex-direction:column;min-height:230px;justify-content:space-between}.clock-time{font-size:38px;line-height:1;font-weight:760;letter-spacing:-.055em;color:var(--blue-2);margin-top:16px}.clock-date{font-size:10px;color:var(--muted);margin-top:5px}.clock-context{border-top:1px solid var(--line);padding-top:12px;margin-top:14px}.clock-context strong,.clock-context span{display:block}.clock-context strong{font-size:10px}.clock-context span{font-size:8px;color:var(--muted);margin-top:3px}.countdown-pill{align-self:flex-start;margin-top:12px;padding:7px 9px;border-radius:12px;background:var(--surface);box-shadow:var(--neu-in);font-size:8px;color:var(--purple)}
.weather-card{min-height:230px}.weather-source{font-size:7px;color:var(--muted)}.weather-main{display:flex;align-items:center;gap:14px;margin:16px 0 12px}.weather-orb{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--surface),var(--surface-2));box-shadow:var(--neu-out);flex:0 0 auto}.weather-orb span{font-size:26px;color:var(--purple)}.weather-temp{font-size:40px;line-height:1;font-weight:800;letter-spacing:-.06em;color:var(--blue-2)}.weather-condition{font-size:9px;color:var(--muted);margin-top:5px}.weather-event strong,.weather-event span{display:block}.weather-event strong{font-size:10px}.weather-event span{font-size:8px;color:var(--muted);margin-top:3px}.weather-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:13px}.weather-metrics>div{padding:9px;border-radius:14px;background:var(--surface);box-shadow:var(--neu-in)}.weather-metrics span,.weather-metrics strong{display:block}.weather-metrics span{font-size:7px;color:var(--muted)}.weather-metrics strong{font-size:9px;margin-top:3px}.forecast-note{font-size:7px;color:var(--muted);margin-top:10px;line-height:1.4}.weather-location-btn{margin-top:10px;border:0;border-radius:12px;padding:8px 10px;background:var(--surface);color:var(--blue-2);box-shadow:var(--neu-soft);font-size:8px;font-weight:800;cursor:pointer}.weather-location-btn:active{box-shadow:var(--neu-in)}
.palette-row{display:flex;gap:9px;margin-top:15px}.palette{width:28px;height:28px;border-radius:50%;display:block;box-shadow:var(--neu-soft)}.palette.off{background:#eef1f5}.palette.blue{background:#5d86b4}.palette.purple{background:#7b6bb5}
.theme-toggle{display:flex;align-items:center;gap:7px}.theme-toggle #themeGlyph{font-size:15px}.theme-label{font-size:9px;font-weight:800}
@media(max-width:1180px){.overview-hero{grid-template-columns:1fr}.overview-context{grid-template-columns:1fr 1.25fr}.overview-hero h2{font-size:38px}}
@media(max-width:820px){.rail{background:var(--surface);box-shadow:18px 0 42px rgba(0,0,0,.12)}.top-actions .theme-toggle{display:flex}.top-actions #presentBtn{display:none}.overview-context{grid-template-columns:1fr 1.25fr}.overview-hero{padding:18px}.overview-hero h2{font-size:31px}.clock-time{font-size:32px}.weather-temp{font-size:35px}.neu-card{border-radius:24px;padding:15px}.clock-card,.weather-card{min-height:210px}}
@media(max-width:590px){.overview-context{grid-template-columns:1fr}.clock-card{min-height:180px}.weather-card{min-height:auto}.overview-hero h2{font-size:29px}.weather-metrics{grid-template-columns:repeat(3,1fr)}.theme-label{display:none}.theme-toggle{width:42px;padding:0;justify-content:center}.level-tabs{gap:9px;padding-bottom:11px}.level-tabs button{padding:8px 13px}.stats-grid{grid-template-columns:1fr 1fr}.stat-value{font-size:23px}}