@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--brand-color: #dc2626;--brand-hover: #b91c1c;--bg-page: #f9fafb;--bg-card: #ffffff;--text-main: #111827;--text-muted: #6b7280;--border-color: #e5e7eb;--shadow-color: rgba(0, 0, 0, .1);--error-bg: #fef2f2;--error-text: #b91c1c;--error-border: #fee2e2;color-scheme:light}@media(prefers-color-scheme:dark){:root{--bg-page: #0f172a;--bg-card: #1e293b;--text-main: #f9fafb;--text-muted: #94a3b8;--border-color: #334155;--shadow-color: rgba(0, 0, 0, .4);--error-bg: #450a0a;--error-text: #fecaca;--error-border: #7f1d1d;color-scheme:dark}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--bg-page);font-family:Inter,sans-serif;padding:20px;transition:background-color .3s ease}.login-container{display:flex;width:100%;max-width:1000px;height:600px;background:var(--bg-card);border-radius:24px;box-shadow:0 20px 25px -5px var(--shadow-color),0 10px 10px -5px #0000000a;overflow:hidden;border:1px solid var(--border-color);transition:background .3s ease,border-color .3s ease}.login-branding{flex:1;background:#111827;position:relative;color:#fff;padding:48px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.login-branding:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#dc262633,#11182700);z-index:1}.branding-content{position:relative;z-index:2;height:100%;display:flex;flex-direction:column}.logo-pill{display:inline-flex;align-items:center;gap:10px;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:8px 16px;border-radius:99px;width:fit-content;font-weight:600;font-size:14px;border:1px solid rgba(255,255,255,.1);color:#fff}.branding-hero-text{margin-top:auto;margin-bottom:48px}.branding-hero-text h1{font-size:2.5rem;line-height:1.1;font-weight:800;margin-bottom:16px;letter-spacing:-.02em;color:#fff}.text-highlight{color:var(--brand-color)}.branding-hero-text p{font-size:1.1rem;color:#9ca3af;line-height:1.5;max-width:90%}.branding-footer{display:flex;align-items:center;gap:24px;border-top:1px solid rgba(255,255,255,.1);padding-top:24px}.stat-item{display:flex;flex-direction:column}.stat-item strong{font-size:1.5rem;font-weight:700;color:#fff}.stat-item span{font-size:.875rem;color:#9ca3af}.stat-divider{width:1px;height:30px;background:#ffffff1a}.login-form-area{flex:1;display:flex;align-items:center;justify-content:center;padding:48px;background:var(--bg-card)}.login-form{width:100%;max-width:360px}.form-header{margin-bottom:32px}.form-header h2{font-size:1.875rem;font-weight:800;color:var(--text-main);margin:0 0 8px;letter-spacing:-.02em}.form-header p{color:var(--text-muted);margin:0}.error-alert{background:var(--error-bg);border:1px solid var(--error-border);color:var(--error-text);padding:12px;border-radius:8px;font-size:.875rem;margin-bottom:24px;display:flex;align-items:center}.input-group{margin-bottom:20px}.input-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-main);margin-bottom:6px}.input-wrapper{position:relative;isolation:isolate}.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#9ca3af;pointer-events:none;z-index:10}.input-wrapper input{width:100%;padding:12px 12px 12px 40px;border:1px solid var(--border-color);border-radius:8px;font-size:.95rem;color-scheme:light!important;background-color:#fff!important;color:#111827!important;transition:all .2s;-webkit-appearance:none}.input-wrapper input:focus{outline:none;border-color:var(--brand-color);background-color:#fff!important;color:#111827!important;caret-color:#111827!important;box-shadow:0 0 0 4px #dc26261a}.input-wrapper input::selection{background-color:#dc262633!important;color:#111827!important}.input-wrapper input::placeholder{color:#6b7280!important;opacity:1}.input-wrapper input:-webkit-autofill,.input-wrapper input:-webkit-autofill:hover,.input-wrapper input:-webkit-autofill:focus,.input-wrapper input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px #ffffff inset!important;-webkit-text-fill-color:#111827!important;caret-color:#111827;transition:background-color 5000s ease-in-out 0s}.form-options{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;font-size:.875rem}.locked-feature{opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none;cursor:not-allowed;filter:grayscale(100%)}.remember-me{display:flex;align-items:center;gap:8px;color:var(--text-muted)}.forgot-pass{color:var(--brand-color);font-weight:600}.login-submit-btn{width:100%;background:var(--brand-color);color:#fff;border:none;padding:14px;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}.login-submit-btn:hover{background:var(--brand-hover)}.login-submit-btn:disabled{opacity:.7;cursor:wait}.signup-prompt{margin-top:24px;text-align:center;font-size:.9rem;color:var(--text-muted)}.signup-prompt span{color:var(--brand-color);font-weight:600;cursor:pointer}.signup-prompt span:hover{text-decoration:underline}@media(max-width:900px){.login-container{height:auto;flex-direction:column;max-width:450px}.login-branding{display:none}}.signup-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f8fafc;padding:20px;font-family:Inter,sans-serif}.signup-container{display:flex;width:100%;max-width:1100px;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 20px 40px #00000014}.signup-branding{flex:1;background:linear-gradient(135deg,#1e293b,#0f172a);padding:60px;display:flex;flex-direction:column;justify-content:center;color:#fff}.brand-badge{display:inline-flex;align-items:center;gap:8px;background:#ffffff1a;padding:8px 16px;border-radius:99px;font-size:14px;margin-bottom:30px}.signup-branding h1{font-size:40px;line-height:1.2;margin-bottom:20px}.signup-branding h1 span{color:#38bdf8}.signup-branding p{font-size:16px;opacity:.8;line-height:1.6;margin-bottom:30px}.feature-list{list-style:none;padding:0}.feature-list li{margin-bottom:12px;font-weight:500;color:#e2e8f0}.signup-form-area{flex:1.2;padding:50px}.signup-form{width:100%;max-width:450px;margin:0 auto}.form-header{margin-bottom:30px}.form-header h2{font-size:28px;color:#0f172a;margin-bottom:6px}.form-header p{color:#64748b;font-size:14px}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.input-group{margin-bottom:18px}.input-group label{display:block;font-size:13px;font-weight:600;color:#475569;margin-bottom:6px}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:12px;color:#94a3b8}.input-wrapper input{width:100%;padding:12px 12px 12px 40px;border-radius:10px;border:1px solid #e2e8f0;font-size:15px;transition:.2s}.input-wrapper input:focus{outline:none;border-color:#0f172a;box-shadow:0 0 0 4px #0f172a0d}.signup-btn{width:100%;padding:14px;background:#0f172a;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:600;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:.2s;margin-top:10px}.signup-btn:hover{background:#1e293b}.signup-btn:disabled{opacity:.7;cursor:not-allowed}.error-alert{background:#fff1f2;color:#e11d48;padding:12px;border-radius:8px;font-size:13px;margin-bottom:20px;border-left:4px solid #e11d48}.login-link{text-align:center;margin-top:20px;font-size:14px;color:#64748b}.login-link span{color:#0f172a;font-weight:700;cursor:pointer}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:900px){.signup-branding{display:none}.input-grid{grid-template-columns:1fr}}#profile-page-root{--cp-primary: #dc2626;--cp-primary-hover: #b91c1c;--cp-bg: #f8fafc;--cp-card-bg: #ffffff;--cp-text-main: #1e293b;--cp-text-muted: #64748b;--cp-border: #e2e8f0;font-family:Inter,system-ui,sans-serif;color:var(--cp-text-main);background-color:var(--cp-bg);min-height:100vh;padding:20px;box-sizing:border-box}#profile-page-root *{box-sizing:border-box}#profile-page-root .cp-header-card{background:var(--cp-card-bg);border-radius:16px;overflow:hidden;border:1px solid var(--cp-border);box-shadow:0 1px 3px #0000000d;margin:0 auto 24px;max-width:1000px;position:relative}#profile-page-root .cp-banner{height:120px;background:linear-gradient(135deg,#111827,#374151);width:100%}#profile-page-root .cp-header-content{display:flex;align-items:flex-end;padding:0 24px 24px;margin-top:-40px;gap:20px;flex-wrap:wrap}#profile-page-root .cp-avatar-wrapper{flex-shrink:0}#profile-page-root .cp-avatar{width:100px;height:100px;background:var(--cp-primary);color:#fff;font-size:40px;font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:20px;border:4px solid var(--cp-card-bg);box-shadow:0 4px 6px #0000001a}#profile-page-root .cp-user-info{flex:1;padding-bottom:4px;min-width:200px}#profile-page-root .cp-name-block h1{margin:0;font-size:1.75rem;font-weight:800;color:var(--cp-text-main);line-height:1.2}#profile-page-root .cp-role-badge{display:inline-block;background:#eff6ff;color:#2563eb;font-size:.8rem;font-weight:600;padding:4px 10px;border-radius:99px;margin-top:6px;text-transform:uppercase;letter-spacing:.5px}#profile-page-root .cp-meta-row{display:flex;gap:16px;margin-top:12px;color:var(--cp-text-muted);font-size:.9rem}#profile-page-root .cp-meta-row span{display:flex;align-items:center;gap:6px}#profile-page-root .cp-header-actions{display:flex;gap:10px;padding-bottom:4px}#profile-page-root .cp-btn{display:flex;align-items:center;gap:8px;padding:10px 16px;border-radius:8px;font-weight:600;font-size:.9rem;cursor:pointer;transition:all .2s;border:1px solid transparent;font-family:inherit}#profile-page-root .cp-btn-outline{background:#fff;border-color:var(--cp-border);color:var(--cp-text-main)}#profile-page-root .cp-btn-outline:hover{background:#f1f5f9;border-color:#cbd5e1}#profile-page-root .cp-btn-danger{background:#fef2f2;color:#dc2626;border-color:#fee2e2}#profile-page-root .cp-btn-danger:hover{background:#fee2e2;border-color:#fecaca}#profile-page-root .cp-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;max-width:1000px;margin:0 auto}#profile-page-root .cp-section{display:flex;flex-direction:column;gap:24px}#profile-page-root .cp-card{background:var(--cp-card-bg);border:1px solid var(--cp-border);border-radius:12px;overflow:hidden}#profile-page-root .cp-card-header{padding:16px 20px;border-bottom:1px solid var(--cp-border);background:#fcfcfc;display:flex;align-items:center;gap:10px;color:var(--cp-text-main)}#profile-page-root .cp-card-header h3{margin:0;font-size:1rem;font-weight:700}#profile-page-root .cp-card-body{padding:20px}#profile-page-root .cp-info-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #f1f5f9}#profile-page-root .cp-info-row:last-child{border-bottom:none;padding-bottom:0}#profile-page-root .cp-info-row:first-child{padding-top:0}#profile-page-root .cp-info-icon{color:var(--cp-text-muted);background:#f1f5f9;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}#profile-page-root .cp-info-content label{display:block;font-size:.75rem;color:var(--cp-text-muted);margin-bottom:2px}#profile-page-root .cp-value{font-weight:500;color:var(--cp-text-main);font-size:.95rem}#profile-page-root .cp-list{display:flex;flex-direction:column}#profile-page-root .cp-list-item{display:flex;align-items:center;gap:16px;padding:16px 20px;border:none;background:transparent;border-bottom:1px solid var(--cp-border);cursor:pointer;text-align:left;transition:background .2s;width:100%}#profile-page-root .cp-list-item:last-child{border-bottom:none}#profile-page-root .cp-list-item:hover{background:#f8fafc}#profile-page-root .cp-icon-box{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}#profile-page-root .cp-icon-box.blue{background:#eff6ff;color:#2563eb}#profile-page-root .cp-icon-box.green{background:#f0fdf4;color:#16a34a}#profile-page-root .cp-icon-box.gray{background:#f1f5f9;color:#475569}#profile-page-root .cp-item-text{flex:1}#profile-page-root .cp-item-text strong{display:block;color:var(--cp-text-main);font-size:.95rem}#profile-page-root .cp-item-text span{font-size:.8rem;color:var(--cp-text-muted)}#profile-page-root .cp-arrow{color:#cbd5e1}#profile-page-root .cp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:var(--cp-text-muted);gap:12px}#profile-page-root .cp-spinner{animation:cp-spin 1s linear infinite}@keyframes cp-spin{to{transform:rotate(360deg)}}#profile-page-root .cp-error{text-align:center;padding:40px;color:var(--cp-primary)}@media(max-width:800px){#profile-page-root .cp-grid{grid-template-columns:1fr}#profile-page-root .cp-header-content{flex-direction:column;align-items:center;text-align:center;margin-top:-50px}#profile-page-root .cp-user-info{padding-bottom:16px}#profile-page-root .cp-meta-row{justify-content:center}#profile-page-root .cp-header-actions{width:100%}#profile-page-root .cp-btn{flex:1;justify-content:center}}.pos-root{--bg-main: radial-gradient(circle at top, #020617, #000000);--bg-panel: #020617;--bg-card: #0f172a;--bg-item: #1e293b;--text-primary: #e5e7eb;--text-secondary: #94a3b8;--border: #1f2937;--accent: #ef4444;--accent-hover: #7f1d1d;--success: #10b981;background:var(--bg-main);color:var(--text-primary);font-family:Inter,system-ui,sans-serif;height:100vh;width:100vw;display:flex;flex-direction:column;overflow:hidden}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-panel)}::-webkit-scrollbar-thumb{background:var(--bg-item);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.pos-root input,.pos-root select,.pos-root textarea{background-color:var(--bg-card)!important;color:var(--text-primary)!important;border:1px solid var(--border)!important;padding:10px;border-radius:6px;outline:none;font-size:14px}.pos-root input:focus{border-color:var(--accent)!important}.pos-root input::placeholder{color:var(--text-secondary)!important;opacity:.7}.pos-main-layout{display:grid;grid-template-columns:320px minmax(0,1fr) 340px;height:100%;width:100%}.pos-selection-panel,.pos-checkout-sidebar{background:var(--bg-panel);border:1px solid var(--border);padding:16px;display:flex;flex-direction:column;height:100%;overflow:hidden}.pos-selection-panel{border-right:1px solid var(--border)}.pos-checkout-sidebar{border-left:1px solid var(--border)}.pos-search-box{display:flex;align-items:center;gap:8px;background:var(--bg-card);padding:10px 12px;border-radius:8px;border:1px solid var(--border);margin-bottom:10px}.pos-search-box input{border:none!important;background:transparent!important;width:100%}.search-results{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;margin-top:6px;max-height:240px;overflow-y:auto;position:absolute;z-index:100;width:280px;box-shadow:0 10px 20px #00000080}.result-item{padding:12px;cursor:pointer;border-bottom:1px solid var(--border)}.result-item:hover{background:var(--accent);color:#fff}.active-customer-card{background:linear-gradient(135deg,#10b98126,#10b9810d);border:1px solid var(--success);border-radius:10px;padding:14px;display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;box-shadow:0 4px 6px -1px #0000004d}.active-customer-card strong{color:#fff;display:block;font-size:15px;font-weight:700}.active-customer-card small{color:var(--text-secondary);font-size:13px}.active-customer-card button{background:var(--bg-card);border:1px solid var(--border);color:var(--text-primary);padding:6px 12px;border-radius:6px;font-size:12px;cursor:pointer}.pos-center-panel{background:#000;display:flex;flex-direction:column;overflow:hidden}.center-body{flex:1;padding:20px 20px 100px;overflow-y:auto}.pos-tabs,.center-tabs{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}.pos-tabs button,.center-tabs button{padding:8px 16px;background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);border-radius:6px;cursor:pointer;font-weight:600}.pos-tabs button.active,.center-tabs button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.pos-product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.product-card{background:var(--bg-card);border:1px solid var(--border);padding:14px;border-radius:10px;cursor:pointer;transition:border-color .2s}.product-card:hover{border-color:var(--accent)}.product-card span{color:var(--text-primary);font-size:14px;font-weight:500}.product-card strong{display:block;margin-top:6px;color:var(--success);font-weight:700}.cart-items-container{flex:1;overflow-y:auto;margin-bottom:10px;padding-right:4px}.cart-item{background:var(--bg-card);border:1px solid var(--border);padding:12px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.item-meta span{font-weight:600;color:var(--text-primary);display:block}.item-meta small{color:var(--text-secondary);font-size:12px}.qty-ctrl{display:flex;gap:6px}.qty-ctrl button{background:var(--bg-item);border:1px solid var(--border);color:#fff;width:28px;height:28px;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.qty-ctrl button:hover{background:var(--accent)}.cart-footer{flex-shrink:0;background:var(--bg-panel);padding-top:10px;border-top:1px solid var(--border)}.total-line.main{font-size:22px;font-weight:800;color:#fff;margin-top:8px;margin-bottom:16px;display:flex;justify-content:space-between}.generate-invoice-btn{width:100%;background:var(--success);color:#020617;padding:16px;border:none;border-radius:8px;font-weight:800;font-size:16px;text-transform:uppercase;cursor:pointer}.generate-invoice-btn:hover{filter:brightness(1.1)}.mobile-cart-btn{display:none}@media(max-width:1024px){.pos-root{height:auto;min-height:100vh;overflow-y:auto}.pos-main-layout{display:flex;flex-direction:column}.pos-selection-panel{order:1;border-right:none;border-bottom:1px solid var(--border)}.pos-center-panel{order:2;min-height:60vh;overflow:visible}.pos-checkout-sidebar{position:fixed;right:-100%;top:0;width:85%;max-width:360px;height:100vh;z-index:2000;transition:right .3s cubic-bezier(.4,0,.2,1);box-shadow:-10px 0 30px #000c}.pos-checkout-sidebar.mobile-open{right:0}.cart-backdrop{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1900}.mobile-cart-btn{display:flex;position:fixed;bottom:24px;right:24px;width:60px;height:60px;background:var(--accent);color:#fff;border-radius:50%;align-items:center;justify-content:center;box-shadow:0 10px 25px #0009;z-index:1500;cursor:pointer;border:2px solid rgba(255,255,255,.2)}.mobile-cart-btn:active{transform:scale(.9)}.cart-badge{position:absolute;top:-5px;right:-5px;background:var(--success);color:#000;font-weight:800;font-size:12px;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #fff}}:root{--brand-red: #dc2626;--brand-red-hover: #b91c1c;--brand-black: #111827;--bg-main: #f3f4f6;--bg-card: #ffffff;--bg-subtle: #f9fafb;--text-main: #111827;--text-muted: #6b7280;--text-light: #9ca3af;--border: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-card: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--radius: 12px}body{margin:0;background-color:var(--bg-main);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-main);-webkit-font-smoothing:antialiased}.dash-layout{display:flex;flex-direction:column;min-height:100vh}.dash-body{max-width:1450px;width:100%;margin:0 auto;padding:32px 24px;flex:1}.dash-grid-container{display:grid;grid-template-columns:1fr 350px;gap:24px;margin-top:32px}.dash-navbar{height:70px;background:var(--bg-card);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:50;box-shadow:var(--shadow-sm)}.nav-brand{display:flex;align-items:center;gap:12px}.brand-icon{background:var(--brand-red);color:#fff;font-weight:900;padding:6px 12px;border-radius:6px;font-size:14px;letter-spacing:1px}.brand-text{font-weight:800;font-size:1.1rem;color:var(--brand-black);text-transform:uppercase;letter-spacing:-.5px}.nav-logout-btn{background:#fff;border:1px solid var(--border);color:var(--text-muted);padding:8px 16px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:.9rem}.nav-logout-btn:hover{border-color:var(--brand-red);color:var(--brand-red);background:#fff1f2}.dash-hero-section{background:var(--bg-card);border-radius:var(--radius);padding:10px;border:1px solid var(--border);box-shadow:var(--shadow-card);position:relative;overflow:hidden;display:flex;align-items:center;gap:24px}.dash-hero-section:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--brand-red)}.hero-avatar-large{width:52px;height:52px;background:var(--brand-black);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;box-shadow:0 4px 12px #0003}.hero-text-content h1{margin:0 0 8px;font-size:1.5rem;color:var(--brand-black);font-weight:800}.hero-text-content p{margin:0;color:var(--text-muted);font-size:1.1rem}.stats-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px;margin-bottom:32px}.dash-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;position:relative;overflow:hidden;box-shadow:var(--shadow-sm);transition:transform .2s}.dash-stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card);border-color:var(--brand-red)}.stat-decoration-icon{display:none}.stat-label{font-size:.75rem;text-transform:uppercase;font-weight:700;color:var(--text-muted);letter-spacing:1px;margin-bottom:8px;display:flex;align-items:center;gap:8px}.stat-label svg,.stat-label i{font-size:1.2rem;color:var(--brand-black)}.stat-value{font-size:2rem;font-weight:800;color:var(--brand-black);margin:0}.widget-wrapper{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.widget-header{font-size:.85rem;font-weight:800;text-transform:uppercase;color:var(--text-muted);margin-bottom:20px;display:flex;align-items:center;gap:8px}.growth-stepper{display:flex;flex-direction:column;gap:0;position:relative;padding-left:10px}.step{display:flex;align-items:flex-start;position:relative;padding-bottom:32px}.step:last-child{padding-bottom:0}.step:before{content:"";position:absolute;left:7px;top:20px;bottom:-10px;width:2px;background-color:var(--border);z-index:0}.step:last-child:before{display:none}.step-dot{width:16px;height:16px;border-radius:50%;background:var(--bg-card);border:2px solid var(--border);z-index:1;margin-right:16px;flex-shrink:0;margin-top:4px}.step.active .step-dot{background:var(--brand-red);border-color:var(--brand-red);box-shadow:0 0 0 4px #dc262633}.step-label{font-weight:600;font-size:1rem;color:var(--text-muted)}.step.active .step-label{color:var(--brand-black);font-weight:800}.id-card-details{display:flex;flex-direction:column;gap:12px}.id-row{display:flex;flex-direction:column;gap:4px}.id-label{font-size:.75rem;font-weight:600;color:var(--text-light);text-transform:uppercase}.id-value-group{display:flex;align-items:center;justify-content:space-between;background:var(--bg-subtle);padding:8px 12px;border-radius:6px;border:1px solid var(--border)}.code-text{font-family:monospace;font-size:1rem;font-weight:700;color:var(--brand-black)}.copy-btn{background:none;border:none;cursor:pointer;color:var(--text-muted);padding:4px;display:flex;align-items:center}.copy-btn:hover{color:var(--brand-red)}.id-divider{height:1px;background:var(--border);margin:4px 0}.coach-info{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--brand-black)}.coach-phone-link{display:flex;align-items:center;gap:6px;color:var(--text-muted);text-decoration:none;font-size:.9rem;font-weight:500}.coach-phone-link:hover{color:var(--brand-red)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.section-header h3{margin:0;font-size:1.25rem;font-weight:700}.badge{background:var(--bg-main);color:var(--text-main);padding:4px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.sport-card-modern{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;transition:all .2s}.sport-card-modern:hover{border-color:var(--brand-red);box-shadow:var(--shadow-card)}.sport-icon-circle{width:48px;height:48px;background:var(--bg-subtle);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;color:var(--brand-black)}.sport-card-left{display:flex;align-items:center;gap:16px}.sport-info h4{margin:0 0 4px;font-size:1.1rem;font-weight:700}.sport-sub{font-size:.85rem;color:var(--text-muted)}.store-banner-widget{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:24px;text-align:left}.locked-state{background-color:#f9f9f9;opacity:.95;border:1px dashed var(--border)}.store-banner-widget h4{margin:0;color:var(--brand-black);font-size:1.1rem;font-weight:700}.store-banner-widget p{margin:8px 0 16px;color:var(--text-muted);font-size:.9rem}.store-link-btn{background:var(--brand-red);color:#fff;border:none;padding:12px;border-radius:8px;font-weight:700;width:100%;cursor:pointer;font-size:.9rem;transition:background .2s;text-align:center}.store-link-btn:hover{background:var(--brand-red-hover)}.store-link-btn.disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed;border:1px solid #d1d5db}.store-link-btn.disabled:hover{background-color:#e5e7eb}.dash-footer{text-align:center;margin-top:40px;color:var(--text-light);font-size:.85rem;padding-bottom:20px}@media(max-width:900px){.dash-grid-container,.stats-row{grid-template-columns:1fr}.dash-body{padding:16px}}:root{--kd-primary: #d32f2f;--kd-bg: #f8fafc;--kd-card: #ffffff;--kd-text: #1e293b;--kd-muted: #94a3b8;--kd-shadow: 0 4px 12px rgba(0,0,0,.08)}*{box-sizing:border-box}body{margin:0;background:var(--kd-bg)}.kd-container{max-width:1100px;margin:40px auto 16px;padding:0 16px;font-family:Inter,system-ui,-apple-system,sans-serif;color:var(--kd-text)}.kd-hero{position:relative}.kd-back-btn{position:absolute;top:-42px;left:0;background:#0000000d;border:none;color:#4b5563;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:600;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:all .2s}.kd-back-btn:hover{background:#0000001a;color:#111827}.kd-hero{background:#111827;color:#fff;padding:clamp(20px,4vw,32px);border-radius:24px;display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;box-shadow:0 12px 20px #00000040;gap:16px}.kd-hero-main{display:flex;align-items:center;gap:16px}.kd-avatar{width:56px;height:56px;background:var(--kd-primary);border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:800;flex-shrink:0}.kd-hero-details h1{font-size:clamp(18px,3vw,24px);margin:0;letter-spacing:-.5px}.kd-hero-details p{margin:4px 0 0;opacity:.75;font-size:14px}.kd-belt-tag{padding:8px 16px;border-radius:999px;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:1px}.kd-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.kd-card{background:var(--kd-card);padding:clamp(16px,3vw,24px);border-radius:20px;box-shadow:var(--kd-shadow)}.kd-full{grid-column:span 2}.kd-card h3{margin:0 0 14px;font-size:15px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.kd-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.kd-status-pill{padding:4px 12px;border-radius:999px;font-size:14px;font-weight:800}.kd-status-pill.good{color:#16a34a}.kd-status-pill.warn{color:#d97706}.kd-progress-container{height:8px;background:#e5e7eb;border-radius:6px;overflow:hidden;margin-bottom:10px}.kd-progress-bar{height:100%;background:var(--kd-primary)}.kd-sub-info{font-size:12px;color:var(--kd-muted)}.workout-card{background:#fff;border-radius:20px;padding:20px;box-shadow:0 6px 16px #00000014}.workout-header{display:flex;gap:16px;margin-bottom:20px}.workout-day{background:#0f172a;color:#fff;border-radius:14px;padding:12px 16px;text-align:center;min-width:80px}.workout-day span{font-size:11px;opacity:.7}.workout-day strong{font-size:22px;display:block}.workout-title h3{margin:0;font-size:20px;text-transform:capitalize}.workout-title p{margin:6px 0 0;font-size:14px;color:#64748b}.phase-block{margin-bottom:24px}.phase-label{display:inline-flex;align-items:center;gap:10px;background:#0f172a;color:#fff;padding:6px 12px;border-radius:999px;font-size:12px;font-weight:700;margin-bottom:12px}.phase-label span{opacity:.8}.exercise-list{display:flex;flex-direction:column;gap:12px}.exercise-row{background:#f8fafc;border-radius:14px;padding:14px 16px;border:1px solid #e5e7eb}.exercise-name{font-weight:700;font-size:15px;margin-bottom:10px}.exercise-meta{display:flex;flex-wrap:wrap;gap:8px}.chip{font-size:12px;padding:6px 10px;border-radius:999px;font-weight:600}.chip.blue{background:#e0f2fe;color:#0369a1}.chip.orange{background:#ffedd5;color:#9a3412}.chip.gray{background:#e5e7eb;color:#374151}.chip.intensity.low{background:#dcfce7;color:#166534}.chip.intensity.medium{background:#fef3c7;color:#92400e}.chip.intensity.high{background:#fee2e2;color:#991b1b}.muted{color:#94a3b8;font-size:13px}.kd-goal-flex{display:flex;justify-content:space-between;align-items:center;gap:12px}.kd-goal-info p{margin:0;font-size:17px}.kd-goal-info small{color:var(--kd-muted);display:block;margin-top:4px}.kd-goal-icon{font-size:30px}.kd-daily-card h4{font-size:18px;margin:8px 0;font-weight:800}.kd-training-desc{font-size:14px;color:var(--kd-muted);margin-bottom:14px}.kd-phase-wrapper{display:flex;flex-direction:column;gap:16px}.kd-phase-card{background:#f9fafb;border-radius:14px;padding:14px;border:1px solid #e5e7eb}.kd-phase-title{font-size:12px;font-weight:800;color:#3b82f6;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e5e7eb;padding-bottom:8px;display:block;width:100%}.kd-exercise-list{display:flex;flex-direction:column;gap:10px}.kd-exercise-card{background:#fff;border-radius:12px;padding:12px;border:1px solid #e5e7eb}.kd-ex-header{display:flex;justify-content:space-between;align-items:center}.kd-ex-name{font-weight:700;font-size:14px}.kd-intensity{font-size:11px;padding:4px 10px;border-radius:999px;font-weight:700;text-transform:capitalize}.kd-intensity.low{background:#dcfce7;color:#166534}.kd-intensity.medium{background:#fef3c7;color:#92400e}.kd-intensity.high{background:#fee2e2;color:#991b1b}.kd-ex-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:12px;color:#475569}.kd-timeline{display:flex;overflow-x:auto;gap:24px;padding:12px 0;scroll-snap-type:x mandatory}.kd-timeline-item{min-width:110px;display:flex;flex-direction:column;align-items:center;text-align:center;scroll-snap-align:center}.kd-timeline-marker{width:14px;height:14px;border-radius:50%;border:3px solid #fff;box-shadow:0 0 0 2px #e5e7eb;margin-bottom:10px}.kd-timeline-content strong{display:block;font-size:13px}.kd-timeline-content p{font-size:11px;color:var(--kd-muted);margin:4px 0 0}.kd-empty{color:var(--kd-muted);text-align:center;padding:40px 0;font-size:14px;opacity:.7;font-style:italic}@media(max-width:640px){.kd-content-grid{grid-template-columns:1fr}.kd-full{grid-column:span 1}.kd-avatar{width:44px;height:44px;font-size:18px}.kd-belt-tag{padding:6px 12px;font-size:11px}}.kd-daily-header{display:flex;gap:16px;align-items:center;margin-bottom:20px}.kd-day-box{background:#0f172a;color:#fff;border-radius:16px;padding:14px 18px;text-align:center;min-width:90px}.kd-day-label{font-size:11px;opacity:.8;display:block}.kd-day-number{font-size:26px;font-weight:800}.kd-daily-title{margin:0;font-size:22px;text-transform:capitalize}.kd-daily-desc{margin:4px 0 0;color:var(--kd-muted)}.kd-phase-block{margin-top:24px}.kd-phase-header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.kd-phase-pill{background:#0f172a;color:#fff;padding:4px 10px;border-radius:999px;font-size:11px;font-weight:700}.kd-phase-name{font-weight:700;color:#475569;letter-spacing:1px}.kd-exercise-row{background:#f8fafc;border-radius:14px;padding:14px 16px;margin-bottom:10px}.kd-exercise-name{font-weight:700;margin-bottom:8px}.kd-exercise-meta{display:flex;flex-wrap:wrap;gap:8px}.kd-chip{font-size:12px;padding:4px 10px;border-radius:999px;font-weight:600}.kd-chip.blue{background:#e0edff;color:#2563eb}.kd-chip.orange{background:#ffedd5;color:#c2410c}.kd-chip.gray{background:#e5e7eb;color:#374151}.kd-chip.intensity.medium{background:#fee2e2;color:#b91c1c}.kd-chip.intensity.high{background:#ffe4e6;color:#9f1239}.kyc-container{max-width:700px;margin:0 auto;padding:20px;font-family:Inter,sans-serif;color:#1e293b}.kyc-header{text-align:center;margin-bottom:24px}.kyc-header h1{font-size:1.5rem;font-weight:700;margin-bottom:8px}.kyc-header p{color:#64748b;font-size:.95rem}.kyc-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #e2e8f0;overflow:hidden}.form-card{padding:32px}.form-section-title{font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:#94a3b8;margin:24px 0 16px;border-bottom:1px solid #f1f5f9;padding-bottom:8px}.form-section-title:first-child{margin-top:0}.form-grid,.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.upload-grid .form-group:last-child:nth-child(odd){grid-column:span 2}@media(max-width:600px){.form-grid,.upload-grid{grid-template-columns:1fr}.upload-grid .form-group:last-child:nth-child(odd){grid-column:span 1}}.textarea-wrap svg.textarea-icon{top:24px;transform:none}.input-wrap input,.input-wrap textarea{width:100%;padding:12px 14px 12px 42px;border:1px solid #cbd5e1;border-radius:8px;font-size:.95rem;transition:all .2s;font-family:inherit}.input-wrap textarea{resize:vertical;min-height:80px}.input-wrap input:focus,.input-wrap textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.file-label{display:flex;justify-content:center;align-items:center;padding:20px;border:2px dashed #cbd5e1;border-radius:12px;cursor:pointer;background:#f8fafc;transition:all .2s;min-height:100px;text-align:center}.file-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#64748b;font-size:.9rem}.file-selected{display:flex;flex-direction:column;align-items:center;gap:6px;color:#2563eb;font-size:.9rem;font-weight:500}.change-text{font-size:.75rem;text-decoration:underline;color:#64748b;font-weight:400}.submit-btn{width:100%;background:#dc2626;color:#fff;border:none;padding:14px;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s;margin-top:10px}.kyc-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:#64748b;gap:12px}.kyc-summary{width:100%;margin-top:24px;border-top:1px solid #e2e8f0;padding-top:24px}.badge-success{background:#dcfce7;color:#166534;padding:2px 8px;border-radius:99px;font-size:.8rem;font-weight:600}.bank-container{max-width:600px;margin:0 auto;padding:20px;font-family:Inter,sans-serif;color:#1e293b}.bank-header{text-align:center;margin-bottom:24px}.bank-header h1{font-size:1.5rem;font-weight:700;margin-bottom:8px}.bank-header p{color:#64748b;font-size:.95rem}.bank-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;border:1px solid #e2e8f0;overflow:hidden}.form-card{padding:24px}.form-group{margin-bottom:20px}.form-group label{display:block;font-size:.9rem;font-weight:500;color:#334155;margin-bottom:8px}.input-wrap{position:relative}.input-wrap svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8}.input-wrap input{width:100%;padding:12px 14px 12px 42px;border:1px solid #cbd5e1;border-radius:8px;font-size:.95rem;transition:all .2s}.input-wrap input:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.file-upload-box{position:relative}.file-upload-box input[type=file]{display:none}.file-label{display:flex;justify-content:center;align-items:center;padding:24px;border:2px dashed #cbd5e1;border-radius:12px;cursor:pointer;background:#f8fafc;transition:all .2s}.file-label:hover{border-color:#2563eb;background:#eff6ff}.file-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#64748b}.file-placeholder small{font-size:.8rem;opacity:.7}.file-selected{display:flex;flex-direction:column;align-items:center;gap:6px;color:#2563eb}.file-icon{color:#2563eb}.change-text{font-size:.8rem;text-decoration:underline;color:#64748b}.submit-btn{width:100%;background:#dc2626;color:#fff;border:none;padding:14px;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .2s}.submit-btn:hover{background:#b91c1c}.submit-btn:disabled{background:#94a3b8;cursor:not-allowed}.form-msg{padding:12px;border-radius:8px;margin-bottom:16px;font-size:.9rem;text-align:center}.form-msg.success{background:#dcfce7;color:#166534}.form-msg.error{background:#fee2e2;color:#991b1b}.bank-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:300px;color:#64748b;gap:12px}.spinner{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-card{text-align:center;padding:40px 24px;display:flex;flex-direction:column;align-items:center;gap:16px}.icon-badge{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.status-card.approved .icon-badge{background:#dcfce7;color:#16a34a}.status-card.approved h2{color:#16a34a;margin:0;font-size:1.4rem}.status-card.pending .icon-badge{background:#ffedd5;color:#ea580c}.status-card.pending h2{color:#ea580c;margin:0;font-size:1.4rem}.status-note{background:#fff7ed;padding:12px;border-radius:8px;border:1px solid #ffedd5;font-size:.9rem;color:#c2410c;margin-top:12px}.rejection-alert{background:#fef2f2;border:1px solid #fee2e2;padding:16px;border-radius:12px;display:flex;gap:12px;align-items:flex-start;margin-bottom:24px;color:#991b1b}.rejection-alert svg{flex-shrink:0}.rejection-alert p{margin:4px 0 0;font-size:.9rem;opacity:.9}.bank-summary{width:100%;margin-top:24px;border-top:1px solid #e2e8f0;padding-top:24px}.summary-row{display:flex;justify-content:space-between;padding:8px 0;font-size:.95rem}.summary-row span{color:#64748b}.summary-row strong{color:#1e293b}.today-table-wrapper{background:#fff;border-radius:16px;padding:16px;box-shadow:0 10px 30px #0000000d}.today-table-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.today-table-header h2{font-size:18px;font-weight:700}.today-table-summary span{margin-right:12px;font-size:13px}.green{color:#16a34a}.orange{color:#f97316}.table-scroll{overflow-x:auto}.today-table{width:100%;border-collapse:collapse;min-width:700px}.today-table th{text-align:left;font-size:12px;text-transform:uppercase;color:#64748b;padding:12px;border-bottom:1px solid #e5e7eb}.today-table td{padding:14px 12px;border-bottom:1px solid #f1f5f9;font-size:14px}.name-cell strong{color:#0f172a}.status{padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.status.done{background:#dcfce7;color:#166534}.status.pending{background:#ffedd5;color:#9a3412}.streak{font-weight:600}.action-btn{padding:6px 12px;border-radius:8px;background:#4f46e5;color:#fff;border:none;font-size:13px;cursor:pointer}.action-btn:hover{background:#4338ca}.empty{text-align:center;padding:24px;color:#64748b}@media(max-width:768px){.today-table-wrapper{padding:12px}.today-table{min-width:100%;display:block}.today-table thead{display:none}.today-table tbody{display:block}.today-table tr{display:block;margin-bottom:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px;position:relative}.today-table td{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;padding:10px 0}.today-table td:before{content:attr(data-label);font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase}.today-table td.name-cell{display:block;text-align:left;border-bottom:2px solid #e2e8f0;padding-top:0;padding-bottom:12px;margin-bottom:8px}.today-table td.name-cell:before{display:none}.today-table td.name-cell strong{font-size:16px;color:#1e293b}.today-table td.action-cell{border-bottom:none;padding-bottom:0;padding-top:12px;justify-content:flex-end}.today-table td.action-cell:before{display:none}.action-btn{width:100%;text-align:center;padding:10px;font-size:14px}}:root{--primary: #2563eb;--bg-main: #f8fafc;--bg-card: #ffffff;--text-main: #0f172a;--text-muted: #64748b;--border: #e2e8f0}.cbo-root{display:flex;min-height:100vh;background:var(--bg-main);font-family:Inter,sans-serif;color:var(--text-main)}main{flex:1;display:flex;flex-direction:column;position:relative;margin-left:260px;width:calc(100% - 260px)}.content{padding:24px 24px 90px;max-width:1200px;margin:0 auto;width:100%}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:24px}.stat{background:var(--bg-card);padding:20px;border-radius:16px;border:1px solid var(--border);display:flex;flex-direction:column;justify-content:center;min-height:100px}.stat-label{font-size:.85rem;color:var(--text-muted);font-weight:500;margin-bottom:8px}.stat-value{font-size:2rem;font-weight:800;color:var(--text-main);line-height:1}.stat.green .stat-value{color:#16a34a}.stat.green{background:#f0fdf4;border-color:#dcfce7}.stat.orange .stat-value{color:#ea580c}.stat.orange{background:#fff7ed;border-color:#ffedd5}.stat.purple .stat-value{color:#7c3aed}.stat.purple{background:#5b21b6;border-color:#4c1d95;color:#fff}.stat.purple .stat-label{color:#fffc}.stat.purple .stat-value{color:#fff}.main-grid{display:grid;grid-template-columns:2fr 1fr;gap:24px}.card{background:var(--bg-card);border-radius:16px;border:1px solid var(--border);padding:0;overflow:hidden}.student-card{padding:20px}.right-panel{display:flex;flex-direction:column;gap:20px}.widget-card{padding:20px}.warning-card{background:#fef2f2;border:1px solid #fee2e2;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:12px}.warning-icon{color:#dc2626;background:#fee2e2;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center}.warning-text strong{display:block;color:#991b1b;font-size:1rem}.warning-text p{margin:4px 0 0;font-size:.85rem;color:#b91c1c}.warning-card button{background:#dc2626;color:#fff;border:none;padding:10px;border-radius:8px;font-weight:600;cursor:pointer;margin-top:8px}@media(max-width:900px){main{margin-left:0;width:100%}.sidebar{transform:translate(-100%);position:fixed;z-index:50;transition:transform .3s}.sidebar.open{transform:translate(0)}.topbar .menu-btn{display:block}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.main-grid{grid-template-columns:1fr}.stat{min-height:90px;padding:16px}.stat-value{font-size:1.5rem}.mobile-nav{display:flex}}.sidebar{width:260px;background:var(--bg-card);border-right:1px solid var(--border);height:100vh;position:fixed;left:0;top:0;padding:24px;display:flex;flex-direction:column;justify-content:space-between}.sidebar-brand{font-size:1.5rem;font-weight:800;margin-bottom:40px}.sidebar nav button{display:flex;align-items:center;gap:12px;width:100%;padding:12px;background:transparent;border:none;border-radius:8px;font-weight:600;color:var(--text-muted);cursor:pointer;text-align:left}.sidebar nav button.active{background:#eff6ff;color:var(--primary)}.topbar{background:var(--bg-card);border-bottom:1px solid var(--border);height:64px;padding:0 24px;display:flex;align-items:center;justify-content:space-between}.topbar h1{font-size:1.2rem;margin:0}.menu-btn{display:none;background:var(--bg-card);color:var(--text-main);border:none;font-size:1.2rem}.mobile-nav{display:none;position:fixed;bottom:0;left:0;right:0;background:#fff;border-top:1px solid var(--border);height:70px;justify-content:space-around;align-items:center;z-index:100;padding-bottom:env(safe-area-inset-bottom)}.mobile-nav button{background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:4px;color:var(--text-muted);font-size:.7rem;font-weight:600}.mobile-nav button.active{color:var(--primary)}.history-container{display:flex;flex-direction:column;gap:16px;padding-bottom:20px}.history-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:0 1px 2px #0000000d;transition:all .2s ease;position:relative;overflow:hidden}.history-card:hover{transform:translateY(-2px);box-shadow:0 8px 12px -3px #0000000d}.history-card.status-done{border-left:4px solid #22c55e}.history-card.status-missed{border-left:4px solid #ef4444}.history-meta{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:100px}.history-day-badge{background:#f1f5f9;color:#475569;font-size:11px;font-weight:700;text-transform:uppercase;padding:4px 8px;border-radius:6px}.history-date{display:flex;align-items:center;gap:6px;color:#94a3b8;font-size:13px;font-weight:500}.history-content{flex:1}.history-content h4{margin:0;font-size:16px;font-weight:600;color:#0f172a}.status-pill{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600}.status-pill.success{background:#dcfce7;color:#15803d}.status-pill.error{background:#fee2e2;color:#b91c1c}.history-empty{text-align:center;padding:60px 20px;background:#fff;border-radius:16px;border:1px dashed #cbd5e1;color:#64748b}.empty-icon-bg{width:60px;height:60px;background:#f8fafc;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;color:#94a3b8}.history-empty h3{margin:0 0 8px;color:#0f172a;font-size:16px}.history-empty p{margin:0;font-size:14px}.history-loader{text-align:center;padding:40px;color:#94a3b8;font-size:14px}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slideUp .3s ease-out forwards}@media(max-width:600px){.history-card{flex-direction:column;align-items:flex-start;gap:12px}.history-meta{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.history-status{align-self:flex-start}}:root{--bg-page: #f8fafc;--bg-card: #ffffff;--primary: #2563eb;--primary-dark: #1e40af;--text-main: #0f172a;--text-muted: #64748b;--border: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05)}.student-page{background:var(--bg-page);min-height:100vh;padding-bottom:40px;font-family:Inter,sans-serif}.student-header{background:var(--bg-card);padding:16px 24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50}.back-btn{background:var(--bg-page);border:none;width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-main);transition:background .2s}.back-btn:hover{background:#e2e8f0}.header-info h1{font-size:18px;font-weight:700;margin:0;color:var(--text-main)}.student-meta{font-size:13px;color:var(--text-muted)}.tabs-container{background:var(--bg-card);padding:0 24px 12px;border-bottom:1px solid var(--border)}.student-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.student-tabs::-webkit-scrollbar{display:none}.tab-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;border:1px solid transparent;background:transparent;color:var(--text-muted);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s}.tab-btn:hover{background:var(--bg-page);color:var(--text-main)}.tab-btn.active{background:var(--text-main);color:#fff;box-shadow:0 2px 8px #0f172a26}.student-content{max-width:900px;margin:24px auto;padding:0 24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:var(--bg-card);padding:16px;border-radius:16px;border:1px solid var(--border);display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-sm)}.stat-icon-wrapper{width:36px;height:36px;border-radius:10px;background:var(--bg-page);display:flex;align-items:center;justify-content:center}.icon-blue{color:#3b82f6}.icon-orange{color:#f97316}.icon-purple{color:#a855f7}.icon-green{color:#22c55e}.stat-info{display:flex;flex-direction:column}.stat-label{font-size:11px;text-transform:uppercase;color:var(--text-muted);font-weight:600}.stat-value{font-size:15px;font-weight:700;color:var(--text-main)}.info-card{background:var(--bg-card);border-radius:16px;border:1px solid var(--border);padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.card-header h3{margin:0 0 12px;font-size:16px;font-weight:700}.syllabus-text{color:var(--text-muted);line-height:1.6;margin:0}.action-section{background:var(--bg-card);border-radius:16px;padding:24px;border:1px solid var(--border);box-shadow:var(--shadow-md)}.progress-header{display:flex;justify-content:space-between;font-size:14px;font-weight:600;margin-bottom:8px}.progress-track{height:8px;background:var(--bg-page);border-radius:99px;overflow:hidden;margin-bottom:24px}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#6366f1);border-radius:99px;transition:width .5s cubic-bezier(.4,0,.2,1)}.primary-action-btn{width:100%;background:var(--primary);color:#fff;border:none;padding:14px;border-radius:12px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.primary-action-btn:hover{background:var(--primary-dark)}.primary-action-btn:active{transform:scale(.98)}.completed-banner{background:#dcfce7;color:#166534;padding:14px;border-radius:12px;text-align:center;font-weight:600;border:1px solid #bbf7d0}.empty-placeholder{text-align:center;padding:60px 20px;color:var(--text-muted);background:var(--bg-card);border-radius:16px;border:1px dashed var(--border)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn .4s ease-out forwards}@media(max-width:768px){.student-content{padding:0 16px}.stats-grid{grid-template-columns:1fr 1fr}.tabs-container{padding:0 16px 12px}}:root{--bg-surface: #ffffff;--bg-subtle: #f8fafc;--border-color: #e2e8f0;--text-primary: #0f172a;--text-secondary: #64748b;--accent-blue: #eff6ff;--accent-blue-text: #2563eb;--accent-orange: #fff7ed;--accent-orange-text: #c2410c;--accent-purple: #f3e8ff;--accent-purple-text: #7e22ce;--accent-red: #fef2f2;--accent-red-text: #b91c1c;--shadow-soft: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03)}.training-container{max-width:900px;margin:0 auto;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--text-primary);padding-bottom:40px}.loading-state,.error-state{padding:40px;text-align:center;color:var(--text-secondary);font-weight:500}.empty-state-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:16px;padding:40px;text-align:center;box-shadow:var(--shadow-soft);margin-top:20px}.icon-check{font-size:40px;margin-bottom:16px;display:block}.training-header{background:var(--bg-surface);border-radius:16px;padding:24px;display:flex;align-items:flex-start;gap:24px;margin-bottom:24px;border:1px solid var(--border-color);box-shadow:var(--shadow-soft)}.header-badge{background:#0f172a;color:#fff;padding:12px 20px;border-radius:12px;text-align:center;min-width:100px;flex-shrink:0}.header-badge .label{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1px;opacity:.7;margin-bottom:4px}.header-badge .value{display:block;font-size:24px;font-weight:700}.header-main{flex-grow:1}.header-main h1{font-size:24px;font-weight:700;margin:0 0 8px;color:var(--text-primary);text-transform:capitalize}.header-main p{font-size:15px;color:var(--text-secondary);line-height:1.5;margin:0}.divider{height:1px;background:var(--border-color);margin:24px 0;display:none}.workout-timeline{display:flex;flex-direction:column;gap:32px}.phase-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-left:8px}.phase-pill{background:var(--text-primary);color:#fff;font-size:10px;font-weight:700;padding:4px 8px;border-radius:6px;letter-spacing:.5px}.phase-header h4{font-size:14px;font-weight:600;color:var(--text-secondary);margin:0;letter-spacing:1px}.exercise-list{display:grid;gap:12px}.exercise-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:12px;padding:16px 20px;transition:transform .2s ease,box-shadow .2s ease;border-left:4px solid transparent}.exercise-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a;border-color:#cbd5e1}.ex-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.ex-info{flex:1;min-width:200px}.ex-info h5{font-size:16px;font-weight:600;margin:0 0 4px;color:var(--text-primary);text-transform:capitalize}.ex-desc{font-size:13px;color:var(--text-secondary)}.ex-meta-grid{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.meta-pill{font-size:12px;font-weight:600;padding:6px 12px;border-radius:8px;white-space:nowrap}.meta-pill.blue{background:var(--accent-blue);color:var(--accent-blue-text)}.meta-pill.orange{background:var(--accent-orange);color:var(--accent-orange-text)}.meta-pill.purple{background:var(--accent-purple);color:var(--accent-purple-text)}.meta-pill.red{background:var(--accent-red);color:var(--accent-red-text)}.meta-pill.gray{background:var(--bg-subtle);color:var(--text-secondary);border:1px solid var(--border-color)}@media(max-width:768px){.training-header{flex-direction:column;align-items:stretch;gap:16px;padding:20px;border-radius:0 0 20px 20px;margin-top:-16px;margin-left:-16px;margin-right:-16px;border-top:none;border-left:none;border-right:none;background:#fff}.header-badge{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left}.header-badge .label,.header-badge .value{margin:0;display:inline-block}.ex-content{flex-direction:column;align-items:flex-start;gap:12px}.ex-meta-grid{width:100%;justify-content:flex-start}.exercise-card{padding:16px}}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
