@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap";.complaints-page .page-heading{align-items:flex-start}.api-structured-filter-grid--complaints{grid-template-columns:repeat(2,minmax(220px,360px));justify-content:start}.complaints-filter__feedback{color:var(--danger,#b4473d);font-size:var(--font-size-xs);align-items:center;gap:7px;margin:6px 2px 0;display:flex}.complaints-filter__feedback button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}.complaints-table{min-width:1120px}.complaints-table__issue{text-align:left;gap:3px;max-width:260px;display:grid}.complaints-table__issue strong{color:#2d3b33}.complaints-table__issue span,.complaints-table__context span{color:var(--muted);font-size:var(--font-size-xs);text-overflow:ellipsis;overflow:hidden}.complaints-table__context{gap:3px;display:grid}.complaints-table .table-action:disabled{cursor:not-allowed;opacity:.42}.complaints-table .table-action:disabled:hover{border-color:var(--border);color:#56625b;background:#fff}.complaint-detail{gap:16px;display:grid}.complaint-detail__hero{background:linear-gradient(135deg,#fff7ec 0%,#fffdf9 58%,#f1f8f4 100%);border:1px solid #eddec9;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:13px;padding:16px;display:grid}.complaint-detail__hero-icon{color:var(--orange-500,#ff8a00);background:#fff;border:1px solid #efd8b9;border-radius:10px;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.complaint-detail__hero small,.complaint-detail__facts dt{color:#806a50;font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.complaint-detail__hero h2{color:#26342c;margin:3px 0 5px;font-size:18px}.complaint-detail__hero p{color:#617068;margin:0;line-height:1.55}.complaint-detail__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.complaint-detail__section{border:1px solid var(--border);border-radius:12px;min-width:0;padding:15px}.complaint-detail__section--full{width:100%}.complaint-detail__section>header{color:var(--green-700);align-items:flex-start;gap:9px;margin-bottom:13px;display:flex}.complaint-detail__section>header h3{color:#2d3b33;font-size:var(--font-size-base);margin:0 0 2px}.complaint-detail__section>header p,.complaint-detail__empty{color:var(--muted);font-size:var(--font-size-sm);margin:0}.complaint-detail__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:0;display:grid}.complaint-detail__facts>div{background:#f8faf9;border-radius:9px;gap:4px;min-width:0;padding:10px;display:grid}.complaint-detail__facts dd{color:#34433a;font-size:var(--font-size-sm);overflow-wrap:anywhere;align-items:center;gap:5px;margin:0;font-weight:700;line-height:1.4;display:flex}.complaint-detail__fact--wide{grid-column:1/-1}.complaint-detail__images{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.complaint-detail__images a{border:1px solid var(--border);color:var(--green-700);font-size:var(--font-size-xs);border-radius:10px;gap:7px;padding:7px;font-weight:700;display:grid;overflow:hidden}.complaint-detail__images img{aspect-ratio:16/10;object-fit:cover;background:#f4f6f5;border-radius:6px;width:100%}.complaint-detail__images span{align-items:center;gap:4px;display:flex}.complaint-detail__assignments,.complaint-detail__related{gap:9px;display:grid}.complaint-detail__assignments article,.complaint-detail__related article{background:#f8faf9;border:1px solid #e5eae7;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.complaint-detail__assignments article{justify-content:flex-start}.complaint-detail__assignments article>div,.complaint-detail__related article>div{gap:2px;min-width:0;display:grid}.complaint-detail__assignments span,.complaint-detail__assignments small,.complaint-detail__related span{color:var(--muted);font-size:var(--font-size-xs)}.complaint-detail__assignments p{color:#536159;font-size:var(--font-size-sm);margin:5px 0 0}.complaint-detail__related>span{color:#8a5d26;font-size:var(--font-size-xs);background:#fff7ec;border:1px solid #efd8b9;border-radius:999px;justify-self:start;padding:5px 9px;font-weight:700}.complaint-detail__timeline{background:#f1f8f4;border:1px solid #dcebe3;border-radius:12px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:13px;display:grid}.complaint-detail__timeline>div{color:var(--green-700);align-items:flex-start;gap:7px;display:flex}.complaint-detail__timeline span{gap:2px;display:grid}.complaint-detail__timeline small{color:var(--muted);font-size:var(--font-size-xs)}.complaint-detail__timeline strong{color:#334239;font-size:var(--font-size-sm)}.complaint-detail__footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;margin-top:16px;padding-top:15px;display:flex}.complaint-detail__footer>div{gap:8px;display:flex}.complaint-forward-selector{border:1px solid var(--border);text-align:left;background:#f8faf9;border-radius:10px;margin-top:16px;padding:13px}.complaint-forward-selector .form-field{margin:0}.complaint-forward-selector__feedback,.complaint-forward-selector>small{color:var(--muted);font-size:var(--font-size-xs);margin:8px 1px 0;display:block}.complaint-forward-selector__feedback--error{color:var(--danger,#b4473d);align-items:center;gap:7px;display:flex}.complaint-forward-selector__feedback button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-weight:800;text-decoration:underline}@media (width<=760px){.api-structured-filter-grid--complaints,.complaint-detail__grid,.complaint-detail__facts,.complaint-detail__timeline{grid-template-columns:1fr}.complaint-detail__fact--wide{grid-column:auto}.complaint-detail__images{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.complaint-detail__footer,.complaint-detail__footer>div{flex-direction:column;align-items:stretch}.complaint-detail__footer .button{width:100%}.complaint-detail__hero{grid-template-columns:auto minmax(0,1fr)}.complaint-detail__hero>.status-badge{grid-column:2;justify-self:start}.complaint-detail__images{grid-template-columns:1fr}}:root{color:#1c2923;font-synthesis:none;--green-900:#b85f00;--green-700:#ff8a00;--green-100:#fff1de;--gold:#2563eb;--border:#e3e8e3;--muted:#748078;--sidebar:268px;--font-size-xs:11px;--font-size-sm:12px;--font-size-md:13px;--font-size-base:14px;background:#f5f7f4;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}body{font-size:var(--font-size-base);min-width:320px;min-height:100vh;margin:0;line-height:1.5}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{min-height:100vh}.app-main{margin-left:var(--sidebar);min-width:0}.sidebar{border-right:1px solid var(--border);width:var(--sidebar);z-index:20;background:#fbfcfa;flex-direction:column;height:100vh;padding:24px 18px 18px;display:flex;position:fixed;inset:0 auto 0 0}.brand{justify-content:center;align-items:center;padding:0 7px 18px;display:flex;position:relative}.brand__logo{filter:drop-shadow(0 4px 8px #40301c1a);width:92px;height:auto;display:block}.sidebar__close{position:absolute;top:0;right:0;display:none!important}.sidebar__context{border-bottom:1px solid var(--border);border-top:1px solid var(--border);padding:15px 6px}.sidebar__context>span{color:#919a94;font-size:var(--font-size-md);letter-spacing:.12em;margin:0 5px 9px;font-weight:700;display:block}.sidebar__context-value{text-align:left;align-items:center;gap:9px;width:100%;display:flex}.sidebar__context-value>span:nth-child(2){flex:1}.sidebar__context strong,.sidebar__context small{display:block}.sidebar__context strong{font-size:13px}.sidebar__context small{color:var(--muted);font-size:var(--font-size-md);margin-top:2px}.context-dot{color:#795916;font-size:var(--font-size-md);background:#f1dba8;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;font-weight:700;display:flex}.sidebar__nav{flex:1;min-height:0;padding-top:14px;overflow-y:auto}.sidebar__section{margin-top:16px}.sidebar__nav a,.sidebar__bottom>a{color:#59645e;border-radius:9px;align-items:center;gap:12px;margin:3px 0;padding:11px 12px;font-size:13px;font-weight:500;display:flex}.sidebar__nav a:hover,.sidebar__bottom>a:hover{color:var(--green-700);background:#f0f4f1}.sidebar__nav a.active,.sidebar__bottom>a.active{background:var(--green-100);color:var(--green-700);font-weight:700}.nav-count{color:#fff;font-size:var(--font-size-md);background:#e6a936;border-radius:10px;margin-left:auto;padding:2px 7px}.sidebar__bottom{flex:none;margin-top:auto}.help-card{background:#eef4f0;border:1px solid #dfe9e2;border-radius:12px;margin:14px 2px;padding:14px}.help-card>div{background:var(--green-700);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:25px;height:25px;margin-bottom:8px;font-weight:700;display:flex}.help-card strong{font-size:12px}.help-card p{color:var(--muted);font-size:var(--font-size-md);margin:4px 0 10px;line-height:1.5}.help-card button{color:var(--green-700);font-size:var(--font-size-md);background:0 0;border:0;padding:0;font-weight:700}.sidebar__user{border-top:1px solid var(--border);align-items:center;gap:9px;padding:16px 4px 1px;display:flex}.sidebar__user>span:nth-child(2){flex:1;min-width:0}.sidebar__user strong,.sidebar__user small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar__user strong{font-size:var(--font-size-base)}.sidebar__user small{color:var(--muted);font-size:var(--font-size-sm);margin-top:2px}.sidebar__logout{color:#7b4b45;font-size:var(--font-size-md);background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;width:100%;margin-top:8px;padding:9px 10px;font-weight:700;display:flex}.sidebar__logout:hover{color:#a8443a;background:#faecea}.avatar{color:var(--green-700);font-size:var(--font-size-base);background:#d9ebe4;border-radius:50%;flex:none;justify-content:center;align-items:center;width:35px;height:35px;font-weight:700;display:inline-flex;overflow:hidden}.avatar img,.profile-avatar img{object-fit:cover;width:100%;height:100%}.avatar--small{width:29px;height:29px}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:10;background:#ffffffeb;justify-content:space-between;align-items:center;height:76px;padding:0 34px;display:flex;position:sticky;top:0}.topbar__title{align-items:center;gap:10px;display:flex}.topbar__title span,.topbar__title strong{display:block}.topbar__title span{color:var(--muted);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.1em}.topbar__title strong{margin-top:1px;font-size:16px}.topbar__actions{align-items:center;gap:13px;display:flex}.icon-button{color:#5f6963;background:0 0;border:0;justify-content:center;align-items:center;padding:6px;display:inline-flex}.profile-button{text-align:left;background:0 0;border:0;align-items:center;gap:8px;display:flex}.profile-button strong,.profile-button small{display:block}.profile-button strong{font-size:var(--font-size-base)}.profile-button small{color:var(--muted);font-size:var(--font-size-sm);margin-top:1px}.topbar__menu{display:none}.page{padding:30px 34px 50px}.page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:25px;display:flex}.page-heading p{color:var(--green-700);font-size:var(--font-size-md);letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-weight:700}.page-heading h1{letter-spacing:-.03em;margin:0 0 4px;font-size:25px}.page-heading span{color:var(--muted);font-size:12px}.page-heading__actions{gap:9px;display:flex}.button{font-size:var(--font-size-base);border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:0 15px;font-weight:700;transition:all .18s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--primary{background:var(--green-700);color:#fff}.button--primary:hover{background:var(--green-900)}.button--secondary{border-color:var(--border);color:#37443d;background:#fff}.button--ghost{color:var(--green-700);background:0 0}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stats-grid>.skeleton-loader,.dashboard-section-state{grid-column:1/-1}.dashboard-section-state .api-state{min-height:150px}.stat-card{border:1px solid var(--border);background:#fff;border-radius:13px;align-items:flex-start;gap:13px;min-width:0;padding:17px;display:flex;box-shadow:0 2px 5px #243a2e05}.stat-card__icon{border-radius:9px;justify-content:center;align-items:center;width:39px;height:39px;display:flex}.stat-card__icon--blue{color:#3678ad;background:#e7f0f8}.stat-card__icon--amber{color:#a87718;background:#f9efd9}.stat-card__icon--purple{color:#76569b;background:#eee8f5}.stat-card__copy{min-width:0}.stat-card p{color:var(--muted);font-size:var(--font-size-md);margin:1px 0 3px}.stat-card strong{letter-spacing:-.02em;font-size:22px;display:block}.stat-card__change{color:#428263;font-size:var(--font-size-sm);white-space:nowrap;margin-top:7px;display:block}.stat-card__change--down{color:#a66a2c}.stat-card__change--neutral{color:var(--muted)}.dashboard-grid{grid-template-columns:minmax(0,1.8fr) minmax(280px,1fr);gap:14px;margin-top:14px;display:grid}.dashboard-grid .api-state{min-height:236px}.panel{border:1px solid var(--border);background:#fff;border-radius:13px;min-width:0;padding:19px}.panel__header{justify-content:space-between;align-items:flex-start;display:flex}.panel__header h2{margin:0 0 4px;font-size:14px}.panel__header p{color:var(--muted);font-size:var(--font-size-md);margin:0}.panel__header a,.text-button{color:var(--green-700);font-size:var(--font-size-md);background:0 0;border:0;align-items:center;gap:3px;font-weight:700;display:flex}.panel__header select{border:1px solid var(--border);color:#5d6761;font-size:var(--font-size-md);background:#fff;border-radius:7px;outline:none;padding:7px 9px}.chart-key{color:var(--muted);font-size:var(--font-size-sm);justify-content:flex-end;align-items:center;gap:6px;margin-top:8px;display:flex}.chart-key span{border-radius:5px;width:16px;height:2px;margin-left:9px}.chart-key__received{background:var(--green-700)}.chart-key__resolved{background:var(--gold)}.chart-wrap{width:100%;height:236px;margin-top:2px}.category-panel{container-type:inline-size}.category-chart{align-items:center;gap:12px;min-height:246px;display:flex}.donut-wrap{flex:0 0 55%;min-width:0;height:180px;position:relative}.donut-label{text-align:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.donut-label strong,.donut-label span{display:block}.donut-label strong{font-size:20px}.donut-label span{color:var(--muted);font-size:var(--font-size-sm)}.category-tooltip{background:#fff;border:1px solid #e3e8e4;border-radius:10px;gap:3px;min-width:145px;padding:10px 12px;display:grid;box-shadow:0 9px 28px #1f2c2524}.category-tooltip strong{color:#26342c;font-size:var(--font-size-base)}.category-tooltip span{color:#526159;font-size:var(--font-size-sm)}.category-tooltip small{color:var(--muted);font-size:var(--font-size-xs)}.category-legend{flex:1;min-width:0}.category-legend__header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:3px;padding:0 6px;display:flex}.category-legend__header strong{color:#46544c;font-size:var(--font-size-xs)}.category-legend__header span{color:var(--muted);white-space:nowrap;font-size:9px}.category-legend__list{min-width:0}.category-legend__list--scrollable{overscroll-behavior:contain;scrollbar-color:#c7d1cb transparent;scrollbar-gutter:stable;scrollbar-width:thin;max-height:210px;padding-right:5px;overflow:hidden auto}.category-legend__list--scrollable:focus-visible{outline-offset:2px;border-radius:7px;outline:2px solid #176b5259}.category-legend__item{font-size:var(--font-size-md);border-bottom:1px solid #f0f2f0;align-items:center;gap:7px;min-width:0;min-height:42px;padding:6px 3px;display:flex}.category-legend__item:last-child{border-bottom:0}.category-legend__marker{border-radius:50%;flex:none;width:8px;height:8px}.category-legend p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;margin:0;overflow:hidden}.category-legend p small{font-size:var(--font-size-xs);margin-top:2px;display:block}.category-legend__item>strong{flex:none}@container (width<=390px){.category-chart{flex-direction:column;align-items:stretch;gap:3px}.donut-wrap{flex-basis:auto;width:100%;height:160px}.category-legend{width:100%;max-width:none}.category-legend__list--scrollable{max-height:150px}}.chart-placeholder{background:linear-gradient(90deg,#f3f5f3,#fafbfa,#f3f5f3);border-radius:10px;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.65}}.recent-panel{margin-top:14px;padding-bottom:4px}.recent-panel>.skeleton-loader,.recent-panel>.api-state{margin-top:15px}.recent-panel>.pagination-bar{margin:0 -19px}.table-scroll{margin:15px -19px 0;overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:820px}th{color:#8b938e;font-size:var(--font-size-sm);letter-spacing:.05em;text-align:left;text-transform:uppercase;background:#f7f9f7;padding:10px 14px}td{color:#55615a;font-size:var(--font-size-md);white-space:nowrap;border-top:1px solid #edf0ed;padding:11px 14px}tbody tr:hover{background:#fbfcfb}.complaint-id{color:#28382f}.recent-complaint-row{cursor:pointer}.complaint-detail-link{cursor:pointer;font:inherit;background:0 0;border:0;padding:0;font-weight:700}.complaint-detail-link:hover,.complaint-detail-link:focus-visible{color:var(--green-700);text-decoration:underline}.recent-complaint-modal{gap:16px;display:grid}.recent-complaint-modal__summary{background:linear-gradient(135deg,#fff7ec 0%,#fffdf9 58%,#f1f8f4 100%);border:1px solid #eddec9;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px;display:grid}.recent-complaint-modal__summary-icon{color:var(--orange-500,#ff8a00);background:#fff;border:1px solid #efd8b9;border-radius:10px;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.recent-complaint-modal__summary>div{gap:2px;min-width:0;display:grid}.recent-complaint-modal__summary small{color:#8a6a48;font-size:var(--font-size-xs);letter-spacing:.06em;text-transform:uppercase;font-weight:800}.recent-complaint-modal__summary strong{color:#26342c;text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.recent-complaint-modal__summary>div>span{color:var(--muted);font-size:var(--font-size-sm)}.recent-complaint-modal__facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.recent-complaint-modal__facts>div{background:#f8faf9;border:1px solid #e5eae7;border-radius:11px;grid-template-columns:auto minmax(0,1fr);align-content:start;gap:4px;min-height:100px;padding:12px;display:grid}.recent-complaint-modal__fact-icon{color:var(--green-700);background:#fff;border:1px solid #dce6e0;border-radius:8px;grid-row:1/span 2;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.recent-complaint-modal__facts dt{color:#718078;font-size:var(--font-size-xs);letter-spacing:.05em;text-transform:uppercase;font-weight:800}.recent-complaint-modal__facts dd{color:#2f3d35;font-size:var(--font-size-base);overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.45}.recent-complaint-modal__footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding-top:15px;display:flex}.recent-complaint-modal__footer>div{color:var(--muted);font-size:var(--font-size-sm);align-items:center;gap:7px;display:flex}.person-cell{color:#2d3b33;align-items:center;gap:8px;font-weight:600;display:flex}.status-badge{font-size:var(--font-size-xs);border-radius:20px;padding:4px 8px;font-weight:700;display:inline-block}.status-badge--resolved{color:#327758;background:#e2f1e9}.status-badge--in-progress{color:#3974a8;background:#e5eef8}.status-badge--pending{color:#9a6e1c;background:#f9eed6}.status-badge--escalated{color:#b25347;background:#f7e4e1}@media (width<=620px){.recent-complaint-modal__facts{grid-template-columns:1fr}.recent-complaint-modal__facts>div{min-height:auto}.recent-complaint-modal__summary{grid-template-columns:auto minmax(0,1fr);align-items:start}.recent-complaint-modal__summary>.status-badge{grid-column:2;justify-self:start}.recent-complaint-modal__footer{flex-direction:column;align-items:stretch;gap:13px}.recent-complaint-modal__footer .button{width:100%}}.dashboard-grid--single,.dashboard-grid--bottom{grid-template-columns:minmax(0,1fr)}.performance-list{margin-top:12px}.performance-list>div{align-items:center;gap:10px;padding:8px 0;display:flex}.performance-list>div>div{flex:1}.rank{color:#a2aaa5;font-size:var(--font-size-sm)}.performance-list p{font-size:var(--font-size-md);justify-content:space-between;align-items:center;margin:0 0 6px;display:flex}.performance-list p span{color:var(--muted);font-size:var(--font-size-sm)}.performance-list>div>strong{font-size:var(--font-size-md)}.progress{background:#edf1ee;border-radius:4px;height:5px;overflow:hidden}.progress i{background:var(--green-700);border-radius:4px;height:100%;display:block}.filter-bar{align-items:center;gap:10px;margin-bottom:14px;padding:12px;display:flex}.filter-bar label{border:1px solid var(--border);color:var(--muted);background:#f7f9f7;border-radius:8px;flex:1;align-items:center;gap:8px;padding:0 11px;display:flex}.filter-bar input{background:0 0;border:0;outline:0;width:100%;height:38px}.representatives-stats,.representatives-filter{margin-bottom:14px}.representatives-panel{padding-bottom:4px}.representative-name{align-items:center;gap:9px;display:flex}.representative-name>span:last-child{gap:2px;display:grid}.representative-name strong{color:#2d3b33;font-size:var(--font-size-md)}.representative-name small{color:var(--muted);font-size:var(--font-size-xs)}.representative-contact{color:var(--green-700)}.representative-contact:hover{text-decoration:underline}.record-status{font-size:var(--font-size-xs);text-transform:capitalize;border-radius:20px;padding:4px 8px;font-weight:700;display:inline-block}.record-status--active{color:#327758;background:#e2f1e9}.record-status--draft{color:#3974a8;background:#e7f0f8}.record-status--inactive,.record-status--former{color:#9a6e1c;background:#f9eed6}.representatives-empty{color:var(--muted);text-align:center;padding:32px 14px}.record-status--archived{color:#68716c;background:#eef0ee}.mla-filter-bar{flex-wrap:wrap}.mla-filter-bar label{min-width:260px}.mla-filter-bar select{border:1px solid var(--border);color:#455149;font-size:var(--font-size-md);background:#fff;border-radius:8px;outline:0;min-width:140px;height:40px;padding:0 30px 0 10px}.mla-table{min-width:880px}.table-primary,.table-secondary{display:block}.table-primary{color:#2d3b33;font-size:var(--font-size-md)}.table-secondary{color:var(--muted);font-size:var(--font-size-xs);margin-top:3px}.row-actions{align-items:center;gap:4px;display:flex}.table-action{border:1px solid var(--border);color:#56625b;background:#fff;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.table-action:hover{color:var(--green-700);background:#f0f5f2}.table-action--danger:hover{color:#b34e43;background:#faecea;border-color:#eccbc6}.pagination-bar{border-top:1px solid var(--border);justify-content:space-between;align-items:center;margin:0 -19px;padding:14px 19px;display:flex}.pagination-bar>span{color:var(--muted);font-size:var(--font-size-md)}.pagination-bar>div{gap:7px;display:flex}.pagination-bar .button{min-height:32px}.button:disabled{cursor:not-allowed;opacity:.45;transform:none}.mla-avatar{color:var(--green-700);background:#d9ebe4;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;display:inline-flex;overflow:hidden}.mla-avatar img{object-fit:cover;width:100%;height:100%}.mla-avatar--small{font-size:var(--font-size-sm);width:32px;height:32px}.mla-avatar--medium{width:48px;height:48px;font-size:13px}.mla-avatar--large{width:78px;height:78px;font-size:21px}.modal-backdrop{z-index:100;background:#0d221885;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.mla-form-modal,.confirm-dialog{border:1px solid var(--border);background:#fff;border-radius:15px;width:min(760px,100%);max-height:calc(100vh - 48px);position:relative;overflow-y:auto;box-shadow:0 24px 70px #0c20163d}.modal-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;padding:20px 22px;display:flex}.modal-header p{color:var(--green-700);font-size:var(--font-size-sm);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-weight:700}.modal-header h2{margin:0;font-size:19px}.modal-close{position:absolute;top:15px;right:15px}.mla-form-modal form{padding:20px 22px}.photo-preview-row{border:1px solid var(--border);background:#f7f9f7;border-radius:11px;align-items:center;gap:15px;margin-bottom:5px;padding:13px;display:flex}.photo-upload-copy{color:var(--green-700);flex:1;grid-template-columns:auto 1fr;gap:2px;display:grid}.photo-upload-copy strong{color:#2d3b33;font-size:var(--font-size-base)}.photo-upload-copy span{color:var(--muted);font-size:var(--font-size-sm);grid-column:1/-1}.photo-upload-actions{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.photo-upload-actions .button{min-height:34px}.photo-upload-button{cursor:pointer}.photo-upload-button input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.photo-upload-error{margin:0 0 14px 94px;display:block}.mla-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-field{flex-direction:column;gap:6px;display:flex}.form-field>span{color:#455149;font-size:var(--font-size-md);font-weight:700}.form-field input,.form-field select{color:#26332c;font-size:var(--font-size-base);background:#fff;border:1px solid #dce3dd;border-radius:8px;outline:0;width:100%;height:40px;padding:0 11px}.form-field input:focus,.form-field select:focus{border-color:var(--green-700);box-shadow:0 0 0 3px #176b521a}.form-field input[aria-invalid=true]{border-color:#c65b50}.form-error{color:#b44d43;font-size:var(--font-size-sm)}.form-banner{font-size:var(--font-size-md);border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:10px 12px;display:flex}.form-banner--error{color:#a8443a;background:#fae9e7}.form-banner--success{color:#287457;background:#e3f2ea}.form-banner button{color:inherit;font-size:var(--font-size-sm);background:0 0;border:0;font-weight:700}.modal-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin:20px -22px -20px;padding:16px 22px;display:flex}.button--danger{color:#fff!important;background:#b64d43!important;border-color:#b64d43!important}.button--danger:hover{background:#963d35!important}.confirm-dialog{text-align:center;max-width:420px;padding:27px}.confirm-dialog__icon{color:#a77820;background:#f8eed9;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.confirm-dialog__icon--danger{color:#b64d43;background:#fae7e4}.confirm-dialog h2{margin:14px 0 7px;font-size:18px}.confirm-dialog p{color:var(--muted);font-size:var(--font-size-base);margin:0;line-height:1.6}.confirm-dialog .modal-actions{margin:22px -27px -27px;padding:16px 27px}.destructive-delete-dialog{background:#fff;border:1px solid #ead3cf;border-radius:15px;width:min(520px,100%);max-height:calc(100vh - 44px);padding:28px;position:relative;overflow-y:auto;box-shadow:0 24px 70px #23120f4d}.destructive-delete-dialog__close{position:absolute;top:15px;right:15px}.destructive-delete-dialog__icon{color:#b64d43;background:#fae7e4;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;display:inline-flex}.destructive-delete-dialog h2{margin:14px 0 7px;font-size:19px}.destructive-delete-dialog>p{color:#5f6963;font-size:var(--font-size-base);margin:0;line-height:1.65}.destructive-delete-dialog__warnings{color:#7e413a;font-size:var(--font-size-md);background:#fff6f3;border:1px solid #f0d7d1;border-radius:9px;gap:7px;margin:16px 0;padding:12px 14px 12px 30px;line-height:1.5;display:grid}.destructive-delete-dialog .form-banner{margin-top:16px}.destructive-delete-dialog form{margin-top:18px}.destructive-delete-dialog .modal-actions{margin:22px -28px -28px;padding:16px 28px}.bulk-row-checkbox{accent-color:var(--green-700);cursor:pointer;width:15px;height:15px}.bulk-selection-column{width:42px;padding-left:18px;padding-right:4px}.bulk-selection-bar{color:#783e37;background:#fff7f4;border-bottom:1px solid #efd9d3;justify-content:space-between;align-items:center;min-height:52px;margin:0 -19px;padding:8px 14px 8px 19px;display:flex}.bulk-selection-bar>strong{font-size:var(--font-size-base)}.bulk-selection-bar>div{align-items:center;gap:7px;display:flex}.bulk-delete-dialog__records{border:1px solid var(--border);background:#f7f9f7;border-radius:9px;max-height:180px;margin-top:16px;padding:11px 13px;overflow-y:auto}.bulk-delete-dialog__records>strong{color:#39473f;font-size:var(--font-size-md)}.bulk-delete-dialog__records ul{gap:5px;margin:8px 0 0;padding-left:18px;display:grid}.bulk-delete-dialog__records li{color:#59655e;font-size:var(--font-size-md);line-height:1.4}.back-link{color:var(--green-700);font-size:var(--font-size-md);align-items:center;gap:5px;margin-bottom:14px;font-weight:700;display:inline-flex}.mla-profile-header{justify-content:space-between;align-items:center;display:flex}.mla-profile-header__identity{align-items:center;gap:16px;display:flex}.mla-profile-header__identity p{color:var(--green-700);font-size:var(--font-size-sm);letter-spacing:.08em;margin:0 0 4px;font-weight:700}.mla-profile-header__identity h1{margin:0 0 4px;font-size:23px}.mla-profile-header__identity span{color:var(--muted);font-size:var(--font-size-base)}.mla-profile-header__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.detail-tabs{border-bottom:1px solid var(--border);gap:2px;margin:18px 0 14px;display:flex;overflow-x:auto}.detail-tabs button{color:var(--muted);font-size:var(--font-size-md);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:10px 13px;font-weight:700}.detail-tabs button.active{border-bottom-color:var(--green-700);color:var(--green-700)}.details-grid{grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:14px;display:grid}.detail-card--wide{min-height:260px}.detail-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:15px 0 0;display:grid}.detail-list div{border-top:1px solid #eef1ee;padding:13px 4px}.detail-list dt{color:var(--muted);font-size:var(--font-size-sm);align-items:center;gap:6px;margin-bottom:5px;display:flex}.detail-list dd{color:#34423a;font-size:var(--font-size-base);margin:0}.detail-list a{color:var(--green-700)}.relationship-summary h2,.danger-zone h2{margin:0;font-size:14px}.relationship-summary>div{color:var(--green-700);border-top:1px solid #eef1ee;align-items:center;gap:11px;margin-top:13px;padding-top:13px;display:flex}.relationship-summary span{color:var(--muted);font-size:var(--font-size-sm)}.relationship-summary strong{color:#26342c;font-size:17px;display:block}.danger-zone{border-color:#eccfcb;grid-column:1/-1;justify-content:space-between;align-items:center;display:flex}.danger-zone p{color:var(--muted);font-size:var(--font-size-md);margin:5px 0 0}.relationship-table,.activity-panel{padding-bottom:4px}.relationship-table table{min-width:760px}.activity-timeline{margin:18px 0 6px;padding:0;list-style:none}.activity-timeline li{gap:12px;min-height:65px;display:flex;position:relative}.activity-timeline li:not(:last-child):before{content:"";background:#dfe7e1;width:1px;height:calc(100% - 12px);position:absolute;top:14px;left:5px}.activity-dot{background:var(--green-700);z-index:1;border:3px solid #dff0e9;border-radius:50%;flex:none;width:11px;height:11px;margin-top:2px}.activity-dot--archived{background:#a85b4f;border-color:#f4dfdc}.activity-timeline strong{font-size:var(--font-size-base)}.activity-timeline p{color:var(--muted);font-size:var(--font-size-sm);text-transform:capitalize;margin:3px 0}.activity-timeline small{color:#879089;font-size:var(--font-size-xs)}.inline-empty{color:var(--muted);font-size:var(--font-size-base);text-align:center;padding:25px 0}.empty-state__action{margin-top:18px}.page--centered{justify-content:center;align-items:center;min-height:calc(100vh - 76px);display:flex}.empty-state{border:1px solid var(--border);text-align:center;background:#fff;border-radius:14px;max-width:460px;padding:40px}.empty-state svg{color:var(--green-700)}.empty-state h1{margin:15px 0 8px;font-size:21px}.empty-state p{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.fatal-error{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;display:flex}.fatal-error button{background:var(--green-700);color:#fff;border:0;border-radius:8px;padding:10px 16px}.sidebar-backdrop{display:none}.api-filter-bar{flex-wrap:wrap}.api-filter-bar label{min-width:220px}.api-filter-bar select,.api-filter-input{border:1px solid var(--border);color:#455149;font-size:var(--font-size-md);background:#fff;border-radius:8px;outline:0;min-width:145px;height:40px;padding:0 28px 0 10px}.api-filter-input{padding-right:10px}.api-primary-select{font-weight:700;color:var(--green-700)!important;border-color:#bed8cc!important;min-width:210px!important}.api-filter-bar :disabled{cursor:not-allowed;opacity:.6;background:#f1f3f1}.api-structured-filter-panel{margin-bottom:14px;padding:18px}.api-structured-filter-header{border-bottom:1px solid #edf0ed;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:14px;display:flex}.api-structured-filter-header>div{align-items:center;gap:10px;display:flex}.api-structured-filter-header__icon{background:var(--green-100);color:var(--green-700);border-radius:9px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.api-structured-filter-header h2{color:#2c3932;margin:0 0 3px;font-size:13px}.api-structured-filter-header p{color:var(--muted);font-size:var(--font-size-sm);margin:0}.api-structured-filter-header .button:disabled{cursor:not-allowed;opacity:.45}.api-structured-filter-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.api-structured-filter-panel--collapsed .api-structured-filter-header{border-bottom:0;margin-bottom:0;padding-bottom:0}.api-structured-filter-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 12px;display:grid}.api-structured-filter-grid--wards,.api-structured-filter-grid--municipalities,.api-structured-filter-grid--chairpersons,.api-structured-filter-grid--mlas,.api-structured-filter-grid--councillors{grid-template-columns:repeat(2,minmax(0,1fr))}.api-structured-filter-grid--departments{grid-template-columns:minmax(220px,360px)}.api-structured-filter-field{min-width:0;display:grid}.api-structured-filter-field--search{grid-column:span 2}.api-structured-filter-field>span,.api-structured-filter-field>.official-selector>.official-selector__label{color:#657169;font-size:var(--font-size-xs);text-transform:uppercase;margin:0 0 6px 2px;font-weight:700;display:block}.api-structured-filter-field .official-selector{width:100%;min-width:0}.api-structured-filter-control,.api-structured-filter-search{border:1px solid var(--border);box-sizing:border-box;color:#455149;font-size:var(--font-size-md);background:#fff;border-radius:8px;outline:0;width:100%;height:40px}.api-structured-filter-control{padding:0 30px 0 11px}.api-structured-filter-search{color:var(--muted);align-items:center;gap:8px;padding:0 11px;display:flex}.api-structured-filter-search input{font-size:var(--font-size-md);background:0 0;border:0;outline:0;width:100%;min-width:0}.api-structured-filter-control:focus,.api-structured-filter-search:focus-within{border-color:#e6a654;box-shadow:0 0 0 3px #ff8a001f}@media (width<=1100px){.api-structured-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.api-structured-filter-panel{padding:14px}.api-structured-filter-header{flex-direction:column;align-items:flex-start;gap:12px}.api-structured-filter-header>div{align-items:flex-start}.api-structured-filter-actions{width:100%}.api-structured-filter-actions .button{flex:1}.api-structured-filter-grid{grid-template-columns:1fr}.api-structured-filter-field--search{grid-column:auto}}.api-record-panel{padding-bottom:4px}.api-record-panel .table-scroll{margin-top:0}.api-municipality-details-page>.api-record-panel+.api-record-panel{margin-top:14px}.action-tooltip{display:inline-flex}.action-tooltip__bubble{color:#fff;font-size:var(--font-size-md);pointer-events:none;white-space:nowrap;z-index:10000;background:#24342b;border-radius:6px;padding:7px 9px;font-weight:600;line-height:1;position:fixed;transform:translate(-50%,-100%);box-shadow:0 5px 16px #19261e33}.api-route-modal-backdrop{z-index:9000;background:#1c231f7a;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.api-route-modal{background:#fffdfb;border:1px solid #ffffffbf;border-radius:16px;flex-direction:column;width:min(760px,100%);max-width:760px;max-height:calc(100vh - 44px);display:flex;overflow:hidden;box-shadow:0 26px 70px #18211c47}.api-route-modal--large{width:min(940px,100%);max-width:940px}.api-route-modal__header{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:flex-start;padding:19px 21px 17px;display:flex}.api-route-modal__header p{color:var(--orange-500,#ff8a00);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;margin:0 0 5px;font-weight:800}.api-route-modal__header h1{color:#26342c;margin:0;font-size:18px}.api-route-modal__header span{color:var(--muted);font-size:var(--font-size-md);margin-top:5px;line-height:1.5;display:block}.api-route-modal__close{flex:none;margin-left:18px}.api-route-modal__body{padding:20px 21px 21px;overflow-y:auto}.api-route-modal__body>.panel{box-shadow:none;border:0;max-width:none;margin:0;padding:0}.api-route-modal__body .api-form-panel form{padding-top:16px}@media (width<=680px){.api-route-modal-backdrop{align-items:stretch;padding:0}.api-route-modal,.api-route-modal--large{border:0;border-radius:0;width:100%;max-width:none;max-height:100vh}.api-route-modal__header{padding:17px 16px 14px}.api-route-modal__body{padding:16px}.api-route-modal__body .api-form-grid{grid-template-columns:1fr}.api-route-modal__body .api-form-field--wide{grid-column:auto}.destructive-delete-dialog{border:0;border-radius:0;width:100%;min-height:100vh;max-height:100vh;padding:24px 18px}.destructive-delete-dialog .modal-actions{margin:24px -18px -24px;padding:16px 18px}.destructive-delete-dialog .modal-actions .button{flex:1}.bulk-selection-bar{flex-direction:column;align-items:stretch;gap:8px}.bulk-selection-bar>div{width:100%}.bulk-selection-bar .button{flex:1}}.api-state{color:var(--muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:280px;padding:38px 20px;display:flex}.api-state>svg{color:var(--green-700);width:34px;height:34px;margin-bottom:12px}.api-state strong{color:#2c3932;font-size:13px}.api-state span{font-size:var(--font-size-md);max-width:430px;margin-top:5px;line-height:1.6}.api-state .button{margin-top:16px}.api-state--error>svg{color:#b65349}.api-state__spinner{animation:.9s linear infinite api-spin}@keyframes api-spin{to{transform:rotate(360deg)}}.official-selector{min-width:190px;position:relative}.official-selector__label{color:#657169;font-size:var(--font-size-xs);text-transform:uppercase;margin:0 0 4px 2px;font-weight:700;display:block}.official-selector__search{border:1px solid var(--border);color:var(--muted);background:#fff;border-radius:8px;align-items:center;gap:7px;min-height:40px;padding:0 9px;display:flex}.official-selector__search input{font-size:var(--font-size-md);background:0 0;border:0;outline:0;width:100%;min-width:0}.official-selector__selected{background:var(--green-100);border:1px solid #bfdacf;border-radius:8px;justify-content:space-between;align-items:center;min-height:40px;padding:6px 8px;display:flex}.official-selector__selected strong,.official-selector__selected small{display:block}.official-selector__selected strong{color:var(--green-700);font-size:var(--font-size-sm)}.official-selector__selected small{color:var(--muted);font-size:var(--font-size-xs)}.official-selector__selected button{color:var(--green-700);background:0 0;border:0;padding:3px;display:inline-flex}.official-selector__results{border:1px solid var(--border);box-sizing:border-box;contain:layout paint;overscroll-behavior:contain;scrollbar-gutter:stable;z-index:30;background:#fff;border-radius:9px;max-height:min(220px,40vh);padding:5px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 12px 30px #19312524}.official-selector__results>span{color:var(--muted);font-size:var(--font-size-sm);padding:13px 11px}.official-selector__results button{text-align:left;background:#fff;border:0;border-radius:6px;padding:8px}.official-selector__results button:hover{background:#f1f7f4}.official-selector__results strong,.official-selector__results small{display:block}.official-selector__results strong{font-size:var(--font-size-sm)}.official-selector__results small{color:var(--muted);font-size:var(--font-size-xs);margin-top:2px}.official-selector__refresh-indicator{border:1px solid var(--border);color:var(--green-700);z-index:2;background:#fffffff0;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;display:flex;position:absolute;top:9px;right:9px;box-shadow:0 3px 10px #1931251f}.official-selector__refresh-indicator svg{animation:.8s linear infinite api-spin}.api-municipality-table{min-width:1180px}.api-municipality-table td:nth-child(3){white-space:normal;max-width:220px}.municipality-selector{min-width:230px}.municipality-selector .official-selector__results strong{align-items:center;gap:5px;display:flex}.api-ward-table{min-width:930px}.assignment-badge{font-size:var(--font-size-xs);text-transform:uppercase;border-radius:999px;padding:4px 8px;font-weight:800;display:inline-flex}.assignment-badge--assigned{background:var(--green-100);color:var(--green-700)}.assignment-badge--vacant{color:#946c21;background:#f8eed9}.api-form-panel{max-width:820px;margin:0 auto}.api-form-panel .panel__header h2{align-items:center;gap:7px;display:flex}.api-form-panel form{padding-top:20px}.api-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;display:grid}.api-form-field--wide{grid-column:1/-1}.api-form-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;margin-top:24px;padding-top:17px;display:flex}.api-municipality-hero{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.api-municipality-overview{margin-bottom:14px}.api-assignment-panel{gap:10px;display:grid}.api-assignment-card{border-top:1px solid #edf1ee;align-items:center;gap:10px;padding:12px 0 2px;display:flex}.api-assignment-card>div:not(.api-assignment-card__actions){flex:1;gap:2px;display:grid}.api-assignment-card small,.api-assignment-card span{color:var(--muted);font-size:var(--font-size-xs)}.api-assignment-card strong{font-size:var(--font-size-md)}.api-assignment-card button{color:var(--green-700);font-size:var(--font-size-sm);background:0 0;border:0;font-weight:700}.assignment-dot{background:#d8a23a;border:3px solid #faeed8;border-radius:50%;width:12px;height:12px}.assignment-dot--assigned{background:var(--green-700);border-color:var(--green-100)}.mla-assignment-summary-panel{flex-direction:column;display:flex}.mla-assignment-summary{flex-direction:column;flex:1;gap:11px;margin-top:15px;display:flex}.mla-assignment-summary__metric{background:linear-gradient(135deg,#fff8ef,#fffdf9);border:1px solid #f0dfc8;border-radius:11px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;padding:13px;display:grid}.mla-assignment-summary__icon{color:var(--orange-500,#ff8a00);background:#fff;border:1px solid #f0dfc8;border-radius:9px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.mla-assignment-summary__metric>div{gap:2px;display:grid}.mla-assignment-summary__metric small{color:#8a6d4d;font-size:var(--font-size-xs);letter-spacing:.06em;font-weight:800}.mla-assignment-summary__metric strong{color:#26342c;font-size:28px;line-height:1.05}.mla-assignment-summary__metric>div>span{color:var(--muted);font-size:var(--font-size-sm)}.mla-assignment-summary__eligibility{border:1px solid #e5eae7;border-radius:9px;align-items:center;gap:10px;padding:10px 11px;display:flex}.mla-assignment-summary__eligibility.is-ready{background:#f4faf7;border-color:#d7eade}.mla-assignment-summary__eligibility>div{gap:2px;display:grid}.mla-assignment-summary__eligibility strong{color:#334139;font-size:var(--font-size-md)}.mla-assignment-summary__eligibility>div>span{color:var(--muted);font-size:var(--font-size-sm);line-height:1.4}.mla-assignment-summary>.button{justify-content:center;width:100%;margin-top:auto}.councillor-ward-summary-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:auto;display:grid}.councillor-ward-summary-actions .button{justify-content:center;width:100%}.record-information-panel{flex-direction:column;display:flex}.record-detail-facts{flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:15px;display:grid}.record-detail-fact{background:#f8faf9;border:1px solid #e6ebe8;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;min-height:72px;padding:11px 12px;display:grid}.record-detail-fact--accent{background:linear-gradient(135deg,#fff8ef,#fffdf9);border-color:#f0dfc8}.record-detail-fact--wide{grid-column:1/-1}.record-detail-fact__icon{color:var(--orange-500,#ff8a00);background:#fff;border:1px solid #f0dfc8;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.record-detail-fact__icon--green{color:var(--green-700);border-color:#d7eade}.record-detail-fact>div{gap:3px;min-width:0;display:grid}.record-detail-fact small{color:#718078;font-size:var(--font-size-xs);letter-spacing:.05em;font-weight:800}.record-detail-fact strong,.record-detail-fact a{color:#2f3d35;font-size:var(--font-size-base);overflow-wrap:anywhere;font-weight:750}.record-detail-fact a{color:var(--orange-600,#d96f00)}.record-detail-fact>div>span:not(.record-status){color:var(--muted);font-size:var(--font-size-sm)}.municipality-relationship-panel{flex-direction:column;display:flex}.municipality-relationship-stack{flex-direction:column;flex:1;gap:10px;margin-top:15px;display:flex}.municipality-relationship-card{background:#fff9f1;border:1px solid #f0dfc8;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;display:grid}.municipality-relationship-card.is-assigned{background:#f6fbf8;border-color:#d7eade}.municipality-relationship-card__icon{color:var(--orange-600,#d96f00);background:#fff;border:1px solid #ead8c1;border-radius:9px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.municipality-relationship-card.is-assigned .municipality-relationship-card__icon{color:var(--green-700);border-color:#cae5d8}.municipality-relationship-card>div:not(.municipality-relationship-card__actions){gap:2px;min-width:0;display:grid}.municipality-relationship-card small{color:#718078;font-size:var(--font-size-xs);letter-spacing:.05em;font-weight:800}.municipality-relationship-card strong{color:#2e3c34;font-size:var(--font-size-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.municipality-relationship-card>div>span{color:var(--muted);font-size:var(--font-size-sm)}.municipality-relationship-card button{color:var(--orange-600,#d96f00);font-size:var(--font-size-sm);background:0 0;border:0;padding:5px;font-weight:750}.municipality-relationship-card__actions{align-items:center;gap:2px;display:flex}.municipality-relationship-card__actions button:last-child{color:#b64d43}.municipality-relationship-stack>.button{justify-content:center;width:100%;margin-top:auto}.ward-councillor-panel{flex-direction:column;display:flex}.ward-councillor-summary{flex-direction:column;flex:1;gap:11px;margin-top:15px;display:flex}.ward-councillor-identity{background:#fff9f1;border:1px solid #f0dfc8;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px;display:grid}.ward-councillor-identity.is-assigned{background:#f6fbf8;border-color:#d7eade}.ward-councillor-avatar{color:var(--orange-600,#d96f00);font-size:var(--font-size-md);background:#fff;border:1px solid #ead8c1;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-weight:850;display:flex}.ward-councillor-identity.is-assigned .ward-councillor-avatar{color:var(--green-700);border-color:#cae5d8}.ward-councillor-identity>div{gap:2px;min-width:0;display:grid}.ward-councillor-identity small{color:#718078;font-size:var(--font-size-xs);letter-spacing:.05em;font-weight:800}.ward-councillor-identity strong{color:#2e3c34;font-size:var(--font-size-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ward-councillor-identity>div>span{color:var(--muted);font-size:var(--font-size-sm)}.ward-councillor-state{border:1px solid #e6ebe8;border-radius:9px;align-items:center;gap:10px;padding:10px 11px;display:flex}.ward-councillor-state.is-active{background:#f4faf7;border-color:#d7eade}.ward-councillor-state>div{gap:2px;display:grid}.ward-councillor-state strong{color:#334139;font-size:var(--font-size-md)}.ward-councillor-state>div>span{color:var(--muted);font-size:var(--font-size-sm);line-height:1.4}.ward-councillor-summary>.button{justify-content:center;width:100%;margin-top:auto}@media (width<=620px){.record-detail-facts,.councillor-ward-summary-actions{grid-template-columns:1fr}.record-detail-fact--wide{grid-column:auto}.municipality-relationship-card,.ward-councillor-identity{grid-template-columns:auto minmax(0,1fr);align-items:start}.municipality-relationship-card>button,.municipality-relationship-card__actions,.ward-councillor-identity>.assignment-badge{grid-column:1/-1;justify-self:start}}.api-quick-actions{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.api-quick-actions>div:last-child{flex-wrap:wrap;gap:7px;display:flex}.api-action-modal{max-width:600px}.api-action-modal form{padding:20px 22px}.api-eligible-list{border:1px solid var(--border);border-radius:9px;max-height:240px;margin-top:10px;display:grid;overflow-y:auto}.api-eligible-list label{cursor:pointer;border-bottom:1px solid #edf1ee;align-items:center;gap:9px;padding:10px 12px;display:flex}.api-eligible-list label:last-child{border-bottom:0}.api-eligible-list input{accent-color:var(--green-700)}.api-eligible-list strong,.api-eligible-list small{display:block}.api-eligible-list strong{font-size:var(--font-size-md)}.api-eligible-list small,.api-eligible-list p{color:var(--muted);font-size:var(--font-size-xs);margin-top:2px}.api-eligible-list p{padding:14px}.api-action-modal--relationship-recovery{max-width:760px;overflow:visible}.relationship-recovery-intro{background:linear-gradient(135deg,#fff8ef,#fffdf9);border:1px solid #f0dfc8;border-radius:11px;align-items:center;gap:12px;margin-bottom:12px;padding:12px 14px;display:flex}.relationship-recovery-intro__icon{color:var(--orange-500);background:#fff;border:1px solid #f0dfc8;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.relationship-recovery-intro div{gap:2px;display:grid}.relationship-recovery-intro strong{color:#26342c}.relationship-recovery-intro span{color:var(--muted);font-size:var(--font-size-sm)}.relationship-recovery-note{color:#476357;font-size:var(--font-size-sm);background:#f2f8f5;border:1px solid #d7eade;border-radius:9px;padding:10px 12px;line-height:1.5}.relationship-recovery-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px;display:grid}.relationship-recovery-steps>section{border:1px solid var(--border);background:#fbfcfb;border-radius:12px;min-width:0;padding:14px}.relationship-recovery-steps>section.is-locked{color:var(--muted);background:#f7f8f7}.relationship-recovery-step__heading{align-items:center;gap:9px;margin-bottom:12px;display:flex}.relationship-recovery-step__heading>span{color:var(--orange-500);background:#fff1df;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.relationship-recovery-step__heading div{gap:1px;display:grid}.relationship-recovery-step__heading small{color:var(--orange-600);font-size:var(--font-size-xs);letter-spacing:.05em;font-weight:800}.relationship-recovery-step__heading strong{color:#26342c}.relationship-recovery-step__locked-message{color:var(--muted);font-size:var(--font-size-sm);min-height:72px;margin:8px 0 0;line-height:1.55}.councillor-recovery-panel .button{justify-content:center;width:100%}@media (width<=700px){.api-action-modal--relationship-recovery{overflow-y:auto}.relationship-recovery-steps{grid-template-columns:1fr}}.api-mla-table{min-width:700px}.api-mla-municipality-table{min-width:1100px}.table-action--text{font-size:var(--font-size-xs);width:auto;padding:0 6px;font-weight:700}.form-banner--warning{color:#86631f;background:#fbf1dc;margin-top:12px}.api-department-table{min-width:880px}.table-action--danger{color:#b64d43}.table-action--danger:hover,.table-action--danger:focus-visible{color:#963d35;background:#fae7e4;border-color:#e6bcb6}.api-assignment-card__actions{align-items:center;gap:5px;margin-left:auto;display:flex}.api-assignment-card__actions button{margin-left:0}.municipality-multi-selector{gap:8px;display:grid}.municipality-selection-chips{flex-wrap:wrap;gap:6px;display:flex}.municipality-selection-chips>span{background:var(--green-100);border:1px solid #bfdacf;border-radius:8px;align-items:center;gap:7px;padding:7px 8px;display:flex}.municipality-selection-chips strong,.municipality-selection-chips small{display:block}.municipality-selection-chips strong{color:var(--green-700);font-size:var(--font-size-sm)}.municipality-selection-chips small{color:var(--muted);font-size:var(--font-size-xs)}.municipality-selection-chips button{color:var(--green-700);background:0 0;border:0;padding:2px;display:inline-flex}.municipality-multi-list{border:1px solid var(--border);box-sizing:border-box;contain:layout paint;overscroll-behavior:contain;scrollbar-gutter:stable;border-radius:9px;flex-direction:column;height:clamp(180px,30vh,280px);display:flex;position:relative;overflow-y:auto}.municipality-multi-list--error{border-color:#c65b50}.municipality-multi-list>button{text-align:left;background:#fff;border:0;border-bottom:1px solid #edf1ee;flex:none;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:10px 12px;display:grid}.municipality-multi-list>button:last-child{border-bottom:0}.municipality-multi-list>button:hover:not(:disabled),.municipality-multi-list>button[aria-selected=true]{background:#f1f7f4}.municipality-multi-list>button:disabled{cursor:not-allowed;opacity:.62}.municipality-multi-list strong,.municipality-multi-list small{display:block}.municipality-multi-list strong{font-size:var(--font-size-md)}.municipality-multi-list small,.municipality-multi-list>p{color:var(--muted);font-size:var(--font-size-xs)}.municipality-multi-list>p{text-align:center;flex:1;justify-content:center;align-items:center;margin:0;padding:14px;display:flex}.municipality-multi-list__icon{color:var(--green-700)}.municipality-selector-pagination{color:var(--muted);font-size:var(--font-size-xs);justify-content:flex-end;align-items:center;gap:8px;min-height:28px;display:flex}.municipality-selector-pagination--reserved{visibility:hidden}.municipality-selector-pagination button{border:1px solid var(--border);background:#fff;border-radius:6px;align-items:center;padding:5px;display:inline-flex}.municipality-selector-pagination button:disabled{opacity:.45}.mla-municipality-options label.is-disabled{cursor:not-allowed;opacity:.55}.mla-hierarchy-row,.mla-hierarchy-row:hover{background:0 0!important}.mla-hierarchy-row>td{background:#f7faf8;padding:0!important}.mla-hierarchy-panel{gap:12px;padding:14px;display:grid}.mla-hierarchy-panel .api-state{min-height:150px}.mla-hierarchy-overview-card,.mla-hierarchy-table-card{border:1px solid var(--border);background:#fff;border-radius:12px;min-width:0;overflow:hidden}.mla-hierarchy-overview-header{border-bottom:1px solid #edf1ee;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.mla-hierarchy-overview-icon{color:var(--orange-600,#d96f00);background:#fff3e4;border-radius:10px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.mla-hierarchy-overview-header>div{gap:2px;display:grid}.mla-hierarchy-overview-header small{color:var(--orange-600,#d96f00);font-size:var(--font-size-xs);letter-spacing:.06em;font-weight:800}.mla-hierarchy-overview-header h3{font-size:var(--font-size-base);margin:0}.mla-hierarchy-overview-header p{color:var(--muted);font-size:var(--font-size-sm);margin:0}.mla-hierarchy-view-link{white-space:nowrap;justify-content:center}.mla-hierarchy-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px 16px 16px;display:grid}.mla-hierarchy-fact{background:#f8faf9;border:1px solid #e6ebe8;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;min-height:64px;padding:10px 12px;display:grid}.mla-hierarchy-fact--wide{grid-column:1/-1}.mla-hierarchy-fact>span{color:var(--green-700);background:#fff;border:1px solid #dce8e1;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.mla-hierarchy-fact>div{gap:3px;min-width:0;display:grid}.mla-hierarchy-fact small{color:#718078;font-size:var(--font-size-xs);letter-spacing:.05em;font-weight:800}.mla-hierarchy-fact strong{color:#2f3d35;font-size:var(--font-size-base);overflow-wrap:anywhere}.mla-hierarchy-table-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:12px;display:grid}.mla-hierarchy-table-header{border-bottom:1px solid #edf1ee;justify-content:space-between;align-items:center;min-height:52px;padding:0 14px;display:flex}.mla-hierarchy-table-header>div{align-items:center;gap:8px;min-width:0;display:flex}.mla-hierarchy-table-header>div>span{color:var(--orange-600,#d96f00);align-items:center;display:flex}.mla-hierarchy-table-header h3{font-size:var(--font-size-base);white-space:nowrap;margin:0}.mla-hierarchy-count{color:var(--green-700);font-size:var(--font-size-xs);background:#f2f7f4;border-radius:999px;justify-content:center;align-items:center;min-width:27px;padding:4px 8px;font-weight:800;display:inline-flex}.mla-hierarchy-table-scroll{overscroll-behavior-inline:contain;margin:0;overflow-x:auto}.mla-hierarchy-table{min-width:580px}.mla-hierarchy-councillor-table{min-width:720px}.mla-hierarchy-table th{white-space:nowrap}.mla-hierarchy-table tbody tr:hover{background:#f4f8f6}.mla-hierarchy-table a{color:#34433b;font-weight:700}.mla-hierarchy-table a:hover{color:var(--orange-600,#d96f00)}.mla-hierarchy-table-card>.pagination-bar{margin:0}.mla-hierarchy-table-card>.api-state{margin:12px}.api-councillor-table{min-width:930px}.api-councillor-wards-table{min-width:820px}.api-eligible-list label.is-disabled{cursor:not-allowed;opacity:.55}.assignment-badge--leadership{color:#8a641d;background:#fbefd4;align-items:center;gap:4px}.api-chairperson-table{min-width:1050px}.api-chairperson-table .table-action--text{gap:4px}.chairperson-assignment-panel{max-width:none}.chairperson-candidate-list label{grid-template-columns:auto 1fr auto}.chairperson-candidate-list .record-status{justify-self:end}.login-page{background:#f4f7f4;grid-template-columns:minmax(360px,.85fr) minmax(520px,1.15fr);min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(145deg,#053829f7,#137051ed),radial-gradient(circle at 80% 18%,#d5a94d 0 2%,#0000 28%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:clamp(34px,5vw,72px);display:flex;position:relative;overflow:hidden}.login-visual:after{content:"";border:1px solid #ffffff1c;border-radius:50%;width:480px;height:480px;position:absolute;top:18%;right:-260px}.login-brand{z-index:1;align-items:center;display:flex;position:relative}.brand__logo--large{box-sizing:content-box;filter:none;background:#fffffff5;border:1px solid #ffffffb8;border-radius:18px;width:118px;padding:10px 14px;box-shadow:0 14px 34px #5b2a0033}.login-visual__copy{z-index:1;max-width:480px;position:relative}.login-visual__copy p{color:#e6bd6b;font-size:var(--font-size-md);letter-spacing:.15em;text-transform:uppercase;font-weight:700}.login-visual__copy h1{letter-spacing:-.045em;margin:15px 0 20px;font-size:clamp(32px,4vw,52px);line-height:1.08}.login-visual__copy span{color:#c0d9cf;max-width:430px;font-size:14px;line-height:1.7;display:block}.login-visual>small{color:#9fc9b9;font-size:var(--font-size-md);letter-spacing:.12em;text-transform:uppercase;z-index:1;position:relative}.login-panel{flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:42px 24px;display:flex}.login-card{width:min(100%,430px)}.login-card__heading{text-align:center;margin-bottom:28px}.login-card__icon{background:var(--green-100);color:var(--green-700);border-radius:13px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:17px;display:inline-flex}.login-card__heading p{color:var(--green-700);font-size:var(--font-size-sm);letter-spacing:.13em;margin:0 0 8px;font-weight:700}.login-card__heading h2{letter-spacing:-.03em;margin:0 0 7px;font-size:28px}.login-card__heading>span:last-child{color:var(--muted);font-size:var(--font-size-base)}.login-field{gap:7px;margin-bottom:15px;display:grid}.login-field>span:first-child{color:#3f4d45;font-size:var(--font-size-md);font-weight:700}.login-input{color:#87928b;background:#fff;border:1px solid #dce3dd;border-radius:9px;align-items:center;gap:9px;min-height:47px;padding:0 13px;display:flex}.login-input:focus-within{border-color:var(--green-700);box-shadow:0 0 0 3px #176b521a}.login-input input{color:#26332c;background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:12px}.login-password-toggle{color:#7c8780;background:0 0;border:0;align-items:center;padding:4px;display:inline-flex}.login-submit{font-size:var(--font-size-base);width:100%;min-height:47px;margin-top:5px}.login-error{color:#a8443a;font-size:var(--font-size-md);background:#fae9e7;border:1px solid #f1d1cc;border-radius:8px;margin-bottom:15px;padding:10px 12px;line-height:1.5}.login-remember{color:#59665f;font-size:var(--font-size-md);align-items:center;gap:8px;width:fit-content;margin:2px 0 12px;display:flex}.login-remember input{accent-color:var(--green-700);width:15px;height:15px}.demo-credentials{background:#edf5f1;border:1px dashed #bfd8cc;border-radius:10px;gap:4px;margin-top:21px;padding:13px 15px;display:grid}.demo-credentials strong{color:var(--green-700);font-size:var(--font-size-md);margin-bottom:2px}.demo-credentials span{color:#59665f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--font-size-md)}.login-footer{color:#919a94;font-size:var(--font-size-sm);text-align:center;margin:34px 0 0}@media (width<=1100px){.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid{grid-template-columns:1fr}.category-chart{justify-content:center}.donut-wrap{max-width:250px}.category-legend{max-width:260px}.details-grid{grid-template-columns:1fr}.danger-zone{grid-column:auto}}@media (width<=800px){.login-page{grid-template-columns:1fr}.login-visual{display:none}.login-panel{padding:32px 20px}.mla-hierarchy-table-grid{grid-template-columns:1fr}.api-municipality-hero,.api-quick-actions{flex-direction:column;align-items:flex-start;gap:15px}.api-form-grid{grid-template-columns:1fr}.api-form-field--wide{grid-column:auto}.sidebar{transition:transform .22s;transform:translate(-105%);box-shadow:12px 0 35px #162f2329}.sidebar--open{transform:translate(0)}.sidebar__close{display:inline-flex!important}.sidebar-backdrop{z-index:19;background:#0c1d1559;border:0;display:block;position:fixed;inset:0}.app-main{margin-left:0}.topbar__menu{display:inline-flex}.topbar{padding:0 20px}.profile-button>span:nth-child(2),.profile-button>svg{display:none}.page{padding:24px 20px 40px}}@media (width<=560px){.mla-hierarchy-overview-header{grid-template-columns:auto minmax(0,1fr)}.mla-hierarchy-view-link{grid-column:1/-1}.mla-hierarchy-facts{grid-template-columns:1fr}.mla-hierarchy-fact--wide{grid-column:auto}.api-form-actions{flex-direction:column-reverse}.api-form-actions .button,.api-quick-actions>div:last-child,.api-quick-actions .button{width:100%}.topbar{height:66px}.topbar__title>div{display:none}.page-heading{flex-direction:column;align-items:flex-start;gap:16px}.page-heading__actions{width:100%}.page-heading__actions .button{flex:1}.stats-grid{grid-template-columns:1fr}.stat-card{align-items:center}.category-chart{flex-direction:column;align-items:stretch}.donut-wrap{flex-basis:auto;width:100%;height:175px}.category-legend{max-width:none}.category-legend__list{grid-template-columns:minmax(0,1fr);display:grid}.category-legend__list--scrollable{max-height:230px}.category-legend__item{margin:0 4px}.category-legend__header{padding:0 5px 4px}.dashboard-grid--bottom{grid-template-columns:1fr}.filter-bar{flex-direction:column;align-items:stretch}}@media (width<=680px){.mla-form-grid{grid-template-columns:1fr}.modal-backdrop{align-items:flex-end;padding:0}.mla-form-modal{border-radius:15px 15px 0 0;max-height:94vh}.photo-preview-row{flex-wrap:wrap;align-items:flex-start}.photo-upload-copy{min-width:180px}.photo-upload-actions{width:100%;margin-left:93px}.photo-upload-error{margin-left:0}.mla-profile-header{flex-direction:column;align-items:flex-start;gap:16px}.mla-profile-header__actions{justify-content:flex-start}.detail-list{grid-template-columns:1fr}.danger-zone{flex-direction:column;align-items:flex-start;gap:15px}.mla-filter-bar select{flex:1;min-width:125px}.pagination-bar{flex-direction:column;align-items:flex-start;gap:10px}}.councillor-filter-bar{flex-wrap:wrap}.councillor-filter-bar label{min-width:210px}.councillor-filter-bar select{border:1px solid var(--border);color:#455149;font-size:var(--font-size-md);background:#fff;border-radius:8px;outline:0;min-width:125px;height:40px;padding:0 24px 0 10px}.councillor-table{min-width:1180px}.councillor-table th,.councillor-table td{padding-left:9px;padding-right:9px}.councillor-link:hover{color:var(--green-700);text-decoration:underline}.councillor-context-card{color:var(--green-700);background:#f2f8f5;border:1px solid #dceae3;border-radius:11px;align-items:center;gap:13px;margin:15px 0;padding:13px 15px;display:flex}.councillor-context-card div{gap:2px;display:grid}.councillor-context-card span,.councillor-context-card small{color:var(--muted);font-size:var(--font-size-sm)}.councillor-context-card strong{color:#26342c;font-size:12px}.hierarchy-breadcrumbs{margin-bottom:14px}.hierarchy-breadcrumbs ol{flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.hierarchy-breadcrumbs li{color:var(--muted);font-size:var(--font-size-md);align-items:center;gap:4px;display:flex}.hierarchy-breadcrumbs a{color:var(--green-700);font-weight:700}.hierarchy-toolbar{justify-content:space-between;align-items:center;margin-bottom:14px;padding:13px 16px;display:flex}.hierarchy-toolbar>span{color:var(--muted);font-size:var(--font-size-md)}.hierarchy-toggle{font-size:var(--font-size-md);align-items:center;gap:8px;font-weight:700;display:flex}.hierarchy-toggle input{accent-color:var(--green-700)}.hierarchy-tree{gap:12px;display:grid}.hierarchy-mla{padding:0;overflow:hidden}.hierarchy-node{align-items:center;gap:10px;min-height:58px;padding:10px 14px;display:flex}.hierarchy-node--mla{background:#fbfcfb}.hierarchy-node--municipality{border-top:1px solid var(--border)}.hierarchy-expander{color:var(--green-700);background:0 0;border:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;display:inline-flex}.hierarchy-expander svg{width:17px;height:17px}.hierarchy-icon{background:var(--green-100);color:var(--green-700);border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.hierarchy-node__copy{flex:1;gap:3px;min-width:150px;display:grid}.hierarchy-node__copy strong{color:#26342c;font-size:var(--font-size-base)}.hierarchy-node__copy small{color:var(--muted);font-size:var(--font-size-sm)}.hierarchy-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:5px;display:flex}.hierarchy-actions a,.hierarchy-actions button{border:1px solid var(--border);color:var(--green-700);font-size:var(--font-size-base);background:#fff;border-radius:6px;align-items:center;gap:3px;min-height:28px;padding:0 8px;font-weight:700;display:inline-flex}.hierarchy-children{border-left:2px solid #dcebe3;margin-left:31px}.hierarchy-municipality{background:#fff}.hierarchy-branch-content{border-top:1px solid #edf1ee;margin-left:48px;padding:8px 14px 12px 0}.hierarchy-representative,.hierarchy-councillor{background:#f7faf8;border-radius:8px;align-items:center;gap:9px;min-height:44px;margin:5px 0 8px;padding:8px 10px;display:flex}.hierarchy-representative .hierarchy-actions{margin-left:auto}.hierarchy-wards{gap:7px;display:grid}.hierarchy-ward{border:1px solid #e5ebe6;border-radius:9px;overflow:hidden}.hierarchy-node--ward{min-height:48px;padding:7px 10px}.ward-mini-mark{background:var(--green-100);color:var(--green-700);font-size:var(--font-size-md);border-radius:50%;justify-content:center;align-items:center;width:29px;height:29px;font-weight:700;display:flex}.hierarchy-councillor{border-top:1px solid #edf1ee;border-radius:0;margin:0;padding-left:49px}.hierarchy-councillor a{color:var(--green-700);font-size:var(--font-size-md);font-weight:700}.hierarchy-councillor button{border:1px solid var(--border);color:var(--green-700);cursor:pointer;font-size:var(--font-size-base);background:#fff;border-radius:6px;min-height:28px;margin-left:auto;padding:0 9px;font-weight:700}.vacancy-badge{color:#946c21;font-size:var(--font-size-xs);background:#f8eed9;border-radius:20px;padding:4px 8px;font-weight:700;display:inline-block}.vacancy-dot{background:#d89a31;border-radius:50%;width:8px;height:8px}.hierarchy-councillor>small{color:var(--muted);font-size:var(--font-size-sm)}.hierarchy-inline-empty{color:var(--muted);font-size:var(--font-size-md);margin:0;padding:18px}.hierarchy-empty{margin:0 auto}.history-sections{gap:14px;display:grid}.activity-summary{grid-column:1/-1}.activity-summary h2,.municipality-integration-summary h2{margin:0 0 12px;font-size:14px}.activity-summary>div{border-top:1px solid #edf1ee;gap:3px;padding:9px 0;display:grid}.activity-summary strong{font-size:var(--font-size-md)}.activity-summary small{color:var(--muted);font-size:var(--font-size-xs)}.municipality-integration-summary{margin-top:14px}.summary-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.summary-metrics span{color:var(--muted);font-size:var(--font-size-sm)}.summary-metrics strong{color:#26342c;margin-bottom:3px;font-size:16px;display:block}@media (width<=800px){.hierarchy-node{flex-wrap:wrap;align-items:flex-start}.hierarchy-actions{justify-content:flex-start;width:100%;padding-left:72px}.hierarchy-branch-content{margin-left:24px}.hierarchy-children{margin-left:14px}.summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.hierarchy-toolbar{flex-direction:column;align-items:flex-start;gap:8px}.hierarchy-actions{padding-left:0}.hierarchy-node__copy{min-width:120px}.hierarchy-branch-content{margin-left:8px;padding-right:7px}.hierarchy-councillor{flex-wrap:wrap;padding-left:16px}.summary-metrics{grid-template-columns:1fr}}.ward-filter-bar{flex-wrap:wrap}.ward-filter-bar label{min-width:235px}.ward-filter-bar select{border:1px solid var(--border);color:#455149;font-size:var(--font-size-md);background:#fff;border-radius:8px;outline:0;min-width:140px;height:40px;padding:0 26px 0 10px}.ward-table{min-width:960px}.ward-table th,.ward-table td{padding-left:10px;padding-right:10px}.ward-link:hover{color:var(--green-700);text-decoration:underline}.ward-capacity-preview{color:var(--green-700);background:#f2f8f5;border:1px solid #dceae3;border-radius:11px;align-items:center;gap:13px;margin-bottom:16px;padding:13px 15px;display:flex}.ward-capacity-preview div{gap:2px;display:grid}.ward-capacity-preview span,.ward-capacity-preview small{color:var(--muted);font-size:var(--font-size-sm)}.ward-capacity-preview strong{color:#26342c;font-size:13px}.ward-profile-identity{align-items:center;gap:15px;display:flex}.ward-profile-identity p{color:var(--green-700);font-size:var(--font-size-sm);letter-spacing:.08em;margin:0 0 4px;font-weight:700}.ward-profile-identity h1{margin:0 0 4px;font-size:23px}.ward-profile-identity div>span{color:var(--muted);font-size:var(--font-size-base)}.ward-mark{background:var(--green-100);color:var(--green-700);border-radius:50%;justify-content:center;align-items:center;width:66px;height:66px;font-size:21px;font-weight:700;display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.leadership-badge{color:#825d14;font-size:var(--font-size-xs);letter-spacing:.05em;text-transform:uppercase;background:#f8ecd2;border:1px solid #ead29c;border-radius:999px;padding:4px 8px;font-weight:800;display:inline-flex}.leadership-actions{justify-content:flex-end;align-items:center;padding:10px 14px;display:flex}.leadership-assignment-modal{max-width:620px}.setup-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-bottom:14px;display:grid}.setup-steps button{border:1px solid var(--border);color:var(--muted);text-align:left;background:#fff;border-radius:11px;grid-template-columns:34px 1fr;align-items:center;gap:2px 12px;min-height:64px;padding:9px;display:grid}.setup-steps button>span{background:#f1f4f1;border-radius:8px;grid-row:1/3;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.setup-steps button small{font-size:var(--font-size-xs);text-transform:uppercase}.setup-steps button strong{font-size:var(--font-size-md)}.setup-steps button.active{border-color:var(--green-700);color:var(--green-700);box-shadow:0 0 0 2px #176b5214}.setup-steps button.active>span,.setup-steps button.complete>span{background:var(--green-100);color:var(--green-700)}.setup-steps button:disabled{cursor:not-allowed;opacity:.5}.setup-panel{min-height:310px}.setup-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:270px;display:flex}.setup-empty>svg{color:var(--green-700)}.setup-empty h2{margin:13px 0 5px;font-size:18px}.setup-empty p{color:var(--muted);font-size:var(--font-size-base);max-width:500px;margin:0 0 18px;line-height:1.6}.setup-record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:20px;display:grid}.setup-record-grid article{border:1px solid var(--border);background:#f7faf8;border-radius:9px;gap:3px;padding:13px;display:grid}.setup-record-grid article span,.setup-record-grid article small{color:var(--muted);font-size:var(--font-size-sm)}.setup-record-grid article strong{font-size:12px}.setup-inline-empty{color:var(--muted);font-size:var(--font-size-base);text-align:center;grid-column:1/-1;padding:42px 0}.setup-review{padding:12px 0}.setup-review h2{margin:0 0 18px;font-size:18px}.setup-review>.button{margin-top:18px}.setup-navigation{justify-content:space-between;margin-top:14px;display:flex}.confirm-dialog .form-field{text-align:left;margin:16px 0}@media (width<=800px){.setup-steps{grid-template-columns:1fr}.setup-steps button{min-height:54px}.setup-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.setup-record-grid{grid-template-columns:1fr}.municipality-setup-page .page-heading .button{width:100%}}.municipality-filter-bar{flex-wrap:wrap}.municipality-filter-bar label{min-width:230px}.municipality-filter-bar select{border:1px solid var(--border);color:#455149;font-size:var(--font-size-md);background:#fff;border-radius:8px;outline:0;min-width:130px;height:40px;padding:0 26px 0 10px}.municipality-table{min-width:1120px}.municipality-name-link:hover{color:var(--green-700);text-decoration:underline}.muted-text{color:var(--muted);font-size:var(--font-size-sm)}.form-field textarea{color:#26332c;font:inherit;font-size:var(--font-size-base);resize:vertical;background:#fff;border:1px solid #dce3dd;border-radius:8px;outline:0;width:100%;padding:10px 11px}.form-field textarea:focus{border-color:var(--green-700);box-shadow:0 0 0 3px #176b521a}.form-field textarea[aria-invalid=true],.form-field select[aria-invalid=true]{border-color:#c65b50}.form-field--wide{grid-column:1/-1}.designation-preview{color:var(--green-700);background:#f2f8f5;border:1px solid #dceae3;border-radius:11px;align-items:center;gap:13px;margin-bottom:16px;padding:13px 15px;display:flex}.designation-preview div{gap:2px;display:grid}.designation-preview span,.designation-preview small{color:var(--muted);font-size:var(--font-size-sm)}.designation-preview strong{color:#26342c;font-size:14px}.municipality-profile-identity{align-items:center;gap:15px;display:flex}.municipality-profile-identity p{color:var(--green-700);font-size:var(--font-size-sm);letter-spacing:.08em;margin:0 0 4px;font-weight:700}.municipality-profile-identity h1{margin:0 0 4px;font-size:23px}.municipality-profile-identity div>span{color:var(--muted);font-size:var(--font-size-base)}.municipality-mark{background:var(--green-100);color:var(--green-700);border-radius:13px;flex:none;justify-content:center;align-items:center;width:66px;height:66px;display:flex;overflow:hidden}.municipality-mark img{object-fit:cover;width:100%;height:100%;display:block}.leadership-filter-bar{flex-wrap:wrap}.leadership-filter-bar label{min-width:220px}.leadership-filter-bar select{border:1px solid var(--border);color:#455149;font-size:var(--font-size-md);background:#fff;border-radius:8px;outline:0;min-width:130px;height:40px;padding:0 25px 0 10px}.leadership-table{min-width:960px}.leadership-table th,.leadership-table td{padding-left:10px;padding-right:10px}.leadership-link:hover{color:var(--green-700);text-decoration:underline}.tenure-status{font-size:var(--font-size-xs);border-radius:20px;padding:4px 8px;font-weight:700;display:inline-block}.tenure-status--current{color:#3974a8;background:#e7f0f8}.tenure-status--former{color:#816b45;background:#f3eee5}.leadership-context-card{color:var(--green-700);background:#f2f8f5;border:1px solid #dceae3;border-radius:11px;grid-template-columns:auto 1fr 1fr;align-items:center;gap:13px;margin:15px 0;padding:13px 15px;display:grid}.leadership-context-card div{gap:2px;display:grid}.leadership-context-card span{color:var(--muted);font-size:var(--font-size-sm)}.leadership-context-card strong{color:#26342c;text-transform:capitalize;font-size:12px}@media (width<=680px){.leadership-context-card{grid-template-columns:auto 1fr}.leadership-context-card>div:last-child{grid-column:2}}body{background:#fffaf5}.sidebar{background:#fffdf9}.sidebar__nav a:hover,.sidebar__bottom>a:hover,.table-action:hover{background:#fff7ed}.help-card,.demo-credentials{background:#fff7ed;border-color:#f3d6ad}.avatar,.mla-avatar{background:#ffecd2}.stat-card__icon--emerald{color:#c96d00;background:#fff1de}.form-field input:focus,.form-field select:focus,.form-field textarea:focus,.login-input:focus-within{box-shadow:0 0 0 3px #ff8a0029}.activity-dot{border-color:#ffecd2}.councillor-context-card,.ward-capacity-preview,.designation-preview,.leadership-context-card{background:#fff8ef;border-color:#f3d6ad}.hierarchy-children{border-left-color:#f3d6ad}.setup-steps button.active{box-shadow:0 0 0 2px #ff8a001f}.login-page{background:#fffaf5}.login-visual{background:linear-gradient(145deg,#6c3500fa,#ff8a00f0),radial-gradient(circle at 80% 18%,#ffd29c 0 2%,#0000 28%)}.login-visual__copy span,.login-visual>small{color:#ffe1bd}.login-visual__copy p{color:#fff1de}.profile-layout{grid-template-columns:minmax(0,1.7fr) minmax(270px,.8fr);gap:16px;display:grid}.profile-card{padding:24px}.profile-card__identity{border-bottom:1px solid var(--border);align-items:center;gap:16px;padding-bottom:21px;display:flex}.profile-avatar{background:var(--green-100);color:var(--green-700);border-radius:18px;flex:none;justify-content:center;align-items:center;width:68px;height:68px;font-size:18px;font-weight:800;display:flex;overflow:hidden}.profile-card__identity small{color:var(--green-700);font-size:var(--font-size-sm);letter-spacing:.1em;font-weight:800}.profile-card__identity h2{margin:5px 0 3px;font-size:18px}.profile-card__identity p{color:var(--muted);font-size:var(--font-size-md);margin:0}.profile-fields{margin:0}.profile-fields>div{border-bottom:1px solid #eef1ee;grid-template-columns:minmax(140px,.65fr) 1fr;gap:8px;padding:17px 2px;display:grid}.profile-fields>div:last-child{border-bottom:0}.profile-fields dt{color:var(--muted);font-size:var(--font-size-md);align-items:center;gap:8px;display:flex}.profile-fields dd{color:#26342c;font-size:var(--font-size-base);overflow-wrap:anywhere;margin:0;font-weight:600}.profile-edit-status{align-self:start;padding:24px}.profile-edit-status>span{background:var(--green-100);color:var(--green-700);border-radius:12px;justify-content:center;align-items:center;width:43px;height:43px;display:inline-flex}.profile-edit-status h2{margin:15px 0 7px;font-size:15px}.profile-edit-status p{color:var(--muted);font-size:var(--font-size-md);margin:0 0 17px;line-height:1.65}.spin{animation:.8s linear infinite profile-spin}@keyframes profile-spin{to{transform:rotate(360deg)}}.profile-settings-actions{flex-wrap:wrap;gap:8px;display:flex}.profile-settings-actions .button{white-space:nowrap;flex:1}.profile-refresh-error{gap:12px}.profile-refresh-error .button{min-height:auto;padding:0}.settings-modal-panel form{padding-top:0!important}.profile-edit-upload{margin-bottom:20px}.profile-edit-upload__control{cursor:pointer;background:linear-gradient(135deg,#fffaf4 0%,#fff4e5 100%);border:1px dashed #eeb96f;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:104px;padding:12px 15px;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;display:grid;position:relative}.profile-edit-upload__control:hover{border-color:var(--orange-500,#ff8a00);background:linear-gradient(135deg,#fff8ef 0%,#ffecd2 100%);transform:translateY(-1px);box-shadow:0 10px 26px #844a0817}.profile-edit-upload__control:focus-within{border-color:var(--orange-500,#ff8a00);outline:none;box-shadow:0 0 0 3px #ff8a0029}.profile-edit-upload__portrait{justify-content:flex-start;align-items:flex-start;width:78px;height:78px;display:inline-flex;position:relative}.profile-edit-upload__control .profile-avatar{background:#fff;border:3px solid #fff;border-radius:50%;width:68px;height:68px;box-shadow:0 5px 16px #6c350024}.profile-edit-upload__control .profile-avatar img{object-position:center;display:block}.profile-edit-upload__icon{color:var(--orange-500,#ff8a00);z-index:2;background:#fff;border:2px solid #ffc982;border-radius:50%;justify-content:center;align-items:center;width:27px;height:27px;display:flex;position:absolute;bottom:0;right:0;box-shadow:0 3px 9px #6c35002e}.profile-edit-upload__copy{min-width:0}.profile-edit-upload__copy strong,.profile-edit-upload__copy small{display:block}.profile-edit-upload__copy strong{color:#26342c;font-size:12px;line-height:1.3}.profile-edit-upload__copy small{color:var(--muted);font-size:var(--font-size-md);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;line-height:1.5;overflow:hidden}.profile-edit-upload__action{color:#9b5700;font-size:var(--font-size-md);white-space:nowrap;background:#fff;border:1px solid #edc58f;border-radius:9px;padding:9px 13px;font-weight:750}.profile-edit-upload__control:hover .profile-edit-upload__action{background:var(--orange-500,#ff8a00);border-color:var(--orange-500,#ff8a00);color:#fff}.profile-edit-upload__control input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.profile-edit-upload .form-error{margin:7px 2px 0;display:block}@media (width<=560px){.profile-edit-upload__control{grid-template-columns:auto minmax(0,1fr);gap:12px;min-height:100px;padding:10px 12px}.profile-edit-upload__portrait{width:74px;height:74px}.profile-edit-upload__control .profile-avatar{width:64px;height:64px}.profile-edit-upload__action{display:none}}.settings-password-grid{gap:15px;display:grid}.settings-password-mark{color:var(--orange-500,#ff8a00);background:#fff1de;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.settings-password-input{display:block;position:relative}.settings-password-input input{padding-right:42px}.settings-password-input button{color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:40px;height:100%;padding:0;display:flex;position:absolute;top:0;right:0}@media (width<=800px){.profile-layout,.profile-fields>div{grid-template-columns:1fr}}.api-hierarchy-heading-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.api-hierarchy-tree>.api-state{min-height:220px}.api-hierarchy-root--unassigned{border-color:#efcf9c}.api-hierarchy-root--unassigned .hierarchy-node--mla{background:#fffaf2}.api-hierarchy-root .record-status,.api-hierarchy-municipality .record-status{flex:none}.api-hierarchy-root>.hierarchy-children{border-left:0}.api-hierarchy-municipalities{display:grid}.api-hierarchy-municipality-list{border-left:2px solid #f3d6ad}.api-hierarchy-branch-summary{color:var(--muted);font-size:var(--font-size-md);padding:8px 14px 0;font-weight:700}.api-hierarchy-municipality{border-bottom:1px solid var(--border)}.api-hierarchy-municipality:last-of-type{border-bottom:0}.api-hierarchy-root-pagination{padding:10px 14px}.api-hierarchy-no-mla{order:2}.api-hierarchy-branch-grid{grid-template-columns:minmax(220px,.7fr) minmax(0,2fr);gap:10px;display:grid}.api-hierarchy-branch-grid>section{border:1px solid var(--border);background:#fff;border-radius:9px;padding:11px}.api-hierarchy-branch-grid h3{font-size:var(--font-size-base);margin:0 0 9px}.api-hierarchy-branch-grid .api-state{min-height:130px}.api-hierarchy-assignment-list{gap:8px;display:grid}.api-hierarchy-assignment-list>div{background:#f7faf8;border-radius:7px;align-items:center;gap:3px;padding:9px;display:grid}.api-hierarchy-assignment-list>div>span:first-child{color:var(--muted);font-size:var(--font-size-sm);text-transform:uppercase}.api-hierarchy-assignment-list strong{font-size:var(--font-size-md)}.api-hierarchy-assignment-list .assignment-badge{justify-self:start}.api-hierarchy-ward-section .pagination-bar{margin:10px 0 0;padding:12px 0 0}.api-hierarchy-ward-section .hierarchy-councillor .assignment-badge{margin-left:auto}.api-hierarchy-councillor-section{grid-column:1/-1}.api-hierarchy-councillor-links{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:7px;display:grid}.api-hierarchy-councillor-links a{background:#f7faf8;border-radius:7px;gap:2px;padding:9px;display:grid}.api-hierarchy-councillor-links strong{color:#26342c;font-size:var(--font-size-md)}.api-hierarchy-councillor-links small{color:var(--muted);font-size:var(--font-size-sm)}.api-hierarchy-ward-section .hierarchy-icon svg,.api-hierarchy-root .hierarchy-icon svg{width:17px;height:17px}@media (width<=900px){.api-hierarchy-branch-grid{grid-template-columns:1fr}}.api-setup-heading-actions{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.api-setup-heading-actions small{color:var(--muted);font-size:var(--font-size-sm)}.api-setup-steps{grid-template-columns:repeat(7,minmax(0,1fr))}.api-setup-steps .setup-step--locked{opacity:.42}.api-setup-steps .setup-step--incomplete{border-style:dashed}.api-setup-panel{min-height:420px}.api-setup-inline-form{grid-template-columns:minmax(220px,1fr) auto;align-items:end;gap:10px;margin-bottom:18px;display:grid}.api-setup-inline-form .form-banner{grid-column:1/-1}.api-setup-mode{gap:8px;margin-bottom:18px;display:flex}.api-setup-assign{gap:14px;max-width:620px;display:grid}.api-setup-assign>.button{justify-self:end}.api-setup-ward-options{border:1px solid var(--border);border-radius:9px;grid-column:1/-1;gap:7px;margin:0;padding:13px;display:grid}.api-setup-ward-options legend{color:var(--muted);font-size:var(--font-size-md);padding:0 5px;font-weight:700}.api-setup-ward-options label{font-size:var(--font-size-md);align-items:center;gap:7px;display:flex}.api-setup-ward-options input{accent-color:var(--green-700)}.api-setup-assignment-list,.api-setup-review-list{gap:8px;display:grid}.api-setup-assignment-list article{border:1px solid var(--border);border-radius:9px;grid-template-columns:minmax(160px,1fr) auto auto;align-items:center;gap:12px;padding:11px;display:grid}.api-setup-assignment-list article>div{gap:3px;display:grid}.api-setup-assignment-list small{color:var(--muted);font-size:var(--font-size-sm)}.api-chairperson-control,.api-mla-assignment-control,.api-ward-councillor-control{grid-template-columns:minmax(280px,.58fr) minmax(0,1.42fr);align-items:start;gap:16px;display:grid}.chairperson-modal-context{background:linear-gradient(135deg,#fff8ef 0%,#fffdf9 60%,#f2faf6 100%);border:1px solid #eadcc9;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 16px;display:grid}.chairperson-modal-context__icon{color:var(--orange-500,#ff8a00);background:#fff0dc;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.chairperson-modal-context__identity{gap:2px;min-width:0;display:grid}.chairperson-modal-context__identity small,.chairperson-modal-context__meta small{color:#8a6a48;font-size:var(--font-size-xs);letter-spacing:.07em;font-weight:800}.chairperson-modal-context__identity h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:17px;overflow:hidden}.chairperson-modal-context__identity span{color:var(--muted);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chairperson-modal-context__meta{align-items:center;gap:14px;display:flex}.chairperson-modal-context__meta>div{border-right:1px solid #eadfce;gap:3px;max-width:210px;padding-right:14px;display:grid}.chairperson-modal-context__meta strong{font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chairperson-modal-workspace{margin-top:14px}.chairperson-modal-workspace>.api-state{min-height:260px}.chairperson-current-card,.chairperson-selection-panel{border:1px solid var(--border);border-radius:12px;min-width:0;overflow:hidden}.chairperson-current-card{background:linear-gradient(145deg,#fff8ef 0%,#fff 62%,#f4faf7 100%);border-color:#efdcc3;gap:15px;padding:16px;display:grid}.chairperson-current-card--vacant{border-color:var(--border);background:#fafbf9}.chairperson-current-card>header,.chairperson-selection-panel__header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chairperson-current-card>header>div{align-items:center;gap:10px;display:flex}.chairperson-section-icon{color:var(--orange-500,#ff8a00);background:#fff0dc;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.chairperson-current-card small,.chairperson-selection-panel__header small{color:#8a6a48;font-size:var(--font-size-xs);letter-spacing:.07em;font-weight:800}.chairperson-current-card h3,.chairperson-selection-panel h3{margin:3px 0 0;font-size:16px}.chairperson-current-card__identity{background:#ffffffc2;border:1px solid #e8d3b7cc;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:12px;display:grid}.chairperson-avatar,.chairperson-candidate-avatar{color:#c96900;font-size:var(--font-size-md);background:#fff0dc;border-radius:50%;flex:none;justify-content:center;align-items:center;width:42px;height:42px;font-weight:800;display:flex}.chairperson-current-card__identity>div{gap:3px;min-width:0;display:grid}.chairperson-current-card__identity strong{font-size:var(--font-size-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chairperson-current-card__identity span{color:var(--muted);font-size:var(--font-size-sm);line-height:1.4}.chairperson-current-card__facts{grid-template-columns:1fr;gap:8px;display:grid}.chairperson-current-card__facts>span:not(.record-status){color:#536159;font-size:var(--font-size-sm);align-items:center;gap:7px;min-width:0;display:flex}.chairperson-current-card__facts>span svg{color:#b96a14;flex:none}.chairperson-current-card__facts .record-status{justify-self:start}.chairperson-current-card>p{color:#53675d;font-size:var(--font-size-sm);background:#edf7f2d1;border:1px solid #dcece4;border-radius:8px;align-items:flex-start;gap:7px;margin:0;padding:9px 10px;line-height:1.45;display:flex}.chairperson-current-card>p svg{flex:none;margin-top:2px}.api-chairperson-control .chairperson-selection-panel,.api-ward-councillor-control .chairperson-selection-panel{background:#fff;padding:0;display:grid}.chairperson-selection-panel__header{border-bottom:1px solid var(--border);padding:15px 16px}.chairperson-selection-panel__header>div{min-width:0}.chairperson-selection-panel__header p{color:var(--muted);font-size:var(--font-size-sm);margin:4px 0 0}.chairperson-selection-panel__header>span{color:#287457;font-size:var(--font-size-xs);white-space:nowrap;background:#edf7f2;border-radius:999px;padding:6px 9px;font-weight:800}.chairperson-selection-panel>.form-banner{margin:12px 16px 0}.chairperson-search-row{grid-template-columns:minmax(220px,560px) auto;align-items:center;gap:12px;padding:13px 16px 10px;display:grid}.chairperson-search-row>span{color:var(--muted);font-size:var(--font-size-sm);white-space:nowrap;justify-self:end}.chairperson-candidate-list{border-left:0;border-right:0;border-radius:0;max-height:330px;margin:0}.chairperson-candidate-list label{grid-template-columns:auto auto minmax(0,1fr) auto;gap:11px;padding:11px 16px;transition:background .16s,box-shadow .16s;position:relative}.chairperson-candidate-list label:hover{background:#fafcfb}.chairperson-candidate-list label.is-selected{box-shadow:inset 3px 0 0 var(--orange-500,#ff8a00);background:#fff8ef}.chairperson-candidate-list input{width:16px;height:16px}.chairperson-candidate-avatar{color:#287457;background:#edf7f2;width:34px;height:34px}.chairperson-candidate-copy{gap:3px;min-width:0;display:grid}.chairperson-candidate-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.chairperson-candidate-copy small{flex-wrap:wrap;align-items:center;gap:5px 13px;margin:0;display:flex}.chairperson-candidate-copy small span{align-items:center;gap:4px;display:inline-flex}.chairperson-candidate-copy small svg{flex:none}.chairperson-selection-panel>.api-state{border-radius:0;min-height:190px;margin:0}.chairperson-selection-actions{justify-content:space-between;align-items:center;margin:0;padding:14px 16px}.chairperson-selection-actions>div{align-items:center;gap:8px;display:flex}.chairperson-remove-button{color:#a84940;border-color:#e8c7c2}.chairperson-remove-button:hover{color:#913a32;background:#fdf1ef;border-color:#dca9a2}.api-setup-review-list{margin:18px 0}.api-setup-review-list article{font-size:var(--font-size-md);background:#f7faf8;border-radius:8px;grid-template-columns:1fr 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.api-setup-review-list a{color:var(--green-700)}.setup-record-grid article a{color:var(--green-700);font-size:var(--font-size-sm);margin-top:5px;font-weight:700}@media (width<=1100px){.api-setup-steps{grid-template-columns:repeat(4,minmax(0,1fr))}.api-chairperson-control,.api-mla-assignment-control,.api-ward-councillor-control{grid-template-columns:1fr}}@media (width<=700px){.api-setup-steps,.api-setup-inline-form,.api-setup-assignment-list article{grid-template-columns:1fr}.api-setup-heading-actions{align-items:stretch}.api-setup-review-list article{grid-template-columns:1fr}.chairperson-modal-context{grid-template-columns:auto minmax(0,1fr);align-items:start}.chairperson-modal-context__meta{grid-column:1/-1;justify-content:space-between;align-items:flex-start;width:100%}.chairperson-modal-context__meta>div{max-width:none}.chairperson-search-row{grid-template-columns:1fr;align-items:stretch}.chairperson-search-row>span{justify-self:start}.chairperson-candidate-list label{grid-template-columns:auto auto minmax(0,1fr);align-items:start}.chairperson-candidate-list .record-status{grid-column:3;justify-self:start}.chairperson-selection-actions,.chairperson-selection-actions>div{flex-direction:column;align-items:stretch;width:100%}.chairperson-selection-actions .button{width:100%}}.sr-only{clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skeleton-loader{background:#fff;border-radius:10px;width:100%;min-height:220px;padding:18px;overflow:hidden}.skeleton-loader--compact{min-height:108px;padding:12px}.skeleton-block{background:linear-gradient(90deg,#edf1ee 24%,#f8faf8 45%,#edf1ee 66%) 0 0/300% 100%;border-radius:7px;animation:1.35s ease-in-out infinite skeleton-shimmer;display:block}.skeleton-line{max-width:100%;height:9px}.skeleton-toolbar,.skeleton-table-heading,.skeleton-table-row,.skeleton-detail-hero,.skeleton-list>div{align-items:center;gap:14px;display:flex}.skeleton-toolbar{justify-content:space-between;margin-bottom:20px}.skeleton-table-heading{background:#f7f9f7;border-radius:8px;justify-content:space-between;padding:12px}.skeleton-table-row{border-bottom:1px solid #eef1ef;min-height:47px;padding:8px 12px}.skeleton-avatar{border-radius:50%;flex:0 0 28px;width:28px;height:28px}.skeleton-detail-hero{border-bottom:1px solid #edf0ee;padding-bottom:18px}.skeleton-detail-mark{flex:0 0 58px;height:58px}.skeleton-detail-hero>div{flex:1;gap:9px;display:grid}.skeleton-detail-grid,.skeleton-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.skeleton-detail-card,.skeleton-card{border:1px solid #edf0ee;border-radius:9px;gap:12px;padding:15px;display:grid}.skeleton-card-icon{width:32px;height:32px}.skeleton-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.skeleton-form label{gap:8px;display:grid}.skeleton-input{height:42px}.skeleton-list{gap:4px;display:grid}.skeleton-list>div{border-bottom:1px solid #eef1ef;padding:8px 4px}.skeleton-list>div>span:last-child{flex:1;gap:7px;display:grid}.skeleton-chart{gap:18px;min-height:190px;display:grid}.skeleton-chart-area{height:150px}.official-selector__results .skeleton-loader{border-radius:5px;min-height:0;padding:2px}.official-selector__results .skeleton-list>div{min-height:40px}@keyframes skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.api-form-panel--ward{max-width:none}.api-route-modal__body .api-form-panel--ward form{padding-top:0}.ward-form{gap:16px;display:grid}.ward-form-context{background:linear-gradient(135deg,#fff8ef 0%,#fffdf9 62%,#f4faf7 100%);border:1px solid #efd7b7;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:14px 15px;display:grid}.ward-form-context__icon{color:var(--orange-500,#ff8a00);background:#fff;border:1px solid #efd8b9;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex;box-shadow:0 5px 13px #80480a12}.ward-form-context__copy{gap:2px;min-width:0;display:grid}.ward-form-context__copy small{color:#8a6b49;font-size:var(--font-size-xs);letter-spacing:.08em;font-weight:800}.ward-form-context__copy strong{color:#26342c;text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.ward-form-context__copy>span{color:var(--muted);font-size:var(--font-size-sm);align-items:center;gap:4px;display:flex}.ward-form-context__lock{color:#866647;font-size:var(--font-size-xs);white-space:nowrap;background:#fff;border:1px solid #e5d3ba;border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-weight:750;display:inline-flex}.ward-form-editor{border:1px solid #dfe6e1;border-radius:13px;overflow:hidden}.ward-form-editor>header{background:#fbfcfb;border-bottom:1px solid #e7ebe8;justify-content:space-between;align-items:flex-start;padding:14px 16px;display:flex}.ward-form-editor>header small{color:#8b6e4e;font-size:var(--font-size-xs);letter-spacing:.08em;font-weight:800}.ward-form-editor>header h2{color:#2a3830;margin:3px 0 2px;font-size:15px}.ward-form-editor>header p{color:var(--muted);font-size:var(--font-size-sm);margin:0}.ward-form-editor>header>span{color:#a45c09;font-size:var(--font-size-xs);background:#fff1de;border-radius:999px;padding:5px 8px;font-weight:800}.ward-form-editor__body{grid-template-columns:minmax(0,1.08fr) minmax(220px,.92fr);align-items:stretch;gap:14px;padding:16px;display:grid}.api-form-panel--ward .ward-number-field{justify-content:center;max-width:none}.ward-number-control{color:#9aa39d;background:#fff;border:1px solid #d7dfda;border-radius:9px;align-items:center;min-height:48px;padding-left:13px;transition:border-color .18s,box-shadow .18s;display:flex;overflow:hidden}.ward-number-control:focus-within{border-color:var(--orange-500,#ff8a00);color:var(--orange-500,#ff8a00);box-shadow:0 0 0 3px #ff8a0024}.ward-number-control.is-invalid{border-color:#c65b50}.form-field .ward-number-control input{box-shadow:none;border:0;border-radius:0;min-width:0;height:46px;padding:0 12px 0 9px;font-size:17px;font-weight:700}.form-field .ward-number-control input::placeholder{color:#939d97;font-weight:500}.form-field .ward-number-control input:focus{box-shadow:none}.ward-number-hint{color:var(--muted);font-size:var(--font-size-sm)}.ward-form-preview{background:#f7f9f8;border:1px dashed #d7dfda;border-radius:10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-height:96px;padding:13px;transition:background .18s,border-color .18s;display:grid}.ward-form-preview.is-ready{background:#f3faf6;border-color:#bcdcca}.ward-form-preview__number{color:#8b9690;background:#fff;border:1px solid #e0e6e2;border-radius:9px;justify-content:center;align-items:center;min-width:42px;height:42px;padding:0 8px;font-size:18px;font-weight:850;display:flex}.ward-form-preview.is-ready .ward-form-preview__number{color:#287457;border-color:#cde5d8}.ward-form-preview>div{gap:2px;min-width:0;display:grid}.ward-form-preview small{color:#7b8780;font-size:var(--font-size-xs);letter-spacing:.06em;font-weight:800}.ward-form-preview strong{color:#2f3d35;font-size:var(--font-size-base)}.ward-form-preview>div>span{color:var(--muted);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ward-form-preview>svg{color:#287457}.ward-form-actions{justify-content:space-between;align-items:center;margin-top:0;padding-top:15px}.ward-form-actions>p{color:var(--muted);font-size:var(--font-size-sm);align-items:center;gap:5px;margin:0;display:flex}.ward-form-actions>div{gap:8px;display:flex}.api-setup-ward-form{grid-template-columns:minmax(220px,360px) auto;justify-content:start}.setup-record-grid.setup-ward-grid,.setup-record-grid.setup-councillor-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.setup-record-grid .setup-record-card{background:#fff;border-color:#dfe7e2;gap:12px;padding:14px}.setup-record-card__heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.setup-record-card__heading>div{gap:2px;min-width:0;display:grid}.setup-record-card__heading>div>small{font-size:var(--font-size-xs);letter-spacing:.08em;font-weight:750}.setup-record-card__heading>div>strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setup-record-card__heading>div>span{color:var(--muted);font-size:var(--font-size-sm)}.setup-record-card__icon,.setup-record-card__avatar{color:var(--orange-500,#ff8a00);background:#fff1de;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.setup-record-card__avatar{font-size:var(--font-size-md);border-radius:50%;font-weight:800}.setup-record-card__meta{background:#f7faf8;border-radius:7px;gap:3px;padding:9px 10px;display:grid}.setup-record-card__meta span{color:var(--muted);font-size:var(--font-size-xs);text-transform:uppercase}.setup-record-card__meta strong{font-size:var(--font-size-md);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setup-record-grid article .setup-record-card__action{color:#34473d;font-size:var(--font-size-sm);justify-self:start;align-items:center;margin-top:0;display:inline-flex}.councillor-table-identity{color:inherit;align-items:center;gap:9px;min-width:180px;display:inline-flex}.councillor-table-identity>span:first-child{color:#247354;font-size:var(--font-size-sm);background:#e6f4ee;border-radius:50%;flex:0 0 30px;justify-content:center;align-items:center;height:30px;font-weight:800;display:flex}.councillor-table-identity>span:last-child{gap:2px;display:grid}.councillor-table-identity small{color:var(--muted);font-size:var(--font-size-xs)}.api-structured-filter-grid--councillors{grid-template-columns:minmax(260px,420px) minmax(260px,420px) minmax(160px,220px);justify-content:start}@media (width<=1100px){.api-structured-filter-grid--councillors{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.skeleton-detail-grid,.skeleton-card-grid,.skeleton-form,.api-setup-ward-form,.ward-form-editor__body{grid-template-columns:1fr}.ward-form-actions{flex-direction:column;align-items:stretch}.ward-form-actions>div{width:100%}.ward-form-actions .button{flex:1}.api-structured-filter-grid--councillors{grid-template-columns:1fr}}@media (width<=480px){.ward-form-context{grid-template-columns:auto minmax(0,1fr);align-items:start}.ward-form-context__lock{grid-column:2;justify-self:start}.ward-form-editor>header{gap:10px}.ward-form-actions>div{flex-direction:column-reverse}.ward-form-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){.skeleton-block,.official-selector__refresh-indicator svg{animation:none}}.setup-review--complete{gap:18px;padding:0;display:grid}.setup-review__hero{background:linear-gradient(135deg,#fff8ef 0%,#fffdf9 62%,#f3fbf7 100%);border:1px solid #efd9bb;border-radius:12px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:18px;display:grid}.setup-review__hero-mark{background:var(--orange-500,#ff8a00);color:#fff;border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 8px 18px #cf690033}.setup-review__hero p{color:#b65d00;font-size:var(--font-size-xs);letter-spacing:.1em;margin:0 0 4px;font-weight:800}.setup-review__hero h2{margin:0;font-size:18px}.setup-review__hero>div>span{color:var(--muted);font-size:var(--font-size-md);margin-top:4px;display:block}.setup-review__ready{color:#247354;font-size:var(--font-size-sm);white-space:nowrap;background:#e5f5ed;border:1px solid #cce9dc;border-radius:999px;align-items:center;gap:5px;padding:7px 10px;font-weight:800;display:inline-flex}.setup-review__section{border:1px solid var(--border);border-radius:12px;overflow:hidden}.setup-review__section-heading{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.setup-review__section-heading h3{margin:0;font-size:13px}.setup-review__section-heading p{color:var(--muted);font-size:var(--font-size-sm);margin:3px 0 0}.setup-review__section-heading>span{color:#516159;font-size:var(--font-size-xs);white-space:nowrap;background:#f3f6f4;border-radius:999px;padding:6px 9px;font-weight:750}.setup-review__overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 16px 10px;display:grid}.setup-review__overview-card{background:#f8faf9;border:1px solid #e5eae7;border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-height:78px;padding:12px;display:grid}.setup-review__overview-card--municipality{background:#fff9f1;border-color:#f1dfc7}.setup-review__overview-icon{color:var(--orange-500,#ff8a00);background:#fff;border:1px solid #e5eae7;border-radius:9px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.setup-review__overview-card>div{gap:2px;min-width:0;display:grid}.setup-review__overview-card small{color:var(--muted);font-size:var(--font-size-xs);text-transform:uppercase;font-weight:700}.setup-review__overview-card strong{font-size:var(--font-size-base);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setup-review__overview-card>div>span{color:var(--muted);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.setup-review__counts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 16px 16px;display:grid}.setup-review__counts article{border:1px solid #e8ece9;border-radius:9px;align-items:center;gap:9px;padding:9px 11px;display:flex}.setup-review__count-icon{color:#247354;background:#e8f5ef;border-radius:8px;justify-content:center;align-items:center;width:31px;height:31px;display:flex}.setup-review__counts article>div{flex:1;justify-content:space-between;display:flex}.setup-review__counts small{color:var(--muted);font-size:var(--font-size-sm)}.setup-review__counts strong{font-size:14px}.setup-review__coverage .table-scroll,.setup-review__coverage>.pagination-bar{margin:0}.setup-review__ward-table{min-width:650px}.setup-review__ward-table th{background:#f7f9f8}.setup-review__ward-table td:first-child a{color:#26342c;align-items:center;gap:8px;display:inline-flex}.setup-review__ward-icon{color:var(--orange-500,#ff8a00);background:#fff0dc;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.setup-review__ward-table tbody tr:last-child td{border-bottom:0}.setup-review__finish{background:#f3faf6;border:1px solid #d3eade;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.setup-review__finish>div{align-items:center;gap:10px;display:flex}.setup-review__finish-mark{color:#247354;background:#dff2e8;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;height:34px;display:flex}.setup-review__finish strong,.setup-review__finish>div div>span{display:block}.setup-review__finish strong{font-size:var(--font-size-base)}.setup-review__finish>div div>span{color:var(--muted);font-size:var(--font-size-sm);margin-top:3px}.setup-review__ready--inactive{color:#8a641d;background:#fbf1dc;border-color:#ecd8ab}.setup-municipality-summary__grid{grid-template-columns:repeat(3,minmax(0,1fr));padding-bottom:14px}.setup-mla-summary__grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:14px}.setup-municipality-summary__address{grid-column:1/-1}.setup-municipality-summary .record-status{justify-self:start;width:fit-content}.setup-municipality-summary .setup-review__overview-card .record-status--active{color:#327758}.setup-municipality-summary .setup-review__overview-card .record-status--inactive{color:#9a6e1c}.setup-municipality-summary .setup-review__section-heading .button,.setup-mla-summary .setup-review__section-heading .button{white-space:nowrap;justify-content:center}.setup-municipality-summary__warning{margin:0}.setup-mla-summary__guidance{background:#f3faf6;border:1px solid #d3eade;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:13px 15px;display:grid}.setup-mla-summary__guidance>span{color:#247354;background:#dff2e8;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.setup-mla-summary__guidance strong{color:#2f3d35;font-size:var(--font-size-base)}.setup-mla-summary__guidance p{color:var(--muted);font-size:var(--font-size-sm);margin:3px 0 0;line-height:1.45}@media (width<=900px){.setup-review__overview-grid{grid-template-columns:1fr}.setup-review__hero{grid-template-columns:auto minmax(0,1fr)}.setup-review__ready{grid-column:1/-1;justify-self:start}}@media (width<=600px){.setup-review__hero{grid-template-columns:1fr;align-items:start}.setup-review__hero-mark{width:42px;height:42px}.setup-review__overview-grid,.setup-review__counts{grid-template-columns:1fr}.setup-review__section-heading,.setup-review__finish{flex-direction:column;align-items:flex-start}.setup-review__finish .button{width:100%}}.sidebar__context strong,.sidebar__nav a,.sidebar__bottom>a,.page-heading span,.login-input input,.councillor-context-card strong,.ward-capacity-preview strong,.setup-record-grid article strong,.leadership-context-card strong,.profile-edit-upload__copy strong{font-size:var(--font-size-base)}.panel__header h2,.relationship-summary h2,.danger-zone h2,.api-structured-filter-header h2,.activity-summary h2,.municipality-integration-summary h2,.setup-review__section-heading h3{font-size:16px}.empty-state p{font-size:var(--font-size-base)}@media (width<=600px){input,select,textarea{font-size:16px!important}}
