body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,Segoe UI,Tahoma,sans-serif}h1,h2,h3,p{margin-top:0}:root{--bg:#e9ecf4;--panel:#fffffff7;--line:#d7deeb;--text:#1d2940;--muted:#66748d;--primary:linear-gradient(135deg, #2387ea 0%, #1f9dff 100%);--primary-solid:#2387ea;--primary-soft:#2387ea29;--shadow:0 20px 44px #17203c29}*{box-sizing:border-box}body{color:var(--text);background:radial-gradient(circle at 10% 0%, #2387ea24, transparent 40%), radial-gradient(circle at 100% 100%, #1f9dff1a, transparent 45%), var(--bg);margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif}.page{min-height:100vh;padding:24px 14px 40px}.customer-shell,.admin-login-shell{max-width:1100px;margin:0 auto}.page-customer .customer-shell{justify-content:center;align-items:center;min-height:calc(100vh - 64px);display:flex}.card,.panel-card{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:22px}.access-card{max-width:560px;margin:0 auto}.page-customer .access-card{text-align:center}.page-customer .access-card .access-form{max-width:100%;margin-inline:auto}.page-customer .access-card label,.page-customer .access-card .input{text-align:center}.brand-logo{object-fit:contain;width:min(320px,72%);margin:6px auto 14px;display:block}h1,h2,h3{margin:0 0 8px}.muted{color:var(--muted);margin:0}.access-form,.upload-grid,.stack{margin-top:14px}.access-form,.stack{gap:12px;display:grid}label{gap:6px;font-weight:600;display:grid}.input{border:1px solid var(--line);width:100%;min-height:46px;color:var(--text);font:inherit;background:#fff;border-radius:12px;padding:.72rem .9rem}.input:focus{border-color:var(--primary-solid);box-shadow:0 0 0 4px var(--primary-soft);outline:none}.btn-primary,.btn-secondary,.btn-danger,.mini{min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:12px;padding:0 16px;font-weight:700}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 24px #2387ea52}.btn-secondary,.mini{color:#213048;background:#edf1f7;border-color:#d5ddec}.btn-danger{color:#fff;background:#ef4444}.mini{min-height:36px;padding:0 12px}.error{color:#b91c1c;margin:10px 0 0;font-weight:600}.notice{color:#0f6a2a;margin:10px 0 0;font-weight:600}.video-card{width:100%;max-width:1100px}.video-head,.codes-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.section-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.video-text{margin:12px 0}.video-player{background:#0a0d14;border:1px solid #cfd8ea;border-radius:14px;width:100%}.customer-video-list{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.admin-layout{grid-template-columns:250px 1fr;align-items:start;gap:16px;max-width:1380px;margin:0 auto;display:grid}.admin-sidebar{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:10px;padding:14px;display:flex;position:sticky;top:18px}.sidebar-brand{border-bottom:1px solid var(--line);padding:4px 6px 10px}.brand-logo-small{object-fit:contain;object-position:left;width:100%;height:36px}.sidebar-nav{gap:6px;display:grid}.nav-item{color:var(--text);text-align:left;font:inherit;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;padding:10px 12px;font-weight:600}.nav-item:hover{background:#f0f4fb}.nav-item.active{color:#145fa7;background:#e8f2fe;border-color:#cfe2fb}.sidebar-logout{margin-top:auto}.admin-content{gap:12px;display:grid}.admin-content-head h1{margin-bottom:4px}.admin-head-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.account-chip-wrap{justify-content:flex-end;display:flex}.account-chip{border:1px solid var(--line);color:var(--text);cursor:pointer;min-height:44px;font:inherit;background:#fff;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-weight:700;display:inline-flex}.account-chip-icon{font-size:1rem;line-height:1}.panel-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.stat p{margin:0;font-size:2rem;font-weight:800}.upload-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.upload-grid .full-width{grid-column:1/-1}.upload-actions .btn-primary{min-width:220px}.progress-wrap{background:#e6eaf5;border-radius:999px;height:8px;margin-top:10px;overflow:hidden}.progress-bar{background:var(--primary);height:100%;transition:width .15s linear}.cards-stack{gap:12px}.empty-state{text-align:left}.video-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.video-filters{grid-template-columns:2fr 1fr 1fr 1fr;align-items:end;gap:8px;margin:8px 0 10px;display:grid}.customer-filters{grid-template-columns:2fr 1fr 1fr}.date-input{height:46px;min-height:46px;padding-block:0;line-height:1.2}.video-tile{border:1px solid var(--line);background:#fff;border-radius:14px;overflow:hidden}.video-thumb-wrap{border-bottom:1px solid var(--line);background:#f4f7fc}.video-thumb{aspect-ratio:16/9;background:#0a0d14;width:100%}.video-tile-body{gap:8px;padding:10px;display:grid}.row-actions{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.row-actions .btn-secondary,.row-actions .btn-danger{min-width:170px}.customer-create{grid-template-columns:1fr auto;gap:8px;margin-bottom:12px;display:grid}.customer-list{gap:10px;display:grid}.customer-card{border:1px solid var(--line);background:#fbfdff;border-radius:12px;gap:8px;padding:10px;display:grid}.customer-video-links{flex-wrap:wrap;gap:6px;margin-top:6px;display:flex}.video-chip{color:#3f4f69;background:#f5f8ff;border:1px solid #dbe4f3;border-radius:999px;padding:2px 8px;font-size:.86rem}.video-row{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.video-main{min-width:0}.video-meta{flex-wrap:wrap;gap:6px;display:flex}.video-meta span{color:#4f5f7d;background:#f2f5fb;border:1px solid #dde4f2;border-radius:999px;padding:3px 9px;font-size:.92rem}.video-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.code-list{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:grid}.code-list li{border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px;display:flex}.code-pill{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800}.badge{text-transform:uppercase;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:800}.badge.green{color:#065f46;background:#d1fae5}.badge.red{color:#991b1b;background:#fee2e2}.activity-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.table-wrap{border:1px solid var(--line);border-radius:12px;overflow:auto}.activity-table{border-collapse:collapse;background:#fff;width:100%}.activity-table th,.activity-table td{text-align:left;vertical-align:top;border-bottom:1px solid #edf1f7;padding:10px;font-size:.9rem}.activity-table th{color:#44546f;background:#f8fbff;font-weight:700;position:sticky;top:0}.modal-backdrop{z-index:60;background:#1018286b;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-card{background:var(--panel);border:1px solid var(--line);width:min(920px,100%);max-height:min(92vh,980px);box-shadow:var(--shadow);border-radius:16px;padding:16px;overflow:auto}.account-modal{gap:12px;width:min(980px,100%);display:grid}.account-section{border-radius:14px;padding:16px}.otp-secret-box{background:#f7fbff;border:1px dashed #c6d5ef;border-radius:12px;padding:10px}@media (width<=1080px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:static}.sidebar-nav{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=840px){.upload-grid,.panel-grid,.video-tile-grid,.video-filters,.customer-create{grid-template-columns:1fr}.video-head,.codes-row,.video-row{flex-direction:column;align-items:flex-start}.video-actions{justify-content:flex-start}.customer-filters{grid-template-columns:1fr 1fr}.customer-filters label:first-child{grid-column:1/-1}.page-customer .section-head{flex-direction:column;align-items:stretch}.page-customer .section-head .btn-secondary{width:100%}.admin-head-row{flex-direction:column;align-items:stretch}.row-actions{width:100%}.row-actions .btn-secondary,.row-actions .btn-danger{flex:220px;min-width:0}.sidebar-nav{grid-template-columns:1fr}}
