/* ASR Quiz – layout delle viste v2 "Raso Brooklyn" (mobile-first, DESIGN-V2 §9) */

/* ---------- Pagina a tutto schermo: il documento segue il tema dell'app ---------- */
.asr-app-body{margin:0;background:#090909}
.asr-app-body:has(.asr-scope[data-asr-theme=light]){background:#FFFFFF}
@media (prefers-color-scheme:light){.asr-app-body:has(.asr-scope[data-asr-theme=auto]){background:#FFFFFF}}
html.asr-app-page{scroll-padding-top:calc(5rem + 16px)}

/* ---------- Struttura ---------- */
.asr-app{position:relative;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--asr-color-bg);color:var(--asr-color-text);isolation:isolate}
.asr-app__body{flex:1;display:flex;flex-direction:column;min-width:0}
.asr-app__content{flex:1;display:flex;flex-direction:column;min-width:0}
.asr-main{flex:1;width:100%;max-width:var(--asr-container);margin:0 auto;padding:var(--asr-space-6) var(--asr-gutter) var(--asr-space-8)}
.asr-main:focus{outline:none}
.asr-app .asr-nav{position:sticky;bottom:0;z-index:var(--asr-z-header);order:2}
.asr-footer{display:flex;flex-direction:column;align-items:center;gap:var(--asr-space-2);padding:var(--asr-space-6) var(--asr-gutter);border-top:1px solid var(--asr-color-border);font-size:var(--asr-text-xs);color:var(--asr-color-text-muted);text-align:center;line-height:1.7}
.asr-footer::before{content:"";display:block;width:var(--asr-rule-w);height:var(--asr-rule-h);margin-bottom:var(--asr-space-2);background:var(--asr-color-accent)}
.asr-footer a{color:inherit}
.asr-footer a:hover{color:var(--asr-color-heading)}
.asr-skip{position:absolute;left:var(--asr-space-3);top:-100px;z-index:var(--asr-z-toast);padding:var(--asr-space-3) var(--asr-space-5);border-radius:0;border:2px solid var(--asr-brand-petrol-line);background:var(--asr-brand-petrol);color:#FFFFFF;font-size:var(--asr-text-label);font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display);text-decoration:none}
.asr-skip:focus{top:var(--asr-space-3);color:#FFFFFF}
.asr-app[data-layout=auth] .asr-nav,.asr-app[data-layout=focus] .asr-header,.asr-app[data-layout=focus] .asr-nav,.asr-app[data-layout=focus] .asr-footer{display:none}
.asr-app[data-layout=auth] .asr-main{max-width:none;padding:0}
.asr-app[data-layout=auth] .asr-footer{background:var(--asr-color-bg)}
.asr-app[data-layout=focus] .asr-main{max-width:none;padding:0}

@media (min-width:768px){
  .asr-main{padding:var(--asr-space-7) var(--asr-space-5) var(--asr-space-9)}
}
@media (min-width:1024px){
  .asr-app__body{flex-direction:row}
  .asr-app .asr-nav{order:-1;position:sticky;top:var(--asr-header-h-lg);bottom:auto;align-self:flex-start;flex:none;width:var(--asr-nav-w);height:calc(100dvh - var(--asr-header-h-lg));border-top:0;border-right:1px solid #1B1E21;overflow-y:auto}
  .asr-nav__list{display:flex;flex-direction:column;gap:0;padding:var(--asr-space-6) 0}
  .asr-nav__item--extra{display:block}
  .asr-nav__item--sep{margin-top:var(--asr-space-5);padding-top:var(--asr-space-5);border-top:1px solid #1B1E21}
  .asr-nav__link{flex-direction:row;justify-content:flex-start;gap:var(--asr-space-4);min-height:48px;padding:0 var(--asr-space-5);font-size:var(--asr-text-xs);letter-spacing:var(--asr-tracking-label)}
  .asr-nav__link .asr-icon{width:20px;height:20px}
  .asr-nav__link[aria-current=page]{background:#141618}
  .asr-nav__link::before{top:0;bottom:0;left:0;right:auto;width:2px;height:auto;transform:scaleY(0)}
  .asr-nav__link[aria-current=page]::before{transform:none}
  .asr-main{padding:var(--asr-space-8) var(--asr-space-7) var(--asr-space-9)}
  .asr-footer{flex-direction:row;justify-content:space-between;padding:var(--asr-space-5) var(--asr-space-7);text-align:left}
  .asr-footer::before{display:none}
  html.asr-app-page{scroll-padding-top:calc(var(--asr-header-h-lg, 5rem) + 16px)}
}

/* ---------- Vista e intestazioni ---------- */
.asr-view{animation:asr-rise var(--asr-dur-base) var(--asr-ease) both}
.asr-view>*+*{margin-top:var(--asr-space-6)}
@media (min-width:768px){.asr-view>*+*{margin-top:var(--asr-space-7)}}
.asr-page-head{display:flex;flex-direction:column;gap:var(--asr-space-3)}
.asr-page-head h1::after,.asr-hello h1::after{content:"";display:block;width:var(--asr-rule-w);height:var(--asr-rule-h);margin-top:15px;background:var(--asr-color-accent)}
.asr-page-head__row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--asr-space-4)}
.asr-page-head .asr-lead{margin-top:var(--asr-space-2)}
.asr-back{display:inline-flex;align-items:center;gap:var(--asr-space-2);align-self:flex-start;min-height:var(--asr-tap-min);color:var(--asr-color-text-muted);text-decoration:none;font-size:var(--asr-text-xs);font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display);transition:color var(--asr-dur-base) var(--asr-ease)}
.asr-back:hover{color:var(--asr-color-heading)}
.asr-back .asr-icon{transition:transform var(--asr-dur-fast) var(--asr-ease)}
.asr-back:hover .asr-icon{transform:translateX(-4px)}
.asr-section__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--asr-space-3);margin-bottom:var(--asr-space-5)}
.asr-section__head h2{font-size:var(--asr-text-lg);letter-spacing:.08em}
.asr-section__head .asr-link-btn{font-size:var(--asr-text-xs);font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display);text-decoration:none;white-space:nowrap}
.asr-section__head .asr-link-btn::after{content:"→";transition:transform var(--asr-dur-fast) var(--asr-ease)}
.asr-section__head .asr-link-btn:hover::after{transform:translateX(4px)}
.asr-grid{display:grid;gap:var(--asr-space-4);grid-template-columns:minmax(0,1fr)}
@media (min-width:768px){
  .asr-grid{gap:var(--asr-space-5)}
  .asr-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
  .asr-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1280px){.asr-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.asr-stack>*+*{margin-top:var(--asr-space-4)}
@media (min-width:768px){.asr-stack>*+*{margin-top:var(--asr-space-5)}}
.asr-inline{display:flex;flex-wrap:wrap;align-items:center;gap:var(--asr-space-2) var(--asr-space-4)}
.asr-between{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--asr-space-3)}
.asr-between>.asr-icon{color:var(--asr-color-accent-text)}
.asr-btn--ghost.asr-btn--icon{color:var(--asr-color-heading);text-decoration:none}
.asr-btn--ghost.asr-btn--icon:hover{background:var(--asr-color-hover-veil)}

/* ---------- Tabelle (§9.7) ---------- */
.asr-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
.asr-table{width:100%;font-size:var(--asr-text-sm);font-variant-numeric:var(--asr-numeric-tabular)}
.asr-table th,.asr-table td{height:44px;padding:var(--asr-space-2) var(--asr-space-3);border-bottom:1px solid var(--asr-color-border);text-align:left;vertical-align:middle}
@media (min-width:768px){.asr-table th,.asr-table td{height:52px}}
.asr-table thead th{font-size:var(--asr-text-xs);font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display);color:var(--asr-color-text-muted);border-bottom-color:var(--asr-color-border-strong);white-space:nowrap}
.asr-table tbody th{font-weight:var(--asr-weight-medium);color:var(--asr-color-heading)}
.asr-table tbody tr{transition:background-color var(--asr-dur-base) var(--asr-ease)}
.asr-table tbody tr:hover{background:var(--asr-color-surface-2)}
.asr-table td.is-num,.asr-table th.is-num{text-align:right;font-family:var(--asr-font-numeric)}
.asr-table tbody tr:last-child>*{border-bottom:0}
.asr-table__danger{color:var(--asr-color-danger);font-weight:var(--asr-weight-bold)}

/* ---------- Accesso (§9.16) ---------- */
.asr-auth{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto 1fr;background:var(--asr-color-bg)}
.asr-auth__panel{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:var(--asr-space-6);min-height:200px;padding:var(--asr-space-5) var(--asr-gutter) var(--asr-space-6);background-color:var(--asr-hero-bg);background-image:var(--asr-pattern-diagonal),radial-gradient(120% 90% at 85% 110%,rgba(1,67,89,.55) 0,rgba(1,67,89,0) 60%);background-size:4px 4px,auto;background-repeat:repeat,no-repeat;image-rendering:pixelated;color:#E6E6E6;overflow:hidden}
.asr-auth__panel::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--asr-brand-petrol)}
.asr-auth__brand{position:relative;display:flex;align-items:center;gap:var(--asr-space-3);font-size:var(--asr-text-sm);font-weight:var(--asr-weight-extrabold);letter-spacing:var(--asr-tracking-wide);text-transform:var(--asr-transform-display);color:#FFFFFF}
.asr-auth__brand img{height:72px;width:auto;max-width:200px;object-fit:contain}
.asr-auth__hero{position:relative}
.asr-auth__eyebrow{display:block;margin-bottom:var(--asr-space-3);font-size:var(--asr-text-xs);font-weight:var(--asr-weight-semibold);letter-spacing:var(--asr-tracking-wide);text-transform:var(--asr-transform-display);color:#FFFFFF}
.asr-auth__claim{font-family:var(--asr-font-display);font-size:calc(clamp(2rem, 1.2rem + 3.6vw, 4.25rem) * var(--asr-font-scale));font-weight:var(--asr-weight-extrabold);line-height:var(--asr-leading-tight);letter-spacing:var(--asr-tracking-title);text-transform:var(--asr-transform-display);color:#FFFFFF;max-width:12ch;text-shadow:0 2px 24px rgba(0,0,0,.5)}
.asr-auth__claim em{display:inline;font-style:normal;color:var(--asr-brand-petrol-hero);text-decoration:underline;text-decoration-color:var(--asr-brand-petrol);text-decoration-thickness:.12em;text-underline-offset:.12em;text-decoration-skip-ink:none}
.asr-auth__rule{display:none;width:var(--asr-rule-w);height:var(--asr-rule-h);margin:var(--asr-space-6) 0 var(--asr-space-5);background:#FFFFFF}
.asr-auth__note{display:none;max-width:40ch;color:#A3A3A3;font-size:var(--asr-text-md);line-height:var(--asr-leading-normal)}
.asr-auth__main{display:flex;align-items:flex-start;justify-content:center;padding:var(--asr-space-7) var(--asr-gutter) var(--asr-space-8)}
.asr-auth__card{width:100%;max-width:25rem}
.asr-auth__card>*+*{margin-top:var(--asr-space-6)}
.asr-auth__title{font-size:var(--asr-text-4xl);margin-top:var(--asr-space-2)}
.asr-auth__title::after{content:"";display:block;width:var(--asr-rule-w);height:var(--asr-rule-h);margin-top:15px;background:var(--asr-color-accent)}
.asr-auth__row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--asr-space-2)}
@media (min-width:1024px){
  .asr-auth{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:none}
  .asr-auth__panel{min-height:100dvh;padding:var(--asr-space-7) var(--asr-space-8);justify-content:space-between}
  .asr-auth__hero{padding-left:var(--asr-space-6);border-left:4px solid #FFFFFF}
  .asr-auth__rule,.asr-auth__note{display:block}
  .asr-auth__main{align-items:center;padding:var(--asr-space-8)}
}
@media (min-width:768px) and (max-width:1023.98px){
  .asr-auth__panel{min-height:320px;padding:var(--asr-space-6) var(--asr-space-7)}
  .asr-auth__note{display:block;margin-top:var(--asr-space-4)}
}

/* ---------- Dashboard (§11.8) ---------- */
.asr-hello{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--asr-space-4)}
.asr-hello h1{margin-top:var(--asr-space-3)}
.asr-hello__date{text-transform:var(--asr-transform-display)}
.asr-ready-card{display:grid;gap:var(--asr-space-6);grid-template-columns:minmax(0,1fr)}
.asr-ready-card__top{display:flex;align-items:center;gap:var(--asr-space-5)}
.asr-ready-wrap{container-type:inline-size}
@container (min-width:640px){.asr-ready-card{grid-template-columns:auto minmax(0,1fr);align-items:center}}
.asr-criteria{list-style:none;padding:0;display:grid;gap:var(--asr-space-4)}
.asr-criteria li{display:grid;gap:var(--asr-space-2)}
.asr-criteria__head{display:flex;justify-content:space-between;gap:var(--asr-space-3);font-size:var(--asr-text-sm)}
.asr-criteria__label{display:flex;align-items:center;gap:var(--asr-space-2);color:var(--asr-color-text)}
.asr-criteria__label .asr-icon{width:18px;height:18px;color:var(--asr-color-text-muted)}
.asr-criteria li[data-met=true] .asr-criteria__label .asr-icon{color:var(--asr-color-success)}
.asr-criteria__value{font-family:var(--asr-font-numeric);font-variant-numeric:var(--asr-numeric-tabular);color:var(--asr-color-text-muted);white-space:nowrap}
.asr-countdown{display:flex;align-items:baseline;gap:var(--asr-space-3)}
.asr-countdown .asr-num{font-size:var(--asr-text-5xl);color:var(--asr-color-accent-text)}
/* card promozionale: petrolio pieno + trama, testo bianco, pulsante interno outline bianco */
.asr-card.asr-cta{background-color:var(--asr-brand-petrol);background-image:linear-gradient(rgba(1,67,89,.8),rgba(1,67,89,.8)),var(--asr-pattern-diagonal);background-size:auto,4px 4px;image-rendering:pixelated;border-color:var(--asr-brand-petrol-line);color:#FFFFFF;overflow:hidden;--asr-color-heading:#FFFFFF;--asr-color-text:#FFFFFF;--asr-color-text-muted:#E6E6E6;--asr-color-focus:#FFFFFF;--asr-color-hover-veil:rgba(255,255,255,.08)}
.asr-cta .asr-eyebrow{color:#FFFFFF;opacity:1}
.asr-cta .asr-muted{color:#E6E6E6}
.asr-cta .asr-card__title{font-size:var(--asr-text-2xl)}
.asr-cta .asr-btn--primary{background:transparent;border-color:#FFFFFF;color:#FFFFFF}
.asr-cta .asr-btn--primary:hover,.asr-cta .asr-btn--primary:focus-visible{background:rgba(255,255,255,.08);border-color:#FFFFFF}
.asr-cta .asr-btn:focus-visible{outline-color:#FFFFFF}
.asr-card.asr-cta.asr-card--link:hover{background-color:var(--asr-brand-petrol-hover);border-color:var(--asr-brand-petrol-light);color:#FFFFFF}
.asr-cta.asr-between>.asr-icon{color:#FFFFFF}
.asr-cta::after{content:"";position:absolute;right:var(--asr-space-5);top:var(--asr-space-5);width:var(--asr-rule-w);height:var(--asr-rule-h);background:#FFFFFF;pointer-events:none}
.asr-streak{display:inline-flex;align-items:center;gap:var(--asr-space-2);color:var(--asr-color-accent-text);font-size:var(--asr-text-xs);font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display)}
.asr-enroll{display:flex;flex-wrap:wrap;gap:var(--asr-space-2)}
.asr-chapnum{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:0;border:1px solid var(--asr-color-border);background:transparent;font-family:var(--asr-font-numeric);font-weight:var(--asr-weight-extrabold);font-size:var(--asr-text-xl);font-variant-numeric:var(--asr-numeric-tabular);color:var(--asr-color-accent-text)}

/* ---------- Simulazione: scelta ---------- */
.asr-choice{display:flex;flex-direction:column;height:100%}
.asr-choice .asr-card__body{flex:1}
.asr-choice__facts{display:flex;flex-wrap:wrap;gap:var(--asr-space-6);margin-top:var(--asr-space-5);padding-top:var(--asr-space-5);border-top:1px solid var(--asr-color-border)}
.asr-choice__facts div{display:flex;flex-direction:column;gap:var(--asr-space-2)}
.asr-choice__facts strong{font-family:var(--asr-font-numeric);font-size:var(--asr-text-4xl);font-weight:var(--asr-weight-extrabold);line-height:1;font-variant-numeric:var(--asr-numeric-tabular);color:var(--asr-color-heading)}
.asr-choice__facts span{font-size:11px;font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display);color:var(--asr-color-text-muted)}

/* ---------- Prova (§9.10) ---------- */
.asr-exam{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;background:var(--asr-color-bg)}
.asr-exam__bar{position:sticky;top:0;z-index:var(--asr-z-header);background:var(--asr-brand-ink);border-bottom:0;color:#E6E6E6;--asr-color-heading:#FFFFFF;--asr-color-text:#E6E6E6;--asr-color-text-muted:#A3A3A3;--asr-color-focus:#6FB0C6;--asr-color-border:#2A2E33;--asr-color-border-strong:#6B7177;--asr-color-surface-3:#23272B;--asr-color-accent:#3A8BA6;--asr-color-accent-text:#6FB0C6;--asr-color-primary-line:#3A8BA6;--asr-color-hover-veil:rgba(255,255,255,.05);--asr-color-warning:#E8B65A;--asr-color-danger:#F2A097;--asr-color-success:#5CC79A;color-scheme:dark}
.asr-exam__bar-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--asr-space-3);min-height:56px;padding:var(--asr-space-2) var(--asr-gutter);max-width:var(--asr-container);margin:0 auto}
.asr-exam__title{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:2px}
.asr-exam__title .asr-eyebrow{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.asr-exam__count{font-family:var(--asr-font-numeric);font-size:var(--asr-text-sm);font-weight:var(--asr-weight-bold);letter-spacing:.06em;color:#FFFFFF;font-variant-numeric:var(--asr-numeric-tabular)}
.asr-exam__tools{display:flex;align-items:center;gap:var(--asr-space-3)}
.asr-exam__progress{height:2px;border-radius:0}
.asr-exam__body{flex:1;width:100%;max-width:var(--asr-container);margin:0 auto;padding:var(--asr-space-6) var(--asr-gutter) var(--asr-space-7);display:grid;gap:var(--asr-space-6);grid-template-columns:minmax(0,1fr);align-items:start}
.asr-exam__aside{display:none}
.asr-exam__aside .asr-card{background:var(--asr-color-surface);padding:var(--asr-space-5)}
.asr-exam__aside .asr-h3{font-size:var(--asr-text-xs);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display);color:var(--asr-color-text-muted)}
.asr-exam__nav{position:sticky;bottom:0;z-index:var(--asr-z-header);background:var(--asr-color-bg);border-top:1px solid var(--asr-color-border);padding:var(--asr-space-3) var(--asr-gutter) calc(var(--asr-space-3) + env(safe-area-inset-bottom))}
.asr-exam__nav-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--asr-space-3);max-width:var(--asr-container-narrow);margin:0 auto}
.asr-exam__nav-inner .asr-btn{flex:1 1 0;padding:0 var(--asr-space-3)}
.asr-exam__saving{font-size:var(--asr-text-xs);color:var(--asr-color-text-muted);display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.asr-exam__saving[data-state=error]{color:var(--asr-color-danger)}
@media (max-width:479.98px){
  .asr-exam__count{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:var(--asr-text-xs)}
  .asr-exam__tools{flex:none;gap:var(--asr-space-2)}
  .asr-exam__bar .asr-timer{font-size:var(--asr-text-lg);padding:0}
  .asr-exam__bar .asr-timer:not(.asr-timer--danger) .asr-timer__clock{display:none}
  .asr-exam__saving>span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
  .asr-exam__grid-btn{padding:0 var(--asr-space-3)}
}
.asr-exam__grid-btn{display:inline-flex}
.asr-exam__finish{display:none}
.asr-exam__bar .asr-exam__exit{flex:none;width:40px;min-width:40px;height:40px;padding:0;justify-content:center;color:#FFFFFF;border-color:transparent;margin-left:calc(var(--asr-space-2) * -1)}
.asr-exam__bar .asr-exam__exit:hover,.asr-exam__bar .asr-exam__exit:focus-visible{background:rgba(255,255,255,.08)}
.asr-exam__bar .asr-exam__finish{background:transparent;border-color:#FFFFFF;color:#FFFFFF}
.asr-exam__bar .asr-exam__finish:hover,.asr-exam__bar .asr-exam__finish:focus-visible{background:var(--asr-brand-petrol);border-color:var(--asr-brand-petrol-light)}
.asr-exam .asr-question{animation:asr-fade var(--asr-dur-base) var(--asr-ease) both}
@media (min-width:768px){
  .asr-exam__body{grid-template-columns:minmax(0,1fr) 280px;gap:var(--asr-space-7);padding-top:var(--asr-space-7)}
  .asr-exam__aside{display:block;position:sticky;top:calc(56px + var(--asr-space-5))}
  .asr-exam__grid-btn{display:none}
  .asr-exam__finish{display:inline-flex}
}
.asr-kbd{display:inline-block;min-width:1.8em;padding:0 .45em;border:1px solid var(--asr-color-border-strong);border-bottom-width:2px;border-radius:0;font-family:var(--asr-font-numeric);font-size:var(--asr-text-xs);font-weight:var(--asr-weight-bold);text-align:center;line-height:1.7;color:var(--asr-color-heading)}
.asr-shortcuts{margin-top:var(--asr-space-5);padding-top:var(--asr-space-4);border-top:1px solid var(--asr-color-border);font-size:var(--asr-text-xs);color:var(--asr-color-text-muted);display:flex;flex-wrap:wrap;gap:var(--asr-space-2) var(--asr-space-4)}
.asr-positions{display:flex;flex-wrap:wrap;gap:var(--asr-space-2)}
.asr-positions .asr-btn{min-width:44px;padding:0 var(--asr-space-2);font-family:var(--asr-font-numeric)}

/* ---------- Risultato (§9.12) ---------- */
.asr-outcome{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--asr-space-4);padding:var(--asr-space-8) var(--asr-space-4) var(--asr-space-7)}
.asr-card.asr-outcome{background:var(--asr-color-surface);background-image:radial-gradient(80% 60% at 50% 0,var(--asr-color-accent-soft) 0,transparent 70%)}
.asr-outcome__seal{display:grid;place-items:center;width:96px;height:96px;margin-block:var(--asr-space-2);border-radius:0;border:2px solid var(--asr-color-accent);background:transparent;color:var(--asr-color-accent-text);animation:asr-seal 600ms var(--asr-ease) both}
.asr-outcome__seal .asr-icon{width:44px;height:44px;stroke-width:1.5}
.asr-outcome--pass .asr-outcome__seal{border-color:var(--asr-color-success);background:var(--asr-color-success-soft);color:var(--asr-color-success)}
.asr-outcome--fail .asr-outcome__seal{border-color:var(--asr-color-danger);background:var(--asr-color-danger-soft);color:var(--asr-color-danger)}
.asr-outcome__label{font-family:var(--asr-font-display);font-size:var(--asr-text-5xl);font-weight:var(--asr-weight-extrabold);letter-spacing:var(--asr-tracking-title);text-transform:var(--asr-transform-display);line-height:1}
@media (min-width:768px){.asr-outcome__label{font-size:calc(4rem * var(--asr-font-scale))}}
.asr-outcome--pass .asr-outcome__label{color:var(--asr-color-success)}
.asr-outcome--fail .asr-outcome__label{color:var(--asr-color-danger)}
.asr-outcome .asr-lead{font-family:var(--asr-font-numeric);color:var(--asr-color-heading);font-weight:var(--asr-weight-semibold)}
@keyframes asr-seal{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.asr-outcome__seal{animation:none}}
.asr-review{list-style:none;padding:0;display:grid;gap:var(--asr-space-4)}
.asr-review-item{border-left:2px solid var(--asr-color-border-strong)}
.asr-review-item[data-state=correct]{border-left-color:var(--asr-color-success)}
.asr-review-item[data-state=wrong]{border-left-color:var(--asr-color-danger)}
.asr-review-item[data-state=unanswered]{border-left-color:var(--asr-color-warning)}
.asr-review-item__head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--asr-space-2) var(--asr-space-3);margin-bottom:var(--asr-space-4)}
.asr-review-item__body{display:grid;gap:var(--asr-space-4);grid-template-columns:minmax(0,1fr)}
@media (min-width:768px){.asr-review-item__body--img{grid-template-columns:160px minmax(0,1fr);gap:var(--asr-space-5)}}
.asr-review-item__img{width:160px;max-width:100%;height:auto;max-height:160px;object-fit:contain;background:var(--asr-color-media-bg);border:1px solid var(--asr-color-border);border-radius:0;padding:var(--asr-space-2)}
.asr-review-item__text{font-weight:var(--asr-weight-medium);color:var(--asr-color-heading);max-width:60ch;line-height:var(--asr-leading-snug)}
.asr-answers-sum{display:flex;flex-wrap:wrap;gap:var(--asr-space-2) var(--asr-space-5);margin-top:var(--asr-space-3);font-size:var(--asr-text-sm)}
.asr-answers-sum span{display:inline-flex;align-items:center;gap:6px}
.asr-answers-sum b{letter-spacing:.12em;text-transform:var(--asr-transform-display)}
.asr-twins{margin-top:var(--asr-space-4);padding:var(--asr-space-4);border-radius:0;border-left:2px solid var(--asr-color-accent);background:var(--asr-color-surface-2);font-size:var(--asr-text-sm)}
.asr-twins ul{list-style:none;padding:0;margin-top:var(--asr-space-2);display:grid;gap:var(--asr-space-2)}
.asr-twins li{display:flex;gap:var(--asr-space-3);justify-content:space-between}
.asr-explain{margin-top:var(--asr-space-4);padding-top:var(--asr-space-4);border-top:1px solid var(--asr-color-border);font-size:var(--asr-text-sm)}

/* ---------- Capitoli ---------- */
.asr-chapters{list-style:none;padding:0;display:grid;gap:var(--asr-space-3);grid-template-columns:minmax(0,1fr)}
@media (min-width:768px){.asr-chapters{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--asr-space-4)}}
@media (min-width:1280px){.asr-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}}
.asr-chapters>li{min-width:0}
.asr-card.asr-chapter{display:flex;gap:var(--asr-space-4);height:100%;padding:var(--asr-space-5)}
.asr-chapter .asr-chapnum{border-color:transparent;width:auto;min-width:44px;height:auto;place-items:start;font-size:var(--asr-text-3xl);line-height:1}
.asr-chapter__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--asr-space-2)}
.asr-chapter__title{font-weight:var(--asr-weight-bold);line-height:1.3;color:var(--asr-color-heading)}
.asr-chapter__meta{display:flex;flex-wrap:wrap;gap:var(--asr-space-1) var(--asr-space-3);font-size:var(--asr-text-xs);color:var(--asr-color-text-muted);font-variant-numeric:var(--asr-numeric-tabular)}
.asr-chapter__foot{margin-top:auto;padding-top:var(--asr-space-3);display:flex;align-items:center;gap:var(--asr-space-3)}
.asr-chapter__foot .asr-progress{flex:1;height:2px}

/* ---------- Ripasso ---------- */
.asr-boxes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--asr-space-3);align-items:end;height:180px;padding-top:var(--asr-space-3);border-bottom:1px solid var(--asr-color-border-strong)}
.asr-box{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:var(--asr-space-2);height:100%}
.asr-box__bar{width:100%;max-width:56px;min-height:4px;border-radius:0;background:var(--asr-color-accent);transform-origin:bottom;animation:asr-grow calc(var(--asr-dur-base) * 3) var(--asr-ease) both}
.asr-box:nth-child(1) .asr-box__bar{background:var(--asr-color-danger)}
.asr-box:nth-child(2) .asr-box__bar{background:var(--asr-color-warning)}
.asr-box:nth-child(3) .asr-box__bar{background:var(--asr-chart-3)}
.asr-box:nth-child(4) .asr-box__bar{background:var(--asr-chart-1)}
.asr-box:nth-child(5) .asr-box__bar{background:var(--asr-color-success)}
.asr-box__count{font-family:var(--asr-font-numeric);font-weight:var(--asr-weight-extrabold);font-variant-numeric:var(--asr-numeric-tabular);font-size:var(--asr-text-lg);color:var(--asr-color-heading)}
.asr-box__label{font-size:11px;font-weight:var(--asr-weight-bold);letter-spacing:.1em;text-transform:var(--asr-transform-display);color:var(--asr-color-text-muted);white-space:nowrap}
@keyframes asr-grow{from{transform:scaleY(0)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.asr-box__bar{animation:none}}

/* ---------- Teoria ---------- */
.asr-theory-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--asr-space-3)}
.asr-theory-nav a{display:flex;flex-direction:column;gap:var(--asr-space-1);padding:var(--asr-space-5);border:1px solid var(--asr-color-border);border-radius:0;background:var(--asr-color-surface);color:var(--asr-color-text);text-decoration:none;min-width:0;transition:background-color var(--asr-dur-base) var(--asr-ease),border-color var(--asr-dur-base) var(--asr-ease)}
.asr-theory-nav a:hover{border-color:var(--asr-color-border-strong);background:var(--asr-color-surface-3);color:var(--asr-color-text)}
.asr-theory-nav a+a,.asr-theory-nav .is-next{text-align:right;grid-column:2}
.asr-theory-nav span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:var(--asr-weight-bold);color:var(--asr-color-heading)}
.asr-theory-nav span.asr-eyebrow{color:var(--asr-color-accent-text)}
.asr-theory-nav small{font-size:11px;font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display)}
.asr-view>article.asr-card .asr-prose{margin-inline:auto}

/* ---------- Grafici (colori e testi sono già inline nel modulo @asr-quiz/charts) ---------- */
.asr-chart{position:relative;width:100%}
.asr-chart>svg{overflow:visible;display:block}.asr-chart>svg[width="100%"]{width:100%;height:auto}
.asr-chart text{font-family:var(--asr-font-numeric);font-variant-numeric:var(--asr-numeric-tabular)}
.asr-chart__line{stroke-linejoin:miter;stroke-linecap:square;animation:asr-fade calc(var(--asr-dur-base) * 3) var(--asr-ease) both}
.asr-chart__bar{transform-box:fill-box;transform-origin:left center;animation:asr-grow-x calc(var(--asr-dur-base) * 3) var(--asr-ease) both}
.asr-chart__bar--v{transform-origin:center bottom;animation-name:asr-grow}
@keyframes asr-grow-x{from{transform:scaleX(0)}to{transform:none}}
@media (prefers-reduced-motion:reduce){.asr-chart__line,.asr-chart__bar{animation:none}}
.asr-print-only{display:none}

/* ---------- Profilo ---------- */
.asr-pref-group{display:grid;gap:var(--asr-space-3)}
.asr-pref-group+.asr-pref-group{margin-top:var(--asr-space-6);padding-top:var(--asr-space-6);box-shadow:inset 0 1px 0 var(--asr-color-border)}
/* la legend di un fieldset si sovrappone al bordo superiore: la si rende un blocco normale */
.asr-pref-group>legend{float:left;width:100%;padding:0}
.asr-pref-group>legend+*{clear:both}

/* ---------- Segnaposto shortcode nell'editor ---------- */
.asr-quiz-placeholder{padding:1rem;border:1px dashed #7A7F85;border-radius:0;text-align:center;font-family:"ASR Raleway","Helvetica Neue",Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;font-size:12px;font-weight:700}

/* ---------- Barra di amministrazione di WordPress (utenti con ruolo staff) ---------- */
.admin-bar .asr-header,.admin-bar .asr-exam__bar{top:32px}
@media (min-width:1024px){.admin-bar .asr-app .asr-nav{top:calc(var(--asr-header-h-lg) + 32px);height:calc(100dvh - var(--asr-header-h-lg) - 32px)}}
@media (max-width:782px){.admin-bar .asr-header,.admin-bar .asr-exam__bar{top:46px}}
@media (max-width:600px){.admin-bar .asr-header,.admin-bar .asr-exam__bar{top:0}}

/* Compiti e messaggi (1.3.0) */
/* Badge della navigazione: nav laterale e menu utente sono sempre scuri (brand-ink), in entrambi i temi. */
.asr-nav__badge{display:inline-grid;place-items:center;flex:none;min-width:20px;height:20px;margin-left:auto;padding:0 6px;background:var(--asr-brand-petrol-line);color:var(--asr-brand-ink);font-family:var(--asr-font-numeric);font-size:11px;font-weight:var(--asr-weight-extrabold);font-variant-numeric:var(--asr-numeric-tabular);letter-spacing:0;line-height:1;text-transform:none}
.asr-nav__badge--danger{background:var(--asr-color-danger);color:var(--asr-color-bg)}
.asr-nav__link .asr-nav__badge{margin-left:auto}
.asr-avatar{position:relative}
.asr-avatar--dot::after{content:"";position:absolute;top:-4px;right:-4px;width:10px;height:10px;background:var(--asr-brand-petrol-light);box-shadow:0 0 0 2px var(--asr-brand-ink)}
.asr-avatar--dot-danger::after{background:var(--asr-color-danger)}
@media (forced-colors:active){.asr-nav__badge{border:1px solid CanvasText}.asr-avatar--dot::after{background:CanvasText}}

/* Card della dashboard */
.asr-coach__head{margin-bottom:var(--asr-space-4)}
.asr-coach__head h2{flex-wrap:nowrap;gap:var(--asr-space-3);min-width:0}
.asr-coach__head h2>.asr-icon{flex:none;color:var(--asr-color-accent-text)}
.asr-coach__count:empty{display:none}
.asr-coach__list>*+*{margin-top:var(--asr-space-4);padding-top:var(--asr-space-4);border-top:1px solid var(--asr-color-border)}
.asr-coach__done{color:var(--asr-color-text)}
.asr-coach__done>.asr-icon{flex:none;color:var(--asr-color-success)}

/* Compito */
.asr-asg{min-width:0}
.asr-asg-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--asr-space-4);grid-template-columns:minmax(0,1fr)}
@media (min-width:1024px){.asr-asg-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.asr-asg-list>li{min-width:0}
.asr-asg-list .asr-asg{height:100%;display:flex;flex-direction:column;padding:var(--asr-space-5);background:var(--asr-color-surface);border:1px solid var(--asr-color-border);border-top:2px solid var(--asr-color-accent);box-shadow:var(--asr-shadow-1)}
.asr-asg-list .asr-asg[data-state=overdue]{border-top-color:var(--asr-color-danger)}
.asr-asg-list .asr-asg:is([data-state=completed],[data-state=completed_late]){border-top-color:var(--asr-color-success)}
.asr-asg-list .asr-asg__foot{margin-top:auto;padding-top:var(--asr-space-4)}
.asr-asg__head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--asr-space-3)}
.asr-asg__title{margin:0;min-width:0;font-family:var(--asr-font-body);font-size:var(--asr-text-lg);font-weight:var(--asr-weight-bold);line-height:var(--asr-leading-snug);letter-spacing:0;text-transform:none;color:var(--asr-color-heading);overflow-wrap:anywhere}
.asr-asg--compact .asr-asg__title{font-size:var(--asr-text-md)}
.asr-asg__head>.asr-badge,.asr-asg__badges{flex:none}
.asr-asg__badges{gap:6px;justify-content:flex-end}
.asr-asg__meta{margin-top:2px;font-size:var(--asr-text-sm);color:var(--asr-color-text-muted)}
.asr-asg__note{margin-top:var(--asr-space-3);padding:var(--asr-space-3) var(--asr-space-4);background:var(--asr-color-surface-2);box-shadow:inset 2px 0 0 var(--asr-color-accent);font-size:var(--asr-text-sm);white-space:pre-line;overflow-wrap:anywhere;color:var(--asr-color-text)}
.asr-asg__chips{display:flex;flex-wrap:wrap;gap:var(--asr-space-2);list-style:none;margin:var(--asr-space-3) 0 0;padding:0}
.asr-asg__chips li{min-width:0;max-width:100%}
.asr-asg__chips a{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:var(--asr-tap-min);padding:0 var(--asr-space-3);border:1px solid var(--asr-color-border-strong);color:var(--asr-color-text);font-size:var(--asr-text-sm);text-decoration:none;transition:background-color var(--asr-dur-base) var(--asr-ease),border-color var(--asr-dur-base) var(--asr-ease)}
.asr-asg__chips a:hover{border-color:var(--asr-color-accent);background:var(--asr-color-surface-3);color:var(--asr-color-heading)}
.asr-asg__chips .asr-icon{flex:none;width:18px;height:18px;color:var(--asr-color-accent-text)}
.asr-asg__chipnum{font-family:var(--asr-font-numeric);font-weight:var(--asr-weight-extrabold);font-variant-numeric:var(--asr-numeric-tabular);color:var(--asr-color-accent-text)}
.asr-asg__chiptxt{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.asr-asg__progress{margin-top:var(--asr-space-4)}
.asr-asg__progress .asr-road-progress{width:100%}
.asr-asg__progress-text{margin-top:var(--asr-space-2);font-size:var(--asr-text-sm);font-variant-numeric:var(--asr-numeric-tabular);color:var(--asr-color-text)}
.asr-asg__blocked{display:flex;align-items:flex-start;gap:var(--asr-space-2);margin-top:var(--asr-space-3);font-size:var(--asr-text-sm);color:var(--asr-color-warning)}
.asr-asg__blocked>.asr-icon{flex:none;margin-top:2px}
.asr-asg__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--asr-space-3);margin-top:var(--asr-space-4)}
.asr-asg__due{display:inline-flex;align-items:center;gap:6px;min-width:0;font-size:var(--asr-text-sm);color:var(--asr-color-text-muted)}
.asr-asg__due>.asr-icon{flex:none}
.asr-asg__due.is-overdue{color:var(--asr-color-danger);font-weight:var(--asr-weight-bold)}
.asr-asg__due.is-today{color:var(--asr-color-warning);font-weight:var(--asr-weight-bold)}
.asr-asg__status:empty{display:none}
.asr-asg__status{margin-top:var(--asr-space-3)}
.asr-asg-section+.asr-asg-section{margin-top:var(--asr-space-8)}
.asr-asg-section>.asr-alert{margin-bottom:var(--asr-space-4)}
.asr-asg-done:focus{outline:none}
.asr-asg-done>p+.asr-asg-list{margin-top:var(--asr-space-3)}
.asr-asg-empty__ill{display:block;width:min(100%,280px);height:96px;color:var(--asr-color-text-muted)}
.asr-asg-empty__ill svg{display:block;width:100%;height:100%}

/* Messaggio (testo semplice dello staff: mai HTML) */
.asr-msg-list{display:grid;gap:var(--asr-space-3)}
.asr-msg{position:relative;min-width:0;padding:var(--asr-space-4) var(--asr-space-5);background:var(--asr-color-surface);border:1px solid var(--asr-color-border);box-shadow:var(--asr-shadow-1)}
.asr-msg--compact{padding:0;background:none;border:0;box-shadow:none}
.asr-msg--unread{border-left:3px solid var(--asr-color-accent)}
.asr-msg--compact.asr-msg--unread{padding-left:var(--asr-space-4)}
.asr-msg__head{display:flex;flex-wrap:wrap;align-items:center;gap:4px var(--asr-space-3)}
.asr-msg__author{font-weight:var(--asr-weight-bold);color:var(--asr-color-heading)}
.asr-msg__time{font-size:var(--asr-text-sm);font-variant-numeric:var(--asr-numeric-tabular);color:var(--asr-color-text-muted)}
.asr-msg__license{font-size:var(--asr-text-xs);font-weight:var(--asr-weight-bold);letter-spacing:var(--asr-tracking-label);text-transform:var(--asr-transform-display);color:var(--asr-color-text-muted)}
.asr-msg__head>.asr-badge{margin-left:auto}
.asr-msg__body{margin-top:var(--asr-space-2);white-space:pre-line;overflow-wrap:anywhere;color:var(--asr-color-text)}
.asr-msg__actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--asr-space-3);margin-top:var(--asr-space-3)}
.asr-msg[tabindex]:focus{outline:2px solid var(--asr-color-focus);outline-offset:2px}
.asr-msg-more{margin-top:var(--asr-space-5);text-align:center}
.asr-msg-reply{margin-top:var(--asr-space-6)}
.asr-msg-reply>.asr-icon{flex:none;color:var(--asr-color-accent-text)}
@media print{.asr-msg--unread{border-left-color:currentColor}}

/* 1.4.0 – Conversazioni con gli istruttori (#/messaggi) */
.asr-conv-layout{display:grid;gap:var(--asr-space-4);min-width:0}
@media (min-width:900px){.asr-conv-layout.has-picker{grid-template-columns:minmax(220px,300px) minmax(0,1fr);align-items:start}}
.asr-conv-pick ul{display:grid;gap:var(--asr-space-2);margin:0;padding:0;list-style:none}
.asr-conv-pick__btn{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--asr-space-3);width:100%;min-height:56px;padding:var(--asr-space-3);background:var(--asr-color-surface);border:1px solid var(--asr-color-border);color:var(--asr-color-text);font:inherit;text-align:left;cursor:pointer}
.asr-conv-pick__btn:hover{border-color:var(--asr-color-primary-line)}
.asr-conv-pick__btn[aria-pressed="true"]{border-color:var(--asr-color-primary-line);box-shadow:inset 3px 0 0 var(--asr-color-accent);background:var(--asr-color-surface-2)}
.asr-conv-pick__btn:focus-visible{outline:2px solid var(--asr-color-focus);outline-offset:2px}
.asr-conv-pick__text{display:grid;gap:2px;min-width:0}
.asr-conv-pick__name{font-weight:var(--asr-weight-bold);color:var(--asr-color-heading)}
.asr-conv-pick__sub,.asr-conv-pick__preview{font-size:var(--asr-text-sm);color:var(--asr-color-text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.asr-conv{display:flex;flex-direction:column;gap:var(--asr-space-4);min-width:0}
.asr-conv__head{display:flex;align-items:center;gap:var(--asr-space-3);padding-bottom:var(--asr-space-3);border-bottom:1px solid var(--asr-color-border)}
.asr-conv__head .asr-avatar{width:40px;height:40px;flex:none}
.asr-conv__title{margin:0}
.asr-conv__title:focus{outline:none}
.asr-conv__older{align-self:center}
.asr-conv__list{display:flex;flex-direction:column;gap:var(--asr-space-3);margin:0;padding:0;list-style:none;max-height:min(60vh,560px);overflow-y:auto;overscroll-behavior:contain}
.asr-conv__item{display:flex;min-width:0}
.asr-conv__item.is-sent{justify-content:flex-end}
.asr-conv__bubble{max-width:min(85%,560px);min-width:0;padding:var(--asr-space-3) var(--asr-space-4);background:var(--asr-color-surface-2);border:1px solid var(--asr-color-border)}
.asr-conv__item.is-sent .asr-conv__bubble{background:var(--asr-brand-petrol);border-color:var(--asr-brand-petrol-line);color:#FFFFFF}
.asr-conv__meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px var(--asr-space-2);margin:0 0 4px;font-size:var(--asr-text-xs);color:var(--asr-color-text-muted)}
.asr-conv__item.is-sent .asr-conv__meta,.asr-conv__item.is-sent .asr-conv__state{color:rgba(255,255,255,.82)}
.asr-conv__who{font-weight:var(--asr-weight-bold);color:var(--asr-color-heading)}
.asr-conv__item.is-sent .asr-conv__who{color:#FFFFFF}
.asr-conv__meta time{font-variant-numeric:var(--asr-numeric-tabular)}
.asr-conv__body{margin:0;white-space:pre-line;overflow-wrap:anywhere}
.asr-conv__state{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin:6px 0 0;font-size:var(--asr-text-xs);color:var(--asr-color-text-muted)}
.asr-conv__empty{margin:0}
.asr-conv__composer{display:grid;gap:var(--asr-space-2);padding-top:var(--asr-space-4);border-top:1px solid var(--asr-color-border)}
.asr-conv__input{min-height:88px;resize:vertical}
.asr-conv__foot{display:flex;align-items:center;justify-content:space-between;gap:var(--asr-space-3)}
.asr-conv__counter{font-size:var(--asr-text-xs);font-variant-numeric:var(--asr-numeric-tabular);color:var(--asr-color-text-muted)}
.asr-conv__counter.is-near{color:var(--asr-color-warning);font-weight:var(--asr-weight-bold)}
@media (max-width:599px){.asr-conv__bubble{max-width:92%}.asr-conv__list{max-height:none;overflow:visible}}
@media print{.asr-conv__composer,.asr-conv__older{display:none}.asr-conv__list{max-height:none;overflow:visible}}
