/* MEGA Municipal Risk Management — interface system 1.5 */
:root{color-scheme:light;--ink:#14243a;--muted:#738197;--navy:#0e2035;--navy-2:#142b44;--sea:#0b827e;--sea-dark:#076761;--sea-light:#e9f7f4;--paper:#f6f8fc;--white:#fff;--border:#e4ebf3;--border-strong:#cfdbe7;--danger:#b93e43;--danger-light:#fff1f0;--shadow:0 3px 12px rgba(21,40,70,.035),0 14px 46px rgba(21,40,70,.038);--radius:16px;--sidebar:262px;font-family:Inter,"Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;font-synthesis:none;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-size:14px;-webkit-font-smoothing:antialiased}a{color:#087d80;text-decoration:none}a:hover{color:#065e61}button,input,textarea,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #84cfca;outline-offset:2px}h1,h2,h3,h4{color:var(--ink);letter-spacing:-.025em}h1{font-size:29px}h2{font-size:20px}h3{font-size:15px}p{line-height:1.65;color:#56667b}small{font-size:12px}
/* Global shell */
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{background:linear-gradient(173deg,#12273e 0%,#0e2035 63%,#0b1a2c 100%);position:sticky;top:0;height:100vh;min-height:640px;display:flex;flex-direction:column;padding:27px 15px 20px;color:#f3f8ff;z-index:55;overflow-y:auto}.brand-box{display:flex;gap:11px;align-items:center;padding:3px 13px 28px;border-bottom:1px solid rgba(221,241,255,.09)}.brand-mark{display:grid;place-items:center;flex:none;width:43px;height:43px;background:linear-gradient(135deg,#18b4a3,#0c727e);border:1px solid rgba(255,255,255,.15);border-radius:13px;color:white;box-shadow:0 6px 18px rgba(0,0,0,.16)}.brand-mark svg{width:26px;height:26px}.brand-title{font-size:22px;line-height:1;font-weight:850;letter-spacing:.02em;color:white}.brand-title sup{font-size:9px;vertical-align:top;color:#9deee2}.brand-subtitle{font-size:10px;letter-spacing:.09em;color:#9caec1;margin-top:5px;text-transform:uppercase}.side-navigation{padding-top:22px;flex:1}.nav-label{padding:20px 14px 9px;color:#7690a8;letter-spacing:.14em;font-size:10px;text-transform:uppercase;font-weight:800}.nav-link{width:100%;display:flex;align-items:center;gap:11px;min-height:43px;padding:10px 13px;margin:3px 0;border-radius:10px;color:#b7c7d8;font-weight:550;font-size:13px;position:relative;transition:background .18s,color .18s}.nav-link:hover{color:#fff;background:rgba(255,255,255,.075)}.nav-link.active{background:linear-gradient(90deg,rgba(34,175,163,.22),rgba(34,175,163,.07));color:#f1fffc;font-weight:750}.nav-link.active:before{content:"";position:absolute;left:0;width:3px;top:8px;bottom:8px;background:#25cbb9;border-radius:6px}.nav-link svg{width:19px;height:19px;stroke-width:1.8;flex:none;opacity:.9}.nav-link.active svg{color:#51d8c9}.sidebar-bottom{border-top:1px solid rgba(221,241,255,.1);margin-top:18px;padding:18px 11px 4px}.sidebar-kicker{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:#91a5b8;margin-bottom:6px}.sidebar-status{display:flex;align-items:center;gap:8px;font-size:12px;color:#b0c2d2}.status-dot{width:7px;height:7px;border-radius:50%;background:#32c7ac;box-shadow:0 0 0 3px rgba(50,199,172,.12)}.sidebar-logout{margin-top:13px}.sidebar-logout form{margin:0}.sidebar-logout button{width:100%;display:flex;align-items:center;gap:10px;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:10px 12px;color:#c4d2df;margin:0}.sidebar-logout button:hover{background:rgba(255,255,255,.1);color:#fff}.sidebar-logout svg{width:17px;height:17px}.mobile-shade{display:none}
.workspace{min-width:0;display:flex;flex-direction:column}.topbar{height:75px;background:rgba(255,255,255,.92);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,3vw,45px);gap:18px}.topbar-left{display:flex;align-items:center;gap:12px}.topbar-section{font-size:12px;font-weight:650;letter-spacing:.03em;color:#6c7c91}.topbar-section strong{color:#1d324a}.topbar-badge{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:850;color:#117d77;background:#e9f6f2;border:1px solid #cdebe6;padding:6px 9px;border-radius:20px}.topbar-user{display:flex;gap:10px;align-items:center}.avatar{width:35px;height:35px;display:grid;place-items:center;font-size:13px;background:#e8f2f4;color:#126b72;border-radius:11px;font-weight:800}.user-details{display:flex;flex-direction:column;gap:1px}.user-details strong{font-size:12px;color:#23334b}.user-details small{font-size:11px;color:#7b899a;text-transform:capitalize}.mobile-toggle{display:none;background:transparent;border:0;padding:8px;color:#1c3349}.mobile-toggle svg{width:22px;height:22px}.workspace-main{flex:1;min-width:0;width:100%;max-width:1620px;margin:0 auto;padding:35px clamp(20px,3vw,48px) 60px}.heading{margin:0 0 28px;display:flex;justify-content:space-between;gap:15px;align-items:center}.heading:before{content:'WORKSPACE / MEGA';position:absolute;transform:translateY(-30px);font-size:10px;letter-spacing:.17em;font-weight:850;color:#9aa8ba}.heading h1{margin:0;font-size:29px;font-weight:800}.heading span{font-size:12px;color:#8190a2;background:white;border:1px solid var(--border);padding:9px 12px;border-radius:9px}.workspace-footer{padding:18px clamp(20px,3vw,48px);border-top:1px solid var(--border);font-size:11px;color:#9ba6b5;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
/* Card layout */
.panel{background:var(--white);padding:27px 28px;margin-bottom:20px;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);min-width:0}.panel h2{font-weight:760;margin:0 0 12px;font-size:18px}.panel h3{margin:24px 0 12px;font-size:15px}.panel>p:first-of-type{margin-top:0}.panel p{max-width:1050px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,355px),1fr));gap:20px}.grid>.panel{margin:0}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:0 0 22px}.stats>div{position:relative;overflow:hidden;border:1px solid var(--border);border-radius:15px;background:#fff;padding:23px 24px;color:#78879a;font-size:12px;box-shadow:var(--shadow);font-weight:650}.stats>div:after{content:'';position:absolute;right:-32px;top:-45px;width:110px;height:110px;background:radial-gradient(circle,rgba(25,165,155,.10),transparent 75%)}.stats strong{display:block;font-size:34px;line-height:1.22;margin-bottom:9px;letter-spacing:-.045em;color:#10243c;font-weight:830}.hero{background:radial-gradient(circle at 92% 18%,rgba(66,217,184,.24),transparent 35%),linear-gradient(120deg,#122b47,#0d3042 60%,#0c444b);border:1px solid rgba(255,255,255,.03);border-radius:19px;padding:35px 36px;color:#fff;box-shadow:0 19px 40px rgba(12,38,55,.13);margin-bottom:23px;position:relative;overflow:hidden}.hero:before{content:'';position:absolute;right:5%;top:-20%;width:240px;height:240px;border-radius:50%;border:1px solid rgba(111,224,215,.16)}.hero h2{color:white;font-size:24px;margin:0 0 9px}.hero p{color:#bdd2dc;max-width:670px;margin:0 0 19px}.hero .btn{background:#1bb19f;color:#092c32}.hero .btn.alt{background:rgba(255,255,255,.10);color:white;border-color:rgba(255,255,255,.2)}.hero-eyebrow{font-size:10px;color:#6fe3d3;letter-spacing:.17em;font-weight:850;text-transform:uppercase;margin-bottom:9px}.quick-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:14px;margin-bottom:24px}.quick-link{display:flex;gap:12px;align-items:center;background:white;border:1px solid var(--border);padding:18px 17px;border-radius:13px;box-shadow:var(--shadow);color:#283a50;font-weight:680}.quick-link:hover{border-color:#83d8cc;transform:translateY(-1px)}.quick-link svg{width:19px;height:19px;color:var(--sea)}
/* Inputs and actions */
form label{display:block;font-weight:710;color:#45566c;font-size:12px;margin:17px 0 11px}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{display:block;width:100%;min-height:45px;border:1px solid var(--border-strong);border-radius:10px;color:#1e3046;background:#fff;padding:11px 13px;font-size:13px;margin-top:7px;box-shadow:0 1px 2px rgba(16,31,52,.02);transition:border-color .15s,box-shadow .15s}textarea{min-height:105px;line-height:1.55;resize:vertical}input:focus,select:focus,textarea:focus{border-color:#13a394;box-shadow:0 0 0 3px rgba(33,184,167,.10);outline:0}input[type=file]{background:#f7fafc;border-style:dashed;padding:14px}input[type=checkbox]{width:16px;height:16px;accent-color:#087b79;vertical-align:middle;margin-right:7px}.btn,button:not(.mobile-toggle){appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:39px;vertical-align:middle;padding:10px 15px;font-size:12px;font-weight:780;line-height:1.2;border-radius:10px;color:white;border:1px solid #0a827d;background:linear-gradient(180deg,#0d928b,#07756f);box-shadow:0 4px 10px rgba(11,126,121,.12);cursor:pointer;text-decoration:none;margin:8px 7px 0 0;transition:filter .15s,transform .15s,background .15s}.btn:hover,button:not(.mobile-toggle):hover{filter:brightness(.97);transform:translateY(-1px);color:white}.btn:active,button:active{transform:translateY(0)}.btn.alt,button.alt{background:#eff5f7;color:#1a5361;border-color:#d8e6ea;box-shadow:none}.btn.alt:hover,button.alt:hover{color:#0d5762;background:#e2f0f1}.btn.danger,button.danger{background:#ba454b;color:white;border-color:#b73f47;box-shadow:0 4px 10px rgba(185,62,67,.15)}button:disabled{opacity:.46;cursor:not-allowed;box-shadow:none;transform:none}.inline{display:inline-block}.inline input[type=hidden]{display:none}.inline select{display:inline-block;width:auto}
/* Data tables */
table{border-collapse:separate;border-spacing:0;width:100%;font-size:12px;margin:19px 0;overflow:visible}th{text-align:left;color:#63768a;background:#f2f5f9;font-weight:800;text-transform:uppercase;letter-spacing:.055em;font-size:10px;padding:13px 14px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);white-space:nowrap}th:first-child{border-left:1px solid var(--border);border-radius:8px 0 0 0}th:last-child{border-right:1px solid var(--border);border-radius:0 8px 0 0}td{border-bottom:1px solid #ecf0f5;padding:13px 14px;vertical-align:middle;color:#34455b;line-height:1.5;max-width:400px;overflow-wrap:anywhere}tr:hover td{background:#f9fbfc}td a{font-weight:700}.wide{overflow:auto;max-width:100%;border-radius:11px}.wide table{min-width:1710px}.panel:not(.wide){overflow-wrap:anywhere}.table-card{overflow:auto}
/* Alerts, badges and destructive action */
.alert{background:#fff4f2;border:1px solid #f3c7bc;color:#9b4838;padding:16px 17px;border-radius:11px;margin-bottom:18px;font-weight:550}.notice{background:#eaf8f1;border:1px solid #bde9d4;color:#116b52;padding:16px;border-radius:11px}.good{color:#087b62}.warn{color:#ab4b32}.danger-panel{border-color:#f0d5d4;background:linear-gradient(180deg,#fff,#fffafa)}.danger-title{display:flex;align-items:center;gap:11px;margin-bottom:13px}.danger-icon{width:41px;height:41px;display:grid;place-items:center;color:#ae424b;background:#ffeded;border-radius:12px}.danger-icon svg{width:21px;height:21px}.danger-title h2{margin:0}.danger-description{max-width:710px}.reset-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:20px;align-items:start}.reset-option{background:#fff;border:1px solid var(--border);border-radius:11px;padding:15px 16px;display:block;margin-top:13px}.reset-option:hover{border-color:#8accc5}.reset-option:has(input:checked){border-color:#17a59a;background:#f1faf8}.reset-option strong{display:block;color:#1c3446}.reset-option small{display:block;color:#7b8999;margin:6px 0 0 24px;line-height:1.5}.reset-option input{float:left;margin-top:2px}.reset-summary{background:#f5f7fa;border:1px solid var(--border);border-radius:12px;padding:20px}.reset-summary h3{margin:0 0 12px}.reset-summary table{margin:0}.reset-summary td{padding:9px 0}.confirm-box{border-top:1px solid var(--border);margin-top:24px;padding-top:18px}.confirm-box label{margin:13px 0}.confirm-box input[type=checkbox]{vertical-align:middle}.confirm-box .danger{margin-top:14px}.caution{background:#fffaed;border:1px solid #f0e5c1;color:#826318;border-radius:10px;padding:12px 14px;font-size:12px;line-height:1.6}
/* Auth / voting */
.auth-shell{min-height:100vh;background:radial-gradient(circle at 8% 10%,rgba(28,174,160,.13),transparent 34%),radial-gradient(circle at 90% 85%,rgba(23,74,114,.11),transparent 32%),#f4f8fa;display:flex;flex-direction:column}.auth-top{height:87px;padding:23px clamp(20px,5vw,72px);display:flex;align-items:center;justify-content:space-between}.auth-brand{display:flex;align-items:center;gap:12px;font-weight:850;color:#132a40;font-size:22px}.auth-brand .brand-mark{width:40px;height:40px}.auth-brand small{font-size:12px;font-weight:550;color:#8191a4;margin-left:4px}.auth-main{flex:1;width:100%;max-width:530px;margin:55px auto 80px;padding:0 20px}.auth-main .heading{margin-bottom:20px}.auth-main .heading:before{display:none}.auth-main .panel{padding:33px 35px;border-radius:20px;box-shadow:0 25px 60px rgba(19,53,75,.1)}.auth-main .panel h2{font-size:23px}.auth-main button{width:100%;min-height:46px;margin-top:14px}.auth-footer{text-align:center;color:#98a7b6;font-size:11px;padding:25px}.auth-main .heading span{display:none}
/* Transitions & responsive */
@media(max-width:1160px){:root{--sidebar:236px}.sidebar{padding-left:11px;padding-right:11px}.workspace-main{padding:30px 22px 45px}.panel{padding:23px}.reset-grid{grid-template-columns:1fr}}
@media(max-width:850px){.app-shell{display:block}.sidebar{position:fixed;min-height:0;height:100dvh;left:0;top:0;width:min(290px,85vw);transform:translateX(-103%);transition:transform .23s ease;box-shadow:16px 0 38px rgba(5,23,40,.20)}body.sidebar-open .sidebar{transform:translateX(0)}.mobile-shade{display:block;position:fixed;z-index:50;inset:0;background:rgba(6,20,35,.54);opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s}body.sidebar-open .mobile-shade{opacity:1;visibility:visible}.mobile-toggle{display:inline-grid;place-items:center}.topbar{height:65px;padding:0 18px}.heading h1{font-size:25px}.workspace-main{padding:27px 18px 42px}.heading:before{display:none}.topbar-user .user-details{display:none}.stats{gap:10px}.stats>div{padding:17px}.stats strong{font-size:28px}}
@media(max-width:570px){.stats{grid-template-columns:1fr}.panel{padding:19px 17px;border-radius:13px}.hero{padding:27px 23px}.hero h2{font-size:20px}.grid{grid-template-columns:1fr}.heading{align-items:flex-start}.heading span{display:none}.topbar-section{display:none}.brand-subtitle{font-size:9px}.auth-main{margin-top:23px}.auth-main .panel{padding:25px}.reset-grid{gap:12px}.topbar-badge{font-size:9px}.workspace-footer{padding:15px 18px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* MEGA v1.7: consistent, accessible, plain-language user notifications */
.mega-feedback{display:flex;align-items:flex-start;gap:16px;position:relative;border:1px solid #cbd8e5;border-left:4px solid #1762a1;border-radius:16px;padding:19px 19px 19px 18px;margin:0 0 20px;background:#fff;box-shadow:0 12px 32px rgba(20,40,62,.055);color:#24384e;overflow-wrap:anywhere}
.mega-feedback__icon{flex:0 0 42px;height:42px;display:grid;place-items:center;border-radius:13px;color:#1b639f;background:#edf5ff}
.mega-feedback__icon svg{width:23px;height:23px}
.mega-feedback__content{min-width:0;flex:1}.mega-feedback__content h2{margin:0 0 6px;color:#142b43;font-size:16px;line-height:1.45;letter-spacing:-.015em;font-weight:780}.mega-feedback__content p{margin:0 0 7px;font-size:13px;line-height:1.65;color:#40556d}
.mega-feedback__content .mega-feedback__action{margin-top:10px;color:#273d53}.mega-feedback__action strong{font-weight:770;color:#162d43}
.mega-feedback__content .mega-feedback__reference{margin-top:12px;font-size:11px;color:#677c91}.mega-feedback__reference code{font-size:11px;color:#435d77;letter-spacing:.02em;background:rgba(255,255,255,.8);border:1px solid #d8e4ef;border-radius:5px;padding:2px 5px}
.mega-feedback__close{width:31px;min-width:31px;height:31px;display:grid;place-items:center;background:transparent;color:#7b8da2;border:0;border-radius:9px;font-size:24px;line-height:1;padding:0;margin:-3px -3px 0 0;cursor:pointer}.mega-feedback__close:hover{background:rgba(11,43,70,.07);color:#1c334b}.mega-feedback__close:focus-visible{outline:3px solid #298fc0;outline-offset:2px}
.mega-feedback--error{border-color:#f3c5c5;border-left-color:#d65b57;background:linear-gradient(115deg,#fff7f6 0%,#ffffff 56%)}
.mega-feedback--error .mega-feedback__icon{background:#ffe9e8;color:#b34240}
.mega-feedback--warning{border-color:#f0ddaf;border-left-color:#d99f2b;background:linear-gradient(115deg,#fffaf0 0%,#ffffff 56%)}
.mega-feedback--warning .mega-feedback__icon{background:#fff0cf;color:#916313}
.mega-feedback--success{border-color:#b9e3d4;border-left-color:#12987e;background:linear-gradient(115deg,#f2fbf7 0%,#ffffff 56%)}
.mega-feedback--success .mega-feedback__icon{background:#def7ec;color:#12816c}
.validation-summary{font-weight:700;color:#20374f;margin:16px 0}
@media(max-width:570px){.mega-feedback{gap:11px;padding:14px 12px 15px 11px;border-radius:12px}.mega-feedback__icon{height:34px;flex-basis:34px;border-radius:10px}.mega-feedback__icon svg{width:19px;height:19px}.mega-feedback__content h2{font-size:14px}.mega-feedback__content p{font-size:12px}.mega-feedback__close{min-width:26px;width:26px;height:26px}}

/* MEGA v1.8 — guided Excel-first workshop experience */
.flow-breadcrumb{display:flex;align-items:center;gap:11px;font-weight:650;color:#7d8da0;margin:-2px 0 19px;font-size:13px}.flow-breadcrumb a{color:#087c80}.flow-kicker{display:block;color:#338fa1;font-size:10px;letter-spacing:.12em;font-weight:850;margin-bottom:8px}.flow-hero,.flow-risk-banner{border-radius:20px;background:linear-gradient(118deg,#112b45,#174d5f 94%);color:white;padding:29px 32px;box-shadow:0 20px 48px rgba(15,45,74,.12);margin:0 0 23px}.flow-hero h2,.flow-risk-banner h2{font-size:27px;color:white;line-height:1.23;margin:7px 0 10px}.flow-hero .flow-kicker,.flow-risk-banner .flow-kicker{color:#93e2de}.flow-hero p,.flow-risk-banner p{color:#ccdfeb}.flow-hero-top,.flow-hero-meta,.flow-toolbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.flow-hero-top{justify-content:space-between}.flow-hero-meta{color:#bad0de;font-size:13px;gap:21px}.flow-hero-meta span{padding-right:14px;border-right:1px solid #567384}.flow-hero-meta span:last-child{border:0}.flow-toolbar{margin-top:20px}.flow-btn-light{display:inline-flex;align-items:center;border-radius:11px;background:#fff;color:#10435a;border:1px solid #c8ece9;padding:11px 15px;font-weight:800;cursor:pointer;min-height:40px;text-decoration:none}.flow-btn-light:hover{background:#e6faf8;color:#083b50}.flow-muted{color:#c1d7e1;font-size:12px}.flow-live-indicator{color:#9ff1c1;font-size:13px;font-weight:650}.workshop-status{display:inline-flex;gap:5px;align-items:center;white-space:nowrap;border:1px solid #dce5ef;background:#eef3fa;color:#3b5066;font-size:11px;font-weight:900;border-radius:999px;padding:7px 10px;letter-spacing:.035em}.ws-live{color:#076346;background:#d6f9e8;border-color:#7fd9b6}.ws-closed{color:#47627a;background:#eaf1f7}.ws-scheduled{background:#fff0dc;color:#93611a;border-color:#f6d6a4}.flow-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:0 0 16px}.flow-stepper>a{display:flex;gap:11px;align-items:center;padding:16px 12px;background:white;border:1px solid var(--border);box-shadow:var(--shadow);border-radius:13px;color:#243d54}.flow-stepper>a:hover{border-color:#28a79e;transform:translateY(-1px)}.flow-stepper>a>b{display:grid;place-items:center;flex:none;width:31px;height:31px;background:#e5f6f3;color:#087c75;border-radius:10px;font-size:13px}.flow-stepper strong,.flow-stepper small{display:block}.flow-stepper strong{font-size:12px}.flow-stepper small{font-size:10px;color:#8796a7;margin-top:3px;line-height:1.35}.flow-not-ready{opacity:.65}.flow-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px}.flow-metrics>div{display:flex;flex-direction:column;gap:6px;background:white;border:1px solid var(--border);border-radius:14px;padding:18px 20px}.flow-metrics strong{font-size:28px;line-height:1.15;color:#193b52;font-weight:850}.flow-metrics span{font-size:12px;color:#76879a}.flow-section{margin:0 0 20px;padding:27px!important;scroll-margin-top:20px}.flow-section h2{margin:5px 0 5px}.flow-section p{font-size:13px}.flow-section-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px}.flow-section-head .btn{white-space:nowrap}.flow-two-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.flow-two-panels>.panel{margin:0}.flow-math{font-weight:780;background:#edf6f5;border-left:3px solid #159891;border-radius:5px;padding:12px 13px;color:#1c5963!important}.flow-register{min-width:1300px!important}.flow-register th{white-space:nowrap}.flow-register td{vertical-align:middle;max-width:260px;line-height:1.4}.flow-register td strong{font-size:12px}.flow-link-action{white-space:nowrap;display:inline-block;font-weight:800;background:#e3f6f4;border-radius:9px;padding:8px 10px}.flow-mini-status{display:inline-block;background:#eef4f8;border-radius:30px;padding:5px 9px;white-space:nowrap;color:#49637b;font-size:11px;font-weight:700}.flow-empty{text-align:center;padding:42px 20px;background:#f9fcfd;border:1px dashed #c8d7e5;border-radius:15px}.flow-empty h3{font-size:17px}.flow-empty-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:13px;background:#e9f7f4;margin:auto;color:#0e8a84;font-weight:900;font-size:20px}.flow-workshop-cards{display:flex;flex-direction:column;gap:12px;margin:0 0 24px}.flow-list-head{margin-bottom:17px}.flow-list-head h2{font-size:19px;margin:0}.flow-workshop-item{display:flex;align-items:center;gap:17px;background:white;border:1px solid var(--border);border-radius:17px;padding:22px 24px;box-shadow:var(--shadow)}.flow-workshop-symbol{flex:none;background:#e9f6f4;border-radius:13px;color:#168780;font-size:24px;font-weight:800;display:grid;place-items:center;width:52px;height:52px}.flow-workshop-description{flex:1;min-width:0}.flow-workshop-description h3{font-size:16px;margin:4px 0}.flow-workshop-description p{margin:0;color:#7d8b99;font-size:12px}.flow-workshop-aside{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.flow-danger-text{border:0!important;background:none!important;box-shadow:none!important;color:#ba5660!important;padding:4px 6px!important;font-size:11px!important;font-weight:700!important}.flow-risk-banner{display:flex;justify-content:space-between;align-items:center;gap:26px;padding:26px 30px}.flow-risk-banner .btn{flex:none}.flow-risk-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:0 0 25px}.flow-risk-steps a{display:flex;align-items:center;gap:8px;padding:12px 10px;color:#6c7d8f;border-radius:11px;background:white;border:1px solid #e2e8f0;font-size:12px;font-weight:800}.flow-risk-steps span{display:grid;place-items:center;width:25px;height:25px;flex:none;background:#ecf2f6;border-radius:9px}.flow-risk-steps .step-done{color:#0c716e;background:#eaf8f5;border-color:#a7ded9}.flow-risk-steps .step-done span{color:white;background:#14968e}.flow-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.flow-data-chip{background:#f5f9fc;border:1px solid #e1eaf2;border-radius:11px;padding:14px 15px;margin-bottom:14px;overflow-wrap:anywhere}.flow-data-chip small{color:#8593a3;display:block;font-size:11px;margin-bottom:8px}.flow-data-chip strong{font-size:13px;color:#213b53}.flow-entry-form{margin-top:16px}.flow-entry-form label{margin:0 0 13px;display:block}.flow-owner-form{display:flex;align-items:end;gap:12px;margin:16px 0}.flow-owner-form label{flex:1}.flow-info{padding:13px 17px;border-radius:12px;background:#edf7fb;border:1px solid #bfdfe8;color:#2b5a70;font-size:13px;line-height:1.55;margin-top:12px}.flow-info a{font-weight:850}.flow-scoreboard{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.flow-scoreboard>div{background:#f6f9fc;border:1px solid #e6ecf4;padding:17px 18px;border-radius:14px;min-height:94px}.flow-scoreboard small{display:block;font-size:11px;color:#758698;margin-bottom:7px}.flow-scoreboard strong{display:block;font-size:27px;font-weight:850;line-height:1.15}.flow-scoreboard .flow-score-main{background:#e8f7f4;border-color:#b3e3d9}.flow-score-main span{font-size:11px;font-weight:750;color:#24706e}.flow-action-row{padding:17px;border:1px solid #e0e9f1;border-radius:13px;margin:12px 0}.flow-action-row p{font-size:12px;margin:4px 0 10px}.flow-voting-card{border:1px solid #afd9ce;background:#f2fbf9;border-radius:13px;padding:16px 18px;margin:14px 0}.flow-voting-card p{margin:6px 0}.flow-voting-card .flow-toolbar{margin-top:10px}.flow-voting-card .flow-toolbar .btn,.flow-voting-card .flow-toolbar button{font-size:12px}.flow-section textarea{resize:vertical}.flow-section input[type="date"]{width:100%}.flow-section .btn.alt,.flow-voting-card .btn.alt{display:inline-flex;align-items:center;justify-content:center}#step-identify,#step-vote,#step-controls,#step-actions,#step-approve,#step-monitor{scroll-margin-top:22px}
@media(max-width:1180px){.flow-stepper{grid-template-columns:repeat(3,1fr)}.flow-risk-steps{grid-template-columns:repeat(3,1fr)}.flow-two-panels{grid-template-columns:1fr}.flow-workshop-aside{flex-direction:column;align-items:flex-end}}
@media(max-width:740px){.flow-stepper{grid-template-columns:repeat(2,1fr)}.flow-stepper>a{padding:11px}.flow-stepper a small{font-size:9px}.flow-metrics{grid-template-columns:repeat(2,1fr)}.flow-section{padding:18px!important}.flow-section-head{flex-direction:column;align-items:flex-start}.flow-grid-2,.flow-scoreboard{grid-template-columns:1fr}.flow-risk-steps{grid-template-columns:repeat(2,1fr)}.flow-workshop-item{align-items:flex-start;flex-wrap:wrap;padding:16px}.flow-workshop-aside{width:100%;align-items:flex-start;flex-direction:row;justify-content:flex-start}.flow-hero,.flow-risk-banner{padding:20px}.flow-risk-banner{flex-direction:column;align-items:flex-start}.flow-risk-banner .btn{flex:none}.flow-hero-meta{gap:8px}.flow-hero-meta span{border:0}.flow-owner-form{flex-direction:column;align-items:stretch}}


/* v1.9 — premium mobile-first participant ballot; limited to this page */
.mega-ballot{max-width:860px;margin:0 auto;padding:0 0 16px;color:#1c3449}
.mega-ballot-header{position:relative;overflow:hidden;padding:32px 34px;background:radial-gradient(circle at 85% 12%,rgba(26,187,172,.26),transparent 36%),linear-gradient(121deg,#112a46,#16475a);border-radius:21px 21px 0 0;color:white}
.mega-ballot-header h1{font-size:clamp(25px,4vw,36px);margin:11px 0 9px;color:#fff;line-height:1.16}
.mega-ballot-header p{color:#d0e6ef;margin:0;line-height:1.65;font-size:14px;max-width:740px}
.mega-ballot-header p strong{color:#fff}
.mega-ballot-eyebrow{display:inline-flex;gap:9px;align-items:center;color:#94eedb;font-size:11px;font-weight:850;letter-spacing:.09em}
.mega-ballot-live-dot{display:inline-block;width:9px;height:9px;border-radius:100%;background:#5ce0b4;box-shadow:0 0 0 4px rgba(76,218,177,.16)}
.mega-ballot-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:22px}
.mega-ballot-meta span{font-size:11px;color:#e1eff7;border:1px solid rgba(195,230,241,.24);background:rgba(255,255,255,.07);padding:8px 10px;border-radius:10px}
.mega-ballot-meta strong{color:white}
.mega-ballot-context,.mega-ballot-how,.mega-ballot-form,.mega-ballot-result{background:#fff;padding:27px 34px;border:1px solid #e0e9f0;border-top:0}
.mega-ballot-section-top,.mega-ballot-choices-head{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;color:#758ca0;font-weight:850;letter-spacing:.08em;font-size:11px;text-transform:uppercase}
.mega-ballot-tag{display:inline-block;letter-spacing:0;text-transform:none;color:#087c76;background:#e7f7f3;border-radius:40px;padding:7px 10px;font-size:11px}
.mega-ballot-context h2{font-size:25px;margin:15px 0 21px;line-height:1.3;color:#102b40}
.mega-ballot-statement{background:#f0f8fa;border-left:3px solid #119992;border-radius:9px;padding:15px 17px;margin-bottom:20px}
.mega-ballot-statement h3{margin:0 0 7px;font-size:13px;color:#23475a}
.mega-ballot-statement p{margin:0;color:#2e5066;font-size:14px;overflow-wrap:anywhere}
.mega-ballot-objectives{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:0 0 19px}
.mega-ballot-objectives>div{background:#f7f9fc;border:1px solid #e8edf3;border-radius:12px;padding:16px 17px;overflow-wrap:anywhere}
.mega-ballot-objectives small{font-size:10px;color:#7990a3;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.mega-ballot-objectives p{margin:9px 0 0;font-size:13px;color:#1c3b51;line-height:1.5;font-weight:650}
.mega-ballot-factors{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.mega-ballot-factor{border:1px solid #dbe6ef;border-radius:12px;padding:18px;overflow-wrap:anywhere}
.mega-ballot-factor-icon{width:28px;height:28px;background:#ecf4f7;color:#317084;display:grid;place-items:center;border-radius:8px;font-weight:850;font-size:17px}
.mega-ballot-factor h3{font-size:13px;margin:11px 0 7px}
.mega-ballot-factor p{font-size:13px;line-height:1.6;margin:0;white-space:normal;color:#425e70}
.mega-ballot-how{background:#f2f9fa;padding-top:23px;padding-bottom:23px}
.mega-ballot-how strong{color:#126971}
.mega-ballot-how h2{font-size:19px;margin:4px 0 8px}
.mega-ballot-how p{font-size:13px;margin:0;color:#395a66;max-width:750px}
.mega-ballot-how p strong{color:#163e4d}
.mega-ballot-how .mega-ballot-method-note{font-size:11px;margin-top:11px;color:#607986}
.mega-ballot-form{border-radius:0 0 21px 21px}
.mega-ballot-choices-head{margin-bottom:17px}
.mega-ballot-choices-head p{margin:0;font-size:12px;letter-spacing:0;text-transform:none;font-weight:500}
.mega-ballot-fieldset{min-width:0;border:0;border-bottom:1px solid #e3ecf2;padding:0 0 22px;margin:0 0 22px}
.mega-ballot-fieldset legend{font-size:16px;font-weight:850;color:#182f45;width:100%;margin-bottom:13px}
.mega-ballot-fieldset legend small{display:block;font-size:12px;color:#758a9c;font-weight:500;margin-top:3px}
.mega-ballot-rating-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}
.mega-ballot-choice{position:relative;display:block!important;cursor:pointer;margin:0!important;min-width:0}
.mega-ballot-choice input{position:absolute;opacity:0;width:1px;height:1px;top:50%;left:50%}
.mega-ballot-choice-ui{display:flex;min-height:94px;align-items:center;justify-content:center;flex-direction:column;gap:8px;background:#fbfdff;border:2px solid #e1e9ef;border-radius:13px;box-shadow:0 2px 5px rgba(15,46,60,.02);transition:border-color .15s,background .15s,transform .15s;text-align:center;padding:11px 5px}
.mega-ballot-choice-ui strong{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#ecf2f6;color:#20445d;font-weight:850;font-size:19px}
.mega-ballot-choice-ui small{font-size:10px;color:#647d8d;font-weight:650;line-height:1.3}
.mega-ballot-choice:hover .mega-ballot-choice-ui{border-color:#6bc1b7;transform:translateY(-1px)}
.mega-ballot-choice input:checked+.mega-ballot-choice-ui{background:#e8f8f4;border-color:#0b998c;box-shadow:0 0 0 2px rgba(8,165,147,.09)}
.mega-ballot-choice input:checked+.mega-ballot-choice-ui strong{background:#088e83;color:white}
.mega-ballot-choice input:focus-visible+.mega-ballot-choice-ui{outline:3px solid #3fbcb1;outline-offset:2px}
.mega-ballot-scale-ends{display:flex;justify-content:space-between;margin:9px 3px 0;color:#7b8da0;font-size:11px;gap:12px}
.mega-ballot-submit label{font-size:13px;font-weight:800;color:#213c4f}
.mega-ballot-submit input{min-height:50px;font-size:15px}
.mega-ballot-submit .mega-ballot-privacy{color:#657e8d;font-size:12px;margin:14px 0}
.mega-ballot-submit button{width:100%;min-height:52px;border-radius:12px;font-size:15px;font-weight:850}
.mega-ballot-result{text-align:center;padding:45px 25px;border-radius:0 0 21px 21px}
.mega-ballot-result h2{font-size:22px}.mega-ballot-result p{margin:0 auto;max-width:420px}
.mega-ballot-check{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;font-size:27px;background:#dff8ef;color:#0b836c;margin:0 auto 20px}
.mega-ballot-bottom{text-align:center;font-size:11px;color:#92a4b2;margin:23px 0}
.mega-ballot-message{max-width:700px;margin:25px auto}
@media(max-width:580px){.mega-ballot-header{padding:25px 21px}.mega-ballot-context,.mega-ballot-how,.mega-ballot-form{padding:22px 18px}.mega-ballot-objectives,.mega-ballot-factors{grid-template-columns:1fr}.mega-ballot-context h2{font-size:21px}.mega-ballot-rating-grid{gap:5px}.mega-ballot-choice-ui{min-height:81px;padding:9px 1px;border-radius:9px}.mega-ballot-choice-ui strong{width:31px;height:31px;font-size:17px}.mega-ballot-choice-ui small{font-size:9px}.mega-ballot-meta span{max-width:100%}}

/* v1.9: wider page for informed mobile voting */
.auth-main.vote-auth-main{max-width:1010px;margin:23px auto 50px;padding:0 clamp(12px,3vw,32px)}
.auth-main.vote-auth-main .mega-ballot-header h1{font-size:clamp(25px,4vw,36px)}
.auth-main.vote-auth-main .mega-ballot-submit button{margin-top:14px}

/* MEGA v2.0 — Reporting & Accountability workspace */
.report-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;background:linear-gradient(113deg,#0e2a43 0%,#193e55 57%,#066f70 130%);border-radius:20px;color:#fff;padding:35px 38px;box-shadow:0 15px 35px rgba(15,40,64,.13);margin-bottom:20px}
.report-hero h2{color:#fff;font-size:clamp(22px,3vw,29px);font-weight:820;line-height:1.25;max-width:790px;margin:10px 0}
.report-hero p{color:#c9dce5;line-height:1.6;max-width:740px;font-size:14px;margin:0}
.report-eyebrow{font-size:10px;font-weight:850;letter-spacing:.15em;color:#88efdc;text-transform:uppercase}
.report-hero-seal{border:1px solid rgba(177,235,226,.45);padding:17px;border-radius:14px;min-width:124px;text-align:center;color:#b0f6e9;font-size:11px;letter-spacing:.08em;line-height:1.55;font-weight:900}
.report-hero-action{white-space:nowrap;background:#effffc!important;color:#065e63!important}
.report-metrics,.council-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px}
.report-metric{border:1px solid #dce7ee;border-radius:15px;background:#fff;padding:21px 20px;box-shadow:0 8px 20px rgba(22,55,77,.04)}
.report-metric span,.council-kpis span{display:block;font-weight:650;color:#6b8090;font-size:11px;line-height:1.5;margin-bottom:9px}
.report-metric strong,.council-kpis strong{display:block;font-size:29px;line-height:1;font-weight:880;letter-spacing:-.04em;color:#152e44}
.report-metric-alert strong{color:#a23b32}
.report-panel{padding:27px 29px!important;margin-bottom:20px}
.report-panel-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:24px}
.report-panel-head h2,.report-panel h2{margin:0 0 5px;font-size:20px;color:#112d43}
.report-panel-head p{margin:0;font-size:13px;color:#617b8d;line-height:1.5}
.report-pill{display:inline-flex;align-items:center;border-radius:30px;padding:7px 11px;font-size:10px;font-weight:850;letter-spacing:.05em;white-space:nowrap}
.pill-neutral{background:#e9f1f5;color:#2e5773}.pill-danger{color:#ab392b;background:#fff0ed}.pill-good{color:#08705d;background:#dff8f0}
.report-builder{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 19px}
.report-builder label,.commitment-inline label{display:flex;flex-direction:column;gap:8px;font-weight:750;color:#1b3a51;font-size:12px}
.report-builder label select,.report-builder label input,.commitment-inline input,.commitment-inline select{background:#fff;border:1px solid #cbdce7;border-radius:10px;padding:12px 13px;min-width:0;max-width:100%;width:100%;font-size:13px;color:#16384d}
.report-builder-wide,.report-builder-actions{grid-column:1/-1}.report-builder-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.report-builder-actions small{color:#74889a;font-size:12px;max-width:580px}
.table-scroll{overflow:auto;max-width:100%}.report-panel table{min-width:660px;width:100%}.report-panel th{background:#f1f6f9!important;color:#32546c!important;font-size:10px!important;font-weight:900!important;letter-spacing:.06em;text-transform:uppercase}
.report-panel td{font-size:12px!important;vertical-align:middle}.report-panel td small{color:#708696;font-size:11px}
.report-panel td .btn{padding:7px 11px;font-size:11px;white-space:nowrap}
.report-kicker{font-size:10px;font-weight:850;color:#54748a;text-transform:uppercase;letter-spacing:.05em}
.report-notice{border:1px solid #d6e4ed;border-left:3px solid #168985;background:#f5fafc;border-radius:9px;padding:15px 19px;color:#4a6b80;font-size:12px;line-height:1.7;margin:20px 0}
.report-empty{padding:35px;text-align:center;color:#678398;background:#f5f9fa;border-radius:11px}
.commitment-card{border:1px solid #dce8ef;border-radius:14px;padding:22px;margin:15px 0;background:#fff;box-shadow:0 5px 13px rgba(34,71,90,.03)}
.commitment-top{display:flex;justify-content:space-between;gap:10px;align-items:center}.commitment-card h3{font-size:16px;line-height:1.45;color:#15334b;margin:13px 0 7px}
.commitment-risk{font-size:12px;color:#5f7e8f;margin:4px 0 18px}.commitment-risk a{text-decoration:underline}
.commitment-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:18px 0}
.commitment-facts>div{background:#f6f9fb;padding:11px 13px;border-radius:10px;min-width:0}
.commitment-facts small{display:block;font-size:10px;color:#658196;font-weight:680;margin-bottom:6px}
.commitment-facts strong{display:block;font-size:12px;color:#17384f;overflow-wrap:anywhere}
.commitment-actions{display:flex;flex-wrap:wrap;gap:14px}.commitment-inline{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:11px;flex:1 1 260px;padding:15px;border:1px solid #e0eaf0;border-radius:12px;background:#f9fcfd}.commitment-inline button{justify-self:start;height:43px}
.report-help{font-size:12px;color:#4b7180}.report-help a{text-decoration:underline}
.report-actionbar{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 18px}.report-actionbar .btn{font-size:12px}
.council-document{background:#fff;border:1px solid #dbe5ed;border-radius:17px;box-shadow:0 14px 38px rgba(26,60,88,.09);color:#1c374b;overflow:hidden;max-width:1180px;margin:0 auto}
.council-cover{padding:37px 46px;background:linear-gradient(120deg,#12344c,#123f53);color:#fff}
.council-cover h2{color:#fff;font-size:clamp(25px,3vw,34px);letter-spacing:-.03em;margin:20px 0 10px;max-width:700px}
.council-cover .report-pill{margin:14px 0}.council-brand{font-weight:900;font-size:21px;letter-spacing:-.03em}.council-brand span{font-weight:500;font-size:11px;color:#c4dde8;display:block;letter-spacing:0}
.council-report-meta{font-size:12px;color:#c8dfe8;margin:8px 0}
.council-body{padding:20px 46px 36px}.council-section{padding:25px 0;border-bottom:1px solid #e2ebf0;break-inside:avoid-page}.council-section h3{font-size:18px;margin:0 0 13px;color:#18374f}
.council-section h4{font-size:13px;color:#345266;margin:20px 0 9px}.council-section p{font-size:13px;color:#4b6375;line-height:1.7}
.council-section table{width:100%;border-collapse:collapse;min-width:600px}.council-section th{text-align:left;background:#edf4f6;font-size:10px;font-weight:800;color:#496b7b;padding:11px;border-bottom:1px solid #d8e5ea}.council-section td{padding:10px 11px;font-size:11px;vertical-align:top;border-bottom:1px solid #e6edf2;overflow-wrap:anywhere}.council-section td small{font-size:10px;color:#758a97}
.council-kpis{grid-template-columns:repeat(4,minmax(0,1fr));margin:20px 0}.council-kpis div{border:1px solid #dce9ec;border-radius:11px;padding:15px;background:#f7fbfc}.council-kpis strong{font-size:23px}
.council-bar-row{display:grid;grid-template-columns:65px minmax(0,1fr) 38px;align-items:center;gap:12px;margin:12px 0;font-size:12px;font-weight:750}.council-bar-row>div{border-radius:20px;overflow:hidden;background:#edf3f6;height:13px}.council-bar-row i{height:100%;display:block;border-radius:20px}.bar-high{background:#bc5d50}.bar-medium{background:#d8a84e}.bar-low{background:#219888}
.council-end{padding:20px 0 5px;font-size:10px;color:#78909d}
@media(max-width:930px){.report-metrics{grid-template-columns:repeat(3,1fr)}.commitment-facts{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.report-hero{padding:24px;flex-direction:column;align-items:flex-start}.report-metrics{grid-template-columns:repeat(2,1fr)}.report-panel{padding:18px!important}.report-builder{grid-template-columns:1fr}.commitment-facts{grid-template-columns:1fr 1fr}.commitment-card{padding:14px}.council-cover{padding:24px}.council-body{padding:10px 22px 30px}.council-kpis{grid-template-columns:repeat(2,1fr)}}
@page{size:A4;margin:15mm}
@media print{body{background:white!important;color:#111!important}.sidebar,.topbar,.workspace-footer,.heading,.no-print,.mobile-shade,.report-actionbar,.report-panel,.report-notice{display:none!important}.app-shell,.workspace,.workspace-main{display:block!important;width:100%!important;margin:0!important;padding:0!important;max-width:none!important}.council-document{border:0!important;border-radius:0!important;box-shadow:none!important;max-width:none!important}.council-cover{background:#12344c!important;-webkit-print-color-adjust:exact;print-color-adjust:exact;break-after:avoid}.council-body{padding:12px 0}.council-section{break-inside:auto!important}.council-section table{min-width:0!important;font-size:9px}.council-section tr{break-inside:avoid}.council-kpis{grid-template-columns:repeat(4,1fr)}.report-pill,.council-bar-row i{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
