.calendar-page{color:#fff;background:linear-gradient(#030b14f5 0%,#081827fa 52%,#030b14 100%);min-height:100vh;padding-bottom:6rem}.calendar-page--andean{--calendar-accent:#e8b44f;--calendar-accent-2:#8fbf75;--calendar-card:#1f1a14c7;--calendar-line:#e8b44f38;--calendar-muted:#fff6e6b8}.calendar-page--festive{--calendar-accent:#12d3c6;--calendar-accent-2:#ffcf5a;--calendar-card:#0a1b2dcc;--calendar-line:#12d3c633;--calendar-muted:#e4f6ffbd}.calendar-hero{align-items:end;min-height:620px;padding:9.5rem 1rem 5rem;display:grid;position:relative;overflow:hidden}.calendar-hero img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.calendar-hero__shade{background:linear-gradient(#030b14ad,#030b14f0),linear-gradient(90deg,#030b14e6,#030b1447);position:absolute;inset:0}.calendar-hero--festive .calendar-hero__shade{background:linear-gradient(#030b148f,#030b14f0),linear-gradient(90deg,#030b14d1,#030b1438)}.calendar-hero__content{z-index:1;width:min(var(--content-max), 100%);margin:0 auto;position:relative}.calendar-kicker{border:1px solid var(--calendar-line);min-height:2.1rem;color:var(--calendar-accent-2);letter-spacing:0;text-transform:uppercase;background:#ffffff14;border-radius:8px;align-items:center;padding:.45rem .75rem;font-size:.72rem;font-weight:800;display:inline-flex}.calendar-hero h1{letter-spacing:0;width:min(880px,100%);margin:1.1rem 0 0;font-size:clamp(2.6rem,7vw,6.2rem);line-height:.98}.calendar-hero p{color:#ffffffd1;width:min(690px,100%);margin:1.2rem 0 0;font-size:clamp(1rem,2vw,1.22rem);line-height:1.65}.calendar-hero__actions,.calendar-toolbar,.calendar-view-toggle,.calendar-filters,.calendar-tags,.calendar-card__topline,.calendar-card__meta,.calendar-card__footer,.calendar-detail-hero__badges,.calendar-detail-meta{align-items:center;display:flex}.calendar-hero__actions{flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}.calendar-primary-link,.calendar-secondary-link,.calendar-reset-button,.calendar-view-toggle button,.calendar-back-link{border-radius:8px;justify-content:center;align-items:center;min-height:2.9rem;font-weight:800;text-decoration:none;display:inline-flex}.calendar-primary-link{background:var(--calendar-accent);color:#06111d;gap:.5rem;padding:.75rem 1rem}.calendar-secondary-link{color:#fff;background:#ffffff14;border:1px solid #ffffff29;padding:.75rem 1rem}.calendar-intro,.calendar-workspace,.calendar-detail-layout{width:min(var(--content-max), calc(100% - 2rem));margin:0 auto}.calendar-intro{gap:1rem;padding:2rem 0 1rem;display:grid}.calendar-intro--with-wheel{grid-template-columns:minmax(0,.92fr) minmax(360px,.78fr);align-items:start;gap:1.25rem}.calendar-intro__copy{gap:1rem;display:grid}.calendar-intro__copy .calendar-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-intro__wheel{border:1px solid var(--calendar-line);background:radial-gradient(circle at 50% 10%,#e8b44f24,#0000 18rem),#ffffff12;border-radius:8px;gap:1rem;padding:1rem;display:grid;position:sticky;top:6.75rem;box-shadow:0 22px 58px #0000003d}.calendar-intro__wheel-header{gap:.35rem;display:grid}.calendar-intro__wheel-header span{color:var(--calendar-accent);text-transform:uppercase;font-size:.78rem;font-weight:900}.calendar-intro__wheel-header p{color:var(--calendar-muted);margin:0;line-height:1.55}.calendar-alert,.calendar-audit-note,.calendar-card,.calendar-detail-section,.calendar-detail-sidebar>*,.calendar-empty-state{border:1px solid var(--calendar-line);background:var(--calendar-card);border-radius:8px;box-shadow:0 18px 42px #00000038}.calendar-alert{color:#fff7e8;align-items:flex-start;gap:.85rem;padding:1rem;display:flex}.calendar-alert--festive{color:#e9fffd}.calendar-alert svg{color:var(--calendar-accent);flex:none;margin-top:.15rem}.calendar-alert p,.calendar-audit-note p,.calendar-detail-section p,.calendar-map-shell p,.calendar-location-card p,.calendar-empty-state p{color:var(--calendar-muted);margin:0;line-height:1.65}.calendar-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem;display:grid}.calendar-stats div{background:#ffffff0f;border:1px solid #ffffff17;border-radius:8px;min-height:8rem;padding:1rem}.calendar-stats strong{margin-top:1.1rem;font-size:1.55rem;display:block}.calendar-stats span{color:var(--calendar-muted);margin-top:.35rem;font-size:.84rem;line-height:1.35;display:block}.calendar-audit-note{padding:1.25rem}.calendar-audit-note h2,.calendar-month-section h2,.calendar-detail-section h2,.calendar-location-card h2,.calendar-source-list h3,.calendar-map-shell h3,.calendar-empty-state h2{color:#fff;letter-spacing:0;margin:0}.calendar-audit-note h2{margin-bottom:.55rem;font-size:1.1rem}.calendar-workspace{padding-top:2rem}.calendar-toolbar{flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:1rem}.calendar-search{border:1px solid var(--calendar-line);width:min(100%,560px);min-height:3.2rem;color:var(--calendar-accent);background:#ffffff14;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:0 .85rem;display:grid}.calendar-search input{color:#fff;min-width:0;font:inherit;background:0 0;border:0;outline:0}.calendar-search button{color:#fff;background:#ffffff1a;border-radius:8px;place-items:center;width:1.8rem;height:1.8rem;display:grid}.calendar-view-toggle{border:1px solid var(--calendar-line);background:#ffffff0f;border-radius:8px;gap:.35rem;padding:.25rem}.calendar-view-toggle button{color:#ffffffc2;min-height:2.4rem;padding:.55rem .85rem}.calendar-view-toggle button.active{background:var(--calendar-accent);color:#06111d}.calendar-filters{flex-wrap:wrap;align-items:end;gap:.75rem;margin-bottom:1rem}.calendar-filter{gap:.35rem;min-width:min(100%,150px);display:grid}.calendar-filter span{color:#ffffffb3;font-size:.75rem;font-weight:800}.calendar-filter select{border:1px solid var(--calendar-line);color:#fff;min-height:2.7rem;font:inherit;background:#071521;border-radius:8px;padding:0 .7rem}.calendar-reset-button{color:#fff;background:#ffffff14;border:1px solid #ffffff24;padding:.65rem .85rem}.calendar-result-count{color:var(--calendar-muted);margin:1.2rem 0;font-weight:700}.calendar-month-section{margin-top:2rem}.calendar-month-section__header{grid-template-columns:minmax(0,1fr) minmax(260px,.55fr);align-items:end;gap:1rem;margin-bottom:1rem;display:grid}.calendar-month-section__eyebrow{color:var(--calendar-accent);text-transform:uppercase;margin-bottom:.4rem;font-size:.78rem;font-weight:800;display:inline-flex}.calendar-month-section h2{font-size:clamp(1.8rem,4vw,3rem)}.calendar-month-section__header p{color:var(--calendar-muted);margin:0;line-height:1.55}.calendar-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.calendar-card{color:#fff;flex-direction:column;gap:.85rem;min-height:19rem;padding:1rem;transition:transform .2s,border-color .2s,background .2s;display:flex}.calendar-card:hover{border-color:var(--calendar-accent);background:#ffffff17;transform:translateY(-3px)}.calendar-card__topline,.calendar-detail-hero__badges{flex-wrap:wrap;gap:.45rem}.calendar-card__icon{width:2.2rem;height:2.2rem;color:var(--calendar-accent);background:#ffffff1a;border-radius:8px;place-items:center;display:grid}.calendar-card h3{letter-spacing:0;margin:0;font-size:1.18rem;line-height:1.22}.calendar-card p{color:var(--calendar-muted);margin:0;font-size:.93rem;line-height:1.55}.calendar-card__meta{flex-wrap:wrap;gap:.45rem}.calendar-card__meta span,.calendar-detail-meta span{color:#ffffffd1;background:#ffffff14;border-radius:8px;align-items:center;gap:.35rem;min-height:1.8rem;padding:.25rem .45rem;font-size:.78rem;display:inline-flex}.calendar-card__footer{border-top:1px solid #ffffff14;justify-content:space-between;gap:.8rem;margin-top:auto;padding-top:.85rem}.calendar-card__footer span{color:var(--calendar-accent-2);text-transform:capitalize;font-size:.8rem;font-weight:800}.calendar-card__footer strong{color:var(--calendar-accent);align-items:center;gap:.25rem;font-size:.82rem;display:inline-flex}.calendar-badge{border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:.32rem;min-height:1.8rem;padding:.28rem .5rem;font-size:.72rem;font-weight:800;display:inline-flex}.calendar-badge--neutral{color:#d6ecff;background:#ffffff14}.calendar-badge--warning{color:#ffe2a7;background:#ffb84c21}.calendar-badge--busy{color:#ffc7d6;background:#ff336621}.calendar-badge--confirmed{color:#adfff6;background:#12d3c61f}.calendar-tags{flex-wrap:wrap;gap:.4rem}.calendar-tag{color:#ffffffd1;background:#ffffff14;border-radius:8px;align-items:center;gap:.3rem;min-height:1.8rem;padding:.28rem .45rem;font-size:.72rem;font-weight:700;display:inline-flex}.calendar-empty-state{text-align:center;margin-top:2rem;padding:2rem}.calendar-detail-page{min-height:100vh;padding:7rem 0 6rem}.calendar-detail-hero{width:min(var(--content-max), calc(100% - 2rem));border:1px solid var(--calendar-line);background:linear-gradient(135deg, #12d3c61f, transparent 52%), var(--calendar-card);border-radius:8px;margin:0 auto 1.2rem;padding:2rem}.calendar-detail-hero--andean{background:linear-gradient(135deg, #e8b44f24, transparent 52%), var(--calendar-card)}.calendar-back-link{width:max-content;min-height:2.4rem;color:var(--calendar-accent);background:#ffffff14;gap:.45rem;padding:.55rem .75rem}.calendar-detail-hero__badges{margin-top:1rem}.calendar-detail-hero h1{letter-spacing:0;width:min(920px,100%);margin:1rem 0 0;font-size:clamp(2.25rem,6vw,5rem);line-height:1}.calendar-detail-hero p{width:min(780px,100%);color:var(--calendar-muted);margin:1rem 0 0;font-size:1.08rem;line-height:1.65}.calendar-detail-meta{flex-wrap:wrap;gap:.55rem;margin-top:1rem}.calendar-detail-layout{grid-template-columns:minmax(0,1fr) 360px;align-items:start;gap:1rem;display:grid}.calendar-detail-layout main,.calendar-detail-sidebar{gap:1rem;display:grid}.calendar-detail-section{padding:1.25rem}.calendar-detail-section h2,.calendar-location-card h2{margin-bottom:.75rem;font-size:1.15rem}.calendar-check-list{gap:.62rem;margin:0;padding:0;list-style:none;display:grid}.calendar-check-list li{color:var(--calendar-muted);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.55rem;line-height:1.5;display:grid}.calendar-check-list svg{color:var(--calendar-accent);margin-top:.12rem}.calendar-info-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;display:grid}.calendar-info-grid div{background:#ffffff0f;border:1px solid #ffffff14;border-radius:8px;min-height:5rem;padding:.8rem}.calendar-info-grid strong,.calendar-info-grid span{display:block}.calendar-info-grid strong{color:#fff;margin-bottom:.35rem}.calendar-info-grid span{color:var(--calendar-muted);line-height:1.45}.calendar-detail-sidebar{position:sticky;top:6.5rem}.calendar-location-card,.calendar-source-list,.calendar-map-shell{padding:1rem}.calendar-location-card dl{gap:.65rem;margin:0;display:grid}.calendar-location-card dl div{border-top:1px solid #ffffff14;grid-template-columns:110px minmax(0,1fr);gap:.7rem;padding-top:.65rem;display:grid}.calendar-location-card dt{color:#ffffff8c;font-size:.8rem}.calendar-location-card dd{color:#fff;margin:0;line-height:1.4}.calendar-source-list__header{gap:.35rem;margin-bottom:.7rem;display:grid}.calendar-source-list__header span{color:var(--calendar-muted);font-size:.78rem}.calendar-source-list ul{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.calendar-source-list a{background:#ffffff12;border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.45rem;padding:.65rem;display:grid}.calendar-source-list a span{color:#fff;min-width:0;font-size:.86rem;line-height:1.35}.calendar-source-list small{color:var(--calendar-accent);text-transform:capitalize;font-weight:800}.calendar-map-shell{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;min-height:8.5rem;display:grid}.calendar-map-shell__marker{background:var(--calendar-accent);color:#06111d;border-radius:8px;place-items:center;width:3.4rem;height:3.4rem;display:grid}.calendar-map-shell a,.calendar-map-shell span{color:var(--calendar-accent);margin-top:.5rem;font-size:.88rem;font-weight:800;display:inline-flex}@media (max-width:1020px){.calendar-stats,.calendar-card-grid,.calendar-detail-layout{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-intro--with-wheel{grid-template-columns:1fr}.calendar-intro__wheel,.calendar-detail-sidebar{position:static}}@media (max-width:760px){.calendar-hero{min-height:560px;padding-top:7rem}.calendar-intro,.calendar-workspace,.calendar-detail-layout,.calendar-detail-hero{width:min(100% - 2rem, var(--content-max))}.calendar-stats,.calendar-intro__copy .calendar-stats,.calendar-card-grid,.calendar-month-section__header,.calendar-detail-layout,.calendar-info-grid{grid-template-columns:1fr}.calendar-stats div{min-height:auto}.calendar-toolbar{align-items:stretch}.calendar-search,.calendar-view-toggle,.calendar-filter,.calendar-filter select,.calendar-reset-button{width:100%}.calendar-view-toggle{grid-template-columns:1fr 1fr;display:grid}.calendar-card{min-height:auto}.calendar-detail-page{padding-top:6.4rem}.calendar-detail-hero{padding:1.1rem}.calendar-location-card dl div,.calendar-source-list a,.calendar-map-shell{grid-template-columns:1fr}}.calendar-page--festive{--calendar-card:#fff;--calendar-line:#12d3c63d;--calendar-muted:#506277}.calendar-page--andean{--calendar-card:#fff;--calendar-line:#e8b44f47;--calendar-muted:#506277}.calendar-page{color:#123456!important;background:#fff!important}.calendar-hero__content h1{color:#fff!important}.calendar-hero__content p{color:#ffffffe0!important}.calendar-audit-note h2,.calendar-month-section h2,.calendar-detail-section h2,.calendar-location-card h2,.calendar-source-list h3,.calendar-map-shell h3,.calendar-empty-state h2{color:#123456!important}.calendar-alert{color:#7f5f00!important;background:#fff9e6!important;border:1px solid #ffeaa7!important}.calendar-alert--festive{color:#0c857c!important;background:#e6fcfb!important;border:1px solid #bdf2f0!important}.calendar-alert svg{color:inherit!important}.calendar-stats div{background:#f8fafc!important;border:1px solid #0f172a14!important;box-shadow:0 4px 12px #0f172a05!important}.calendar-stats strong{color:#123456!important}.calendar-stats svg{color:#12d3c6!important}.calendar-page--andean .calendar-stats svg{color:#e8b44f!important}.calendar-filter span{color:#506277!important}.calendar-filter select{color:#123456!important;background:#fff!important;border:1px solid #0f172a26!important}.calendar-search input{color:#123456!important}.calendar-search input::placeholder{color:#1234566b!important}.calendar-search button{color:#123456!important}.calendar-card{box-shadow:0 10px 30px #0f172a0a!important}.calendar-card h3{color:#123456!important}.calendar-card p,.calendar-card .calendar-card__meta span{color:#506277!important}.calendar-card .calendar-card__footer strong{color:#123456!important}.calendar-info-panel{background:#f8fafc!important;border:1px solid #e8b44f38!important}.calendar-info-panel h3{color:#123456!important}.calendar-info-panel p,.calendar-info-panel li{color:#506277!important}
