.city-footer-links{grid-template-columns:1fr 1fr 1fr}.cf-group summary{list-style:none;font-size:14px;font-weight:750;color:#222;margin:0 0 15px;cursor:default}.cf-group summary::-webkit-details-marker{display:none}.cf-group-links{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.city-footer .city-footer-invite p{color:#555}.city-footer-wordmark>span{margin-left:0}.city-footer :is(button,a,summary):focus-visible,.cf-dialog :focus-visible{outline:3px solid #0075d4;outline-offset:4px}.cf-dialog{border:0;border-radius:24px;padding:30px;width:min(520px,calc(100% - 32px));max-height:85dvh;overflow:auto;box-sizing:border-box;color:#171717;font-family:inherit}.cf-dialog::backdrop{background:#0007;backdrop-filter:blur(4px)}.cf-dialog h2{margin:0 30px 12px 0;font-size:26px}.cf-dialog p{font-size:14px;line-height:1.6}.cf-close{position:absolute;right:12px;top:12px;width:44px;height:44px;border:0;background:#f3f3f3;border-radius:50%;font-size:24px;cursor:pointer}.cf-dialog label{display:grid;gap:7px;margin:16px 0;font-size:14px;font-weight:600}.cf-dialog :is(input,select,textarea){box-sizing:border-box;width:100%;border:1px solid #ccc;border-radius:10px;padding:12px;font:inherit;background:white;color:#171717}.cf-dialog textarea{resize:vertical}.cf-dialog .cf-note{font-size:12px;color:#666}.cf-submit{width:100%;min-height:46px;background:var(--action-primary,#0075d4);border:0;border-radius:24px;color:white;font:600 14px inherit;cursor:pointer}.cf-submit:hover{background:var(--action-primary-hover,#005da7)}.cf-submit:disabled{opacity:.55;cursor:wait}
@media(max-width:760px){.city-footer-links{grid-template-columns:1fr;gap:0}.cf-group{border-bottom:1px solid #dcdcdc;padding:0}.cf-group summary{display:flex;justify-content:space-between;align-items:center;min-height:52px;margin:0;cursor:pointer}.cf-group summary:after{content:'+';font-size:22px;font-weight:400}.cf-group[open] summary:after{content:'−'}.cf-group-links{gap:4px;padding-bottom:16px;width:100%}.city-footer .cf-group-links :is(a,button){display:flex;align-items:center;min-height:44px;width:100%;font-size:14px}.city-footer-right{gap:24px}}

/* Existing form and saved-item pages; footer geometry is unchanged. */
.cf-form{margin:24px 0 0;max-width:740px;font:400 16px/1.6 Manrope,system-ui,sans-serif;color:#303c4d;scroll-margin-top:115px}.cf-form fieldset{border:0;padding:0;margin:0 0 22px}.cf-form legend{font-weight:700;font-size:16px;color:#20262f;margin-bottom:10px}
.cf-kind-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cf-kind-option{position:relative;cursor:pointer}.cf-kind-option input{position:absolute;left:13px;top:17px;accent-color:#0876ad;width:16px;height:16px;margin:0}.cf-kind-option span{display:block;box-sizing:border-box;min-height:75px;padding:12px 12px 12px 40px;border:1px solid #ced6df;border-radius:12px;font-size:15px;font-weight:700;background:#fff}.cf-kind-option small{display:block;font-size:12px;color:#667180;line-height:1.5;font-weight:400;margin-top:3px}.cf-kind-option input:checked+span{border-color:#0876ad;background:#f0f8fc;box-shadow:inset 0 0 0 1px #0876ad}.cf-kind-option input:focus-visible+span{outline:3px solid #0876ad;outline-offset:3px}
.cf-fields{border:1px solid #dfe4ea;border-radius:18px;background:#fff;padding:25px}.cf-field{display:grid;gap:7px;margin:0 0 18px;font-size:14px;font-weight:650;color:#20262f}.cf-field :is(input,textarea){display:block;box-sizing:border-box;width:100%;min-width:0;border:1px solid #bdc9d6;background:#fff;border-radius:10px;padding:12px 14px;font:400 16px/1.5 Manrope,system-ui,sans-serif;color:#20262f}.cf-field textarea{resize:vertical;min-height:130px}.cf-field :is(input,textarea):focus{border-color:#0876ad}.cf-field [aria-invalid=true]{border-color:#b23d32}.cf-field-error{font-size:13px;font-weight:500;color:#a72e25;line-height:1.5}
.cf-form-note,.cf-context-note{font-size:13px;line-height:1.6;color:#647184;margin:0 0 18px}.cf-context-note{font-size:14px;padding:12px 14px;background:#f3f7fa;border-radius:10px;color:#4b5d70}.cf-form-note a,.cf-status a{color:#0876ad;text-decoration:underline;text-underline-offset:3px}
.cf-submit{display:inline-flex;align-items:center;justify-content:center;min-height:48px;gap:8px;border:0;border-radius:10px;padding:12px 20px;background:#0876ad;color:#fff;font:700 14px Manrope,system-ui,sans-serif;cursor:pointer}.cf-submit:hover{background:#075d89}.cf-submit:disabled{opacity:.6;cursor:wait}.cf-status:empty{display:none}.cf-status{font-size:15px;line-height:1.7;border-radius:12px;padding:16px;margin:0 0 20px;background:#fff6e7;color:#6c4b12}.cf-status[data-state=success]{background:#eef8f1;color:#235d38}.cf-status strong{display:block;font-size:17px;margin-bottom:5px}.cf-trap{display:none}.cf-form [hidden]{display:none!important}.cf-kind-hint{font-size:14px;color:#637184;margin-top:12px}
.cf-favorites{margin-top:24px}.cf-favorite-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.cf-favorite-tabs button{min-height:44px;border:1px solid #ced6df;border-radius:10px;background:#fff;padding:9px 14px;color:#42536a;font:600 14px Manrope,system-ui,sans-serif;cursor:pointer}.cf-favorite-tabs button[aria-pressed=true]{color:#0876ad;border-color:#0876ad;background:#f0f8fc}.cf-favorite-list{display:grid;gap:12px}.cf-favorite-card{display:flex;gap:20px;justify-content:space-between;align-items:center;border:1px solid #dfe4ea;border-radius:14px;padding:18px}.cf-favorite-card small{font-size:12px;color:#65758b}.cf-favorite-card a{display:block;font-weight:700;color:#202c40;font-size:17px;line-height:1.5}.cf-favorite-card button{border:0;color:#7b4242;background:#fff3f1;border-radius:9px;min-height:44px;padding:9px 13px;cursor:pointer;font:600 13px Manrope,system-ui,sans-serif}.cf-empty{padding:25px;border:1px dashed #cbd4df;border-radius:15px;background:#f7f9fb}.cf-empty p{margin-top:0}.cf-empty a{color:#0876ad;text-decoration:underline}.cf-empty-links{display:flex;gap:12px;flex-wrap:wrap}.cf-empty-links a{min-height:44px;display:inline-flex;align-items:center}

@media(max-width:650px){.cf-fields{padding:20px}.cf-kind-options{gap:8px}.cf-kind-option span{padding:12px 10px 12px 36px;font-size:14px}.cf-kind-option input{left:11px}.cf-kind-option small{font-size:11px}.cf-submit{width:100%}.cf-favorite-card{align-items:start;gap:12px;padding:14px}.cf-favorite-card a{font-size:15px}.cf-favorite-card button{font-size:12px}}
.cf-favorite-card>div{min-width:0}.cf-favorite-card a{overflow-wrap:anywhere}.cf-favorite-card button{flex-shrink:0}

/* Match the established footer button styling on every template. */
.city-footer .city-footer-invite button[data-city-add]{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:13px 18px;border:0;border-radius:26px;background:#0075d4;color:#fff;font:650 12px/1.45 Manrope,system-ui,sans-serif;cursor:pointer}
.city-footer .city-footer-invite button[data-city-add]:hover{background:#005eb5;color:#fff}
