/* ================= AdwinVideo shared theme ================= */
:root{
  --navy:#0A1B3D;--navy-2:#0F2657;--blue:#1E63E0;--blue-light:#4C8DFF;
  --gold:#F5A623;--bg:#F6F8FC;--white:#FFFFFF;--ink:#12203F;--muted:#5B6B8C;
  --red:#E0453C;--green:#1E9E5A;--border:#E4E9F5;
  box-sizing:border-box;
}
*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Inter',system-ui,sans-serif;background:var(--bg);color:var(--ink);}
a{text-decoration:none;color:inherit;}
h1,h2,h3{font-family:'Poppins',system-ui,sans-serif;}
img{max-width:100%;display:block;}

/* ---------- Auth card (login/register/forgot/reset) ---------- */
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:32px 16px;}
.auth-card{background:var(--white);border-radius:18px;padding:38px 34px;width:100%;max-width:440px;box-shadow:0 20px 50px rgba(10,27,61,0.1);}
.auth-logo{display:flex;justify-content:center;margin-bottom:16px;}
.auth-logo img{height:52px;width:auto;object-fit:contain;}
.auth-card h1{font-size:1.4rem;text-align:center;color:var(--navy);margin-bottom:6px;}
.auth-card .sub{text-align:center;color:var(--muted);font-size:0.9rem;margin-bottom:26px;}
.field{margin-bottom:17px;}
.field label{display:block;font-size:0.85rem;font-weight:600;color:var(--navy);margin-bottom:6px;}
.field input{width:100%;padding:12px 14px;border-radius:10px;border:1.5px solid var(--border);font-size:0.95rem;font-family:'Inter';transition:border-color .2s;}
.field input:focus{outline:none;border-color:var(--blue);}
.field .hint{font-size:0.78rem;color:var(--muted);margin-top:5px;}
.pw-wrap{position:relative;}
.pw-wrap input{padding-right:44px;}
.pw-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--muted);font-size:0.8rem;font-weight:600;}
.pw-toggle:hover{color:var(--blue);}
.btn-submit{width:100%;padding:13px;border-radius:10px;border:none;background:var(--gold);color:var(--navy);font-weight:700;font-size:0.98rem;cursor:pointer;margin-top:6px;transition:box-shadow .2s;}
.btn-submit:hover{box-shadow:0 8px 20px rgba(245,166,35,0.35);}
.alt{text-align:center;margin-top:20px;font-size:0.88rem;color:var(--muted);}
.alt a{color:var(--blue);font-weight:600;}
.note{font-size:0.78rem;color:var(--muted);margin-top:14px;line-height:1.5;text-align:center;}
.alert{padding:11px 14px;border-radius:10px;font-size:0.85rem;margin-bottom:18px;}
.alert-error{background:#FDEBEC;color:#B3261E;}
.alert-success{background:#E9F8EF;color:#1E7A3E;}

/* ---------- Dashboard layout ---------- */
.dash-body{display:flex;min-height:100vh;}
.sidebar{
  width:250px;background:var(--navy);color:#D9E2F5;position:fixed;top:0;bottom:0;left:0;
  overflow-y:auto;z-index:60;transition:transform .25s ease;
  padding-top:env(safe-area-inset-top,0px);
}
.sidebar-logo{display:flex;align-items:center;gap:10px;padding:22px 20px;border-bottom:1px solid rgba(255,255,255,0.08);}
.sidebar-logo img{height:38px;width:auto;}
.sidebar-nav{padding:16px 12px;}
.sidebar-nav a{
  display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;
  color:#C4D2EE;font-size:0.92rem;font-weight:500;margin-bottom:4px;transition:background .15s,color .15s;
}
.sidebar-nav a .ic{width:20px;text-align:center;}
.sidebar-nav a:hover{background:rgba(255,255,255,0.06);color:var(--white);}
.sidebar-nav a.active{background:var(--blue);color:var(--white);}
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(10,27,61,0.5);z-index:55;}
.sidebar-overlay.show{display:block;}

.main-area{flex:1;margin-left:250px;display:flex;flex-direction:column;min-height:100vh;}
.topbar{
  background:var(--white);padding:14px 26px;display:flex;align-items:center;justify-content:space-between;
  position:sticky;top:0;z-index:40;box-shadow:0 2px 10px rgba(10,27,61,0.06);
  padding-top:calc(14px + env(safe-area-inset-top,0px));
}
.topbar-left{display:flex;align-items:center;gap:14px;}
.hamburger-btn{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer;padding:6px;}
.hamburger-btn span{width:22px;height:2.5px;background:var(--navy);border-radius:2px;}
.topbar-logo{display:none;align-items:center;gap:8px;}
.topbar-logo img{height:32px;}
.page-title{font-family:'Poppins';font-weight:700;color:var(--navy);font-size:1.2rem;}

.profile-menu{position:relative;}
.profile-trigger{display:flex;align-items:center;gap:10px;cursor:pointer;background:none;border:none;}
.profile-avatar{width:42px;height:42px;border-radius:50%;object-fit:cover;border:2px solid var(--border);}
.profile-name{font-size:0.88rem;font-weight:600;color:var(--navy);}
.profile-dropdown{
  position:absolute;right:0;top:52px;background:var(--white);border-radius:12px;width:210px;
  box-shadow:0 14px 40px rgba(10,27,61,0.15);padding:8px;display:none;z-index:50;
}
.profile-dropdown.open{display:block;}
.profile-dropdown a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:8px;font-size:0.88rem;color:var(--ink);}
.profile-dropdown a:hover{background:var(--bg);}
.profile-dropdown a.danger{color:var(--red);}

.content{padding:26px;flex:1;}

/* Summary cards */
.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:28px;}
.summary-card{background:var(--white);border-radius:14px;padding:18px 20px;box-shadow:0 6px 20px rgba(10,27,61,0.05);}
.summary-card .value{font-size:1.5rem;font-weight:800;color:var(--navy);font-family:'Poppins';}
.summary-card .label{color:var(--muted);font-size:0.8rem;margin-top:4px;}

/* Card block */
.panel{background:var(--white);border-radius:16px;padding:24px;box-shadow:0 6px 20px rgba(10,27,61,0.05);margin-bottom:24px;}
.panel h3{color:var(--navy);font-size:1.05rem;margin-bottom:16px;}

/* Task progress */
.progress-track{height:10px;background:var(--border);border-radius:6px;overflow:hidden;margin:10px 0 6px;}
.progress-fill{height:100%;background:linear-gradient(90deg,var(--blue),var(--gold));border-radius:6px;transition:width .3s;}
.progress-text{font-size:0.85rem;color:var(--muted);}

/* Video list */
.video-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;}
.video-card{background:var(--bg);border-radius:12px;padding:14px;text-align:center;}
.video-thumb{width:100%;aspect-ratio:16/9;border-radius:8px;object-fit:cover;margin-bottom:10px;background:#ddd;}
.video-card .vstatus{font-size:0.8rem;font-weight:600;margin-top:8px;}
.vstatus.done{color:var(--green);}
.vstatus.pending{color:var(--muted);}
.btn-small{display:inline-block;padding:8px 16px;border-radius:8px;background:var(--blue);color:var(--white);font-size:0.82rem;font-weight:600;border:none;cursor:pointer;margin-top:6px;}
.btn-small:hover{background:var(--navy);}

/* Tables (admin) */
.table-wrap{overflow-x:auto;}
table{width:100%;border-collapse:collapse;min-width:560px;}
table th,table td{padding:12px 14px;text-align:left;font-size:0.88rem;border-bottom:1px solid var(--border);}
table th{color:var(--muted);font-weight:600;background:var(--bg);}
.badge{padding:4px 10px;border-radius:20px;font-size:0.75rem;font-weight:600;}
.badge-active{background:#E9F8EF;color:var(--green);}
.badge-blocked{background:#FDEBEC;color:var(--red);}
.badge-admin{background:#EAF0FF;color:var(--blue);}

.btn{padding:9px 18px;border-radius:8px;border:none;font-weight:600;font-size:0.85rem;cursor:pointer;}
.btn-gold{background:var(--gold);color:var(--navy);}
.btn-ghost{background:var(--bg);color:var(--navy);}
.btn-danger{background:#FDEBEC;color:var(--red);}

/* Responsive */
@media (max-width:900px){
  .sidebar{transform:translateX(-100%);}
  .sidebar.open{transform:translateX(0);}
  .main-area{margin-left:0;}
  .hamburger-btn{display:flex;}
  .topbar-logo{display:flex;}
  .page-title{display:none;}
}
@media (max-width:480px){
  .content{padding:16px;}
  .auth-card{padding:28px 22px;}
  .profile-name{display:none;}
}
