.site-footer[data-v-29566e2e]{background:var(--card-bg);border-top:1px solid var(--border);color:var(--muted);flex:none}.site-footer-inner[data-v-29566e2e]{margin:0 auto;max-width:880px;padding:32px var(--page-gutter) 28px}.footer-cols[data-v-29566e2e]{display:flex;flex-wrap:wrap;gap:28px clamp(56px,11vw,132px)}.footer-heading[data-v-29566e2e]{color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.06em;margin:0 0 10px;text-transform:uppercase}.footer-col ul[data-v-29566e2e]{display:flex;flex-direction:column;gap:8px;list-style:none;margin:0;padding:0}.footer-col a[data-v-29566e2e]{color:var(--fg);font-size:.92rem;text-decoration:none}.footer-col a[data-v-29566e2e]:hover{color:var(--accent);text-decoration:underline}.footer-bottom[data-v-29566e2e]{align-items:center;border-top:1px solid var(--border);display:flex;flex-wrap:wrap;font-size:.85rem;gap:8px 16px;justify-content:space-between;margin-top:28px;padding-top:18px}.footer-brand[data-v-29566e2e]{color:var(--fg);font-weight:600}.footer-credit[data-v-29566e2e]{color:var(--muted)}.footer-credit a[data-v-29566e2e]{color:var(--fg);text-decoration:none}.footer-credit a[data-v-29566e2e]:hover{color:var(--accent);text-decoration:underline}@media(max-width:540px){.footer-cols[data-v-29566e2e]{flex-direction:column;gap:28px}}:root{color-scheme:light;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;--bg:#fff;--fg:#111;--muted:#6b6b6b;--border:#e5e5e5;--accent:#1a73e8;--price:#1e8e3e;--card-bg:#fafafa;--page-gutter:24px;--app-header-h:64px;--week-bar-h:65px}@media(max-width:540px){:root{--page-gutter:16px;--week-bar-h:52px}}:root[data-theme=dark]{color-scheme:dark;--bg:#0e0e10;--fg:#ededed;--muted:#999;--border:#2a2a2e;--accent:#5aa5ff;--price:#5bb974;--card-bg:#18181b}@keyframes shimmer-bg{0%{background-position:-200% 0}to{background-position:200% 0}}.shimmer{animation:shimmer-bg 1.4s linear infinite;background:linear-gradient(90deg,color-mix(in srgb,var(--muted) 5%,var(--card-bg)) 0,color-mix(in srgb,var(--muted) 18%,var(--card-bg)),color-mix(in srgb,var(--muted) 5%,var(--card-bg)));background-size:200% 100%}@media(prefers-reduced-motion:reduce){.shimmer{animation:none}}*{box-sizing:border-box}body,html{background:var(--bg);color:var(--fg);margin:0;padding:0;-webkit-font-smoothing:antialiased}html{scrollbar-gutter:stable}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app{display:flex;flex-direction:column;min-height:100vh}.app-header{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:14px;height:var(--app-header-h);padding:0 var(--page-gutter)}.brand{color:var(--fg);font-size:1.05rem;font-weight:700;text-decoration:none}.search-box{align-items:center;display:inline-flex;min-width:240px;position:relative}.search-box-icon{color:var(--muted);height:14px;left:10px;pointer-events:none;position:absolute;width:14px}.search-box-input{background:var(--card-bg);border:1px solid var(--border);border-radius:8px;color:var(--fg);font-family:inherit;font-size:.85rem;padding:6px 28px 6px 30px;width:100%}.search-box-input::-moz-placeholder{color:var(--muted)}.search-box-input::placeholder{color:var(--muted)}.search-box-input:focus{outline:none}.search-box--active .search-box-input,.search-box-input:focus{border-color:var(--accent)}.search-box--active .search-box-icon{color:var(--accent)}.search-box-input::-webkit-search-cancel-button{display:none}.search-box-clear{align-items:center;background:transparent;border:none;border-radius:4px;color:var(--muted);cursor:pointer;display:inline-flex;height:20px;justify-content:center;padding:0;position:absolute;right:6px;width:20px}.search-box-clear:hover{background:var(--bg);color:var(--fg)}.search-icon-btn{align-items:center;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--fg);cursor:pointer;display:none;height:32px;justify-content:center;padding:0;width:32px}.search-icon-btn:hover{border-color:var(--muted)}.search-icon-btn--active{border-color:var(--accent);color:var(--accent)}.header-divider{background:var(--border);flex-shrink:0;height:24px;width:1px}.nav-link{border-radius:8px;color:var(--fg);font-size:.9rem;font-weight:500;padding:6px 10px;text-decoration:none;white-space:nowrap}.nav-link:hover{background:var(--card-bg);text-decoration:none}.nav-link--active,.nav-link.router-link-exact-active{color:var(--accent)}.menu-wrap{margin-left:auto;position:relative}.menu-trigger{align-items:center;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--fg);cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;width:32px}.menu-trigger:hover{border-color:var(--muted)}.menu-panel{background:var(--bg);border:1px solid var(--border);border-radius:8px;box-shadow:0 6px 24px color-mix(in srgb,var(--fg) 12%,transparent);min-width:180px;padding:4px;position:absolute;right:0;top:calc(100% + 6px);z-index:100}.menu-item{border-radius:6px;color:var(--fg);display:block;font-size:.92rem;padding:8px 12px;text-decoration:none}.menu-item:hover{background:var(--card-bg);text-decoration:none}.menu-item--active{color:var(--accent)}@media(min-width:721px){.menu-item--nav{display:none}}.menu-item--action{background:transparent;border:none;cursor:pointer;font-family:inherit;font-size:inherit;text-align:left;width:100%}.menu-section-label{border-top:1px solid var(--border);color:var(--muted);font-size:.7rem;letter-spacing:.05em;margin-top:4px;padding:8px 12px 4px;text-transform:uppercase}.theme-picker{display:flex;gap:4px;padding:4px 6px 6px}.theme-picker-btn{align-items:center;background:transparent;border:1px solid var(--border);border-radius:6px;color:var(--muted);cursor:pointer;display:inline-flex;flex:1;flex-direction:column;font-family:inherit;font-size:.72rem;gap:3px;line-height:1.1;padding:6px 4px}.theme-picker-btn:hover{border-color:var(--muted);color:var(--fg)}.theme-picker-btn--active{background:var(--card-bg);border-color:var(--fg);color:var(--fg)}@media(max-width:720px){.header-divider,.nav-link{display:none}}@media(max-width:540px){.search-box{display:none}.search-icon-btn{display:inline-flex}}.app-main{flex:1 0 auto;margin:0 auto;max-width:880px;padding:var(--page-gutter) var(--page-gutter) 80px;width:100%}body.layout-wide .app-main{max-width:none;padding:0 0 80px}
