/* Keep event promotion to one status row and the next action. */
.city-promotion{padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);min-width:0}
.city-promotion[hidden]{display:none!important}
.city-compact-row,.city-verification-trigger{display:flex!important;align-items:center;justify-content:space-between;gap:16px;margin:0!important;width:100%;min-height:44px}
.city-compact-copy{display:grid;gap:4px;min-width:0;flex:1;text-align:left}
.city-compact-icon{flex:0 0 22px;color:var(--brand-text)}
.city-compact-copy strong{font-size:.94rem;line-height:1.4;color:var(--text)}
.city-compact-copy>span,.city-compact-help{font-size:.8rem;line-height:1.5;color:var(--muted);font-weight:400}
.city-verification-trigger{border:0;padding:0;background:transparent;color:var(--text);box-shadow:none;border-radius:6px;cursor:pointer}
.city-compact-chevron{font-size:1.5rem;color:var(--muted)}
.city-compact-copy .city-notice--success{color:var(--brand-text)}
.city-compact-copy .city-notice--danger{color:var(--danger)}
.city-compact-copy .city-notice--warning{color:var(--warning-text)}
.city-compact-row input{appearance:none;width:44px!important;height:26px;flex:0 0 44px;margin:0;padding:3px;border-radius:20px;border:1px solid var(--control-line,var(--line));background:var(--surface-2);cursor:pointer}
.city-compact-row input:before{content:'';display:block;width:18px;height:18px;border-radius:50%;background:var(--muted);transition:transform .15s}
.city-compact-row input:checked{background:var(--brand);border-color:var(--brand)}
.city-compact-row input:checked:before{transform:translateX(18px);background:var(--on-brand)}
.city-compact-row input:disabled{opacity:.45;cursor:not-allowed}
.toolbox-shell .city-promotion .city-compact-row input:not(:focus-visible){outline:none}
.city-check-spinner{width:23px;height:23px;border:2px solid var(--line);border-top-color:var(--brand-text);border-radius:50%;flex:0 0 23px;margin:0 10px;animation:city-check-spin .8s linear infinite}
.city-compact-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.city-compact-actions button{min-height:44px;max-width:100%;white-space:normal;font-size:.8rem}
.city-compact-actions .city-next-action{background:var(--brand-soft);color:var(--brand-text);border:1px solid transparent;border-radius:10px;padding:10px 14px;box-shadow:none;font-weight:700}
.city-compact-actions .city-next-action:hover{border-color:var(--brand-text)}
.city-compact-actions .city-next-action:disabled{opacity:.65;cursor:wait}
.city-compact-actions .city-details-action{background:transparent;border:0;box-shadow:none;color:var(--muted);padding:8px;text-decoration:underline}
.city-review{margin:8px 0 0;padding:0;font-size:.8rem;line-height:1.5;color:var(--muted)}
.city-review-sheet{width:min(500px,calc(100vw - 32px));max-height:80dvh;margin:auto;padding:0;border:1px solid var(--line);border-radius:24px;background:var(--surface);color:var(--text);box-shadow:var(--shadow);overflow:auto}
.city-review-sheet::backdrop{background:rgb(7 17 25 / .55)}
.city-review-sheet-content{padding:24px}
.city-sheet-grabber{display:none}
.city-review-sheet header{display:flex;align-items:center;gap:12px;margin-bottom:20px}
.city-review-sheet h2{flex:1;font-size:1.3rem;line-height:1.35;margin:0}
.city-review-sheet header button{flex:0 0 44px;min-height:44px}
.city-review-sheet p{font-size:.9rem;line-height:1.6;overflow-wrap:anywhere;margin:12px 0}
.city-review-guidance{color:var(--muted)}
.city-review-sheet footer{display:grid;gap:18px;text-align:center;margin-top:24px}
.city-review-sheet footer button{min-height:48px}
.city-review-sheet footer a{font-size:.8rem;color:var(--brand-text);overflow-wrap:anywhere}
.community-verification-dialog{width:min(520px,calc(100vw - 32px));max-height:calc(100dvh - 40px);margin:auto;padding:0;border:1px solid var(--line);border-radius:22px;background:var(--surface);color:var(--text);box-shadow:var(--shadow);overflow:auto}
.community-verification-dialog::backdrop{background:rgb(7 17 25 / .55)}
.verification-form{padding:24px;display:grid;gap:16px}
.verification-heading{position:relative;text-align:center;padding:0 34px}
.verification-heading h2{margin:12px 0 4px;font-size:1.4rem;line-height:1.3;font-family:'Bricolage Grotesque','DM Sans',sans-serif}
.verification-heading p{margin:0;color:var(--muted);overflow-wrap:anywhere}
.verification-heading [data-close]{position:absolute;right:-8px;top:-8px;width:40px;height:40px;font-size:1.5rem;line-height:1;padding:0}
.verification-mark{display:grid;place-items:center;width:62px;height:62px;border-radius:20px;margin:auto;background:color-mix(in srgb,#009bea 12%,var(--surface))}
.verification-mark svg{width:34px;height:34px}
.verification-intro{margin:0;color:var(--muted);font-size:.9rem;line-height:1.6;text-align:center}
.verification-form label{display:grid;gap:7px;font-size:.85rem;font-weight:700}
.verification-form input,.verification-form textarea{width:100%;padding:12px;border:1px solid var(--control-line,var(--line));border-radius:10px;color:var(--text);background:var(--surface-2);font:inherit;font-weight:400}
.verification-form textarea{min-height:106px;resize:vertical}
.verification-required{margin:0;color:var(--muted);font-size:.77rem}
.verification-note,.verification-confirmations{padding:14px;border-radius:12px;background:var(--surface-2);font-size:.85rem;line-height:1.5;margin:0}
.verification-confirmations{list-style:none;color:var(--brand-text);background:var(--brand-soft);display:grid;gap:10px}
.verification-error{color:var(--danger);font-size:.85rem;line-height:1.5;margin:0}
.verification-actions{display:grid;gap:16px;text-align:center;border-top:1px solid var(--line);padding-top:16px}
.verification-actions a{color:var(--brand-text);font-size:.8rem;overflow-wrap:anywhere}
.verification-entry{display:inline-flex;align-items:center;gap:6px;min-height:42px}
@media(max-width:480px){.verification-form{padding:20px}.community-verification-dialog{width:100%;max-width:100%;max-height:92dvh;margin:auto 0 0;border-radius:22px 22px 0 0;animation:verification-rise .2s ease-out}.verification-actions{padding-bottom:env(safe-area-inset-bottom,0px)}}
@keyframes verification-rise{from{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}
@keyframes city-check-spin{to{transform:rotate(360deg)}}
@media(max-width:600px){.city-review-sheet{width:100%;max-width:100%;max-height:85dvh;margin:auto 0 0;border-radius:24px 24px 0 0;animation:verification-rise .2s ease-out}.city-review-sheet-content{padding:10px 24px max(20px,env(safe-area-inset-bottom,0px))}.city-sheet-grabber{display:block;width:36px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 18px}.city-review-sheet header{margin-bottom:14px}}
@media(prefers-reduced-motion:reduce){.community-verification-dialog,.city-review-sheet,.city-check-spinner{animation:none}.city-compact-row input:before{transition:none}}
