.fundraisingCampaignGrid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.campaignDispatch{border:1px solid var(--color-border-light);border-radius:var(--radius-2xl);transition:transform var(--transition-base) ease, box-shadow var(--transition-base) ease, border-color var(--transition-base) ease;--campaign-accent:var(--color-primary);background:#fff;flex-direction:column;display:flex;position:relative;overflow:hidden}.campaignDispatch:hover{box-shadow:var(--shadow-lg);border-color:var(--color-border);transform:translateY(-2px)}.campaignDispatch:hover .campaignDispatchHeroImage,.campaignDispatch:hover .campaignDispatchHeroPlaceholder{transform:scale(1.035)}.campaignDispatch.isDraft{opacity:.85}.campaignDispatch.isOverGoal{--campaign-accent:var(--color-success)}.campaignDispatchHero{background:linear-gradient(135deg, var(--color-primary-dark), var(--color-primary-light));height:13rem;position:relative;overflow:hidden}.campaignDispatchHeroImage,.campaignDispatchHeroPlaceholder{width:100%;height:100%;transition:transform .5s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0}.campaignDispatchHeroImage{object-fit:cover}.campaignDispatchHeroPlaceholder{padding:var(--space-5);background:radial-gradient(120% 80% at 30% 20%, #86efac 0%, var(--color-primary) 65%, var(--color-primary-dark) 100%);align-items:flex-start;display:flex}.campaignDispatchHeroMonogram{font-size:clamp(2.25rem,6.2vw,3.25rem);line-height:.95;font-weight:var(--font-weight-bold);letter-spacing:-.035em;color:#ffffffeb;overflow-wrap:anywhere;text-shadow:0 2px 24px #0000002e;max-width:90%}.campaignDispatchHeroScrim{pointer-events:none;background:linear-gradient(#0000 0%,#00000014 38%,#00000094 78%,#000c 100%);position:absolute;inset:0}.campaignDispatchStatusPill{top:var(--space-3);right:var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);letter-spacing:.02em;color:#fff;-webkit-backdrop-filter:blur(10px)saturate(140%);border-radius:var(--radius-full);z-index:2;background:#ffffff2e;border:1px solid #ffffff52;align-items:center;padding:4px 10px;display:inline-flex;position:absolute}.campaignDispatchStatusPill.active:before{content:"";background:#6ee7a0;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block;box-shadow:0 0 0 2px #6ee7a040}.campaignDispatchStatusPill.draft{background:#ffffff24}.campaignDispatchStatusPill.completed{background:#3b82f652;border-color:#93c5fd80}.campaignDispatchStatusPill.archived{background:#00000061}.campaignDispatchHeroCaption{padding:0 var(--space-5) var(--space-3);color:#fff;z-index:1;position:absolute;bottom:10px;left:0;right:0}.campaignDispatchKicker{font-size:10px;font-weight:var(--font-weight-semibold);letter-spacing:.1em;text-transform:uppercase;color:#ffffffc7;margin-bottom:4px;display:block}.campaignDispatchTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:#fff;text-shadow:0 1px 12px #00000059;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;line-height:1.2;display:-webkit-box;overflow:hidden}.campaignDispatchRail{z-index:2;background:#ffffff2e;height:6px;position:absolute;bottom:0;left:0;right:0}.campaignDispatchRailFill{background:var(--campaign-accent);height:100%;transition:width 1.2s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 0 12px #2d5a3d80}.campaignDispatchRailFill:after{content:"";width:10px;height:10px;box-shadow:0 0 0 2px var(--campaign-accent), 0 2px 6px #00000059;background:#fff;border-radius:50%;position:absolute;top:50%;right:-4px;transform:translateY(-50%)}.campaignDispatch.isOverGoal .campaignDispatchRailFill{box-shadow:0 0 18px #22c55ea6}.campaignDispatchBody{padding:var(--space-5);gap:var(--space-4);flex-direction:column;display:flex}.campaignDispatchDescription{font-size:var(--font-size-sm);color:var(--color-text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;line-height:1.55;display:-webkit-box;overflow:hidden}.campaignDispatchChart{gap:var(--space-2);padding:var(--space-4);background:var(--color-bg-muted,#fafaf7);border:1px solid var(--color-border-light);border-radius:var(--radius-md);flex-direction:column;display:flex}.campaignDispatchChartTop{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.campaignDispatchChartRaised{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--campaign-accent);letter-spacing:-.01em;font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:inline-flex}.campaignDispatchChartRaised .muted{font-size:10px;font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.09em;margin-left:2px}.campaignDispatchChartPct{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--campaign-accent);font-variant-numeric:tabular-nums;letter-spacing:-.02em;line-height:1}.campaignDispatchChartBar{border:1px solid var(--color-border-light);border-radius:var(--radius-full);background:#fff;height:12px;position:relative;overflow:hidden;box-shadow:inset 0 1px 2px #0000000a}.campaignDispatchChartFill{background:linear-gradient(90deg, var(--campaign-accent), color-mix(in srgb, var(--campaign-accent) 65%, #fff));border-radius:var(--radius-full);height:100%;transition:width 1.2s cubic-bezier(.4,0,.2,1);position:relative}.campaignDispatchChartFill:after{content:"";width:8px;height:8px;box-shadow:0 0 0 2px var(--campaign-accent), 0 2px 6px #0000002e;background:#fff;border-radius:50%;position:absolute;top:50%;right:-3px;transform:translateY(-50%)}.campaignDispatch.isOverGoal .campaignDispatchChartFill{background:linear-gradient(90deg, var(--color-success), #4ade80);box-shadow:0 0 12px #22c55e73}.campaignDispatchChartBottom{justify-content:space-between;align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);display:flex}.campaignDispatchChartMeta{color:var(--color-text-secondary);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.campaignDispatchChartMeta .metaLabel{color:var(--color-text-tertiary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.06em;margin-right:4px;font-size:10px}.campaignDispatchChartDays{color:var(--color-text-tertiary);font-weight:var(--font-weight-medium);align-items:center;gap:4px;display:inline-flex}.campaignDispatchActions{align-items:center;gap:var(--space-2);display:flex}.campaignDispatchDonate{height:42px;font-weight:var(--font-weight-semibold);letter-spacing:.01em;gap:var(--space-2);flex:1}.campaignDispatchManageWrap{flex-shrink:0;position:relative}.campaignDispatchManageBtn{width:42px;height:42px;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition-fast) ease, color var(--transition-fast) ease;background:0 0;justify-content:center;align-items:center;display:inline-flex}.campaignDispatchManageBtn:hover{background:var(--color-border-light);color:var(--color-text-primary)}.campaignDispatchManageBtn[aria-expanded=true]{background:var(--color-border-light);color:var(--color-primary)}.campaignDispatchMenuBackdrop{z-index:20;position:fixed;inset:0}.campaignDispatchMenu{border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:180px;box-shadow:var(--shadow-xl);z-index:21;background:#fff;flex-direction:column;padding:4px;display:flex;position:absolute;bottom:calc(100% + 6px);right:0}.campaignDispatchMenuItem{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-sm);cursor:pointer;text-align:left;transition:background var(--transition-fast) ease;background:0 0;border:none;display:inline-flex}.campaignDispatchMenuItem:hover{background:var(--color-border-light)}@media (prefers-reduced-motion:reduce){.campaignDispatch,.campaignDispatchHeroImage,.campaignDispatchHeroPlaceholder,.campaignDispatchRailFill,.campaignDispatchChartFill{transition:none!important}.campaignDispatch:hover .campaignDispatchHeroImage,.campaignDispatch:hover .campaignDispatchHeroPlaceholder{transform:none}}@media (max-width:400px){.campaignDispatchHero{height:11rem}.campaignDispatchTitle,.campaignDispatchChartRaised{font-size:var(--font-size-lg)}.campaignDispatchChartPct{font-size:var(--font-size-xl)}}.fundraisingThermometer{flex-direction:column;align-items:center;display:flex;position:relative}.fundraisingThermometer.sm{width:40px;height:120px}.fundraisingThermometer.md{width:56px;height:200px}.fundraisingThermometer.lg{width:72px;height:320px}.fundraisingThermometerTube{background:var(--color-border-light);border:1px solid var(--color-border);border-radius:999px 999px 0 0;flex:1;width:60%;margin-bottom:-1px;position:relative;overflow:hidden}.fundraisingThermometerMercury{background:linear-gradient(to top, var(--fundraising-accent,var(--color-primary)), var(--fundraising-accent-light,var(--color-success)));transition:height 1.2s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;right:0}.fundraisingThermometerMercury.overGoal{box-shadow:0 0 12px #22c55e66}.fundraisingThermometerBulb{aspect-ratio:1;background:var(--fundraising-accent,var(--color-primary));z-index:1;border-radius:50%;flex-shrink:0;width:100%;position:relative}.fundraisingThermometerLabels{right:calc(100% + var(--space-3));white-space:nowrap;flex-direction:column;justify-content:space-between;display:flex;position:absolute;top:0;bottom:0}.fundraisingThermometerGoalLabel{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.fundraisingThermometerAmountLabel{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:var(--color-primary)}.fundraisingThermometerMilestone{border-top:1px dashed var(--color-border);height:1px;position:absolute;left:0;right:0}.fundraisingProgressBar{width:100%;position:relative}.fundraisingProgressTrack{background:var(--color-border-light);border-radius:var(--radius-full);height:10px;overflow:hidden}.fundraisingProgressFill{background:linear-gradient(to right, var(--fundraising-accent,var(--color-primary)), var(--fundraising-accent-light,var(--color-success)));border-radius:var(--radius-full);min-width:4px;height:100%;transition:width 1.2s cubic-bezier(.4,0,.2,1)}.fundraisingProgressFill.overGoal{background:linear-gradient(to right, var(--color-primary), var(--color-success), var(--color-warning))}.fundraisingProgressLabels{margin-top:var(--space-1);font-size:var(--font-size-xs);justify-content:space-between;display:flex}.fundraisingProgressRaised{font-weight:var(--font-weight-semibold);color:var(--color-primary)}.fundraisingProgressGoal{color:var(--color-text-tertiary)}.fundraisingProgressPercent{font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-primary);text-align:center;margin-top:var(--space-1)}.fundraisingViewTabs{margin-bottom:var(--space-4);background:var(--color-border-light);border-radius:var(--radius-md);align-items:center;gap:4px;width:fit-content;padding:3px;display:flex}.fundraisingViewTab{padding:6px var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);cursor:pointer;border-radius:var(--radius-sm);white-space:nowrap;background:0 0;border:none;transition:all .15s}.fundraisingViewTab:hover:not(.active){color:var(--color-text-primary)}.fundraisingViewTab.active{color:var(--color-primary);font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-sm);background:#fff}.fundraisingCampaignHero{gap:var(--space-8);padding:var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);background:#fff;align-items:flex-start;display:flex}.fundraisingCampaignHeroContent{flex:1}.fundraisingCampaignHeroTitle{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.fundraisingCampaignHeroDescription{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-4);line-height:1.6}.fundraisingCampaignHeroStats{gap:var(--space-6);display:flex}.fundraisingCampaignHeroStat{flex-direction:column;display:flex}.fundraisingCampaignHeroStatValue{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.fundraisingCampaignHeroStatLabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}@media (max-width:768px){.fundraisingCampaignGrid{grid-template-columns:1fr}.fundraisingThermometer.lg{width:56px;height:240px}.fundraisingCampaignHero{text-align:center;flex-direction:column;align-items:center}.fundraisingCampaignHeroStats{justify-content:center}}
.trialBanner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);margin-bottom:var(--space-4);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.trialBanner--gentle{border:1px solid var(--color-info,#3b82f6);color:var(--color-text-primary);background:#3b82f614}.trialBanner--nudge{border:1px solid var(--color-warning);color:var(--color-text-primary);background:#f59e0b14}.trialBanner--urgent{border:1px solid var(--color-error);color:var(--color-text-primary);background:#ef444414}.trialBanner--expired{border:1px solid var(--color-error);color:var(--color-text-primary);background:#ef44441f}.trialBannerText{flex:1}.trialBannerAction{flex-shrink:0}.featureUpgradeCard{text-align:center;padding:var(--space-12) var(--space-6);max-width:480px;margin:var(--space-8) auto;flex-direction:column;justify-content:center;align-items:center;display:flex}.featureUpgradeCard .emptyStateIcon{color:var(--color-primary)}.featureUpgradeCard .emptyStateTitle{margin-top:var(--space-4)}.featureUpgradeCard .emptyStateDescription{margin-top:var(--space-2);color:var(--color-text-secondary)}.billingPage{max-width:800px}.billingStatusBadge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.billingStatusBadge--trialing{color:var(--color-info);background:#3b82f61a}.billingStatusBadge--active{color:var(--color-success);background:#22c55e1a}.billingStatusBadge--free{color:var(--color-text-secondary);background:#9ca3af1a}.billingStatusBadge--past_due{color:var(--color-warning);background:#f59e0b1a}.billingPlanCard{background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-6);overflow:hidden}.billingPlanAccent{background:linear-gradient(90deg, var(--color-primary), var(--color-primary-light));height:4px}.billingPlanContent{padding:var(--space-6);justify-content:space-between;align-items:flex-start;gap:var(--space-6);display:flex}.billingPlanMain{flex:1;min-width:0}.billingPlanLabelRow{align-items:center;gap:var(--space-3);margin-bottom:var(--space-2);display:flex}.billingPlanLabel{font-size:var(--font-size-xs);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--font-weight-medium)}.billingPlanTitle{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:0 0 var(--space-1) 0}.billingPlanDescription{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin:0}.billingPlanMeta{text-align:right;flex-shrink:0}.billingPlanPricing{margin-bottom:var(--space-1);justify-content:flex-end;align-items:baseline;gap:2px;display:flex}.billingPlanPrice{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.billingPlanInterval{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.billingBillingNote{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin:0 0 var(--space-1) 0}.billingNextBilling{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin:0}.billingPlanTrialBanner{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--font-size-xs);color:var(--color-info);background:#3b82f60f;border-top:1px solid #3b82f61f;display:flex}.billingPlanFreeBanner{padding:var(--space-3) var(--space-6);border-top:1px solid var(--color-border-light);font-size:var(--font-size-xs);color:var(--color-text-secondary);background:#9ca3af0f}@media (max-width:480px){.billingPlanContent{gap:var(--space-4);flex-direction:column}.billingPlanMeta{text-align:left}.billingPlanPricing{justify-content:flex-start}}.billingSection{margin-bottom:var(--space-6)}.billingSectionTitle{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-primary);margin:0 0 var(--space-4) 0;padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border-light)}.billingFeaturesGrid{gap:var(--space-3);grid-template-columns:repeat(2,1fr);display:grid}@media (max-width:480px){.billingFeaturesGrid{grid-template-columns:1fr}}.billingFeatureItem{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-primary);display:flex}.billingFeatureItem svg{color:var(--color-success);flex-shrink:0}.billingAddonsList{gap:var(--space-3);flex-direction:column;display:flex}.billingAddonCard{padding:var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border-light);justify-content:space-between;align-items:center;gap:var(--space-4);background:#fff;display:flex}.billingAddonInfo{flex-direction:column;gap:2px;min-width:0;display:flex}.billingAddonName{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.billingAddonDescription{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.billingAddonPrice{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary);white-space:nowrap}.billingActions{gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border-light);flex-wrap:wrap;display:flex}.billingCheckoutLoading{align-items:center;gap:var(--space-2);color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-top:var(--space-4);display:flex}.planComparison{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:1fr 1fr;display:grid}@media (max-width:640px){.planComparison{grid-template-columns:1fr}}.planCard{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background-color:#fff;position:relative}.planCard--recommended{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary)}.planCardBadge{top:calc(var(--space-3) * -1);background:var(--color-primary);color:#fff;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;position:absolute;left:50%;transform:translate(-50%)}.planCardPrice{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold)}.planCardInterval{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.planCardFeatures{margin:var(--space-4) 0;padding:0;list-style:none}.planCardFeatures li{padding:var(--space-1) 0;font-size:var(--font-size-sm);align-items:center;gap:var(--space-2);display:flex}.planCardFeatures li:before{content:"✓";color:var(--color-success);font-weight:var(--font-weight-bold)}.cancelFeedback{margin-top:var(--space-4)}.cancelFeedback select{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-sm);background:var(--color-bg,white)}.sidebarItemLocked{opacity:.5}.sidebarLockIcon{color:var(--color-text-tertiary);width:14px;height:14px;margin-left:auto}.sidebarUpgradeButton{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);margin:var(--space-2) var(--space-3);background:var(--color-primary);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:var(--transition-fast);width:calc(100% - var(--space-6));border:none;display:flex}.sidebarUpgradeButton:hover{opacity:.9}
.servicePlanningLayoutContainer{background:linear-gradient(to bottom right,#fff 0%,#fffbf0 50%,#fef9e7 100%);grid-template-columns:320px 1fr;min-height:calc(100vh - 80px);display:grid}.servicePlanningSidebar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);max-height:calc(100vh - 80px);padding-top:2px;padding-bottom:var(--space-8);scrollbar-width:thin;scrollbar-color:transparent transparent;background:#ffffffb3;align-self:start;position:sticky;top:80px;overflow-y:auto}.servicePlanningSidebar:hover{scrollbar-color:#0003 transparent}.servicePlanningContent{min-height:calc(100vh - 80px);padding:10px 24px 64px}.areaSwitcher{width:100%;margin-bottom:0;position:relative}.areaSwitcherTrigger{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-4) var(--space-3);border:none;border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:var(--transition-fast);background:#ffffffe6;border-radius:0;display:flex}.areaSwitcherTrigger:hover{background:#fff}.areaSwitcherIcon{background:linear-gradient(135deg, var(--color-primary), #16a34a);border-radius:var(--radius-md);color:#fff;width:32px;height:32px;font-size:var(--font-size-sm);justify-content:center;align-items:center;display:flex}.areaSwitcherLabel{text-align:left;flex:1}.areaSwitcherTitle{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);color:var(--color-text-primary)}.areaSwitcherSubtitle{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.areaSwitcherChevron{color:var(--color-text-tertiary);font-size:var(--font-size-xs);transition:transform var(--transition-fast)}.areaSwitcherChevron.open{transform:rotate(180deg)}.areaSwitcherDropdown{top:100%;left:var(--space-4);right:var(--space-4);margin-top:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:50;background:#fff;position:absolute;overflow:hidden}.areaSwitcherItem{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);width:100%;color:var(--color-text-primary);font-size:var(--font-size-sm);transition:background var(--transition-fast);cursor:pointer;text-align:left;background:0 0;border:none;text-decoration:none;display:flex}.areaSwitcherItem:hover{background:#f0fdf4}.areaSwitcherItem.active{color:var(--color-primary);font-weight:var(--font-weight-semibold);background:#4ade801a}.servicesSidebarSettings{padding-top:var(--space-4);border-top:1px solid var(--color-border-light);margin-top:auto}.servicesSidebarNav{padding:0 var(--space-4);flex-direction:column;flex:1;display:flex}.servicesSidebarSection{margin-bottom:var(--space-4)}.servicesSidebarSectionLabel{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);padding:var(--space-1) var(--space-3);margin-bottom:var(--space-1);font-weight:var(--font-weight-semibold)}.servicesSidebarItem{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:var(--font-size-sm);transition:all var(--transition-fast);cursor:pointer;border-left:3px solid #0000;text-decoration:none;display:flex}.servicesSidebarItem:hover{color:var(--color-text-primary);background:#0000000a}.servicesSidebarItem.active{color:var(--color-primary);border-left-color:var(--color-primary);font-weight:var(--font-weight-medium);background:#4ade801a}.servicesSidebarItemIcon{flex-shrink:0;width:18px;height:18px}.serviceTypesList{gap:var(--space-3);flex-direction:column;display:flex}.serviceTypeCard{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);transition:all var(--transition-fast);background:#fff;display:flex}.serviceTypeCard:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.serviceTypeColorDot{border-radius:var(--radius-full);flex-shrink:0;width:12px;height:12px}.serviceTypeInfo{flex:1}.serviceTypeName{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--font-size-base)}.serviceTypeFrequency{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-top:2px}.serviceTypeActions{gap:var(--space-2);display:flex}.planHeader{margin-bottom:var(--space-6)}.planChurchName{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-bottom:var(--space-1)}.planTitle{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-3)}.planDateNav{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.planDateNavBtn{background:var(--color-border-light);color:var(--color-text-secondary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:none;align-items:center;display:flex}.planDateNavBtn:hover{background:var(--color-border);color:var(--color-text-primary)}.planDateLabel{background:var(--color-border-light);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.planStatusBadge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.03em;display:inline-flex}.planStatusBadge.draft{color:var(--color-text-tertiary);background:#9ca3af26}.planStatusBadge.published{color:var(--color-primary);background:#4ade8026}.planStatusBadge.archived{color:var(--color-muted-text);background:#9ca3af1a}.planTabs{border-bottom:1px solid var(--color-border-light);margin-bottom:var(--space-4);gap:0;display:flex}.planTab{padding:var(--space-3) var(--space-5);color:var(--color-text-tertiary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000}.planTab:hover{color:var(--color-text-primary)}.planTab.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.planItemList{flex-direction:column;display:flex}.planItemColumnHeaders{padding:var(--space-2) var(--space-4);color:var(--color-text-tertiary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;display:flex}.planItemColumnHeaders .colDrag{width:30px}.planItemColumnHeaders .colLength{width:60px}.planItemColumnHeaders .colTitle{flex:1}.planItemRow{padding:var(--space-3) var(--space-4);align-items:center;gap:var(--space-2);transition:background var(--transition-fast);cursor:pointer;border-bottom:1px solid #0000000a;display:flex}.planItemRow:hover{background:#00000005}.planItemRow.dragging{opacity:.5;background:#4ade800d}.planItemDragHandle{color:var(--color-text-tertiary);cursor:grab;padding:var(--space-1);flex-shrink:0;width:24px}.planItemDragHandle:active{cursor:grabbing}.planItemDuration{width:52px;color:var(--color-text-tertiary);font-size:var(--font-size-sm);flex-shrink:0}.planItemContent{flex:1;min-width:0}.planItemTitle{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-sm)}.planItemDescription{font-size:var(--font-size-xs);color:var(--color-text-tertiary);white-space:pre-line;margin-top:2px}.planItemHeader{border-radius:var(--radius-md);margin:var(--space-1) 0;background:#4ade8014;border-bottom:none}.planItemHeader .planItemTitle{font-weight:var(--font-weight-bold);color:var(--color-primary);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.02em}.keyBadge{min-width:28px;height:22px;padding:0 var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:#fff;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.planAddItemArea{padding:var(--space-4);text-align:center}.addItemDropdown{display:inline-block;position:relative}.addItemDropdownMenu{margin-top:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:50;background:#fff;min-width:180px;position:absolute;top:100%;left:50%;overflow:hidden;transform:translate(-50%)}.addItemDropdownItem{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);width:100%;color:var(--color-text-primary);font-size:var(--font-size-sm);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;border:none;display:flex}.addItemDropdownItem:hover{background:#0000000a}.songEditPanel{border-left:1px solid var(--color-border);width:420px;box-shadow:var(--shadow-2xl);z-index:40;background:#fff;transition:transform .3s;position:fixed;top:80px;bottom:0;right:0;overflow-y:auto;transform:translate(100%)}.songEditPanel.open{transform:translate(0)}.songEditPanelHeader{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.songEditPanelTitle{font-weight:var(--font-weight-semibold);font-size:var(--font-size-base);color:var(--color-text-primary)}.songEditPanelNav{align-items:center;gap:var(--space-2);display:flex}.songEditPanelBody{padding:var(--space-5)}.songEditPanelTabs{border-bottom:1px solid var(--color-border-light);margin-bottom:var(--space-4);justify-content:space-around;display:flex}.songEditPanelTab{align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-2);color:var(--color-text-tertiary);font-size:var(--font-size-xs);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;border-bottom:2px solid #0000;flex-direction:column;display:flex}.songEditPanelTab:hover{color:var(--color-text-primary)}.songEditPanelTab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.songEditPanelTopZone{padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-light);margin-bottom:var(--space-4)}.songEditPanelTabContent{padding-top:var(--space-2)}.songEditPanelLinkedSong{padding:var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:#00000005}.songEditPanelLinkedSongName{align-items:center;gap:var(--space-2);display:flex}.planEditPanelAddLeaderBtn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-tertiary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);background:0 0;width:100%;display:flex}.planEditPanelAddLeaderBtn:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary)}.planEditPanelAddLeaderBtn:disabled{cursor:not-allowed;opacity:.5}.planListGrid{gap:var(--space-4);flex-direction:column;display:flex}.planListSection{margin-bottom:var(--space-6)}.planListSectionTitle{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3)}.planCard{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);background:#fff;display:flex}.planCard:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.planCardDate{text-align:center;min-width:50px}.planCardDateDay{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);line-height:1}.planCardDateMonth{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase}.planCardInfo{flex:1}.planCardTitle{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.planCardMeta{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-top:2px}.scheduleAssignmentCard{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);margin-bottom:var(--space-3);transition:all var(--transition-fast);background:#fff;overflow:hidden}.scheduleAssignmentCard:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.scheduleAssignmentInfo{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);display:flex}.scheduleTeamColor{border-radius:var(--radius-full);flex-shrink:0;width:4px;height:40px}.scheduleAssignmentTitle{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-base)}.scheduleAssignmentMeta{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-top:2px}.scheduleAssignmentTime{align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--space-1);display:inline-flex}.scheduleAssignmentActions{gap:var(--space-2);padding:0 var(--space-5) var(--space-4);justify-content:flex-end;display:flex}.rehearseLayout{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);min-height:calc(100vh - 300px);display:flex;overflow:hidden}.rehearseSongList{border-right:1px solid var(--color-border-light);background:#00000003;flex-shrink:0;width:240px;overflow-y:auto}.rehearseSongListHeader{padding:var(--space-3);border-bottom:1px solid var(--color-border-light);font-size:var(--font-size-sm);color:var(--color-text-tertiary);align-items:center;gap:var(--space-2);display:flex}.rehearseSongItem{padding:var(--space-3);cursor:pointer;transition:background var(--transition-fast);font-size:var(--font-size-sm);border-left:3px solid #0000;justify-content:space-between;align-items:center;display:flex}.rehearseSongItem:hover{background:#00000008}.rehearseSongItem.active{border-left-color:var(--color-primary);background:#4ade801a}.rehearseSongItemTitle{color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.rehearseDetail{padding:var(--space-6);flex:1;overflow-y:auto}.rehearseDetailTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.rehearseDetailArtist{font-size:var(--font-size-sm);color:var(--color-text-tertiary);margin-bottom:var(--space-2)}.rehearseDetailCopyright{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-bottom:var(--space-2)}.rehearseDetailSequence{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.rehearseChordArea{border-radius:var(--radius-lg);padding:var(--space-4);background:#00000005}.rehearseLyrics{white-space:pre-wrap;font-family:monospace;font-size:var(--font-size-sm);color:var(--color-text-primary);line-height:1.8}.rehearseEmpty{min-height:200px;color:var(--color-text-tertiary);font-size:var(--font-size-sm);justify-content:center;align-items:center;display:flex}@media (max-width:768px){.servicePlanningLayoutContainer{grid-template-columns:1fr}.servicePlanningSidebar{display:none}.servicePlanningSidebar.mobileMenuOpen{z-index:100;background:#fff;max-height:100vh;padding-top:80px;display:block;position:fixed;inset:0}.servicePlanningContent{padding:var(--space-4)}.songEditPanel{width:100%}.rehearseLayout{flex-direction:column}.rehearseSongList{border-right:none;border-bottom:1px solid var(--color-border-light);width:100%;max-height:200px}}.chordChart{white-space:pre-wrap;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--color-text-primary);font-family:Courier New,monospace;line-height:1.8;font-size:var(--font-size-sm);background:#00000005;overflow-x:auto}.chordLine{position:relative}.chordHighlight{color:#d97706;font-weight:var(--font-weight-bold);font-size:var(--font-size-base)}.onboardingContainer{padding:var(--space-8)}.onboardingHeader{text-align:center;margin-bottom:var(--space-8)}.onboardingHeaderIcon{border-radius:var(--radius-xl);background:linear-gradient(135deg, var(--color-primary), #16a34a);width:56px;height:56px;margin:0 auto var(--space-4);justify-content:center;align-items:center;display:flex}.onboardingTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.onboardingSubtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);max-width:480px;margin:0 auto}.onboardingGrid{gap:var(--space-3);margin-bottom:var(--space-6);grid-template-columns:repeat(3,1fr);display:grid}.onboardingCard{padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast);text-align:left;font:inherit;color:inherit;background:#fff;justify-content:space-between;align-items:center;display:flex}.onboardingCard:hover{border-color:var(--color-border);box-shadow:var(--shadow-sm)}.onboardingCard.selected{border-color:var(--color-primary);background:#4ade800a}.onboardingCardContent{align-items:center;gap:var(--space-3);min-width:0;display:flex}.onboardingCardDot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.onboardingCardName{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.onboardingCardCheckbox{border-radius:var(--radius-sm);border:1.5px solid var(--color-border);width:20px;height:20px;transition:all var(--transition-fast);flex-shrink:0;justify-content:center;align-items:center;display:flex}.onboardingCardCheckbox.checked{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.onboardingCardRemove{border-radius:var(--radius-sm);cursor:pointer;width:20px;height:20px;color:var(--color-text-tertiary);transition:color var(--transition-fast);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.onboardingCardRemove:hover{color:var(--color-error)}.onboardingCustomSection{margin-bottom:var(--space-6)}.onboardingCustomForm{align-items:center;gap:var(--space-2);display:flex}.onboardingCustomForm .formInput{flex:1}.onboardingColorPicker{border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;background:0 0;width:36px;height:36px;padding:2px}.onboardingAddCustomBtn{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);color:var(--color-text-secondary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);background:0 0;display:inline-flex}.onboardingAddCustomBtn:hover{border-color:var(--color-primary);color:var(--color-primary)}.onboardingFooter{align-items:center;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border-light);flex-direction:column;display:flex}.onboardingSkipLink{font-size:var(--font-size-sm);color:var(--color-text-tertiary);transition:color var(--transition-fast);text-decoration:none}.onboardingSkipLink:hover{color:var(--color-text-secondary);text-decoration:underline}@media (max-width:768px){.onboardingGrid{grid-template-columns:repeat(2,1fr)}.onboardingCustomForm{flex-wrap:wrap}}@media (max-width:480px){.onboardingGrid{grid-template-columns:1fr}}.copyFromLastWeekBanner{border:1px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);text-align:center;margin-bottom:var(--space-6);background:linear-gradient(135deg,#4ade800d,#3b82f60d)}.copyFromLastWeekText{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-4)}.copyFromLastWeekActions{justify-content:center;gap:var(--space-3);display:flex}.planDetailLayout{gap:0;min-height:calc(100vh - 160px);display:flex;position:relative}.planDetailSidebarColumn{border-right:1px solid var(--color-border-light);scrollbar-width:thin;scrollbar-color:transparent transparent;background:#ffffffb3;flex-shrink:0;align-self:flex-start;width:240px;max-height:calc(100vh - 160px);position:sticky;top:0;overflow-y:auto}.planDetailSidebarColumn:hover{scrollbar-color:#00000026 transparent}.planDetailMainColumn{flex:1;min-width:0;padding:0}.planDetailSidebar{padding:var(--space-3) 0}.planDetailSidebarSection{padding:var(--space-3);border-bottom:1px solid var(--color-border-light)}.planDetailSidebarSection:last-child{border-bottom:none}.planDetailSidebarSectionHeader{margin-bottom:var(--space-2);justify-content:space-between;align-items:center;display:flex}.planDetailSidebarSectionTitle{align-items:center;gap:var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;display:flex}.planDetailSidebarSectionAction{padding:var(--space-1);cursor:pointer;color:var(--color-text-tertiary);border-radius:var(--radius-sm);transition:all var(--transition-fast);background:0 0;border:none;align-items:center;display:flex}.planDetailSidebarSectionAction:hover:not(:disabled){color:var(--color-text-primary);background:#0000000d}.planDetailSidebarSectionAction:disabled{opacity:.4;cursor:not-allowed}.planDetailSidebarEmpty{font-size:var(--font-size-xs);color:var(--color-text-tertiary);padding:var(--space-2) 0;font-style:italic}.planSidebarSummaryRow{gap:var(--space-1);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.planSidebarCountBadge{border-radius:var(--radius-full);font-size:10px;font-weight:var(--font-weight-semibold);align-items:center;gap:3px;padding:2px 6px;display:inline-flex}.planSidebarCountBadge.accepted{color:var(--color-success);background:#4ade801f}.planSidebarCountBadge.declined{color:var(--color-error);background:#f871711f}.planSidebarCountBadge.pending{color:var(--color-warning);background:#fbbf241f}.planSidebarCountBadge.needed{color:var(--color-error);background:#ef44441a}.planSidebarTeamList{flex-direction:column;gap:2px;display:flex}.planSidebarTeamGroup{border-radius:var(--radius-sm);overflow:hidden}.planSidebarTeamGroupHeader{padding:var(--space-1) var(--space-2);cursor:pointer;width:100%;font-size:var(--font-size-xs);transition:background var(--transition-fast);text-align:left;border-radius:var(--radius-sm);background:0 0;border:none;justify-content:space-between;align-items:center;display:flex}.planSidebarTeamGroupHeader:hover{background:#0000000a}.planSidebarTeamGroupName{align-items:center;gap:var(--space-2);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;display:flex;overflow:hidden}.planSidebarTeamGroupCounts{flex-shrink:0;align-items:center;gap:3px;display:flex}.planSidebarTeamMembers{padding:var(--space-1) var(--space-2) var(--space-2);gap:var(--space-1);flex-direction:column;display:flex}.planSidebarTeamMember{align-items:center;gap:var(--space-2);padding:2px 0;display:flex}.planSidebarShowAllTeams{width:100%;padding:var(--space-2);font-size:var(--font-size-xs);color:var(--color-primary);cursor:pointer;text-align:left;transition:opacity var(--transition-fast);margin-top:var(--space-1);background:0 0;border:none;display:block}.planSidebarShowAllTeams:hover{opacity:.8;text-decoration:underline}.planItemRow.selected{border-left:3px solid var(--color-primary);background:#4ade800f}@media (max-width:900px){.planDetailSidebarColumn{display:none}}@media (max-width:768px){.planDetailLayout{flex-direction:column}.planDetailSidebarColumn{display:none}}.plansAccordionList{gap:var(--space-5);flex-direction:column;display:flex}.plansAccordionSection{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:#fff;overflow:hidden}.plansAccordionHeader{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border-light);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background var(--transition-fast);background:#00000004;display:flex}.plansAccordionHeader:hover{background:#00000006}.plansAccordionChevron{color:var(--color-text-tertiary);transition:transform var(--transition-fast);flex-shrink:0}.plansAccordionChevron.open{transform:rotate(90deg)}.plansAccordionTitle{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);flex:1}.plansAccordionActions{align-items:center;gap:var(--space-2);display:flex}.plansFilterSelect{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;background:#fff;height:28px}.plansFilterSelect:focus{border-color:var(--color-primary);outline:none}.plansAccordionGear{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.plansAccordionGear:hover{color:var(--color-text-secondary);background:#0000000d}.plansTableHeader{padding:var(--space-2) var(--space-5);border-bottom:1px solid var(--color-border-light);background:#00000003;grid-template-columns:1fr 220px;display:grid}.plansTableHeaderCell{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em}.plansTableRow{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:background var(--transition-fast);grid-template-columns:1fr 220px;align-items:center;display:grid}.plansTableRow:last-of-type{border-bottom:none}.plansTableRow:hover{background:#4ade800a}.plansTableRowTitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.plansTableRowStatus{align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);margin-top:2px;display:inline-flex}.plansTableRowLastUpdated{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-align:right;line-height:1.6}.plansTableRowUpdatedBy{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.plansAccordionFooter{align-items:center;gap:var(--space-5);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border-light);background:#00000003;display:flex}.plansAddLink{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-primary);font-weight:var(--font-weight-medium);cursor:pointer;transition:opacity var(--transition-fast);background:0 0;border:none;padding:0;display:inline-flex}.plansAddLink:hover{opacity:.75;text-decoration:underline}.plansDeletedLink{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-tertiary);cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;padding:0;display:inline-flex}.plansDeletedLink:hover:not(:disabled){color:var(--color-text-secondary)}.plansDeletedLink:disabled{opacity:.5;cursor:not-allowed}.plansAccordionEmpty{padding:var(--space-6) var(--space-5);text-align:center;color:var(--color-text-tertiary);font-size:var(--font-size-sm)}.rehearseModeBar{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);justify-content:flex-end;display:flex}.rehearseModeButton{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:#fff;display:inline-flex}.rehearseModeButton:hover:not(:disabled){border-color:var(--color-border);color:var(--color-text-primary);background:#00000005}.rehearseModeButton.active{border-color:var(--color-primary);color:var(--color-primary);background:#4ade800f}.rehearseModeButton:disabled{opacity:.45;cursor:not-allowed}.rehearseDetailHeader{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-1);display:flex}.rehearseDetailHeaderLeft{flex:1;min-width:0}.rehearseDetailHeaderActions{gap:var(--space-1);flex-shrink:0;margin-top:2px;display:flex}.rehearseIconAction{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-tertiary);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;text-decoration:none;display:flex}.rehearseIconAction:hover{color:var(--color-text-secondary);background:#0000000f}.rehTransposeControl{align-items:center;gap:var(--space-2);margin-bottom:var(--space-4);display:inline-flex}.rehTransposeLabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.05em}.rehTransposeSelect{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);color:var(--color-text-primary);cursor:pointer;background:#fff;height:28px}.rehTransposeSelect:focus{border-color:var(--color-primary);outline:none}.rehearseMediaSection{margin-top:var(--space-5)}.rehearseMediaSectionLabel{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.07em;margin-bottom:var(--space-2)}.rehearseMediaCard{border:1px solid var(--color-border-light);border-radius:var(--radius-md);margin-bottom:var(--space-2);overflow:hidden}.rehearseMediaItem{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:var(--color-text-primary);transition:background var(--transition-fast);border-bottom:1px solid var(--color-border-light);text-decoration:none;display:flex}.rehearseMediaItem:last-child{border-bottom:none}.rehearseMediaItem:hover{background:#4ade800d}.rehearseMediaItemIcon{color:var(--color-text-tertiary);flex-shrink:0}.rehearseMediaItemTitle{font-size:var(--font-size-sm);color:var(--color-primary);font-weight:var(--font-weight-medium);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.musicStandOverlay{z-index:9999;color:#e5e5e5;background:#0a0a0a;flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.musicStandTopBar{padding:var(--space-4) var(--space-6);border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.musicStandTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:#fff}.musicStandMeta{font-size:var(--font-size-sm);color:#ffffff80;margin-top:2px}.musicStandTopRight{align-items:center;gap:var(--space-4);display:flex}.musicStandKeyBadge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);color:#fff}.musicStandBpm{font-size:var(--font-size-sm);color:#fff9}.musicStandExitButton{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:#ffffffb3;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:#ffffff14;border:1px solid #ffffff1f;display:inline-flex}.musicStandExitButton:hover{color:#fff;background:#ffffff26}.musicStandSequence{padding:var(--space-2) var(--space-6);font-size:var(--font-size-xs);color:#fff6;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #ffffff0f;flex-shrink:0;overflow:hidden}.musicStandChordArea{padding:var(--space-6);scrollbar-width:thin;scrollbar-color:#ffffff26 transparent;flex:1;overflow-y:auto}.musicStandChordArea .chordChart{color:#e5e5e5;background:0 0;border:none;border-radius:0;padding:0;font-size:18px;line-height:1.8}.musicStandChordArea .chordChartSection{color:#4ade80}.musicStandChordArea .chordHighlight{color:#fbbf24;font-size:18px}.musicStandTransposeBar{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);border-top:1px solid #ffffff0f;flex-shrink:0;display:flex}.musicStandTransposeLabel{font-size:var(--font-size-xs);color:#fff6;text-transform:uppercase;letter-spacing:.07em}.musicStandTransposeSelect{font-size:var(--font-size-sm);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);color:#e5e5e5;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;height:30px}.musicStandTransposeSelect:focus{border-color:#4ade8099;outline:none}.musicStandSongNav{gap:var(--space-2);padding:var(--space-3) var(--space-6);scrollbar-width:none;border-top:1px solid #ffffff0f;flex-shrink:0;display:flex;overflow-x:auto}.musicStandSongNav::-webkit-scrollbar{display:none}.musicStandSongPill{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);cursor:pointer;white-space:nowrap;color:#ffffff80;transition:all var(--transition-fast);background:#ffffff0d;border:1px solid #ffffff1f;display:inline-flex}.musicStandSongPill:hover{color:#fffc;background:#ffffff1a}.musicStandSongPill.active{color:#4ade80;background:#4ade8026;border-color:#4ade8066}.teamCardStatusCounts{align-items:center;gap:var(--space-3);font-size:var(--font-size-xs);display:flex}.teamCardStatusCount{align-items:center;gap:3px;display:flex}.teamCardStatusAccepted{color:var(--color-success)}.teamCardStatusPending{color:var(--color-warning)}.teamCardStatusDeclined{color:var(--color-error)}.teamCardNeededBadge{background:var(--color-error);color:#fff;border-radius:var(--radius-full);padding:1px var(--space-2);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);align-items:center;gap:3px;display:inline-flex}.notificationTimeline{align-items:flex-start;gap:0;display:flex;position:relative}.notificationTimelineStep{flex-direction:column;flex:1;align-items:center;display:flex;position:relative}.notificationTimelineDot{background:var(--color-border);border:2px solid var(--color-border);z-index:1;width:10px;height:10px;transition:background var(--transition-fast);border-radius:50%;flex-shrink:0}.notificationTimelineStep.active .notificationTimelineDot{background:var(--color-primary);border-color:var(--color-primary)}.notificationTimelineLine{background:var(--color-border-light);height:2px;position:absolute;top:5px;left:50%;right:-50%}.notificationTimelineStep.active+.notificationTimelineStep.active .notificationTimelineLine,.notificationTimelineStep.active .notificationTimelineLine{background:var(--color-primary)}.notificationTimelineContent{text-align:center;margin-top:var(--space-1)}.notificationTimelineLabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary);white-space:nowrap}.notificationTimelineStep.active .notificationTimelineLabel{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.notificationTimelineDate{color:var(--color-text-tertiary);white-space:nowrap;margin-top:2px;font-size:10px}.statusToggleGroup{border:1px solid var(--color-border);border-radius:var(--radius-md);display:flex;overflow:hidden}.statusToggleOption{justify-content:center;align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:all var(--transition-fast);border:none;border-right:1px solid var(--color-border-light);background:0 0;flex:1;display:flex}.statusToggleOption:last-child{border-right:none}.statusToggleOption:hover{background:#00000008}.statusToggleOption.active.statusToggleAccepted{color:var(--color-success);font-weight:var(--font-weight-medium);background:#22c55e1a}.statusToggleOption.active.statusTogglePending{color:var(--color-warning);font-weight:var(--font-weight-medium);background:#f59e0b1a}.statusToggleOption.active.statusToggleDeclined{color:var(--color-error);font-weight:var(--font-weight-medium);background:#ef44441a}.editScheduledPersonModal{width:100%;max-width:560px}.editPersonHeader{align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-light);margin-bottom:var(--space-4);display:flex}.editPersonFields{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.teamsStatsTable{border-radius:var(--radius-lg);border:1px solid var(--color-border-light);overflow:hidden}.teamsStatsRow{transition:background var(--transition-fast)}.teamsStatsRow:hover{background:#00000005}.teamsStatsExpandedRow{border-top:1px solid var(--color-border-light)}.schedulePageLayout{gap:var(--space-6);grid-template-columns:240px 1fr;align-items:start;display:grid}.scheduleLeftPanel{position:sticky;top:100px}.scheduleRightPanel{min-width:0}.scheduleActionBar{gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.scheduleMiniCalendar{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-3);background:#fff}.scheduleMiniCalHeader{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.scheduleMiniCalGrid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.scheduleMiniCalDayLabel{text-align:center;color:var(--color-text-tertiary);padding:var(--space-1) 0;font-size:10px;font-weight:var(--font-weight-semibold)}.scheduleMiniCalDay{aspect-ratio:1;cursor:pointer;border-radius:var(--radius-sm);color:var(--color-text-primary);transition:background var(--transition-fast);background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;padding:0;font-size:11px;display:flex;position:relative}.scheduleMiniCalDay:hover{background:#0000000a}.scheduleMiniCalDay.today{font-weight:var(--font-weight-bold);color:var(--color-primary)}.scheduleMiniCalDay.selected{background:var(--color-primary);color:#fff;font-weight:var(--font-weight-semibold)}.scheduleMiniCalDay.blocked{color:var(--color-error);opacity:.7;text-decoration:line-through}.scheduleMiniCalDot{background:var(--color-primary);border-radius:50%;width:4px;height:4px;position:absolute;bottom:2px}.scheduleMiniCalDay.selected .scheduleMiniCalDot{background:#fff}.blockoutItem{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);border:1px solid var(--color-border-light);margin-bottom:var(--space-1);background:#ef44440a;display:flex}@media (max-width:768px){.schedulePageLayout,.editPersonFields{grid-template-columns:1fr}}.reportsFilters{gap:var(--space-4);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:#fff9;flex-wrap:wrap;align-items:center;display:flex}.reportsSummary{gap:var(--space-6);padding:var(--space-5);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);margin-bottom:var(--space-6);background:#fffc;flex-wrap:wrap;align-items:center;display:flex}.reportsPieSection{align-items:center;gap:var(--space-4);display:flex}.reportsPieLegend{gap:var(--space-2);flex-direction:column;display:flex}.reportsPieLegendItem{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.reportsStatCards{gap:var(--space-6);flex-wrap:wrap;display:flex}.reportsStat{text-align:center}.reportsStatValue{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1}.reportsStatLabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--space-1);text-transform:uppercase;letter-spacing:.05em}.schedulingMatrix{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);overflow:hidden}.schedulingMatrixScroll{overflow-x:auto}.schedulingMatrixTable{border-collapse:collapse;width:100%;min-width:600px}.schedulingMatrixTable thead th{border-bottom:1px solid var(--color-border-light);padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-align:center;white-space:nowrap;background:#00000005}.schedulingMatrixNameCol{background:var(--color-bg-primary,white);z-index:1;min-width:180px;position:sticky;left:0;text-align:left!important}.schedulingMatrixCountCol{width:36px}.schedulingMatrixDateCol{width:52px;font-size:var(--font-size-xs)!important}.schedulingMatrixRow{border-bottom:1px solid var(--color-border-light);transition:background var(--transition-fast)}.schedulingMatrixRow:last-child{border-bottom:none}.schedulingMatrixRow:hover{background:#00000005}.schedulingMatrixRow td{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm)}.schedulingMatrixAvatar{background:linear-gradient(135deg, var(--color-primary), #16a34a);color:#fff;width:28px;height:28px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.schedulingMatrixAvatar img{object-fit:cover;width:100%;height:100%}.schedulingMatrixCell{text-align:center;font-size:var(--font-size-sm)}.matrixStatusAccepted{color:var(--color-success);font-weight:var(--font-weight-bold)}.matrixStatusPending{color:var(--color-warning);font-weight:var(--font-weight-bold)}.matrixStatusDeclined{color:var(--color-error);font-weight:var(--font-weight-bold)}@media print{.servicePlanningSidebar,.reportsFilters button,.tabList{display:none!important}.schedulingMatrixTable{font-size:10px}.schedulingMatrixNameCol{position:static}}.templatesLayout{gap:var(--space-6);grid-template-columns:280px 1fr;min-height:400px;display:grid}@media (max-width:768px){.templatesLayout{grid-template-columns:1fr}}.templatesSidebar{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-4);background:#fff9;align-self:start}.templatesDetail{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:var(--space-4);background:#fff9;min-height:400px}.templateListHeader{margin-bottom:var(--space-2);margin-top:var(--space-3);justify-content:space-between;align-items:center;display:flex}.templateCreateForm{margin-bottom:var(--space-3);padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:#4ade800d}.templateList{gap:var(--space-1);flex-direction:column;display:flex}.templateListItem{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);border:1px solid #0000;justify-content:space-between;align-items:center;display:flex}.templateListItem:hover{border-color:var(--color-border-light);background:#4ade800d}.templateListItem.active{border-color:var(--color-primary);background:#4ade801a}.templateListItemInfo{flex:1;min-width:0}.templateListItemName{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.templateListItemCount{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.templateListItemActions{align-items:center;gap:var(--space-1);opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;display:flex}.templateListItem:hover .templateListItemActions,.templateListItem.active .templateListItemActions{opacity:1}.personPickerTrigger{cursor:pointer;width:24px;height:24px;transition:background var(--transition-fast);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.personPickerTrigger:hover{background:#0000000f}.personPickerTrigger.assigned{box-shadow:0 0 0 2px #4ade8066}.personPickerPopover{border:1px solid var(--color-border);border-radius:var(--radius-lg);width:220px;box-shadow:var(--shadow-lg);z-index:100;background:#fff;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden}.personPickerCurrentAssignee{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-light);background:#4ade800f;display:flex}.personPickerCurrentName{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.personPickerSearch{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border-light);display:flex}.personPickerSearchInput{font-size:var(--font-size-xs);color:var(--color-text-primary);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0}.personPickerSearchInput::placeholder{color:var(--color-text-tertiary)}.personPickerList{max-height:180px;overflow-y:auto}.personPickerItem{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;text-align:left;transition:background var(--transition-fast);background:0 0;border:none;display:flex}.personPickerItem:hover{background:#f0fdf4}.personPickerItem.active{background:#4ade801a}.personPickerItemName{font-size:var(--font-size-xs);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.personPickerEmpty{padding:var(--space-3);text-align:center;font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.planEditPanelLeaderAssigned{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;text-align:left;width:100%;transition:border-color var(--transition-fast);background:#4ade800f;border:1px solid #4ade8033;display:flex}.planEditPanelLeaderAssigned:hover{border-color:#4ade8066}.planGapAlert{padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-error);letter-spacing:.01em;margin-left:var(--space-2);background:#ef44441f;align-items:center;display:inline-flex}
.schedulePageContainer{background:#fff;border:1px solid #e5e7eb;border-radius:16px;max-width:960px;margin:40px auto;box-shadow:0 1px 3px #0000000a}.counselorCard{align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);cursor:pointer;transition:box-shadow var(--transition-fast), border-color var(--transition-fast);background:#fff;display:flex}.counselorCard:hover{border-color:var(--scheduler-primary,var(--color-primary));box-shadow:var(--shadow-sm)}.counselorPhoto{border-radius:var(--radius-full);object-fit:cover;flex-shrink:0;width:56px;height:56px}.counselorInfo{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.counselorName{font-size:var(--font-size-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.counselorTitle{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.appointmentTypeRow{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast), background var(--transition-fast);display:flex}.appointmentTypeRow:hover{border-color:var(--scheduler-primary,var(--color-primary));background:#2d5a3d08}.appointmentTypeDot{border-radius:var(--radius-full);flex-shrink:0;width:10px;height:10px}.appointmentTypeName{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);flex:1;min-width:0}.appointmentTypeDuration{font-size:var(--font-size-xs);color:var(--color-text-tertiary);flex-shrink:0}.bookingFlow{grid-template-columns:300px 1fr;min-height:420px;display:grid}.bookingFlowSidebar{gap:var(--space-4);border-right:1px solid #f3f4f6;flex-direction:column;padding:40px;display:flex}.bookingFlowMain{gap:var(--space-4);flex-direction:column;padding:40px;display:flex}.bookingFlowWithSlots{grid-template-columns:260px 1fr 200px}.schedulePageContainer .btn-primary{background:var(--scheduler-primary,var(--color-primary));box-shadow:none}.schedulePageContainer .btn-primary:hover{background:var(--scheduler-primary,var(--color-primary));box-shadow:none;filter:brightness(1.1)}.schedulePageContainer .btn-primary:active{background:var(--scheduler-primary,var(--color-primary));filter:brightness(.95)}.schedulePageContainer .btn-sm{background:var(--scheduler-primary,var(--color-primary));color:#fff}.scheduleCalendar{grid-template-columns:repeat(7,46px);justify-content:center;justify-items:center;row-gap:6px;display:grid}.scheduleDayHeader{color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;text-align:center;padding-bottom:8px;font-size:11px;font-weight:700}.scheduleDay{color:#d1d5db;cursor:default;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;font-size:14px;display:inline-flex;position:relative}.scheduleDayAvailable{color:var(--scheduler-primary,var(--color-primary));background:var(--scheduler-primary-light,#15803d1a);cursor:pointer;font-weight:700}.scheduleDayAvailable:hover{background:var(--scheduler-primary-hover,#15803d2e)}.scheduleDaySelected{background:var(--scheduler-primary,var(--color-primary));color:#fff;font-weight:700}.scheduleDaySelected:hover{background:var(--scheduler-primary,var(--color-primary))}.scheduleDayToday:after{content:"";background:var(--scheduler-primary,var(--color-primary));border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.scheduleDaySelected.scheduleDayToday:after{background:#fff}.timeSlotList{flex-direction:column;gap:4px;max-height:400px;display:flex;overflow-y:auto}.timeSlot{padding:8px var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-align:center;cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:#fff}.timeSlot:hover{border-color:var(--scheduler-primary,var(--color-primary));color:var(--scheduler-primary,var(--color-primary));background:var(--scheduler-primary-hover,#2d5a3d0a)}.timeSlotSelected{background:var(--scheduler-primary,var(--color-primary));border-color:var(--scheduler-primary,var(--color-primary));color:#fff}.timeSlotSelected:hover{background:var(--scheduler-primary,var(--color-primary))}.timeSlotConfirm{margin-top:var(--space-2)}.bookingConfirmation{align-items:center;gap:var(--space-4);padding:var(--space-8) var(--space-6);text-align:center;flex-direction:column;display:flex}.bookingConfirmationIcon{border-radius:var(--radius-full);width:64px;height:64px;color:var(--color-success);background:#2d5a3d1a;justify-content:center;align-items:center;display:flex}.bookingConfirmationCard{width:100%;max-width:400px;padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-md);text-align:left;gap:var(--space-2);background:#fff;flex-direction:column;display:flex}.appointmentRow{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);transition:background var(--transition-fast);display:flex}.appointmentRow:hover{background:#00000005}.confidentialityIcon{width:20px;height:20px;color:var(--color-text-tertiary);flex-shrink:0}.confidentialityIcon.private{color:var(--color-warning)}.confidentialityIcon.confidential{color:var(--color-error)}.loadBar{background:var(--color-border-light);border-radius:var(--radius-full);width:100%;height:8px;overflow:hidden}.loadBarFill{border-radius:var(--radius-full);height:100%;transition:width var(--transition-base)}.loadBarFill.low{background:var(--color-success)}.loadBarFill.medium{background:var(--color-warning)}.loadBarFill.high{background:var(--color-error)}.loadBarLabel{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-top:var(--space-1)}.seriesProgress{align-items:center;gap:var(--space-2);display:flex}.seriesSessionDot{border-radius:var(--radius-full);border:2px solid var(--color-border);background:#fff;flex-shrink:0;width:12px;height:12px}.seriesSessionDot.completed{background:var(--scheduler-primary,var(--color-primary));border-color:var(--scheduler-primary,var(--color-primary))}.seriesSessionDot.upcoming{border-color:var(--color-border-light);background:var(--color-border-light)}.memberContextPanel{padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);gap:var(--space-4);background:#fff;flex-direction:column;display:flex}.memberContextSection{gap:var(--space-2);flex-direction:column;display:flex}.memberContextSection:not(:last-child){padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border-light)}.embedWrapper{max-width:100%;padding:var(--space-4);box-shadow:none;background:0 0;border:none;margin:0}.availabilityWeekRow{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-light);display:flex}.availabilityWeekRow:last-child{border-bottom:none}.availabilityDayCircle{border-radius:var(--radius-full);width:32px;height:32px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);background:var(--color-border-light);flex-shrink:0;justify-content:center;align-items:center;display:flex}.availabilityDayCircle.active{color:#fff;background:var(--scheduler-primary,var(--color-primary))}.availabilityTimeInputs{align-items:center;gap:var(--space-2);flex:1;display:flex}.availabilityTimeInputs input[type=time]{width:130px}.availabilityUnavailableLabel{font-size:var(--font-size-sm);color:var(--color-text-tertiary);flex:1}.availabilityOverrideRow{align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border-light);font-size:var(--font-size-sm);display:flex}.availabilityOverrideRow:last-child{border-bottom:none}.availabilityOverrideDate{font-weight:var(--font-weight-medium);color:var(--color-text-primary);min-width:100px}.availabilityOverrideHours{color:var(--color-text-secondary);flex:1}.availabilityOverrideReason{color:var(--color-text-tertiary);font-style:italic}.appointmentTypeEditorSection{border-bottom:1px solid var(--color-border-light);padding-bottom:var(--space-4);margin-bottom:var(--space-4)}.appointmentTypeEditorSection:last-child{border-bottom:none;margin-bottom:0}.appointmentTypeEditorSectionHeader{cursor:pointer;padding:var(--space-2) 0;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;display:flex}.appointmentTypeEditorSectionTitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.appointmentTypeCard{align-items:center;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);background:#fff;display:flex}.appointmentTypeCard:hover{border-color:var(--scheduler-primary,var(--color-primary));box-shadow:var(--shadow-sm)}.appointmentTypeCardDot{border-radius:var(--radius-full);flex-shrink:0;width:12px;height:12px}.appointmentTypeCardInfo{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.appointmentTypeCardName{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.appointmentTypeCardMeta{font-size:var(--font-size-xs);color:var(--color-text-tertiary);align-items:center;gap:var(--space-2);display:flex}.appointmentTypeCardActions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}@media (max-width:768px){.bookingFlow{grid-template-columns:1fr}.bookingFlowSidebar{border-right:none;border-bottom:1px solid var(--color-border-light);padding-right:0;padding-bottom:var(--space-4)}.bookingFlowWithSlots{grid-template-columns:1fr}.schedulePageContainer{padding:var(--space-4)}}
.orgChartWrapper{padding:var(--space-4);overflow:hidden}.orgFlowContainer{border-radius:var(--radius-md);width:100%;height:640px;position:relative}.orgFlowContainer .react-flow__node{box-shadow:none;font-family:inherit;font-size:inherit;color:inherit;background:0 0;border:none;border-radius:0;padding:0}.orgRfHandle{opacity:0!important;pointer-events:none!important;background:0 0!important;border:none!important;width:1px!important;min-width:0!important;height:1px!important;min-height:0!important}.orgNodeSenior{background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);color:var(--color-text-light);box-shadow:var(--shadow-lg);border-radius:var(--radius-lg);min-width:200px;padding:var(--space-6) var(--space-5) var(--space-4);text-align:center;position:relative}.orgNodePastor{background:var(--color-bg-light);border:2px solid var(--color-primary);box-shadow:var(--shadow-sm);border-radius:var(--radius-lg);min-width:160px;padding:var(--space-5) var(--space-4) var(--space-3);text-align:center;position:relative}.orgNodeTitle{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:var(--font-weight-semibold);opacity:.8;margin-bottom:var(--space-1)}.orgNodeSenior .orgNodeTitle{color:#ffffffd9}.orgNodePastor .orgNodeTitle{color:var(--color-text-tertiary)}.orgNodeName{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);line-height:var(--line-height-tight)}.orgNodePastor .orgNodeName{color:var(--color-text-primary)}.orgAvatar{border-radius:var(--radius-full);background:var(--color-primary);border:3px solid var(--color-bg-light);width:40px;height:40px;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-text-light);z-index:3;justify-content:center;align-items:center;display:flex;position:absolute;top:-20px;left:50%;overflow:hidden;transform:translate(-50%)}.orgAvatar img{object-fit:cover;border-radius:var(--radius-full);width:100%;height:100%}.orgNodeSenior .orgAvatar{width:48px;height:48px;font-size:var(--font-size-sm);border-color:var(--color-primary-dark);top:-24px}.orgMinistryLabel{flex-direction:column;align-items:center;display:inline-flex}.orgNodeMinistry{background:var(--color-bg-light);border-radius:var(--radius-lg);padding:var(--space-2) var(--space-3);cursor:grab;transition:box-shadow var(--transition-fast), transform var(--transition-fast);text-align:center;-webkit-user-select:none;user-select:none;border:1px solid #22c55e40;min-width:110px}.orgNodeMinistry:hover{box-shadow:var(--shadow-md)}.orgNodeMinistry.dragging{opacity:.5}.orgMinistryName{font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);color:var(--color-primary);line-height:var(--line-height-tight)}.orgMinistryCount{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:2px}.orgFlowContainer .orgNodeSenior,.orgFlowContainer .orgNodePastor{transition:outline var(--transition-fast), outline-offset var(--transition-fast);outline-offset:2px;outline:2px dashed #0000}.orgFlowContainer.isDraggingMinistry .orgNodeSenior,.orgFlowContainer.isDraggingMinistry .orgNodePastor{outline:2px dashed var(--color-success);outline-offset:6px}.orgMinistryExpanded{border:1px solid var(--color-border);border-radius:var(--radius-lg);max-width:400px;box-shadow:var(--shadow-md);margin-top:var(--space-2);text-align:left;background:var(--color-bg-light);overflow:hidden}.orgMinistryExpandedHeader{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);background:#22c55e0f;justify-content:space-between;align-items:center;display:flex}.orgMinistryExpandedHeader h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.orgMinistryExpandedBody{padding:var(--space-3) var(--space-4)}.orgUnassignedSection{border:2px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);margin:var(--space-4) auto 0;text-align:center;width:100%;max-width:600px}.orgUnassignedSection h3{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);margin:0 0 var(--space-2) 0}.orgMinistryRow{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}@media (max-width:768px){.orgFlowContainer{height:480px}.orgNodeSenior,.orgNodePastor{min-width:140px}}
.broadcastPreviewBox{background:var(--color-border-light);border-radius:var(--radius-sm);padding:var(--space-3);margin-top:var(--space-2)}.broadcastPreviewLabel{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.03em;margin-bottom:var(--space-1)}.broadcastPreviewText{font-size:var(--font-size-sm);color:var(--color-text-primary);white-space:pre-wrap;word-break:break-word;margin:0}.broadcastPreviewUnresolved{font-size:var(--font-size-xs);color:var(--color-error);margin:var(--space-2) 0 0}.broadcastVarLegend{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.broadcastVarChip{font-size:var(--font-size-xs);background:var(--color-border-light);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);color:var(--color-text-secondary)}.broadcastServiceTypeList{gap:var(--space-2) var(--space-4);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.broadcastServiceTypeOption{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer;white-space:nowrap;display:flex}.broadcastConnectionList{gap:var(--space-3);flex-direction:column;display:flex}.broadcastConnectionRow{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-wrap:wrap;display:flex}.broadcastConnectionInfo{align-items:center;gap:var(--space-2);min-width:0;display:flex}.broadcastBanner{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);display:flex}.broadcastBannerBadge{align-items:center;gap:var(--space-2);display:inline-flex}.broadcastBannerClose{cursor:pointer;color:var(--color-text-tertiary);padding:var(--space-1);background:0 0;border:none;align-items:center;display:flex}.broadcastStreamKeyActions{margin-top:var(--space-3)}.broadcastObsInstructions{margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border-light)}.broadcastObsInstructionsTitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0 0 var(--space-2)}.broadcastObsInstructionsList{gap:var(--space-1) var(--space-3);grid-template-columns:auto 1fr;margin:0;display:grid}.broadcastObsInstructionsList dt{font-size:var(--font-size-xs);color:var(--color-text-tertiary);white-space:nowrap}.broadcastObsInstructionsList dd{font-size:var(--font-size-sm);color:var(--color-text-primary);margin:0}.broadcastComingSoon{color:var(--color-text-tertiary);font-style:italic}.broadcastStreamKeyValueRow{gap:var(--space-2);align-items:center;display:flex}.broadcastStreamKeyValue{padding:var(--space-3);background:var(--color-border-light);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-xs);word-break:break-all;flex:1}.broadcastLiveError{font-size:var(--font-size-sm);color:var(--color-error);margin:var(--space-2) 0 0}.broadcastLiveWarning{font-size:var(--font-size-sm);color:var(--color-warning);margin:var(--space-2) 0 0}.broadcastLiveDestinationList{gap:var(--space-2);flex-direction:column;display:flex}.broadcastLiveDestinationRow{gap:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;display:flex}.broadcastLiveDestinationHeader{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.broadcastLiveDestinationName{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);min-width:90px}.broadcastLiveSparkline{padding:var(--space-2) 0}.broadcastLiveSparklineLabels{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--space-1);justify-content:space-between;display:flex}.broadcastLiveSparklineCurrent{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.broadcastPageOptionList{gap:var(--space-2);flex-direction:column;display:flex}.broadcastPageOption{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--font-size-sm);display:flex}
.archiveGrid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.archiveCard{gap:var(--space-2);cursor:pointer;text-align:left;font:inherit;color:inherit;background:0 0;border:none;flex-direction:column;padding:0;display:flex}.archiveThumbnail{aspect-ratio:16/9;background:var(--color-border-light);border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-tertiary);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.archiveThumbnail img{object-fit:cover;width:100%;height:100%}.archiveThumbnailDuration{right:var(--space-2);bottom:var(--space-2);color:#fff;font-size:var(--font-size-xs);padding:2px var(--space-2);border-radius:var(--radius-sm);background:#000000bf;position:absolute}.archiveCardBody{flex-direction:column;gap:2px;display:flex}.archiveCardTitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.archiveCardMeta{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.archivePlayer{gap:var(--space-4);flex-direction:column;display:flex}.archivePlayerVideoWrap{aspect-ratio:16/9;border-radius:var(--radius-md);background:#000;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.archivePlayerVideo{width:100%;height:100%}.archivePlayerLoading{color:#fff;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.archivePlayerError{align-items:center;gap:var(--space-2);color:var(--color-error);flex-direction:column;display:flex}.archivePlayerTitleRow{justify-content:space-between;align-items:baseline;gap:var(--space-3);flex-wrap:wrap;display:flex}.archivePlayerTitle{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.archivePlayerDuration{font-size:var(--font-size-sm);color:var(--color-text-tertiary);white-space:nowrap}.archivePlayerFallbackNotice{font-size:var(--font-size-xs);color:var(--color-warning);margin:var(--space-2) 0 0}.archiveQualityPicker{align-items:center;gap:var(--space-2);margin-top:var(--space-3);flex-wrap:wrap;display:flex}.archiveQualityLabel{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.archiveQualityButton{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-full);color:var(--color-text-secondary);cursor:pointer;background:0 0}.archiveQualityButton.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}
.devotionalHub .container{max-width:760px;padding-top:var(--space-8);padding-bottom:var(--space-16)}.devotionalHubHeader{margin-bottom:var(--space-6)}.devotionalHubHeader h1{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-2)}.devotionalHubHeader p{color:var(--color-text-secondary)}.devotionalHubToday{margin-bottom:var(--space-8)}.devotionalHubToday h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);margin:var(--space-2) 0}.devotionalHubToday h2 a{color:inherit;text-decoration:none}.devotionalHubToday p{margin-bottom:var(--space-4)}.devotionalHubEyebrow{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary);text-transform:uppercase;letter-spacing:.04em}.devotionalHubVerse{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.devotionalHubArchiveTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3)}.devotionalHubList{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.devotionalHubItem{gap:var(--space-1) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);color:inherit;transition:var(--transition-fast);grid-template-columns:1fr auto;text-decoration:none;display:grid}.devotionalHubItem:hover .devotionalHubItemTitle{color:var(--color-primary)}.devotionalHubItemDate{font-size:var(--font-size-sm);color:var(--color-text-secondary);grid-column:1/-1}.devotionalHubItemTitle{font-weight:var(--font-weight-semibold)}@media (max-width:640px){.devotionalHubItem{grid-template-columns:1fr}}
.captionPage{min-height:100vh;background:var(--color-bg-muted);flex-direction:column;min-height:100dvh;display:flex}.captionHeader{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);display:flex}.captionHeaderChurchName{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.captionLiveBadge{align-items:center;gap:var(--space-2);letter-spacing:.05em;text-transform:uppercase;flex-shrink:0;display:inline-flex}.captionLiveBadge:before{content:"";border-radius:var(--radius-full);background:var(--color-success);width:8px;height:8px;animation:1.5s ease-in-out infinite pulse}.captionPanel{background:var(--color-bg-light);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-lg);flex-direction:column;flex:1;display:flex;overflow:hidden}.captionLanguagePicker{padding:var(--space-8) var(--space-5);margin:auto 0}.captionLanguagePickerTitle{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-align:center;margin:0 0 var(--space-2)}.captionLanguagePickerDescription{font-size:var(--font-size-base);color:var(--color-text-secondary);text-align:center;margin:0 0 var(--space-6)}.captionLanguagePickerGrid{gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));max-width:480px;margin:0 auto;display:grid}.captionLanguageOption{align-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-3);background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--transition-fast), background-color var(--transition-fast);flex-direction:column;display:flex}:is(.captionLanguageOption:hover,.captionLanguageOption:focus-visible){border-color:var(--color-primary);background:var(--color-bg-muted)}.captionLanguageFlag{font-size:var(--font-size-3xl);line-height:1}.captionLanguageName{text-align:center}.captionToolbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);flex-wrap:wrap;display:flex}.captionChangeLanguageButton{align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);padding:var(--space-1) var(--space-2);background:0 0;border:none;display:inline-flex}.captionChangeLanguageButton:hover{color:var(--color-primary)}.captionReconnectingBanner{text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-warning);background:var(--color-bg-muted);padding:var(--space-2)}.captionScrollArea{-webkit-overflow-scrolling:touch;min-height:0;padding:var(--space-5);flex:1;overflow-y:auto}.captionTranscript{font-size:var(--font-size-2xl);line-height:var(--line-height-relaxed);color:var(--color-text-primary);margin:0;max-width:640px;margin-inline:auto}.captionFinalSegment{color:var(--color-text-primary)}.captionInterimSegment{color:var(--color-text-secondary);font-style:italic}.captionWaitingText{text-align:center;color:var(--color-text-tertiary);font-size:var(--font-size-lg);margin:var(--space-8) 0}.captionJumpToLive{align-items:center;gap:var(--space-2);margin:0 auto var(--space-4);padding:var(--space-2) var(--space-4);background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;box-shadow:var(--shadow-md);border:none;display:flex}
.sermonArchivePage,.sermonDetailPage{min-height:100vh;background:var(--color-bg-muted);min-height:100dvh;padding:var(--space-5) var(--space-4) var(--space-10)}.sermonArchiveHeader{justify-content:space-between;align-items:center;gap:var(--space-3);max-width:960px;margin:0 auto var(--space-6);flex-wrap:wrap;display:flex}.sermonArchiveChurchIdentity{align-items:center;gap:var(--space-2);min-width:0;display:flex}.sermonArchiveChurchLogo{border-radius:var(--radius-full);object-fit:cover;width:32px;height:32px}.sermonArchiveChurchLogoFallback{border-radius:var(--radius-full);background:var(--color-border-light);width:32px;height:32px;color:var(--color-text-tertiary);flex-shrink:0;justify-content:center;align-items:center;display:flex}.sermonArchiveChurchName{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sermonArchiveTitle{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.sermonDetailBackLink{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-secondary);text-decoration:none;display:inline-flex}.sermonDetailBackLink:hover{color:var(--color-primary)}.sermonArchiveFilters{gap:var(--space-3);max-width:960px;margin:0 auto var(--space-6);flex-wrap:wrap;display:flex}.sermonArchiveFilterSelect{width:auto;min-width:160px}.sermonArchiveClearFilters{font-size:var(--font-size-sm);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-3);cursor:pointer;background:0 0}.sermonArchiveClearFilters:hover{color:var(--color-primary);border-color:var(--color-primary)}.sermonGrid{gap:var(--space-5);max-width:960px;margin:0 auto var(--space-6);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.sermonCard{gap:var(--space-2);background:var(--color-bg-light);border-radius:var(--radius-md);padding:var(--space-3);color:inherit;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-fast);flex-direction:column;text-decoration:none;display:flex}.sermonCard:hover{box-shadow:var(--shadow-md)}.sermonCardThumbnail{aspect-ratio:16/9;background:var(--color-border-light);border-radius:var(--radius-sm);width:100%;color:var(--color-text-tertiary);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.sermonCardThumbnail img{object-fit:cover;width:100%;height:100%}.sermonCardDuration{inset-inline-end:var(--space-2);bottom:var(--space-2);color:#fff;font-size:var(--font-size-xs);padding:2px var(--space-2);border-radius:var(--radius-sm);background:#000000bf;position:absolute}.sermonCardBody{flex-direction:column;gap:2px;display:flex}.sermonCardTitle{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sermonCardMeta,.sermonCardSeries{font-size:var(--font-size-xs);color:var(--color-text-tertiary);flex-wrap:wrap;align-items:center;display:flex}.sermonCardMetaIcon{vertical-align:-2px;margin-inline-start:2px;display:inline}.sermonCardTags{gap:var(--space-1);margin-top:var(--space-1);flex-wrap:wrap;display:flex}.sermonTagChip{font-size:var(--font-size-xs);background:var(--color-border-light);color:var(--color-text-secondary);border-radius:var(--radius-full);padding:2px var(--space-2)}.sermonDetailCard{background:var(--color-bg-light);border-radius:var(--radius-md);max-width:720px;padding:var(--space-5);box-shadow:var(--shadow-sm);gap:var(--space-3);flex-direction:column;margin:0 auto;display:flex}.sermonDetailTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.sermonDetailMetaRow{gap:var(--space-4);flex-wrap:wrap;display:flex}.sermonDetailMetaItem{align-items:center;gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.sermonDetailScripture{flex-direction:column;gap:2px;display:flex}.sermonDetailScriptureLabel{align-items:center;gap:var(--space-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.03em;display:flex}.sermonDetailScriptureList{font-size:var(--font-size-sm);color:var(--color-text-primary)}.sermonDetailTags{margin-top:0}.sermonDetailDescription{font-size:var(--font-size-sm);color:var(--color-text-secondary);white-space:pre-wrap;margin:0;line-height:1.6}.sermonPlayerVideoWrap{aspect-ratio:16/9;border-radius:var(--radius-md);background:#000;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.sermonPlayerVideo{width:100%;height:100%}.sermonPlayerGate{justify-content:center;align-items:center;gap:var(--space-3);aspect-ratio:16/9;background:var(--color-border-light);border-radius:var(--radius-md);width:100%;color:var(--color-text-secondary);text-align:center;padding:var(--space-5);flex-direction:column;display:flex}.sermonPlayerGate p{font-size:var(--font-size-sm);max-width:40ch;margin:0}
.modalOverlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:var(--z-modal);padding:var(--space-4);font-family:var(--font-sans);background-color:#00000080;justify-content:center;align-items:center;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}.modalTitleWithIcon{font-size:var(--font-size-lg);color:var(--color-primary-dark);align-items:center;gap:.5rem;margin:0;font-weight:600;display:flex}.modalTitleWithIcon svg{flex-shrink:0}.modalBody,.modalContent{padding:var(--space-6);flex:1;overflow-y:auto}.modalFooter,.modalActions{padding:var(--space-6);border-top:1px solid var(--color-border);justify-content:flex-end;gap:var(--space-3);display:flex}.modal.modalSimple{padding:var(--space-6);max-width:420px}.modal.modalSimple .modalTitle{margin-bottom:var(--space-3);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.modal.modalSimple .modalText{margin-bottom:var(--space-6);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.modal.modalSimple .modalActions{margin-top:var(--space-2);border-top:none;padding:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modalContainer,.modal{border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);background-color:#fff;flex-direction:column;width:100%;max-width:600px;max-height:90vh;animation:.3s ease-out slideUp;display:flex;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modalContainerLarge{max-width:800px}.modalHeader{padding:var(--space-6);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.modalTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.modalCloseButton{border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast);background-color:#0000;border:none;justify-content:center;align-items:center;display:flex}.modalCloseButton:hover{background-color:var(--color-bg-muted);color:var(--color-text-primary)}.modalContent.extraPadding{padding-right:var(--space-8)}.modalText{font-size:var(--font-size-base);color:var(--color-text-primary);white-space:pre-wrap;margin-bottom:var(--space-6);line-height:var(--line-height-relaxed)}.confirmationModal{max-width:400px;padding:var(--space-6)}.confirmationModalContent{text-align:center;margin-bottom:var(--space-6)}.confirmationModalIcon{margin-bottom:var(--space-4)}.confirmationModalTitle{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.confirmationModalMessage{font-size:var(--font-size-base);color:var(--color-text-secondary);line-height:var(--line-height-relaxed)}.confirmationModalActions{gap:var(--space-3);justify-content:center;display:flex}.confirmationModalActions .btn{min-width:100px}.modalContainerMedium{flex-direction:column;width:90%;max-width:700px;max-height:90vh;display:flex}.modalContainerWide{flex-direction:column;width:95%;max-width:900px;max-height:90vh;display:flex}.modalFormScrollable{flex-direction:column;flex:1;min-height:0;display:flex}.modalBodyScrollable{padding:var(--space-6);flex:1;overflow-y:auto}.modalFooterBordered{border-top:1px solid var(--color-border);padding:var(--space-4) var(--space-6);flex-shrink:0}.filterTabsModal{padding:0 var(--space-6);border-bottom:1px solid var(--color-border)}.filterTabIcon{align-items:center;gap:var(--space-2);display:flex}@media (max-width:768px){.modalContainer{border-radius:var(--radius-lg);max-width:100%}}
.emptyState{text-align:center;padding:var(--space-12) var(--space-6)}.emptyStateIcon{width:48px;height:48px;margin:0 auto var(--space-4);color:var(--color-secondary)}.emptyStateTitle{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.emptyStateDescription{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-6);line-height:var(--line-height-relaxed)}.emptyStateActions{gap:var(--space-3);flex-wrap:wrap;justify-content:center;align-items:center;display:flex}.emptyIcon{margin:0 auto var(--space-6)}.notificationDropdownEmpty{padding:var(--space-6) var(--space-4);text-align:center}.notificationDropdownEmpty .emptyStateIcon{font-size:var(--font-size-2xl);margin-bottom:var(--space-2)}.notificationDropdownEmpty .emptyStateTitle{font-size:var(--font-size-sm);margin-bottom:var(--space-1);font-weight:600}.notificationDropdownEmpty .emptyStateDescription{font-size:var(--font-size-xs);color:var(--color-text-secondary);margin-bottom:0}.emptyStateText{font-size:var(--font-size-sm);color:var(--color-text-secondary);text-align:center;padding:var(--space-4)}.emptyStateHint{color:#9ca3af;margin-top:.5rem;font-size:.875rem}.empty-state{padding:var(--space-16) var(--space-4);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:400px;display:flex}.empty-state-icon{color:var(--color-text-muted);margin-bottom:var(--space-4);opacity:.5}.empty-state h2{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-dark);margin-bottom:var(--space-3)}.empty-state p{font-size:var(--font-size-base);color:var(--color-text-muted);max-width:500px;margin-bottom:var(--space-6);line-height:var(--line-height-relaxed)}.empty-state-actions{gap:var(--space-3);flex-wrap:wrap;justify-content:center;display:flex}
.gradientTabs{background:linear-gradient(to right, var(--color-gradient-tab-from), var(--color-gradient-tab-to));border-radius:var(--radius-lg);width:100%;padding:var(--space-1);gap:var(--space-1);display:grid}.gradientTab{justify-content:center;align-items:center;gap:var(--space-2);color:var(--color-text-primary);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);background-color:#0000;border:none;display:flex}.gradientTab:hover{background-color:#ffffff80}.gradientTab.active{background-color:var(--color-primary);color:#fff}.gradientTab.active:hover{background-color:var(--color-primary)}.gradientTab:disabled{cursor:not-allowed;opacity:.5}.gradientTabs--compact{padding:var(--space-1)}.gradientTabs--compact .gradientTab{font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3)}.gradientTabs--admin{background:linear-gradient(to right, #dbeafe, var(--color-gradient-tab-from))}.gradientTabs--admin .gradientTab.active,.gradientTabs--admin .gradientTab.active:hover{background-color:var(--color-admin-blue)}
.focalPointPicker{border-radius:var(--radius-lg,.75rem);border:2px solid var(--color-border,#e5e7eb);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;position:relative;overflow:hidden}.focalPointPicker:active{cursor:grabbing}.focalPointPicker.disabled{cursor:default;opacity:.7}.focalPointPickerImage{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.focalPointResetButton{top:var(--space-2,.5rem);right:var(--space-2,.5rem);border-radius:var(--radius-full,50%);color:#fff;cursor:pointer;width:28px;height:28px;transition:background var(--transition-fast,.15s);z-index:1;background:#0009;border:none;justify-content:center;align-items:center;display:flex;position:absolute}.focalPointResetButton:hover{background:#000c}.focalPointHint{bottom:var(--space-2,.5rem);right:var(--space-2,.5rem);color:#fff;font-size:var(--font-size-xs,.75rem);border-radius:var(--radius-sm,.25rem);pointer-events:none;z-index:1;background:#0009;align-items:center;gap:4px;padding:4px 8px;display:flex;position:absolute}
