@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--text-xs:.75rem;--text-sm:.875rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.875rem;--text-4xl:2.25rem;--text-5xl:3rem;--leading-tight:1.25;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:var(--font-geist-sans);--font-body:var(--font-geist-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-5{top:calc(var(--spacing) * 5)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.\!hidden{display:none!important}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-full{height:100%}.min-h-full{min-height:100%}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.text-right{text-align:right}.break-all{word-break:break-all}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--bg:#faf3e6;--bg-alt:#f0e3c6;--paper:#fffcf4;--ink:#1c1208;--ink-soft:#4a3018;--fg:#1c1208;--mute:#806040;--rule:#d4b070;--accent:#a8721a;--neon:#c05018;--neon-glow:#c050184d;--scanlines:.07;--crt-on:1;--ok:#1f7a4a;--radius:6px;--cat-show:#c64785;--cat-browse:#e07b3a;--cat-move:#2faa6a;--cat-learn:#2f7fc8;--cat-help:#8a5cc0;--cat-people:#8a7530;--cat-festival:#159a9b;--cat-food:#e07b3a;--cat-retail:#c64785;--cat-trades:#2f7fc8;--cat-health:#2faa6a;--cat-care:#8a5cc0;--cat-civic:#8a7530;--cat-on-strong:#040201;--cost-donation:#9a5b2a;--font-display:var(--font-geist-sans);--font-body:var(--font-geist-mono);--text-micro:.6875rem;--text-label:.75rem;--text-sm:.8125rem;--text-body:.9375rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--text-4xl:2.75rem;--text-5xl:3rem;--leading-tight:1;--leading-body:1.45}@keyframes crtFlicker{0%,92%,to{opacity:0}94%{opacity:.18}96%{opacity:0}98%{opacity:.1}}body:after{content:"";pointer-events:none;z-index:30;opacity:var(--crt-on);background-image:repeating-linear-gradient(0deg, rgb(0 0 0/var(--scanlines)) 0, rgb(0 0 0/var(--scanlines)) 1px, transparent 1px, transparent 3px);position:fixed;inset:0}body:before{content:"";pointer-events:none;z-index:31;opacity:var(--crt-on);background:#ffffff04;animation:5s infinite crtFlicker;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){body:before{animation:none}}@media (prefers-contrast:more){body:after,body:before{opacity:0}}body{background:var(--bg);color:var(--ink-soft);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-body);letter-spacing:0;-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600;line-height:var(--leading-tight);margin:0}.wire-wrap{max-width:640px;margin:0 auto;padding:22px 16px 48px}.wire-head{border-bottom:1px solid var(--rule);margin-bottom:18px;padding-bottom:14px}.wordmark{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--ink);letter-spacing:-.02em;font-weight:600}.wire-sub{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.22em;text-transform:uppercase;color:var(--mute);margin-top:4px}.count-line{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.25em;color:var(--mute);text-transform:uppercase;margin-bottom:14px}.today-hd{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:20px;padding-bottom:14px;display:flex}.today-chip{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--ink);letter-spacing:-.02em;font-weight:600}.today-chip b{color:var(--accent);font-weight:600}.today-date{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);white-space:nowrap}.today-section{margin-bottom:26px}.today-section-hd{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.25em;text-transform:uppercase;color:var(--mute);margin-bottom:10px}.today-see-all{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;color:#a84314;align-items:center;gap:5px;margin-top:8px;padding-left:2px;font-weight:700;text-decoration:none;transition:transform .15s,text-shadow .2s;display:inline-flex}.today-see-all:hover{text-shadow:0 0 14px var(--neon-glow);text-decoration:none;transform:translate(2px)}.news-card{border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--paper);margin-bottom:12px;text-decoration:none;transition:transform .12s,border-color .12s;display:block;overflow:hidden}.news-card:hover{border-color:var(--accent);transform:translate(-1px,-1px)}.news-card.featured{border-color:var(--accent);box-shadow:0 0 14px #b8733321, 2px 2px 0 var(--accent)}.news-body{padding:16px}.news-card .meta{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.12em;color:var(--mute);text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.news-card .meta .src{color:var(--accent);font-weight:700}.news-card .lead{font-family:var(--font-body);font-size:var(--text-micro);color:var(--neon);letter-spacing:.22em;text-transform:uppercase;margin-bottom:6px}.news-card h3{font-size:var(--text-md);color:var(--ink);margin-bottom:5px}.news-card.featured h3{font-size:var(--text-lg)}.news-card p{font-size:var(--text-body);line-height:var(--leading-body);color:var(--ink-soft);margin:0}.news-card .foot{justify-content:flex-end;align-items:center;gap:8px;margin-top:10px;display:flex}.news-card .read{font-family:var(--font-body);font-size:var(--text-micro);color:var(--neon);letter-spacing:.15em;text-transform:uppercase;align-items:center;gap:4px;display:inline-flex}.wx-now{border:1.5px solid var(--accent);border-radius:var(--radius);background:var(--paper);align-items:center;gap:14px;margin-bottom:18px;padding:18px;display:flex}.wx-now .icon{color:var(--accent);line-height:0}.wx-now .info{flex:1}.wx-now .info .temp{font-family:var(--font-display);font-size:var(--text-5xl);color:var(--ink);font-weight:600;line-height:1}.wx-now .info .town{font-family:var(--font-display);font-size:var(--text-md);color:var(--ink);margin-top:2px}.wx-now .info .cond{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.16em;color:var(--ink-soft);text-transform:uppercase;margin-top:3px}.wx-now .info .meta{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.14em;color:var(--mute);text-transform:uppercase;margin-top:5px}.section-head{font-family:var(--font-display);font-size:var(--text-body);color:var(--ink);margin-bottom:6px}.wx-row{border-bottom:1px dashed var(--rule);align-items:center;gap:8px;padding:8px 0;display:flex}.wx-row .dow{width:2.625rem;font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink)}.wx-row .ic{width:22px;color:var(--ink-soft);justify-content:center;display:flex}.wx-row .cond{color:var(--ink-soft);font-size:var(--text-label);flex:1}.wx-row .lo{color:var(--mute);font-family:var(--font-body);font-size:var(--text-label);text-align:right;width:1.875rem}.wx-row .hi{color:var(--ink);font-family:var(--font-body);font-size:var(--text-label);text-align:right;width:2.125rem;font-weight:700}.wx-source{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.18em;color:var(--mute);text-transform:uppercase;margin-top:14px}.event-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);gap:12px;margin-bottom:10px;padding:12px;text-decoration:none;transition:transform .12s,border-color .12s;display:flex}.event-card:hover{border-color:var(--accent);transform:translate(2px)}.event-card .date{text-align:center;border-right:1px dashed var(--rule);flex-shrink:0;width:3rem;padding-right:.625rem}.event-card .date .dow{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;color:var(--mute);text-transform:uppercase}.event-card .date .day{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--ink);margin:1px 0;font-weight:600;line-height:1}.event-card .date .mon{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;color:var(--accent);text-transform:uppercase}.event-card .body{flex:1;min-width:0}.event-card .body h4{font-family:var(--font-display);font-size:var(--text-body);color:var(--ink);margin-bottom:3px}.event-card .body .where{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.14em;color:var(--mute);text-transform:uppercase}.event-card .tags{flex-wrap:wrap;align-items:center;gap:5px;margin-top:6px;display:flex}.event-card .tag{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.1em;border:1px solid var(--rule);color:var(--ink-soft);text-transform:uppercase;border-radius:3px;padding:2px 7px;font-weight:600}.event-card .tag.tag--source{opacity:.55;letter-spacing:.06em;text-transform:none;font-weight:500}.event-card .tag[data-cat=music],.event-card .tag[data-cat=film],.event-card .tag[data-cat=theatre],.event-card .tag[data-cat=arts],.event-card .tag[data-cat=dance]{background:var(--cat-show);border-color:var(--cat-show);color:#fff}.event-card .tag[data-cat=markets]{color:#fff;background:#176842;border-color:#176842}.event-card .tag[data-cat=food]{background:var(--cat-browse);border-color:var(--cat-browse);color:#fff}.event-card .tag[data-cat=sport],.event-card .tag[data-cat=wellbeing]{background:var(--cat-move);border-color:var(--cat-move);color:#fff}.event-card .tag[data-cat=workshop],.event-card .tag[data-cat=talks]{background:var(--cat-learn);border-color:var(--cat-learn);color:#fff}.event-card .tag[data-cat=volunteer],.event-card .tag[data-cat=fundraiser],.event-card .tag[data-cat=community-meals]{background:var(--cat-help);border-color:var(--cat-help);color:#fff}.event-card .tag[data-cat=kids],.event-card .tag[data-cat=family],.event-card .tag[data-cat=seniors]{background:var(--cat-people);border-color:var(--cat-people);color:#fff}.event-card .tag[data-cat=festivals]{background:var(--cat-festival);border-color:var(--cat-festival);color:#fff}.event-card .tag[data-cat=free]{background:var(--accent);border-color:var(--accent);color:var(--bg)}.event-card .tag[data-cat=donation]{background:var(--cost-donation);border-color:var(--cost-donation);color:var(--bg)}.event-card .thumb{object-fit:cover;border:1px solid var(--rule);background:var(--rule);border-radius:4px;flex-shrink:0;width:56px;height:70px}.radio-card{border:1px solid var(--rule);background:var(--paper);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.radio-stn{align-items:center;gap:12px;display:flex}.radio-dot{background:var(--mute);border-radius:50%;flex-shrink:0;width:12px;height:12px}.radio-dot.live{background:#c0392b;animation:1.4s ease-in-out infinite radio-pulse}@keyframes radio-pulse{0%,to{opacity:1;box-shadow:0 0 #c0392b80}50%{opacity:.6;box-shadow:0 0 0 6px #c0392b00}}.radio-name{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink);font-weight:600}.radio-status{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft);margin-top:2px}.radio-status[data-state=error]{color:#c0392b}.radio-btn{all:unset;cursor:pointer;font-family:var(--font-body);font-size:var(--text-body);color:var(--bg);background:var(--accent);white-space:nowrap;border-radius:999px;padding:11px 20px;font-weight:700}.radio-btn:hover{filter:brightness(1.06)}.radio-btn.busy{opacity:.7;cursor:progress}.site-header{border-bottom:1px solid var(--line,#ffffff14);justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.site-wordmark{letter-spacing:.5px;color:var(--fg,inherit);font-weight:700;text-decoration:none}.site-auth{align-items:center;gap:12px;display:flex}.signin-pill{border:1px solid var(--neon,#9eff00);color:#a84314;font-size:var(--text-sm);cursor:pointer;background:0 0;border-radius:999px;padding:5px 14px}.me-link{font-size:var(--text-sm);color:var(--fg,inherit);opacity:.85;text-decoration:none}.event-card{position:relative}.event-card .body{padding-right:36px}.bm-save,.bm-save-wrap>button{width:32px;height:32px;color:var(--accent);cursor:pointer;z-index:2;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#fffcf4d1;border:1px solid #1c12081f;border-radius:50%;justify-content:center;align-items:center;transition:transform .12s,color .12s;display:inline-flex;position:absolute;top:8px;right:8px}.bm-save:hover,.bm-save-wrap>button:hover{color:var(--neon);transform:scale(1.06)}.bm-save.on{color:var(--neon);border-color:#c0501859}.bm-save.on svg{filter:drop-shadow(0 0 3px var(--neon-glow))}.bm-save:disabled{opacity:.55;cursor:default}.me-head{align-items:center;gap:12px;padding:16px 0;display:flex}.me-head-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:flex}.me-scan-btn{border:1px solid var(--neon);color:var(--neon);font-size:var(--text-sm);letter-spacing:.01em;white-space:nowrap;background:0 0;border-radius:999px;padding:6px 14px;font-weight:700;text-decoration:none}.me-scan-btn--alt{border-color:var(--fg)}@supports (color:color-mix(in lab, red, red)){.me-scan-btn--alt{border-color:color-mix(in srgb, var(--fg) 30%, transparent)}}.me-scan-btn--alt{color:var(--fg)}@media (max-width:480px){.me-head{grid-template-columns:auto 1fr;align-items:center;gap:8px 12px;display:grid}.me-head-actions{grid-column:1/-1;justify-content:flex-start;margin-left:0}.me-scan-btn{width:fit-content}}.me-scan-inline{color:var(--neon);font-weight:600;text-decoration:underline}.me-avatar{background:var(--neon,#9eff00);width:44px;height:44px;color:var(--bg,#111);border-radius:50%;justify-content:center;align-items:center;font-weight:700;display:flex}.me-name{font-size:var(--text-lg);font-weight:600}.me-section-hd{font-size:var(--text-label);text-transform:uppercase;letter-spacing:.08em;opacity:.7;margin:12px 0 8px}.me-gate{flex-direction:column;align-items:flex-start;gap:12px;padding:32px 0;display:flex}.me-row{border-radius:var(--radius);touch-action:pan-y;margin-bottom:10px;position:relative;overflow:hidden}.me-row .event-card{margin-bottom:0}.me-row-card{z-index:1;background:var(--bg);transition:transform .22s cubic-bezier(.2,.8,.2,1);position:relative}.me-row.dragging .me-row-card{transition:none}.me-row-bin{z-index:0;border-radius:var(--radius);color:#fff;cursor:pointer;background:#c0392b;border:none;justify-content:flex-end;align-items:center;width:104px;padding-right:28px;display:flex;position:absolute;top:0;bottom:0;right:0}.me-row-bin .ic-svg{width:20px;height:20px}.me-row-hoverdel{z-index:2;width:28px;height:28px;color:var(--mute);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;transition:opacity .15s,color .15s;display:none;position:absolute;top:50%;left:6px;transform:translateY(-50%)}.me-row-hoverdel .ic-svg{width:15px;height:15px}@media (hover:hover) and (pointer:fine){.me-row{transition:padding-left .18s}.me-row-hoverdel{display:flex}.me-row:hover{padding-left:40px}.me-row:hover .me-row-hoverdel{opacity:.7}.me-row-hoverdel:hover,.me-row-hoverdel:focus-visible{opacity:1;color:var(--fg)}}@media (prefers-reduced-motion:reduce){.me-row,.me-row-card{transition:none}}.me-toast{z-index:50;background:var(--ink);color:var(--paper);font-size:var(--text-sm);border-radius:999px;align-items:center;gap:14px;padding:10px 12px 10px 18px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #00000047}.me-toast-undo{color:var(--neon);cursor:pointer;font-weight:700;font-size:var(--text-sm);background:0 0;border:none;padding:4px 8px}.me-past-toggle{color:var(--neon);font-size:var(--text-sm);cursor:pointer;text-underline-offset:2px;opacity:.85;background:0 0;border:none;margin:16px 0 4px;padding:0;font-weight:600;text-decoration:underline;display:block}.me-past-toggle:hover,.me-past-toggle:focus-visible{opacity:1}.me-avatar-link{text-decoration:none;display:inline-flex}.me-avatar-sm{background:var(--neon);width:30px;height:30px;color:var(--paper,#fffcf4);font-weight:700;font-size:var(--text-sm);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.me-foot{border-top:1px solid var(--rule);margin-top:28px;padding-top:16px}.me-signout{border:1px solid var(--rule);color:var(--ink-soft);font-size:var(--text-sm);cursor:pointer;background:0 0;border-radius:999px;padding:7px 16px}.me-signout:hover{border-color:var(--accent);color:var(--accent)}.bin-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.bin-head>span{font-family:var(--font-display);font-size:var(--text-body);color:var(--ink);font-weight:600}.bin-head .right{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);white-space:nowrap;text-decoration:none}.bin-head .right:hover{color:var(--neon)}.bin-card{border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--paper);padding:16px}.bin-row{border-bottom:1px dashed var(--rule);align-items:center;gap:10px;margin-bottom:8px;padding-bottom:7px;display:flex}.bin-row:last-child{margin-bottom:0}.bin-ic{flex-shrink:0;width:30px;height:30px}.bin-ic.yellow{color:#f2d119}.bin-ic.red{color:#c83020}.bin-ic.green{color:#4a7a3a}.bin-ic{filter:drop-shadow(0 1px 2px #00000080)drop-shadow(0 0 1px #00000073)}.bin-meta{flex:1;min-width:0}.bin-name{font-family:var(--font-display);font-size:var(--text-sm);color:var(--ink);letter-spacing:-.01em;font-weight:600}.bin-freq{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);margin-top:2px}.bin-lookup-summary{font-family:var(--font-display);font-size:var(--text-body);color:var(--ink);margin:0 0 5px;font-weight:600}.bin-lookup-detail{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 14px;line-height:1.5}.bin-lookup-types{margin-bottom:14px}.bin-lookup-cta{border:1px solid var(--accent);border-radius:var(--radius);font-family:var(--font-body);font-size:var(--text-sm);color:var(--accent);text-align:center;padding:9px 12px;font-weight:700;text-decoration:none;display:block}.bin-lookup-cta:hover{background:var(--accent);color:var(--paper)}.bin-lookup-cta:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.bin-lookup-privacy{font-family:var(--font-body);font-size:var(--text-micro);color:var(--mute);text-align:center;margin:8px 0 0;line-height:1.4}.bin-area-matrix{border-top:1px dashed var(--rule);margin-top:20px;padding-top:18px}.bin-area-matrix h3{font-family:var(--font-display);font-size:var(--text-body);color:var(--ink);margin:0}.bin-area-intro{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft);margin:6px 0 12px;line-height:1.5}.bin-area-cycle-key{font-family:var(--font-body);font-size:var(--text-micro);color:var(--ink-soft);flex-wrap:wrap;gap:6px;margin:-4px 0 12px;padding:0;list-style:none;display:flex}.bin-area-key-item{border:1px solid var(--rule);background:var(--paper);border-radius:999px;align-items:center;gap:5px;min-height:28px;padding:4px 8px;font-weight:700;display:inline-flex}.bin-area-key-a{border-color:var(--cat-festival)}@supports (color:color-mix(in lab, red, red)){.bin-area-key-a{border-color:color-mix(in srgb,var(--cat-festival) 60%,var(--rule))}}.bin-area-key-a{background:var(--cat-festival)}@supports (color:color-mix(in lab, red, red)){.bin-area-key-a{background:color-mix(in srgb,var(--cat-festival) 8%,var(--paper))}}.bin-area-key-b{border-color:var(--cat-help)}@supports (color:color-mix(in lab, red, red)){.bin-area-key-b{border-color:color-mix(in srgb,var(--cat-help) 60%,var(--rule))}}.bin-area-key-b{background:var(--cat-help)}@supports (color:color-mix(in lab, red, red)){.bin-area-key-b{background:color-mix(in srgb,var(--cat-help) 8%,var(--paper))}}.bin-area-key-variable{background:var(--paper)}.bin-area-key-marker{width:18px;height:18px;font-size:var(--text-micro);border:1px solid;border-radius:50%;justify-content:center;align-items:center;line-height:1;display:inline-flex}.bin-area-key-a .bin-area-key-marker{color:var(--cat-festival)}.bin-area-key-b .bin-area-key-marker{color:var(--cat-help)}.bin-area-key-variable .bin-area-key-marker{color:var(--accent)}.bin-area-status{font-family:var(--font-body);font-size:var(--text-micro);white-space:nowrap;border-radius:999px;padding:3px 8px;font-weight:700;line-height:1.35;display:inline-block}.bin-area-check{font-size:var(--text-micro);color:var(--mute);margin-top:5px;line-height:1.45;display:block}.bin-area-status.matched{background:var(--ok)}@supports (color:color-mix(in lab, red, red)){.bin-area-status.matched{background:color-mix(in srgb,var(--ok) 15%,var(--paper))}}.bin-area-status.matched{color:var(--ok)}.bin-area-status.address-dependent{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bin-area-status.address-dependent{background:color-mix(in srgb,var(--accent) 12%,var(--paper))}}.bin-area-status.address-dependent{color:var(--accent)}.bin-area-table-wrap{border:1px solid var(--rule);border-radius:var(--radius);overflow-x:auto}.bin-area-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:650px;font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft)}.bin-col-area{width:32%}.bin-col-waste{width:16%}.bin-col-recycling{width:24%}.bin-col-check{width:28%}.bin-area-table th,.bin-area-table td{border-bottom:1px solid var(--rule);text-align:left;vertical-align:top;padding:9px 10px}.bin-area-table thead th{font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);background:var(--bg-alt)}.bin-area-table tbody th{font-family:var(--font-display);color:var(--ink);font-weight:600}.bin-area-boundary{font-family:var(--font-body);color:var(--mute);font-weight:400}.bin-area-waste{color:var(--ink);display:inline-block}.bin-area-recycling{color:var(--ink);align-items:center;gap:7px;display:flex}.bin-next-date{white-space:nowrap}.bin-area-cycle-marker{width:18px;height:18px;font-size:var(--text-micro);border:1px solid;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.bin-area-cycle-a .bin-area-cycle-marker{color:var(--cat-festival)}.bin-area-cycle-b .bin-area-cycle-marker{color:var(--cat-help)}.bin-area-cycle-variable .bin-area-cycle-marker{color:var(--mute)}.bin-area-table tbody tr.bin-area-cycle-a>*{background:var(--cat-festival)}@supports (color:color-mix(in lab, red, red)){.bin-area-table tbody tr.bin-area-cycle-a>*{background:color-mix(in srgb,var(--cat-festival) 8%,var(--paper))}}.bin-area-table tbody tr.bin-area-cycle-b>*{background:var(--cat-help)}@supports (color:color-mix(in lab, red, red)){.bin-area-table tbody tr.bin-area-cycle-b>*{background:color-mix(in srgb,var(--cat-help) 8%,var(--paper))}}.bin-area-table tbody tr.bin-area-cycle-a>:first-child{box-shadow:inset 3px 0 var(--cat-festival)}.bin-area-table tbody tr.bin-area-cycle-b>:first-child{box-shadow:inset 3px 0 var(--cat-help)}.bin-area-address-link{border:1px solid var(--accent);border-radius:var(--radius);background:var(--accent);justify-content:center;align-items:center;min-height:34px;padding:5px 9px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.bin-area-address-link{background:color-mix(in srgb,var(--accent) 3%,var(--paper))}}.bin-area-address-link{color:var(--accent);font-size:var(--text-micro);text-align:center;white-space:nowrap;font-weight:700;line-height:1.2;text-decoration:none}.bin-area-address-link:hover{background:var(--accent);color:var(--paper)}.bin-area-address-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.bin-area-table tbody tr:last-child>*{border-bottom:0}.bin-area-source,.bin-area-caveat{font-family:var(--font-body);font-size:var(--text-micro);color:var(--mute);line-height:1.5}.bin-area-source{margin:10px 0 0}.bin-area-source a{color:var(--accent)}.bin-area-caveat{color:var(--ink-soft);margin:6px 0 0;font-weight:600}.bin-area-final-cta{margin-top:12px}@media (max-width:767px){.bin-area-table{table-layout:auto;min-width:0;display:block}.bin-area-table colgroup,.bin-area-table thead{display:none}.bin-area-table tbody,.bin-area-table tr,.bin-area-table th,.bin-area-table td{display:block}.bin-area-table tbody tr{border-bottom:1px solid var(--rule);padding:10px 10px 10px 14px}.bin-area-table tbody tr.bin-area-cycle-a{background:var(--cat-festival)}@supports (color:color-mix(in lab, red, red)){.bin-area-table tbody tr.bin-area-cycle-a{background:color-mix(in srgb,var(--cat-festival) 8%,var(--paper))}}.bin-area-table tbody tr.bin-area-cycle-a{box-shadow:inset 3px 0 var(--cat-festival)}.bin-area-table tbody tr.bin-area-cycle-b{background:var(--cat-help)}@supports (color:color-mix(in lab, red, red)){.bin-area-table tbody tr.bin-area-cycle-b{background:color-mix(in srgb,var(--cat-help) 8%,var(--paper))}}.bin-area-table tbody tr.bin-area-cycle-b{box-shadow:inset 3px 0 var(--cat-help)}.bin-area-table tbody tr.bin-area-cycle-a>*,.bin-area-table tbody tr.bin-area-cycle-b>*{box-shadow:none;background:0 0}.bin-area-table tbody tr:last-child{border-bottom:0}.bin-area-table tbody th,.bin-area-table tbody td{border:0;padding:3px 0}.bin-area-table tbody th{font-size:var(--text-sm);margin-bottom:4px}.bin-area-table tbody td{padding-top:6px}.bin-area-table tbody td:before{content:attr(data-label);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;color:var(--mute);margin-bottom:1px;font-weight:700;display:block}.bin-area-table tbody td:last-child{display:block}.bin-area-status{white-space:normal}}.news-card .news-hero{aspect-ratio:16/10;background-position:50%;background-size:cover;background-color:var(--bg-alt,#faf3e6);border-bottom:1px solid var(--rule);position:relative;overflow:hidden}.news-card.featured .news-hero{aspect-ratio:16/9}.wire-pills{gap:8px;margin-bottom:16px;padding-bottom:2px;display:flex}.wire-pill{font-family:var(--font-body);font-size:var(--text-sm);letter-spacing:.04em;border:1px solid var(--rule);color:var(--ink-soft);cursor:pointer;white-space:nowrap;background:0 0;border-radius:999px;flex-shrink:0;padding:5px 14px}.wire-pill.active{border-color:var(--accent);background:var(--accent);color:#fff}.wire-divider{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.25em;text-transform:uppercase;color:var(--mute);border-top:1px solid var(--rule);margin:6px 0 14px;padding-top:14px}.scroll-fade{scroll-snap-type:x proximity;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.scroll-fade::-webkit-scrollbar{display:none}.scroll-fade>*{scroll-snap-align:start;flex-shrink:0}.scroll-fade[data-fade=right]{-webkit-mask-image:linear-gradient(90deg,#000 0% 85%,#0000 100%);mask-image:linear-gradient(90deg,#000 0% 85%,#0000 100%)}.scroll-fade[data-fade=left]{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 15% 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 15% 100%)}.scroll-fade[data-fade=both]{-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 15% 85%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 15% 85%,#0000 100%)}.scroll-fade[data-fade=none]{-webkit-mask-image:none;mask-image:none}.scroll-fade-wrap{align-items:center;min-height:28px;display:flex;position:relative}.scroll-fade-wrap>.scroll-fade{flex:1;min-width:0}.scroll-fade-chevron{background:var(--bg);border:1px solid var(--accent);width:24px;height:24px;color:var(--accent);cursor:pointer;font-family:var(--font-body);font-size:var(--text-md);z-index:2;-webkit-user-select:none;user-select:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-weight:700;line-height:1;transition:background .15s,color .15s,box-shadow .15s;display:none;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 1px 4px #00000026}.scroll-fade-chevron:hover{background:var(--accent);color:var(--bg);box-shadow:0 2px 6px #a8721a66}.scroll-fade-chevron:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.scroll-fade-chevron.left{left:-6px}.scroll-fade-chevron.right{right:-6px}@media (hover:hover) and (pointer:fine){.scroll-fade-wrap[data-fade=right] .scroll-fade-chevron.right,.scroll-fade-wrap[data-fade=both] .scroll-fade-chevron.right,.scroll-fade-wrap[data-fade=left] .scroll-fade-chevron.left,.scroll-fade-wrap[data-fade=both] .scroll-fade-chevron.left{display:flex}}.cs-card{margin-top:0}.cs-cat-label{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}.cs-group{margin-bottom:10px}.cs-group--bordered{border-bottom:1px dashed var(--rule);margin-bottom:12px;padding-bottom:12px}.cs-service{flex-direction:column;gap:4px;display:flex}.cs-service-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.cs-name{font-family:var(--font-display);font-size:var(--text-sm);color:var(--ink);letter-spacing:-.01em;font-weight:600}.cs-pill{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 8px;font-weight:700}.cs-pill.open{color:var(--neon);background:#c050181f;border:1px solid #c050184d}.cs-pill.closed{color:var(--mute);border:1px solid var(--rule);background:0 0}.cs-pill.seasonal{color:var(--accent);background:#a8721a1a;border:1px solid #a8721a40}.cs-status-detail{font-family:var(--font-body);font-size:var(--text-micro);color:var(--mute);letter-spacing:.05em}.cs-hours{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft)}.cs-short-note{font-family:var(--font-body);font-size:var(--text-micro);color:var(--mute);letter-spacing:.03em;font-style:italic}.cs-contact{flex-wrap:wrap;gap:6px 14px;margin-top:2px;display:flex}.cs-phone,.cs-address{font-family:var(--font-body);font-size:var(--text-sm);color:var(--accent);align-items:center;gap:3px;text-decoration:none;display:inline-flex}.cs-phone:hover,.cs-address:hover{color:var(--neon)}.cs-more{font-family:var(--font-body);font-size:var(--text-sm);color:var(--accent);margin-top:2px;font-weight:600;text-decoration:none;display:inline-block}.cs-more:hover{color:var(--neon);text-decoration:underline}.local-section+.local-section{margin-top:24px}@media (min-width:768px){.wire-wrap{max-width:1040px}.wire-top{grid-template-columns:8fr 4fr;gap:24px;margin-bottom:24px;display:grid}.wire-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.wire-top .news-card,.wire-grid .news-card{margin-bottom:0}}.ic-svg{vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:18px;height:18px;display:inline-block}.ic-svg .fill{fill:currentColor;stroke:none}.ic-svg .thin{stroke-width:1px}.ic-svg .bold{stroke-width:2px}.today-band{margin-bottom:22px}.today-band-hd{font-family:var(--font-body);font-size:var(--text-label);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:12px;margin:8px 0 14px;display:flex}.today-band-hd:before,.today-band-hd:after{content:"";background:var(--rule);flex:1;height:1px}.today-band-hd .label{flex-shrink:0}.today-band-hd .extra{font-size:var(--text-micro);letter-spacing:.18em;color:var(--mute);flex-shrink:0;font-weight:400}.today-row{grid-template-columns:1fr;gap:14px;display:grid}.today-cell{flex-direction:column;display:flex}.today-tile{border:1.5px solid var(--rule);border-radius:var(--radius);background:var(--paper);color:var(--ink);flex-direction:column;text-decoration:none;transition:border-color .15s,transform .15s;display:flex;position:relative;overflow:hidden}.today-tile:hover{border-color:var(--accent);transform:translateY(-2px)}.today-kicker{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);display:inline-block}.today-tile-body{flex:1;padding:14px 16px 16px}.today-title{font-family:var(--font-display);color:var(--ink);margin:0 0 5px;font-weight:600;line-height:1.2}.today-meta{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft);line-height:1.4}.today-tile-img{background-color:#1c1208;background-image:linear-gradient(135deg,#34230f 0%,#1c1208 60%,#0d0703 100%);background-position:50%;background-size:cover;flex:1;min-height:160px;position:relative}.today-tile-img.shaded:after{content:"";pointer-events:none;background:linear-gradient(#0000 0%,#0003 50%,#000000d9 100%);position:absolute;inset:0}.today-tile-overlay{z-index:2;padding:14px 16px;position:absolute;bottom:0;left:0;right:0}.today-lead{min-height:240px}.today-lead .today-tile-img{min-height:100%}.today-lead .today-title{font-size:var(--text-xl);color:#fff;text-shadow:0 2px 8px #0009}.today-lead .lead-source{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;color:#f5e7c4;margin-bottom:6px;display:inline-block}.today-lead .lead-dek{font-family:var(--font-body);font-size:var(--text-sm);color:#f5e7c4;text-shadow:0 1px 4px #0009;margin-top:4px;line-height:1.4}.today-event{min-height:240px}.today-event .today-tile-img{min-height:100%}.today-event .today-title{font-size:var(--text-md);color:#fff;text-shadow:0 2px 8px #0009}.today-event .ev-source{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;color:#f5e7c4;text-shadow:0 1px 4px #00000080;margin-bottom:6px;display:inline-block}.today-event .date-blob{background:var(--paper);font-family:var(--font-body);letter-spacing:.06em;text-align:center;z-index:3;border:1px solid var(--accent);border-radius:6px;padding:7px 10px;position:absolute;top:12px;left:12px}.today-event .date-blob .dow{font-size:var(--text-micro);color:var(--accent);letter-spacing:.18em}.today-event .date-blob .day{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--ink);font-weight:700;line-height:1}.today-event .date-blob .mon{font-size:var(--text-micro);color:var(--mute);letter-spacing:.18em}.today-event .event-sponsored{z-index:3;color:var(--neon);font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--neon);background:#000000bf;border-radius:3px;padding:3px 7px;font-weight:700;position:absolute;top:12px;right:12px}.today-weather{background:linear-gradient(135deg, var(--paper) 0%, var(--bg-alt) 100%)}.today-weather .today-tile-body{justify-content:space-between;align-items:center;padding-top:26px;display:flex}.today-weather .today-kicker{color:var(--accent);z-index:3;position:absolute;top:10px;left:16px}.today-weather .wx-left{align-items:center;gap:14px;display:flex}.today-weather .wx-left .ic-svg{width:32px;height:32px;color:var(--accent)}.today-weather .wx-temp{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--ink);font-weight:600;line-height:1}.today-weather .wx-cond{font-size:var(--text-sm);color:var(--ink-soft);margin-top:3px}.today-weather .wx-hl{font-size:var(--text-label);text-align:right;color:var(--ink-soft)}.today-weather .wx-hl div{margin-bottom:3px}.today-bin .today-tile-body{align-items:center;gap:14px;padding-top:26px;display:flex}.today-bin .today-kicker{color:var(--accent);z-index:3;position:absolute;top:10px;left:16px}.today-bin .bin-icons{flex-direction:column;flex-shrink:0;gap:4px;display:flex}.today-bin .bin-ic{width:24px;height:24px}.today-bin .bin-ic.recycle{color:#f2d119}.today-bin .bin-ic.waste{color:#c83020}.today-bin .bin-day-big{font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin-bottom:3px;font-weight:600}.today-bin .bin-kind{font-size:var(--text-sm);color:var(--ink-soft)}.today-tv{flex-direction:row;align-items:stretch;min-height:150px}.today-tv .today-tile-img{aspect-ratio:16/9;flex:0 0 220px;min-height:100%;display:block;position:relative;overflow:hidden}.today-tv .tv-play{color:#fff;z-index:3;background:#0000008c;border:2px solid #ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.today-tv .tv-play .ic-svg{width:15px;height:15px;margin-left:2px}.today-tv .tv-duration{z-index:3;color:#fff;font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.04em;background:#000000bf;border-radius:3px;padding:2px 6px;position:absolute;bottom:8px;right:8px}.today-tv .today-tile-body{flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:16px 20px;display:flex}.today-tv .today-title{font-size:var(--text-lg);margin:0}.today-tv .tv-channel{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:7px;display:flex}.today-tv .tv-channel .dot{background:var(--neon);width:6px;height:6px;box-shadow:0 0 4px var(--neon);border-radius:50%;flex-shrink:0}.today-trader{flex-direction:row;align-items:stretch;min-height:190px}.today-trader .today-tile-img{flex:0 0 200px;min-height:100%;display:block;position:relative;overflow:hidden}.today-trader .trader-attr{z-index:2;color:#f5e7c4;font-family:var(--font-body);font-size:var(--text-micro);white-space:nowrap;text-overflow:ellipsis;background:#0000008c;padding:3px 6px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.today-trader .today-tile-body{flex-direction:column;justify-content:center;gap:4px;min-width:0;padding:20px 22px;display:flex}.today-trader .trader-kicker{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);align-items:center;gap:6px;margin-bottom:6px;display:flex}.today-trader .trader-kicker .ic-svg{width:12px;height:12px}.today-trader .trader-name{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink);font-weight:600;line-height:1.1}.today-trader .trader-cat{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:10px}.today-trader .trader-quote{font-family:var(--font-display);font-size:var(--text-sm);color:var(--ink-soft);border-left:3px solid var(--accent);-webkit-line-clamp:4;-webkit-box-orient:vertical;padding-left:12px;font-style:italic;line-height:1.45;display:-webkit-box;overflow:hidden}.today-radio{background:linear-gradient(135deg, var(--bg-alt) 0%, var(--paper) 100%);border-color:var(--neon);cursor:pointer;text-align:left;width:100%;min-height:130px;font:inherit;appearance:none}.today-radio .today-tile-body{flex-direction:row;align-items:center;gap:14px;display:flex}.today-radio .radio-play-ic{border:1.5px solid var(--neon);width:34px;height:34px;color:var(--neon);box-shadow:0 0 8px var(--neon-glow);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.today-radio .radio-play-ic .ic-svg{width:13px;height:13px}.today-radio .radio-info{flex:1;min-width:0}.today-radio .radio-live{font-size:var(--text-micro);color:var(--neon);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:6px;margin-bottom:6px;font-weight:700;display:flex}.today-radio .radio-live:before{content:"";background:var(--neon);width:8px;height:8px;box-shadow:0 0 10px var(--neon);border-radius:50%}.today-radio.is-playing .radio-live:before{animation:1.5s ease-in-out infinite tdy-radio-pulse}@keyframes tdy-radio-pulse{0%,to{opacity:1}50%{opacity:.4}}.today-radio .radio-show{font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px;font-weight:600;overflow:hidden}.today-radio .radio-presenter{font-size:var(--text-sm);color:var(--ink-soft)}.today-radio .radio-art{background:linear-gradient(135deg, var(--accent) 0%, var(--neon) 100%);width:60px;height:60px;box-shadow:0 0 14px var(--neon-glow), 0 3px 12px #00000059;border-radius:6px;flex-shrink:0;position:relative;overflow:hidden}.today-radio .radio-art .art-ic{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.today-radio .radio-art .art-ic .ic-svg{color:#ffffffd9;width:26px;height:26px}.today-radio .radio-art:after{content:"";pointer-events:none;background:linear-gradient(135deg,#0000 50%,#00000073 100%);position:absolute;inset:0}.today-radio .radio-art .now-eq{z-index:2;align-items:flex-end;gap:2px;width:16px;height:12px;display:flex;position:absolute;bottom:5px;right:5px}.today-radio .radio-art .now-eq span{background:#fff;border-radius:1px;width:3px;height:40%;display:block}.today-radio.is-playing .radio-art .now-eq span:first-child{animation:1s ease-in-out infinite tdy-eq}.today-radio.is-playing .radio-art .now-eq span:nth-child(2){animation:.85s ease-in-out .15s infinite tdy-eq}.today-radio.is-playing .radio-art .now-eq span:nth-child(3){animation:1.1s ease-in-out .3s infinite tdy-eq}@keyframes tdy-eq{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}.today-radio.is-playing{box-shadow:0 0 0 2px var(--neon), 0 0 16px var(--neon-glow)}@media (prefers-reduced-motion:reduce){.today-radio .now-eq span,.today-radio .radio-live:before{animation:none!important}}.today-placeholder{text-align:center;border:1.5px dashed var(--rule);border-radius:var(--radius);background:var(--paper);flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:140px;padding:26px 20px;display:flex}.today-placeholder .ph-icon .ic-svg{width:26px;height:26px;color:var(--rule);margin-bottom:6px}.today-placeholder .ph-title,.today-placeholder .ph-sub,.today-placeholder .ph-tag{display:block}.today-placeholder .ph-title{font-family:var(--font-display);font-size:var(--text-md);color:var(--ink-soft);font-weight:600}.today-placeholder .ph-sub{font-family:var(--font-body);font-size:var(--text-sm);color:var(--mute)}.today-placeholder .ph-tag{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-top:6px}@media (max-width:767px){.today-tv,.today-trader{flex-direction:column}.today-tv .today-tile-img,.today-trader .today-tile-img{aspect-ratio:16/9;flex:none;width:100%;min-height:0}}@media (min-width:768px){.wire-wrap.today{max-width:980px}.today-row .today-cell>.today-tile,.today-row .today-cell>.today-placeholder{flex:1}.today-row{grid-template-columns:repeat(12,1fr);align-items:stretch}.today-cell.t-8{grid-column:span 8}.today-cell.t-4{grid-column:span 4}.today-shire-strip .today-row{grid-template-columns:1fr 1fr}}.local-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);margin-bottom:10px;padding:11px 13px;transition:border-color .15s}.local-card:hover{border-color:var(--accent)}.local-card.highlight{border-color:var(--accent);background:linear-gradient(180deg, var(--paper) 0%, var(--bg-alt) 100%)}.local-card .lc-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:5px;display:flex}.local-card .lc-name{font-family:var(--font-display);font-size:var(--text-md);color:var(--ink);font-weight:600}.local-card .lc-hours{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft);margin-bottom:7px}.local-card .lc-meta{flex-direction:column;gap:3px;display:flex}.local-card .lc-line{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft);align-items:center;gap:6px;padding:2px 0;text-decoration:none;display:inline-flex}.local-card .lc-line:hover{color:var(--ink)}.local-card .lc-line .ic-svg{width:14px;height:14px;color:var(--accent);flex-shrink:0}.local-card .lc-line.lc-info{color:var(--neon);font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.14em;text-transform:uppercase;margin-top:3px;font-weight:700}.status-pill{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;border-radius:3px;flex-shrink:0;align-items:center;gap:3px;padding:3px 8px;font-weight:700;display:inline-flex}.status-pill.open{background:var(--neon);color:var(--bg);box-shadow:0 0 8px var(--neon-glow)}.status-pill.closing{background:var(--accent);color:var(--bg)}.status-pill.closed{color:var(--mute);border:1px solid var(--rule);background:0 0}.status-pill.seasonal{color:var(--accent);border:1px solid var(--accent);background:0 0}.local-section-head{font-family:var(--font-display);font-size:var(--text-lg);margin:24px 0 12px;font-weight:600}.local-toc{display:none}@media (min-width:768px){.wire-wrap.local-wrap{max-width:980px}.local-desktop{grid-template-columns:180px minmax(0,1fr);align-items:start;gap:28px;display:grid}.local-toc{font-family:var(--font-body);font-size:var(--text-sm);display:block;position:sticky;top:14px}.local-toc .toc-kicker{font-size:var(--text-micro);letter-spacing:.22em;text-transform:uppercase;color:var(--mute);margin-bottom:8px}.local-toc a{color:var(--ink-soft);border-bottom:1px solid var(--rule);padding:6px 0;text-decoration:none;display:block}.local-toc a:hover{color:var(--ink);border-color:var(--accent)}}.scan-cta{padding:12px 0 4px}.scan-btn{font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.01em;border:1px solid var(--neon);color:var(--neon);cursor:pointer;box-shadow:0 1px 9px var(--neon);background:0 0;border-radius:999px;align-items:center;gap:7px;padding:9px 18px;font-weight:700;text-decoration:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.scan-btn{box-shadow:0 1px 9px color-mix(in srgb, var(--neon) 30%, transparent)}}.scan-btn{transition:box-shadow .15s}.scan-btn:hover{box-shadow:0 1px 16px var(--neon)}@supports (color:color-mix(in lab, red, red)){.scan-btn:hover{box-shadow:0 1px 16px color-mix(in srgb, var(--neon) 50%, transparent)}}.scan-btn__label--desktop{display:none}@media (min-width:768px){.scan-btn__label--mobile{display:none}.scan-btn__label--desktop{display:inline}}.scan-hint{font-family:var(--font-body);font-size:var(--text-label);color:var(--mute);line-height:var(--leading-body);margin:6px 2px 0}.scan-view{flex-direction:column;gap:16px;max-width:480px;margin:0 auto;padding:12px 0 24px;display:flex}.scan-view--nocam{padding-top:28px}.scan-nocam-hd{text-align:center}.scan-nocam-hd h1{font-family:var(--font-display);margin:0 0 4px;font-size:1.5rem}.scan-nocam-hd p{opacity:.7;font-size:var(--text-sm);margin:0}.scan-view--nocam .scan-upload button{width:100%}.scan-status.scan-status--block{color:inherit;text-shadow:none;opacity:.85;padding:4px 0;position:static}.scan-stage{aspect-ratio:3/4;border-radius:var(--radius);background:#000;width:100%;position:relative;overflow:hidden}.scan-video{object-fit:cover;width:100%;height:100%}.scan-frame{aspect-ratio:1;border:3px solid #ffffffd9;border-radius:16px;width:64%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 9999px #00000059}.scan-status{text-align:center;font-family:var(--font-body);font-size:var(--text-sm);color:#fff;text-shadow:0 1px 3px #0009;padding:0 16px;font-weight:600;position:absolute;bottom:64px;left:0;right:0}.scan-guide{border:2px solid var(--neon);position:absolute;inset:7% 8% 18%}@supports (color:color-mix(in lab, red, red)){.scan-guide{border:2px solid color-mix(in srgb, var(--neon) 65%, transparent)}}.scan-guide{pointer-events:none;box-shadow:0 0 18px var(--neon);border-radius:14px}@supports (color:color-mix(in lab, red, red)){.scan-guide{box-shadow:0 0 18px color-mix(in srgb, var(--neon) 25%, transparent)}}.scan-retake{border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.scan-retake{border-color:color-mix(in srgb, var(--accent) 70%, transparent)}}.scan-retake{box-shadow:0 0 18px var(--accent)}@supports (color:color-mix(in lab, red, red)){.scan-retake{box-shadow:0 0 18px color-mix(in srgb, var(--accent) 30%, transparent)}}.scan-shutter{border:1px solid var(--neon);background:var(--neon);color:var(--bg);font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.01em;cursor:pointer;box-shadow:0 1px 14px var(--neon);border-radius:999px;padding:11px 26px;font-weight:700;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab, red, red)){.scan-shutter{box-shadow:0 1px 14px color-mix(in srgb, var(--neon) 45%, transparent)}}.scan-shutter{transition:box-shadow .15s,opacity .12s}.scan-shutter:hover{box-shadow:0 1px 22px var(--neon)}@supports (color:color-mix(in lab, red, red)){.scan-shutter:hover{box-shadow:0 1px 22px color-mix(in srgb, var(--neon) 60%, transparent)}}.scan-shutter:disabled{opacity:.5;cursor:default}@keyframes scan-shutter-pulse{0%,to{transform:translate(-50%)scale(1)}50%{transform:translate(-50%)scale(1.06)}}.scan-shutter:not(:disabled):not(.is-busy){animation:2.4s ease-in-out infinite scan-shutter-pulse}.scan-shutter.is-busy{opacity:.9;align-items:center;gap:8px;display:inline-flex}@keyframes scan-spin{to{transform:rotate(360deg)}}.scan-spinner{border:2px solid var(--bg);border-radius:50%;width:14px;height:14px}@supports (color:color-mix(in lab, red, red)){.scan-spinner{border:2px solid color-mix(in srgb, var(--bg) 35%, transparent)}}.scan-spinner{border-top-color:var(--bg);animation:.8s linear infinite scan-spin}@media (prefers-reduced-motion:reduce){.scan-shutter:not(:disabled):not(.is-busy){animation:none}.scan-spinner{animation-duration:2.4s}}.scan-alert{border-radius:var(--radius);border:1px solid var(--accent);background:var(--bg);z-index:3;align-items:flex-start;gap:10px;padding:14px 12px 14px 16px;display:flex;position:absolute;top:50%;left:12px;right:12px;transform:translateY(-50%);box-shadow:0 6px 28px #00000073}.scan-alert--error{border-color:var(--accent)}.scan-alert--success{border-color:var(--neon)}.scan-alert-body{flex-direction:column;flex:1;gap:12px;display:flex}.scan-alert-actions{flex-wrap:wrap;gap:8px;display:flex}.scan-alert-action{border-radius:var(--radius);border:1px solid var(--fg,var(--ink));justify-content:center;align-items:center;min-height:44px;padding:12px 14px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.scan-alert-action{border:1px solid color-mix(in srgb, var(--fg,var(--ink)) 30%, transparent)}}.scan-alert-action{color:var(--fg,var(--ink));font-family:var(--font-display);font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;font-weight:700}.scan-alert-action.is-primary{border-color:var(--neon);background:var(--neon);color:var(--bg)}.scan-alert--retake{border-color:var(--neon)}@supports (color:color-mix(in lab, red, red)){.scan-alert--retake{border-color:color-mix(in srgb, var(--neon) 70%, transparent)}}.scan-alert--inline{box-shadow:none;margin:12px 0 0;position:static;transform:none}.scan-alert-msg{font-family:var(--font-body);font-size:var(--text-sm);color:var(--fg);margin:0;line-height:1.4}.scan-alert-close{width:32px;height:32px;color:var(--fg);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.scan-alert-close:hover{background:var(--fg)}@supports (color:color-mix(in lab, red, red)){.scan-alert-close:hover{background:color-mix(in srgb, var(--fg) 10%, transparent)}}.scan-retry{color:var(--neon);font-size:var(--text-sm);cursor:pointer;opacity:.85;background:0 0;border:none;margin:0 auto 10px;padding:0;font-weight:600;text-decoration:underline;display:block}.scan-upload{justify-content:center;padding:0 14px;display:flex}.scan-upload button{border:1px solid var(--neon);color:var(--neon);font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.01em;cursor:pointer;box-shadow:0 1px 9px var(--neon);background:0 0;border-radius:999px;align-items:center;gap:7px;padding:9px 18px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.scan-upload button{box-shadow:0 1px 9px color-mix(in srgb, var(--neon) 30%, transparent)}}.scan-upload button{transition:box-shadow .15s,opacity .12s}.scan-upload button:hover{box-shadow:0 1px 16px var(--neon)}@supports (color:color-mix(in lab, red, red)){.scan-upload button:hover{box-shadow:0 1px 16px color-mix(in srgb, var(--neon) 50%, transparent)}}.scan-upload button:disabled{opacity:.5;cursor:default}.scan-manual{flex-direction:column;gap:6px;padding:0 14px 4px;display:flex}.scan-manual label{font-family:var(--font-body);font-size:var(--text-label);color:var(--mute);letter-spacing:.06em}.scan-manual input{border-radius:var(--radius);border:1px solid var(--rule);background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--text-body);outline:none;padding:10px 12px;transition:border-color .12s}.scan-manual input:focus{border-color:var(--accent)}.scan-manual button{border:1px solid var(--neon);background:var(--neon);color:var(--bg);font-family:var(--font-display);font-size:var(--text-sm);cursor:pointer;border-radius:999px;padding:10px;font-weight:700;transition:opacity .12s}.scan-manual button:hover{opacity:.85}.scan-manual button:disabled{opacity:.45;cursor:default}.capture-pill{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.1em;text-transform:uppercase;background:var(--bg-alt);color:var(--mute);border:1px solid var(--rule);border-radius:3px;margin-bottom:4px;padding:2px 7px;font-weight:700;display:inline-block}.capture-pill[data-status=in_review]{background:var(--accent);border-color:var(--accent);color:var(--bg)}.capture-pill[data-status=kept]{background:var(--cat-move);border-color:var(--cat-move);color:#fff}.submit-wrap{max-width:640px;padding-bottom:64px}@media (min-width:768px){.submit-wrap{max-width:640px}}.submit-gate{color:var(--ink-soft);font-size:var(--text-body);flex-direction:column;align-items:flex-start;gap:12px;padding:18px 0;display:flex}.submit-cta{padding:4px 0 10px}.submit-cta-btn{font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.01em;border:1px solid var(--neon);background:var(--neon);color:var(--bg);cursor:pointer;box-shadow:0 1px 9px var(--neon);border-radius:999px;align-items:center;gap:7px;padding:9px 18px;font-weight:700;text-decoration:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.submit-cta-btn{box-shadow:0 1px 9px color-mix(in srgb, var(--neon) 30%, transparent)}}.submit-cta-btn{transition:box-shadow .15s,opacity .12s}.submit-cta-btn:hover{box-shadow:0 1px 16px var(--neon)}@supports (color:color-mix(in lab, red, red)){.submit-cta-btn:hover{box-shadow:0 1px 16px color-mix(in srgb, var(--neon) 50%, transparent)}}.submit-cta-hint{font-family:var(--font-body);font-size:var(--text-label);color:var(--mute);line-height:var(--leading-body);margin:6px 2px 0}.submit-form{flex-direction:column;gap:22px;padding-top:4px;display:flex}.submit-section-title{font-family:var(--font-display);font-size:var(--text-md);color:var(--ink);align-items:center;gap:8px;margin:0 0 8px;display:flex}.submit-help{font-size:var(--text-label);color:var(--mute);line-height:var(--leading-body);margin:0 0 10px}.submit-seed,.submit-fields{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);padding:14px 14px 16px}.submit-field{flex-direction:column;gap:5px;margin-bottom:12px;display:flex}.submit-field:last-child{margin-bottom:0}.submit-field label,.submit-field legend{font-family:var(--font-body);font-size:var(--text-label);color:var(--mute);letter-spacing:.04em}.submit-field input[type=text],.submit-field input[type=url],.submit-field input[type=date],.submit-field input[type=time],.submit-field textarea,.submit-url-controls input{border-radius:var(--radius);border:1px solid var(--rule);background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-body);outline:none;padding:10px 12px;transition:border-color .12s}.submit-field input:focus,.submit-field textarea:focus,.submit-url-controls input:focus{border-color:var(--accent)}.submit-field textarea{resize:vertical;min-height:96px}.submit-field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:480px){.submit-field-row{grid-template-columns:1fr}}.submit-field-error{font-size:var(--text-label);color:var(--neon);margin:0}.submit-field-hint{font-size:var(--text-label);color:var(--accent);line-height:var(--leading-body);margin:0}.submit-check{font-size:var(--text-sm);color:var(--ink-soft);cursor:pointer;align-items:center;gap:8px;margin:0 0 12px;display:inline-flex}.submit-check input{accent-color:var(--neon)}.submit-url-row label{font-size:var(--text-label);color:var(--mute);margin-bottom:5px;display:block}.submit-url-controls{flex-wrap:wrap;gap:8px;display:flex}.submit-url-controls input{flex:180px;min-width:0}.submit-scan-row{margin-top:12px}.submit-cats{flex-wrap:wrap;gap:6px;display:flex}.submit-cat{border:1px solid var(--rule);background:var(--bg);color:var(--ink-soft);font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border-radius:3px;padding:4px 9px;font-weight:700}.submit-cat.on{border-color:var(--neon);background:var(--neon)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on{background:color-mix(in srgb, var(--neon) 12%, var(--paper))}}.submit-cat.on{color:var(--ink)}.submit-cat[data-cat=music],.submit-cat[data-cat=film],.submit-cat[data-cat=theatre],.submit-cat[data-cat=arts],.submit-cat[data-cat=dance]{border-color:var(--cat-show);color:#ba437c}.submit-cat[data-cat=markets]{color:#176842;border-color:#176842}.submit-cat[data-cat=food]{border-color:var(--cat-browse);color:#a55c2b}.submit-cat[data-cat=festivals]{border-color:var(--cat-festival);color:#177b7a}.submit-cat[data-cat=sport],.submit-cat[data-cat=wellbeing]{border-color:var(--cat-move);color:#297d4d}.submit-cat[data-cat=workshop],.submit-cat[data-cat=talks]{border-color:var(--cat-learn);color:#2d72b2}.submit-cat[data-cat=volunteer],.submit-cat[data-cat=fundraiser],.submit-cat[data-cat=community-meals]{border-color:var(--cat-help);color:#8659ba}.submit-cat[data-cat=kids],.submit-cat[data-cat=family],.submit-cat[data-cat=seniors]{border-color:var(--cat-people);color:#826d2d}.submit-cat.on[data-cat=music],.submit-cat.on[data-cat=film],.submit-cat.on[data-cat=theatre],.submit-cat.on[data-cat=arts],.submit-cat.on[data-cat=dance]{background:var(--cat-show);border-color:var(--cat-show);color:#fff;box-shadow:0 0 8px var(--cat-show)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on[data-cat=music],.submit-cat.on[data-cat=film],.submit-cat.on[data-cat=theatre],.submit-cat.on[data-cat=arts],.submit-cat.on[data-cat=dance]{box-shadow:0 0 8px color-mix(in srgb, var(--cat-show) 35%, transparent)}}.submit-cat.on[data-cat=markets]{color:#fff;background:#176842;border-color:#176842;box-shadow:0 0 8px #17684259}.submit-cat.on[data-cat=food]{background:var(--cat-browse);border-color:var(--cat-browse);color:var(--ink);box-shadow:0 0 8px var(--cat-browse)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on[data-cat=food]{box-shadow:0 0 8px color-mix(in srgb, var(--cat-browse) 35%, transparent)}}.submit-cat.on[data-cat=festivals]{background:var(--cat-festival);border-color:var(--cat-festival);color:var(--ink);box-shadow:0 0 8px var(--cat-festival)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on[data-cat=festivals]{box-shadow:0 0 8px color-mix(in srgb, var(--cat-festival) 35%, transparent)}}.submit-cat.on[data-cat=sport],.submit-cat.on[data-cat=wellbeing]{background:var(--cat-move);border-color:var(--cat-move);color:var(--ink);box-shadow:0 0 8px var(--cat-move)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on[data-cat=sport],.submit-cat.on[data-cat=wellbeing]{box-shadow:0 0 8px color-mix(in srgb, var(--cat-move) 35%, transparent)}}.submit-cat.on[data-cat=workshop],.submit-cat.on[data-cat=talks]{background:var(--cat-learn);border-color:var(--cat-learn);color:var(--cat-on-strong);box-shadow:0 0 8px var(--cat-learn)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on[data-cat=workshop],.submit-cat.on[data-cat=talks]{box-shadow:0 0 8px color-mix(in srgb, var(--cat-learn) 35%, transparent)}}.submit-cat.on[data-cat=volunteer],.submit-cat.on[data-cat=fundraiser],.submit-cat.on[data-cat=community-meals]{background:var(--cat-help);border-color:var(--cat-help);color:#fff;box-shadow:0 0 8px var(--cat-help)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on[data-cat=volunteer],.submit-cat.on[data-cat=fundraiser],.submit-cat.on[data-cat=community-meals]{box-shadow:0 0 8px color-mix(in srgb, var(--cat-help) 35%, transparent)}}.submit-cat.on[data-cat=kids],.submit-cat.on[data-cat=family],.submit-cat.on[data-cat=seniors]{background:var(--cat-people);border-color:var(--cat-people);color:var(--cat-on-strong);box-shadow:0 0 8px var(--cat-people)}@supports (color:color-mix(in lab, red, red)){.submit-cat.on[data-cat=kids],.submit-cat.on[data-cat=family],.submit-cat.on[data-cat=seniors]{box-shadow:0 0 8px color-mix(in srgb, var(--cat-people) 35%, transparent)}}.submit-cost{flex-direction:column;gap:4px;display:flex}.submit-image-thumb{object-fit:cover;border-radius:var(--radius);border:1px solid var(--rule);background:var(--bg-alt);width:88px;height:110px;margin-top:10px}.submit-actions{justify-content:flex-end;gap:10px;padding-top:4px;display:flex}.submit-btn{font-family:var(--font-display);font-size:var(--text-sm);letter-spacing:.01em;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:10px 16px;font-weight:700;text-decoration:none;transition:opacity .12s,box-shadow .15s;display:inline-flex}.submit-btn:disabled{opacity:.5;cursor:default}.submit-btn--primary{background:var(--neon);border-color:var(--neon);color:var(--bg);box-shadow:0 1px 9px var(--neon)}@supports (color:color-mix(in lab, red, red)){.submit-btn--primary{box-shadow:0 1px 9px color-mix(in srgb, var(--neon) 30%, transparent)}}.submit-btn--secondary{border-color:var(--neon);color:var(--neon);background:0 0}.submit-btn--ghost{border-color:var(--rule);color:var(--ink-soft);background:0 0}.submit-btn.submit-cta-primary{border-radius:var(--radius);width:100%;padding:13px;display:block}.submit-error{border-radius:var(--radius);border:1px solid var(--neon);padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.submit-error{border:1px solid color-mix(in srgb, var(--neon) 45%, var(--rule))}}.submit-error{background:var(--neon)}@supports (color:color-mix(in lab, red, red)){.submit-error{background:color-mix(in srgb, var(--neon) 10%, var(--paper))}}.submit-error{color:var(--ink);font-size:var(--text-sm)}.submit-preview{flex-direction:column;gap:14px;display:flex}.submit-preview-kicker{font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin:0;font-weight:700}.submit-preview-card{pointer-events:none;cursor:default;text-decoration:none}.submit-preview-desc{font-size:var(--text-sm);color:var(--ink-soft);line-height:var(--leading-body);margin:8px 0 0}.submit-preview-desc--empty{color:var(--mute);font-style:italic}.submit-preview-link{font-size:var(--text-label);color:var(--mute);word-break:break-all;margin:6px 0 0}.submit-preview-note{font-size:var(--text-label);color:var(--mute);margin:0}.submit-preview-actions{flex-wrap:wrap;justify-content:space-between;gap:10px;display:flex}.submit-incomplete{border-radius:var(--radius);border:1px dashed var(--accent);background:var(--accent);padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.submit-incomplete{background:color-mix(in srgb, var(--accent) 8%, var(--paper))}}.submit-incomplete-title{font-size:var(--text-sm);color:var(--ink);margin:0 0 6px;font-weight:700}.submit-incomplete ul{font-size:var(--text-label);color:var(--ink-soft);margin:0;padding-left:1.1em}.submit-dialog-backdrop{z-index:40;background:var(--ink);position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.submit-dialog-backdrop{background:color-mix(in srgb, var(--ink) 45%, transparent)}}.submit-dialog-backdrop{justify-content:center;align-items:center;padding:20px;display:flex}.submit-dialog{background:var(--paper);border:1px solid var(--rule);border-radius:calc(var(--radius) + 2px);width:min(420px,100%);max-height:min(90vh,640px);box-shadow:0 12px 40px var(--ink);padding:18px 16px 16px;overflow:auto}@supports (color:color-mix(in lab, red, red)){.submit-dialog{box-shadow:0 12px 40px color-mix(in srgb, var(--ink) 25%, transparent)}}.submit-dialog h2{font-size:var(--text-lg);color:var(--ink);margin-bottom:8px}.submit-dup-card{border-radius:var(--radius);border:1px solid var(--rule);background:var(--bg);font-size:var(--text-sm);color:var(--ink-soft);flex-direction:column;gap:4px;margin:12px 0 16px;padding:12px;display:flex}.submit-dup-card strong{color:var(--ink);font-family:var(--font-display);font-size:var(--text-body)}.submit-dup-status{font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);font-weight:700}.submit-dialog-actions{flex-direction:column;gap:8px;display:flex}.submit-dialog-actions .submit-btn{width:100%}.submit-success{flex-direction:column;align-items:flex-start;gap:12px;padding:20px 0;display:flex}.submit-success h2{font-size:var(--text-lg);color:var(--ink)}.submit-success p{font-size:var(--text-body);color:var(--ink-soft);max-width:36em;margin:0}.submit-success-icon{width:28px;height:28px;color:var(--cat-move)}.submit-success-meta{font-size:var(--text-label);color:var(--mute)}.me-submissions-list{flex-direction:column;gap:12px;margin-bottom:8px;display:flex}.me-directory-requests-list{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.me-directory-request{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);min-height:72px;color:var(--ink);justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;text-decoration:none;display:flex}.me-directory-request:hover,.me-directory-request:focus-visible{border-color:var(--accent)}.me-directory-request-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.me-directory-request-copy strong{overflow-wrap:anywhere}.me-directory-request-kind,.me-directory-request-copy time{color:var(--mute);font-size:var(--text-label)}.me-directory-request-side{color:var(--accent);flex:none;align-items:center;gap:10px;display:flex}.me-directory-request-status{background:var(--accent);border-radius:3px;padding:4px 7px}@supports (color:color-mix(in lab, red, red)){.me-directory-request-status{background:color-mix(in srgb, var(--accent) 13%, var(--paper))}}.me-directory-request-status{color:var(--ink);font-size:var(--text-micro);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.me-directory-request-status[data-status=approved]{background:var(--cat-move)}@supports (color:color-mix(in lab, red, red)){.me-directory-request-status[data-status=approved]{background:color-mix(in srgb, var(--cat-move) 18%, var(--paper))}}.me-directory-request-status[data-status=rejected],.me-directory-request-status[data-status=withdrawn]{background:var(--mute)}@supports (color:color-mix(in lab, red, red)){.me-directory-request-status[data-status=rejected],.me-directory-request-status[data-status=withdrawn]{background:color-mix(in srgb, var(--mute) 16%, var(--paper))}}.me-directory-suggestions{gap:10px;margin-top:12px;display:grid}.me-directory-suggestion{border:1px solid var(--rule);background:var(--paper);padding:14px}@supports (color:color-mix(in lab, red, red)){.me-directory-suggestion{background:color-mix(in srgb, var(--paper) 90%, var(--neon))}}.me-directory-suggestion-label{color:var(--mute);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;font-weight:800}.me-directory-suggestion p{color:var(--ink);font-size:var(--text-sm);margin:8px 0 0;line-height:1.55}.me-directory-suggestion-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.me-directory-suggestion-actions button{border:1px solid var(--ink);background:var(--paper);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;padding:8px 12px;font-weight:800}.me-directory-suggestion-actions button:first-child{border-color:var(--neon)}.me-directory-suggestion-actions button:disabled{cursor:wait;opacity:.55}.me-directory-suggestion-error{color:var(--accent);font-size:var(--text-sm)}@media (max-width:560px){.me-directory-request{align-items:flex-start}.me-directory-request-side{flex-direction:column;align-items:flex-end}}.my-sub-card{border:1px solid var(--rule);border-radius:var(--radius);background:var(--paper);padding:12px 12px 10px}.my-sub-main{grid-template-columns:auto 1fr auto;align-items:start;gap:10px 12px;display:grid}.my-sub-date{text-align:center;min-width:42px;color:var(--mute);font-family:var(--font-body);line-height:1.1}.my-sub-date .dow{font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.06em}.my-sub-date .day{font-size:var(--text-lg);color:var(--ink);font-weight:700}.my-sub-date .mon{font-size:var(--text-micro);text-transform:uppercase;letter-spacing:.06em}.my-sub-body{min-width:0}.my-sub-meta{flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:4px;display:flex}.my-sub-status{font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--rule);color:var(--ink-soft);border-radius:999px;align-items:center;padding:2px 8px;font-weight:700;display:inline-flex}.my-sub-status--pending{color:#a87a16;border-color:#a87a16}@supports (color:color-mix(in lab, red, red)){.my-sub-status--pending{border-color:color-mix(in srgb, #a87a16 45%, var(--rule))}}.my-sub-status--pending{background:#a87a161a}.my-sub-status--published{color:#2d8a3e;border-color:#2d8a3e}@supports (color:color-mix(in lab, red, red)){.my-sub-status--published{border-color:color-mix(in srgb, #2d8a3e 45%, var(--rule))}}.my-sub-status--published{background:#2d8a3e1a}.my-sub-status--withdrawn,.my-sub-status--declined,.my-sub-status--cancelled,.my-sub-status--cancelled_shown{color:var(--mute)}.my-sub-path{font-size:var(--text-label);color:var(--mute)}.my-sub-title{font-family:var(--font-display);font-size:var(--text-md);color:var(--ink);line-height:var(--leading-body);margin:0 0 2px}.my-sub-where{font-size:var(--text-label);color:var(--mute);line-height:var(--leading-body)}.my-sub-thumb{object-fit:cover;border-radius:calc(var(--radius) - 2px);background:var(--rule);width:56px;height:70px}.my-sub-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.my-sub-edit{border-top:1px dashed var(--rule);margin-top:16px;padding-top:14px}.my-sub-image-edit{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;margin-bottom:12px;display:flex}.my-sub-confirm{border-radius:var(--radius);border:1px solid #c0392b;margin-top:10px;padding:10px 12px}@supports (color:color-mix(in lab, red, red)){.my-sub-confirm{border:1px solid color-mix(in srgb, #c0392b 35%, var(--rule))}}.my-sub-confirm{background:#c0392b}@supports (color:color-mix(in lab, red, red)){.my-sub-confirm{background:color-mix(in srgb, #c0392b 6%, var(--paper))}}.my-sub-confirm p{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 8px}.my-sub-error{font-size:var(--text-label);color:#c0392b;margin-top:8px}.my-sub-note{font-size:var(--text-label);color:var(--mute);margin:8px 0 0}.submit-scan-mobile{display:inline-flex}.submit-scan-desktop{display:none}@media (min-width:768px){.submit-scan-mobile{display:none}.submit-scan-desktop{display:flex}}.submit-scan-mobile{justify-content:center;width:100%}.submit-scan-mobile .ic-svg{width:20px;height:20px}.submit-scan-dropzone{border:2px dashed var(--mute);border-radius:var(--radius);width:100%;color:var(--ink-soft);text-align:center;cursor:pointer;background:0 0;flex-direction:column;align-items:center;gap:2px;padding:18px 14px;transition:border-color .15s,background .15s}.submit-scan-dropzone:hover:not(:disabled){border-color:var(--neon);background:var(--neon)}@supports (color:color-mix(in lab, red, red)){.submit-scan-dropzone:hover:not(:disabled){background:color-mix(in srgb, var(--neon) 6%, var(--paper))}}.submit-scan-dropzone:hover:not(:disabled){color:var(--neon)}.submit-scan-dropzone[data-drag-active]:not(:disabled){border-color:var(--neon);background:var(--neon)}@supports (color:color-mix(in lab, red, red)){.submit-scan-dropzone[data-drag-active]:not(:disabled){background:color-mix(in srgb, var(--neon) 12%, var(--paper))}}.submit-scan-dropzone[data-drag-active]:not(:disabled){color:var(--neon)}.submit-scan-dropzone:disabled{cursor:default;opacity:.5}.submit-scan-dropzone .ic-svg{width:26px;height:26px;color:var(--neon)}.submit-scan-dropzone__icon{margin-bottom:4px}.submit-scan-dropzone__txt{font-family:var(--font-display);font-size:var(--text-sm);color:var(--ink);font-weight:700}.submit-scan-dropzone__sub{font-size:var(--text-label);color:var(--mute);margin-top:4px}.poster-scanner-overlay{z-index:20;background:var(--bg);align-items:center;padding:16px;display:grid;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.poster-scanner-overlay{background:color-mix(in srgb, var(--bg) 92%, transparent)}}.poster-scanner-overlay>section{width:min(100%,480px);margin:0 auto}.scan-close{min-width:44px;min-height:44px;font-size:var(--text-sm)}.submit-reading-spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:1em;height:1em;animation:.8s linear infinite submit-spin}@keyframes submit-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.submit-reading-spinner{animation:none}}.notices-page{width:100%;max-width:1080px;margin:0 auto;padding:20px 16px 48px}.notices-header{border-bottom:1px solid var(--rule);margin-bottom:12px;padding-bottom:12px}.notices-header h1{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--ink);line-height:1.1}.notices-sub{font-size:var(--text-label);letter-spacing:.18em;text-transform:uppercase;color:var(--mute);margin-top:4px}.notices-filter-wrap{border-bottom:1px solid var(--rule);margin-bottom:12px;padding:8px 0}.notices-filter-row{gap:6px;display:flex}.notices-filter{border-radius:var(--radius);font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;color:var(--filter-label,var(--filter-fill,var(--ink-soft)));border:1px solid var(--filter-fill,var(--rule));cursor:pointer;background:0 0;flex:none;padding:4px 9px;font-weight:700;transition:background .12s,color .12s,box-shadow .12s,border-color .12s}@media (hover:hover){.notices-filter:hover{border-color:var(--filter-fill,var(--accent));color:var(--ink)}}.notices-filter[aria-pressed=true]{background:var(--filter-fill);color:var(--filter-ink);border-color:var(--filter-fill);box-shadow:0 0 8px var(--filter-fill,var(--accent))}@supports (color:color-mix(in lab, red, red)){.notices-filter[aria-pressed=true]{box-shadow:0 0 8px color-mix(in srgb, var(--filter-fill,var(--accent)) 40%, transparent)}}.notices-filter--all{border-color:var(--rule);color:var(--ink-soft)}.notices-filter--all[aria-pressed=true]{background:var(--ink-soft);color:var(--paper);border-color:var(--ink-soft);box-shadow:0 1px 3px #1c120840}.notices-filter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notices-grid{grid-template-columns:1fr;gap:12px;display:grid}@media (min-width:768px){.notices-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.notices-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.notice-card{background:var(--paper);border:1px solid var(--rule);border-left:3px solid var(--accent);border-radius:var(--radius)}.notice-card__link{color:inherit;padding:12px 14px;text-decoration:none;transition:transform .12s;display:block}.notice-card__link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}@media (hover:hover){.notice-card:hover{border-color:var(--accent)}.notice-card:hover .notice-card__link{transform:translate(2px)}}@media (prefers-reduced-motion:reduce){.notices-filter,.notice-card__link{transition:none}.notice-card:hover .notice-card__link{transform:none}}.notice-card__top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.notice-badge{font-size:var(--text-micro);letter-spacing:.16em;text-transform:uppercase;border-radius:3px;padding:2px 8px;font-weight:700;display:inline-block}.notice-card__when{font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);white-space:nowrap}.notice-card__title{font-family:var(--font-display);font-size:var(--text-md);color:var(--ink);margin-bottom:5px;line-height:1.15}.notice-card__excerpt{font-size:var(--text-sm);color:var(--ink-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:6px;line-height:1.35;display:-webkit-box;overflow:hidden}.notice-card__meta{font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);flex-wrap:wrap;gap:8px;display:flex}.notice-card__source{font-size:var(--text-micro);color:var(--mute)}.notices-loadmore{min-height:44px;font-size:var(--text-sm);color:var(--ink);border:1.5px solid var(--rule);background:var(--paper);cursor:pointer;border-radius:999px;margin:20px auto 0;padding:10px 20px;display:block}.notices-loadmore:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notices-empty{font-size:var(--text-body);color:var(--ink-soft);padding:24px 0}.notices-clear{min-height:44px;font-size:var(--text-sm);color:var(--ink);border:1.5px solid var(--rule);background:var(--paper);cursor:pointer;border-radius:999px;margin-top:12px;padding:8px 16px}.notices-clear:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notices-skeleton-row{border-radius:var(--radius);background:var(--rule);opacity:.3;height:96px}.notice-detail__hero{aspect-ratio:16/9;margin:12px 0;position:relative;overflow:hidden}@media (min-width:768px){.notice-detail__hero{max-width:720px}}.notice-detail__title{font-size:var(--text-xl);color:var(--ink)}.notice-detail__expired{font-size:var(--text-sm);color:var(--neon);border:1px solid var(--neon);padding:8px}.notice-detail__body p{font-size:var(--text-body);color:var(--ink-soft);line-height:var(--leading-body)}.notice-detail__meta{font-size:var(--text-label);color:var(--mute);flex-wrap:wrap;gap:12px;display:flex}.notice-detail__source{font-size:var(--text-sm)}.notice-detail__source a{color:var(--accent)}.notice-detail__sourcetype{font-size:var(--text-micro);color:var(--mute)}.notice-detail__back a{font-size:var(--text-sm);color:var(--accent)}.notice-detail__chips{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.notice-detail__chip{font-size:var(--text-micro);background:var(--paper);border:1px solid var(--rule);color:var(--ink-soft);border-radius:999px;padding:2px 6px}.notice-detail__chip[data-kind]{border-color:#0000}.notice-detail__eventdate{font-size:var(--text-sm);color:var(--ink);margin:4px 0}.notice-detail__contact{font-size:var(--text-sm);color:var(--ink-soft)}.notice-detail__moreinfo a{font-size:var(--text-sm);color:var(--accent)}.today-notice{flex-direction:column;display:flex}.today-notice .nt-item{color:inherit;flex-direction:column;gap:5px;padding:16px 18px;text-decoration:none;display:flex}.today-notice .nt-item+.nt-item{border-top:1px solid var(--rule)}.today-notice .nt-item:hover .nt-title{color:var(--accent)}.today-notice .nt-top{align-items:center;gap:8px;display:flex}.today-notice .notice-badge{flex:none;align-self:flex-start}.today-notice .nt-when{font-family:var(--font-body);font-size:var(--text-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--mute);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.today-notice .nt-title{font-family:var(--font-display);font-size:var(--text-md);color:var(--ink);font-weight:600;line-height:1.25;transition:color .15s}.today-notice .nt-body{font-family:var(--font-body);font-size:var(--text-sm);color:var(--ink-soft);-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.45;display:-webkit-box;overflow:hidden}.today-notice .nt-empty{font-size:var(--text-sm);color:var(--mute);padding:16px 18px}.rate-limit{border:1px solid var(--mute);text-align:center;border-radius:8px;margin:12px 0;padding:16px}.rate-limit__msg{font-size:var(--text-sm)}.rate-limit__timer{font-size:var(--text-body);font-variant-numeric:tabular-nums;color:var(--mute)}.rate-limit__timer[data-warn=true]{color:var(--ink-soft)}.rate-limit__limit{font-size:var(--text-micro);color:var(--mute)}.rate-limit__retry{margin-top:8px}.smart-contact__note{font-size:var(--text-micro);color:var(--mute);margin:4px 0}.smart-contact__chip{font-size:var(--text-micro);border:1px dashed var(--mute);cursor:pointer;background:0 0;border-radius:999px;padding:4px 10px}.smart-contact__chip:disabled{cursor:default;opacity:.7}.smart-contact__chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notice-form label,.notice-form__kicker{font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin:16px 0 6px;font-weight:700;display:block}.notice-form .notice-form__kicker-hint{letter-spacing:0;text-transform:none;color:var(--mute);font-weight:400}.notice-form__sr-label{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.notice-form input,.notice-form select,.notice-form textarea{width:100%;font-size:var(--text-body);border:1px solid var(--rule);background:var(--paper);color:var(--ink);border-radius:8px;margin-bottom:10px;padding:12px}.notice-form textarea{min-height:96px}.notice-form :is(input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:1px}.input-prefix{border:1px solid var(--rule);background:var(--paper);border-radius:8px;align-items:center;margin-bottom:10px;display:flex}.input-prefix__sym{color:var(--mute);font-size:var(--text-body);padding:0 4px 0 12px}.notice-form .input-prefix input{background:0 0;border:0;margin-bottom:0}.notice-form__kinds{border:0;flex-wrap:wrap;gap:6px;margin:0 0 10px;padding:0;display:flex}.notice-form__kinds legend{font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;font-weight:700}.notice-form__kind{font-size:var(--text-micro);letter-spacing:.12em;text-transform:uppercase;border-radius:var(--radius);color:var(--filter-label,var(--ink-soft));border:1px solid var(--filter-fill,var(--rule));cursor:pointer;background:0 0;padding:4px 9px;font-weight:700;transition:background .12s,color .12s,box-shadow .12s}.notice-form__kind[data-active=true]{background:var(--filter-fill,var(--ink));color:var(--filter-ink,var(--bg));border-color:var(--filter-fill,var(--ink));box-shadow:0 0 8px var(--filter-fill,var(--accent))}@supports (color:color-mix(in lab, red, red)){.notice-form__kind[data-active=true]{box-shadow:0 0 8px color-mix(in srgb, var(--filter-fill,var(--accent)) 40%, transparent)}}.notice-form__kind:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.notice-form__hint{font-size:var(--text-micro);color:var(--mute);margin:-6px 0 10px}.notice-form__error{font-size:var(--text-micro);color:#c83020;margin:-6px 0 10px}.notice-form__expiry{font-size:var(--text-ui);margin:14px 0 4px}.notice-form__expiry-change{text-decoration:underline}.notice-form__submit{width:100%;font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;background:var(--accent);color:var(--paper);cursor:pointer;border:0;border-radius:8px;margin-top:18px;padding:12px;font-weight:700}.notice-form__submit:disabled{opacity:.6;cursor:default}.notice-form__override-prompt,.notice-form__done,.notice-form__stale,.notice-form__unavailable{border:1px solid var(--rule);border-radius:8px;margin:12px 0;padding:14px}.submit-tabs{border:1px solid var(--rule);border-radius:8px;gap:0;margin:12px 0 16px;display:flex;overflow:hidden}.submit-tab{font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;border:0;border-right:1px solid var(--rule);color:var(--mute);cursor:pointer;background:0 0;border-radius:0;flex:1;padding:11px 8px;font-weight:700}.submit-tab:last-child{border-right:0}.submit-tab[data-active=true]{background:var(--accent);color:var(--paper);box-shadow:0 0 10px var(--accent) inset}@supports (color:color-mix(in lab, red, red)){.submit-tab[data-active=true]{box-shadow:0 0 10px color-mix(in srgb, var(--accent) 35%, transparent) inset}}.submit-tab:not([data-active=true]):hover{color:var(--ink);background:var(--paper)}.submit-tab:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.me-notice-card{border:1px solid var(--mute);border-radius:8px;margin:8px 0;padding:12px}.me-notice-card__top{align-items:baseline;gap:8px;display:flex}.me-notice-card__title{font-size:var(--text-body);margin:0}.me-notice-card__meta,.me-notice-card__status{font-size:var(--text-micro);color:var(--mute);margin:4px 0 0}.me-notice-card__error{font-size:var(--text-micro);color:#c83020}.me-notice-card__actions{font-size:var(--text-ui);gap:12px;margin-top:8px;display:flex}.admin-dash{gap:20px;max-width:760px;margin:0 auto;padding:24px 16px 48px;display:grid}.admin-dash__title{font-size:var(--text-2xl);color:var(--ink);margin:0}.admin-dash__side{align-self:start;gap:20px;display:grid}@media (min-width:768px){.admin-dash--home{grid-template-columns:minmax(0,1.35fr) minmax(320px,.85fr);grid-template-areas:"title title""pending side";align-items:start;max-width:1100px}.admin-dash--home .admin-dash__title{grid-area:title}.admin-dash__pending{grid-area:pending;min-width:0}.admin-dash__side{grid-area:side;min-width:0}}.admin-breadcrumb{font-size:var(--text-sm);color:var(--ink-soft);align-items:center;gap:8px;margin-bottom:12px;display:flex}.admin-breadcrumb__back{color:var(--ink-soft);align-items:center;gap:4px;text-decoration:none;display:inline-flex}.admin-breadcrumb__back:hover{text-decoration:underline}.admin-breadcrumb__back:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}.admin-breadcrumb__current{color:var(--ink-soft)}.admin-module{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);padding:14px 16px}.admin-module__title{font-size:var(--text-md);color:var(--ink);margin:0 0 10px}.admin-module__counts,.admin-module__quiet{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 10px}.admin-module__counts{flex-wrap:wrap;gap:6px;display:flex}.admin-module__counts span,.admin-pending__type{border-radius:var(--radius);width:fit-content;color:var(--ink);font-size:var(--text-micro);letter-spacing:.06em;text-transform:uppercase;border:1px solid #0000;padding:3px 7px;font-weight:700;line-height:1.2;display:inline-flex}.admin-module__counts [data-count=total]{background:var(--accent)}@supports (color:color-mix(in lab, red, red)){.admin-module__counts [data-count=total]{background:color-mix(in srgb, var(--accent) 18%, var(--paper))}}.admin-module__counts [data-count=total]{border-color:var(--accent)}.admin-module__counts [data-count=event],.admin-pending__type[data-type=event]{background:var(--cat-learn)}@supports (color:color-mix(in lab, red, red)){.admin-module__counts [data-count=event],.admin-pending__type[data-type=event]{background:color-mix(in srgb, var(--cat-learn) 16%, var(--paper))}}.admin-module__counts [data-count=event],.admin-pending__type[data-type=event]{border-color:var(--cat-learn)}.admin-module__counts [data-count=notice],.admin-pending__type[data-type=notice]{background:var(--cat-browse)}@supports (color:color-mix(in lab, red, red)){.admin-module__counts [data-count=notice],.admin-pending__type[data-type=notice]{background:color-mix(in srgb, var(--cat-browse) 18%, var(--paper))}}.admin-module__counts [data-count=notice],.admin-pending__type[data-type=notice]{border-color:var(--cat-browse)}.admin-module__counts [data-count=directory],.admin-pending__type[data-type=directory]{background:var(--cat-care)}@supports (color:color-mix(in lab, red, red)){.admin-module__counts [data-count=directory],.admin-pending__type[data-type=directory]{background:color-mix(in srgb, var(--cat-care) 16%, var(--paper))}}.admin-module__counts [data-count=directory],.admin-pending__type[data-type=directory]{border-color:var(--cat-care)}.admin-module__more{font-size:var(--text-sm);color:var(--ink-soft);align-items:center;gap:6px;margin-top:10px;text-decoration:none;display:inline-flex}.admin-module__more:hover{text-decoration:underline}.admin-module__more:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius)}.admin-module--error{border-color:var(--neon);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.admin-module__error-text{font-size:var(--text-body);color:var(--ink-soft);margin:0}.admin-pending{gap:2px;margin:0;padding:0;list-style:none;display:grid}.admin-pending__row+.admin-pending__row{border-top:1px solid var(--rule)}.admin-pending__link{color:inherit;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;gap:4px 8px;padding:8px 4px;text-decoration:none;transition:background-color .12s;display:grid}.admin-pending__link:hover{background:var(--bg-alt)}.admin-pending__link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.admin-pending__title{font-size:var(--text-body);color:var(--ink)}.admin-pending__meta{font-size:var(--text-micro);color:var(--ink-soft);grid-column:2}.admin-pending__type{grid-area:1/3/span 2;align-self:center}.admin-expand,.admin-retry{font-size:var(--text-sm);color:var(--ink-soft);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;background:0 0;align-items:center;gap:6px;margin-top:10px;padding:6px 12px;display:inline-flex}.admin-expand:hover,.admin-retry:hover{border-color:var(--accent)}.admin-expand:focus-visible,.admin-retry:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-retry{margin-top:0}.admin-ai__health{font-size:var(--text-sm);color:var(--ink-soft);align-items:center;gap:6px;margin:0 0 10px;display:inline-flex}.admin-ai__health[data-health=attention]{color:var(--neon)}.admin-ai__spend{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0 0 10px;display:grid}.admin-ai__spend dt{font-size:var(--text-label);color:var(--ink-soft);text-transform:uppercase;letter-spacing:.06em}.admin-ai__spend dd{font-size:var(--text-body);color:var(--ink);margin:2px 0 0}.admin-ai__paused{font-size:var(--text-sm);color:var(--ink-soft);margin:0}.admin-modules{gap:8px;margin:0;padding:0;list-style:none;display:grid}.admin-modules__link{border-radius:var(--radius);color:inherit;border:1px solid #0000;grid-template-columns:auto 1fr;align-items:baseline;gap:2px 8px;padding:8px;text-decoration:none;transition:border-color .12s;display:grid}.admin-modules__link:hover{border-color:var(--rule)}.admin-modules__link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-modules__label{font-size:var(--text-body);color:var(--ink)}.admin-modules__blurb{font-size:var(--text-micro);color:var(--ink-soft);grid-column:2}.admin-skeleton{gap:8px;display:grid}.admin-skeleton__row{border-radius:var(--radius);background:var(--bg-alt);height:14px;animation:1.4s ease-in-out infinite admin-skeleton-pulse;display:block}@keyframes admin-skeleton-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.admin-skeleton__row{animation:none}.admin-pending__link,.admin-modules__link{transition:none}}.admin-notices__filter{font-size:var(--text-sm);color:var(--ink-soft);align-items:center;gap:8px;display:flex}.admin-notices__filter input:focus-visible,.admin-notices__queue button:focus-visible,.admin-notices__queue input:focus-visible,.admin-notices__queue select:focus-visible,.admin-notices__queue textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-notices__queue{gap:18px;display:grid}.admin-notices__count,.admin-notices__focus-note{font-size:var(--text-sm);color:var(--ink-soft);margin:0}.admin-notices__kind{gap:10px;display:grid}.admin-notices__kind-title{font-size:var(--text-md);color:var(--ink);margin:0}.admin-notices__town-title{font-size:var(--text-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);margin:8px 0 6px}.admin-notice{background:var(--paper);border:1px solid var(--rule);border-radius:var(--radius);gap:6px;padding:12px 14px;transition:box-shadow .2s;display:grid}.admin-notice:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.admin-notice[aria-busy=true]{opacity:.75}.admin-focus-highlight{box-shadow:0 0 0 2px var(--accent)}.admin-notice__head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.admin-notice__title{font-size:var(--text-body);color:var(--ink);margin:0}.admin-notice__status-chip,.admin-notice__urgent{font-size:var(--text-micro);border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink-soft);padding:1px 6px}.admin-notice__urgent{color:#c83020;border-color:#c83020}.admin-notice__meta,.admin-notice__expiry,.admin-notice__body{font-size:var(--text-micro);color:var(--ink-soft);margin:0}.admin-notice__body{font-size:var(--text-sm);color:var(--ink-soft)}.admin-notice__live{font-size:var(--text-sm);color:var(--neon);min-height:1em;margin:0}.admin-notice__field-error{font-size:var(--text-micro);color:#c83020;margin:0}.admin-notice__form,.admin-notice__readonly{gap:6px;display:grid}.admin-notice__form label,.admin-notice__ack label{font-size:var(--text-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.admin-notice__kinds{border:0;flex-wrap:wrap;gap:6px;margin:0;padding:0;display:flex}.admin-notice__kinds legend{font-size:var(--text-label);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}.admin-notice__kind{font-size:var(--text-micro);border:1px solid var(--rule);border-radius:var(--radius);cursor:pointer;background:0 0;padding:3px 8px}.admin-notice__kind[data-active=true]{background:var(--filter-fill);color:var(--filter-ink);border-color:var(--filter-fill)}.admin-notice__ack{align-items:center;gap:8px;display:flex}.admin-notice__actions{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.admin-notice__action{font-size:var(--text-sm);border:1px solid var(--rule);border-radius:var(--radius);color:var(--ink-soft);cursor:pointer;background:0 0;align-items:center;gap:6px;padding:6px 12px;display:inline-flex}.admin-notice__action:hover{border-color:var(--accent)}.admin-notice__action:disabled{opacity:.5;cursor:default}.admin-notice__action--primary{color:var(--ink);border-color:var(--accent)}@media (prefers-reduced-motion:reduce){.admin-notice{transition:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
