:root{--primary:#173f45;--primary-2:#1f5d66;--mint:#73ddd3;--bg:#f5efe3;--surface:#fffdf8;--surface-2:#f0e6d2;--line:#e3d8c7;--text:#173033;--muted:#738284;--blue:#5b88a1;--blue-soft:#dff0f8;--yellow:#b99a26;--yellow-soft:#f5e8b7;--green:#61956f;--green-soft:#dcefdc;--danger:#a95145;--danger-soft:#f2d9d4;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--bg);color:var(--text);overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.62}.appShell{min-height:100vh;display:grid;grid-template-columns:288px minmax(0,1fr)}.sidebar{min-height:100vh;background:#113f45;color:#fff;padding:34px 24px;display:flex;flex-direction:column;gap:26px;z-index:30}.brand{display:flex;align-items:center;gap:14px;font-size:20px;min-width:0}.brand strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logoMark{width:44px;height:44px;position:relative;flex:0 0 auto}.logoMark:before,.logoMark:after,.logoMark span{content:"";position:absolute;left:0;height:9px;border-radius:9px;background:var(--mint);transform:skew(-22deg)}.logoMark:before{top:6px;width:42px}.logoMark span{top:18px;width:32px}.logoMark:after{top:30px;width:22px}.sideTitle{font-weight:800;margin:8px 0 0}.navList{display:grid;gap:12px;border-top:1px solid rgba(255,255,255,.22);border-bottom:1px solid rgba(255,255,255,.22);padding:22px 0}.navItem{height:58px;border:0;border-radius:14px;background:transparent;color:#dceff0;display:grid;grid-template-columns:22px minmax(0,1fr);gap:12px;align-items:center;text-align:left;padding:0 14px}.navItem.active{background:#226871;color:#fff}.navItem b,.navItem small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.navItem small{font-size:11px;opacity:.86;margin-top:2px}.sideFooter{margin-top:auto;display:grid;gap:12px}.accountBox{min-width:0;display:grid;grid-template-columns:38px minmax(0,1fr) 34px;gap:10px;align-items:center;border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:12px;background:#ffffff12}.accountAvatar{width:38px;height:38px;border-radius:12px;background:var(--mint);color:var(--primary);display:grid;place-items:center;font-weight:900}.accountBox span{min-width:0}.accountBox b,.accountBox small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.accountBox b{font-size:12px}.accountBox small{font-size:11px;color:#cfe3e4;margin-top:3px}.accountBox button{width:34px;height:34px;border:0;border-radius:10px;background:#ffffff1a;color:#fff;display:grid;place-items:center}.accountBox button:hover{background:#ffffff2e}.versionBox{border:1px solid rgba(255,255,255,.18);border-radius:16px;padding:18px;background:#ffffff0d;display:grid;gap:8px}.versionBox span{font-size:12px;line-height:1.45;color:#d3e7e8}.workspace{min-width:0;display:grid;grid-template-rows:auto 1fr}.topbar{min-width:0;min-height:88px;background:#fffdf8;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px clamp(24px,3vw,38px)}.topbarCopy{min-width:0;flex:1}.topbar h1{font-size:30px;line-height:1.08;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar p,.card p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.topbarActions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;min-width:0}.content{min-width:0;padding:clamp(18px,2.4vw,36px)}.page{width:100%;min-width:0}.gridToday{display:grid;grid-template-columns:minmax(0,1fr) clamp(244px,21vw,300px);gap:24px;align-items:start}.card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:28px;min-width:0}.cardHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px;min-width:0}.cardHeader>div:first-child{min-width:0}.card h2{font-size:24px;line-height:1.1;margin:0 0 8px}.btn{min-height:38px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#173f45;font-weight:800;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:normal;text-align:center;line-height:1.15;min-width:0}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.ghost{background:transparent}.btn.small{min-height:31px;font-size:11px;padding:0 13px}.iconText svg,.iconOnly svg{flex:0 0 auto}.iconOnly{width:38px;height:38px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);display:inline-grid;place-items:center;flex:0 0 auto}.menuButton,.closeSide{display:none}.headerTools{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap;min-width:0}.dateInput,.selectInput,.modalForm input,.modalForm select,.settingsForm input{height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px;color:var(--text);min-width:0;max-width:100%}.selectInput{min-width:190px}.legend{display:flex;gap:clamp(18px,4vw,72px);align-items:center;background:var(--surface-2);border:1px solid var(--line);border-radius:16px;padding:16px 20px;margin-bottom:16px;flex-wrap:wrap}.legend span{display:flex;align-items:center;gap:10px;font-weight:800;font-size:13px}.dot{width:8px;height:8px;border-radius:50%;display:inline-block;flex:0 0 auto;background:var(--blue)}.dot.wait{background:var(--yellow)}.dot.done{background:var(--green)}.dot.free{background:var(--blue)}.dot.cancelled{background:var(--danger)}.slotList{display:grid;gap:12px}.slot{min-width:0;border:1px solid var(--line);border-radius:16px;background:#fffaf2;padding:14px;display:grid;grid-template-columns:minmax(124px,150px) minmax(0,1fr) 150px 236px;gap:14px;align-items:center;overflow:hidden}.slot.clickable{cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.slot.clickable:hover{box-shadow:0 8px 24px #17303314;transform:translateY(-1px)}.slot.clickable:focus-visible{outline:3px solid rgba(31,93,102,.22);outline-offset:2px}.slot.wait{border-color:#d8c15c}.slot.done{border-color:#9fcba9}.slot.free{background:#fbf7ef}.slot.cancelled{border-color:#d8aaa3;background:#fff7f5}.slotTime{font-weight:900;display:flex;gap:12px;align-items:center;white-space:nowrap;min-width:0}.slotPerson{min-width:0}.slotPerson strong,.slotPerson small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slotPerson small{color:var(--muted);margin-top:4px;font-size:12px}.chip{min-height:28px;border-radius:999px;padding:6px 14px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:900;white-space:normal;text-align:center;line-height:1.1;justify-self:end;min-width:0}.slot>.chip{width:150px;justify-self:center}.chip.free{background:var(--blue-soft);border:1px solid #b7d9e8;color:#38677c}.chip.wait{background:var(--yellow-soft);border:1px solid #d7c16e;color:#745e13}.chip.done{background:var(--green-soft);border:1px solid #afd6b6;color:#3b744a}.slotActions{width:236px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;justify-self:end}.slotActions>.btn:only-child{grid-column:1/-1}.bookingActions{display:flex;gap:8px;justify-content:flex-end;align-items:center;min-width:0;max-width:100%;flex-wrap:wrap}.summary{display:grid;gap:26px}.summaryCard{padding:24px}.statBox{background:var(--surface-2);border:1px solid var(--line);border-radius:16px;padding:22px;display:grid;gap:16px}.statBox.slim{background:var(--surface-2)}.statLine{display:flex;align-items:center;justify-content:space-between;gap:14px;font-size:13px}.statLine span{display:flex;align-items:center;gap:10px;color:#385154}.statLine b{font-size:16px;white-space:nowrap}.statsGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:18px}.metric{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;gap:10px}.metric span{color:var(--muted);font-size:13px}.metric b{font-size:30px}.calendarCard{overflow:hidden}.segmented{display:flex;gap:6px;background:#f2eadc;border:1px solid var(--line);border-radius:12px;padding:4px;max-width:100%;overflow:auto}.segmented button{border:0;border-radius:9px;background:transparent;padding:8px 12px;font-weight:800;color:#385154;white-space:nowrap}.segmented .active{background:#fff}.calendarGrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;overflow:visible;padding-bottom:4px}.calendarGrid.month{grid-template-columns:repeat(7,minmax(120px,1fr))}.calendarGrid.day,.calendarGrid.today{grid-template-columns:minmax(0,1fr)}.dayCol{min-width:0;min-height:260px;border:1px solid var(--line);border-radius:14px;background:#fbf8f1;padding:10px;display:grid;align-content:start;gap:10px}.dayHead{display:grid;gap:2px}.dayHead small{color:var(--muted)}.calSlot{min-width:0;border:1px solid var(--line);border-radius:12px;background:#fff;padding:9px;text-align:left;display:grid;gap:4px;color:var(--text);overflow:hidden}.calSlot strong,.calSlot span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calSlot strong{font-size:12px}.calSlot span{font-size:11px;color:var(--muted)}.calSlot.wait{border-color:#d8c15c;background:var(--yellow-soft)}.calSlot.done{border-color:#9fcba9;background:var(--green-soft)}.calSlot.free{border-color:#b7d9e8;background:var(--blue-soft)}.calSlot.cancelled{border-color:#d8aaa3;background:var(--danger-soft)}.currentDateInput{background:#f5f0e7;color:#385154;cursor:default}.calendarControls{display:grid;justify-items:end;gap:10px;min-width:0}.calendarViewToggle{width:max-content}.calendarDateNav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.calendarWeekStrip,.calendarMonthGrid{display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:8px;margin-bottom:22px}.calendarWeekStrip button,.calendarMonthGrid button{min-height:82px;border:1px solid var(--line);border-radius:14px;background:#fbf8f1;color:var(--text);display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:5px;text-align:left;padding:12px}.calendarWeekStrip button span,.calendarMonthGrid button span{font-size:11px;font-weight:900;text-transform:uppercase;color:var(--muted)}.calendarWeekStrip button b,.calendarMonthGrid button b{font-size:22px}.calendarWeekStrip button small,.calendarMonthGrid button small{grid-column:2;grid-row:1/3;align-self:center;width:28px;height:28px;border-radius:50%;background:#eee5d6;display:grid;place-items:center;font-weight:900;color:#657476}.calendarWeekStrip button.active,.calendarMonthGrid button.active{background:var(--primary);border-color:var(--primary);color:#fff}.calendarWeekStrip button.active span,.calendarMonthGrid button.active span{color:#bcd5d7}.calendarWeekStrip button.active small,.calendarMonthGrid button.active small{background:var(--mint);color:var(--primary)}.calendarMonthGrid button{min-height:66px;padding:9px}.calendarMonthGrid button b{font-size:18px}.calendarMonthGrid button small{width:24px;height:24px;font-size:11px}.calendarDesktopLayout{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:20px;align-items:start}.calendarAgenda{min-width:0}.calendarAgendaHead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.calendarAgendaHead h3,.calendarDaySummary h3{margin:0 0 5px;font-size:20px}.calendarAgendaHead p{margin:0;color:var(--muted)}.legend.compact{margin-bottom:12px;padding:12px 16px;gap:24px}.calendarDaySummary{position:sticky;top:108px;border:1px solid var(--line);border-radius:16px;background:var(--surface-2);padding:20px;display:grid;gap:16px}.calendarDaySummary .authEyebrow{margin:0}.calendarDaySummary .statLine{padding-top:10px;border-top:1px solid #dfd3bf}.searchBox{height:40px;min-width:min(320px,100%);border:1px solid var(--line);border-radius:12px;background:#fff;display:flex;align-items:center;gap:8px;padding:0 12px}.searchBox input{border:0;outline:0;min-width:0;width:100%;background:transparent}.filterBar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.filterBar button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 14px;font-weight:800;color:#385154}.filterBar .active{background:var(--primary);color:#fff;border-color:var(--primary)}.clientTable{display:grid;gap:12px}.clientRow{width:100%;border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;grid-template-columns:48px minmax(0,1.15fr) minmax(0,.9fr) minmax(120px,180px) minmax(168px,190px) 124px;gap:12px;align-items:center;text-align:left;padding:14px;color:var(--text);min-width:0;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.clientRow:hover,.clientRow:focus-visible{border-color:#9cc5ce;box-shadow:0 8px 24px #173f4514;outline:0}.clientRow:focus-visible{box-shadow:0 0 0 3px #1f5d6624,0 8px 24px #173f4514}.avatar{width:42px;height:42px;border-radius:50%;background:#dff0f8;color:#17424a;display:inline-flex;align-items:center;justify-content:center;font-weight:900;flex:0 0 auto}.avatar.large{width:72px;height:72px;font-size:22px}.clientRow b,.clientRow small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clientRow small{color:var(--muted);font-size:12px;margin-top:3px}.status{width:124px;justify-self:center;text-align:center;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:900;white-space:nowrap}.status.active{background:var(--green-soft);color:#377044}.status.attention{background:var(--yellow-soft);color:#745e13}.sessionBalance{width:100%;min-width:0;min-height:58px;border:1px solid #d7cec0;border-radius:13px;background:#f8f5ee;color:#385154;display:grid;grid-template-columns:32px minmax(0,1fr) 16px;grid-template-rows:auto 4px;align-items:center;gap:4px 8px;padding:8px 9px;text-align:left;cursor:pointer;transition:.16s ease}.sessionBalance:hover{transform:translateY(-1px);box-shadow:0 7px 16px #173f4517}.sessionBalanceIcon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;grid-row:1;background:#e8e3da}.sessionBalanceText{min-width:0;grid-row:1}.sessionBalanceText small,.sessionBalanceText b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sessionBalanceText small{margin:0 0 2px;font-size:9px;text-transform:uppercase;letter-spacing:.05em;font-weight:900;color:#6b7c7e}.sessionBalanceText b{font-size:14px}.sessionBalanceEdit{grid-row:1;color:#718184}.sessionBalanceProgress{grid-column:1/-1;height:4px;border-radius:999px;background:#344d4e1f;overflow:hidden}.sessionBalanceProgress i{display:block;height:100%;border-radius:inherit;transition:width .2s ease}.sessionBalance.healthy{border-color:#a8cfb1;background:#f2faf4}.sessionBalance.healthy .sessionBalanceIcon{background:#d9efde;color:#397549}.sessionBalance.healthy .sessionBalanceProgress i{background:#58a66b}.sessionBalance.warning{border-color:#dfca77;background:#fffaf0}.sessionBalance.warning .sessionBalanceIcon{background:#f6e8aa;color:#725d13}.sessionBalance.warning .sessionBalanceProgress i{background:#d3ac2e}.sessionBalance.danger{border-color:#dda9a1;background:#fff6f4}.sessionBalance.danger .sessionBalanceIcon{background:#f4d8d3;color:#943f35}.sessionBalance.danger .sessionBalanceProgress i{background:#c95b4e}.sessionBalance.empty{border-style:dashed;background:#faf8f3;color:#607274}.sessionBalanceEditor{min-width:0;border:1px solid #9cc5ce;border-radius:13px;background:#f4fafb;padding:9px;display:grid;gap:7px;cursor:default}.sessionBalanceEditor>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:7px}.sessionBalanceEditor label{min-width:0;display:grid;gap:3px}.sessionBalanceEditor label span{font-size:8px;font-weight:900;text-transform:uppercase;color:#667a7d}.sessionBalanceEditor input{width:100%;min-width:0;height:31px;border:1px solid var(--line);border-radius:8px;background:#fff;padding:0 7px;color:var(--text);font-weight:900}.sessionBalanceActions{display:flex;gap:6px;justify-content:flex-end}.balanceIcon{width:29px;height:29px;border:1px solid var(--line);border-radius:8px;background:#fff;color:#52696c;display:grid;place-items:center}.balanceIcon.save{background:var(--primary);border-color:var(--primary);color:#fff}.balanceIcon:disabled{opacity:.55}.sessionBalanceError{display:block;color:#8c3e34;font-size:9px;line-height:1.25;white-space:normal!important}.clientPage{display:grid;gap:22px}.clientHero{display:grid;grid-template-columns:auto 72px minmax(0,1fr);align-items:center;gap:18px}.clientHero>.btn.ghost{justify-self:start}.clientHero.missingProgram{border-color:#d9bd55;background:linear-gradient(90deg,#fffdf7 0,#fff 48%)}.clientHeroText{min-width:0}.clientHero h2{margin:0 0 8px}.clientProgramAlert{display:inline-flex;align-items:center;border:1px solid #dec768;border-radius:999px;background:#fff2bd;color:#6f5811;padding:5px 9px;font-size:11px;font-weight:900;margin-bottom:7px}.heroActions{grid-column:1/-1;display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;width:100%;padding-top:14px;border-top:1px solid var(--line)}.heroActions .btn{min-width:0;max-width:100%}.bookingList{display:grid;gap:12px}.bookingRow{border:1px solid var(--line);border-radius:14px;background:#fff;display:grid;grid-template-columns:minmax(116px,150px) minmax(0,1fr) minmax(120px,150px) minmax(90px,max-content);gap:12px;align-items:center;padding:14px}.bookingRow.wait{border-color:#d8c15c}.bookingRow.done{border-color:#9fcba9}.bookingMain{min-width:0}.bookingMain b,.bookingMain small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookingMain small{font-size:12px;color:var(--muted)}.bookingMain .bookingNote{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#385154;margin-top:5px;line-height:1.35}.programPage .card{overflow:hidden}.programHeaderActions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap;min-width:0}.programSelector{min-width:210px;max-width:300px;display:grid;gap:4px}.programSelector>span{font-size:9px;color:var(--muted);font-weight:900;text-transform:uppercase}.programSelector select{height:38px;border:1px solid var(--line);border-radius:11px;background:#f6efe3;padding:0 34px 0 10px;color:var(--text);font-weight:900;min-width:0}.programLayout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.programCreateState{border:1px solid #dfcfad;border-radius:18px;background:linear-gradient(135deg,#fbf6e9,#fff);padding:28px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px 20px;align-items:center}.programCreateIcon{width:56px;height:56px;border-radius:16px;background:var(--primary);color:#fff;display:grid;place-items:center;grid-row:1/3}.programCreateState h3{font-size:22px;margin:5px 0 7px}.programCreateState p{margin:0;color:var(--muted);max-width:680px}.programCreateState label{grid-column:2;display:grid;gap:7px;font-weight:900}.programCreateState label span{font-size:11px;text-transform:uppercase;color:var(--muted)}.programCreateState input{height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 13px;color:var(--text);min-width:0}.programCreateState>.btn{grid-column:2;justify-self:start}.programManagePanel{border:1px solid #c9dce3;border-radius:16px;background:#f3fafc;padding:18px;margin-bottom:18px;display:grid;grid-template-columns:minmax(220px,.8fr) minmax(280px,1fr) auto;align-items:end;gap:16px}.programManagePanel h3{margin:4px 0 5px;font-size:18px}.programManagePanel p{margin:0;color:var(--muted);font-size:12px}.programManagePanel label{display:grid;gap:7px;font-weight:900}.programManagePanel label>span{font-size:10px;text-transform:uppercase;color:var(--muted)}.programManagePanel input{height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px;color:var(--text);min-width:0}.programManageActions{display:flex;gap:8px;justify-content:flex-end}.programManageActions .btn{white-space:nowrap}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.dangerText{color:var(--danger);border-color:#dfb5ae;background:#fff9f7}.programDay{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fff;min-width:0}.programDayHead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.programDay h3{margin:0}.programTableWrap{overflow:auto;max-width:100%}.programTable{width:100%;border-collapse:separate;border-spacing:0;min-width:760px}.programTable th,.programTable td{border-bottom:1px solid #efe7d9;padding:10px;text-align:left;font-size:12px;vertical-align:middle}.programTable th{color:#52696c;font-weight:900;background:#fbf8f1}.editableCell{width:100%;border:0;background:transparent;color:var(--text);text-align:left;padding:7px;border-radius:8px;min-width:80px}.editableCell:hover{background:#f4eee3}.cellEditor{display:flex;gap:6px;align-items:center}.cellEditor input{height:34px;border:1px solid var(--line);border-radius:9px;padding:0 8px;min-width:70px;width:100%}.cellEditor .iconOnly{width:34px;height:34px;border-radius:9px}.programEditor{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start}.programDayNav{border:1px solid var(--line);border-radius:16px;background:#f6efe3;padding:12px;display:grid;gap:8px}.programDayNav>.authEyebrow{margin:5px 8px 8px}.programDayNav button{min-width:0;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text);padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.programDayNav button span{min-width:0}.programDayNav button b,.programDayNav button small{display:block}.programDayNav button b{overflow-wrap:anywhere}.programDayNav button small{color:var(--muted);font-size:11px;margin-top:3px}.programDayNav button em{width:28px;height:28px;border-radius:9px;background:#e7dcc9;display:grid;place-items:center;font-style:normal;font-weight:900;font-size:12px;flex:0 0 auto}.programDayNav button.active{background:#fff;border-color:#b7d9e8;box-shadow:0 4px 14px #1730330f}.programDayNav button.active em{background:var(--primary);color:#fff}.programDayNav .addProgramDay{border-style:dashed;border-color:#bdb19e;justify-content:center;font-weight:900;margin-top:4px}.programCanvas{min-width:0;border:1px solid var(--line);border-radius:16px;background:#fbf8f1;padding:22px}.programCanvasHead{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px}.programCanvasHead h3{font-size:24px;margin:0 0 7px}.programCanvasHead p{margin:0;color:var(--muted);max-width:520px}.programCanvasHead .authEyebrow{margin-bottom:8px}.dayNameEditor{width:min(330px,100%);min-width:250px;display:grid;gap:7px;font-weight:900;color:#385154}.dayNameEditor>span{font-size:11px;text-transform:uppercase;color:var(--muted)}.dayNameEditor>div{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:7px}.dayNameEditor input{height:42px;min-width:0;width:100%;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px;color:var(--text)}.dayNameEditor .iconOnly{width:42px;height:42px}.addExerciseControl{width:100%;display:grid;grid-template-columns:minmax(180px,1fr) minmax(190px,230px);gap:10px;margin-bottom:20px}.addExerciseControl input{height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px;color:var(--text);min-width:0}.addExerciseButton{width:100%;padding-inline:12px;font-size:clamp(12px,1.1vw,14px);overflow-wrap:anywhere}.programExerciseList{display:grid;gap:12px}.programExerciseCard{border:1px solid var(--line);border-radius:14px;background:#fff;padding:16px}.programExerciseTitle{display:grid;grid-template-columns:34px minmax(0,1fr) 120px;gap:12px;align-items:center;margin-bottom:14px}.programExerciseTitle>span:first-child{width:34px;height:34px;border-radius:10px;background:var(--blue-soft);display:grid;place-items:center;font-weight:900;color:#35657a}.programExerciseTitle h4{margin:0 0 3px;font-size:16px}.programExerciseTitle small{color:var(--muted)}.programExerciseTitle .chip{width:120px}.exerciseNameEditor{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:6px;margin-bottom:4px}.exerciseNameEditor input{width:100%;min-width:0;height:34px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 9px;color:var(--text);font-weight:900}.exerciseNameEditor .iconOnly{width:34px;height:34px;border-radius:9px}.exerciseParams{display:grid;grid-template-columns:repeat(4,minmax(90px,1fr));gap:10px}.exerciseParams label{min-width:0;border:1px solid #eee5d7;border-radius:11px;background:#fbf8f1;padding:9px;display:grid;gap:4px}.exerciseParams label>span{font-size:10px;font-weight:900;color:var(--muted);text-transform:uppercase}.exerciseParams .editableCell{font-weight:900;background:#fff;border:1px solid #e9dfd0}.exerciseComment{grid-column:1/-1}.programDayItem{border:1px solid transparent;border-radius:13px;padding:4px;background:transparent;display:grid;gap:3px}.programDayItem.active{background:#fff;border-color:#b7d9e8;box-shadow:0 4px 14px #1730330f}.programDayNav .programDaySelect{width:100%;padding:8px;border:0}.programDayItem.active .programDaySelect em{background:var(--primary);color:#fff}.programDayNav .programDayActions{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:0 4px 4px}.programDayNav .programDayActions button{width:100%;height:30px;padding:0;justify-content:center;border:1px solid var(--line);border-radius:8px;background:#fbf8f1;color:#52696c}.programDayNav .programDayActions button:hover:not(:disabled){border-color:#89bbc3;background:#edf7f8}.programDayNav .programDayActions button.danger{color:var(--danger);background:#fff7f5;border-color:#e3c1bb}.programDayNav .programDayActions button:disabled{opacity:.35}.settingsGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:22px}.settingsForm{grid-column:1/-1;display:grid;gap:16px}.settingsForm label,.securityForm label{display:grid;gap:8px;font-weight:800}.formGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.errorLine{border:1px solid var(--danger-soft);background:#fff7f5;border-radius:12px;padding:12px;color:#6f332b;font-size:13px}.settingsSectionHead{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.settingsSectionHead .authEyebrow{margin-bottom:8px}.settingsSectionHead h2{margin:0 0 7px}.settingsSectionHead p{color:var(--muted);margin:0}.securityCard{grid-column:1/-1;display:grid;gap:20px}.securityForms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.securityForm{border:1px solid var(--line);border-radius:16px;background:#fbf8f1;padding:18px;display:grid;gap:14px;align-content:start}.securityForm input{height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:0 12px;color:var(--text);min-width:0}.securityFormTitle{display:flex;gap:12px;align-items:flex-start}.securityFormTitle svg{color:var(--primary-2);margin-top:2px}.securityFormTitle h3{margin:0 0 4px}.securityFormTitle p{margin:0;color:var(--muted);font-size:12px}.securityCard>.authError{margin-top:-6px}.weeklyScheduleCard{grid-column:1/-1;display:grid;gap:20px}.weeklyScheduleList{display:grid;gap:9px}.weeklyScheduleRow{display:grid;grid-template-columns:minmax(190px,1fr) minmax(135px,180px) minmax(135px,180px) minmax(110px,150px);align-items:end;gap:12px;border:1px solid var(--line);border-radius:14px;background:#fbf8f1;padding:12px 14px}.weeklyScheduleRow.disabled{background:#f4f1ea;color:var(--muted)}.weeklyScheduleRow>label:not(.dayEnabled){display:grid;gap:5px}.weeklyScheduleRow>label>span{font-size:10px;color:var(--muted);font-weight:900;text-transform:uppercase}.weeklyScheduleRow input[type=time]{height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:0 10px;color:var(--text);font-weight:800}.weeklyScheduleRow input:disabled{opacity:.55;background:#eeeae2}.dayEnabled{height:38px;display:flex;align-items:center;gap:11px;cursor:pointer}.dayEnabled input{width:19px;height:19px;accent-color:var(--primary)}.dayEnabled span{display:flex!important;align-items:center;gap:10px;text-transform:none!important}.dayEnabled b{width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff;display:grid;place-items:center;font-size:12px}.weeklyScheduleRow.disabled .dayEnabled b{background:#b7b0a4}.dayEnabled em{font-style:normal;font-size:13px;color:var(--text)}.weeklyScheduleRow>strong{height:38px;border-radius:10px;background:#edf6f7;color:#2c6067;display:flex;align-items:center;justify-content:center;font-size:12px}.weeklyScheduleRow.disabled>strong{background:#e8e3da;color:#746d62}.reorderHint{display:flex;align-items:center;gap:7px;margin:-8px 0 14px!important;font-size:12px!important}.reorderHint svg{flex:0 0 auto}.programExerciseCard{transition:border-color .16s ease,box-shadow .16s ease,opacity .16s ease}.programExerciseCard.dragging{opacity:.48}.programExerciseCard.dragTarget{border-color:var(--primary-2);box-shadow:0 0 0 3px #1f5d661f}.programExerciseTitle{grid-template-columns:38px minmax(0,1fr) 120px 76px}.exerciseOrder{display:grid;justify-items:center;gap:5px}.exerciseNumber{width:34px;height:34px;border-radius:10px;background:var(--blue-soft);display:grid;place-items:center;font-weight:900;color:#35657a}.exerciseDragHandle{width:34px;height:28px;border:1px solid var(--line);border-radius:8px;background:#f6efe3;color:#607477;display:grid;place-items:center;cursor:grab}.exerciseDragHandle:active{cursor:grabbing}.exerciseMoveButtons{display:grid;grid-template-columns:repeat(2,34px);gap:6px}.exerciseMoveButtons .iconOnly{width:34px;height:34px;border-radius:9px}.modalLayer{position:fixed;top:0;right:0;bottom:0;left:0;background:#112a2e38;display:flex;align-items:center;justify-content:center;padding:24px;z-index:50}.modalCard{width:min(560px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 24px 80px #112a2e2e;position:relative;padding:28px}.modalCard h2{margin:0 42px 8px 0}.modalClose{position:absolute;right:18px;top:18px}.modalForm{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.modalForm.one{grid-template-columns:1fr}.modalForm label{min-width:0;display:grid;gap:8px;font-weight:800}.modalForm .wide{grid-column:1/-1}.fieldHint{font-size:11px;color:var(--muted);font-weight:700;margin-top:-2px}.modalActions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;flex-wrap:wrap}.emptyState{border:1px dashed #cdbfae;border-radius:14px;background:#fbf8f1;padding:22px;display:grid;gap:6px;color:#52696c}.emptyState b{color:var(--text)}.emptyMini{border:1px dashed #d8cebf;border-radius:12px;padding:12px;color:var(--muted);font-size:12px;background:#fff}.toast{position:fixed;right:24px;bottom:24px;max-width:min(360px,calc(100vw - 48px));background:var(--primary);color:#fff;border-radius:14px;padding:14px 16px;font-weight:800;box-shadow:0 18px 55px #112a2e38;opacity:0;transform:translateY(12px);pointer-events:none;transition:.18s ease;z-index:60}.toast.show{opacity:1;transform:translateY(0)}.adminPage{display:grid;gap:24px}.adminActionBar{border-radius:18px;background:var(--primary);color:#fff;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.adminActionBar>div{display:grid;gap:4px}.adminActionBar b{font-size:16px}.adminActionBar span{color:#cde2e4;font-size:12px}.adminActionBar .btn.primary{background:var(--mint);color:var(--primary);box-shadow:none;white-space:nowrap}.adminActionBar .btn.primary:hover{background:#8ee9df}.adminMetricsGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.adminMetric{min-width:0;min-height:150px;border:1px solid var(--line);border-radius:18px;background:var(--surface);padding:20px;display:grid;align-content:space-between;gap:8px}.adminMetric>span{display:flex;align-items:center;gap:9px;color:#52696c;font-size:12px;font-weight:900}.adminMetric>span svg{color:var(--primary-2)}.adminMetric>b{font-size:36px;line-height:1;color:var(--text)}.adminMetric>small{color:var(--muted);font-size:11px;line-height:1.35}.adminMetric.primaryMetric{background:var(--primary);border-color:var(--primary);color:#fff}.adminMetric.primaryMetric>span,.adminMetric.primaryMetric>small{color:#d8ebec}.adminMetric.primaryMetric>span svg{color:var(--mint)}.adminMetric.primaryMetric>b{color:#fff}.adminMetric.warningMetric{background:#fffaf0;border-color:#dfcc83}.adminMetric.dangerMetric{background:#fff7f5;border-color:#dfb5ae}.adminMetric.dangerMetric>span svg{color:var(--danger)}.adminOverviewGrid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:24px}.adminTrendCard,.adminRoleCard{min-height:300px}.adminTrend{height:174px;display:grid;grid-template-columns:repeat(14,minmax(18px,1fr));gap:8px;align-items:end;border-bottom:1px solid var(--line);padding:18px 4px 0}.adminTrendColumn{height:100%;min-width:0;display:grid;grid-template-rows:20px minmax(10px,1fr) 24px;align-items:end;justify-items:center;gap:5px}.adminTrendColumn>b{font-size:10px;color:var(--muted)}.adminTrendColumn>i{display:block;width:min(24px,72%);min-height:8px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,var(--mint),var(--primary-2));transition:height .2s ease}.adminTrendColumn>small{font-size:9px;color:var(--muted);white-space:nowrap}.adminRoleList{display:grid;gap:12px}.adminRoleList>div{border:1px solid var(--line);border-radius:14px;background:#fbf8f1;padding:15px 16px;display:flex;align-items:center;justify-content:space-between;gap:14px}.adminRoleList span{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:900}.adminRoleList b{font-size:22px}.roleDot{width:11px;height:11px;border-radius:4px;background:var(--blue);display:inline-block}.roleDot.admin{background:var(--primary-2)}.roleDot.trainer{background:var(--mint)}.roleDot.client{background:var(--blue)}.adminAccountsCard{overflow:hidden}.adminAccountsHeader{align-items:flex-end}.adminFilters{flex:1}.adminFilters .selectInput{min-width:150px}.adminAccountTable{display:grid;gap:9px}.adminAccountHead,.adminAccountRow{display:grid;grid-template-columns:minmax(220px,1.2fr) 120px minmax(220px,.9fr) minmax(135px,.65fr) minmax(300px,auto);gap:14px;align-items:center}.adminAccountHead{padding:0 14px 8px;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}.adminAccountRow{border:1px solid var(--line);border-radius:15px;background:#fff;padding:13px 14px;transition:border-color .16s ease,box-shadow .16s ease}.adminAccountRow:hover{border-color:#b7d3d7;box-shadow:0 7px 20px #173f450f}.adminIdentity{min-width:0;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px}.adminIdentity .accountAvatar{width:38px;height:38px}.adminIdentity b,.adminIdentity small,.adminLastLogin b,.adminLastLogin small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.adminIdentity b{font-size:12px}.adminIdentity small,.adminLastLogin small{font-size:10px;color:var(--muted);margin-top:3px}.adminLastLogin b{font-size:11px}.status.pending{background:var(--blue-soft);color:#38677c}.adminRoles{display:flex;gap:6px;flex-wrap:wrap}.adminRoles button{min-height:30px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#657476;padding:5px 10px;font-size:10px;font-weight:900}.adminRoles button.active{border-color:var(--primary-2);background:#dff0f1;color:var(--primary)}.adminRoles button:disabled{cursor:not-allowed;opacity:.62}.adminRowActions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}.adminRowActions .btn{min-width:0;padding:0 10px}.btn.dangerText{color:var(--danger);border-color:#dfb5ae;background:#fff7f5}.adminCreateModal{width:min(620px,100%)}.adminCreateIntro{margin:0;color:var(--muted);line-height:1.5}.adminCreateRoleField{border:0;padding:0;margin:0;display:grid;gap:9px}.adminCreateRoleField legend{font-weight:800;margin-bottom:9px}.adminCreateRoles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.adminCreateRoles button{min-width:0;min-height:82px;border:1px solid var(--line);border-radius:13px;background:#fbf8f1;color:var(--text);padding:12px;text-align:left;display:grid;align-content:center;gap:5px}.adminCreateRoles button:hover{border-color:#9bc7cb}.adminCreateRoles button.selected{border-color:var(--primary-2);background:#dff0f1;box-shadow:0 0 0 2px #1f5d6614}.adminCreateRoles b{font-size:12px}.adminCreateRoles small{color:var(--muted);font-size:10px;line-height:1.35}.adminPasswordInput{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px}.adminPasswordInput .btn{height:42px}.adminCreateSuccess{text-align:center;display:grid;justify-items:stretch}.adminCreateSuccess>p{color:var(--muted);line-height:1.5;margin:0 auto 18px;max-width:480px}.adminCreateSuccess .confirmIcon{margin-bottom:14px}.adminCredentials{border:1px solid var(--line);border-radius:14px;background:#fbf8f1;padding:6px 16px;text-align:left}.adminCredentials span{padding:12px 0;display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;color:var(--muted);font-size:11px}.adminCredentials span+span{border-top:1px solid var(--line)}.adminCredentials b{color:var(--text);font-size:13px;overflow-wrap:anywhere}.adminCreateSuccess .modalActions{justify-content:center}.adminV2{display:grid;gap:22px}.adminTabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:12px}.adminTabs button{height:40px;border:1px solid transparent;border-radius:11px;background:transparent;color:#607477;padding:0 15px;display:flex;align-items:center;gap:8px;font-weight:900}.adminTabs button.active{background:var(--primary);color:#fff}.adminQuick{display:grid;align-content:start;gap:9px}.adminQuick h2{margin:0 0 8px}.adminQuick button{border:1px solid var(--line);border-radius:12px;background:#fbf8f1;text-align:left;padding:13px 15px;color:var(--text);font-weight:850}.adminQuick button:hover{border-color:var(--primary-2);background:#edf6f7}.bulkBar{margin:0 0 15px;border-radius:13px;background:#e4f2f3;padding:11px 14px;display:flex;align-items:center;gap:9px;flex-wrap:wrap}.bulkBar b{margin-right:auto}.bulkBar button{border:1px solid #a8cdd1;border-radius:9px;background:#fff;padding:8px 10px;color:var(--primary);font-weight:850}.adminV2Table{display:grid;gap:8px}.adminV2Head,.adminV2Row{display:grid;grid-template-columns:26px minmax(220px,1.25fr) 120px minmax(220px,.9fr) 150px minmax(270px,auto);align-items:center;gap:12px}.adminV2Head{padding:0 12px 7px;color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase}.adminV2Row{border:1px solid var(--line);border-radius:14px;background:#fff;padding:11px 12px}.adminV2Row>input,.adminV2Head>input{width:17px;height:17px;accent-color:var(--primary)}.identityButton{border:0;background:transparent;display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;text-align:left;min-width:0;color:var(--text)}.identityButton i{width:38px;height:38px;border-radius:11px;background:var(--mint);display:grid;place-items:center;font-style:normal;font-weight:950}.identityButton span,.identityButton b,.identityButton small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.identityButton small{color:var(--muted);font-size:10px;margin-top:3px}.adminV2Row>.adminRowActions button{height:32px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:0 9px;color:var(--text);font-size:10px;font-weight:900;display:flex;align-items:center;gap:5px}.pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:18px}.pagination button{border:1px solid var(--line);border-radius:9px;background:#fff;padding:8px 14px;font-weight:850}.pagination button:disabled{opacity:.45}.auditList{display:grid;gap:9px}.auditItem{display:grid;grid-template-columns:38px minmax(0,1fr) 190px;align-items:center;gap:12px;border:1px solid var(--line);border-radius:13px;padding:12px 14px;background:#fff}.auditItem.warning{border-left:4px solid #d8af34}.auditItem.error{border-left:4px solid var(--danger)}.auditIcon{width:36px;height:36px;border-radius:10px;background:#e7f3f4;color:var(--primary-2);display:grid;place-items:center}.auditItem b,.auditItem small{display:block}.auditItem small{color:var(--muted);font-size:10px;margin-top:4px}.auditItem>div:last-child{text-align:right}.assignmentGrid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:22px}.assignmentToolbar{display:flex;gap:10px;margin-bottom:15px}.assignmentToolbar select{height:42px;flex:1;border:1px solid var(--line);border-radius:11px;padding:0 11px;background:#fff}.assignmentList,.trainerLoad{display:grid;gap:8px}.assignmentList label,.trainerLoad>div{border:1px solid var(--line);border-radius:12px;padding:11px 13px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:11px;align-items:center;background:#fff}.assignmentList input{width:17px;height:17px;accent-color:var(--primary)}.assignmentList b,.assignmentList small,.trainerLoad b,.trainerLoad small{display:block}.assignmentList small,.trainerLoad small{color:var(--muted);font-size:10px;margin-top:3px}.assignmentList em{font-style:normal;color:#547074;font-size:11px}.trainerLoad>div{grid-template-columns:minmax(0,1fr) auto}.trainerLoad strong{width:38px;height:38px;border-radius:11px;background:var(--primary);color:#fff;display:grid;place-items:center}.systemGrid{display:grid;gap:22px}.systemSummary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.systemSummary>div{border:1px solid var(--line);border-radius:13px;padding:15px;background:#fbf8f1}.systemSummary span,.systemSummary b{display:block}.systemSummary span{color:var(--muted);font-size:11px;margin-bottom:8px}.systemSummary b{font-size:19px}.systemSummary .ok{color:#3b744a}.systemSummary .bad{color:#9a4b3e}.serviceList{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.serviceList>div{border:1px solid var(--line);border-radius:11px;padding:11px 13px;display:grid;grid-template-columns:12px minmax(0,1fr) auto auto;gap:9px;align-items:center}.serviceList em{font-style:normal;font-size:11px}.serviceList small{color:var(--muted)}.serviceDot{width:10px;height:10px;border-radius:50%;background:#ca6657}.serviceDot.healthy{background:#55a56a}.backupWarning{margin-top:15px;border:1px solid #dfcc83;border-radius:12px;background:#fffaf0;padding:13px;display:grid;gap:4px}.backupWarning.backupOk{border-color:#a8d5b2;background:#f2fbf4}.backupWarning span{color:var(--muted);font-size:11px}.wideModal{width:min(980px,100%)}.detailGrid{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:22px;margin-top:20px}.detailGrid section{border:1px solid var(--line);border-radius:14px;padding:16px;background:#fbf8f1}.detailGrid h3{margin:0 0 12px}.detailInfo{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding:9px 0}.detailInfo span{color:var(--muted);font-size:11px}.detailInfo b{text-align:right;font-size:12px}.detailActions{display:grid;gap:8px;margin-top:14px}.detailActions button{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px;display:flex;align-items:center;justify-content:center;gap:6px;font-weight:850}.detailHistory{display:grid;gap:8px;max-height:420px;overflow:auto}.detailHistory>div{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px}.detailHistory b,.detailHistory small{display:block}.detailHistory small{color:var(--muted);font-size:10px;margin-top:4px}.successPanel,.deleteConfirm{text-align:center;display:grid;gap:14px;justify-items:center;margin-top:20px}.successPanel svg{color:#4f9460}.successPanel code{width:100%;border:1px solid var(--line);border-radius:12px;background:#fbf8f1;padding:14px;text-align:left;overflow-wrap:anywhere}.deleteConfirm svg{color:var(--danger)}.assignmentToolbar{align-items:end;flex-wrap:wrap}.assignmentToolbar>label{display:grid;gap:5px;flex:1;min-width:220px}.assignmentToolbar>label>span{color:var(--muted);font-size:10px;font-weight:850;text-transform:uppercase}.assignmentToolbar>label>select{width:100%}.assignmentToolbar>.btn{height:42px;white-space:nowrap}.authShell{min-height:100vh;display:grid;grid-template-columns:minmax(380px,44%) minmax(480px,1fr);background:var(--surface)}.authAside{min-height:100vh;background:var(--primary);color:#fff;padding:clamp(34px,5vw,76px);display:flex;flex-direction:column;position:relative;overflow:hidden}.authAside:before{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(115,221,211,.18);border-radius:50%;right:-280px;bottom:-170px;box-shadow:0 0 0 80px #73ddd309,0 0 0 160px #73ddd306}.authBrand,.authMobileBrand{display:flex;align-items:center;gap:14px;font-size:20px;position:relative;z-index:1}.authPitch{margin:auto 0;max-width:560px;position:relative;z-index:1}.authEyebrow{display:block;color:#41808a;font-size:11px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}.authAside .authEyebrow{color:var(--mint)}.authPitch h1{font-size:clamp(42px,5vw,72px);line-height:1.02;letter-spacing:-.045em;margin:0 0 28px}.authPitch p{max-width:520px;color:#d4e5e6;font-size:clamp(16px,1.5vw,20px);line-height:1.6;margin:0}.authTrust{position:relative;z-index:1;display:flex;align-items:center;gap:12px;color:#e7f5f5}.authTrust span,.authTrust b,.authTrust small{display:block}.authTrust small{color:#aac8ca;margin-top:3px}.authMain{display:grid;place-items:center;padding:clamp(28px,6vw,84px);background:linear-gradient(145deg,#fffdf8,#f8f1e5)}.authCard{width:min(480px,100%)}.authMobileBrand{display:none;color:var(--primary);margin-bottom:42px}.authCard h2{font-size:clamp(34px,3vw,46px);letter-spacing:-.035em;line-height:1.06;margin:0 0 12px}.authLead{color:var(--muted);line-height:1.5;margin:0 0 30px}.authTabs{display:grid;grid-template-columns:1fr 1fr;background:#eee4d4;border:1px solid var(--line);border-radius:14px;padding:4px;margin-bottom:26px}.authTabs button{height:42px;border:0;border-radius:10px;background:transparent;color:#647476;font-weight:900}.authTabs button.active{background:#fff;color:var(--primary);box-shadow:0 4px 14px #17303312}.authForm{display:grid;gap:17px}.authForm label{display:grid;gap:8px}.authForm label>span{font-size:12px;font-weight:900;color:#385154}.authForm input{width:100%;height:50px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--text);padding:0 14px;outline:0;transition:.16s ease}.authForm input:focus{border-color:var(--primary-2);box-shadow:0 0 0 3px #1f5d661f}.passwordField{position:relative}.passwordField input{padding-right:52px}.passwordField button{position:absolute;right:6px;top:6px;width:38px;height:38px;border:0;border-radius:9px;background:transparent;color:#687b7d;display:grid;place-items:center}.passwordField button:hover{background:#f3ede2}.authSubmit{height:52px;border:0;border-radius:13px;background:var(--primary);color:#fff;font-weight:900;margin-top:3px;box-shadow:0 10px 24px #173f4529}.authSubmit:hover{background:var(--primary-2)}.authSubmit:disabled{opacity:.62}.authError{border:1px solid #dfb5ae;background:var(--danger-soft);color:#7a352b;border-radius:11px;padding:11px 13px;font-size:13px;line-height:1.4}.bookingError{margin-top:14px;font-weight:800}.authLegal{font-size:11px;line-height:1.5;color:#899495;text-align:center;margin:20px 0 0}.authModalLayer{background:#0c262a85;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirmCard{width:min(460px,100%);text-align:center}.confirmCard>p{color:var(--muted);line-height:1.55;margin:0 0 18px}.confirmIcon{width:58px;height:58px;border-radius:18px;background:#dcefdc;color:#3b744a;display:grid;place-items:center;margin:0 auto 20px}.confirmCard h2{margin:0 42px 10px}.confirmCard .authForm{text-align:left;margin-top:20px}.deleteClientConfirm{text-align:center}.deleteClientConfirm h2{margin:0 42px 10px}.deleteClientConfirm>p{color:var(--muted);line-height:1.55;margin:0 0 14px}.confirmIcon.dangerIcon{background:var(--danger-soft);color:var(--danger)}.deleteClientWarning{border:1px solid #dfb5ae;background:#fff7f5;color:#74382f;border-radius:12px;padding:12px 14px;margin:16px 0;text-align:left}.deleteClientConfirm .modalActions{justify-content:center}.demoCode{border:1px dashed #ccb759;background:var(--yellow-soft);color:#66520d;border-radius:12px;padding:12px}.codeInput{text-align:center;font-size:24px;font-weight:900;letter-spacing:.3em;padding-left:calc(14px + .3em)!important}@media(max-width:1420px)and (min-width:981px){.adminMetricsGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.adminAccountHead,.adminAccountRow{grid-template-columns:minmax(200px,1.1fr) 110px minmax(190px,.9fr) minmax(285px,auto)}.adminAccountHead>span:nth-child(4),.adminLastLogin{display:none}.topbar{gap:14px}.topbar h1{font-size:28px}.topbarActions{gap:8px}.topbarActions .btn{padding:0 12px;font-size:13px}.gridToday{grid-template-columns:minmax(0,1fr) 250px;gap:18px}.planCard{padding:28px}.slot{grid-template-columns:minmax(116px,128px) minmax(0,1fr) minmax(112px,126px);grid-template-rows:auto auto;gap:10px}.slotTime{grid-column:1;grid-row:1}.slotPerson{grid-column:2;grid-row:1}.slot .chip{grid-column:3;grid-row:1}.slotActions{grid-column:2/4;grid-row:2;justify-self:end}.clientRow{grid-template-columns:48px minmax(0,1.1fr) minmax(0,.9fr) minmax(168px,190px);grid-template-rows:auto auto}.clientRow .sessionBalance{grid-column:2;width:min(190px,100%)}.clientRow .sessionBalanceEditor{grid-column:2/4;width:min(330px,100%)}.clientRow .status{grid-column:4}.weekGrid,.calendarGrid{gap:6px}.dayCol,.calSlot{padding:8px}.segmented button{padding:8px 9px}}@media(max-width:1280px)and (min-width:981px){.appShell{grid-template-columns:248px minmax(0,1fr)}.sidebar{padding:28px 20px}.content{padding:30px}.calendarCard>.cardHeader,.programPage>.card>.cardHeader{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.calendarControls{width:100%;grid-template-columns:auto minmax(0,1fr);align-items:center;justify-items:stretch}.calendarDateNav{justify-content:flex-end}.calendarViewToggle{justify-self:start}.calendarWeekStrip,.calendarMonthGrid{gap:6px}.calendarWeekStrip button{padding:10px}.calendarDesktopLayout{grid-template-columns:1fr}.calendarDaySummary{position:static;grid-template-columns:repeat(4,minmax(0,1fr))}.calendarDaySummary>.authEyebrow,.calendarDaySummary>h3{grid-column:1/-1}.programPage .headerTools{justify-content:flex-start;width:100%}.programHeaderActions{justify-content:flex-start}.programSelector{flex:1 1 240px}.programEditor{grid-template-columns:190px minmax(0,1fr);gap:16px}.programCanvas{padding:18px}.programCanvasHead{display:grid}.dayNameEditor{width:100%;min-width:0}.addExerciseControl{grid-template-columns:minmax(0,1fr) minmax(190px,230px)}.exerciseParams{grid-template-columns:repeat(2,minmax(90px,1fr))}}@media(max-width:1180px){.adminV2Head{display:none}.adminV2Row{grid-template-columns:26px minmax(220px,1fr) 120px minmax(220px,1fr)}.adminV2Row>span:nth-of-type(2){display:none}.adminV2Row>.adminRowActions{grid-column:2/-1;justify-content:flex-start}.assignmentGrid{grid-template-columns:1fr}.adminMetricsGrid{grid-template-columns:repeat(3,minmax(0,1fr))}.adminOverviewGrid{grid-template-columns:1fr}.adminAccountHead{display:none}.adminAccountRow{grid-template-columns:minmax(200px,1fr) 120px minmax(190px,.8fr) minmax(280px,auto)}.adminLastLogin{display:none}.appShell{grid-template-columns:248px minmax(0,1fr)}.sidebar{padding:28px 20px}.gridToday{grid-template-columns:1fr}.summary{grid-template-columns:repeat(3,minmax(0,1fr))}.calendarGrid{grid-template-columns:repeat(7,128px);overflow:auto}.calendarGrid.month{grid-template-columns:repeat(7,128px)}.programLayout,.settingsGrid{grid-template-columns:1fr}.securityCard{grid-column:auto}.programEditor{grid-template-columns:1fr}.programDayNav{grid-template-columns:repeat(3,minmax(0,1fr))}.programDayNav>.authEyebrow{grid-column:1/-1}.programManagePanel{grid-template-columns:repeat(2,minmax(0,1fr))}.programManageActions{grid-column:1/-1}.calendarDesktopLayout{grid-template-columns:1fr}.calendarDaySummary{position:static;grid-template-columns:repeat(4,minmax(0,1fr))}.calendarDaySummary>.authEyebrow,.calendarDaySummary>h3{grid-column:1/-1}}@media(max-width:980px){.adminMetricsGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.adminAccountRow{grid-template-columns:minmax(0,1fr) auto}.adminIdentity{grid-column:1}.adminAccountRow>.status{grid-column:2;grid-row:1}.adminRoles{grid-column:1/-1}.adminLastLogin{display:block;grid-column:1}.adminRowActions{grid-column:1/-1;justify-content:flex-start}.appShell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:min(288px,86vw);transform:translate(-102%);transition:.2s ease;min-height:100vh}.sidebar.open{transform:translate(0)}.sideScrim{position:fixed;top:0;right:0;bottom:0;left:0;border:0;background:#112a2e47;z-index:25}.menuButton,.closeSide{display:inline-grid}.closeSide{margin-left:auto}.workspace{min-width:0}.topbar{height:auto;padding:20px 22px;align-items:flex-start}.topbar h1{white-space:normal}.topbarActions{width:100%;justify-content:flex-start}.topbarActions .btn{flex:1 1 150px}.summary{grid-template-columns:repeat(3,minmax(0,1fr))}.slot{grid-template-columns:1fr;align-items:start}.slotActions,.slot .chip{justify-self:start}.slotActions{width:100%}.slotActions .btn{flex:1 1 130px}.clientRow{grid-template-columns:48px minmax(0,1fr)}.clientRow .status,.clientRow>span:nth-child(n+3),.clientRow .sessionBalance,.clientRow .sessionBalanceEditor{grid-column:2}.clientRow .sessionBalance,.clientRow .sessionBalanceEditor{width:100%}.clientHero{grid-template-columns:auto 72px minmax(0,1fr)}.heroActions{justify-content:flex-start}.bookingRow{grid-template-columns:1fr}.bookingRow .chip,.bookingActions{justify-self:start}.calendarControls{justify-items:stretch}.calendarWeekStrip,.calendarMonthGrid{overflow:auto;grid-template-columns:repeat(7,100px);padding-bottom:4px}.programCanvasHead{display:grid}.addExerciseControl,.securityForms{grid-template-columns:1fr}.exerciseParams{grid-template-columns:repeat(2,minmax(0,1fr))}.authShell{grid-template-columns:1fr}.authAside{display:none}.authMain{min-height:100vh}.authMobileBrand{display:flex}}@media(max-width:680px){.adminTabs{display:grid;grid-template-columns:1fr 1fr}.adminTabs button{justify-content:flex-start}.adminV2Row{grid-template-columns:26px minmax(0,1fr)}.adminV2Row>.status,.adminV2Row>.adminRoles,.adminV2Row>.adminRowActions{grid-column:2}.adminV2Row>.adminRowActions{display:grid}.adminV2Row>.adminRowActions button{width:100%;justify-content:center}.auditItem{grid-template-columns:38px minmax(0,1fr)}.auditItem>div:last-child{grid-column:2;text-align:left}.assignmentToolbar{display:grid}.systemSummary,.serviceList,.detailGrid{grid-template-columns:1fr}.wideModal{width:100%}.adminActionBar{display:grid;padding:18px}.adminActionBar .btn{width:100%;justify-content:center}.adminCreateRoles,.adminPasswordInput{grid-template-columns:1fr}.adminCredentials span{grid-template-columns:1fr;gap:4px}.adminMetricsGrid{grid-template-columns:1fr 1fr;gap:10px}.adminMetric{min-height:130px;padding:16px}.adminMetric>b{font-size:30px}.adminTrend{gap:4px;overflow-x:auto;grid-template-columns:repeat(14,28px);padding-bottom:2px}.adminFilters{display:grid;grid-template-columns:1fr}.adminFilters .searchBox,.adminFilters .selectInput{width:100%;min-width:0}.adminAccountRow{grid-template-columns:1fr}.adminAccountRow>.status,.adminRoles,.adminLastLogin,.adminRowActions{grid-column:1;grid-row:auto;justify-self:start}.adminRoles{width:100%}.adminRoles button{flex:1}.adminRowActions{display:grid;width:100%}.adminRowActions .btn{width:100%}.topbar,.cardHeader,.headerTools,.modalForm,.formGrid{display:grid;grid-template-columns:1fr}.content{padding:16px}.card{padding:20px}.statsGrid,.summary{grid-template-columns:1fr}.legend{gap:14px}.slotActions{display:grid;grid-template-columns:1fr}.slotActions .btn{width:100%;min-width:0}.topbarActions .btn{width:100%}.modalLayer{padding:14px}.modalCard{padding:24px 18px}.selectInput,.dateInput{width:100%}.authMain{padding:28px 20px;align-items:start}.authMobileBrand{margin-bottom:36px}.authCard h2{font-size:34px}.authTabs{margin-bottom:22px}.authLegal{margin-bottom:20px}.calendarControls{grid-template-columns:1fr}.calendarViewToggle{width:100%}.calendarViewToggle button{flex:1}.calendarDateNav{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.calendarDateNav .btn{grid-column:1/-1}.calendarDesktopLayout{display:block}.calendarDaySummary{margin-top:16px;grid-template-columns:1fr}.calendarDaySummary>.authEyebrow,.calendarDaySummary>h3{grid-column:auto}.clientHero{grid-template-columns:auto minmax(0,1fr);align-items:start}.clientHero>.btn.ghost{grid-column:1/-1}.clientHeroText{grid-column:2}.heroActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch}.heroActions .btn{width:100%;white-space:normal;text-align:center}.heroActions .dangerText{grid-column:1/-1}.programDayNav{grid-template-columns:1fr 1fr}.exerciseParams{grid-template-columns:1fr}.programExerciseTitle{grid-template-columns:38px minmax(0,1fr)}.programExerciseTitle .chip{grid-column:2;grid-row:2;width:120px;justify-self:start}.exerciseMoveButtons{grid-column:2;grid-row:3}.reorderHint{align-items:flex-start}.programCreateState,.programManagePanel{grid-template-columns:1fr;padding:20px}.programCreateIcon{grid-row:auto}.programCreateState label,.programCreateState>.btn,.programManageActions{grid-column:1}.programCreateState>.btn{width:100%;justify-content:center}.programHeaderActions{justify-content:flex-start}.programSelector{width:100%;max-width:none}.programManageActions{display:grid;grid-template-columns:1fr}.programManageActions .btn{width:100%}.weeklyScheduleRow{grid-template-columns:repeat(2,minmax(0,1fr))}.dayEnabled{grid-column:1/-1}.weeklyScheduleRow>strong{grid-column:1/-1}}@media(max-width:460px){.clientHero{grid-template-columns:1fr}.clientHero>.btn.ghost,.clientHeroText{grid-column:1}.clientHero .avatar.large{justify-self:start}.heroActions{grid-template-columns:1fr}.heroActions .dangerText{grid-column:1}}
