.city-analytics { box-sizing:border-box; position:relative; background:#f1efeb; color:#111212; border-block:1px solid #d7d5d0; font-family:Arial,sans-serif; scroll-margin-top:120px; }
.city-analytics *, .city-analytics *::before, .city-analytics *::after { box-sizing:border-box; }
.city-analytics[hidden], .city-analytics [hidden] { display:none !important; }
.city-analytics__inner { width:min(calc(100% - 40px),1280px); margin-inline:auto; padding-block:16px; }
.city-analytics__panel { display:flex; align-items:center; gap:24px; }
.city-analytics__copy { flex:1 1 auto; min-width:0; }
.city-analytics h2 { margin:0 0 5px; font-family:Arial,sans-serif; font-size:16px; line-height:1.4; font-weight:700; letter-spacing:normal; text-transform:none; color:#111212; }
.city-analytics p { margin:0; max-width:78ch; font-family:Arial,sans-serif; font-size:14px; line-height:1.5; color:#111212; }
.city-analytics a { color:#111212; text-decoration:underline; text-underline-offset:3px; }
.city-analytics__actions { display:flex; flex:0 0 auto; gap:10px; }
.city-analytics__actions button { min-height:44px; min-width:144px; margin:0; padding:10px 14px; border:1px solid #111212; border-radius:4px; color:#111212; background:#fff; font-family:Arial,sans-serif; font-size:14px; line-height:1.4; font-weight:700; letter-spacing:normal; text-transform:none; cursor:pointer; }
.city-analytics__actions button:hover { background:#f8f7f4; }
.city-analytics__saved { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.city-analytics__panel:not([hidden]) + .city-analytics__saved { margin-top:12px; }
.city-analytics__saved span, .city-analytics .city-analytics__note { font-size:12px; line-height:1.5; color:#515350; }
.city-analytics .city-analytics__note { margin-top:9px; }
.city-analytics__toggle { flex:0 0 auto; min-height:44px; margin:0; padding:8px 0; border:0; color:#111212; background:transparent; font-family:Arial,sans-serif; font-size:13px; font-weight:700; line-height:1.5; text-transform:none; letter-spacing:normal; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.city-analytics :focus-visible { outline:3px solid #111212; outline-offset:3px; box-shadow:0 0 0 6px #fff; }
@media(max-width:920px) { .city-analytics__panel { flex-wrap:wrap; align-items:flex-start; gap:12px; } .city-analytics__copy { flex-basis:100%; } .city-analytics--footer .city-analytics__inner { padding-bottom:calc(90px + env(safe-area-inset-bottom,0px)); } }
@media(max-width:600px) { .city-analytics__inner { width:calc(100% - 32px); } .city-analytics__actions { width:100%; } .city-analytics__actions button { flex:1 1 0; min-width:0; padding-inline:10px; } .city-analytics__saved { align-items:flex-start; } }
