/* Dashboard theme based on the owner's images.jfif reference. Local assets only. */
:root{--green:#6856c8;--green-dark:#4f3daa;--ink:#393653;--muted:#89859e;--line:#edeaf7;--bg:#f4f2fc;--blue:#8e80de;--gold:#f2ad83;--coral:#ec9876;--radius:22px;--shadow:0 10px 32px #71659b08}
body{background:#c4d7fa;color:var(--ink);font-family:Tahoma,Arial,sans-serif;padding:24px 28px;min-height:100vh}body:before{content:'';position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 0 100%,#9ebdeb55,transparent 50%),radial-gradient(ellipse at 100% 0,#e3eaff55,transparent 50%);z-index:-1}
.sidebar{right:28px;top:24px;bottom:24px;height:calc(100vh - 48px);width:84px;padding:18px 11px;background:linear-gradient(180deg,#7461d2,#5843b6);border:0;border-radius:0 24px 24px 0;box-shadow:0 10px 30px #6757ad20;z-index:50;overflow-x:hidden;transition:width .2s}
.brand{padding:3px 0 18px!important;gap:10px;min-height:65px;justify-content:center;border-color:#ffffff24}.brand img{width:44px;height:44px;padding:4px;border-radius:50%;background:#fffdf9;mix-blend-mode:normal}.brand>div,.sidebar-caption,.sidebar-bottom,.nav-item>span{display:none}.sidebar nav{padding-top:10px}.nav-item{padding:11px!important;justify-content:center;margin:5px 0;border-radius:13px;color:#e0dafa;font-size:11px!important;min-height:43px}.nav-item svg{width:21px;height:21px;color:inherit}.nav-item:hover,.nav-item.active{background:#ffffff23;color:#fff;border:1px solid #ffffff18;box-shadow:none;transform:none}.nav-item.active:before{width:3px;background:#ffc9ab;box-shadow:none;right:-9px}.sidebar:hover{width:236px}.sidebar:hover .brand{justify-content:flex-start}.sidebar:hover .brand>div,.sidebar:hover .sidebar-caption,.sidebar:hover .sidebar-bottom{display:block}.sidebar:hover .nav-item{justify-content:flex-start}.sidebar:hover .nav-item>span:not(.nav-dot){display:inline}.sidebar .privacy-link{color:#dfdaf4}.workspace{margin-right:84px;background:#f3f1fc;border-radius:24px 0 0 24px;min-height:calc(100vh - 48px);border:1px solid #ffffff90;box-shadow:0 18px 60px #667aaf25;overflow:hidden;position:relative}
.topbar{position:relative;top:auto;background:#f3f1fce8;border:0;min-height:80px;padding:18px 30px;gap:20px}.breadcrumb{color:#aaa3c2;font-size:10px}.breadcrumb strong{color:#6c6388;font-weight:500}.top-actions{gap:12px}.account-button{background:white;border:0;color:#7a7098;border-radius:12px;font-size:10px;box-shadow:none}.top-actions .primary{border-radius:12px;font-size:10px}.site-search{display:flex;align-items:center;background:white;border-radius:13px;max-width:300px;flex:1;gap:8px;padding:0 6px 0 11px}.site-search input{border:0!important;box-shadow:none!important;background:transparent;padding:10px 11px;font-size:11px}.site-search button{border:0;background:#7560d2;color:white;border-radius:50%;width:27px;height:27px;padding:5px;display:grid;place-items:center;flex-shrink:0}.site-search button svg{width:15px;height:15px}
main{padding:0 30px 10px;max-width:1600px}.primary{background:#705bca;border:1px solid #705bca;color:white;border-radius:12px;box-shadow:none;font-weight:500}.primary:hover{background:#5f49bc;border-color:#5f49bc;box-shadow:0 5px 14px #705bca25}.secondary{background:#f8f6ff;border:1px solid #e8e2f8;color:#756593;border-radius:11px}.secondary:hover{background:#eee8ff;border-color:#d6cbef}.text-button{color:#7e6bc2}.form-panel,.report-card,.participation-panel,.trust-panel,.map-panel,.map-report-panel,.album-card{border:1px solid #f0edf9;background:white;box-shadow:0 5px 20px #71659b04;border-radius:19px}.report-card:hover{border-color:#d8cfee;box-shadow:0 10px 24px #7060a812;transform:translateY(-3px)}.form-panel{padding:26px}.report-card h3{color:#514862}.card-bottom{border-color:#f0edf7}.form-panel h1,.page-heading h1{font-size:25px;letter-spacing:-.5px}.page-heading p,.form-help{color:#9690aa}.filters{background:transparent;border:0;padding:0;gap:12px;margin-bottom:20px}.filters input,.filters select,input,select,textarea{border:1px solid #e9e5f4;background:#fcfbff;border-radius:11px;color:#5d5472;font-size:12px}.filters input:focus,input:focus,textarea:focus,select:focus{border-color:#a391df;box-shadow:0 0 0 3px #8e7ade15}.input-search{background:white;border-radius:12px}.badge{border:0;background:#f0ecfb;color:#8b7ab9}.status-progress,.status-organization_resolved{background:#fff0e7;color:#c58a65}.status-citizen_confirmed{background:#e6f7ef;color:#549b7a}.hero{background:linear-gradient(120deg,#fdfaff,#eee7ff);border:1px solid #e9e3fa;border-radius:22px;box-shadow:none}.hero h1{color:#4d426a}.hero h1 em{color:#8d75d2}.hero-copy>p{color:#9185a9}.hero-foot{color:#9a8eae}.hero-art .logo-frame{box-shadow:0 12px 40px #8d6cc61a;border-color:#e1d6f4}.stat-grid .stat{background:white;border:1px solid #eeeafa;box-shadow:none;border-radius:18px}.stat-grid .stat strong{color:#8070c4}.stat-grid .stat:before{display:none}.stat-grid .stat div>span{color:#9890ac}.section-title h2{color:#635775;font-size:19px}.eyebrow,.section-kicker{color:#a18cc7}.notice{background:#eee9fb;border-color:#dfd5f6;color:#776296;border-radius:12px}.topbar .menu-toggle{color:#71638d}.modal{background:#fff;border:1px solid #ece5f8;border-radius:22px}.modal::backdrop{background:#34254f55;backdrop-filter:blur(4px)}footer{border-color:#e5dff2;color:#aca2bd}footer strong{color:#9383a9}
.home-map-section{margin:25px 0}.home-map-panel .map-stage{height:370px}.map-source-badge{background:#f0eafb;color:#8c75bc;border:0}.map-panel-head,.map-help,.map-attribution{background:white;border-color:#f0edf7;color:#9185a1}.map-legend{background:#fdfbff;color:#8d809e;border-top:1px solid #f0edf7}.map-controls .secondary{background:#fffffff5;border-color:#ece7f6;color:#826aa5}.map-report-panel{border-color:#ede6f8}.map-report-list{scrollbar-color:#d8cce9 transparent}.report-preview .maplibregl-popup-content{border-color:#e7def5;box-shadow:0 8px 30px #60458120}.report-preview-body{color:#695677}.preview-request{border-color:#f0e8f8}
.dashboard-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:18px 0 24px}.dashboard-kicker{color:#9f93b8;font-size:10px}.dashboard-heading h1{font-size:27px;color:#5a4a78;font-weight:600;margin:10px 0}.dashboard-heading p{font-size:11px;color:#9c91af;margin:0}.dashboard-date{display:grid;gap:7px;text-align:left;font-size:10px;color:#a89dbb}.dashboard-date strong{font-weight:500;color:#7c6b99}.dashboard-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px}.dash-kpi{display:grid;grid-template-columns:42px 1fr;gap:10px;background:#fff;border:1px solid #f1edfa;border-radius:19px;padding:22px 18px;min-width:0}.kpi-symbol{display:grid;place-items:center;width:39px;height:39px;border-radius:13px;background:#eee8fb;color:#9782d1;font:500 23px Arial}.dash-kpi>div{display:flex;flex-direction:column;gap:8px}.dash-kpi>div>span{font-size:10px;color:#9a90ad}.dash-kpi strong{font-size:27px;line-height:1.1;color:#76668e;font-weight:500;letter-spacing:-1px}.dash-kpi small{grid-column:2;font-size:9px;color:#c0b7ce}.tone-1 .kpi-symbol{background:#fff0e8;color:#efa984}.tone-2 .kpi-symbol{background:#eaf5f1;color:#80b29f}.tone-3 .kpi-symbol{background:#f6eaf1;color:#d49ab8}.dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}.dash-card{border-radius:20px;background:#fff;padding:23px;border:1px solid #f0ecf8;min-width:0;box-shadow:0 4px 18px #74649303}.dash-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:17px}.dash-card h2{font-size:13px;font-weight:500;color:#7a6b8f;margin:0}.dash-card-head p{font-size:9px;margin:7px 0 0;color:#bbb2ca}.dash-card-head select{width:auto;max-width:130px;padding:5px 10px;font-size:9px;background:#fff;border:1px solid #f0ebf8;border-radius:20px;color:#a395b9}.mini-badge{color:#baaeca;border:1px solid #f1ecf8;border-radius:12px;padding:2px 8px;font-size:8px;white-space:nowrap}.trend-card{grid-column:span 7}.calendar-card{grid-column:span 5}.progress-card{grid-column:span 4;text-align:center}.categories-card{grid-column:span 5}.activity-card{grid-column:span 3}.chart-key{display:flex;gap:22px;font-size:9px;color:#b2a7c4;margin-bottom:10px}.chart-key span{display:flex;gap:6px;align-items:center}.chart-key span:before{content:'';height:3px;width:16px;border-radius:5px;background:#9d8bda}.chart-key .key-orange:before{background:#f1b28c}.trend-svg{display:block;width:100%;height:auto;direction:ltr;overflow:visible}.chart-grid-line{stroke:#f0ecf7;stroke-width:1;stroke-dasharray:4 5}.chart-axis{fill:#baafc9;font:9px Tahoma,Arial,sans-serif}.chart-purple-line{fill:none;stroke:#9c87db;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.chart-orange-line{fill:none;stroke:#eeb58d;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.chart-empty-note{font-size:10px;line-height:1.9;color:#b4a9c4;margin:10px 0 0}.ring-chart{position:relative;width:158px;height:158px;margin:4px auto 10px}.ring-chart svg{width:100%;height:100%}.ring-track{fill:none;stroke:#f0ecfa;stroke-width:9}.ring-value{fill:none;stroke:#9380db;stroke-width:9;stroke-linecap:round}.ring-chart>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px}.ring-chart strong{font-size:29px;font-weight:400;color:#8a7a9e}.ring-chart small{font-size:17px}.ring-chart span{font-size:10px;color:#b4a8c4}.progress-card>p{font-size:10px;color:#b4a8c4;line-height:1.9}.progress-card>.primary{display:block;margin-top:16px;font-size:11px;padding:9px}.ring-empty{height:160px;display:grid;place-content:center}.ring-empty span{font-size:38px;color:#d8cdeb}.ring-empty p{font-size:11px;color:#b5a9c7}.category-bars{display:grid;gap:22px;padding:12px 0}.category-row{display:grid;grid-template-columns:95px minmax(20px,1fr) 22px;align-items:center;gap:12px;font-size:10px;color:#a599b8}.category-row strong{font-size:10px;font-weight:500}.category-row meter{appearance:none;width:100%;height:8px;border:0;background:#f3effa;border-radius:10px;overflow:hidden}.category-row meter::-webkit-meter-bar{height:8px;border:0;background:#f3effa;border-radius:10px}.category-row meter::-webkit-meter-optimum-value{background:#9780db;border-radius:10px}.category-row meter::-moz-meter-bar{background:#9780db;border-radius:10px}.category-row.color-1 meter::-webkit-meter-optimum-value{background:#c2b4e8}.category-row.color-2 meter::-webkit-meter-optimum-value{background:#f2b491}.category-row.color-3 meter::-webkit-meter-optimum-value{background:#aca0da}.dashboard-mini-stats{display:flex;flex-direction:column;gap:18px;margin:24px 0}.dashboard-mini-stats>div{display:flex;align-items:center;gap:12px}.dashboard-mini-stats strong{color:#b39bcf;font-size:22px;font-weight:400}.dashboard-mini-stats span{font-size:10px;color:#b4a6c3}.dashboard-empty{padding:40px 10px;text-align:center;color:#b1a3c2;font-size:11px;line-height:2}.dashboard-data-note{font-size:10px;color:#ad9ebf;padding:15px 0;line-height:2}.dashboard-reports .section-title{margin-top:18px}.dashboard-reports .report-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.account-profile{max-width:none;margin:24px 0}.admin-workspace{max-width:none;margin-top:22px}.admin-workspace>h2{font-size:16px;margin:25px 0 12px;color:#826b9e}.admin-workspace>div:empty:after{content:'موردی برای بررسی وجود ندارد.';font-size:11px;color:#b7aaca;display:block;padding:15px 0}.admin-workspace #actions{gap:10px;border-bottom:1px solid #f0eaf7;padding-bottom:20px}.admin-workspace #actions .secondary{font-size:10px}
.calendar-head{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#9e8db2;margin:0 0 14px;direction:rtl}.calendar-head strong{font-weight:500}.calendar-head button{width:26px;height:26px;border:1px solid #f0ebf7;background:#fff;color:#b8a9cc;border-radius:50%;font:18px Arial;display:grid;place-items:center}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;text-align:center;direction:rtl}.calendar-week{font-size:9px;color:#bfb4cc;margin-bottom:10px}.calendar-days time{display:grid;place-items:center;min-height:26px;font-size:10px;color:#a99cb9}.calendar-days .today{background:#a18bda;color:white;border-radius:50%;width:27px;justify-self:center;box-shadow:0 3px 9px #aa91d945}.calendar-note{font-size:9px;color:#c0b3d0;margin:16px 0 0;line-height:1.8}
@media(min-width:1500px){body{padding:32px 5vw}.sidebar{right:5vw;top:32px;bottom:32px;height:calc(100vh - 64px)}.workspace{min-height:calc(100vh - 64px)}}
@media(max-width:1100px){body{padding:16px}.sidebar{top:16px;bottom:16px;right:16px;height:calc(100vh - 32px);width:70px;padding:16px 8px}.workspace{margin-right:70px;min-height:calc(100vh - 32px)}main{padding:0 22px 10px}.topbar{padding:18px 22px}.dashboard-kpis{gap:12px}.dash-kpi{padding:16px 12px;grid-template-columns:32px 1fr;gap:8px}.kpi-symbol{width:30px;height:30px;font-size:20px}.dash-kpi strong{font-size:24px}.dashboard-grid{gap:15px}.trend-card{grid-column:span 7}.calendar-card{grid-column:span 5}.progress-card,.categories-card,.activity-card{grid-column:span 4}.category-row{grid-template-columns:70px minmax(20px,1fr) 18px;gap:6px;font-size:9px}.dash-card{padding:18px}.site-search{max-width:220px}.top-actions .account-button:first-child{display:none}}
@media(max-width:800px){.dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.trend-card{grid-column:span 12}.calendar-card{grid-column:span 6;grid-row:span 1}.progress-card{grid-column:span 6}.categories-card{grid-column:span 7}.activity-card{grid-column:span 5}.site-search{max-width:180px}.breadcrumb>span,.breadcrumb>strong{display:none}.top-actions{gap:7px}.dashboard-heading h1{font-size:23px}}
@media(max-width:650px){body{padding:0;background:#f3f1fc}.workspace{margin-right:0;border:0;border-radius:0;min-height:100vh}.sidebar,.sidebar:hover{width:240px;top:0;right:-250px;bottom:0;height:100dvh;border-radius:0;padding:22px 15px;transition:right .2s}.sidebar.mobile-open{right:0;box-shadow:-20px 0 90px #34235460}.sidebar .brand{justify-content:flex-start}.sidebar .brand>div,.sidebar .sidebar-caption,.sidebar .sidebar-bottom{display:block}.sidebar .nav-item{justify-content:flex-start}.sidebar .nav-item>span:not(.nav-dot){display:inline}.mobile-close{color:white}.topbar{padding:14px 16px;min-height:72px;gap:10px;flex-wrap:wrap}.site-search{order:3;flex-basis:100%;max-width:none}.top-actions{margin-right:auto}.top-actions .primary{font-size:9px;padding:8px 10px}.account-button{padding:8px 10px}main{padding:0 16px 8px}.dashboard-heading{padding:20px 0}.dashboard-heading h1{font-size:22px}.dashboard-heading p{font-size:10px;line-height:1.9}.dashboard-date{display:none}.dashboard-kpis{gap:10px;margin-bottom:14px}.dash-kpi{padding:16px 11px;border-radius:16px}.dash-kpi>div>span{font-size:9px}.dash-kpi small{font-size:8px}.dashboard-grid{gap:12px}.dash-card{padding:17px;border-radius:17px}.calendar-card,.progress-card{grid-column:span 6}.categories-card,.activity-card{grid-column:span 12}.dashboard-mini-stats{flex-direction:row;justify-content:space-between;gap:8px}.dashboard-mini-stats>div{flex-direction:column;gap:7px}.dashboard-mini-stats span{font-size:9px}.dashboard-reports .report-grid{grid-template-columns:1fr}.dashboard-grid .dash-card h2{font-size:11px}.calendar-week,.calendar-days{gap:3px}.calendar-days time{font-size:9px;min-height:22px}.calendar-head{font-size:10px}.calendar-note{font-size:8px}.ring-chart{width:125px;height:125px}.progress-card>p{font-size:9px}.progress-card>.primary{font-size:9px;padding:8px}.hero{margin-top:10px}.map-stage,.home-map-panel .map-stage{height:330px}.form-panel{padding:21px 16px}.page-heading h1{font-size:24px}.dashboard-data-note{font-size:9px}.dashboard-calendar{min-width:0}}
@media(prefers-reduced-motion:reduce){.sidebar,.nav-item,.report-card{transition:none}.report-card:hover{transform:none}}

/* Keep the icon rail visible at tablet widths inherited from the original shell. */
@media(min-width:651px){.sidebar{transform:none;display:block}.workspace{margin-left:0}}

.logout-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #eadff1;border-radius:11px;padding:9px 12px;background:#fff8fc;color:#a06987;font:11px Tahoma,Arial,sans-serif;white-space:nowrap;cursor:pointer;flex-shrink:0}.logout-button:hover{background:#f9edf5;border-color:#d4b7cb}.logout-button:disabled{opacity:.55;cursor:wait}.logout-button:focus-visible{outline:3px solid #a390dc;outline-offset:2px}@media(max-width:650px){.logout-button{font-size:10px;padding:8px;gap:4px}.top-actions{flex-wrap:wrap}}
/* Both desktop panels follow the same width, so expansion never covers content. */
body{overflow-x:clip}
@media(min-width:651px){
 body{--nav-width:84px}
 body:has(.sidebar:is(:hover,:focus-within,.mobile-open)){--nav-width:236px}
 .sidebar,.sidebar:hover{width:var(--nav-width);transition:width .2s ease;transform:none}
 .workspace{margin-right:var(--nav-width);margin-left:0;min-width:0;transition:margin-right .2s ease}
 .sidebar:is(:hover,:focus-within,.mobile-open) .brand{justify-content:flex-start}
 .sidebar:is(:hover,:focus-within,.mobile-open) .brand>div,
 .sidebar:is(:hover,:focus-within,.mobile-open) .sidebar-caption,
 .sidebar:is(:hover,:focus-within,.mobile-open) .sidebar-bottom{display:block}
 .sidebar:is(:hover,:focus-within,.mobile-open) .nav-item{justify-content:flex-start}
 .sidebar:is(:hover,:focus-within,.mobile-open) .nav-item>span:not(.nav-dot){display:inline}
}
@media(min-width:651px) and (max-width:1100px){body{--nav-width:70px}}
@media(max-width:650px){
 body{--mobile-nav-width:min(240px,calc(100vw - 64px))}
 .sidebar,.sidebar:hover{right:0;width:var(--mobile-nav-width);transform:translateX(100%);transition:transform .2s ease;box-shadow:none}
 .sidebar.mobile-open{right:0;transform:translateX(0);box-shadow:none}
 .workspace{margin-right:0;min-width:0;transform:translateX(0);transition:transform .2s ease}
 body:has(.sidebar.mobile-open) .workspace{transform:translateX(calc(-1 * var(--mobile-nav-width)))}
}
@media(prefers-reduced-motion:reduce){.sidebar,.sidebar:hover,.workspace{transition:none}}

/* Documents belonging to the reports returned by an area query. */
.area-documents{padding:12px;margin-bottom:18px;border:1px solid #dcd5f0;border-radius:12px;display:flex;flex-wrap:wrap;gap:10px}
.area-documents>strong{width:100%}.area-documents a{display:grid;gap:5px;max-width:180px;font-size:12px}.area-documents img{width:100%;height:110px;object-fit:cover;border-radius:8px}
#area-controls{flex-wrap:wrap}#area-status{padding:0 14px}

/* A visible entry to the full map and its filters. */
.home-map-section .map-full-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 17px;border:1.5px solid #a38bd7;border-radius:12px;background:#f3edff;color:#6448a1;font-weight:700;box-shadow:0 3px 10px #705bca12;text-decoration:none;transition:background .2s,box-shadow .2s}
.home-map-section .map-full-link:hover{background:#e8ddfa;box-shadow:0 5px 15px #705bca25}.home-map-section .map-full-link:focus-visible{outline:3px solid #705bca;outline-offset:4px}
/* Decorative civic landscape behind the original logo. */
.hero-art{isolation:isolate;min-height:330px}.hero-art .logo-frame{z-index:2;animation:logo-float-v2 5s ease-in-out infinite;box-shadow:0 18px 45px #9374bd35,0 0 35px #c2a7ed35}.hero-art .logo-frame:after{content:'';position:absolute;inset:-8px;border-radius:inherit;border:1px solid #c3a4e873;animation:logo-aura 3.6s ease-in-out infinite;pointer-events:none}
.prosperity-scene{position:absolute;width:145%;max-width:570px;bottom:-22px;left:50%;translate:-50% 0;z-index:0;pointer-events:none;opacity:.87}.prosperity-scene svg{width:100%;height:auto;display:block}.hero-halo{position:absolute;inset:6%;border-radius:50%;background:radial-gradient(ellipse,#dbbcf655,transparent 68%);z-index:0;animation:halo-breathe 4s ease-in-out infinite;pointer-events:none}
.hero-art .orbit{z-index:1;pointer-events:none;animation:slow-orbit 18s linear infinite}.hero-art .orbit.two{animation:slow-orbit 27s linear infinite reverse}.hero-art .orbit.three{width:110%;height:75%;border:1px dashed #9fcdb28c;rotate:-22deg;animation:slow-orbit 35s linear infinite}.hero-art .orbit:after{box-shadow:0 0 16px #a27adb66,0 0 0 6px #b69ad619}.hero-art .orbit:before{content:'';position:absolute;left:15%;bottom:12%;width:7px;height:7px;border-radius:50%;background:#d5ac55;box-shadow:0 0 15px #e8c46c88}
.hero-art>.art-dot{z-index:3;pointer-events:none;width:7px;height:7px;left:calc(9% + var(--dot-index)*8%);top:calc(10% + var(--dot-index)*7%);background:#9b78d0;box-shadow:0 0 12px #ae8ce580;animation:particle-drift 4.5s ease-in-out infinite alternate;animation-delay:calc(var(--dot-index)*-.65s)}
.hero-art>.art-dot:nth-of-type(even){background:#5ab59b;width:5px;height:5px;animation-duration:6s}.hero-art>.art-dot.d3,.hero-art>.art-dot.d7{background:#e7b753;width:9px;height:9px}.hero-satellite{animation-duration:5s;z-index:4}.city-windows{animation:city-glow 4s ease-in-out infinite alternate}.city-sun{animation:sun-rise 8s ease-in-out infinite alternate;transform-origin:393px 73px}.city-trees{animation:tree-sway 5s ease-in-out infinite alternate;transform-origin:center bottom}.city-route{animation:route-flow 5s linear infinite}
@keyframes logo-float-v2{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-15px) rotate(2deg)}}
@keyframes particle-drift{0%{transform:translate(-15px,18px) scale(.7);opacity:.45}50%{opacity:1}100%{transform:translate(28px,-30px) scale(1.3);opacity:.75}}
@keyframes logo-aura{0%,100%{scale:1;opacity:.5}50%{scale:1.06;opacity:.95}}@keyframes halo-breathe{0%,100%{scale:.95;opacity:.5}50%{scale:1.15;opacity:.9}}
@keyframes city-glow{from{opacity:.5}to{opacity:1}}@keyframes sun-rise{from{transform:translateY(6px)}to{transform:translateY(-8px)}}@keyframes tree-sway{from{transform:rotate(-1deg)}to{transform:rotate(1deg)}}@keyframes route-flow{to{stroke-dashoffset:-68}}
@media(max-width:650px){.hero-art{min-height:250px}.prosperity-scene{width:125%;bottom:-30px}.hero-art .orbit.three{width:95%}.home-map-section .section-title{flex-wrap:wrap;gap:12px}.home-map-section .map-full-link{font-size:11px}}
@media(prefers-reduced-motion:reduce){.hero-art .logo-frame,.hero-art .logo-frame:after,.hero-art .orbit,.hero-art>.art-dot,.hero-halo,.hero-satellite,.city-windows,.city-sun,.city-trees,.city-route{animation:none!important}}

.home-map-section .map-full-link{color:#bc2537;background:#fff0f1;border:2px solid #d84658;font-weight:800;box-shadow:0 3px 12px #bc253715}.home-map-section .map-full-link:hover{background:#ffe0e4;color:#a8192c;box-shadow:0 5px 15px #bc253725}.home-map-section .map-full-link:focus-visible{outline-color:#bc2537}

.participation-state{background:#f2edfb;border:1px solid #d8c9ee;border-radius:12px;padding:12px 16px;margin:12px 0;color:#645080}.participation-state p{margin:6px 0}.organization-hub{margin:20px 0}.organization-hub .report-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}

.notification-item,.review-item{border:1px solid #e6dff3;border-radius:13px;padding:16px;margin:12px 0;background:#fff}.notification-item.unseen{border-right:4px solid #8a67cb;background:#f9f5ff}.notification-item.seen{color:#726982}.notification-item h3,.review-item h3{font-size:15px;margin:0 0 10px}.review-item .secondary{margin:6px}.knowledge-history details{padding:12px;border:1px solid #e6dff3;border-radius:10px;margin:10px 0}.knowledge-history summary{cursor:pointer;color:#70538f}.knowledge-history .description{max-height:300px;overflow:auto}

.project-progress{padding:16px;border:1px solid #d3e5dc;background:#f2faf5;border-radius:12px;margin:16px 0}.project-progress progress{display:block;width:100%;height:12px;margin:10px 0;accent-color:#508c71}.project-progress small{color:#62766c}.project-event{padding:12px;border:1px solid #e7e0f1;margin:10px 0;border-radius:10px}.project-event summary{cursor:pointer}#workspace-sections h2{margin-top:28px;font-size:19px}

.workspace-item-meta{font-size:11px;color:#77648e;padding:8px}.workspace-item-meta+.report-card{width:100%}#workspace-sections .report-card{width:100%;height:auto;min-height:180px}

#analytics-results{display:grid;gap:20px;margin-top:20px}#analytics-results .stat-grid{margin:0}.analytics-chart{overflow-x:auto;direction:ltr}.analytics-chart svg{display:block;width:100%;min-width:600px;height:220px}.chart-axis{stroke:#cfc5df;stroke-width:1}.chart-registered{fill:#9873cb}.chart-confirmed{fill:#4eac83}.analytics-chart text{font:11px Tahoma,Arial,sans-serif;fill:#746787}.chart-legend{font-size:12px;color:#746787}.analytics-table-scroll{overflow:auto;max-height:360px}.analytics-table{width:100%;border-collapse:collapse}.analytics-table td,.analytics-table th{text-align:right;padding:9px;border-bottom:1px solid #e8e1f2}.analytics-table th{background:#f4effa;position:sticky;top:0}#analytics-filters{align-items:end;flex-wrap:wrap}#analytics-filters label{display:grid;gap:6px;font-size:12px}#analytics-status{min-height:24px}

.tracking-item{border:1px solid #e4dcef;border-radius:16px;overflow:hidden;background:#fff}.tracking-item.is-overdue{border-color:#d4828a}.tracking-item .report-card{width:100%;height:auto;box-shadow:none;border:0;border-radius:0}.tracking-meta{padding:0 16px 14px;font-size:12px;color:#746284}.tracking-meta .feedback-prompt{color:#95672e;background:#fff6e4;border-radius:8px;padding:9px}#tracking-list{align-items:start}

.poll-results{display:grid;gap:12px;margin:16px 0}.poll-option{border:1px solid #e7dff1;border-radius:12px;padding:13px}.poll-option>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center;justify-content:space-between}.poll-option meter{width:100%;height:20px;display:block;margin-top:8px}.poll-option meter::-webkit-meter-bar{background:#f0edf5;border:0;border-radius:8px}.poll-option meter::-moz-meter-bar{background:var(--poll-color)}.poll-option meter::-webkit-meter-optimum-value{background:var(--poll-color);border-radius:8px}.poll-option meter{accent-color:var(--poll-color)}.poll-option{--poll-color:#8661bf}.poll-option.color-1{--poll-color:#28947b}.poll-option.color-2{--poll-color:#d9913f}.poll-option.color-3{--poll-color:#498fc1}.poll-option.color-4{--poll-color:#cf657c}.poll-option.color-5{--poll-color:#799940}.poll-option.color-6{--poll-color:#9a73cc}.poll-option.color-7{--poll-color:#408f99}.poll-option.color-8{--poll-color:#b6784b}.poll-option.color-9{--poll-color:#6576bd}.my-vote-badge{background:#eee5fc;color:#7046a4;padding:3px 8px;border-radius:8px;font-size:10px}.poll-choice{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid #e6ddf0;border-radius:10px;margin:8px 0;cursor:pointer}.poll-choice:has(input:checked){background:#eee5fa;border-color:#a38ac9}.poll-choice input{width:18px;height:18px;accent-color:#8661bf}.poll-live fieldset{border:0;padding:0;margin:18px 0}.poll-live legend{font-weight:bold}.poll-total{font-weight:bold}.my-ballot{background:#f2ebfb;padding:12px;border-radius:10px}

.followup-update{border:1px solid #ded4ef;border-radius:12px;background:#fcfaff;padding:16px;margin:14px 0}.followup-update small{display:block;margin:10px 0;color:#8a7a9a}.followup-update h4{margin-top:0}.home-followups{margin-top:24px}.honors-list{max-height:420px;overflow:auto}.honor-row{display:flex;align-items:center;gap:14px;border-bottom:1px solid #eee6f6;padding:14px 4px;flex-wrap:wrap}.honor-row>span:last-child{margin-inline-start:auto;color:#746683;font-size:12px}.honor-medal{font-size:26px;min-width:36px;text-align:center}.honor-medal.gold{filter:drop-shadow(0 2px 5px #e4ba4f66)}

.home-followups{border:1px solid #d8c7ed;background:linear-gradient(130deg,#fff,#faf5ff);margin:22px 0}.home-followups #honors-title{color:#68498c;font-size:22px}.honors-badge{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid #ecd7a1;border-radius:10px;background:#fff6df;color:#8b691e;font-size:12px}.honors-table-scroll{overflow:auto;max-height:420px;margin:16px 0;border:1px solid #e5dced;border-radius:12px}.honors-table{width:100%;border-collapse:collapse;text-align:right;background:#fff;min-width:390px}.honors-table caption{padding:10px;color:#7e6c92;font-size:12px;text-align:right}.honors-table th{background:#eee5f8;color:#634785;padding:14px;position:sticky;top:0;z-index:1;font-size:12px}.honors-table td{padding:14px;border-top:1px solid #eee6f4}.honors-table td:nth-child(2){white-space:nowrap}.honors-table .honor-medal{display:inline-block;vertical-align:middle;margin-inline-end:9px}.honors-table tbody tr:nth-child(even){background:#fcf9ff}.honors-table .honors-empty{white-space:normal;line-height:2.2;color:#8c7b9c;text-align:center;padding:24px}.honors-table td:first-child,.honors-table td:last-child{font-variant-numeric:tabular-nums}.home-followups>.section-title{flex-wrap:wrap;gap:10px}

/* In RTL the second grid column sits to the left of the logo banner. */
.home-intro-shell{container-type:inline-size;container-name:home-intro}.home-intro-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:stretch;margin-top:14px}.home-intro-layout>.hero{margin:0;min-width:0}.home-intro-layout>.home-followups{margin:0;min-width:0}.home-intro-layout .honors-table{min-width:0}.home-intro-layout .honors-table th,.home-intro-layout .honors-table td{padding:10px 7px}.home-intro-layout .honors-table td:nth-child(2){white-space:normal}.home-intro-layout .honors-table-scroll{max-height:310px}.home-intro-layout .honor-medal{font-size:22px;min-width:25px;margin-inline-end:4px}.home-intro-layout .honors-badge{font-size:10px;padding:5px 7px}.home-intro-layout .home-followups>p{font-size:11px;line-height:1.9}.home-intro-layout #honors-title{font-size:20px}.home-intro-layout #honors-status{font-size:10px}.home-intro-layout #honors-actions button{font-size:11px;padding:8px 10px}
@container home-intro (min-width:860px){.home-intro-layout{grid-template-columns:minmax(0,1fr) 270px;gap:18px}.home-intro-layout>.hero{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);padding:28px 22px;display:grid}.home-intro-layout .hero-art{min-height:260px}.home-intro-layout .hero-art .logo-frame{width:clamp(180px,18cqi,240px);height:clamp(180px,18cqi,240px)}.home-intro-layout .hero-art .orbit.one{width:225px;height:225px}.home-intro-layout .hero-art .orbit.two{width:260px;height:260px}.home-intro-layout .hero h1{font-size:clamp(25px,2.6cqi,36px)}.home-intro-layout>.home-followups{padding:18px 13px}.home-intro-layout .honors-table th{font-size:10px}.home-intro-layout .honors-table td{font-size:11px}.home-intro-layout .honors-empty{padding:18px 9px}.home-intro-layout .hero-satellite{font-size:9px;padding:7px}}

.access-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px;margin-top:22px}.access-summary article{border:1px solid #e4d9f0;border-radius:13px;padding:17px;background:#fcfaff}.access-summary h2{font-size:16px;margin-top:0}.access-event{border:1px solid #e6ddf1;border-radius:10px;padding:12px;margin:10px 0}.access-event summary{cursor:pointer;color:#73548d}#users-list small{overflow-wrap:anywhere;font-size:10px}

.conversation-list{display:grid;gap:12px;margin-top:20px}.conversation-row{display:grid;gap:8px;text-align:right;padding:16px;border:1px solid #e4d9ef;border-radius:12px;background:#fff;color:#685477;cursor:pointer}.conversation-row.has-unread{border-right:4px solid #9a6dcb;background:#f8f1ff}.conversation-row small{color:#93849f}.message-new-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.message-new-form label{display:grid;gap:6px;flex:1}.chat-panel #chat-messages{max-height:45vh;min-height:180px;overflow:auto;overscroll-behavior:contain;padding:10px}.chat-panel .message{max-width:88%;margin:12px 0;padding:12px;border-radius:12px}.chat-panel .message.mine{margin-inline-start:auto;background:#eee3fb;border-color:#d4bce8}.chat-panel #chat-compose{display:grid;gap:10px;margin-top:14px}.chat-panel #chat-compose label{display:grid;gap:6px}.chat-panel textarea{width:100%;resize:vertical}.chat-panel #chat-actions{margin-top:14px}.chat-panel .description{overflow-wrap:anywhere}

.home-chat-widget{position:fixed;left:24px;bottom:22px;z-index:70;direction:rtl}.home-chat-toggle{display:flex;gap:9px;align-items:center;border:1px solid #8e68bd;background:linear-gradient(115deg,#8c63bd,#68469a);color:#fff;padding:13px 19px;border-radius:18px;box-shadow:0 8px 28px #5e3d8e40;font:700 13px Tahoma,Arial,sans-serif;cursor:pointer}.home-chat-toggle>span:first-child{font-size:22px}.home-chat-toggle #home-chat-unread:not(:empty){background:#fff;color:#7752a5;padding:2px 7px;border-radius:20px}.home-chat-popover{position:absolute;left:0;bottom:65px;width:340px;max-width:calc(100vw - 28px);max-height:65vh;overflow:auto;border:1px solid #d7c6ea;border-radius:18px;background:#fff;box-shadow:0 15px 50px #4d306338}.home-chat-popover[hidden]{display:none}.home-chat-popover>header{position:sticky;top:0;background:#f1e8fb;display:flex;justify-content:space-between;align-items:center;padding:13px 16px;color:#644088;z-index:1}.home-chat-popover>header button{font-size:24px;border:0;background:transparent;color:#73558b;cursor:pointer}#home-chat-body{padding:15px}#home-chat-status{font-size:11px;padding:0 15px 15px;color:#897197;line-height:1.9}.home-chat-contacts{display:grid;gap:8px;margin:12px 0}.home-chat-contacts button{text-align:right;display:grid;gap:5px;border:1px solid #e4d7f0;border-radius:11px;background:#fcf8ff;padding:12px;color:#6a4a85;cursor:pointer}.home-chat-contacts span,.home-chat-contacts small{font-size:11px}@media(max-width:650px){.home-chat-widget{left:12px;bottom:14px}.home-chat-toggle{padding:11px 15px;font-size:12px}.home-chat-popover{bottom:60px}}

.followup-comment{border-top:1px solid #e5dbef;padding:10px 0}.followup-comment>small{color:#ad6b72}#followup-moderation-queue details{padding:10px;background:#f8f4fc;border-radius:9px}#followup-moderation-queue summary{cursor:pointer}

.support-message-list{max-height:260px;overflow:auto;overscroll-behavior:contain;padding:5px}.support-message{padding:10px 12px;background:#f5f0fb;border:1px solid #e4d9ef;border-radius:12px;margin:10px 0;overflow-wrap:anywhere}.support-message.staff{background:#e9f6f0;border-color:#cee6da}.support-message strong,.support-message small{font-size:10px;color:#877296}.support-message .description{margin:6px 0;white-space:pre-wrap}.home-chat-popover #support-guest-form{display:grid;gap:8px;margin-top:12px}.home-chat-popover #support-guest-form label{display:grid;gap:5px;font-size:12px}.home-chat-popover textarea{width:100%;resize:vertical}.home-chat-popover #support-availability{font-size:11px;line-height:1.9}.home-chat-popover #support-reference{font-size:10px;color:#8b739a}#support-agent-form{display:grid;gap:10px;margin-top:15px}#support-agent-form label{display:grid;gap:6px}#support-agent-chat .support-message-list{max-height:42vh}#support-agent-actions{margin-top:14px}

.support-contact-help{font-size:10px;color:#8b789a;line-height:1.8}.support-contact-card{padding:12px;background:#f4edf9;border:1px solid #dfcfee;border-radius:10px;font-size:12px;overflow-wrap:anywhere}#support-save-contact{display:block;margin-top:12px;font-size:11px}

.support-status-light{display:inline-block;flex:0 0 10px;width:10px;height:10px;border-radius:50%;background:#a49aa9}.support-status-light.is-online{background:#29b16e;box-shadow:0 0 0 4px #29b16e22}.support-status-light.is-viewing{animation:support-light-pulse 1.6s ease-in-out infinite}.home-chat-toggle>span:last-child{display:grid;gap:4px;text-align:right}.home-chat-toggle small{font-size:9px;font-weight:400;opacity:.9}.support-live-status{display:flex;gap:10px;align-items:center;padding:9px;border:1px solid #e6deec;background:#faf7fc;border-radius:10px;font-size:11px}.support-live-status p{margin:0;line-height:1.9}#support-onboarding-form{display:grid;gap:10px;margin-top:12px}#support-onboarding-form[hidden],#support-conversation-area[hidden]{display:none}#support-onboarding-form h3{font-size:15px;margin:0}#support-onboarding-form p{font-size:11px;margin:0;line-height:1.9}#support-onboarding-form label{display:grid;gap:6px;font-size:12px}.support-conversation-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:8px 0}.support-message.guest{margin-inline-start:30px;background:#eee5fa;border-color:#d9c5ed}.support-message.staff{margin-inline-end:30px}.support-system-message{font-size:11px;text-align:center;line-height:1.9;color:#9983a7;padding:12px}#support-send-error,#support-start-error{font-size:11px;line-height:1.9;color:#b54254}#support-send-state{font-size:10px;color:#598b69}#support-guest-form{grid-template-columns:minmax(0,1fr) auto;align-items:end}#support-guest-form textarea{min-height:66px}#support-guest-form #support-send-error{grid-column:1/-1;margin:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes support-light-pulse{50%{box-shadow:0 0 0 7px #29b16e18}}@media(prefers-reduced-motion:reduce){.support-status-light.is-viewing{animation:none}}

/* Compact landing banner and a portrait-based sample citizens column. */
.citizen-profile{display:flex;align-items:center;gap:6px;min-width:0}.honor-avatar{display:inline-block;width:34px;height:34px;flex:0 0 34px;border-radius:50%;border:2px solid #fff;box-shadow:0 1px 5px #72548d22}.honor-avatar.avatar-0,.honor-avatar.avatar-1,.honor-avatar.avatar-2,.honor-avatar.avatar-3{background-image:url('/citizen-avatars.webp');background-size:200% 200%}.honor-avatar.avatar-0{background-position:0 0}.honor-avatar.avatar-1{background-position:100% 0}.honor-avatar.avatar-2{background-position:0 100%}.honor-avatar.avatar-3{background-position:100% 100%}.honor-avatar-fallback{display:grid;place-items:center;background:#eee5f8;color:#806298;font-size:15px}.citizen-name{display:grid;gap:4px;min-width:0}.citizen-name strong{font-size:11px;line-height:1.5}.demo-citizen-badge{font-size:8px;color:#9d8262;white-space:nowrap}.honors-demo-divider{color:#8c759c;background:#f8f3fc;font-size:10px}.honors-table .citizen-profile .honor-medal{font-size:18px;min-width:18px;margin:0}.home-intro-layout>.hero{min-height:320px}.home-intro-layout .hero-art{min-height:200px}.home-intro-layout>.home-followups{padding:13px 11px}.home-intro-layout .home-followups>.section-title{margin-bottom:8px}.home-intro-layout #honors-title{font-size:18px;margin:0}.home-intro-layout .honors-badge{display:none}.home-intro-layout .home-followups>p{font-size:10px;line-height:1.7;margin:7px 0}.home-intro-layout .honors-table-scroll{max-height:190px;margin:9px 0}.home-intro-layout .honors-table caption{font-size:9px;padding:5px}.home-intro-layout .honors-table th{font-size:9px;padding:7px 5px}.home-intro-layout .honors-table td{padding:6px 4px;font-size:10px}.home-intro-layout #honors-status{font-size:9px;line-height:1.6}.home-intro-layout #honors-actions button{font-size:9px;padding:6px 8px}.home-intro-layout .hero h1{font-size:24px;line-height:1.5;margin:10px 0}.home-intro-layout .hero-copy>p{font-size:12px;line-height:1.8;margin:8px 0 12px}.home-intro-layout .hero-foot{font-size:10px;margin-top:10px}.home-intro-layout .hero-copy>.eyebrow{font-size:9px;padding:3px 8px}.home-intro-layout .hero-actions .primary,.home-intro-layout .hero-actions .secondary{font-size:11px;padding:9px 11px}
@container home-intro (min-width:860px){.home-intro-layout>.hero{min-height:320px;padding:20px 18px}.home-intro-layout .hero-art .logo-frame{width:clamp(160px,16cqi,205px);height:clamp(160px,16cqi,205px)}.home-intro-layout .hero-art .orbit.one{width:205px;height:205px}.home-intro-layout .hero-art .orbit.two{width:235px;height:235px}.home-intro-layout .hero-art{min-height:200px}}

.honor-photo-button{border:0;background:transparent;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;cursor:zoom-in;flex:0 0 34px}.honor-photo-button:focus-visible{outline:3px solid #a47ad0;outline-offset:3px}.honors-photo-preview{position:fixed;inset:auto;margin:0;padding:11px;width:232px;max-width:calc(100vw - 16px);border:1px solid #d6c1e9;border-radius:18px;background:#fff;box-shadow:0 14px 45px #3e24503d;z-index:1000;pointer-events:none;text-align:center;direction:rtl}.honors-photo-preview[hidden]{display:none}.honors-photo-preview .honor-avatar{display:block;width:208px;height:208px;max-width:100%;margin:0 auto 10px;border-radius:13px;border:0;box-shadow:none}.honors-photo-preview strong{display:block;color:#684b80;font-size:14px}.honors-photo-preview small{display:block;color:#9982aa;font-size:10px;margin-top:5px}@media(prefers-reduced-motion:no-preference){.honors-photo-preview{animation:honors-photo-in .14s ease-out}@keyframes honors-photo-in{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}}

.citizen-profile-link{background:transparent;border:0;text-align:right;color:#70518e;font:700 11px/1.6 Tahoma,Arial,sans-serif;padding:0;cursor:pointer;text-decoration:underline;text-decoration-color:#d0bce2;text-underline-offset:3px}.citizen-profile-link:hover{color:#a067b1}.citizen-profile-link:focus-visible{outline:2px solid #a47ac5;outline-offset:3px;border-radius:3px}.citizen-profile-header{display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-bottom:20px}.citizen-profile-header .honor-avatar{width:100px;height:100px;flex-basis:100px;border-radius:20px;font-size:40px}.citizen-profile-header h1,.citizen-profile-header h2{margin:8px 0}.citizen-portfolio{margin-top:20px}.portfolio-result{padding:12px;font-size:12px;background:#faf7fc;border-radius:0 0 12px 12px}.portfolio-result .description{max-height:160px;overflow:auto}.citizen-portfolio .report-card{width:100%;height:auto}.profile-share-label{display:grid;gap:7px;margin:20px 0 12px;font-size:12px}.profile-share-label input{width:100%}

/* Restore the original home layout with citizen honors beside the introduction. */
html[data-theme="classic"] .home-board{display:grid;grid-template-columns:minmax(0,1fr) 270px;grid-template-areas:"polls polls" "intro honors" "paths paths" "stats stats" "note note" "map map" "recent recent";gap:20px;align-items:stretch}
html[data-theme="classic"] .home-board>.home-poll-banner{grid-area:polls}
html[data-theme="classic"] .home-board>.home-intro-shell{grid-area:intro;min-width:0;container-type:normal}
html[data-theme="classic"] .home-board>.home-followups{grid-area:honors;margin:14px 0 0;min-width:0}
html[data-theme="classic"] .home-board>.home-pathways{grid-area:paths}
html[data-theme="classic"] .home-board>.stat-grid{grid-area:stats}
html[data-theme="classic"] .home-board>.home-data-note{grid-area:note}
html[data-theme="classic"] .home-board>.home-map-section{grid-area:map;min-width:0}
html[data-theme="classic"] .home-board>.home-recent{grid-area:recent;min-width:0}
html[data-theme="classic"] .home-board .home-intro-layout{grid-template-columns:minmax(0,1fr)}
html[data-theme="classic"] .home-board .honors-table{min-width:0}
html[data-theme="classic"] .home-board .honors-table td,html[data-theme="classic"] .home-board .honors-table th{padding:10px 7px}
html[data-theme="classic"] .home-board .honors-table td:nth-child(2){white-space:normal}
@media(max-width:1000px){html[data-theme="classic"] .home-board{grid-template-columns:minmax(0,1fr);grid-template-areas:"polls" "intro" "honors" "paths" "stats" "note" "map" "recent"}html[data-theme="classic"] .home-board>.home-followups{margin:0}}

/* Both introductory panels stretch to the same grid row height. */
@media(min-width:1001px){
html[data-theme="classic"] .home-board>.home-intro-shell{display:flex;padding-top:14px}
html[data-theme="classic"] .home-board .home-intro-layout{flex:1;margin-top:0;align-items:stretch}
html[data-theme="classic"] .home-board .home-intro-layout>.hero{height:100%;box-sizing:border-box;min-height:320px}
html[data-theme="classic"] .home-board>.home-followups{align-self:stretch;box-sizing:border-box;padding:13px 11px}
html[data-theme="classic"] .home-board>.home-followups>.section-title{margin-bottom:8px}
html[data-theme="classic"] .home-board>.home-followups #honors-title{font-size:18px;margin:0}
html[data-theme="classic"] .home-board>.home-followups .honors-badge{display:none}
html[data-theme="classic"] .home-board>.home-followups>p{font-size:10px;line-height:1.7;margin:7px 0}
html[data-theme="classic"] .home-board>.home-followups .honors-table-scroll{max-height:190px;margin:9px 0}
html[data-theme="classic"] .home-board>.home-followups .honors-table caption{font-size:9px;padding:5px}
html[data-theme="classic"] .home-board>.home-followups .honors-table th{font-size:9px;padding:7px 5px}
html[data-theme="classic"] .home-board>.home-followups .honors-table td{padding:6px 4px;font-size:10px}
html[data-theme="classic"] .home-board>.home-followups #honors-status{font-size:9px;line-height:1.6}
html[data-theme="classic"] .home-board>.home-followups #honors-actions button{font-size:9px;padding:6px 8px}
}

/* Full-width shell with a fixed, readable navigation panel in both themes. */
html body{padding:0;margin:0;--nav-width:260px}
html body:has(.sidebar:is(:hover,:focus-within,.mobile-open)){--nav-width:260px}
html body .sidebar,html body .sidebar:hover{position:fixed;inset:0 0 0 auto;width:260px;height:100dvh;padding:16px 12px;border-radius:0;border:0;display:flex;flex-direction:column;transform:none;transition:none;overflow:hidden}
html body .sidebar .brand{justify-content:flex-start;flex-shrink:0}
html body .sidebar .brand>div,html body .sidebar .sidebar-caption{display:block}
html body .sidebar .sidebar-bottom{display:none}
html body .sidebar #nav{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;padding:4px 0 16px;overscroll-behavior:contain}
html body .workspace{margin:0 260px 0 0;min-width:0;min-height:100dvh;border:0;border-radius:0;box-shadow:none;transform:none;transition:none}
html body main{max-width:none;width:100%;margin:0;padding:0}
html body .topbar{border-radius:0;margin:0}
html body .sidebar .nav-item{justify-content:flex-start;gap:10px;padding:9px 12px!important;font-size:12px!important;min-height:44px;margin:2px 0;white-space:normal}
html body .sidebar .nav-item>span:not(.nav-dot){display:inline}
html body .sidebar .nav-item svg{flex-shrink:0}
.nav-group{border-bottom:1px solid #ffffff22;padding:5px 0;color:#fff}
.nav-group>summary{display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;cursor:pointer;padding:12px 10px;font-size:13px;font-weight:700;border-radius:8px;min-height:46px}
.nav-group>summary::-webkit-details-marker{display:none}
.nav-group>summary::after{content:'＋';font-size:17px;font-weight:400}
.nav-group[open]>summary{background:#ffffff14}
.nav-group[open]>summary::after{content:'−'}
.nav-group>summary:hover{background:#ffffff20}
.nav-group>summary:focus-visible{outline:2px solid #fff;outline-offset:-2px}
.nav-group-items{padding:4px 5px 8px}
@media(min-width:761px){html body .sidebar .mobile-close,html body .topbar .menu-toggle{display:none}}
@media(max-width:760px){
 html body .sidebar,html body .sidebar:hover{width:min(290px,86vw);transform:translateX(100%);z-index:100;transition:transform .2s ease}
 html body .sidebar.mobile-open{transform:translateX(0)}
 html body .workspace,html body:has(.sidebar.mobile-open) .workspace{margin:0;transform:none}
 html body .sidebar .mobile-close{display:block;margin-inline-start:auto;color:#fff}
 html body .topbar .menu-toggle{display:inline-flex}
}
@media(prefers-reduced-motion:reduce){html body .sidebar{transition:none}}

/* Comfortable shell spacing and a consistent two-row page header. */
html body{--shell-gap:12px;font-size:16px}
html body .sidebar,html body .sidebar:hover{inset:12px 12px 12px auto;height:calc(100dvh - 24px);border-radius:14px}
html body .workspace{margin:12px 284px 12px 12px;min-height:calc(100dvh - 24px);border-radius:14px;overflow:clip}
html body .topbar{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"breadcrumb actions" "search search";height:auto;min-height:0;gap:14px 20px;padding:18px 22px;align-items:center;border-radius:14px 14px 0 0}
html body .topbar .breadcrumb{grid-area:breadcrumb;font-size:13px;min-width:0;flex-wrap:wrap}
html body .topbar .top-actions{grid-area:actions;display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin:0}
html body .topbar .site-search{grid-area:search;order:initial;justify-self:start;width:100%;max-width:600px;min-width:0;min-height:46px;margin:0;display:flex;gap:8px;padding:4px 8px;border-radius:12px}
html body .topbar .site-search input{flex:1;width:100%;min-width:0;font-size:14px;padding:6px 8px;line-height:1.8}
html body .topbar .site-search button{width:34px;height:34px;border-radius:9px}
html body .topbar :is(.account-button,.compact,.logout-button,.theme-picker>summary){font-size:13px;white-space:nowrap}
html body .sidebar .nav-item{font-size:14px!important;line-height:1.9}
html body .sidebar .nav-group>summary{font-size:15px}
html body .sidebar .sidebar-caption{font-size:12px}
html body .sidebar .brand small{font-size:12px}
html body main :is(.report-card p,.hero-copy>p,.description,.form-help){font-size:14px}
html body main :is(.primary,.secondary,.text-button,input,select,textarea,label){font-size:14px}
html body main :is(.report-card h3,.form-panel h3){font-size:17px}
@media(max-width:1100px){
 html body .topbar{gap:12px;padding:16px}
 html body .topbar .top-actions{gap:8px}
}
@media(max-width:760px){
 html body .sidebar,html body .sidebar:hover{width:min(290px,86vw);transform:translateX(calc(100% + 12px))}
 html body .sidebar.mobile-open{transform:translateX(0)}
 html body .workspace,html body:has(.sidebar.mobile-open) .workspace{margin:8px;min-height:calc(100dvh - 16px);transform:none}
 html body .topbar{grid-template-columns:minmax(0,1fr);grid-template-areas:"breadcrumb" "actions" "search";padding:14px 12px;gap:12px}
 html body .topbar .top-actions{justify-content:flex-start;gap:8px}
 html body .topbar .site-search{max-width:none}
}

/* Quiet scroll cues for the right navigation. */
html body .sidebar #nav{scrollbar-gutter:stable;scrollbar-color:transparent transparent;--nav-fade-top:0px;--nav-fade-bottom:0px;mask-image:linear-gradient(to bottom,transparent,#000 var(--nav-fade-top),#000 calc(100% - var(--nav-fade-bottom)),transparent)}
html body .sidebar #nav.can-scroll-up{--nav-fade-top:22px}
html body .sidebar #nav.can-scroll-down{--nav-fade-bottom:32px}
html body .sidebar #nav:is(:hover,:focus-within,.is-scrolling){scrollbar-color:#ffffff65 transparent}
html body .sidebar #nav::-webkit-scrollbar{width:4px}
html body .sidebar #nav::-webkit-scrollbar-track{background:transparent}
html body .sidebar #nav::-webkit-scrollbar-thumb{background:transparent;border-radius:8px}
html body .sidebar #nav:is(:hover,:focus-within,.is-scrolling)::-webkit-scrollbar-thumb{background:#ffffff65}
html body .sidebar .nav-scroll-more{flex:0 0 30px;align-self:center;display:flex;align-items:center;justify-content:center;width:48px;padding:0;border:1px solid #ffffff35;border-radius:20px;background:#ffffff12;color:white;cursor:pointer;box-shadow:0 3px 12px #00000010;transition:background .18s,transform .18s}
html body .sidebar .nav-scroll-more[hidden]{display:none}
html body .sidebar .nav-scroll-more:hover{background:#ffffff28;transform:translateY(2px)}
html body .sidebar .nav-scroll-more:focus-visible{outline:2px solid white;outline-offset:3px}
html body .sidebar .nav-scroll-more svg{width:18px;height:18px;pointer-events:none}
@media(prefers-reduced-motion:reduce){html body .sidebar .nav-scroll-more{transition:none}}
@media(forced-colors:active){html body .sidebar #nav{mask-image:none;scrollbar-color:auto}}
html body .sidebar:is(:hover,:focus-within,.mobile-open) .sidebar-bottom{display:none}
html body .sidebar .sidebar-caption{flex-shrink:0}

/* Balanced header: one aligned row on desktop, full-width search below on smaller screens. */
html body .topbar{grid-template-columns:auto minmax(200px,1fr) auto;grid-template-areas:"breadcrumb search actions";gap:16px;padding:16px 22px}
html body .topbar .site-search{justify-self:stretch;max-width:none;width:100%;min-height:46px;box-sizing:border-box}
html body .topbar .top-actions{flex-wrap:nowrap;gap:8px}
html body .topbar .breadcrumb{flex-wrap:nowrap;white-space:nowrap}
@media(max-width:1279px){
 html body .topbar{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"breadcrumb actions" "search search";padding:16px;gap:12px}
 html body .topbar .top-actions{flex-wrap:wrap}
}
@media(max-width:760px){
 html body .topbar{grid-template-columns:minmax(0,1fr);grid-template-areas:"breadcrumb" "actions" "search";padding:14px 12px}
 html body .topbar .top-actions{justify-content:flex-start}
}

.branding-preview{width:100%;max-width:320px;aspect-ratio:1;object-fit:contain;border-radius:12px}
