*{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100%;background:#f8f9fb}:root{--outlier-red: #F72D5A}#story-page{max-width:680px;margin:30px auto;padding:52px 24px 100px;background:#fff;box-shadow:0 2px 24px #00000012}#story-card h1{font-size:3rem;font-weight:900;color:#0a1e3c;margin-bottom:20px;line-height:1.2;font-family:Inter,sans-serif;text-wrap:balance}#story-card h2{font-size:1.5rem;font-weight:700;color:#f72d5a;margin-bottom:20px;line-height:1.3;font-family:Inter,sans-serif;text-wrap:balance}#story-card .pub-date{font-size:.8rem;font-weight:500;color:#000;font-family:Inter,sans-serif;margin:50px 0 20px;letter-spacing:.03em;text-transform:uppercase;font-weight:800;border-top:solid 2px rgb(0,0,0);border-bottom:solid 1px lightgray;padding:10px 0}#story-card .intro{font-size:1rem;font-weight:400;line-height:1.5;color:#333;margin-bottom:24px;font-family:Inter,sans-serif}#story-card .story{font-size:1rem;line-height:1.7;color:#333;margin-bottom:16px;font-family:Inter,sans-serif}#story-card .section-label{font-size:1.5rem;font-weight:800;color:#000;font-family:Inter,sans-serif;margin:40px 0 15px}#story-card .source-note{font-size:.75rem;color:#888;margin-top:24px;padding-top:16px;border-top:1px solid #eee;line-height:1.5;font-family:Inter,sans-serif}#story-card blockquote{border-left:3px solid #000;margin:20px 0 20px 20px;padding:12px 20px;background:#f5f5f1;border-radius:0 6px 6px 0}#story-card blockquote p{font-size:15px;line-height:1.65;color:var(--outlier-red);margin-bottom:8px;font-family:Inter,sans-serif}#story-card blockquote cite{font-size:12px;color:#000;font-style:normal;font-family:Inter,sans-serif}#story-card .bylaw-box{background:#f0f4ff;border:1px solid #c7d2fe;border-radius:8px;padding:16px 20px;margin:20px 0}#story-card .bylaw-box .bylaw-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#000;margin-bottom:8px;font-family:Inter,sans-serif}#story-card .bylaw-box p{font-size:13px;line-height:1.6;color:#333;font-family:Inter,sans-serif}#story-card .bylaw-title{font-size:1.2rem!important}#map-panel{position:fixed;top:0;right:0;width:62%;height:100vh;z-index:900;transform:translate(100%);transition:transform .35s cubic-bezier(.4,0,.2,1);box-shadow:-6px 0 32px #0000002e}#map-panel.open{transform:translate(0)}#map{height:100%;width:100%}#map-toggle{position:fixed;top:20px;right:20px;z-index:1100;background:#0a1e3c;color:#fff;border:none;border-radius:8px;padding:11px 18px;font-size:14px;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;letter-spacing:.03em;transition:background .15s;box-shadow:0 2px 12px #0003}#map-toggle:hover{background:#f72d5a}#mini-map-wrapper{position:relative;width:100%;margin-bottom:22px}#mini-map{width:100%;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;border:1px solid #eee;pointer-events:none;position:relative;isolation:isolate}#mini-map-explore{position:absolute;bottom:10px;right:10px;background:#0a1e3c;color:#fff;border:none;border-radius:6px;padding:7px 13px;font-size:12px;font-weight:600;cursor:pointer;font-family:Inter,sans-serif;letter-spacing:.03em;transition:background .15s;box-shadow:0 2px 8px #00000040;z-index:10}#mini-map-explore:hover{background:#f72d5a}#mini-map-caption{font-size:11px;color:#999;text-align:center;margin-top:-16px;margin-bottom:22px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}.stat-box{background:#f4f7fb;border-radius:8px;padding:14px 16px;font-family:Inter,sans-serif}.stat-box .label{font-size:.75rem;font-weight:600;font-family:Inter,sans-serif;text-transform:uppercase;letter-spacing:.06em;color:#494949;margin-bottom:4px}.stat-box .value{font-size:2rem;font-weight:900;font-family:Inter,sans-serif;color:#0a1e3c;line-height:1.2}.stat-box .sub{font-size:.75rem;font-family:Inter,sans-serif;color:#666;margin-top:3px}.stat-box.accent .value{color:#f72d5a}.info{padding:10px 14px;background:#fff;border-radius:6px;box-shadow:0 1px 5px #0000004d;font:14px/1.5 Inter,sans-serif;min-width:180px}.info h4{margin-bottom:6px;font-size:15px;color:#333}.info .ward-name{font-weight:700;color:#111}.info .count{font-size:22px;font-weight:700;color:#f72d5a}.info .no-data{color:#999;font-style:italic}.legend{padding:10px 14px;background:#fff;border-radius:6px;box-shadow:0 1px 5px #0000004d;font:13px/1.6 Inter,sans-serif;line-height:22px}.legend h4{margin-bottom:6px;font-size:14px;color:#333}.legend i{display:inline-block;width:18px;height:18px;margin-right:6px;vertical-align:middle;border-radius:2px;opacity:.85}.chart-block{position:relative;margin:8px 0 24px;background:#f5f5f2;padding:20px 20px 12px}.chart-block:before{content:"";position:absolute;top:0;left:0;width:10%;height:8px;background:#f72d5a}.chart-block canvas{display:block}.chart-title{font-size:1.5rem;font-weight:700;color:#0a1e3c;font-family:Fira Sans Condensed,sans-serif;margin-bottom:2px}.chart-subtitle{font-size:.95rem;font-weight:400;color:#000;font-family:Inter,sans-serif;margin-bottom:14px}.chart-note{font-size:.75rem;color:#888;margin-top:10px;line-height:1.5;font-family:Inter,sans-serif}@media(max-width:768px){#map-panel{width:100%}#map-toggle{top:auto;bottom:20px;right:20px}}@media(max-width:600px){#story-card h1{font-size:2.5rem}#story-card h2{font-size:1.2rem}#story-card .intro{font-size:1rem}#story-card .story{font-size:.95rem}.chart-title{font-size:1.2rem}}.line-spacer{margin-top:30px!important;margin-bottom:30px}
