:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17203d;--muted:#6f7690;--paper:#fbfaf7;--paper-deep:#f3f0e9;--navy:#101939;--navy-soft:#1b2853;--blue:#405d9d;--gold:#c5a056;--gold-text:#76510b;--gold-soft:#e8d8ae;--chord:#704600;--line:#dedbd2;--shadow:0 22px 60px #1019391f;color:var(--ink);background:#e9edf5;font-family:DM Sans,system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 15% 10%,#c5a0562b,#0000 24rem),linear-gradient(135deg,#e6ebf5 0%,#f4f1e9 100%);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}button,input{font:inherit}button{color:inherit}.shell{width:min(1500px,100% - 32px);height:calc(100vh - 32px);min-height:620px;box-shadow:var(--shadow);background:#fbfaf7f5;border:1px solid #ffffffd9;border-radius:24px;margin:16px auto;overflow:hidden}.topbar{color:#fff;background:radial-gradient(circle at 82% 10%, #c5a0562e, transparent 25%), var(--navy);border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;height:76px;padding:0 28px;display:flex}.topbar-start{align-items:center;gap:18px;min-width:0;display:flex}.sidebar-toggle{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff40;border-radius:12px;align-items:center;gap:9px;min-height:42px;padding:0 14px;font-size:14px;font-weight:700;transition:background .16s,border-color .16s;display:inline-flex}.sidebar-toggle:hover{background:#ffffff24;border-color:#ffffff73}:is(.sidebar-toggle:focus-visible,.mobile-back:focus-visible){outline-offset:2px;outline:3px solid #e8d8ae8c}.sidebar-toggle-icon{font-size:19px;font-weight:400;line-height:1}.brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-mark{width:38px;height:38px;color:var(--gold-soft);border:1px solid #e8d8aeb3;border-radius:50%;place-items:center;font-size:20px;display:grid}.brand strong{letter-spacing:.02em;font-family:Marcellus,Georgia,serif;font-size:18px;font-weight:400;display:block}.brand small{color:#b9c1d7;letter-spacing:.08em;text-transform:uppercase;margin-top:2px;font-size:12px;display:block}.mobile-back{color:#fff;background:#ffffff14;border:1px solid #ffffff40;border-radius:999px;padding:9px 13px;display:none}.topbar-actions{align-items:center;gap:10px;min-width:0;display:flex}.planner-launch,.choir-launch,.adoration-launch{color:#fff;cursor:pointer;background:#c5a05626;border:1px solid #e8d8ae7a;border-radius:999px;min-height:42px;padding:0 16px;font-size:14px;font-weight:700}.planner-launch:hover{background:#c5a0563d}.choir-launch,.adoration-launch{background:#ffffff14;border-color:#ffffff4d}.choir-launch:hover,.adoration-launch:hover{background:#ffffff24;border-color:#e8d8ae94}:is(.planner-launch:focus-visible,.choir-launch:focus-visible,.adoration-launch:focus-visible){outline-offset:2px;outline:3px solid #e8d8ae8c}.workspace{grid-template-columns:minmax(360px,40%) minmax(0,1fr);height:calc(100% - 76px);transition:grid-template-columns .22s;display:grid}.shell.sidebar-collapsed .workspace{grid-template-columns:0 minmax(0,1fr)}.catalog{border-right:1px solid var(--line);background:var(--paper);opacity:1;flex-direction:column;min-width:0;padding:28px 28px 0;transition:opacity .14s,padding .22s;display:flex;overflow:hidden}.shell.sidebar-collapsed .catalog{opacity:0;pointer-events:none;border-right:0;padding-left:0;padding-right:0}.catalog-head{justify-content:space-between;align-items:end;gap:18px;margin-bottom:20px;display:flex}.shell.mass-mode .search-wrap,.shell.mass-mode .categories{display:none}.shell.mass-mode .catalog-head{align-items:flex-start;margin-bottom:12px}.shell.mass-mode .catalog-head h1{overflow-wrap:anywhere;max-width:28rem}.mass-category-group .category-label{color:var(--gold-text)}.eyebrow{color:var(--gold-text);letter-spacing:.13em;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:700}h1,h2,p{margin-top:0}h1{letter-spacing:-.02em;margin-bottom:0;font-family:Marcellus,Georgia,serif;font-size:clamp(25px,2vw,34px);font-weight:400}.song-count{color:var(--muted);flex:none;margin:0 0 4px;font-size:13px}.search-wrap{background:#fff;border:1px solid #d4d8e2;border-radius:14px;align-items:center;gap:11px;height:50px;padding:0 14px;transition:border-color .16s,box-shadow .16s;display:flex;box-shadow:0 5px 18px #1019390d}.search-wrap:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px #405d9d1f}.search-wrap>span{color:var(--blue);font-size:25px;line-height:1;transform:rotate(-15deg)}.search-wrap input{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:16px}.search-wrap input::placeholder{color:#999eae}kbd{color:#8a8fa0;background:#f6f7fa;border:1px solid #d9dce4;border-radius:6px;padding:2px 7px;font-size:12px}.categories{scroll-snap-type:x proximity;scrollbar-color:#aeb5c5 transparent;scrollbar-width:thin;grid-template-rows:repeat(2,auto);grid-auto-columns:max-content;grid-auto-flow:column;gap:8px;padding:16px 0 15px;display:grid;overflow-x:auto}.categories::-webkit-scrollbar{height:5px}.categories::-webkit-scrollbar-thumb{background:#aeb5c5;border-radius:999px}.song-list-toggle{width:100%;min-height:54px;color:var(--ink);text-align:left;cursor:pointer;background:#f5f6f9;border:1px solid #d5d8e1;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin:3px 0 10px;padding:9px 13px;display:flex}.song-list-toggle:hover{background:#eceff5}.song-list-toggle:focus-visible{outline-offset:2px;outline:3px solid #405d9d38}.song-list-toggle strong{font-size:14px;font-weight:700;display:block}.song-list-toggle small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.song-list-chevron{color:var(--blue);flex:none;font-size:22px;line-height:1}.song-results{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.catalog.song-list-collapsed .song-results{display:none}.category-chip{scroll-snap-align:start;color:#27314e;cursor:pointer;background:#fff;border:1px solid #aeb6c8;border-radius:11px;flex:none;min-height:40px;padding:9px 14px;font-size:14px;font-weight:700;transition:all .15s;box-shadow:0 2px 8px #1019390f}.category-chip:hover{border-color:var(--blue);background:#f4f6fb}.category-chip:focus-visible{outline-offset:2px;outline:3px solid #405d9d38}.category-chip[aria-pressed=true]{border-color:var(--navy);color:#fff;background:var(--navy);box-shadow:0 5px 14px #10193933}.song-list{scrollbar-color:#c7cbd5 transparent;flex:1;min-height:0;margin:0 -10px;padding:0 10px 28px;overflow-y:auto}.category-group{padding-top:10px}.category-label{color:#81869a;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:10px;margin:0 4px 8px;font-size:12px;font-weight:700;display:flex}.category-label:after{content:"";background:var(--line);flex:1;height:1px}.song-button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;grid-template-columns:34px minmax(0,1fr) 20px;align-items:center;gap:10px;width:100%;padding:12px 10px;transition:background .15s,transform .15s;display:grid}.song-button:hover{background:#f0f2f7}.song-button:active{transform:scale(.995)}.song-button.active{background:#e9edf6}.song-number{color:var(--gold-text);text-align:center;font-family:Marcellus,Georgia,serif;font-size:14px}.song-button strong{color:#28314d;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;line-height:1.35;display:block;overflow:hidden}.song-button small{color:#8a8fa0;margin-top:3px;font-size:12px;display:block}.song-arrow{color:#a5a9b6}.empty{text-align:center;color:var(--muted);padding:64px 20px}.empty>span{color:var(--gold);font-size:34px}.empty p{margin:12px 0 16px}.empty button{color:var(--blue);cursor:pointer;background:0 0;border:0;font-weight:700}.reader{background:linear-gradient(#10193906 1px, transparent 1px), var(--paper-deep);background-size:100% 36px;position:relative;overflow-y:auto}.reader:before{content:"";pointer-events:none;background:radial-gradient(at top,#c5a05621,#0000 68%);width:34%;height:260px;position:fixed}.reader-inner{width:min(860px,100% - 64px);margin:0 auto;padding:42px 0 80px;transition:width .22s;position:relative}.shell.sidebar-collapsed .reader-inner{width:min(1100px,100% - 80px)}.welcome{text-align:center;align-content:center;place-items:center;min-height:calc(100vh - 210px);display:grid}.welcome-symbol{border:1px solid var(--gold-soft);width:70px;height:70px;color:var(--gold);border-radius:50%;place-items:center;margin-bottom:24px;font-size:28px;display:grid}.welcome h2{color:var(--navy);letter-spacing:-.045em;margin:0;font-family:Marcellus,Georgia,serif;font-size:clamp(48px,7vw,80px);font-weight:400;line-height:.96}.welcome>p:not(.eyebrow){max-width:390px;color:var(--muted);margin:24px auto 0;line-height:1.7}.welcome-rule{width:180px;color:var(--gold);align-items:center;gap:12px;margin-top:34px;display:flex}.welcome-rule:before,.welcome-rule:after{content:"";background:var(--gold-soft);flex:1;height:1px}.song-header{border-bottom:1px solid var(--line);padding-bottom:28px}.song-meta{color:var(--gold-text);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:16px;font-size:13px;font-weight:700;display:flex}.song-meta span:first-child{border:1px solid var(--gold-soft);border-radius:50%;place-items:center;min-width:30px;height:30px;padding:0 8px;display:grid}.song-header h2{max-width:700px;color:var(--navy);letter-spacing:-.03em;margin:0;font-family:Marcellus,Georgia,serif;font-size:clamp(34px,4.5vw,56px);font-weight:400;line-height:1.08}.song-header h2:focus{outline:none}.song-caption{color:var(--muted);margin:13px 0 0;font-size:14px}.lyrics{padding-top:30px;font-family:Aptos,Arial,sans-serif;font-size:20px;line-height:1.72}.lyric-line,.chord-line,.lyric-space{min-height:1.15em}.lyric-line{color:#2c334b;overflow-wrap:anywhere;white-space:pre-wrap}.chord-line{color:var(--chord);white-space:pre;font-weight:700}.lyric-space{height:.65em}.chorded-line{letter-spacing:0;flex-wrap:wrap;align-items:flex-end;gap:.5em .32em;width:100%;margin:0 0 14px;font-family:Aptos,Arial,sans-serif;font-size:clamp(17px,1.35vw,20px);line-height:1.38;display:flex}.lyric-token{grid-template-rows:1.25em auto;align-items:end;width:max-content;min-width:0;max-width:100%;display:inline-grid}.inline-chord{min-height:1.2em;color:var(--chord);white-space:pre;align-self:end;font-size:.92em;font-weight:700;line-height:1.15}.token-word{color:#2c334b;overflow-wrap:anywhere;white-space:normal}.song-nav{z-index:2;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper-deep) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:18px 0 0;padding:10px 0;display:grid;position:sticky;top:0}.song-nav button{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;background:#ffffff73;border:1px solid #d5d1c7;border-radius:12px;min-width:0;min-height:42px;padding:9px 14px;overflow:hidden}.song-nav button:hover{background:#fff}.song-nav button:first-child{justify-self:start}.song-nav button:last-child{justify-self:end}.song-nav button:disabled{color:#9ba0ad;cursor:default;opacity:.7;background:#ffffff2e}.song-nav button:disabled:hover{background:#ffffff2e}.song-nav-position{min-width:62px;color:var(--gold-text);text-align:center;letter-spacing:.06em;font-size:14px;font-weight:700}.planner-view{background:var(--paper-deep);height:calc(100% - 76px);display:none;overflow:hidden}.shell.planning .workspace{display:none}.shell.planning .planner-view{display:block}.shell.planning .mobile-back{display:none}.adoration-view{background:var(--paper-deep);height:calc(100% - 76px);display:none;overflow:hidden}.shell.adoration-planning .workspace,.shell.adoration-planning .planner-view{display:none}.shell.adoration-planning .adoration-view{display:block}.shell.adoration-planning .mobile-back{display:none}.planner-layout,.adoration-layout{grid-template-columns:minmax(0,1fr) 330px;gap:24px;width:min(1240px,100% - 48px);height:100%;margin:0 auto;padding:30px 0;display:grid}.planner-main,.adoration-main,.history-panel{scrollbar-color:#c7cbd5 transparent;min-width:0;overflow-y:auto}.planner-main,.adoration-main{padding-right:4px}.planner-heading,.history-heading,.step-heading,.review-heading{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.planner-heading>div,.review-heading>div,.step-heading>div{min-width:0}.planner-heading{margin-bottom:18px}.planner-heading h1{color:var(--navy);font-size:clamp(28px,3vw,42px)}.planner-new,.planner-secondary,.history-action,.review-change{min-height:40px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #c9ceda;border-radius:11px;padding:0 14px;font-size:14px;font-weight:700}.planner-new:hover,.planner-secondary:hover,.history-action:hover,.review-change:hover{border-color:var(--blue);background:#f6f8fc}.planner-progress{min-height:28px;margin-bottom:12px}.progress-meta{color:var(--muted);justify-content:space-between;gap:16px;margin-bottom:7px;font-size:13px;font-weight:600;display:flex}.progress-track{background:#dfe3eb;border-radius:999px;height:6px;overflow:hidden}.progress-value{border-radius:inherit;background:linear-gradient(90deg, var(--gold), var(--blue));height:100%;transition:width .18s}.progress-groups{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:10px;display:grid}.progress-group{color:#505973;cursor:pointer;background:#ffffffb8;border:1px solid #d2d6df;border-radius:9px;min-height:36px;padding:6px 8px;font-size:12px;font-weight:700;line-height:1.2}.progress-group:hover{border-color:var(--blue)}.progress-group.active{border-color:var(--navy);color:#fff;background:var(--navy)}.progress-group.complete:not(.active):before{content:"✓ ";color:#1f6a49}.planner-card,.adoration-card,.history-panel{background:#ffffffdb;border:1px solid #d8d7d1;border-radius:18px;box-shadow:0 12px 35px #10193912}.planner-card,.adoration-card{padding:clamp(20px,3vw,34px)}.history-panel{padding:22px}.planner-card h2,.adoration-card h2,.history-panel h2{color:var(--navy);margin:0;font-family:Marcellus,Georgia,serif;font-weight:400}.planner-card h2,.adoration-card h2{font-size:clamp(25px,3vw,34px)}.history-panel h2{font-size:25px}.planner-lead{max-width:700px;color:var(--muted);margin:10px 0 24px;font-size:16px;line-height:1.6}.setup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.planner-field{gap:7px;min-width:0;display:grid}.planner-field>span{color:#343d58;font-size:14px;font-weight:700}.planner-field input,.planner-field select,.planner-search{width:100%;min-width:0;height:48px;color:var(--ink);background:#fff;border:1px solid #cdd2dd;border-radius:12px;outline:0;padding:0 13px;font-size:16px}.planner-field input:focus,.planner-field select:focus,.planner-search:focus{border-color:var(--blue);box-shadow:0 0 0 3px #405d9d1f}.setup-note{border-left:3px solid var(--gold);color:#505872;background:#f7f3e9;border-radius:0 10px 10px 0;margin:18px 0 0;padding:13px 15px;font-size:14px;line-height:1.5}.draft-restored,.auto-explanation,.review-alert,.review-ready{border-radius:10px;margin:0 0 18px;padding:12px 14px;font-size:14px;line-height:1.5}.draft-restored,.review-ready{color:#21573f;background:#e9f5ee;border:1px solid #b9ddc8}.auto-explanation{color:#4f4b3c;background:#f5f0e2;border:1px solid #ded0a8}.review-alert{color:#783828;background:#fff0ec;border:1px solid #edc1b6}.planner-actions,.export-actions,.step-actions,.history-actions{flex-wrap:wrap;gap:10px;display:flex}.planner-actions{margin-top:24px}.step-actions{justify-content:space-between;margin-top:22px}.export-actions{margin-top:24px}.planner-primary,.export-button{border:1px solid var(--navy);color:#fff;background:var(--navy);cursor:pointer;border-radius:12px;min-height:46px;padding:0 18px;font-size:15px;font-weight:700}.reader-link{text-align:center;background:#936f28;border-color:#936f28;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.copy-reader-link{min-height:46px}.reader-link-note{color:#505a72;margin:10px 0 0;font-size:13px;line-height:1.45}.planner-primary:hover,.export-button:hover{background:var(--navy-soft)}.export-button.reader-link:hover{background:#755616}.planner-primary:disabled,.export-button:disabled,.history-action:disabled{opacity:.62;cursor:wait}.planner-primary.auto{background:#936f28;border-color:#936f28}.planner-primary.auto:hover{background:#755616}.step-kicker{color:var(--gold-text);letter-spacing:.11em;text-transform:uppercase;margin:0 0 5px;font-size:12px;font-weight:800}.selection-counter{color:var(--navy);background:#edf0f6;border-radius:999px;flex:none;padding:7px 10px;font-size:13px;font-weight:800}.selection-counter.pending{color:#744317;background:#fff0d6}.selection-counter.omitted{color:#596173;background:#eceef2}.step-help{color:var(--muted);margin:9px 0 18px;font-size:14px;line-height:1.5}.song-picker-tools{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px;display:grid}.toggle-all{color:#404963;cursor:pointer;background:#fff;border:1px solid #cdd2dd;border-radius:12px;align-items:center;gap:8px;min-height:48px;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.toggle-all input{width:18px;height:18px}.choice-list{scrollbar-color:#bfc4d0 transparent;gap:8px;max-height:min(48vh,430px);padding:2px 4px 4px 2px;display:grid;overflow-y:auto}.song-choice,.none-choice{width:100%;min-height:54px;color:var(--ink);text-align:left;background:#fff;border:1px solid #d8dbe3;border-radius:12px;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:9px 12px;display:grid}.none-choice{cursor:pointer;background:#f8f8f6;grid-template-columns:38px minmax(0,1fr);margin-bottom:10px}.song-choice:hover,.none-choice:hover{border-color:var(--blue)}.song-choice.selected,.none-choice.selected{border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);background:#edf0f7}.choice-marker{width:30px;height:30px;color:var(--blue);border:1px solid #c7ccd8;border-radius:50%;place-items:center;font-weight:800;display:grid}.selected .choice-marker{border-color:var(--navy);color:#fff;background:var(--navy)}.choice-copy{min-width:0}.choice-copy strong{color:#252e49;font-size:14px;line-height:1.35;display:block}.choice-copy small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.choice-copy .choice-details{color:#505a75;font-size:13px;font-weight:700}.variant-badge{color:#5b3c08;font-weight:800}.choice-copy .choice-lyric{color:#6a7084;text-overflow:ellipsis;white-space:nowrap;max-width:680px;font-size:13px;line-height:1.35;overflow:hidden}.choice-number{color:var(--gold-text);white-space:nowrap;align-self:start;padding-top:2px;font-family:Marcellus,Georgia,serif;font-size:13px}.choice-actions{flex-wrap:wrap;grid-column:2/-1;gap:8px;margin-top:2px;display:flex}.choice-preview,.choice-select{min-height:38px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #c8cdd8;border-radius:10px;padding:0 12px;font-size:13px;font-weight:800}.choice-preview:hover{border-color:var(--blue);background:#f6f8fc}.choice-select{border-color:var(--navy);color:#fff;background:var(--navy)}.choice-select:hover{background:var(--navy-soft)}.selected .choice-select{background:#8b5b16;border-color:#8b5b16}:where(.planner-new,.planner-secondary,.planner-primary,.export-button,.toggle-all,.none-choice,.choice-preview,.choice-select,.review-change,.history-action,.progress-group):focus-visible{outline-offset:2px;outline:3px solid #405d9d57}.song-preview{background:#f8f7f3;border-top:1px solid #d9dce5;border-radius:0 0 9px 9px;grid-column:1/-1;min-width:0;margin-top:3px;padding:14px}.preview-meta{color:#65708b;flex-wrap:wrap;justify-content:space-between;gap:6px 14px;margin-bottom:12px;font-size:12px;display:flex}.preview-meta strong{color:var(--navy);font-size:13px}.preview-lines{color:#2d344b;gap:8px;min-width:0;font-family:Aptos,Arial,sans-serif;font-size:14px;line-height:1.38;display:grid}.preview-chorded-line{flex-wrap:wrap;align-items:end;gap:.5em .34em;min-width:0;display:flex}.preview-token{grid-template-rows:1.05em auto;align-items:end;min-width:0;display:inline-grid}.preview-chord{min-height:1.05em;color:var(--chord);white-space:pre;font-weight:800;line-height:1}.preview-word{overflow-wrap:anywhere}.preview-plain,.preview-intro{margin:0}.preview-intro{color:#58617a;font-size:13px;font-style:italic}.picker-empty{color:var(--muted);text-align:center;margin:12px 0 0;padding:24px}.planner-warning{color:#8a3d2a;min-height:20px;margin:9px 0 0;font-size:13px;font-weight:700}.review-heading{align-items:flex-start}.review-meta{color:var(--muted);margin:8px 0 22px;font-size:14px}.review-list{gap:12px;display:grid}.review-group{background:#f8f8f6;border:1px solid #d8dbe3;border-radius:13px;overflow:hidden}.review-group summary{min-height:46px;color:var(--navy);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:9px 13px;font-size:14px;font-weight:800;display:flex}.review-group summary small{color:#5e677e;font-size:13px}.review-group-items{gap:8px;padding:0 8px 8px;display:grid}.review-item{background:#fff;border:1px solid #dcdde2;border-radius:12px;grid-template-columns:minmax(135px,.34fr) minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 13px;display:grid}.review-item.pending{background:#fffaf2;border-color:#e5b67b}.review-item.omitted{background:#f4f5f7}.review-part{color:var(--navy);letter-spacing:.03em;font-size:13px;font-weight:800}.review-songs{color:#3f475e;min-width:0;font-size:14px;line-height:1.45}.review-songs.empty-selection{color:#8a8f9e;font-style:italic}.review-status{color:#506079;text-transform:uppercase;margin-bottom:3px;font-size:12px;font-style:normal;font-weight:800;display:block}.review-status.selected{color:#1f6a49}.review-status.pending{color:#8a4b19}.review-status.omitted{color:#626a7c}.review-change{min-height:36px;padding:0 11px}.saved-note{color:#46516d;margin:20px 0 0;font-size:14px}.adoration-setup-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.adoration-selected-block,.adoration-catalog-block{border-top:1px solid var(--line);margin-top:26px;padding-top:24px}.adoration-section-heading{justify-content:space-between;align-items:end;gap:16px;display:flex}.adoration-section-heading h2{font-size:clamp(22px,2.4vw,29px)}.adoration-section-heading>span{color:#fff;background:var(--navy);text-align:center;border-radius:999px;min-width:54px;padding:7px 10px;font-size:13px;font-weight:800}.adoration-help{color:var(--muted);margin:8px 0 14px;font-size:14px;line-height:1.5}.adoration-selected-list,.adoration-available-list{gap:8px;display:grid}.adoration-selected-song{background:#fff;border:1px solid #d8dce5;border-radius:12px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;padding:10px 11px;display:grid}.adoration-order{color:#fff;background:var(--navy);border-radius:50%;place-items:center;width:30px;height:30px;font-size:12px;font-weight:800;display:grid}.adoration-selected-copy{min-width:0}.adoration-selected-copy strong{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:1.3;display:block;overflow:hidden}.adoration-selected-copy small{color:var(--muted);margin-top:3px;font-size:12px;display:block}.adoration-order-actions{gap:5px;display:flex}.adoration-order-actions button{width:34px;height:34px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #cbd0da;border-radius:9px;font-size:16px;font-weight:800}.adoration-order-actions button:hover:not(:disabled){border-color:var(--blue);background:#f4f6fb}.adoration-order-actions button:disabled{opacity:.35;cursor:default}.adoration-order-actions .remove{color:#8b372a}.adoration-tools{grid-template-columns:minmax(0,1fr) minmax(190px,.38fr);gap:10px;margin:14px 0 12px;display:grid}.adoration-tools select{min-width:0;height:48px;color:var(--ink);background:#fff;border:1px solid #cdd2dd;border-radius:12px;outline:0;padding:0 12px;font-size:14px}.adoration-tools select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #405d9d1f}.adoration-available-list{scrollbar-color:#c7cbd5 transparent;max-height:430px;padding-right:3px;overflow-y:auto}.adoration-song-option{background:#fff;border:1px solid #dde0e7;border-radius:12px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;padding:12px;display:grid}.adoration-song-option.selected{background:#f2f4f9;border-color:#b6c0d9}.adoration-option-copy{min-width:0}.adoration-option-copy strong{color:var(--navy);font-size:15px;line-height:1.3;display:block}.adoration-option-copy small,.adoration-option-copy>span{color:var(--muted);margin-top:3px;font-size:12px;line-height:1.35;display:block}.adoration-option-copy>span{color:#525d78;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.adoration-song-option>button{border:1px solid var(--navy);color:#fff;background:var(--navy);cursor:pointer;border-radius:10px;min-height:38px;padding:0 12px;font-size:13px;font-weight:800}.adoration-song-option>button:disabled{color:#687188;cursor:default;background:#e9ebf0;border-color:#c8cdd7}.adoration-empty{color:var(--muted);text-align:center;background:#fafaf8;border:1px dashed #cbd0da;border-radius:12px;margin:0;padding:22px 12px;font-size:14px}.adoration-message{min-height:22px;margin-top:15px}.adoration-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.adoration-save{background:linear-gradient(135deg, var(--navy), #273967)}:where(.adoration-launch,.adoration-order-actions button,.adoration-song-option>button,.adoration-tools select):focus-visible{outline-offset:2px;outline:3px solid #405d9d57}.history-heading{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;padding-bottom:16px}.history-heading::-webkit-details-marker{display:none}.history-heading::marker{content:""}.history-toolbar{justify-content:space-between;align-items:center;gap:10px;padding-top:12px;display:flex}.history-sync{color:#536078;margin:0;font-size:12px;line-height:1.35}.history-sync[data-state=error]{color:#8b372a}.history-sync[data-state=saving]{color:#6d4d0d}.history-refresh{min-height:34px;color:var(--navy);font:inherit;cursor:pointer;background:#fff;border:1px solid #c9ceda;border-radius:10px;flex:none;padding:0 10px;font-size:12px;font-weight:750}.history-refresh:hover{border-color:var(--blue);background:#f6f8fc}.history-count{color:#fff;background:var(--navy);border-radius:50%;place-items:center;min-width:34px;height:34px;font-size:13px;font-weight:800;display:grid}.history-list{gap:10px;padding-top:14px;display:grid}.history-empty{color:var(--muted);text-align:center;padding:30px 8px;font-size:14px;line-height:1.55}.history-card{background:#fff;border:1px solid #d9dce4;border-radius:12px;padding:13px}.history-card.draft{background:#fffaf1;border-color:#e2b876}.history-state{color:#83491b;font-weight:800}.history-card strong{color:var(--navy);font-size:14px;line-height:1.35;display:block}.history-card small{color:var(--muted);margin:4px 0 2px;font-size:12px;display:block}.history-owner{color:#72510f;margin:0 0 10px;font-size:12px;font-weight:750;display:block}.history-actions{gap:6px}.history-action{justify-content:center;align-items:center;min-height:34px;padding:0 9px;font-size:12px;text-decoration:none;display:inline-flex}.history-reader-link{color:#684607;background:#fffaf0;border-color:#b28a3d}.history-action.danger{color:#8b372a}.history-action.danger:hover{background:#fff2ef;border-color:#bd6a5d}@media (max-width:900px){body{background:var(--paper)}.shell{border:0;border-radius:0;width:100%;height:100dvh;min-height:0;margin:0}.topbar{height:68px;padding:0 18px}.sidebar-toggle{display:none}.topbar-start{gap:0}.workspace{height:calc(100% - 68px);display:block}.catalog{border-right:0;height:100%;padding:24px 18px 0}.reader{height:100%;display:none}.shell.reading .catalog{display:none}.shell.reading .reader{display:block}.shell.reading .mobile-back{display:inline-flex}.shell.reading:not(.planning) .brand{display:none}.shell.reading:not(.planning) .topbar{justify-content:flex-end}.shell.reading .mobile-back{order:-1}.shell.sidebar-collapsed .catalog{opacity:1;pointer-events:auto;border-right:0;padding:24px 18px 0}.reader-inner{width:min(100% - 28px,700px);padding:30px 0 64px}.shell.sidebar-collapsed .reader-inner{width:min(100% - 28px,700px)}.reader:before{width:100%}.song-header h2{font-size:clamp(32px,10vw,46px)}.lyrics{padding-top:24px;font-size:16px;line-height:1.62}.chorded-line{gap:.52em .3em;margin-bottom:13px;font-size:clamp(16px,4.1vw,18px)}.inline-chord{font-size:1em}.category-chip{min-height:42px;font-size:15px}kbd{display:none}.planner-view,.adoration-view{height:calc(100% - 68px);overflow-y:auto}.planner-layout,.adoration-layout{width:min(100% - 28px,760px);height:auto;padding:22px 0 50px;display:block}.adoration-layout{flex-direction:column;display:flex}.adoration-history-panel{order:-1;margin-top:0;margin-bottom:18px}.planner-main,.adoration-main,.history-panel{overflow:visible}.planner-main,.adoration-main{padding-right:0}.history-panel{margin-top:18px}}@media (max-width:600px){body{min-width:0}.reader{overflow-x:hidden}.reader-inner,.shell.sidebar-collapsed .reader-inner{width:calc(100% - 20px)}.song-header,.lyrics,.chorded-line{min-width:0;max-width:100%}.song-header h2,.lyric-line,.chord-line,.inline-chord,.token-word{overflow-wrap:anywhere}.chord-line,.inline-chord{white-space:pre-wrap;max-width:100%}.lyrics>.lyric-space+.lyric-space{display:none}.reader.mobile-song-fit{overflow:hidden}.reader-inner.mobile-song-fit,.shell.sidebar-collapsed .reader-inner.mobile-song-fit{--song-body-size:15px;--song-title-size:23px;--song-meta-size:11px;width:100%;height:100%;padding:6px 10px;overflow:hidden}.reader-inner.mobile-song-fit article{width:100%;max-height:100%}.reader-inner.mobile-song-fit .song-header{padding-bottom:5px}.reader-inner.mobile-song-fit .song-meta{font-size:var(--song-meta-size);gap:5px;margin-bottom:4px;line-height:1.1}.reader-inner.mobile-song-fit .song-meta span:first-child{min-width:1.9em;height:1.9em;padding-inline:.4em}.reader-inner.mobile-song-fit .song-header h2{max-width:100%;font-size:var(--song-title-size);line-height:1.03}.reader-inner.mobile-song-fit .song-caption{display:none}.reader-inner.mobile-song-fit .lyrics{font-size:var(--song-body-size);padding-top:5px;line-height:1.32}.reader-inner.mobile-song-fit .lyric-line,.reader-inner.mobile-song-fit .chord-line,.reader-inner.mobile-song-fit .lyric-space{min-height:1.08em}.reader-inner.mobile-song-fit .lyric-space{height:.38em}.reader-inner.mobile-song-fit .chorded-line{font-size:var(--song-body-size);gap:.34em .22em;margin-bottom:.38em;line-height:1.2}.reader-inner.mobile-song-fit .lyric-token{grid-template-rows:1.14em auto}.reader-inner.mobile-song-fit .inline-chord{min-height:1.05em;line-height:1.05}.reader-inner.mobile-song-fit .song-nav{-webkit-backdrop-filter:none;backdrop-filter:none;gap:6px;margin-top:5px;padding:4px 0;position:relative;top:auto}.reader-inner.mobile-song-fit .song-nav button{border-radius:8px;min-height:28px;padding:4px 8px;font-size:12px}.reader-inner.mobile-song-fit .song-nav-position{min-width:40px;font-size:11px}.topbar{gap:8px;padding:0 12px}.planner-launch,.choir-launch,.adoration-launch{min-height:40px;padding:0 11px}.topbar .brand>span:last-child,.shell.planning .brand-mark{display:none}.shell.planning .brand{gap:0}.shell.adoration-planning .brand-mark{display:none}.shell.adoration-planning .brand{gap:0}.planner-layout,.adoration-layout{width:calc(100% - 20px);padding-top:16px}.planner-heading{align-items:flex-start}.planner-heading h1{font-size:27px}.planner-new{min-height:38px;padding:0 10px}.planner-card,.adoration-card,.history-panel{border-radius:15px}.planner-card,.adoration-card{padding:19px 15px}.history-panel{padding:18px 15px}.setup-grid,.adoration-setup-grid,.adoration-tools{grid-template-columns:1fr}.adoration-available-list{max-height:none;overflow:visible}.song-picker-tools{grid-template-columns:1fr}.toggle-all{justify-content:center}.choice-list{max-height:none;overflow:visible}.progress-groups{grid-template-columns:repeat(2,minmax(0,1fr))}.song-choice{grid-template-columns:34px minmax(0,1fr) auto;padding-inline:10px}.choice-actions{grid-column:2/-1}.choice-copy .choice-lyric{white-space:normal}.review-item{grid-template-columns:minmax(0,1fr) auto;gap:7px 10px}.review-part,.review-songs{grid-column:1}.review-change{grid-area:1/2/span 2}.planner-actions,.export-actions,.adoration-actions{display:grid}.planner-actions>button,.export-actions>button,.export-actions>a,.adoration-actions>button,.adoration-actions>a{width:100%}}@media (max-width:420px){.topbar{padding-inline:10px}.brand{gap:8px}.brand-mark{width:34px;height:34px}.brand strong{width:100px;font-size:16px;line-height:1.05}.brand small{display:none}.planner-launch,.choir-launch,.adoration-launch{padding:0 8px;font-size:12px}.topbar-actions{gap:6px}.choice-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.choice-preview,.choice-select{width:100%;padding-inline:8px}.catalog-head{align-items:start}.song-count{margin-top:8px}.song-nav{gap:6px}.song-nav button{padding-inline:9px;font-size:13px}}@media (max-width:360px){.topbar .brand>span:last-child{display:none}.topbar-actions{gap:6px}.planner-launch,.choir-launch,.adoration-launch{padding-inline:7px;font-size:11px}.adoration-selected-song{grid-template-columns:30px minmax(0,1fr)}.adoration-order-actions{grid-column:1/-1;justify-content:flex-end}.adoration-song-option{grid-template-columns:minmax(0,1fr)}.adoration-song-option>button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}
