@font-face{font-family:Geist;src:url('fonts/geist-variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
/* Screen-only refinement keeps all exam, report and credential printing unchanged. */
@media screen{
  *,*::before,*::after{box-sizing:border-box}
  body{margin:0}
  :root{--pv-ease:cubic-bezier(.22,.76,.24,1);--pv-soft-shadow:0 16px 48px -30px #192c4240;--pv-entry:0ms;--pv-interact:220ms;--line:#dfe6ef}
  body{font-family:Geist,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
  button,input,select,textarea{font-family:inherit}
  h1,h2,h3,h4,.login-title,.sl-title,.stat-num,.figma-student-stat strong{font-family:Geist,system-ui,sans-serif}
  :is(.site-header,.header){background:#ffffffed;border:1px solid #ffffff;box-shadow:0 1px 0 #192c4208,var(--pv-soft-shadow);border-radius:18px;margin:16px 24px;width:calc(100% - 48px)}
  .site-header{height:76px;max-width:1440px;margin-inline:auto;padding-inline:32px;display:flex;align-items:center;justify-content:space-between}
  .site-header a,.release-footer a{transition:color 220ms var(--pv-ease)}
  .header{padding:18px 26px}
  .header-nav a{padding:10px 0;position:relative}
  .header-nav a::after{content:'';position:absolute;bottom:4px;left:0;right:0;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform 240ms var(--pv-ease)}
  .header-nav a:hover::after,.header-nav a:focus-visible::after{transform:scaleX(1)}
  .home-main{max-width:1280px;padding:74px 40px 64px;overflow:clip}
  .home-copy{max-width:1120px;margin:0 auto 52px}
  .home-copy h1{max-width:1120px;font-size:clamp(40px,5.8vw,82px);font-weight:650;letter-spacing:-.055em;line-height:1.08;margin-bottom:26px}
  .home-copy h1 em{color:var(--brand)}
  .home-copy .intro{font-size:18px;line-height:1.75;max-width:55ch;margin:0 auto}
  .home-access{max-width:1040px;gap:24px;grid-auto-flow:dense}
  .home-access .portal-card{padding:32px 34px 24px;border-radius:22px;border-color:#ffffff;box-shadow:inset 0 0 0 5px #f8fafc,0 1px 0 #192c4208,var(--pv-soft-shadow);overflow:hidden;isolation:isolate}
  .home-access .portal-card.school{box-shadow:inset 0 0 0 5px #ffffff09,var(--pv-soft-shadow);border-color:var(--navy)}
  .portal-heading{margin-bottom:18px;gap:16px}
  .home-access .card-icon{width:48px;height:48px;border-radius:14px}
  .home-access .portal-card h2{font-size:26px;letter-spacing:-.035em}
  .home-access .portal-card>p{font-size:16px;max-width:44ch;margin-bottom:20px}
  .home-access .portal-card .card-action{min-height:60px;padding-top:18px;margin-bottom:0}
  .home-access .card-action::after{display:grid;place-items:center;width:36px;height:36px;background:var(--brand-light);border-radius:50%;font-size:21px}
  .home-access .school .card-action::after{background:#ffffff14}
  .home-flow{max-width:1040px;margin:76px auto 0;text-align:left}
  .home-flow>h2{font-size:clamp(26px,3vw,36px);font-weight:600;margin-bottom:28px;letter-spacing:-.04em;text-align:center}
  .home-flow-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-flow:dense;gap:32px}
  .home-flow article{min-width:0;padding:24px 0 0;border-top:2px solid #dce5f0}
  .home-flow img{width:30px;height:30px;object-fit:contain;margin-bottom:16px}
  .home-flow h3{font-size:18px;font-weight:600;letter-spacing:-.02em;margin-bottom:10px}
  .home-flow p{font-size:15px;line-height:1.75;color:var(--muted);max-width:34ch}
  .site-footer,.release-footer{max-width:1200px;gap:18px;padding-inline:24px}
  .release-footer{border-top-color:#192c4208;justify-content:center}
  .content{padding:36px clamp(24px,2.5vw,48px) 64px}
  .sidebar{box-shadow:0 12px 40px -30px #192c4233;border-color:#ffffff;border-radius:20px}
  .sidebar-logo{padding:26px 22px 24px}.sidebar-btn{border-radius:11px;gap:12px}
  .sidebar-btn.active{box-shadow:inset 3px 0 0 #91b4ff,0 4px 12px #192c4210}
  .pv-heading-symbol{opacity:.85}.page-header h2,.figma-page-heading h2{font-weight:650;letter-spacing:-.04em}
  .page-header p,.figma-page-heading p{line-height:1.7}
  :is(.card,.card-table,.login-card,.sl-box){border-radius:18px;border-color:#e6ebf2;box-shadow:0 1px 0 #ffffff,var(--pv-soft-shadow)}
  .card-header{padding:22px 26px;background:transparent}.card-body{padding:26px}.card-body.no-pad{padding:0}
  .card-header h3{font-weight:600;letter-spacing:-.025em}
  :is(.btn,.btn-primary,.sl-btn,.figma-practice-button,.btn-submit,.btn-nav,.btn-logout){border-radius:10px}
  :is(.form-input,.sl-input){border-radius:10px;min-height:48px;box-shadow:inset 0 1px 2px #192c4203}
  .form-group>label{line-height:1.5}.form-group:focus-within>label{color:var(--brand)}
  #page-dashboard>.figma-page-heading,#view-dashboard>.figma-student-heading{border-radius:20px;box-shadow:inset 0 0 0 5px #ffffff06}
  #page-dashboard>.stats-grid,#view-dashboard>.figma-student-stats{border-radius:18px;border-color:#e6ebf2}
  #page-dashboard .stat-num,#view-dashboard .figma-student-stat strong{font-weight:600;font-variant-numeric:tabular-nums}
  #page-dashboard .stats-grid .stat-card{padding:24px}
  #view-dashboard.figma-student-dashboard{max-width:none;width:100%;padding:28px clamp(24px,3vw,48px) 64px}
  #view-dashboard .student-workspace{gap:24px}
  #view-dashboard .student-workspace-main,#view-dashboard #study-tools .figma-practice-card{border-radius:18px;border-color:#e6ebf2;box-shadow:var(--pv-soft-shadow)}
  #view-dashboard .practice-card{border-radius:14px;padding:24px}
  #view-dashboard .figma-practice-card{border-radius:14px}
  #page-generate .exam-builder-grid{border-radius:18px;box-shadow:var(--pv-soft-shadow)}
  #page-generate .exam-builder-grid .card{border-radius:0;box-shadow:none}
  #page-generate .gen-tabs{gap:10px}
  .archive-toolbar{border-radius:18px;gap:20px;border-color:#e6ebf2}
  #page-qp-browse .qcard{border-radius:16px}
  .legal-wrap{border-radius:18px;padding:36px;gap:40px}
  .legal-section h2{font-weight:600;line-height:1.3}
  .legal-section p,.legal-section li{line-height:1.9}
  .brand-page h1{font-weight:650;letter-spacing:-.05em}
  .download-card{border-radius:18px;box-shadow:var(--pv-soft-shadow)}
  #view-login .login-card,#school-license-gate .sl-box{padding:36px;border-radius:22px;box-shadow:inset 0 0 0 5px #f8fafc,var(--pv-soft-shadow)}
  #school-license-gate .portal-welcome h2{font-weight:650;letter-spacing:-.055em}
  #view-login .login-title,#school-license-gate .sl-title{font-weight:650}
  .modal,.modal-content{border-radius:20px}
  .pv-motion-enabled :is(.home-copy,.home-access>.portal-card,.view-page.active>.page-header,.view-page.active>.figma-page-heading,#view-dashboard.active>.figma-student-heading,#view-dashboard.active>.figma-student-stats,#view-dashboard.active>.student-workspace,.legal-header,.brand-header,#view-login.active .login-card,#school-license-gate .sl-box){animation:none}
  @media(min-width:821px){.sidebar{border-radius:20px}}
  @media(max-width:1488px){.site-header{margin-inline:24px;width:calc(100% - 48px)}}
  @media(max-width:1000px){.home-main{padding:54px 28px}.home-flow-grid{gap:24px}.home-access .portal-card{padding:28px}.home-copy h1{font-size:clamp(40px,6.3vw,66px)}}
  @media(max-width:820px){.sidebar{border-radius:0}.content{padding:24px 20px 48px}.card-body{padding:22px}.home-flow-grid{gap:20px}.home-flow{margin-top:52px}.home-flow-grid{grid-template-columns:1fr}.home-flow article{display:grid;grid-template-columns:32px 1fr;column-gap:18px;padding-top:22px}.home-flow img{grid-row:1/3}.home-flow p{max-width:none}.home-flow>h2{text-align:left}.site-header{padding-inline:24px}.header{margin:12px 16px;width:calc(100% - 32px);border-radius:14px}#view-dashboard.figma-student-dashboard{padding:24px 20px 48px}.legal-wrap{padding:24px;gap:28px}}
  @media(max-width:600px){.site-header{margin:12px 16px;width:calc(100% - 32px);height:68px;padding-inline:18px;border-radius:16px}.site-header .brand-logo{width:132px}.header-nav{gap:14px;font-size:13px}.home-main{padding:38px 20px 44px}.home-copy{margin-bottom:32px}.home-copy h1{font-size:clamp(34px,7.6vw,44px);letter-spacing:-.05em;line-height:1.12}.home-copy .intro{font-size:16px}.home-access{gap:16px;grid-template-columns:1fr}.home-access .portal-card{padding:26px;border-radius:18px}.home-access .portal-card h2{font-size:24px}.home-flow{margin-top:48px}.home-flow-grid{gap:22px}.site-footer,.release-footer{padding-inline:20px}.card-header{padding:20px}.card-body{padding:20px}.content{padding:22px 16px 44px}#view-dashboard.figma-student-dashboard{padding:20px 16px 44px}#view-login .login-card,#school-license-gate .sl-box{padding:26px 24px}.header-user{font-size:13px}#page-dashboard .stats-grid .stat-card{padding:20px}.legal-page>main{padding:24px 16px 44px}}
}
@media screen and (prefers-reduced-motion:no-preference){
  :is(button,.portal-card,.practice-card,.sidebar-btn,.student-actions summary,.download-card){transition:transform 240ms var(--pv-ease),background-color 220ms var(--pv-ease),color 220ms var(--pv-ease),box-shadow 240ms var(--pv-ease),border-color 220ms var(--pv-ease)}
  :is(.btn,.btn-primary,.sl-btn,.figma-practice-button,.btn-submit,.btn-nav):not(:disabled):active{transform:scale(.98)}
  @media(hover:hover) and (pointer:fine){.home-access .portal-card:hover{transform:translateY(-5px);box-shadow:inset 0 0 0 5px #f8fafc,0 20px 50px -28px #192c4240}.home-access .portal-card.school:hover{box-shadow:inset 0 0 0 5px #ffffff09,0 20px 50px -28px #192c4255}.home-access .portal-card:hover .card-action::after{transform:translateX(3px)}.practice-card:hover,.download-card:hover{transform:translateY(-3px)}.sidebar-btn:not(.active):hover{transform:translateX(2px)}}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
