@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-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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(../media/layers.1220hx8ja1.sy.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(../media/layers-2x.0olxl6i2vnf_c.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(../media/marker-icon.0i9~u_difxrfa.png)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.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}.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-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.italic{font-style:italic}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.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,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-100{--tw-duration:.1s;transition-duration:.1s}:root{--bg:#fff;--surface:#fff;--surface2:#f5f5f5;--border:#e0dcd6;--text:#1a1612;--text2:#5a534a;--muted:#888078;--accent:#1a3f7a;--t1-bg:#d0f0ee;--t1-border:#0a8c82;--t1-text:#043d39;--t2-bg:#e8d8f8;--t2-border:#7c3aed;--t2-text:#3b1a7a;--t3-bg:#fef0c7;--t3-border:#c07c00;--t3-text:#5c3800;--t4-bg:#ffe0d4;--t4-border:#c84b1e;--t4-text:#6b1e06;--sc-winter-bg:#dbeafe;--sc-winter-bd:#1d5fa8;--sc-winter-t:#0c2d5c;--sc-spring-bg:#dcfce7;--sc-spring-bd:#16823c;--sc-spring-t:#073d1c;--sc-summer-bg:#fff1d0;--sc-summer-bd:#b86800;--sc-summer-t:#5a3200;--sc-thanksgiving-bg:#3b82f61f;--sc-thanksgiving-bd:#584444;--today-ring:#e91e63;--we-bg:#eeecea;--we-text:#6b6058;--hdr-bg:#1a1612;--hdr-h:56px;--sidebar-bg:#fff;--filter-hover:#f0efed;--toggle-off:#c4bfb8;--shadow:0 1px 4px #00000012;--sg-card-bg:linear-gradient(180deg, #fffffff5, #f5f0e9eb);--sg-card-bg-soft:linear-gradient(180deg, #ffffffeb, #f8f4eee0);--sg-card-border:#baaa9659;--sg-card-shadow:0 14px 30px #0000000f;--sg-divider:#1a16122e;--sg-warm-bg:linear-gradient(180deg, #fff8eefa, #f7ebd6f2);--sg-warm-border:#ba8c4e52;--sg-warm-text:#6a3f18}[data-theme=dark]{--bg:#141210;--surface:#1e1b18;--surface2:#252118;--border:#383028;--text:#f0ebe2;--text2:#a09488;--muted:#6e6458;--accent:#6ba3e8;--t1-bg:#0a4a46;--t1-border:#0fbfb3;--t1-text:#7fe8e2;--t2-bg:#3b1a7a;--t2-border:#a67de8;--t2-text:#d4b8ff;--t3-bg:#5c3800;--t3-border:#e0a020;--t3-text:#fde08a;--t4-bg:#6b2010;--t4-border:#e8795a;--t4-text:#ffb599;--sc-winter-bg:#0c2040;--sc-winter-bd:#4a8fd4;--sc-winter-t:#a8cfff;--sc-spring-bg:#0a2a14;--sc-spring-bd:#3aaf60;--sc-spring-t:#7eeaa0;--sc-summer-bg:#2a1e00;--sc-summer-bd:#d4940a;--sc-summer-t:#ffd878;--today-ring:#f06292;--we-bg:#262018;--we-text:#7a7068;--hdr-bg:#0e0c0a;--sidebar-bg:#1e1b18;--filter-hover:#252118;--toggle-off:#4a443c;--shadow:0 1px 4px #0000004d;--sg-card-bg:linear-gradient(180deg, #ffffff0d, #ffffff04);--sg-card-bg-soft:linear-gradient(180deg, #ffffff0a, #ffffff03);--sg-card-border:#ffffff14;--sg-card-shadow:0 16px 32px #00000038;--sg-divider:#ffffff2e;--sg-warm-bg:linear-gradient(180deg, #fff8f0b8, #fff4e842);--sg-warm-border:#dfa8672e;--sg-warm-text:inherit}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100%;height:100%;overflow-x:hidden}body{background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;font-family:IBM Plex Sans,sans-serif;transition:background .25s,color .25s}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:10px}.dc-t1{background:var(--t1-bg);color:var(--t1-text);border-left:2px solid var(--t1-border);cursor:pointer;font-weight:700}.dc-t2{background:var(--t2-bg);color:var(--t2-text);border-left:2px solid var(--t2-border);cursor:pointer;font-weight:700}.dc-t3{background:var(--t3-bg);color:var(--t3-text);border-left:2px solid var(--t3-border);cursor:pointer;font-weight:700}.dc-t4{background:var(--t4-bg);color:var(--t4-text);border-left:2px solid var(--t4-border);cursor:pointer;font-weight:700}.dc-we{background:var(--we-bg);color:var(--we-text)}.dc-wd{background:var(--surface);color:var(--text)}.dc-school-winter{border-bottom:2.5px solid var(--sc-winter-bd)}.dc-school-spring{border-bottom:2.5px solid var(--sc-spring-bd)}.dc-school-summer{border-bottom:2.5px solid var(--sc-summer-bd)}.dc-school-thanksgiving{border-bottom:2.5px solid var(--sc-thanksgiving-bd)}.dc-today{z-index:2;outline:2px solid var(--today-ring)!important;outline-offset:-2px!important}.dc-filtered{background:var(--surface)!important;color:var(--text2)!important;cursor:default!important;border-left:none!important;font-weight:400!important}.dc-filtered-we{background:var(--we-bg)!important;color:var(--we-text)!important}.hdr{height:var(--hdr-h);background:var(--hdr-bg);color:#f0ebe2;z-index:100;flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 28px;display:grid;position:relative}.hdr-logo{color:#f0ebe2;cursor:pointer;white-space:nowrap;letter-spacing:-.2px;justify-self:start;font-family:Playfair Display,serif;font-size:1.6rem}.hdr-centre{flex-direction:column;justify-content:center;align-items:center;gap:1px;display:flex}.hdr-city-name{color:#f0ebe2;white-space:nowrap;font-family:Playfair Display,serif;font-size:1rem}.hdr-year{color:#ffffff59;letter-spacing:.12em;font-family:IBM Plex Mono,monospace;font-size:.62rem}.hdr-right{justify-self:end;align-items:center;gap:8px;display:flex}.hdr-btn{color:#ffffffb3;cursor:pointer;white-space:nowrap;background:0 0;border:1.5px solid #ffffff2e;border-radius:20px;align-items:center;gap:5px;padding:6px 15px;font-family:IBM Plex Sans,sans-serif;font-size:.8rem;font-weight:500;line-height:1;text-decoration:none;transition:all .15s;display:inline-flex}.hdr-btn:hover{color:#fff;background:#ffffff1a;border-color:#ffffff73}.main-layout{height:calc(100vh - var(--hdr-h));grid-template-columns:1fr 300px;display:grid;overflow:hidden}.cal-section{flex-direction:column;gap:10px;height:100%;padding:12px 14px 10px 22px;display:flex;overflow:hidden}.months-grid{flex:1;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(4,1fr);gap:8px;min-height:0;display:grid}.months-grid>div{border-radius:8px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.month-header{background:var(--hdr-bg);color:#f0ebe2;flex-shrink:0;justify-content:space-between;align-items:baseline;padding:5px 9px 4px;display:flex}.month-dow{background:var(--surface2);border-bottom:1px solid var(--border);flex-shrink:0;grid-template-columns:repeat(7,1fr);display:grid}.month-days{flex:1;grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;min-height:0;display:grid}.month-days>div{justify-content:center;align-items:center;font-family:IBM Plex Mono,monospace;font-size:clamp(.4rem,.6vw,.7rem);display:flex}.sidebar{border-left:1px solid var(--border);background:var(--sidebar-bg);flex-direction:column;height:100%;display:flex;overflow:hidden}.sidebar-filters{flex:1;min-height:0;overflow-y:auto}.tool-layout{grid-template-columns:420px 1fr;gap:28px;display:grid}.tool-right-panel{position:sticky;top:24px}@media (max-width:1280px){.main-layout{grid-template-columns:1fr 280px}.cal-section{padding:10px 12px 8px 16px}}@media (max-width:1024px){html,body{overflow:auto}.main-layout{grid-template-columns:1fr;height:auto;overflow:visible}.cal-section{height:auto;padding:14px;overflow:visible}.months-grid{flex:none;grid-template-rows:auto;grid-template-columns:repeat(3,1fr)}.months-grid>div{min-height:150px}.sidebar{border-left:none;border-top:1px solid var(--border);height:auto;overflow:visible}.sidebar-filters{overflow:visible}}@media (max-width:768px){.city-root{min-height:100dvh;height:auto!important;overflow:visible!important}.main-layout,.cal-section{height:auto!important;overflow:visible!important}.months-grid{gap:8px;flex:none!important;grid-template-rows:auto!important;grid-template-columns:repeat(2,1fr)!important}.months-grid>div{min-height:180px;overflow:visible}.month-days{grid-auto-rows:minmax(28px,1fr)}.sidebar{border-left:none;border-top:1px solid var(--border);height:auto!important;overflow:visible!important}.sidebar-filters{overflow:visible!important}.hdr{gap:8px;padding:0 12px}.hdr-centre{display:none}.tool-layout{grid-template-columns:1fr!important;gap:20px!important}.tool-right-panel{position:static!important}}@media (max-width:640px){.months-grid{grid-template-columns:repeat(2,1fr)}.hdr-city-name{font-size:.75rem}.hdr-btn{padding:5px 8px;font-size:.68rem}}@media (max-width:400px){.hdr-btn{padding:4px 6px;font-size:.65rem}}input::placeholder{color:var(--muted)}.hdr input::placeholder{color:#ffffff73}input{color:var(--text)}input:disabled{opacity:.6}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.searching-pulse{animation:1s ease-in-out infinite pulse}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-main{flex-direction:column;flex:1;display:flex}.site-header{z-index:400;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#141210f0;border-bottom:1px solid #e0dcd60f;position:sticky;top:0}[data-theme=light] .site-header{background:#1a1612f5}.site-header__inner{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;width:100%;min-height:56px;padding:0 28px;display:grid}.site-logo,.site-footer__brand{color:#f0ebe2;letter-spacing:-.02em;white-space:nowrap;font-family:Playfair Display,serif;text-decoration:none}.site-logo{font-size:1.72rem;line-height:1}.site-logo em,.site-footer__brand em{opacity:.48;font-style:italic}.site-nav{justify-content:center;align-items:center;gap:clamp(10px,1.2vw,18px);min-width:0;display:flex}.site-nav__link{color:#f0ebe2ad;letter-spacing:-.01em;justify-content:center;align-items:center;min-height:40px;padding:0 12px;font-size:.9rem;font-weight:500;text-decoration:none;transition:color .18s,transform .18s,opacity .18s;display:inline-flex;position:relative}.site-nav__link span{z-index:1;position:relative}.site-nav__link:after{content:"";opacity:0;transform-origin:50%;background:linear-gradient(90deg,#f0ebe200,#f0ebe2e6,#f0ebe200);border-radius:999px;height:1px;transition:opacity .18s,transform .18s;position:absolute;bottom:7px;left:12px;right:12px;transform:scaleX(.35)}.site-nav__link:hover,.site-nav__link:focus-visible{color:#fffffff5;transform:translateY(-1px)}.site-nav__link:hover:after,.site-nav__link:focus-visible:after,.site-nav__link.is-active:after{opacity:1;transform:scaleX(1)}.site-nav__link.is-active{color:#fff}.site-header__actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.theme-toggle{cursor:pointer;background:linear-gradient(135deg,#f97316,#f59e0b);border:1.5px solid #fff3;border-radius:999px;outline:none;flex-shrink:0;width:52px;height:28px;padding:0;position:relative}[data-theme=dark] .theme-toggle{background:linear-gradient(135deg,#3a6fd8,#a259f7)}.theme-toggle__knob{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;transition:transform .35s cubic-bezier(.34,1.56,.64,1);display:flex;position:absolute;top:2px;left:2px;transform:translate(0);box-shadow:0 1px 4px #0000004d}[data-theme=dark] .theme-toggle__knob{transform:translate(24px)}.site-menu-toggle{cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:12px;width:42px;height:42px;padding:0;display:none}.site-menu-toggle span{background:#f0ebe2;border-radius:999px;width:18px;height:2px;margin:4px auto;transition:transform .2s,opacity .2s;display:block}.site-menu-toggle.is-open span:first-child{transform:translateY(6px)rotate(45deg)}.site-menu-toggle.is-open span:nth-child(2){opacity:0}.site-menu-toggle.is-open span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.site-mobile-nav{display:none}.site-footer{border-top:1px solid var(--border);background:var(--surface2)}.site-footer__inner{grid-template-columns:auto 1fr auto;align-items:center;gap:18px;width:100%;padding:14px 28px;display:grid}.site-footer__brand{color:var(--text);font-size:1.45rem}.site-footer__meta{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:10px;font-family:IBM Plex Mono,monospace;font-size:.72rem;display:flex}.site-footer__meta a{color:var(--accent);text-decoration:none}.site-footer__cta{color:#1a1612;background:linear-gradient(135deg,#f7c948,#f4d61d);border-radius:999px;justify-content:center;align-items:center;min-height:38px;padding:0 16px;font-size:.84rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 8px 18px #f7c94838}@media (max-width:980px){.site-nav{display:none}.site-menu-toggle,.site-mobile-nav{display:block}.site-header__inner{grid-template-columns:auto 1fr auto}.site-mobile-nav__panel{background:#141210f5;border-top:1px solid #ffffff0f;gap:8px;padding:0 16px 14px;display:grid}.site-mobile-nav__link{color:#f0ebe2c7;background:#ffffff08;border:1px solid #ffffff0d;border-radius:14px;align-items:center;min-height:44px;padding:0 14px;text-decoration:none;display:flex}.site-mobile-nav__link.is-active{color:#fff;background:#ffffff14}.site-footer__inner{text-align:center;grid-template-columns:1fr;justify-items:center}}.page-shell{width:100%;min-height:100vh}.page-container{width:100%;margin:0 auto;padding:28px 20px 60px}.page-container--narrow{max-width:820px}.page-container--default{max-width:1100px}.page-container--wide{max-width:1280px}.page-container--full{max-width:100%}.page-container--guide{max-width:1280px}.page-reading{max-width:720px;margin:0 auto}.page-scroll-normal{height:auto!important;overflow:visible!important}@media (max-width:768px){.page-container{padding:24px 16px 48px}}:root{--hubui-ink:#1a1612;--hubui-cream:#f0ebe2;--hubui-urgency-from:#df8c72;--hubui-urgency-to:#d99a42;--hubui-radius-card:30px;--hubui-radius-panel:34px;--hubui-shadow-card:0 18px 46px #1a16120b;--hubui-shadow-card-hover:0 26px 62px #1a161213;--hubui-shadow-panel:0 28px 80px #1a16121f}[data-theme=dark]{--hubui-shadow-card:0 22px 62px #00000038;--hubui-shadow-card-hover:0 28px 74px #0000004d;--hubui-shadow-panel:0 28px 80px #00000057}.hubui-kicker{background:var(--hubui-page-accent,var(--accent));border-radius:999px;align-items:center;gap:8px;width:fit-content;min-height:30px;margin:0 0 12px;padding:7px 12px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.hubui-kicker{background:color-mix(in srgb, var(--hubui-page-accent,var(--accent)) 10%, transparent)}}.hubui-kicker{color:var(--hubui-page-accent,var(--accent));text-transform:uppercase;letter-spacing:.08em;font-family:IBM Plex Mono,monospace;font-size:.62rem;font-weight:900;line-height:1}.hubui-kicker:before{content:"";background:currentColor;border-radius:999px;flex:none;width:7px;height:7px}.hubui-pill{border:1px solid var(--border);background:var(--surface);border-radius:999px;align-items:center;min-height:24px;padding:0 9px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.hubui-pill{background:color-mix(in srgb, var(--surface) 78%, transparent)}}.hubui-pill{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;font-family:IBM Plex Mono,monospace;font-size:.62rem;font-weight:800;line-height:1}.hubui-meta-label{min-height:24px;color:var(--hubui-page-accent,var(--accent));text-transform:uppercase;letter-spacing:.08em;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;padding:0;font-family:IBM Plex Mono,monospace;font-size:.62rem;font-weight:900;line-height:1;display:inline-flex}.hubui-status-pill{background:var(--hubui-page-accent,var(--accent));border-radius:999px;align-items:center;min-height:28px;padding:0 10px;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.hubui-status-pill{background:color-mix(in srgb, var(--hubui-page-accent,var(--accent)) 10%, transparent)}}.hubui-status-pill{color:var(--hubui-page-accent,var(--accent));white-space:nowrap;font-size:.74rem;font-weight:900}.hubui-btn{white-space:nowrap;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:42px;padding:0 18px;font-size:.9rem;font-weight:900;text-decoration:none;transition:transform .18s,box-shadow .18s,border-color .18s,background .18s,color .18s;display:inline-flex}.hubui-btn:hover{transform:translateY(-1px)}.hubui-btn-primary{background:var(--hdr-bg);color:var(--hubui-cream);box-shadow:0 16px 38px #1a161224}.hubui-btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text);box-shadow:0 12px 28px #1a16120d}.hubui-btn-secondary:hover{border-color:var(--hubui-page-accent,var(--accent))}@supports (color:color-mix(in lab, red, red)){.hubui-btn-secondary:hover{border-color:color-mix(in srgb, var(--hubui-page-accent,var(--accent)) 34%, var(--border))}}.hubui-btn-secondary:hover{color:var(--hubui-page-accent,var(--accent))}.hubui-btn-urgency{background:linear-gradient(135deg, var(--hubui-urgency-from), var(--hubui-urgency-to));color:var(--hubui-ink);box-shadow:0 18px 42px #d99a423d}.hubui-text-link{width:fit-content;color:var(--hubui-page-accent,var(--accent));cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;font-size:.88rem;font-weight:900;text-decoration:none;transition:transform .18s,color .18s;display:inline-flex}.hubui-text-link:hover{transform:translate(2px)}.hubui-card,.hubui-image-card{border:1px solid var(--border);border-radius:var(--hubui-radius-card);background:var(--surface);color:var(--text);box-shadow:var(--hubui-shadow-card);text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;overflow:hidden}.hubui-card:hover,.hubui-image-card:hover{border-color:var(--hubui-page-accent,var(--accent));transform:translateY(-2px)}@supports (color:color-mix(in lab, red, red)){.hubui-card:hover,.hubui-image-card:hover{border-color:color-mix(in srgb, var(--hubui-page-accent,var(--accent)) 26%, var(--border))}}.hubui-card:hover,.hubui-image-card:hover{box-shadow:var(--hubui-shadow-card-hover)}.hubui-image-card{flex-direction:column;min-height:250px;display:flex}.hubui-image-card__media{background:linear-gradient(135deg, var(--hubui-page-accent,var(--accent)), #35cfc247);height:150px}@supports (color:color-mix(in lab, red, red)){.hubui-image-card__media{background:linear-gradient(135deg, color-mix(in srgb, var(--hubui-page-accent,var(--accent)) 26%, #fff), #35cfc247)}}.hubui-image-card__media img{object-fit:cover;width:100%;height:100%;display:block}.hubui-image-card__body{flex-direction:column;flex:1;padding:20px;display:flex}.hubui-image-card__body h3{letter-spacing:-.045em;color:var(--text);margin:0;font-family:Playfair Display,serif;font-size:clamp(2rem,3vw,3rem);line-height:.96}.hubui-image-card__body p{color:var(--text2);margin:12px 0 0;font-size:.93rem;line-height:1.5}.hubui-image-card__body .hubui-text-link,.hubui-image-card__body>a,.hubui-image-card__body>strong{margin-top:auto;padding-top:22px}.hubui-cta-panel{border-radius:var(--hubui-radius-panel);color:#fff;box-shadow:var(--hubui-shadow-panel);background:radial-gradient(circle at 85% 10%,#7fb7ff38,#0000 32%),linear-gradient(135deg,#111827,#24375f);border:1px solid #ffffff1f;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;padding:clamp(24px,4vw,36px);display:grid}.hubui-cta-panel h2{letter-spacing:-.046em;color:#fff;margin:0;font-family:Playfair Display,serif;font-size:clamp(2.35rem,5vw,4.15rem);line-height:1}.hubui-cta-panel p{color:#ffffffb8;margin:12px 0 0;line-height:1.62}.hubui-search{z-index:50;width:min(360px,100%);position:relative}.hubui-search__shell{border:1px solid var(--border);background:var(--surface);border-radius:999px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px;display:grid}@supports (color:color-mix(in lab, red, red)){.hubui-search__shell{background:color-mix(in srgb, var(--surface) 88%, transparent)}}.hubui-search__shell{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 42px #1a161212}.hubui-search__icon{width:30px;height:30px;color:var(--muted);place-items:center;display:grid}.hubui-search input{width:100%;min-width:0;height:34px;color:var(--text);background:0 0;border:0;outline:0;font-size:.9rem}.hubui-search input::placeholder{color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hubui-search input::placeholder{color:color-mix(in srgb, var(--muted) 78%, transparent)}}.hubui-search__shell>button{background:var(--hdr-bg);min-height:34px;color:var(--hubui-cream);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;padding:0 15px;font-size:.8rem;font-weight:900}.hubui-search__menu{border:1px solid var(--border);background:var(--surface);border-radius:22px;gap:6px;max-height:min(390px,100vh - 170px);padding:8px;display:grid;position:absolute;top:calc(100% + 10px);left:0;right:0;overflow-y:auto;box-shadow:0 26px 72px #1a16122e}.hubui-search__menu button{min-height:54px;color:var(--text);cursor:pointer;text-align:left;background:0 0;border:0;border-radius:16px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;display:grid}.hubui-search__menu button:hover{background:var(--surface2)}.hubui-search__avatar{background:var(--surface2);width:34px;height:34px;color:var(--hubui-page-accent,var(--accent));border-radius:999px;place-items:center;font-family:IBM Plex Mono,monospace;font-size:.62rem;font-weight:900;display:grid}.hubui-search__copy{gap:3px;min-width:0;display:grid}.hubui-search__copy strong,.hubui-search__copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.hubui-search__copy strong{color:var(--text);font-size:.9rem}.hubui-search__copy small{color:var(--muted);font-size:.76rem}.hubui-search__menu em{color:var(--hubui-page-accent,var(--accent));white-space:nowrap;font-size:.74rem;font-style:normal;font-weight:900}[data-theme=dark] .hubui-search__shell,[data-theme=dark] .hubui-search__menu{box-shadow:0 22px 62px #00000047}@media (max-width:820px){.hubui-cta-panel{flex-direction:column;align-items:flex-start;display:flex}.hubui-search{width:100%}}@media (max-width:680px){.hubui-card,.hubui-image-card,.hubui-cta-panel{border-radius:28px}.hubui-image-card{min-height:0}.hubui-image-card__media{height:180px}.hubui-search__shell{border-radius:24px}.hubui-search__menu{max-height:min(360px,100vh - 150px)}}@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-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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}
