.practiceWeek{margin-top:8px}
.homeOrder{margin:12px 0}.homeOrderRow{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line)}.homeOrderRow:first-child{border-top:0}.homeOrderRow .hn{width:27px;height:27px;display:grid;place-items:center;background:var(--soft);border-radius:9px;color:var(--accent);font-weight:850}.homeOrderRow span{display:block;font-size:11px;color:var(--muted);margin-top:2px}
.practiceWeek{display:grid;gap:10px}.practiceService{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.practiceSummary{width:100%;border-radius:0;background:#fff;color:var(--ink);display:flex;align-items:center;justify-content:space-between;text-align:left;padding:14px}.practiceMeta{font-size:12px;color:var(--muted);margin-top:3px}.practiceSongs{padding:0 14px 8px}.practiceSong{display:grid;grid-template-columns:26px 1fr auto;gap:8px;align-items:center;padding:9px 0;border-top:1px solid var(--line);cursor:pointer}.practiceSong .n{width:23px;height:23px;border-radius:8px;background:var(--soft);display:grid;place-items:center;color:var(--accent);font-size:11px;font-weight:850}.practiceSong .name{font-weight:750}.practiceSong .type{font-size:10px;color:var(--muted);text-align:right}.practiceExpanded{display:none;padding:0 14px 14px}.practiceService.open .practiceExpanded{display:block}.practiceDetails{background:var(--soft);border-radius:12px;padding:11px}
.serviceToolbar{display:flex;gap:8px;align-items:end;flex-wrap:wrap}.serviceToolbar>div{flex:1;min-width:160px}.serviceCards{display:grid;gap:10px}.serviceCard{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}.serviceCard .meta{font-size:12px;color:var(--muted);margin-top:4px}.serviceCard .summary{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.serviceWorkspace{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.serviceFlow.editing .flowHandle,.serviceFlow.editing .orderDelete,.serviceFlow.editing .moveButtons{display:flex}.flowRow{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--line)}.flowRow:first-child{border-top:0}.flowHandle{display:none;width:30px;height:30px;border-radius:9px;background:var(--soft);align-items:center;justify-content:center;color:var(--accent);font-weight:900;cursor:grab;user-select:none}.flowText{min-width:0}.flowText b{display:block}.flowText span{display:block;font-size:11px;color:var(--muted);margin-top:2px}.orderDelete{display:none;grid-column:2;margin-top:2px;width:max-content}.moveButtons{display:none;gap:5px;grid-column:2}.moveButtons button{padding:6px 9px}.dragging{opacity:.55}.addProgramBtn{width:100%;margin-top:8px;background:var(--soft);color:var(--accent-dark)}
header{padding:18px 18px 14px;border-bottom:0}header:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;background:#a47b93}main{max-width:900px;padding:16px 16px 90px}h1{font-size:26px}h2{font-size:18px;margin:22px 0 10px}.card{border-radius:16px;padding:15px;margin:10px 0;box-shadow:0 2px 8px #00000008}.muted{font-size:13px}.pill{padding:5px 9px;font-size:12px;color:var(--accent)}button,.button{border-radius:11px;padding:10px 12px;font-weight:700}.secondary{background:#f3edf2;color:var(--ink);border:0}.hero{padding:20px;margin:8px 0 18px;box-shadow:0 8px 24px #58404f22}.hero .muted{color:#eadfe6}.greeting{font-size:28px;font-weight:850;margin:4px 0}.calendar-entry{width:100%;display:flex;text-align:left;justify-content:space-between;background:white;color:var(--ink);font-weight:400}.calendar-entry b{font-weight:700}.calendar-entry>span{font-size:22px;color:var(--accent)}.stat{padding:14px;background:white;border:1px solid var(--line);border-radius:14px}.big{font-size:32px;font-weight:800}.overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.practiceService summary{padding:14px}.practiceService{margin:0}.directorOverview{margin:12px 0}nav{left:0;right:0;transform:none;max-width:none;border:0;border-top:1px solid var(--line);overflow-x:auto}nav button{min-width:78px;flex:1;display:block;line-height:14px;padding:10px 5px;font-size:11px;border-radius:0;min-height:0}nav .nav-icon{display:block;width:22px;height:22px;margin:0 auto 4px;stroke-width:1.75;pointer-events:none}nav button.active{color:var(--accent);background:#f5eff4;box-shadow:inset 0 2px 0 var(--accent)}nav button:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}@media(min-width:700px){nav{left:50%;transform:translateX(-50%);max-width:900px;width:100%}}@media(max-width:699px){main{padding:16px 16px 90px}.overview-grid{grid-template-columns:repeat(2,1fr)}}

.libraryGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.libraryCard{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:15px;min-height:85px;justify-content:flex-start;text-align:left;box-shadow:0 3px 12px #3d29330b}.libraryCard[aria-pressed=true]{border-color:var(--accent);background:var(--soft)}@media(min-width:700px){.libraryGrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
.homeCalendar{margin:20px 0 22px}.homeCalendarTitle h2{margin:0 0 3px}.calendarControls{margin:12px 0 8px}.scopeTabs{display:flex;background:var(--soft);border-radius:13px;padding:3px;gap:3px;overflow-x:auto}.scopeTabs button{flex:1;min-width:max-content;background:transparent;color:var(--accent-dark);padding:9px 12px}.scopeTabs button[aria-pressed=true]{background:#fff;box-shadow:0 1px 5px #00000012}.homeFilters{display:flex;gap:7px;overflow-x:auto;padding:9px 1px 5px;scrollbar-width:none}.homeFilters::-webkit-scrollbar{display:none}.homeFilters button{white-space:nowrap;background:#fff;color:var(--accent-dark);border:1px solid var(--line);padding:8px 11px}.homeFilters button[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.homeFilters button[aria-pressed=true]:before{content:'✓ ';font-weight:900}.homeCalendarList{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 2px 8px #00000008}.homeCalendarList>.empty{border:0}.homeEvent{display:grid;grid-template-columns:86px 1fr auto;gap:12px;align-items:center;width:100%;min-height:66px;border:0;border-top:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink);text-align:left;padding:11px 13px}.homeEvent:first-child{border-top:0}.homeEvent:hover{background:#fbf9fb}.homeEvent.mine{border-left:4px solid var(--accent)}.homeEventDate b{display:inline-block;margin-right:5px;font-size:11px;color:var(--accent);letter-spacing:.04em}.homeEventDate{font-size:12px;font-weight:750}.homeEventInfo{min-width:0}.homeEventInfo>b,.homeEventInfo>small{display:block}.homeEventInfo>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}.homeEventWhen{font-size:11px;color:var(--muted);text-align:right;white-space:nowrap}.homeEventWhen i{font-style:normal;font-size:19px;color:var(--accent);margin-left:6px}.calendarScopeTabs{margin:12px 0}.calendarCategoryFilters{margin:4px 0 10px}.calendarViewRow{margin:12px 0}@media(max-width:600px){.homeCalendarTitle{align-items:flex-start}.homeCalendarTitle .secondary{font-size:12px}.homeEvent{grid-template-columns:72px minmax(0,1fr) auto;gap:8px;padding:10px}.homeEventWhen{font-size:10px}.homeEventWhen i{display:none}.scopeTabs button{font-size:12px}}
