:root{--background:#0d0e10;--surface:#17191c;--surface-secondary:#202328;--surface-raised:#272a30;--border:#33363c;--border-strong:#484c54;--foreground:#f2f0ea;--muted:#96999f;--primary:#df172f;--primary-dark:#a90e20;--success:#54b879;--warning:#e2ad52;--danger:#e15d68;--radius-sm:3px;--radius:6px;--radius-lg:10px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--display:Impact, "Arial Narrow", "Roboto Condensed", sans-serif;--body:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{box-sizing:border-box}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--background);color:var(--foreground);font-family:var(--body);margin:0;font-size:14px}button,input,select,textarea{font:inherit}a{color:inherit}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.app-main{background:#111214;min-width:0}.sidebar{background:#090a0c;border-right:1px solid #25272b;flex-direction:column;height:100vh;padding:34px 22px 24px;display:flex;position:sticky;top:0;overflow:hidden}.sidebar:before{content:"";background:var(--primary);width:3px;position:absolute;inset:0 auto 0 0}.sidebar-brand{z-index:1;border-bottom:1px solid #27292d;padding:0 10px 34px;position:relative}.sidebar-brand span{font:400 28px/.88 var(--display);letter-spacing:.045em;display:block}.sidebar-brand small{color:var(--primary);letter-spacing:.28em;margin-top:8px;font-size:10px;font-weight:900;display:block}.sidebar-nav{z-index:2;gap:5px;padding-top:28px;display:grid;position:relative}.sidebar-nav a{border-radius:var(--radius-sm);color:#94979d;border:1px solid #0000;align-items:center;gap:13px;min-height:44px;padding:0 13px;font-size:13px;font-weight:750;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:flex;position:relative}.sidebar-nav a:hover{color:var(--foreground);background:#17191c}.sidebar-nav a.active{color:#fff;background:#1c1e22;border-color:#303238}.sidebar-nav a.active:before{content:"";background:var(--primary);width:3px;height:24px;position:absolute;left:-23px}.sidebar-nav a.active svg{color:var(--primary)}.sidebar-mark{z-index:0;opacity:.055;filter:grayscale();pointer-events:none;width:210px;position:absolute;bottom:28px;left:27px}.sidebar-mark img{width:100%;height:auto}.sidebar-footer{z-index:1;border-top:1px solid #27292d;align-items:center;gap:9px;margin-top:auto;padding:18px 10px 0;display:flex;position:relative}.sidebar-footer span{color:var(--primary);font:24px/1 var(--display)}.sidebar-footer small{color:#5e6168;letter-spacing:.15em;font-size:8px;font-weight:900}.account-bar{background:#111214;border-bottom:1px solid #24262a;justify-content:flex-end;align-items:center;min-height:66px;padding:0 38px;display:flex}.account{align-items:center;gap:16px;display:flex}.account-copy{text-align:right;gap:3px;display:grid}.account-copy strong{font-size:13px}.account-copy span{color:var(--muted);font-size:11px}.logout-button{color:#a9acb2;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-transform:uppercase;letter-spacing:.08em;background:0 0;padding:7px 10px;font-size:11px;font-weight:800}.logout-button:hover{color:#fff;border-color:var(--border-strong)}.content{width:min(100%,1500px);margin:0 auto;padding:42px 40px 64px}.eyebrow{color:var(--primary);letter-spacing:.19em;text-transform:uppercase;font-size:10px;font-weight:900}h1,h2,h3,p{margin-top:0}h1{font:400 clamp(34px, 4vw, 50px)/.96 var(--display);letter-spacing:.02em;text-transform:uppercase;margin:7px 0 24px}h2{letter-spacing:-.015em;margin-bottom:16px;font-size:18px}.page-heading{justify-content:space-between;align-items:flex-end;margin-bottom:28px;display:flex}.page-heading h1{margin-bottom:10px}.page-heading p{color:var(--muted);margin:0;font-size:15px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px}.section{margin-top:28px}.section-head{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.grid4{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.stat span{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:750;display:block}.stat strong{color:var(--foreground);letter-spacing:-.04em;margin-top:12px;font-size:clamp(24px,2.5vw,34px);display:block}.details{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:22px;display:grid}.recent{gap:8px;display:grid}.recent div{background:var(--surface-secondary);border-left:2px solid var(--primary);padding:11px 13px}.recent small,.muted{color:var(--muted)}.period-filter{align-items:end;gap:10px;margin-bottom:18px;display:flex}.period-filter label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:900;display:grid}.period-filter input{min-height:40px;color:var(--foreground);border:1px solid var(--border);background:#111316;padding:8px 10px}.birthdays .section-head h2{align-items:center;gap:9px;margin:0;display:flex}.birthdays .section-head>span{color:var(--muted);font-size:11px}.birthday-columns{grid-template-columns:1fr 1fr;gap:24px;display:grid}.birthday-columns>div+div{border-left:1px solid var(--border);padding-left:24px}.birthday-columns h3{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:10px}.birthday-columns p{justify-content:space-between;gap:14px;margin:8px 0 0;display:flex}.birthday-columns p span{color:var(--muted);white-space:nowrap}.coach-catalog,.catalog-row{gap:12px;display:grid}.catalog-row{border-top:1px solid var(--border);padding:14px 0}.btn{border-radius:var(--radius-sm);background:var(--primary);color:#fff;cursor:pointer;letter-spacing:.035em;text-transform:uppercase;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;min-height:40px;padding:0 15px;font-size:12px;font-weight:900;text-decoration:none;display:inline-flex}.btn:hover{background:#ee213b}.btn.secondary{background:var(--surface-raised);border-color:var(--border)}.btn.ghost{border-color:var(--border);color:var(--foreground);background:0 0}.btn:disabled{opacity:.45;cursor:not-allowed}.field{color:#c8c9cc;flex-direction:column;gap:8px;font-size:12px;font-weight:750;display:flex}.field input,.field select,.field textarea,.filters input,.filters select,.section-head input{min-width:0;min-height:42px;color:var(--foreground);border:1px solid var(--border);border-radius:var(--radius-sm);background:#111316;outline:none;padding:9px 11px}.field input:focus,.field select:focus,.field textarea:focus,.filters input:focus,.filters select:focus{border-color:#767a82;box-shadow:0 0 0 2px #ffffff0c}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field.full{grid-column:1/-1}.checks{flex-wrap:wrap;gap:12px;display:flex}.check{align-items:center;gap:8px;display:flex}fieldset.card{margin:0}.filters{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}.actions,.row-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.empty,.empty-state{color:var(--muted);text-align:center;padding:48px 20px}.form-error{color:#ffb3ba;border-radius:var(--radius-sm);background:#3b171c;border:1px solid #6d2730;padding:11px 12px}.form-success{color:#9ee0b7;border-radius:var(--radius-sm);background:#153122;border:1px solid #285c3d;padding:11px 12px}.table-wrap,.student-table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{color:#777b83;border-bottom:1px solid var(--border);letter-spacing:.12em;text-align:left;text-transform:uppercase;white-space:nowrap;background:#121417;padding:13px 15px;font-size:9px;font-weight:900}td{vertical-align:middle;border-top:1px solid #292c31;padding:15px}tbody tr:first-child td{border-top:0}tbody tr:hover{background:#1b1d21}.badge{color:#b8bbc0;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;background:#25282d;border:1px solid #3b3e44;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:9px;font-weight:900;display:inline-flex}.badge.paid{color:#84d7a2;background:#183323;border-color:#28593a}.badge.pending{color:#efc074;background:#382b17;border-color:#674a20}.badge.status-active,.badge.ACTIVE{color:#bfc3c9}.badge.status-paused,.badge.PAUSED{color:#efc074;background:#382b17;border-color:#674a20}.badge.status-inactive,.badge.INACTIVE{color:#ef929b;background:#391a20;border-color:#672832}.students-page{max-width:1600px}.student-toolbar{grid-template-columns:minmax(260px,720px) auto;justify-content:space-between;gap:14px;margin-bottom:17px;display:grid}.student-search{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius);min-height:48px;color:var(--muted);align-items:center;gap:11px;padding:0 15px;display:flex}.student-search:focus-within{border-color:#767a82}.student-search input{color:#fff;background:0 0;border:0;outline:0;width:100%}.new-student{min-height:48px;padding-inline:18px}.desktop-filters{border-radius:var(--radius);background:#141619;border:1px solid #292c31;flex-wrap:wrap;gap:10px;padding:14px;display:flex}.desktop-filters label,.mobile-filter-body label{color:#777b82;letter-spacing:.1em;text-transform:uppercase;gap:7px;min-width:150px;font-size:9px;font-weight:900;display:grid}.filter-select{color:#d6d7da;border-radius:var(--radius-sm);background:#1b1d21;border:1px solid #34373d;outline:0;min-height:38px;padding:0 34px 0 10px}.result-line{min-height:53px;color:var(--muted);align-items:center;gap:7px;font-size:12px;display:flex}.result-line strong{color:#fff}.result-line button{color:#aaaeb5;cursor:pointer;background:0 0;border:0;margin-left:auto;font-size:11px;text-decoration:underline}.student-table-wrap{overflow:visible}.student-table th:last-child,.student-table td:last-child{text-align:right}.student-name{color:#fff;font-size:14px;display:block}.student-meta{color:#73777e;margin-top:4px;font-size:11px;display:block}.money-cell{color:#e7e4dd;white-space:nowrap;font-weight:750}.row-actions{flex-wrap:nowrap;justify-content:flex-end}.row-actions a{color:#9da0a6;white-space:nowrap;font-size:11px;font-weight:750;text-decoration:none}.row-actions a:hover{color:#fff}.row-actions .pay-action{color:#fff;background:var(--primary);border-radius:var(--radius-sm);text-transform:uppercase;align-items:center;min-height:32px;padding:0 10px;font-size:10px;font-weight:900;display:inline-flex}.text-warning{color:var(--warning)}.student-mobile-list,.mobile-filter-toggle{display:none}.empty-state{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);justify-items:center;gap:8px;display:grid}.empty-state strong{color:#fff;font-size:16px}.auth-shell{background:#090a0b;place-items:center;min-height:100svh;padding:24px;display:grid;position:relative;overflow:hidden}.auth-shell:before{content:"";background-image:linear-gradient(#ffffff05 1px,#0000 1px),linear-gradient(90deg,#ffffff05 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 78%);mask-image:linear-gradient(#000,#0000 78%)}.auth-backdrop{opacity:.035;filter:grayscale();width:min(74vw,920px);height:min(74vw,920px);position:absolute;bottom:-42vh;right:-10vw}.auth-backdrop img{object-fit:contain}.login-panel{z-index:1;border:1px solid #33363b;border-top:3px solid var(--primary);background:#111316ed;width:min(100%,430px);padding:38px;position:relative;box-shadow:0 26px 70px #0008}.login-brand{justify-content:center;align-items:center;gap:16px;margin-bottom:36px;display:flex}.login-brand img{object-fit:contain;width:86px;height:86px}.login-brand strong{font:400 30px/.9 var(--display);letter-spacing:.05em;display:block}.login-brand span{color:var(--primary);letter-spacing:.3em;margin-top:8px;font-size:9px;font-weight:900;display:block}.login-heading{text-align:center}.login-heading p{color:var(--primary);letter-spacing:.2em;margin-bottom:7px;font-size:9px;font-weight:900}.login-heading h1{margin:0;font-size:40px}.login-heading>span{color:var(--muted);font-size:12px}.login-form{gap:17px;margin-top:30px;display:grid}.login-form .btn{min-height:46px;margin-top:4px}.login-foot{color:#555960;letter-spacing:.16em;text-align:center;margin-top:28px;font-size:8px;font-weight:900;display:block}@media (max-width:1100px){.app-shell{grid-template-columns:82px minmax(0,1fr)}.sidebar{padding-inline:12px}.sidebar-brand{text-align:center;padding-inline:0}.sidebar-brand span{font-size:0}.sidebar-brand span:before{content:"UD";color:#fff;font:25px/1 var(--display)}.sidebar-brand small,.sidebar-nav span,.sidebar-footer small{display:none}.sidebar-nav a{justify-content:center;padding:0}.sidebar-nav a.active:before{left:-13px}.sidebar-mark{left:-65px}.sidebar-footer{justify-content:center;padding-inline:0}.grid4{grid-template-columns:repeat(2,minmax(0,1fr))}.details{grid-template-columns:1fr}.student-table{min-width:1040px}.student-table-wrap{overflow:auto}}@media (max-width:640px){.app-shell{display:block}.sidebar{border-bottom:1px solid #292b30;border-right:0;flex-direction:row;align-items:center;width:100%;height:auto;min-height:65px;padding:11px 14px;position:static;overflow-x:auto}.sidebar:before{width:auto;height:2px;inset:auto 0 0}.sidebar-brand{border:0;flex:none;padding:0 15px 0 0}.sidebar-brand span:before{font-size:22px}.sidebar-nav{flex:none;padding:0;display:flex}.sidebar-nav a{width:42px;min-height:42px}.sidebar-nav a.active:before,.sidebar-mark,.sidebar-footer{display:none}.account-bar{min-height:52px;padding:0 15px}.account-copy strong{font-size:12px}.content{padding:29px 15px 50px}.page-heading{margin-bottom:22px}.page-heading h1{font-size:39px}.page-heading p{max-width:300px;font-size:13px;line-height:1.45}.grid4,.form-grid,.birthday-columns{grid-template-columns:1fr}.birthday-columns>div+div{border-left:0;border-top:1px solid var(--border);padding:18px 0 0}.field.full{grid-column:auto}.section-head{align-items:flex-start}.table-wrap{overflow:auto}.table-wrap table{min-width:700px}.student-toolbar{grid-template-columns:1fr}.student-search{min-height:50px}.new-student{width:100%}.desktop-filters,.student-table-wrap{display:none}.mobile-filter-toggle{border-radius:var(--radius);background:#141619;border:1px solid #2c2f34;margin:13px 0 0;display:block}.mobile-filter-toggle summary{color:#b0b3b8;cursor:pointer;letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;min-height:43px;padding:0 13px;font-size:11px;font-weight:850;list-style:none;display:flex}.mobile-filter-toggle summary::-webkit-details-marker{display:none}.mobile-filter-body{grid-template-columns:1fr 1fr;gap:11px;padding:0 12px 13px;display:grid}.mobile-filter-body label{min-width:0}.result-line{min-height:48px}.student-mobile-list{gap:10px;display:grid}.student-mobile-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);border-left:2px solid #3b3e44;padding:17px}.mobile-student-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.mobile-student-head strong{letter-spacing:-.01em;font-size:16px;display:block}.mobile-student-head div>span{color:var(--muted);margin-top:5px;font-size:11px;display:block}.mobile-coaches{color:#b7b9bd;min-height:18px;margin:15px 0 12px;font-size:12px}.mobile-payment{border-top:1px solid #2a2d31;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.mobile-payment strong{font-size:17px}.mobile-actions{grid-template-columns:1fr 1.35fr;gap:8px;display:grid}.mobile-actions a{color:#c3c5c8;border-radius:var(--radius-sm);text-transform:uppercase;background:#22252a;border:1px solid #35383e;justify-content:center;align-items:center;min-height:38px;font-size:10px;font-weight:900;text-decoration:none;display:flex}.mobile-actions a.pay-action{color:#fff;background:var(--primary);border-color:var(--primary)}.auth-shell{padding:15px}.login-panel{padding:30px 22px}.login-brand{margin-bottom:28px}.login-heading h1{font-size:36px}}
