/* Geography presentation only. Uses the shared WSOS design tokens. */
.geo-toolbar,.geo-filters,.geo-card-actions,.geo-counts{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.geo-toolbar{margin-bottom:12px}.geo-filters{margin:20px 0}.geo-filters [aria-pressed=true]{background:var(--accent);color:var(--accent-text)}
.geo-note,.geo-category{color:var(--muted);font-size:.88rem;line-height:1.6}.geo-observe,.geo-checkbox{display:flex;align-items:center;gap:10px;font-size:.9rem}
.geo-observe input,.geo-checkbox input{width:20px!important;height:20px!important;accent-color:var(--accent)}
.geo-place-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:16px}
.geo-place-card{background:var(--surface);border:1px solid var(--border);border-radius:18px;overflow:hidden}
.geo-card-open{display:block;width:100%;border:0;background:none;text-align:left;color:var(--text);padding:22px;cursor:pointer}
.geo-card-open:hover{background:var(--surface-low)}.geo-card-open h3{font-size:1.3rem;margin:12px 0 8px}.geo-card-open p{margin:8px 0;line-height:1.4}
.geo-counts{margin-top:20px;font-size:.82rem;color:var(--muted)}.geo-place-card>.geo-card-actions{padding:0 22px 20px}
.geo-map{height:430px;border-radius:18px;isolation:isolate;background:var(--surface-low)}
.geo-dialog{width:min(660px,calc(100% - 24px));max-height:88dvh;padding:0;border-radius:22px;border:1px solid var(--border);background:var(--surface);color:var(--text)}
.geo-dialog-body{padding:24px}.geo-dialog header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}
.geo-dialog h2{font-size:1.5rem;margin:0}.geo-dialog h3{margin-top:26px}.geo-dialog p{white-space:pre-wrap;line-height:1.5}
.geo-form{display:grid;gap:16px}.geo-form label{display:grid;gap:8px}.geo-form .geo-checkbox{display:flex}.geo-two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.geo-form input:not([type=checkbox]),.geo-form select,.geo-form textarea{width:100%;padding:12px;border-radius:10px;border:1px solid var(--control-border);background:var(--surface-low);color:var(--text);font:inherit;box-sizing:border-box}
.geo-form textarea{min-height:85px}.geo-linked{padding:16px 0;border-bottom:1px solid var(--border)}
.geo-reminders{margin-top:30px}.geo-reminders h2{font-size:1.25rem}.geo-notification{border-left:4px solid var(--accent);padding:16px;background:var(--surface);margin:12px 0;border-radius:12px}
.wsos-studio .geo-reminders h2{font-size:1.25rem;letter-spacing:normal}
.wsos-studio .geo-filters [aria-pressed=true]{background:var(--accent);color:var(--accent-text);box-shadow:inset 0 0 0 2px var(--accent)}
.geo-rule-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0;border-bottom:1px solid var(--border)}
.geo-rule-row p{font-size:.88rem;color:var(--muted)}.geo-reminders summary{cursor:pointer;padding:16px 0}
.geo-dialog .entity-link{width:100%;box-sizing:border-box}.geo-dialog a.tonal-button{text-decoration:none}
.geo-picker-frame{position:relative;isolation:isolate;border-radius:12px;overflow:hidden}
#geo-picker-map{height:300px;background:var(--surface-low)}
.geo-picker-pin{position:absolute;left:50%;top:50%;transform:translate(-50%,-100%);font-size:32px;z-index:500;pointer-events:none;line-height:1}
#geo-picker-coordinates{display:block;margin:12px 0;color:var(--muted);font-variant-numeric:tabular-nums}
@media(max-width:600px){.geo-map{height:330px}.geo-dialog-body{padding:20px}.geo-toolbar{gap:8px}.geo-two{grid-template-columns:1fr 1fr}}
