:root{--bg-main: #07070a;--bg-card: rgba(18, 18, 28, .82);--bg-card-strong: rgba(11, 11, 18, .94);--text-main: #ffffff;--text-muted: #cfcfe6;--purple: #6d28d9;--blue: #2563eb;--magenta: #be185d;--red: #dc2626;--green: #22c55e;--flame-orange: #f97316;--flame-red: #ef233c;--border-soft: rgba(255, 255, 255, .12);color:var(--text-main);background:var(--bg-main);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg-main)}button,input,select,textarea{font:inherit}button{cursor:pointer}.app{min-height:100vh;display:grid;grid-template-columns:286px minmax(0,1fr);background:radial-gradient(circle at 8% 7%,rgba(37,99,235,.38),transparent 30%),radial-gradient(circle at 82% 12%,rgba(220,38,38,.36),transparent 28%),radial-gradient(circle at 48% 85%,rgba(190,24,93,.3),transparent 28%),var(--bg-main);position:relative;overflow-x:hidden}.smoke-bg{position:fixed;inset:0;background:linear-gradient(90deg,#07070a52,#07070ac7),url(/assets/gospel-light-banner.jpg) center top / cover no-repeat;opacity:.38;filter:saturate(1.1);pointer-events:none}.sidebar,main{position:relative;z-index:1}.sidebar{display:flex;flex-direction:column;min-height:100vh;padding:24px 18px;border-right:1px solid var(--border-soft);background:#06060abf;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.brand{display:flex;align-items:center;gap:12px;margin-bottom:28px}.brand-mark{width:46px;height:46px;display:grid;place-items:center;border-radius:8px;color:var(--flame-orange);background:linear-gradient(145deg,#f9731633,#ef233c14),#0c0c11;border:1px solid rgba(249,115,22,.42);box-shadow:0 0 28px #f9731633}.brand strong,.brand span{display:block}.brand strong{font-size:1.02rem}.brand span{color:var(--text-muted);font-size:.82rem}nav{display:grid;gap:7px}.sidebar-footer{margin-top:auto;padding-top:18px}.sidebar-clear-button{justify-content:flex-start;min-height:44px}nav button,.ghost,.primary,.danger,.text-button,.quick-grid button,.segmented button{border:0;color:var(--text-main)}nav button{width:100%;min-height:44px;display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:8px;text-align:left;background:transparent;color:var(--text-muted)}nav button.active,nav button:hover{background:#ffffff17;color:#fff}main{padding:26px clamp(18px,3vw,38px) 44px;min-width:0}.topbar{min-height:70px;display:flex;align-items:center;gap:18px;margin-bottom:24px}.topbar h1{margin:0;font-size:clamp(1.48rem,2.6vw,2.25rem);line-height:1.05}.topbar p,.page-title p,.hero-band p,.manage-card p,.calendar-card p,.event-row span,.panel-heading span,.summary-list span,.status-pill span,.slot span,.lookup-results span,.brand span{margin:0;color:var(--text-muted)}.top-actions{margin-left:auto;display:flex;gap:10px;align-items:center}.primary,.ghost,.danger{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border-radius:8px;border:1px solid transparent;font-weight:760;white-space:nowrap}.primary{background:linear-gradient(135deg,var(--flame-orange),var(--flame-red));box-shadow:0 12px 28px #ef233c3d}.ghost{background:#ffffff17;border-color:var(--border-soft)}.danger{background:#dc262624;border-color:#dc262657}.text-button{background:transparent;color:var(--flame-orange);font-weight:760}.icon-button{width:40px;height:40px;display:inline-grid;place-items:center;border:1px solid var(--border-soft);border-radius:8px;color:var(--text-main);background:#ffffff14}.danger-icon{color:#fecaca}.mobile-only,.close-nav{display:none}.page-stack{display:grid;gap:20px}.hero-band{min-height:292px;display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:clamp(24px,5vw,46px);border:1px solid var(--border-soft);border-radius:8px;background:linear-gradient(90deg,#07070a29,#07070aa3),url(/assets/gospel-light-banner.jpg) center / cover no-repeat;box-shadow:0 24px 80px #00000059;overflow:hidden}.hero-band h2{max-width:720px;margin:8px 0 10px;font-size:clamp(2rem,5vw,4.6rem);line-height:.96}.hero-band p{max-width:650px;font-size:clamp(1rem,2vw,1.18rem)}.hero-buttons{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.eyebrow{color:#ffd1b0;font-size:.76rem;font-weight:850;text-transform:uppercase;letter-spacing:0}.kpi-grid,.card-grid,.calendar-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.kpi,.panel,.manage-card,.calendar-card,.event-row,.team-schedule{border:1px solid var(--border-soft);border-radius:8px;background:var(--bg-card);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.kpi{min-height:146px;padding:18px;display:grid;align-content:end;gap:7px;overflow:hidden;position:relative}.kpi:before{content:"";position:absolute;inset:0;opacity:.16}.kpi.orange:before{background:var(--flame-orange)}.kpi.red:before{background:var(--red)}.kpi.green:before{background:var(--green)}.kpi.blue:before{background:var(--blue)}.kpi span,.kpi strong,.kpi small{position:relative}.kpi span{color:var(--text-muted)}.kpi strong{font-size:2.4rem}.kpi small{color:var(--text-muted)}.two-col{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:16px}.panel{padding:18px}.panel-heading,.team-schedule-heading,.event-title-strip,.page-title{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.page-title{display:block}.page-title h2,.panel-heading h3,.team-schedule-heading h3,.event-title-strip h3,.calendar-card h3,.manage-card h3{margin:0}.page-title h2{margin-top:4px;font-size:clamp(1.65rem,3vw,2.8rem)}.event-list,.summary-list,.role-slots,.lookup-results{display:grid;gap:10px}.event-row{min-height:76px;display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px}.event-row.large{min-height:104px}.event-row strong,.event-row span{display:block}.event-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.empty-state{margin:0;padding:14px;color:var(--text-muted);border:1px dashed var(--border-soft);border-radius:8px}.coverage{display:grid;justify-items:end;gap:2px;min-width:84px}.coverage em{color:#fca5a5;font-style:normal;font-size:.82rem}.summary-list div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-soft)}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.quick-grid button{min-height:46px;border-radius:8px;background:#ffffff17}.segmented{display:inline-flex;width:fit-content;padding:4px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff12}.segmented button{min-width:86px;padding:9px 12px;border-radius:6px;background:transparent;color:var(--text-muted);text-transform:capitalize}.segmented button.active{background:#ffffff24;color:#fff}.event-type-field{display:grid;gap:7px;color:var(--text-muted);font-size:.9rem}.recurrence-mode{width:100%}.recurrence-mode button{flex:1}.recurrence-mode.three button{min-width:0}.calendar-page{display:grid;gap:16px}.calendar-heading,.calendar-toolbar,.calendar-workspace,.calendar-main-panel,.calendar-add-panel,.standing-event-panel,.event-detail-panel{border:1px solid var(--border-soft);border-radius:8px;background:var(--bg-card);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.calendar-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px}.calendar-heading h2{margin:0;font-size:clamp(1.9rem,4vw,3rem)}.calendar-heading p{margin:4px 0 0;color:var(--text-muted)}.calendar-actions,.calendar-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.calendar-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.28fr);gap:14px;padding:10px;background:#08080ea8}.calendar-planner-panel,.event-schedule-panel{display:grid;gap:14px;min-width:0}.calendar-main-panel,.event-detail-panel,.calendar-add-panel{padding:14px}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;margin-bottom:10px;background:#ffffff0d}.calendar-nav strong{min-width:150px;font-size:1.08rem}.month-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border:1px solid var(--border-soft);border-radius:8px;overflow:hidden}.calendar-weekday{min-height:38px;display:grid;place-items:center;color:var(--text-muted);font-size:.82rem;font-weight:800;text-transform:uppercase;background:#ffffff0d;border-bottom:1px solid var(--border-soft)}.calendar-day{min-height:128px;padding:9px;border-right:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);background:#08080f99}.calendar-day:nth-child(7n+7){border-right:0}.calendar-day.outside{color:#ffffff6b;background:#0404088a}.calendar-day.selected{box-shadow:inset 0 0 0 2px #a855f7eb}.calendar-day>span{display:inline-grid;place-items:center;min-width:24px;height:24px;font-weight:800}.calendar-day-events{display:grid;gap:6px;margin-top:8px}.calendar-event-chip{min-height:30px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;border:1px solid var(--border-soft);border-left:3px solid var(--flame-orange);border-radius:6px;color:var(--text-main);background:#ffffff12;padding:5px 7px;text-align:left}.calendar-event-chip.active{border-color:#a855f7f5;background:#6d28d933}.calendar-event-chip b,.calendar-event-chip em{color:#fed7aa;font-size:.72rem;font-style:normal}.calendar-event-chip span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}.calendar-event-chip small{color:var(--text-muted);font-size:.68rem;line-height:1}.calendar-event-chip small:not(.warn){grid-column:2}.calendar-event-chip .warn{grid-column:3;color:#fed7aa}.calendar-day-events small{color:var(--text-muted)}.event-detail-panel{display:grid;gap:14px;align-content:start}.detail-label{width:fit-content;padding:8px 12px;border-radius:8px;background:#6d28d947;color:#f5d0fe;font-weight:850}.detail-flame{width:64px;height:64px;display:grid;place-items:center;border:1px solid var(--border-soft);border-radius:50%;color:var(--flame-orange);background:#f973161a}.event-detail-panel h3{margin:0;font-size:1.35rem}.detail-filled{width:fit-content;padding:6px 9px;border-radius:8px;color:#bbf7d0;background:#22c55e2e}.detail-list,.detail-notes,.detail-coverage,.detail-requirements{display:grid;gap:9px;padding-top:12px;border-top:1px solid var(--border-soft)}.detail-list span,.detail-notes p,.detail-coverage p,.detail-requirements p{margin:0;color:var(--text-muted)}.detail-notes h4,.detail-requirements h4{margin:0}.requirement-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0f}.requirement-row span{display:grid;gap:2px;min-width:0}.requirement-row small{color:var(--text-muted)}.requirement-row div{display:inline-flex;align-items:center;gap:6px}.requirement-row b{min-width:24px;text-align:center}.detail-coverage div:first-child{display:flex;justify-content:space-between;gap:12px}.coverage-bar{height:8px;border-radius:999px;background:#ffffff24;overflow:hidden}.coverage-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22c55e,#86efac)}.calendar-add-panel{background:#12121ce6}.standing-event-panel{display:grid;gap:14px;padding:14px;background:#12121ceb}.standing-event-layout{display:grid;grid-template-columns:minmax(250px,.32fr) minmax(0,1fr);gap:14px}.standing-event-list,.standing-event-form{display:grid;gap:12px;align-content:start}.standing-event-list button{display:grid;gap:4px;width:100%;padding:12px;border:1px solid var(--border-soft);border-radius:8px;color:var(--text-main);text-align:left;background:#ffffff0f}.standing-event-list button.active{border-color:#a855f7db;background:#6d28d933}.standing-event-list span,.standing-preview span{color:var(--text-muted);font-size:.84rem}.standing-preview{display:grid;gap:8px;padding:12px;border:1px solid rgba(37,99,235,.34);border-radius:8px;background:#2563eb1a}.standing-preview div{display:flex;flex-wrap:wrap;gap:7px}.standing-preview b,.standing-badges span{width:fit-content;padding:5px 8px;border-radius:999px;color:#bfdbfe;background:#2563eb33;font-size:.78rem}.standing-actions,.detail-actions-grid{display:flex;flex-wrap:wrap;gap:9px}.standing-badges{display:flex;flex-wrap:wrap;gap:7px}.standing-badges .warn{color:#fed7aa;background:#f973162e}.occurrence-edit-form{display:grid;gap:10px;padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0f}.date-pill{display:inline-flex;width:fit-content;padding:6px 9px;border-radius:999px;background:#f9731626;color:#fed7aa;font-size:.82rem;font-weight:800}.builder-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px;align-items:start}.builder-aside{position:sticky;top:18px;display:grid;gap:14px}label{display:grid;gap:7px;color:var(--text-muted);font-size:.9rem}input,select,textarea{width:100%;min-height:42px;border-radius:8px;border:1px solid var(--border-soft);color:var(--text-main);background:#05050ad1;padding:10px 11px;outline:none}textarea{min-height:90px;resize:vertical}input[type=color]{padding:4px}input:focus,select:focus,textarea:focus{border-color:#f97316b3;box-shadow:0 0 0 3px #f9731624}.input-with-icon{position:relative}.input-with-icon svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted)}.input-with-icon input{padding-left:38px}.mini-results{display:flex;flex-wrap:wrap;gap:7px}.mini-results span,.manage-card span,.slot span{width:fit-content;padding:5px 8px;border-radius:999px;background:#ffffff17;font-size:.78rem}.full{width:100%}.schedule-area{display:grid;gap:14px}.event-schedule-panel{padding:14px;border:1px solid var(--border-soft);border-radius:8px;background:#0c0c14d1}.event-title-strip{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:17px;border-radius:8px;background:#ffffff14;border:1px solid var(--border-soft)}.event-title-strip h3,.event-title-strip p{margin:0}.event-title-strip h3{margin-top:4px}.draft-summary{margin:0;padding:10px 12px;border:1px solid rgba(37,99,235,.42);border-radius:8px;color:#bfdbfe;background:#2563eb24}.status-pill{min-width:150px;display:grid;gap:2px;justify-items:end;padding:10px 12px;border-radius:8px;background:#f9731624}.team-schedule{padding:16px;border-left-width:5px;border-left-style:solid;border-radius:8px;background:#ffffff0d}.team-schedule-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.team-schedule-heading span{color:var(--text-muted)}.slot{display:grid;grid-template-columns:minmax(170px,1fr) minmax(190px,280px);gap:12px;align-items:center;padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:#0000002e}.slot.has-warning{border-color:#f9731699;background:#f9731617}.slot strong{display:block;margin-bottom:5px}.warning{grid-column:1 / -1;margin:0;color:#fed7aa}.empty-schedule-panel{min-height:110px;display:grid;place-items:center;border:1px dashed var(--border-soft);border-radius:8px;background:#ffffff0a}.lookup-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:16px}.lookup-results article{padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff12}.lookup-results strong,.lookup-results span{display:block}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:end}.form-grid.single{grid-template-columns:1fr}.wide,fieldset{grid-column:1 / -1}.recurrence-builder,.recurrence-preview{display:grid;gap:12px;padding:14px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0f}.recurrence-builder{border-color:#f9731647}.recurrence-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.recurrence-presets button{min-height:42px;border:1px solid var(--border-soft);border-radius:8px;color:var(--text-main);background:#ffffff14;font-weight:760}.recurrence-presets button:hover{border-color:#f973168c;background:#f973161f}.recurrence-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:end}.read-only-field{min-height:42px;display:grid;align-content:center;gap:2px;padding:8px 11px;border:1px solid var(--border-soft);border-radius:8px;background:#05050a80}.read-only-field span,.recurrence-preview>span{color:var(--text-muted);font-size:.82rem}.read-only-field strong{color:var(--text-main)}.recurrence-preview.compact{background:#2563eb14}.recurrence-preview div{display:flex;flex-wrap:wrap;gap:8px}.recurrence-preview b,.recurrence-preview em{width:fit-content;padding:6px 9px;border-radius:999px;background:#ffffff1a;color:#fff;font-size:.84rem;font-style:normal}.event-note-helper{color:var(--text-muted);font-size:.86rem}.teams-roles-page{display:grid;gap:16px}.teams-roles-heading{display:flex;justify-content:space-between;gap:18px;align-items:end}.teams-roles-heading h2{margin:4px 0;font-size:clamp(2rem,4vw,3.4rem);white-space:nowrap}.teams-roles-heading p{margin:0;color:var(--text-muted)}.teams-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 150px;gap:12px;min-width:min(460px,100%)}.teams-roles-layout{display:grid;grid-template-columns:minmax(280px,.34fr) minmax(0,1fr);gap:16px}.team-sidebar-panel,.team-hero-panel,.roles-list-panel,.role-editor-panel,.team-sidebar-note{border:1px solid var(--border-soft);border-radius:8px;background:var(--bg-card);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.team-sidebar-panel,.team-hero-panel,.roles-list-panel,.role-editor-panel{padding:16px}.team-sidebar-panel>.panel-heading{align-items:center;margin-bottom:14px}.team-mini-form{display:grid;gap:12px;margin-bottom:14px;padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0d}.team-list,.team-detail-stack,.role-list,.role-editor-panel{display:grid;gap:12px}.team-list-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;width:100%;min-height:86px;padding:12px;border:1px solid var(--border-soft);border-radius:8px;color:var(--text-main);background:#ffffff0d;text-align:left}.team-list-item.active{background:#2563eb24;box-shadow:0 0 0 1px #2563eb52,0 0 28px #2563eb29}.team-icon,.team-hero-icon,.role-mark{display:grid;place-items:center;color:#fff;border-radius:8px;box-shadow:0 12px 32px #00000042}.team-icon{width:54px;height:54px}.team-list-item strong,.team-list-item small{display:block}.team-list-item small,.role-metric span{color:var(--text-muted);font-size:.8rem}.team-list-item b{display:grid;justify-items:center;gap:2px;font-size:1.05rem}.team-sidebar-note{display:grid;gap:8px;margin-top:30px;padding:18px;color:#fed7aa;background:#f973161a}.team-sidebar-note p{margin:0;color:var(--text-muted)}.team-hero-panel{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(140px,.18fr) minmax(140px,.18fr) minmax(170px,.18fr);gap:18px;align-items:center}.team-hero-icon{width:86px;height:86px}.team-hero-panel h3,.role-row h4{margin:0}.team-hero-panel p{margin:6px 0 0;color:var(--text-muted)}.status-badge{display:inline-flex;width:fit-content;margin-top:6px;padding:5px 9px;border-radius:999px;color:#fecaca;background:#dc262629;font-weight:800}.status-badge.active{color:#86efac;background:#22c55e29}.team-stat{min-height:96px;display:grid;align-content:center;justify-items:center;gap:3px;padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0d}.team-stat strong{font-size:1.8rem}.team-stat span{color:var(--text-muted)}.team-hero-actions{display:grid;gap:10px}.roles-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.38fr);gap:16px}.role-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(110px,.18fr) minmax(90px,.14fr) auto;gap:14px;align-items:center;min-height:98px;padding:14px;border:1px solid var(--border-soft);border-left-width:5px;border-radius:8px;background:#ffffff0d}.role-mark{width:52px;height:52px;background:#6d28d98c}.role-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.role-tags span{width:fit-content;padding:5px 8px;border-radius:6px;font-size:.78rem;font-weight:800}.role-tags .filled{color:#86efac;background:#22c55e29}.role-tags .open{color:#fdba74;background:#f9731629}.role-tags .training{color:#fcd34d;background:#eab30824}.role-tags .auto{color:#93c5fd;background:#2563eb2e}.role-metric{display:grid;justify-items:center;gap:4px}.role-metric strong{font-size:1.3rem}.role-actions{display:flex;gap:8px}.role-editor-panel{border-color:#ef233c99;box-shadow:0 0 0 1px #ef233c2e}.people-page{display:grid;gap:16px}.people-heading h2{margin:4px 0;font-size:clamp(2rem,4vw,3.4rem)}.people-heading p{margin:0;color:var(--text-muted)}.people-layout{display:grid;grid-template-columns:minmax(320px,.3fr) minmax(0,.46fr) minmax(300px,.24fr);gap:16px;align-items:start}.volunteer-directory-panel,.volunteer-hero-panel,.volunteer-details-panel,.side-panel{border:1px solid var(--border-soft);border-radius:8px;background:var(--bg-card);-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.volunteer-directory-panel,.volunteer-hero-panel,.volunteer-details-panel,.side-panel{padding:16px}.volunteer-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr)) auto;gap:8px;margin:14px 0}.directory-count,.directory-footnote{display:block;color:#93c5fd;margin:8px 0 12px}.directory-footnote{color:var(--text-muted);margin-top:14px}.volunteer-list,.volunteer-profile-stack,.volunteer-side-stack,.assignment-list{display:grid;gap:12px}.volunteer-list-item{width:100%;min-height:96px;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:12px;align-items:center;border:1px solid var(--border-soft);border-radius:8px;color:var(--text-main);background:#ffffff0d;padding:12px;text-align:left}.volunteer-list-item.active{border-color:#f97316bf;box-shadow:0 0 0 1px #a855f7a6}.avatar{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#2563eb);color:#fff;font-weight:850;font-size:1.25rem}.avatar.large{width:104px;height:104px;font-size:2rem}.volunteer-list-item strong,.volunteer-list-item small{display:block}.volunteer-list-item small,.assignment-card span{color:var(--text-muted)}.volunteer-list-item b{display:grid;justify-items:center;gap:2px}.volunteer-list-item b small{font-size:.76rem}.volunteer-hero-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:start}.volunteer-hero-panel h3{margin:0;font-size:clamp(1.8rem,3vw,2.4rem)}.volunteer-hero-panel p{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0 0;color:var(--text-muted)}.volunteer-stat-grid{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.volunteer-details-panel{display:grid;gap:16px}.volunteer-chip-section{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--border-soft)}.volunteer-chip-section h4,.chip-section-heading h4,.side-panel h3{margin:0}.chip-section-heading,.date-add-inline{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.date-add-inline{justify-content:flex-end}.date-add-inline input{max-width:180px}.selected-chip-list{display:flex;flex-wrap:wrap;gap:8px}.selected-chip-list button,.selected-chip-list span{min-height:36px;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--border-soft);border-radius:8px;color:var(--text-main);background:#ffffff12}.selected-chip-list button.selected{border-color:#6d28d9bf;background:#6d28d957}.volunteer-save-row{display:grid;grid-template-columns:minmax(160px,.32fr) minmax(220px,1fr);gap:12px}.side-panel{display:grid;gap:14px}.assignment-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;align-items:center;padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0d}.assignment-card div:first-child{display:grid;justify-items:center;padding-right:10px;border-right:1px solid var(--border-soft)}.flags-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.flags-panel h3,.quick-actions-panel h3{grid-column:1 / -1}.flags-panel div{display:grid;gap:6px}.flags-panel span{display:inline-flex;gap:8px;align-items:center;color:var(--text-muted)}.quick-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.quick-action-grid button{min-height:58px}@media(max-width:1400px){.people-layout{grid-template-columns:minmax(320px,.36fr) minmax(0,1fr)}.volunteer-side-stack{grid-column:1 / -1;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.volunteer-side-stack .side-panel{min-height:100%}}.toggle{min-height:42px;display:flex;align-items:center;gap:10px;padding:9px 0}.toggle input,.chip-check input{width:16px;min-height:16px}fieldset{display:flex;flex-wrap:wrap;gap:8px;border:1px solid var(--border-soft);border-radius:8px;margin:0;padding:12px}legend{color:#fff;font-weight:800}.chip-check{display:inline-flex;align-items:center;gap:7px;width:fit-content;min-height:34px;padding:6px 9px;border-radius:999px;background:#ffffff14}.card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.manage-card{min-height:150px;padding:16px 112px 16px 16px;display:flex;justify-content:space-between;gap:16px;border-left-width:5px;position:relative;overflow:hidden}.manage-card>div:first-child{min-width:0}.manage-card h3,.manage-card p{overflow-wrap:anywhere}.card-actions{display:flex;gap:8px;position:absolute;top:16px;right:16px}.report-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr) auto auto auto;gap:12px;align-items:end}.print-sheet{color:#101015;background:#fff;border-radius:8px;padding:28px;min-height:420px}.print-sheet header{display:flex;align-items:center;gap:14px;padding-bottom:16px;border-bottom:2px solid #111827}.print-sheet img{width:54px;height:54px;object-fit:cover;border-radius:8px}.print-sheet h2,.print-sheet h3,.print-sheet p{margin:0}.print-sheet pre{white-space:pre-wrap;font:15px/1.5 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.person-print{margin-top:24px;padding-top:16px;border-top:1px solid #d1d5db}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(135deg,#0f172aeb,#1c071feb),url(/assets/gospel-light-banner.jpg) center / cover}.auth-card{width:min(440px,100%);display:grid;gap:18px;padding:24px;border:1px solid var(--border-soft);border-radius:8px;background:#0f0e18f0;box-shadow:var(--shadow)}.auth-brand{padding:0}.auth-card h1{margin:0 0 6px;font-size:2rem}.auth-card p{margin:0;color:var(--muted)}.alert{padding:12px 14px;border:1px solid rgba(147,197,253,.35);border-radius:8px;background:#3b82f61f;color:var(--text)}.alert.error{border-color:#f8717173;background:#ef444424}.user-chip{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0d}.user-chip span,.session-pill{color:var(--muted);font-size:.84rem}.session-pill{padding:8px 10px;border:1px solid var(--border-soft);border-radius:999px;background:#ffffff0f}.admin-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(420px,1.1fr);gap:16px}.admin-form,.admin-actions{display:grid;gap:12px}.admin-actions{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:16px}.user-list{display:grid;gap:10px;margin-top:16px}.user-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--border-soft);border-radius:8px;background:#ffffff0a}.user-row div{display:grid;gap:3px}.user-row span{color:var(--muted)}@media(max-width:1100px){.app{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(290px,86vw);transform:translate(-102%);transition:transform .18s ease;z-index:5}.sidebar.is-open{transform:translate(0)}.mobile-only,.close-nav{display:inline-grid}.close-nav{position:fixed;top:16px;right:16px;z-index:6}.kpi-grid,.calendar-grid,.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.two-col,.builder-layout,.lookup-grid,.report-controls,.calendar-workspace,.standing-event-layout,.admin-grid,.recurrence-controls,.recurrence-presets{grid-template-columns:1fr}.calendar-heading,.calendar-toolbar,.teams-roles-heading{align-items:stretch;flex-direction:column}.teams-toolbar,.teams-roles-layout,.team-hero-panel,.roles-workspace,.people-layout,.volunteer-side-stack{grid-template-columns:1fr}.team-hero-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-actions,.calendar-nav{width:100%}.calendar-actions button{flex:1}.volunteer-filters,.volunteer-stat-grid,.flags-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.builder-aside{position:static}}@media(max-width:700px){main{padding:18px 14px 34px}.topbar{align-items:flex-start}.top-actions{display:none}.hero-band{min-height:420px;align-items:flex-end;flex-direction:column;justify-content:flex-end}.hero-buttons{width:100%;justify-content:stretch}.hero-buttons button{flex:1}.kpi-grid,.calendar-grid,.card-grid,.form-grid,.month-calendar{grid-template-columns:1fr}.calendar-weekday,.calendar-day.outside{display:none}.calendar-day{min-height:108px;border-right:0}.recurrence-mode{flex-direction:column}.event-row,.event-title-strip,.slot,.role-row,.user-row,.team-list-item,.volunteer-list-item,.volunteer-hero-panel,.manage-card{grid-template-columns:1fr;flex-direction:column;align-items:stretch}.volunteer-stat-grid,.volunteer-save-row,.quick-action-grid,.admin-actions,.volunteer-filters,.flags-panel{grid-template-columns:1fr}.role-actions,.team-hero-actions{justify-content:flex-start;grid-template-columns:1fr}.manage-card{padding:16px}.card-actions{position:static;align-self:flex-end}.coverage,.status-pill{justify-items:start}.event-row-actions{justify-content:flex-start;flex-wrap:wrap}}@media print{body{background:#fff}.sidebar,.topbar,.page-title,.no-print,.smoke-bg{display:none!important}.app{display:block;background:#fff}main{padding:0}.print-sheet{box-shadow:none;border-radius:0;padding:0}}
