/* Porsche-inspired theme for PAP Learning Launchpad */
:root{
  --pds-black:#010205;
  --pds-white:#fff;
  --pds-canvas:#eeeff2;
  --pds-surface:#fff;
  --pds-surface-dark:#171719;
  --pds-grey:#6b6d70;
  --pds-line:#d8d9dc;
  --pds-red:#d5001c;
  --pds-radius:12px;
  --pds-shadow:0 18px 48px rgba(1,2,5,.10);
}
html{font-family:"Porsche Next TT",Arial,Helvetica,sans-serif;background:var(--pds-canvas)}
body{background:var(--pds-canvas);color:var(--pds-black);font-family:"Porsche Next TT",Arial,Helvetica,sans-serif;letter-spacing:.01em}
button,input,select,textarea{font-family:inherit}
.card{border-radius:var(--pds-radius)!important;border:1px solid rgba(1,2,5,.08)!important;box-shadow:var(--pds-shadow)!important}
header{height:72px!important;background:rgba(1,2,5,.97)!important;backdrop-filter:blur(14px);padding-inline:clamp(24px,5vw,80px)!important}
header>b{font-size:13px;letter-spacing:.16em;font-weight:600}
header button{background:transparent!important;border:1px solid #4b4c4f!important;border-radius:4px!important;min-height:42px;padding-inline:18px!important}
header button:hover{background:#fff!important;color:#010205!important;border-color:#fff!important}
.hero{background:radial-gradient(circle at 82% 16%,rgba(213,0,28,.2),transparent 28%),linear-gradient(135deg,#010205 38%,#202124 100%)!important;padding:clamp(56px,8vw,128px)!important}
.hero>b,.eyebrow{letter-spacing:.18em!important;font-weight:600!important}
.hero h1{font-size:clamp(52px,7.4vw,104px)!important;line-height:.9!important;font-weight:600!important;letter-spacing:-.055em!important;margin-block:42px 26px!important}
.hero p{max-width:620px;line-height:1.55!important;color:#c7c8ca!important}
.entryPane{background:#f3f3f1!important}
.loginCard,.adminLogin{padding:clamp(32px,4vw,56px)!important}
.loginCard h2,.adminLogin h1{font-weight:600!important;letter-spacing:-.035em!important}
label{font-size:13px!important;font-weight:600!important}
input,select,textarea{min-height:48px;border:1px solid #929497!important;border-radius:4px!important;background:#fff!important;padding:12px 14px!important;box-shadow:none!important}
input:focus,select:focus,textarea:focus{outline:2px solid #010205!important;outline-offset:2px;border-color:#010205!important}
.primary{background:#010205!important;color:#fff!important;border-radius:4px!important;min-height:48px!important;font-weight:600!important}
.primary:hover:not(:disabled){background:#313236!important}
.primary:disabled{background:#b6b7ba!important;color:#5f6063!important}
.ghost{background:transparent!important;color:#010205!important;border:1px solid #010205!important;border-radius:4px!important;min-height:48px!important}
.course{max-width:1380px!important;padding:56px clamp(24px,5vw,72px) 96px!important}
.courseHead h1,.titleRow h1{font-weight:600!important;letter-spacing:-.04em!important}
.steps{margin:40px 0!important;gap:8px}
.steps>div{position:relative;min-width:0}
.steps>div:not(:last-child)::after{content:"";position:absolute;left:38px;right:6px;top:15px;height:1px;background:#bec0c3;z-index:-1}
.steps b{flex:0 0 32px;width:32px!important;height:32px!important;background:#d9dade!important;color:#777!important}
.steps .current b,.steps .done b{background:var(--pds-red)!important;color:#fff!important}
.steps span{background:var(--pds-canvas);padding-right:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lesson{gap:24px!important}.player,.lessonSide{border-radius:16px!important}.frame{border-radius:8px!important}
.progressMeta{font-variant-numeric:tabular-nums;font-size:17px;align-items:center}
.backScrub,.fullTimeline{width:100%!important}
.controls{padding-top:14px!important;gap:12px!important}
.controls button{height:46px;border-radius:4px!important;background:#010205!important;border:1px solid #010205!important;font-weight:600}
.controls button:hover:not(:disabled){background:#313236!important}
.volumeControl{font-size:12px!important;font-weight:600!important}.volumeControl input{min-height:auto!important;outline:0!important}
.lessonSide{padding:36px!important}.lessonSide h2{font-size:30px;font-weight:600;letter-spacing:-.025em}.lessonSide p{line-height:1.55;color:var(--pds-grey)}
.adminLayout{grid-template-columns:260px minmax(0,1fr)!important}.sideNav{background:#010205!important;padding:30px 18px!important}.sideNav strong{font-weight:600;letter-spacing:.04em}.sideNav button{border-radius:4px!important;min-height:48px!important;font-weight:600}.sideNav button.active{background:#fff!important;color:#010205!important}.sideNav button:hover:not(.active){background:#292a2d!important;color:#fff!important}
.adminMain{max-width:1500px;width:100%;margin:0 auto;padding:56px clamp(24px,5vw,76px)!important}
.stats{gap:16px!important}.stats>div{border:1px solid rgba(1,2,5,.08)!important;border-top:0!important;border-radius:12px!important;padding:28px!important}.stats b{font-weight:600!important}
.published{gap:20px!important}.published article{border-radius:12px!important;transition:transform .25s ease,box-shadow .25s ease}.published article:hover{transform:translateY(-5px);box-shadow:0 24px 56px rgba(1,2,5,.14)!important}
.codePanel{background:#010205!important;padding:22px!important}.codePanel>b{font-weight:400;color:#707175!important}.moduleCode{font-size:14px!important;letter-spacing:.08em!important}
.moduleInfo{padding:28px!important}.moduleInfo h3{font-size:24px!important;font-weight:600!important;letter-spacing:-.025em}.counts{border-color:var(--pds-line)!important}.counts b{font-weight:600!important}
.moduleInfo button{min-height:40px;border-radius:4px!important}.moduleInfo .dark{background:#010205!important}
.builder,.report{border-radius:12px!important;padding:clamp(24px,4vw,44px)!important}.videoForm{background:#e9eaed!important;border-radius:8px!important;padding:24px!important}
.filters{gap:12px!important}.report table{font-variant-numeric:tabular-nums}.report th{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#595a5d}.report tr:hover td{background:#f5f5f3}
.toast{border-radius:8px!important;box-shadow:0 18px 44px rgba(1,2,5,.18)!important}
@media(max-width:900px){.adminLayout{grid-template-columns:1fr!important}.sideNav{position:sticky;top:72px;z-index:10;display:flex;overflow:auto}.sideNav button{white-space:nowrap}.hero h1{font-size:56px!important}}
