:root{
  --acc-primary:#1E40AF;
  --acc-primary-dark:#1B3897;
  --acc-bg:#F8FAFC;
  --acc-surface:#FFFFFF;
  --acc-text:#1B2333;
  --acc-muted:#5B6478;
  --acc-border:#E2E8F0;
  --acc-danger:#DC2626;
  --acc-danger-bg:#FDECEC;
  --acc-success-bg:#E7F6EC;
  --acc-success:#15803D;
  --radius:14px;
  --duration:180ms;
}
*{box-sizing:border-box}
body{margin:0;font-family:'Vazirmatn',Tahoma,sans-serif;background:var(--acc-bg);color:var(--acc-text);min-height:100vh;font-size:15px;line-height:1.7}
a{color:inherit;text-decoration:none;cursor:pointer}
:focus-visible{outline:2.5px solid var(--acc-primary);outline-offset:2px;border-radius:6px}

.acc-topbar{background:var(--acc-surface);border-bottom:1px solid var(--acc-border);padding:14px 0;position:sticky;top:0;z-index:20}
.acc-topbar .row{max-width:920px;margin:0 auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between}
.acc-brand{font-weight:800;font-size:16px;display:flex;align-items:center;gap:8px}
.acc-brand .dot{width:9px;height:9px;border-radius:3px;background:var(--acc-primary)}
.acc-user{display:flex;align-items:center;gap:12px;font-size:13.5px;color:var(--acc-muted)}
.acc-user a{color:var(--acc-primary);font-weight:700}
.acc-nav{display:flex;gap:22px;font-size:13px;overflow-x:auto;white-space:nowrap}
.acc-nav a{color:var(--acc-muted);font-weight:600;padding:4px 0;border-bottom:2px solid transparent;flex-shrink:0}
.acc-nav a:hover{color:var(--acc-text)}
.acc-nav a.active{color:var(--acc-primary);border-color:var(--acc-primary)}
@media (max-width:700px){.acc-topbar .row{flex-wrap:wrap;gap:10px}.acc-nav{width:100%;order:3}}

.acc-content{max-width:920px;margin:0 auto;padding:32px 20px}
.acc-card{background:var(--acc-surface);border:1px solid var(--acc-border);border-radius:var(--radius);padding:24px}
.acc-empty{text-align:center;padding:60px 20px;color:var(--acc-muted)}

.acc-course-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px}
.acc-course-card{background:var(--acc-surface);border:1px solid var(--acc-border);border-radius:var(--radius);overflow:hidden;transition:box-shadow var(--duration) ease,transform var(--duration) ease}
.acc-course-card:hover{transform:translateY(-3px);box-shadow:0 14px 28px rgba(15,23,42,.08)}
.acc-course-card .thumb{aspect-ratio:16/10;background:linear-gradient(135deg,var(--acc-primary),#3B82F6);object-fit:cover;width:100%;display:block}
.acc-course-card .body{padding:16px}
.acc-course-card h3{margin:0 0 10px;font-size:15px}
.acc-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 18px;border-radius:10px;background:var(--acc-primary);color:#fff;font-weight:700;font-size:13.5px;border:0;min-height:42px}
.acc-btn:hover{background:var(--acc-primary-dark)}

.acc-alert{padding:11px 15px;border-radius:10px;margin-bottom:16px;font-size:13.5px}
.acc-alert-error{background:var(--acc-danger-bg);color:#9f2323}
.acc-alert-success{background:var(--acc-success-bg);color:#116534}

.cart-table{width:100%;border-collapse:collapse}
.cart-table th{text-align:right;font-size:11.5px;color:var(--acc-muted);padding:12px 14px;border-bottom:1px solid var(--acc-border)}
.cart-table td{padding:12px 14px;border-bottom:1px solid var(--acc-border);font-size:13px;vertical-align:middle}

.checkout-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:20px;align-items:start}
.checkout-payment-box{background:var(--acc-bg);border:1px dashed var(--acc-border);border-radius:10px;padding:12px 14px}
.checkout-payment-box div{display:flex;justify-content:space-between;font-size:13px;padding:4px 0}
.checkout-payment-box span{color:var(--acc-muted)}
.checkout-summary{position:sticky;top:80px}
@media (max-width:800px){.checkout-layout{grid-template-columns:1fr}.checkout-summary{position:static}}

.acc-order-status{padding:5px 12px;border-radius:20px;font-size:11.5px;font-weight:700;white-space:nowrap}
.acc-order-status-paid{background:var(--acc-success-bg);color:var(--acc-success)}
.acc-order-status-unpaid{background:#fef3e2;color:#b45309}
.acc-order-status-failed{background:var(--acc-danger-bg);color:var(--acc-danger)}

.acc-login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;background:radial-gradient(circle at 20% 10%,#eef2ff,var(--acc-bg) 60%)}
.acc-login-card{background:var(--acc-surface);border-radius:18px;padding:34px;width:100%;max-width:380px;box-shadow:0 20px 50px rgba(15,23,42,.08);border:1px solid var(--acc-border)}
.acc-login-card h1{font-size:18px;margin:0 0 8px;display:flex;align-items:center;gap:8px}
.acc-login-card p.sub{color:var(--acc-muted);font-size:13px;margin:0 0 22px}
.acc-field-label{display:block;font-size:12.5px;color:var(--acc-muted);margin:14px 0 6px;font-weight:700}
.acc-input{width:100%;padding:11px 13px;border:1.5px solid var(--acc-border);border-radius:10px;font-family:inherit;font-size:14px;min-height:44px}
.acc-input:focus{outline:none;border-color:var(--acc-primary);box-shadow:0 0 0 3.5px rgba(30,64,175,.12)}

/* ---------- پخش‌کننده محافظت‌شده ---------- */
.protected-player{position:relative;overflow:hidden;border-radius:var(--radius);background:#000;aspect-ratio:16/9}
.protected-player video,.protected-player iframe{width:100%;height:100%;display:block;border:0}
.watermark-overlay{
  position:absolute;color:rgba(255,255,255,.62);font-weight:700;font-size:13px;
  pointer-events:none;user-select:none;text-shadow:0 1px 4px rgba(0,0,0,.75);
  transition:top 1.4s ease,left 1.4s ease;white-space:nowrap;z-index:5;
}
.protected-notice{display:flex;align-items:flex-start;gap:10px;background:#FFFBEB;border:1px solid #FDE68A;color:#92400E;border-radius:10px;padding:12px 14px;font-size:12.5px;margin-top:14px}
.protected-pdf-frame{width:100%;height:70vh;border:1px solid var(--acc-border);border-radius:var(--radius)}

/* ---------- چیدمان صفحه پخش با لیست درس‌ها ---------- */
.watch-layout{display:grid;grid-template-columns:2fr 1fr;gap:22px;align-items:start}
.lesson-list{padding:16px;max-height:70vh;overflow-y:auto}
.lesson-list-item{display:flex;align-items:center;gap:10px;padding:10px;border-radius:10px;margin-bottom:4px;font-size:13px}
.lesson-list-item:hover{background:var(--acc-bg)}
.lesson-list-item.active{background:var(--acc-primary);color:#fff}
.lesson-list-num{width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,.08);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.lesson-list-item.active .lesson-list-num{background:rgba(255,255,255,.2)}
.lesson-list-title{flex:1}
.lesson-list-type{font-size:10px;background:rgba(0,0,0,.08);padding:2px 7px;border-radius:20px}
.lesson-list-item.active .lesson-list-type{background:rgba(255,255,255,.2)}
@media (max-width:800px){.watch-layout{grid-template-columns:1fr}}

@media (max-width:700px){
  .acc-course-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:480px){
  .acc-course-grid{grid-template-columns:1fr}
}
