.language-selector[data-v-b0c39f63]{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;padding:.5rem}.flag-btn[data-v-b0c39f63]{font-size:1.5rem;background:var(--surface-1);border:2px solid transparent;border-radius:8px;padding:.25rem .5rem;cursor:pointer;transition:all .2s ease;filter:grayscale(.5)}.flag-btn[data-v-b0c39f63]:hover{filter:grayscale(0);transform:scale(1.1)}.flag-btn.active[data-v-b0c39f63]{filter:grayscale(0);border-color:var(--accent);background:var(--accent-bg)}.theme-toggle[data-v-49c179e4]{font-size:1.5rem;background:var(--surface-1);border:none;border-radius:8px;padding:.5rem;cursor:pointer;transition:transform .2s ease}.theme-toggle[data-v-49c179e4]:hover{transform:scale(1.1)}.weather-trigger[data-v-41572417]{display:inline-flex;align-items:center;gap:8px;background:var(--surface-1, rgba(255, 255, 255, .9));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--surface-2, rgba(255, 255, 255, .5));border-radius:50px;padding:8px 16px;cursor:pointer;transition:all .2s ease;font-family:inherit;color:var(--text, #333);box-shadow:0 4px 6px #0000001a}.weather-trigger[data-v-41572417]:hover{transform:translateY(-1px);background:var(--surface-1, white);box-shadow:0 6px 12px #00000026}.trigger-icon[data-v-41572417]{font-size:1.2em}.trigger-temp[data-v-41572417]{font-weight:700;font-size:1.1em}.trigger-loc[data-v-41572417]{opacity:.8;font-size:.9em;border-left:1px solid var(--surface-2, #ddd);padding-left:8px;margin-left:4px}.weather-trigger.loading[data-v-41572417]{opacity:.7;cursor:wait}.weather-modal-overlay[data-v-41572417]{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;z-index:9999;display:flex;align-items:flex-start;justify-content:center;padding:40px 20px 20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto}.weather-modal-card[data-v-41572417]{background:var(--surface-1, white);width:100%;max-width:400px;border-radius:24px;padding:24px;box-shadow:0 20px 40px #0000004d;display:flex;flex-direction:column;gap:20px;max-height:none;margin-bottom:40px;scrollbar-width:none;-ms-overflow-style:none}.weather-modal-card[data-v-41572417]::-webkit-scrollbar{display:none}.modal-header[data-v-41572417]{display:flex;justify-content:space-between;align-items:center}.modal-header h3[data-v-41572417]{margin:0;font-size:1.25rem;color:var(--text, #1a1a1a);font-weight:700}.close-btn[data-v-41572417]{background:var(--surface-2, #f0f0f0);border:none;width:32px;height:32px;border-radius:50%;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary, #666);transition:background .2s}.close-btn[data-v-41572417]:hover{background:var(--accent-bg, #e0e0e0);color:var(--text, #333)}.current-stats[data-v-41572417]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:16px;background:var(--surface-2, #f8f9fa);border-radius:16px}.stat-item[data-v-41572417]{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.stat-icon[data-v-41572417]{font-size:1.2em}.stat-label[data-v-41572417]{font-size:.75em;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary, #666)}.stat-value[data-v-41572417]{font-weight:600;color:var(--text, #333);font-size:.9em}.forecast-list[data-v-41572417]{display:flex;flex-direction:column;gap:12px}.forecast-row[data-v-41572417]{display:flex;align-items:center;justify-content:space-between;padding:8px 4px;border-bottom:1px solid var(--surface-2, #f0f0f0)}.forecast-row[data-v-41572417]:last-child{border-bottom:none}.day-name[data-v-41572417]{width:40%;font-weight:500;color:var(--text, #444)}.day-icon[data-v-41572417]{font-size:1.2em}.temp-range[data-v-41572417]{display:flex;gap:12px;font-variant-numeric:tabular-nums}.temp-max[data-v-41572417]{font-weight:600;color:var(--text, #333)}.temp-min[data-v-41572417]{color:var(--text-secondary, #888)}.attribution[data-v-41572417]{font-size:.7em;color:var(--text-secondary, #999);text-align:center;margin-top:12px;padding-top:8px;border-top:1px solid var(--surface-2, #f0f0f0)}.attribution a[data-v-41572417]{color:var(--accent, #0066cc);text-decoration:none}.attribution a[data-v-41572417]:hover{text-decoration:underline}.fade-enter-active[data-v-41572417],.fade-leave-active[data-v-41572417]{transition:opacity .2s ease}.fade-enter-from[data-v-41572417],.fade-leave-to[data-v-41572417]{opacity:0}.hero-wrapper[data-v-d1936a4c]{position:relative;width:100%;aspect-ratio:16 / 9;min-height:100vh;min-height:100dvh;overflow:visible}.hero-skeleton[data-v-d1936a4c]{position:absolute;inset:0;background:linear-gradient(135deg,#e0e0e0,#f5f5f5,#e0e0e0,#f5f5f5,#e0e0e0);background-size:400% 400%;animation:shimmer-d1936a4c 2s ease-in-out infinite}@keyframes shimmer-d1936a4c{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero-header[data-v-d1936a4c]{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;padding:2rem 1.5rem;color:#fff;overflow:visible;opacity:0;transition:opacity .5s ease-in}.hero-header.hero-loaded[data-v-d1936a4c]{opacity:1}.hero-preload[data-v-d1936a4c]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.hero-background[data-v-d1936a4c]{position:absolute;inset:0;background-size:cover;background-position:center}.hero-overlay[data-v-d1936a4c]{position:absolute;inset:0;background:linear-gradient(to bottom,#0000004d,#0003,#000000b3)}.hero-top[data-v-d1936a4c]{position:relative;z-index:2;display:flex;justify-content:flex-start}.nav-btn[data-v-d1936a4c]{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border-radius:12px;font-weight:600;text-decoration:none;transition:all .3s ease;border:2px solid rgba(255,255,255,.3);background:#ffffff1a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:#fff;font-size:.95rem}.nav-btn[data-v-d1936a4c]:hover{background:#fff3;border-color:#ffffff80;transform:translateY(-2px);box-shadow:0 8px 20px #0000004d}.hero-content[data-v-d1936a4c]{position:relative;z-index:2;text-align:center;max-width:800px;margin:0 auto;overflow:visible}.hero-content h1[data-v-d1936a4c]{font-size:var(--text-5xl);font-weight:var(--font-bold);margin:0 0 .5rem;text-shadow:0 4px 12px rgba(0,0,0,.5);letter-spacing:var(--tracking-tight)}.hero-content p[data-v-d1936a4c]{font-size:var(--text-xl);opacity:.95;margin:0;text-shadow:0 2px 8px rgba(0,0,0,.5);font-weight:var(--font-medium)}.hero-footer[data-v-d1936a4c]{display:flex;justify-content:center;margin-top:2rem;overflow:visible;position:relative;z-index:30}@media(max-width:768px){.hero-wrapper[data-v-d1936a4c]{min-height:85vh;min-height:85dvh}.hero-background[data-v-d1936a4c]{background-position:center}.hero-header[data-v-d1936a4c]{padding:1.5rem 1rem}.nav-btn[data-v-d1936a4c]{font-size:.85rem;padding:.65rem 1rem}}@media(min-width:769px){.hero-background[data-v-d1936a4c]{background-position:center top}}.lightbox-overlay[data-v-7b227447]{position:fixed;inset:0;background:#000000f2;display:flex;justify-content:center;align-items:center;z-index:9999;animation:fadeIn-7b227447 .2s ease;touch-action:pan-y;-webkit-user-select:none;user-select:none}.lightbox-overlay.is-swiping[data-v-7b227447]{cursor:grabbing}.lightbox-overlay img[data-v-7b227447]{max-width:90%;max-height:90%;object-fit:contain;animation:zoomIn-7b227447 .2s ease;pointer-events:none}.lightbox-close[data-v-7b227447]{position:absolute;top:20px;right:30px;color:#fff;font-size:3rem;font-weight:300;cursor:pointer;z-index:10000;transition:transform .2s}.lightbox-close[data-v-7b227447]:hover{transform:scale(1.1)}.lightbox-prev[data-v-7b227447],.lightbox-next[data-v-7b227447]{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:3rem;font-weight:300;cursor:pointer;padding:1rem;-webkit-user-select:none;user-select:none;transition:opacity .2s}.lightbox-prev[data-v-7b227447]:hover,.lightbox-next[data-v-7b227447]:hover{opacity:.7}.lightbox-prev[data-v-7b227447]{left:20px}.lightbox-next[data-v-7b227447]{right:20px}.lightbox-counter[data-v-7b227447]{position:absolute;bottom:30px;left:50%;transform:translate(-50%);color:#fff;font-size:1.2rem;padding:.5rem 1rem;background:#0009;border-radius:20px}@keyframes fadeIn-7b227447{0%{opacity:0}to{opacity:1}}@keyframes zoomIn-7b227447{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.fade-enter-active[data-v-7b227447],.fade-leave-active[data-v-7b227447]{transition:opacity .3s ease}.fade-enter-from[data-v-7b227447],.fade-leave-to[data-v-7b227447]{opacity:0}@media(max-width:768px){.lightbox-close[data-v-7b227447]{font-size:2.5rem;top:10px;right:15px}.lightbox-prev[data-v-7b227447],.lightbox-next[data-v-7b227447]{font-size:2rem;padding:.5rem}.lightbox-prev[data-v-7b227447]{left:10px}.lightbox-next[data-v-7b227447]{right:10px}.lightbox-counter[data-v-7b227447]{font-size:1rem;bottom:20px}}.accordion[data-v-d8630d67]{background:var(--surface-1);border-radius:12px;margin-bottom:.75rem;overflow:hidden}summary[data-v-d8630d67]{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;cursor:pointer;font-weight:600;list-style:none}summary[data-v-d8630d67]::-webkit-details-marker{display:none}.accordion-title[data-v-d8630d67]{font-size:1.1rem}.accordion-arrow[data-v-d8630d67]{font-size:1.5rem;transition:transform .3s ease}.accordion-arrow.open[data-v-d8630d67]{transform:rotate(90deg)}.accordion-content[data-v-d8630d67]{padding:0 1.25rem 1.25rem;animation:slideDown-d8630d67 .3s ease}@keyframes slideDown-d8630d67{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.booking-content[data-v-f8d67f03]{display:flex;flex-direction:column;gap:.75rem}.booking-link[data-v-f8d67f03]{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--surface-2);border-radius:10px;color:var(--text);text-decoration:none;font-weight:500;transition:background .2s,transform .2s}.booking-link[data-v-f8d67f03]:hover{background:var(--accent-bg);transform:translate(4px);text-decoration:none}.booking-link .platform-name[data-v-f8d67f03]{flex:1}.booking-link.booking-com[data-v-f8d67f03]{border-left:3px solid #003580}.platform-icon[data-v-f8d67f03]{font-size:1.25rem}.link-arrow[data-v-f8d67f03]{color:var(--accent);font-weight:600}.airbnb-section[data-v-f8d67f03]{background:var(--surface-2);border-radius:10px;border-left:3px solid #ff5a5f;overflow:hidden}.airbnb-toggle[data-v-f8d67f03]{display:flex;align-items:center;gap:.75rem;width:100%;padding:1rem;background:transparent;border:none;color:var(--text);font-weight:500;font-size:1rem;cursor:pointer;text-align:left}.airbnb-toggle[data-v-f8d67f03]:hover{background:var(--accent-bg)}.airbnb-toggle .platform-name[data-v-f8d67f03]{flex:1}.toggle-arrow[data-v-f8d67f03]{font-size:1.5rem;transition:transform .3s ease;color:var(--text-secondary)}.toggle-arrow.open[data-v-f8d67f03]{transform:rotate(90deg)}.apartment-links[data-v-f8d67f03]{display:flex;flex-direction:column;gap:.5rem;padding:0 1rem 1rem;animation:slideDown-f8d67f03 .3s ease}.apartment-link[data-v-f8d67f03]{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--surface-1);border-radius:8px;color:var(--text);text-decoration:none;font-weight:500;transition:background .2s,transform .2s}.apartment-link[data-v-f8d67f03]:hover{background:var(--accent-bg);transform:translate(4px);text-decoration:none}.contact-section[data-v-f8d67f03]{background:var(--surface-2);border-radius:10px}.contact-toggle[data-v-f8d67f03]{display:flex;align-items:center;gap:.75rem;padding:1rem;cursor:pointer;font-weight:500;list-style:none}.contact-toggle[data-v-f8d67f03]::-webkit-details-marker{display:none}.contact-toggle .platform-name[data-v-f8d67f03]{flex:1}.contact-details[open] .toggle-arrow[data-v-f8d67f03]{transform:rotate(90deg)}.contact-info[data-v-f8d67f03]{display:flex;flex-direction:column;gap:.5rem;padding:0 1rem 1rem}.contact-link[data-v-f8d67f03]{display:block;padding:.5rem 0;color:var(--accent);text-decoration:none}.contact-link[data-v-f8d67f03]:hover{text-decoration:underline}@keyframes slideDown-f8d67f03{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}:root{--bg: #f5f5f5;--surface-1: #ffffff;--surface-2: #f0f0f0;--text: #1a1a1a;--text-secondary: #666666;--accent: #0ea5e9;--accent-bg: rgba(14, 165, 233, .1)}[data-theme=dark]{--bg: #0f172a;--surface-1: #1e293b;--surface-2: #334155;--text: #f1f5f9;--text-secondary: #94a3b8;--accent: #38bdf8;--accent-bg: rgba(56, 189, 248, .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app[data-v-eef03a1e]{min-height:100vh;background:var(--bg)}.main-container[data-v-eef03a1e]{max-width:600px;margin:0 auto;padding:1rem}.controls[data-v-eef03a1e]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.loading[data-v-eef03a1e],.error[data-v-eef03a1e]{text-align:center;padding:3rem;background:var(--surface-1);border-radius:12px}.spinner[data-v-eef03a1e]{animation:spin-eef03a1e 1s linear infinite;display:inline-block}@keyframes spin-eef03a1e{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.content[data-v-eef03a1e]{display:flex;flex-direction:column;gap:0;padding-bottom:5rem}.whatsapp-fab[data-v-eef03a1e]{position:fixed;bottom:1.5rem;right:1.5rem;width:56px;height:56px;background:#25d366;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #25d36666;transition:transform .2s,box-shadow .2s;z-index:100}.whatsapp-fab[data-v-eef03a1e]:hover{transform:scale(1.1);box-shadow:0 6px 20px #25d36680;text-decoration:none}:root{--font-primary: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-body: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", "Monaco", "Cascadia Code", "Roboto Mono", "Courier New", monospace;--text-xs: clamp(.75rem, .7rem + .25vw, .875rem);--text-sm: clamp(.875rem, .8rem + .375vw, 1rem);--text-base: clamp(1rem, .95rem + .25vw, 1.125rem);--text-lg: clamp(1.125rem, 1rem + .625vw, 1.25rem);--text-xl: clamp(1.25rem, 1.1rem + .75vw, 1.5rem);--text-2xl: clamp(1.5rem, 1.3rem + 1vw, 2rem);--text-3xl: clamp(1.875rem, 1.5rem + 1.875vw, 2.5rem);--text-4xl: clamp(2.25rem, 1.8rem + 2.25vw, 3rem);--text-5xl: clamp(3rem, 2.25rem + 3.75vw, 4rem);--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--tracking-tighter: -.05em;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .025em;--tracking-wider: .05em;--tracking-widest: .1em}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-normal);font-weight:var(--font-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:var(--font-primary);font-weight:var(--font-bold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}.fluid-type{font-size:clamp(1.2rem,.8rem + 2vw,3rem);line-height:var(--leading-tight)}.text-balance{text-wrap:balance}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap)}.font-loading{font-family:system-ui,-apple-system,sans-serif}@media(max-width:640px){:root{--text-base: 1rem}}@media(min-width:1024px){:root{--text-base: 1.125rem}}[data-theme=default],[data-theme=mediterranean]{--color-primary: #0ea5e9;--color-primary-dark: #0284c7;--color-primary-light: #38bdf8;--color-primary-subtle: #e0f2fe;--color-primary-hover: #0284c7;--color-accent: #f97316;--color-accent-dark: #ea580c;--color-accent-light: #fb923c;--color-accent-subtle: #ffedd5;--color-accent-hover: #ea580c;--color-bg: #ffffff;--color-bg-secondary: #f8fafc;--color-bg-tertiary: #f1f5f9;--color-surface: #ffffff;--color-surface-elevated: #fafbfc;--color-surface-hover: #f8fafc;--color-text: #0f172a;--color-text-secondary: #475569;--color-text-tertiary: #94a3b8;--color-text-muted: #cbd5e1;--color-border: #e2e8f0;--color-border-subtle: #f1f5f9;--color-border-hover: #cbd5e1;--color-success: #10b981;--color-success-bg: #d1fae5;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-error: #ef4444;--color-error-bg: #fee2e2;--color-info: #3b82f6;--color-info-bg: #dbeafe;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .04), 0 1px 1px 0 rgb(0 0 0 / .02);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .08), 0 2px 4px -1px rgb(0 0 0 / .04);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .08), 0 4px 6px -2px rgb(0 0 0 / .04);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .08), 0 10px 10px -5px rgb(0 0 0 / .03);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .15);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .04);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem}[data-theme=urban]{--color-primary: #18181b;--color-primary-dark: #09090b;--color-primary-light: #3f3f46;--color-primary-subtle: #e4e4e7;--color-primary-hover: #27272a;--color-accent: #06b6d4;--color-accent-dark: #0891b2;--color-accent-light: #22d3ee;--color-accent-subtle: #cffafe;--color-accent-hover: #0891b2;--color-bg: #fafafa;--color-bg-secondary: #f4f4f5;--color-bg-tertiary: #e4e4e7;--color-surface: #ffffff;--color-surface-elevated: #fafafa;--color-surface-hover: #f4f4f5;--color-text: #09090b;--color-text-secondary: #3f3f46;--color-text-tertiary: #71717a;--color-text-muted: #a1a1aa;--color-border: #e4e4e7;--color-border-subtle: #f4f4f5;--color-border-hover: #d4d4d8;--color-success: #10b981;--color-success-bg: #d1fae5;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-error: #ef4444;--color-error-bg: #fee2e2;--color-info: #06b6d4;--color-info-bg: #cffafe;--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .08), 0 1px 2px 0 rgb(0 0 0 / .04);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .12), 0 2px 4px -1px rgb(0 0 0 / .08);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .12), 0 4px 6px -2px rgb(0 0 0 / .08);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .12), 0 10px 10px -5px rgb(0 0 0 / .08);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .2);--shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .06);--radius-sm: .125rem;--radius-md: .25rem;--radius-lg: .375rem;--radius-xl: .5rem;--radius-2xl: .75rem;--radius-full: 9999px;--transition-fast: .1s cubic-bezier(.4, 0, .2, 1);--transition-base: .15s cubic-bezier(.4, 0, .2, 1);--transition-slow: .2s cubic-bezier(.4, 0, .2, 1);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem}[data-theme=alpine]{--color-primary: #065f46;--color-primary-dark: #064e3b;--color-primary-light: #059669;--color-primary-subtle: #d1fae5;--color-primary-hover: #047857;--color-accent: #dc2626;--color-accent-dark: #b91c1c;--color-accent-light: #ef4444;--color-accent-subtle: #fee2e2;--color-accent-hover: #c2410c;--color-bg: #fffef7;--color-bg-secondary: #fef9eb;--color-bg-tertiary: #fef3c7;--color-surface: #fffff9;--color-surface-elevated: #ffffff;--color-surface-hover: #fef9eb;--color-text: #1c1917;--color-text-secondary: #44403c;--color-text-tertiary: #78716c;--color-text-muted: #a8a29e;--color-border: #d6d3d1;--color-border-subtle: #e7e5e4;--color-border-hover: #a8a29e;--color-success: #16a34a;--color-success-bg: #dcfce7;--color-warning: #ea580c;--color-warning-bg: #ffedd5;--color-error: #dc2626;--color-error-bg: #fee2e2;--color-info: #0891b2;--color-info-bg: #cffafe;--shadow-sm: 0 1px 2px 0 rgb(28 25 23 / .04), 0 1px 1px 0 rgb(28 25 23 / .02);--shadow-md: 0 4px 6px -1px rgb(28 25 23 / .08), 0 2px 4px -1px rgb(28 25 23 / .04);--shadow-lg: 0 10px 15px -3px rgb(28 25 23 / .08), 0 4px 6px -2px rgb(28 25 23 / .04);--shadow-xl: 0 20px 25px -5px rgb(28 25 23 / .08), 0 10px 10px -5px rgb(28 25 23 / .03);--shadow-2xl: 0 25px 50px -12px rgb(28 25 23 / .12);--shadow-inner: inset 0 2px 4px 0 rgb(28 25 23 / .04);--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--transition-fast: .18s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem}[data-theme=default][data-dark=true],[data-theme=mediterranean][data-dark=true]{--color-primary: #38bdf8;--color-primary-dark: #0ea5e9;--color-primary-light: #7dd3fc;--color-primary-subtle: #075985;--color-primary-hover: #0ea5e9;--color-accent: #fb923c;--color-accent-dark: #f97316;--color-accent-light: #fdba74;--color-accent-subtle: #9a3412;--color-accent-hover: #fdba74;--color-bg: #0c1221;--color-bg-secondary: #1e293b;--color-bg-tertiary: #334155;--color-surface: #1a2332;--color-surface-elevated: #2d3a4e;--color-surface-hover: #374151;--color-text: #f8fafc;--color-text-secondary: #cbd5e1;--color-text-tertiary: #94a3b8;--color-text-muted: #64748b;--color-border: #334155;--color-border-subtle: #1e293b;--color-border-hover: #475569;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3), 0 1px 1px 0 rgb(0 0 0 / .2);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -1px rgb(0 0 0 / .3);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -2px rgb(0 0 0 / .3);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 10px 10px -5px rgb(0 0 0 / .3);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .6)}[data-theme=urban][data-dark=true]{--color-primary: #71717a;--color-primary-dark: #52525b;--color-primary-light: #a1a1aa;--color-primary-subtle: #27272a;--color-primary-hover: #a1a1aa;--color-accent: #22d3ee;--color-accent-dark: #06b6d4;--color-accent-light: #67e8f9;--color-accent-subtle: #164e63;--color-accent-hover: #67e8f9;--color-bg: #09090b;--color-bg-secondary: #18181b;--color-bg-tertiary: #27272a;--color-surface: #18181b;--color-surface-elevated: #27272a;--color-surface-hover: #3f3f46;--color-text: #fafafa;--color-text-secondary: #e4e4e7;--color-text-tertiary: #a1a1aa;--color-text-muted: #71717a;--color-border: #3f3f46;--color-border-subtle: #27272a;--color-border-hover: #52525b;--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .4), 0 1px 2px 0 rgb(0 0 0 / .3);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .5), 0 2px 4px -1px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .5), 0 4px 6px -2px rgb(0 0 0 / .4);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .6), 0 10px 10px -5px rgb(0 0 0 / .4);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .7)}[data-theme=alpine][data-dark=true]{--color-primary: #10b981;--color-primary-dark: #059669;--color-primary-light: #34d399;--color-primary-subtle: #064e3b;--color-primary-hover: #34d399;--color-accent: #fb923c;--color-accent-dark: #ea580c;--color-accent-light: #fdba74;--color-accent-subtle: #7c2d12;--color-accent-hover: #fdba74;--color-bg: #1a1412;--color-bg-secondary: #292524;--color-bg-tertiary: #44403c;--color-surface: #231f1d;--color-surface-elevated: #322d2a;--color-surface-hover: #3d3835;--color-text: #fef9eb;--color-text-secondary: #e7e5e4;--color-text-tertiary: #d6d3d1;--color-text-muted: #a8a29e;--color-border: #44403c;--color-border-subtle: #292524;--color-border-hover: #57534e;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .35), 0 1px 1px 0 rgb(0 0 0 / .25);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .45), 0 2px 4px -1px rgb(0 0 0 / .35);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .45), 0 4px 6px -2px rgb(0 0 0 / .35);--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .5), 0 10px 10px -5px rgb(0 0 0 / .35);--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .55)}.bg-primary{background-color:var(--color-primary);color:#fff;transition:background-color var(--transition-base)}.bg-primary:hover{background-color:var(--color-primary-hover)}.bg-accent{background-color:var(--color-accent);color:#fff;transition:background-color var(--transition-base)}.bg-accent:hover{background-color:var(--color-accent-hover)}.bg-surface{background-color:var(--color-surface);color:var(--color-text);transition:background-color var(--transition-base)}.bg-surface:hover{background-color:var(--color-surface-hover)}.bg-elevated{background-color:var(--color-surface-elevated);color:var(--color-text)}.text-primary{color:var(--color-primary)}.text-accent{color:var(--color-accent)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.border-color{border-color:var(--color-border);transition:border-color var(--transition-base)}.border-color:hover{border-color:var(--color-border-hover)}.border-subtle{border-color:var(--color-border-subtle)}.shadow-sm{box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.shadow-md{box-shadow:var(--shadow-md);transition:box-shadow var(--transition-base)}.shadow-lg{box-shadow:var(--shadow-lg);transition:box-shadow var(--transition-base)}.shadow-xl{box-shadow:var(--shadow-xl);transition:box-shadow var(--transition-base)}.shadow-2xl{box-shadow:var(--shadow-2xl);transition:box-shadow var(--transition-base)}.shadow-inner{box-shadow:var(--shadow-inner)}.shadow-hover-md:hover{box-shadow:var(--shadow-lg)}.shadow-hover-lg:hover{box-shadow:var(--shadow-xl)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-md{border-radius:var(--radius-md)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:var(--radius-full)}.space-xs{padding:var(--space-xs)}.space-sm{padding:var(--space-sm)}.space-md{padding:var(--space-md)}.space-lg{padding:var(--space-lg)}.space-xl{padding:var(--space-xl)}.interactive{cursor:pointer;transition:all var(--transition-base)}.interactive:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.interactive:active{transform:translateY(0)}.card{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-hover)}.btn-primary{background-color:var(--color-primary);color:#fff;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);border:none;font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.btn-primary:hover{background-color:var(--color-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-accent{background-color:var(--color-accent);color:#fff;padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-md);border:none;font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.btn-accent:hover{background-color:var(--color-accent-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.alert{padding:var(--space-md);border-radius:var(--radius-md);border-left:4px solid;margin:var(--space-md) 0}.alert-success{background-color:var(--color-success-bg);border-color:var(--color-success);color:var(--color-success)}.alert-warning{background-color:var(--color-warning-bg);border-color:var(--color-warning);color:var(--color-warning)}.alert-error{background-color:var(--color-error-bg);border-color:var(--color-error);color:var(--color-error)}.alert-info{background-color:var(--color-info-bg);border-color:var(--color-info);color:var(--color-info)}[data-theme=mediterranean][data-seasonal=christmas]{--color-accent: #dc2626;--color-accent-dark: #b91c1c;--color-accent-light: #ef4444;--color-accent-subtle: #fee2e2;--color-seasonal-gold: #fbbf24;--color-seasonal-green: #10b981}[data-theme=mediterranean][data-seasonal=christmas][data-dark=true]{--color-accent: #ef4444;--color-accent-light: #f87171}[data-theme=urban][data-seasonal=christmas]{--color-accent: #dc2626;--color-accent-dark: #b91c1c;--color-accent-light: #ef4444;--color-seasonal-gold: #fbbf24;--color-seasonal-silver: #94a3b8}[data-theme=urban][data-seasonal=christmas][data-dark=true]{--color-accent: #ef4444;--color-accent-light: #f87171}[data-theme=alpine][data-seasonal=christmas]{--color-accent: #dc2626;--color-accent-dark: #991b1b;--color-accent-light: #f87171;--color-primary: #059669;--color-seasonal-gold: #f59e0b}[data-theme=alpine][data-seasonal=christmas][data-dark=true]{--color-accent: #f87171;--color-primary: #10b981}@keyframes snowfall{0%{transform:translateY(-10px) translate(0);opacity:0}50%{opacity:.3}to{transform:translateY(100vh) translate(10px);opacity:0}}@keyframes sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes festiveGlow{0%,to{box-shadow:0 0 10px #dc26261a}50%{box-shadow:0 0 20px #dc262633}}[data-seasonal=christmas]:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;background-image:radial-gradient(3px 3px at 20% 30%,rgba(255,255,255,.5),transparent),radial-gradient(2px 2px at 60% 70%,rgba(255,255,255,.4),transparent),radial-gradient(2px 2px at 50% 50%,rgba(255,255,255,.3),transparent),radial-gradient(2px 2px at 80% 10%,rgba(255,255,255,.5),transparent),radial-gradient(3px 3px at 90% 60%,rgba(255,255,255,.4),transparent),radial-gradient(2px 2px at 30% 80%,rgba(255,255,255,.3),transparent),radial-gradient(1px 1px at 70% 40%,rgba(255,255,255,.4),transparent);background-size:200% 200%;animation:snowfall 20s linear infinite;opacity:.5}[data-seasonal=christmas][data-dark=true]:before{opacity:.25}[data-seasonal=christmas] .btn-primary,[data-seasonal=christmas] .btn-accent{transition:all var(--transition-base),box-shadow 2s ease-in-out;position:relative;overflow:hidden}[data-seasonal=christmas] .btn-primary:before,[data-seasonal=christmas] .btn-accent:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,rgba(255,255,255,.1),transparent);animation:festiveShimmer 3s ease-in-out infinite}@keyframes festiveShimmer{0%,to{transform:translate(-100%) translateY(-100%) rotate(45deg)}50%{transform:translate(100%) translateY(100%) rotate(45deg)}}[data-seasonal=christmas] .btn-accent:hover{animation:festiveGlow 2s ease-in-out infinite;box-shadow:var(--shadow-md),0 0 20px #dc26264d}[data-seasonal=christmas] h1:before,[data-seasonal=christmas] h2:before{content:"✨ ";opacity:.6;font-size:.7em;margin-right:.25em;animation:sparkle 3s ease-in-out infinite}[data-seasonal=christmas] h1:after{content:" 🎄";opacity:.5;font-size:.6em;margin-left:.25em}[data-seasonal=christmas] .card{border-left:3px solid;border-image:linear-gradient(to bottom,var(--color-accent),var(--color-seasonal-green, var(--color-success))) 1}[data-seasonal=christmas] .alert-success{border-color:var(--color-seasonal-green, var(--color-success));background:linear-gradient(to right,var(--color-success-bg),rgba(255,255,255,.5))}[data-seasonal=christmas] .hero,[data-seasonal=christmas] [class*=hero]{box-shadow:var(--shadow-xl),0 0 40px #dc26261a,0 0 60px #10b9810d}.seasonal-toggle{position:fixed;bottom:1rem;right:1rem;width:3.5rem;height:3.5rem;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-accent),var(--color-accent-dark));color:#fff;border:3px solid rgba(255,255,255,.3);cursor:pointer;font-size:1.8rem;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-xl),0 0 20px #dc26264d;transition:all var(--transition-base);z-index:9998}.seasonal-toggle:hover{transform:scale(1.15) rotate(15deg);box-shadow:var(--shadow-2xl),0 0 30px #dc262680}.seasonal-toggle.active{animation:sparkle 2s ease-in-out infinite,festivePulse 3s ease-in-out infinite;border-color:#fbbf2499}@keyframes festivePulse{0%,to{box-shadow:var(--shadow-xl),0 0 20px #dc262666,0 0 40px #10b98133}50%{box-shadow:var(--shadow-2xl),0 0 30px #dc262699,0 0 50px #10b9814d}}.seasonal-toggle.off-season{opacity:.6;bottom:.5rem;right:.5rem;width:2.5rem;height:2.5rem;font-size:1.2rem}.seasonal-toggle:after{content:attr(data-tooltip);position:absolute;bottom:100%;right:0;margin-bottom:.5rem;padding:.5rem .75rem;background:var(--color-surface-elevated);color:var(--color-text);border-radius:var(--radius-md);font-size:.75rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-base);box-shadow:var(--shadow-md);border:1px solid var(--color-border)}.seasonal-toggle:hover:after{opacity:1}@media(prefers-reduced-motion:reduce){[data-seasonal=christmas]:before{animation:none}[data-seasonal=christmas] h1:before,[data-seasonal=christmas] h2:before{animation:none}[data-seasonal=christmas] .btn-accent:hover,.seasonal-toggle.active{animation:none}}
