:root{--w-ink:#17201d;--w-deep:#111a17;--w-green:#23372f;--w-gold:#e3ad42;--w-gold-dark:#ad7922;--w-paper:#faf8f2;--w-white:#fff;--w-line:#e6dfd1;--w-muted:#746f66;--w-danger:#9a392e;--w-success:#2e704e}*{box-sizing:border-box}body{color:var(--w-ink);background:#f2efe8;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button,a{cursor:pointer}.worship-access{background:radial-gradient(circle at 18% 18%,#5e764c32,#0000 30%),linear-gradient(135deg,#101815 0%,#1b2a24 56%,#322617 100%);grid-template-columns:minmax(340px,1.1fr) minmax(380px,.9fr);min-height:100dvh;display:grid}.access-brand{text-align:center;place-content:center;padding:70px;display:grid}.access-brand img{filter:drop-shadow(0 24px 45px #0008);width:min(560px,90%);margin:auto}.access-brand p{color:#ddd4c3;letter-spacing:.03em;margin:24px 0 0;font:500 17px Georgia,serif}.access-card{background:#fffdf8;border:1px solid #ddb85f55;border-radius:20px;align-self:center;width:min(520px,100% - 50px);max-height:92dvh;margin-right:50px;padding:42px;overflow:auto;box-shadow:0 30px 90px #0007}.access-card h1{color:#1a241f;margin:8px 0;font:700 35px Georgia,serif}.access-card>p{color:var(--w-muted);margin:0 0 28px}.access-card form,.simple-form,.profile-form{gap:17px;display:grid}.access-card label,.simple-form label,.profile-form>label,.form-pair label{color:#4d4a43;gap:7px;font-size:12px;font-weight:750;display:grid}.access-card input,.simple-form input,.simple-form textarea,.profile-form input{width:100%;color:var(--w-ink);background:#fff;border:1px solid #dcd4c7;border-radius:9px;outline:none;padding:12px 13px}.access-card input:focus,.simple-form input:focus,.simple-form textarea:focus,.profile-form input:focus{border-color:var(--w-gold-dark);box-shadow:0 0 0 3px #e3ad4222}.access-card label small,.profile-form label small{color:#8a8479;font-size:10px;font-weight:500}.gold-button,.dark-button{border:0;border-radius:9px;min-height:45px;padding:11px 17px;font-weight:850}.gold-button{color:#211a0e;background:linear-gradient(135deg,#efc565,#d89a2b);box-shadow:0 7px 20px #b178212c}.dark-button{color:#fff;background:var(--w-green)}.access-switch{color:#8e6423;background:0 0;border:0;margin:20px auto 0;font-weight:750;display:block}.form-pair{grid-template-columns:1fr 1fr;gap:14px;display:grid}.worship-kicker{color:#a37124;letter-spacing:.16em;font-size:10px;font-weight:900}.worship-message,.review-note{color:#694b1d;background:#fff5d9;border:1px solid #d7b35f;border-radius:9px;margin:15px 0;padding:12px 14px;font-size:12px;line-height:1.45}.review-note strong{margin-bottom:4px;display:block}.worship-loading{color:#dac17f;text-align:center;background:#15211c;place-content:center;gap:18px;min-height:100dvh;display:grid}.worship-loading img{width:min(420px,75vw)}.worship-shell{grid-template-columns:250px 1fr;min-height:100dvh;display:grid}.worship-sidebar{color:#fff;background:radial-gradient(circle at 50% 0,#55643d42,#0000 28%),linear-gradient(#111a17,#1e3028 70%,#151711);flex-direction:column;height:100dvh;padding:28px 20px;display:flex;position:sticky;top:0}.worship-sidebar>img{width:190px;margin:4px auto 20px}.worship-sidebar>small{color:#a8b5aa;letter-spacing:.14em;border-bottom:1px solid #ffffff18;padding:0 11px 19px;font-size:9px}.worship-sidebar nav{gap:5px;margin-top:22px;display:grid}.worship-sidebar nav button,.logout{color:#cbd2cc;text-align:left;background:0 0;border:0;border-radius:8px;width:100%;padding:12px 13px}.worship-sidebar nav button:hover,.worship-sidebar nav button.active{color:#fff;box-shadow:inset 3px 0 var(--w-gold);background:#ffffff0e}.logout{border:1px solid #ffffff1b;margin-top:auto}.mobile-nav-button,.nav-backdrop{display:none}.worship-content{min-width:0;padding:0 32px 50px}.worship-content>header{justify-content:space-between;align-items:center;gap:20px;max-width:1450px;height:92px;margin:auto;display:flex}.worship-content>header h1{margin:5px 0 0;font:700 25px Georgia,serif}.user-chip{align-items:center;gap:10px;display:flex}.user-chip>span{color:#2b210f;background:var(--w-gold);border-radius:50%;place-items:center;width:39px;height:39px;font-weight:900;display:grid}.user-chip strong,.user-chip small{display:block}.user-chip small{color:var(--w-muted);margin-top:3px;font-size:9px}.page-stack{gap:19px;max-width:1450px;margin:auto;display:grid}.panel{border:1px solid var(--w-line);background:var(--w-white);border-radius:14px;padding:26px;box-shadow:0 9px 30px #342b1e0b}.panel h2{margin:7px 0 22px;font:700 22px Georgia,serif}.panel-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.panel-heading>span:last-child{color:#76521b;text-align:center;background:#f6e9c9;border-radius:20px;min-width:32px;padding:6px 9px;font-size:11px;font-weight:850}.header-actions{align-items:center;gap:17px;display:flex}.notification-center{position:relative}.notification-button{border:1px solid var(--w-line);background:#fff;border-radius:50%;width:41px;height:41px;font-size:17px;position:relative}.notification-button>span{color:#fff;background:var(--w-danger);border:2px solid #f2efe8;border-radius:12px;place-items:center;min-width:19px;height:19px;padding:0 4px;font-size:8px;font-weight:900;display:grid;position:absolute;top:-5px;right:-5px}.notification-panel{z-index:40;border:1px solid var(--w-line);background:#fff;border-radius:13px;width:min(380px,100vw - 28px);max-height:500px;position:absolute;top:50px;right:0;overflow:auto;box-shadow:0 20px 55px #241c1130}.notification-heading{border-bottom:1px solid var(--w-line);background:#fff;justify-content:space-between;align-items:center;padding:15px;display:flex;position:sticky;top:0}.notification-heading small{color:var(--w-muted);font-size:9px}.notification-item{width:100%;color:var(--w-ink);text-align:left;background:#fff;border:0;border-bottom:1px solid #eee8dc;gap:5px;padding:14px 15px;display:grid}.notification-item.unread{box-shadow:inset 3px 0 var(--w-gold);background:#fff8e7}.notification-item strong{font-size:11px}.notification-item span{color:#625d54;font-size:10px;line-height:1.4}.notification-item small{color:#9a9184;font-size:8px}.notification-empty{color:var(--w-muted);text-align:center;padding:28px 15px;font-size:11px}.worship-hero{color:#fff;background:radial-gradient(circle at 75% 20%,#8d6b2655,#0000 30%),linear-gradient(120deg,#14211c,#294035 64%,#4c3c20);border:1px solid #d4ad5266;border-radius:16px;align-items:center;min-height:210px;padding:37px;display:flex;position:relative;overflow:hidden}.worship-hero h2{max-width:680px;margin:8px 0 12px;font:700 clamp(25px,3vw,38px) Georgia,serif}.worship-hero p{color:#d8ded9;max-width:620px;margin:0;line-height:1.55}.worship-hero img{opacity:.18;width:330px;position:absolute;right:-30px}.metric-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.metric{border:1px solid var(--w-line);background:#fff;border-radius:12px;padding:21px}.metric small,.metric span,.metric strong{display:block}.metric small{color:var(--w-muted)}.metric strong{color:#20372d;margin:7px 0;font:750 34px Georgia,serif}.metric span{color:#999187;font-size:9px}.profile-layout,.two-columns{grid-template-columns:minmax(0,1.45fr) minmax(310px,.75fr);gap:19px;max-width:1450px;margin:auto;display:grid}.check-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.check-field{border:1px solid var(--w-line);color:#4e4b45;border-radius:9px;align-items:center;gap:9px;padding:11px;font-size:11px;display:flex}.check-field input{width:17px;height:17px;accent-color:var(--w-gold-dark)}.video-panel{text-align:center;align-self:start}.video-icon{color:#241c0d;background:#f0c667;border-radius:50%;place-items:center;width:64px;height:64px;margin:8px auto 15px;padding-left:4px;font-size:22px;display:grid}.video-panel p{color:var(--w-muted);font-size:12px;line-height:1.55}.video-panel form{gap:13px;display:grid}.file-drop{color:#76521b;background:#fcf7eb;border:1px dashed #c8b584;border-radius:10px;gap:8px;margin:20px 0 0;padding:19px;font-size:12px;font-weight:800;display:grid}.file-drop input{width:100%;font-size:10px}.file-drop small{color:#8f887b;font-weight:500}.video-ok{color:#2d6f4c;background:#e3f2e8;border-radius:8px;margin:15px 0;padding:10px;font-size:11px}.status{white-space:nowrap;border-radius:20px;justify-content:center;align-items:center;padding:6px 9px;font-size:9px;font-weight:900;display:inline-flex}.status-draft{color:#766d62;background:#eeeae3}.status-pending{color:#76521b;background:#fae8b9}.status-approved{color:#286346;background:#dcefe3}.status-changes_requested,.status-rejected{color:#8a332b;background:#f6dedb}.simple-form textarea{resize:vertical;min-height:95px}.project-card{border-top:1px solid var(--w-line);grid-template-columns:1fr auto;gap:12px;padding:17px 0;display:grid}.project-card p{color:var(--w-muted);margin:5px 0;font-size:11px}.moment-list{grid-column:1/3;gap:6px;display:grid}.moment-list>div{background:#f7f5ef;border-radius:8px;padding:10px}.moment-list b,.moment-list small{display:block}.moment-list small{color:var(--w-muted);margin-top:3px;font-size:9px}.member-list>article{border-top:1px solid var(--w-line);grid-template-columns:auto 1fr auto auto;align-items:center;gap:13px;padding:14px 0;display:grid}.member-avatar{color:#fff;background:var(--w-green);border-radius:50%;place-items:center;width:42px;height:42px;font-weight:850;display:grid}.member-main strong,.member-main small{display:block}.member-main small{color:var(--w-muted);margin-top:3px;font-size:9px}.member-main p{color:#87601f;margin:5px 0 0;font-size:10px}.member-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.member-actions button,.member-actions a,.song-list a{color:#76521b;background:#fff;border:1px solid #d9cfbd;border-radius:7px;padding:7px 9px;font-size:9px;font-weight:800;text-decoration:none}.song-columns{grid-template-columns:minmax(360px,.85fr) minmax(0,1.15fr)}.song-list article{border-top:1px solid var(--w-line);justify-content:space-between;align-items:center;gap:14px;padding:14px 0;display:flex}.song-list strong,.song-list small{display:block}.song-list small{color:var(--w-muted);margin-top:4px;font-size:9px}.empty{color:#8b8479;text-align:center;place-content:center;min-height:180px;display:grid}.empty>span{color:#b7842d;font-size:30px}.empty p{font-size:12px}@media (max-width:1050px){.metric-grid{grid-template-columns:repeat(2,1fr)}.profile-layout,.two-columns,.song-columns{grid-template-columns:1fr}.video-panel{align-self:stretch}}@media (max-width:700px){.worship-access{padding:18px 14px 30px;display:block}.access-brand{padding:25px 10px}.access-brand img{width:250px}.access-brand p{font-size:13px}.access-card{border-radius:15px;width:100%;max-height:none;margin:0;padding:25px 20px}.access-card h1{font-size:28px}.form-pair,.check-grid{grid-template-columns:1fr}.worship-shell{display:block}.mobile-nav-button{z-index:52;color:#fff;background:#18241f;border:1px solid #d2ad58;border-radius:8px;min-height:42px;padding:8px 12px;font-size:12px;font-weight:850;display:block;position:fixed;top:13px;left:13px}.nav-backdrop{z-index:49;background:#090d0bbd;border:0;display:block;position:fixed;inset:0}.worship-sidebar{z-index:50;width:min(84vw,310px);height:100dvh;padding-top:72px;transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-105%);box-shadow:20px 0 50px #0006}.nav-open .worship-sidebar{transform:translate(0)}.worship-content{padding:0 14px 35px}.worship-content>header{height:72px;padding-left:82px}.worship-content>header h1{text-overflow:ellipsis;white-space:nowrap;max-width:115px;font-size:19px;overflow:hidden}.header-actions{gap:8px}.user-chip>div{display:none}.user-chip>span{width:36px;height:36px;font-size:11px}.notification-panel{width:auto;max-height:65dvh;position:fixed;top:68px;left:14px;right:14px}.worship-hero{min-height:265px;padding:27px 22px}.worship-hero img{width:230px;bottom:0;right:-65px}.metric-grid{grid-template-columns:1fr 1fr;gap:9px}.metric{padding:16px}.metric strong{font-size:28px}.panel{padding:19px}.panel-heading{align-items:flex-start}.member-list>article{grid-template-columns:auto 1fr}.member-list>article>.status{justify-self:start}.member-actions{grid-column:1/3;justify-content:flex-start}.project-card{grid-template-columns:1fr}.moment-list{grid-column:auto}.song-list article{flex-direction:column;align-items:flex-start}}.simple-form select{width:100%;color:var(--w-ink);background:#fff;border:1px solid #dcd4c7;border-radius:9px;outline:none;padding:12px 13px}.simple-form select:focus{border-color:var(--w-gold-dark);box-shadow:0 0 0 3px #e3ad4222}.moment-list>button{width:100%;color:var(--w-ink);text-align:left;background:#f7f5ef;border:0;border-radius:8px;grid-template-columns:1fr auto;padding:10px;display:grid}.moment-list button span{color:#815a1e;grid-area:1/2/3;align-self:center;font-size:9px;font-weight:850}.back-button{color:#77531b;background:0 0;border:0;justify-self:start;padding:8px 0;font-weight:800}.moment-hero{color:#fff;background:linear-gradient(120deg,#17251f,#314b3f);border-radius:14px;padding:28px}.moment-hero h2{margin:6px 0;font:700 28px Georgia,serif}.moment-hero p{color:#ccd6cf;margin:0}.moment-hero>strong{color:#2b210f;background:#edc76c;border-radius:7px;margin-top:14px;padding:7px 10px;font-size:10px;display:inline-block}.assignment-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.assignment-grid article{border:1px solid var(--w-line);border-radius:10px;gap:5px;padding:14px;display:grid}.assignment-grid article>span:first-child{color:#9b6d24;letter-spacing:.12em;font-size:8px;font-weight:900}.assignment-grid p,.assignment-grid small{color:var(--w-muted);margin:0;font-size:10px}.assignment-grid .status{justify-self:start;margin-top:5px}.setlist article{border-top:1px solid var(--w-line);grid-template-columns:38px 1fr auto;align-items:center;gap:12px;padding:13px 0;display:grid}.setlist article>span{color:#b18435;font:700 20px Georgia,serif}.setlist strong,.setlist small{display:block}.setlist small{color:var(--w-muted);margin-top:4px;font-size:9px}.setlist a{color:#80591b;font-size:10px;font-weight:800;text-decoration:none}@media (max-width:700px){.assignment-grid{grid-template-columns:1fr}.setlist article{grid-template-columns:30px 1fr}.setlist a{grid-column:2}.moment-hero h2{font-size:24px}}.personal-schedule .panel-heading p{color:var(--w-muted);margin:5px 0;font-size:11px}.schedule-role{background:#f5f3ed;border-radius:9px;justify-content:space-between;gap:12px;margin:10px 0;padding:13px;display:flex}.schedule-role span{color:var(--w-muted);font-size:11px}.confirmation-actions{gap:8px;margin:15px 0;display:flex}.confirmation-actions button{color:#6f4d18;background:#fff;border:1px solid #d7c9ae;border-radius:8px;padding:9px 11px;font-weight:800}.personal-schedule h3{margin:23px 0 8px;font:700 17px Georgia,serif}@media (max-width:700px){.schedule-role{flex-direction:column;align-items:flex-start}.confirmation-actions{flex-direction:column}.confirmation-actions button{width:100%}}.status-published,.status-confirmed{color:#286346;background:#dcefe3}.status-declined{color:#8a332b;background:#f6dedb}.project-actions{align-items:center;gap:7px;display:flex}.project-actions button{color:#6f4d18;background:#fff;border:1px solid #d7c9ae;border-radius:7px;padding:6px 9px;font-size:9px;font-weight:850}
