:root{color-scheme:dark;--bg:#080b10;--bg2:#0d1118;--card:#111722;--card2:#151d2a;--line:#263245;--text:#f5f7fa;--muted:#8d9bad;--blue:#2f8cff;--blue2:#0e5fc7;--green:#3ddc97;--red:#ff5d68;--yellow:#ffc857;--radius:18px;--shadow:0 16px 50px rgba(0,0,0,.28);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:radial-gradient(circle at 20% -10%,#17243c 0,transparent 34%),var(--bg);color:var(--text)}body{min-height:100dvh}button,input,select{font:inherit}button{cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.muted{color:var(--muted)}.tiny{font-size:12px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:800;color:#79b5ff}.version{font-size:11px;color:#607086;margin-top:18px}.auth-shell{min-height:100dvh;padding:calc(28px + env(safe-area-inset-top)) 20px calc(28px + env(safe-area-inset-bottom));display:grid;place-items:center}.auth-card{width:min(440px,100%);background:linear-gradient(160deg,rgba(22,30,43,.96),rgba(10,14,21,.98));border:1px solid #273449;border-radius:28px;padding:34px;box-shadow:var(--shadow);text-align:center}.auth-logo{width:104px;height:104px;border-radius:24px;box-shadow:0 10px 40px rgba(0,0,0,.45);margin-bottom:22px}.auth-card h1{font-size:34px;margin:7px 0 8px}.password-row{display:flex;gap:10px;margin:28px 0 8px}.password-row input{min-width:0;flex:1;background:#090d13;border:1px solid #33445c;border-radius:14px;color:white;padding:14px 16px;outline:none}.password-row input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,140,255,.14)}.error{min-height:20px;color:#ff8d95;font-size:13px;margin:7px 0}.security-note{font-size:12px;line-height:1.45;color:#708097}.btn{border:0;border-radius:13px;padding:12px 16px;font-weight:750}.btn.primary{background:linear-gradient(180deg,#3d98ff,#1e73da);color:white}.btn.secondary{background:#1a2432;border:1px solid #30415a;color:#eaf2fb}.btn.danger{background:#2a1418;border:1px solid #6a2b35;color:#ff9ca4}.btn.full{width:100%}.app-shell{min-height:100dvh;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.topbar{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:calc(10px + env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) 10px max(18px,env(safe-area-inset-left));background:rgba(8,11,16,.86);backdrop-filter:blur(20px);border-bottom:1px solid rgba(64,79,100,.4)}.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand-logo{width:44px;height:44px;border-radius:12px;box-shadow:0 6px 20px rgba(0,0,0,.3)}.brand-name{font-weight:850;font-size:18px}.brand-sub{font-size:11px;color:var(--muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:270px}.profile-wrap{display:flex;align-items:center;gap:8px}.profile-label{font-size:12px;color:var(--muted)}.profile-switch{display:flex;background:#0b1017;border:1px solid #263348;border-radius:13px;padding:3px}.profile-btn{border:0;background:transparent;color:#8796aa;border-radius:9px;padding:7px 11px;font-weight:800}.profile-btn.active{background:#245f9f;color:white}.content{width:min(1180px,100%);margin:0 auto;padding:28px 20px 34px}.page{display:none}.page.active{display:block}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.page-head h1{margin:3px 0 0;font-size:32px;letter-spacing:-.03em}.icon-btn,.back-btn,.close-btn{border:1px solid #2c3a4d;background:#141b25;color:white;border-radius:12px;width:42px;height:42px;font-size:22px}.back-btn{margin-right:10px}.page-head:has(.back-btn){justify-content:flex-start}.status-strip{display:flex;align-items:center;gap:12px;padding:13px 15px;background:#0d141e;border:1px solid #213044;border-radius:15px;margin-bottom:18px}.status-strip>div:nth-child(2){display:flex;gap:8px;align-items:baseline}.status-strip span{font-size:12px;color:var(--muted)}.status-dot{width:10px;height:10px;border-radius:50%;background:#566273;box-shadow:0 0 0 5px rgba(86,98,115,.1)}.status-dot.ok{background:var(--green);box-shadow:0 0 0 5px rgba(61,220,151,.1)}.status-dot.bad{background:var(--red);box-shadow:0 0 0 5px rgba(255,93,104,.1)}.metric-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:16px}.metric{background:linear-gradient(160deg,#131b27,#0e141d);border:1px solid #243145;border-radius:16px;padding:15px;min-height:105px}.metric span,.metric small{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;font-size:29px;margin:9px 0 3px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.card{background:linear-gradient(160deg,rgba(18,24,34,.97),rgba(12,17,25,.98));border:1px solid #243145;border-radius:var(--radius);padding:18px;box-shadow:0 6px 24px rgba(0,0,0,.1);margin-bottom:16px}.card h2{font-size:17px;margin:0 0 10px}.card p{line-height:1.55;color:#a9b4c3}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}.card-head h2{margin:0}.pill{display:inline-flex;align-items:center;gap:4px;border:1px solid #33435a;background:#182232;color:#d6e2f1;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.pill.blue{border-color:#245990;color:#8cc4ff}.pill.green{border-color:#236a50;color:#83e8ba}.workout-placeholder,.empty-state{border:1px dashed #334158;background:#0b1017;border-radius:14px;padding:20px;color:#8f9caf}.empty-state{display:flex;flex-direction:column;gap:6px;text-align:center}.empty-state strong{color:#dce4ef}.backend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.backend-grid>div{background:#0b1017;border:1px solid #202b3b;border-radius:13px;padding:13px}.backend-grid span{display:block;color:var(--muted);font-size:11px}.backend-grid strong{display:block;margin-top:5px;font-size:18px}.bottom-nav{position:fixed;z-index:30;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);height:calc(62px + env(safe-area-inset-bottom));padding:5px max(8px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(8px,env(safe-area-inset-left));background:rgba(8,11,16,.94);backdrop-filter:blur(20px);border-top:1px solid #253044}.nav-btn{border:0;background:transparent;color:#758399;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:12px}.nav-btn span{font-size:20px}.nav-btn small{font-size:10px}.nav-btn.active{color:#7eb9ff;background:rgba(41,111,184,.13)}.segmented{display:flex;background:#0b1017;border:1px solid #273449;border-radius:12px;padding:3px}.segmented button{border:0;background:transparent;color:#8290a2;padding:8px 12px;border-radius:9px}.segmented button.active{background:#213c5d;color:white}.notice{border-left:3px solid #2f8cff}.calendar-list{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.week-card{background:#101720;border:1px solid #243145;border-radius:16px;padding:15px}.week-card h3{margin:0 0 4px}.week-card .week-date{font-size:11px;color:#718097}.slot{margin-top:10px;padding:9px 10px;background:#0a1018;border:1px solid #202b3b;border-radius:10px}.slot strong{display:block;font-size:12px}.slot span{display:block;font-size:11px;color:#8897a9;margin-top:3px}.action-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:15px}.library-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.library-card{background:#111823;border:1px solid #263449;border-radius:17px;padding:18px;min-height:140px}.library-card .icon{font-size:28px}.library-card h2{margin:14px 0 5px}.library-card p{margin:0;color:#8998aa;font-size:13px;line-height:1.45}.import-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.source-button{border:1px solid #2d3b50;background:#0c121b;color:white;border-radius:14px;padding:18px;text-align:left}.source-button strong,.source-button span{display:block}.source-button span{color:#8493a7;font-size:12px;margin-top:5px}.source-button.disabled{opacity:.5}.menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.menu-card{display:flex;align-items:center;gap:14px;text-align:left;border:1px solid #263449;background:#111823;color:white;border-radius:16px;padding:17px}.menu-card>span{font-size:24px;width:34px;text-align:center;color:#75b5ff}.menu-card strong,.menu-card small{display:block}.menu-card small{font-size:11px;color:#8998aa;margin-top:4px}.danger-zone{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px}.danger-zone p{margin:5px 0 0}.parameter-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.parameter-card{background:#101720;border:1px solid #253247;border-radius:15px;padding:15px}.parameter-card span{display:block;color:#8290a2;font-size:11px}.parameter-card strong{display:block;font-size:22px;margin-top:7px}.parameter-card small{display:block;color:#708096;margin-top:4px}.key-value{display:grid;grid-template-columns:1fr auto;gap:10px 18px;border-top:1px solid #273449;padding-top:14px}.key-value span{color:#8b99aa}.modal{border:0;padding:0;background:transparent;color:white;max-width:none}.modal::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(5px)}.modal-card{width:min(480px,calc(100vw - 30px));background:#111824;border:1px solid #314159;border-radius:20px;padding:20px;box-shadow:var(--shadow)}.modal-card label{display:block;color:#a8b3c1;font-size:12px;margin:13px 0}.modal-card input,.modal-card select{width:100%;margin-top:6px;background:#090e15;border:1px solid #314058;color:white;border-radius:11px;padding:12px}.close-btn{width:34px;height:34px;font-size:19px}.modal-card .card-head{margin-bottom:12px}
@media(max-width:900px){.metric-grid{grid-template-columns:repeat(3,1fr)}.calendar-list{grid-template-columns:repeat(2,1fr)}.library-grid{grid-template-columns:repeat(2,1fr)}.backend-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.topbar{align-items:flex-start}.brand-sub{max-width:150px}.profile-label{display:none}.profile-wrap{flex-wrap:wrap;justify-content:flex-end}.content{padding:20px 14px 26px}.page-head h1{font-size:28px}.metric-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.calendar-list,.library-grid,.menu-grid,.parameter-grid,.import-grid{grid-template-columns:1fr}.auth-card{padding:26px 20px}.password-row{flex-direction:column}.backend-grid{grid-template-columns:repeat(2,1fr)}.danger-zone{align-items:flex-start;flex-direction:column}.brand-name{font-size:16px}.brand-logo{width:40px;height:40px}.profile-btn{padding:6px 9px}}
