:root{--iem-gold:#d6ab48;--iem-gold-dark:#b88a2e;--iem-button-border:#d9ba77;--iem-button-hover:#f7f1e2;--iem-black:#171717;--iem-soft:#f7f5f0;--iem-border:#ddd7ca;--iem-muted:#6f6a61;--iem-white:#fff;--iem-danger:#a22b2b;--iem-success:#316b45}
.iem-shell,.iem-shell *{box-sizing:border-box}.iem-shell{max-width:1180px;margin:40px auto;padding:0 20px;color:var(--iem-black);font-family:"Times New Roman",Times,serif}.iem-panel,.iem-exam{background:var(--iem-white);border:1px solid var(--iem-border);box-shadow:0 14px 36px rgba(20,18,12,.06)}.iem-panel{max-width:780px;margin:30px auto 0;padding:52px}.iem-login-panel{max-width:590px}.iem-eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--iem-gold-dark);font-size:13px;font-weight:700}.iem-panel h1,.iem-exam h1{margin:9px 0 14px;font-size:38px;line-height:1.12;font-weight:700}.iem-meta-line{margin:0 0 18px;color:var(--iem-muted);font-size:16px;line-height:1.45}.iem-meta-line strong{color:var(--iem-black)}.iem-lead{font-size:20px;line-height:1.55;color:#45413b;margin:0 0 28px}.iem-form label{display:block;margin:18px 0 7px;font-size:16px;font-weight:700}.iem-form input{width:100%;min-height:50px;padding:10px 14px;border:1px solid #bfb7a8;border-radius:2px;background:#fff;font:17px "Times New Roman",Times,serif}.iem-form input:focus{outline:2px solid rgba(214,171,72,.28);border-color:var(--iem-gold-dark)}.iem-help{font-size:14px;color:var(--iem-muted);line-height:1.45}.iem-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 22px;border:1px solid var(--iem-black);border-radius:2px;font:700 16px "Times New Roman",Times,serif;cursor:pointer;transition:.2s}.iem-button-primary{background:var(--iem-black);color:#fff}.iem-button-primary:hover{background:var(--iem-gold-dark);border-color:var(--iem-gold-dark);color:#fff}.iem-button-secondary{background:#fff;color:var(--iem-black)}.iem-button-secondary:hover{border-color:var(--iem-gold-dark);color:var(--iem-gold-dark)}.iem-button:disabled{opacity:.45;cursor:not-allowed}.iem-alert{padding:18px 20px;margin:22px 0;border-left:3px solid var(--iem-gold);background:var(--iem-soft);font-size:17px;line-height:1.5}.iem-alert-error{border-color:var(--iem-danger);background:#fff5f5;color:#751c1c}.iem-topline{display:flex;align-items:center;justify-content:space-between;color:var(--iem-muted);font-size:14px}.iem-topline-end{justify-content:flex-end}.iem-exam-id{margin:18px 0 0;font-size:17px;color:var(--iem-muted)}.iem-exam-id strong{color:var(--iem-black);letter-spacing:.05em}.iem-meta-separator{display:inline-block;margin:0 9px;color:var(--iem-gold-dark)}.iem-logout-form{margin:0}.iem-link-button{padding:0;border:0;background:none;text-decoration:underline;font:inherit;color:inherit;cursor:pointer}.iem-exit-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 15px;border:1px solid var(--iem-border);background:#fff;text-decoration:none;color:var(--iem-black);font:700 15px "Times New Roman",Times,serif}.iem-exit-button:hover{border-color:var(--iem-gold-dark);color:var(--iem-gold-dark)}.iem-exit-button:disabled{opacity:.55;cursor:wait}.iem-exam-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:32px 0;background:var(--iem-border);border:1px solid var(--iem-border)}.iem-exam-summary>div{padding:20px;background:#fff}.iem-exam-summary span{display:block;margin-bottom:6px;color:var(--iem-muted);font-size:14px}.iem-exam-summary strong{font-size:19px}.iem-rules{margin:30px 0}.iem-rules h2{font-size:25px}.iem-rules p{font-size:17px;line-height:1.55}.iem-thanks-panel{text-align:center}.iem-thanks-panel .iem-topline{text-align:left}.iem-success-mark{width:74px;height:74px;display:flex;align-items:center;justify-content:center;margin:25px auto;border:1px solid var(--iem-gold);border-radius:50%;font:700 37px Georgia,serif;color:var(--iem-success)}
.iem-exam{margin-top:30px}.iem-exam-header{display:flex;justify-content:space-between;gap:25px;align-items:center;padding:30px 36px;border-bottom:1px solid var(--iem-border)}.iem-exam-header-actions{display:flex;align-items:center;gap:14px}.iem-exam-header h1{font-size:28px;margin-bottom:0}.iem-timer-box{min-width:180px;padding:15px 18px;border:1px solid var(--iem-gold);text-align:center}.iem-timer-box span{display:block;margin-bottom:5px;color:var(--iem-muted);font-size:13px;text-transform:uppercase;letter-spacing:.08em}.iem-timer-box strong{font-size:29px;font-variant-numeric:tabular-nums}.iem-time-warning .iem-timer-box{border-color:var(--iem-danger);color:var(--iem-danger)}.iem-progress-row{display:grid;grid-template-columns:minmax(130px,1fr) auto auto;gap:18px;align-items:center;padding:15px 36px;background:var(--iem-soft);border-bottom:1px solid var(--iem-border);font-size:14px}.iem-progress-track{height:5px;background:#ded9ce;overflow:hidden}.iem-progress-track span{display:block;height:100%;width:0;background:var(--iem-gold);transition:width .25s}.iem-save-state{color:var(--iem-muted)}.iem-save-state.is-error{color:var(--iem-danger)}.iem-exam-layout{display:grid;grid-template-columns:110px minmax(0,1fr);min-height:530px}.iem-question-nav{padding:24px 20px;border-right:1px solid var(--iem-border);display:grid;grid-template-columns:repeat(2,1fr);align-content:start;gap:9px;background:#fcfbf8}.iem-question-nav button{width:34px;height:34px;padding:0;border:1px solid #cfc8b9;background:#fff;font:16px "Times New Roman",Times,serif;cursor:pointer}.iem-question-nav button.answered{border-color:var(--iem-gold);background:#fff9eb}.iem-question-nav button.current{background:var(--iem-black);border-color:var(--iem-black);color:#fff}.iem-question-stage{padding:44px 48px 32px}.iem-question{display:none}.iem-question.is-active{display:block}.iem-question-number{color:var(--iem-gold-dark);font-size:14px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.iem-question h2{font-size:28px;line-height:1.32;margin:10px 0 30px}.iem-options{display:grid;gap:13px}.iem-option{display:flex;align-items:flex-start;gap:14px;padding:17px 19px;border:1px solid #cbc4b7;background:#fff;cursor:pointer;font-size:18px;line-height:1.4;transition:.18s}.iem-option:hover,.iem-option.selected{border-color:var(--iem-gold-dark);background:#fffaf0}.iem-option input{position:absolute;opacity:0;pointer-events:none}.iem-option-letter{display:flex;flex:0 0 30px;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid var(--iem-border);font-weight:700}.iem-option.selected .iem-option-letter{background:var(--iem-gold);border-color:var(--iem-gold);color:#fff}.iem-exam-controls{display:flex;gap:10px;flex-wrap:wrap;margin-top:36px;padding-top:25px;border-top:1px solid var(--iem-border)}.iem-exam-controls [data-iem-submit]{margin-left:auto}
@media(max-width:760px){.iem-shell{margin:18px auto;padding:0 10px}.iem-panel{padding:30px 22px}.iem-panel h1{font-size:31px}.iem-exam-summary{grid-template-columns:1fr}.iem-exam-header{align-items:flex-start;padding:22px;flex-direction:column}.iem-exam-header-actions{width:100%;align-items:stretch;flex-direction:column-reverse}.iem-exam-header-actions .iem-logout-form{align-self:flex-end}.iem-timer-box{width:100%}.iem-progress-row{grid-template-columns:1fr}.iem-exam-layout{display:block}.iem-question-nav{border-right:0;border-bottom:1px solid var(--iem-border);grid-template-columns:repeat(8,34px);overflow-x:auto}.iem-question-stage{padding:30px 22px}.iem-question h2{font-size:23px}.iem-exam-controls [data-iem-submit]{width:100%;margin-left:0;order:3}.iem-button{flex:1}.iem-save-state{display:none}}

.iem-hidden {
    display: none !important;
}

.iem-button:disabled {
    cursor: wait;
    opacity: 0.68;
}


/* v1.0.5 — intestazione esame e timer integrato */
.iem-exam-header{align-items:center;padding:24px 36px;background:#fff}
.iem-exam-identity{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;min-width:0}
.iem-exam-identity h1{margin:0 0 5px;text-align:left;line-height:1.1}
.iem-exam-identity .iem-meta-line{margin:0;text-align:left}
.iem-exam-header-actions{margin-left:auto}
.iem-timer-box{display:flex;align-items:center;gap:12px;min-width:210px;padding:10px 16px;border:1px solid var(--iem-border);border-left:4px solid var(--iem-gold);border-radius:3px;background:var(--iem-soft);text-align:left;box-shadow:none}
.iem-timer-content{display:flex!important;flex-direction:column;line-height:1;margin:0!important;color:var(--iem-black)!important;font-size:inherit!important;text-transform:none!important;letter-spacing:normal!important;font-weight:400!important}.iem-timer-box>.iem-timer-icon{margin:0!important;color:var(--iem-black)!important;font-size:inherit!important;text-transform:none!important;letter-spacing:normal!important}
.iem-timer-content small{display:block;margin:0 0 5px;color:var(--iem-muted);font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.iem-timer-content strong{font-size:25px;line-height:1;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.iem-timer-icon{position:relative;display:block;flex:0 0 30px;width:30px;height:30px;border:2px solid var(--iem-black);border-radius:50%}
.iem-timer-icon:before{content:"";position:absolute;left:13px;top:5px;width:2px;height:9px;background:var(--iem-black);transform-origin:bottom center}
.iem-timer-icon:after{content:"";position:absolute;left:13px;top:13px;width:8px;height:2px;background:var(--iem-black);transform-origin:left center;transform:rotate(25deg)}
.iem-time-warning .iem-timer-box{border-color:var(--iem-danger);border-left-color:var(--iem-danger);background:#fff5f5;color:var(--iem-danger)}
.iem-time-warning .iem-timer-icon{border-color:var(--iem-danger)}
.iem-time-warning .iem-timer-icon:before,.iem-time-warning .iem-timer-icon:after{background:var(--iem-danger)}

/* Le domande risposte restano leggibili: fondo bianco, bordo oro, numero nero. */
.iem-question-nav button.answered{background:#fff!important;border:2px solid var(--iem-gold)!important;color:var(--iem-black)!important;font-weight:700}
.iem-question-nav button.current{background:var(--iem-black)!important;border-color:var(--iem-black)!important;color:#fff!important}
.iem-question-nav button.answered.current{background:var(--iem-black)!important;border-color:var(--iem-black)!important;color:#fff!important}

@media(max-width:760px){.iem-exam-header{padding:20px 22px}.iem-exam-header-actions{margin-left:0}.iem-timer-box{width:100%;min-width:0}.iem-exam-identity h1{font-size:27px}}

/* v1.0.6 — accesso autonomo, password visibile su richiesta e navigazione leggibile */
.iem-question-nav button{
    color:var(--iem-black)!important;
    background:#fff!important;
    border:1px solid #cfc8b9!important;
    font-weight:600;
}
.iem-question-nav button.answered{
    color:var(--iem-black)!important;
    background:#fff!important;
    border:2px solid var(--iem-gold)!important;
    font-weight:700;
}
.iem-question-nav button.current,
.iem-question-nav button.answered.current{
    color:#fff!important;
    background:var(--iem-black)!important;
    border-color:var(--iem-black)!important;
}
.iem-password-wrap{position:relative}
.iem-password-wrap>input{padding-right:52px!important}
.iem-password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:42px;height:40px;padding:0;border:0;background:transparent;color:#504b43;cursor:pointer}
.iem-password-toggle:hover,.iem-password-toggle:focus{color:var(--iem-gold-dark);outline:none}
.iem-password-toggle svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.iem-password-toggle.is-visible:after{content:"";position:absolute;width:25px;height:1.5px;background:currentColor;transform:rotate(-42deg)}
.iem-login-switch{display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin-top:26px;padding-top:20px;border-top:1px solid var(--iem-border);color:var(--iem-muted);font-size:15px}
.iem-text-action{padding:0;border:0;background:transparent;color:var(--iem-black);font:700 15px "Times New Roman",Times,serif;text-decoration:underline;cursor:pointer}
.iem-text-action:hover{color:var(--iem-gold-dark)}
.iem-form-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.iem-alert-success{border-color:var(--iem-success);background:#f2faf4;color:#245c37}
.iem-form input[type=email]{width:100%;min-height:50px;padding:10px 14px;border:1px solid #bfb7a8;border-radius:2px;background:#fff;font:17px "Times New Roman",Times,serif}
.iem-form input[type=email]:focus{outline:2px solid rgba(214,171,72,.28);border-color:var(--iem-gold-dark)}
@media(max-width:600px){.iem-form-columns{grid-template-columns:1fr}.iem-login-switch{align-items:flex-start;flex-direction:column}}


/* v1.0.7 — la testata del test scorre sotto la headbar del sito senza sovrapporsi */
.iem-shell{
    position:relative;
    z-index:0;
    isolation:isolate;
}
.iem-exam{
    position:relative;
    z-index:0;
}
.iem-exam-header{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:0!important;
    transform:none!important;
    margin:0!important;
}
/* Mantiene la headbar del tema sopra i contenuti dell'esame durante lo scroll. */
body:has(.iem-shell) #masthead,
body:has(.iem-shell) .site-header,
body:has(.iem-shell) header.site-header,
body:has(.iem-shell) .elementor-location-header,
body:has(.iem-shell) header[data-elementor-type="header"],
body:has(.iem-shell) .headbar,
body:has(.iem-shell) .header-bar,
body:has(.iem-shell) .incrivio-headbar,
body:has(.iem-shell) #headbar{
    z-index:2147483000!important;
    background:#fff!important;
    isolation:isolate;
}

/* v1.2.0 — conferma risposte, sicurezza e sincronizzazione timer */
.iem-text-button{padding:0;border:0;background:transparent;color:var(--iem-black);font:700 15px "Times New Roman",Times,serif;text-decoration:underline;cursor:pointer}.iem-text-button:hover{color:var(--iem-gold-dark)}.iem-back-login{margin-top:22px}
.iem-captcha{margin-top:18px;padding:14px 16px;border:1px solid var(--iem-border);background:var(--iem-soft)}.iem-captcha label{margin-top:0}.iem-captcha input{max-width:150px}.iem-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.iem-password-toggle span{position:relative;display:block;width:23px;height:15px;border:1.8px solid currentColor;border-radius:50%/60%}.iem-password-toggle span:after{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;transform:translate(-50%,-50%);border:1.8px solid currentColor;border-radius:50%}.iem-password-toggle.is-visible:after{z-index:2}
.iem-answer-confirm-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:22px;padding:17px 0 0;border-top:1px solid var(--iem-border)}.iem-answer-confirm-row span{color:var(--iem-muted);font-size:15px}.iem-button-confirm{min-width:180px;background:#fff;color:var(--iem-black);border-color:var(--iem-gold-dark)}.iem-button-confirm:not(:disabled):hover{background:var(--iem-soft)}.iem-button-confirm:disabled{cursor:default;opacity:1;background:#f4f2ed;color:#69645c;border-color:var(--iem-border)}
.iem-question-nav button.pending{border-style:dashed!important;border-color:var(--iem-gold-dark)!important;background:#fffaf0!important}.iem-question-nav button.pending.current{background:var(--iem-black)!important;color:#fff!important;border-style:solid!important;border-color:var(--iem-black)!important}
.iem-modal{position:fixed;inset:0;z-index:2147483646;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(15,15,15,.48)}.iem-modal-card{width:min(620px,100%);padding:32px;background:#fff;border:1px solid var(--iem-border);box-shadow:0 22px 70px rgba(0,0,0,.22)}.iem-modal-card h2{margin:0 0 18px;font-size:28px}.iem-modal-card p{font-size:17px;line-height:1.5}.iem-modal-warning{padding:13px 15px;border-left:3px solid var(--iem-danger);background:#fff5f5;color:#751c1c}.iem-modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:24px}
.iem-timer-box{border-radius:6px;background:#fbfaf7}.iem-timer-content strong{font-size:27px}.iem-time-warning .iem-timer-content strong{color:var(--iem-danger)!important}
@media(max-width:600px){.iem-answer-confirm-row{align-items:stretch;flex-direction:column}.iem-button-confirm{width:100%}.iem-modal-actions .iem-button{width:100%}}

/* v1.2.1 — stato di salvataggio protetto */
.iem-question[data-saving="1"] .iem-options{pointer-events:none}.iem-question[data-saving="1"] .iem-option{opacity:.72;cursor:wait}


/* v1.2.2 — modalità simulazione, risultato immediato e pulsanti Incrivio */
.iem-form [data-iem-request-submit]{margin-top:28px}
.iem-result-summary{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;max-width:360px;margin:24px auto;padding:22px 28px;border:1px solid var(--iem-border);background:var(--iem-soft)}
.iem-result-summary span{color:var(--iem-muted);font-size:14px;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.iem-result-summary strong{font-size:32px;line-height:1.1;color:var(--iem-black)}
.iem-repeat-form{margin-top:28px;padding-top:24px;border-top:1px solid var(--iem-border);text-align:center}.iem-repeat-form .iem-help{margin:11px 0 0}
.iem-shell .iem-button,.iem-shell .iem-exit-button,.iem-shell .iem-text-button{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;padding:10px 22px!important;border:1px solid var(--iem-button-border)!important;border-radius:999px!important;background:#fff!important;color:var(--iem-black)!important;text-decoration:none!important;font:700 15px "Times New Roman",Times,serif!important;cursor:pointer;box-shadow:none!important;transition:background-color .18s ease,border-color .18s ease,color .18s ease!important}
.iem-shell .iem-button:hover:not(:disabled),.iem-shell .iem-button:focus-visible:not(:disabled),.iem-shell .iem-button:active:not(:disabled),.iem-shell .iem-exit-button:hover:not(:disabled),.iem-shell .iem-exit-button:focus-visible:not(:disabled),.iem-shell .iem-exit-button:active:not(:disabled),.iem-shell .iem-text-button:hover:not(:disabled),.iem-shell .iem-text-button:focus-visible:not(:disabled),.iem-shell .iem-text-button:active:not(:disabled){background:var(--iem-button-hover)!important;border-color:var(--iem-button-border)!important;color:var(--iem-black)!important;outline:none!important;box-shadow:none!important}
.iem-shell .iem-button:disabled,.iem-shell .iem-exit-button:disabled,.iem-shell .iem-text-button:disabled{background:#f2f0eb!important;border-color:#d8d2c5!important;color:#777168!important;opacity:1!important;cursor:not-allowed}
.iem-shell .iem-answer-confirm-row .iem-button-confirm:disabled{border-radius:999px!important}.iem-login-switch{gap:12px}.iem-back-login{margin-top:26px}
@media(max-width:600px){.iem-shell .iem-button,.iem-shell .iem-exit-button,.iem-shell .iem-text-button{width:100%}.iem-login-switch{align-items:stretch}.iem-logout-form .iem-exit-button{width:auto}}

.iem-summary-exam-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:17px;letter-spacing:.035em;overflow-wrap:anywhere}


/* v1.2.9 — schermata esame adattata al viewport e risultati dettagliati */
body:has(.iem-exam) .iem-shell{margin-top:16px;margin-bottom:16px}
.iem-exam{
    display:flex;
    flex-direction:column;
    height:var(--iem-exam-available-height,calc(100vh - 180px));
    min-height:360px;
    max-height:none;
    margin-top:12px;
    overflow:hidden;
}
.iem-exam .iem-exam-header{flex:0 0 auto;padding:14px 22px;gap:18px}
.iem-exam .iem-exam-header h1{font-size:24px}
.iem-exam .iem-exam-identity .iem-meta-line{font-size:14px;line-height:1.3}
.iem-exam .iem-exam-header-actions{gap:10px}
.iem-exam .iem-exit-button{min-height:36px!important;padding:7px 16px!important}
.iem-exam .iem-timer-box{min-width:188px;padding:8px 13px;gap:10px}
.iem-exam .iem-timer-icon{flex-basis:26px;width:26px;height:26px}
.iem-exam .iem-timer-icon:before{left:11px;top:4px;height:8px}
.iem-exam .iem-timer-icon:after{left:11px;top:11px;width:7px}
.iem-exam .iem-timer-content small{margin-bottom:3px;font-size:10px}
.iem-exam .iem-timer-content strong{font-size:22px}
.iem-exam .iem-progress-row{flex:0 0 auto;grid-template-columns:minmax(120px,1fr) auto auto;gap:13px;padding:9px 22px;font-size:13px}
.iem-exam .iem-exam-layout{flex:1;min-height:0;grid-template-columns:96px minmax(0,1fr)}
.iem-exam .iem-question-nav{min-height:0;overflow-y:auto;padding:14px 12px;gap:7px}
.iem-exam .iem-question-nav button{width:32px;height:32px;font-size:15px}
.iem-exam .iem-question-stage{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:18px 28px 14px}
.iem-exam .iem-question{min-height:0}
.iem-exam .iem-question.is-active{display:flex;flex:1;flex-direction:column;min-height:0;overflow-y:auto;padding-right:7px}
.iem-exam .iem-question-number{font-size:12px}
.iem-exam .iem-question h2{margin:5px 0 14px;font-size:23px;line-height:1.24}
.iem-exam .iem-options{gap:8px}
.iem-exam .iem-option{gap:11px;padding:10px 13px;font-size:16px;line-height:1.3}
.iem-exam .iem-option-letter{flex-basis:27px;width:27px;height:27px}
.iem-exam .iem-answer-confirm-row{margin-top:12px;padding-top:11px;gap:11px}
.iem-exam .iem-answer-confirm-row span{font-size:13px}
.iem-exam .iem-button-confirm{min-width:166px;min-height:39px!important;padding:7px 17px!important}
.iem-exam .iem-exam-controls{flex:0 0 auto;margin-top:9px;padding-top:10px;gap:8px}
.iem-exam .iem-exam-controls .iem-button{min-height:39px!important;padding:7px 18px!important}

.iem-thanks-panel.iem-results-visible{max-width:1040px;padding:44px 48px;text-align:center}
.iem-thanks-heading{max-width:820px;margin:0 auto;text-align:center}
.iem-result-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:26px auto 18px;border:1px solid var(--iem-border);background:var(--iem-border)}
.iem-result-overview>div{display:flex;flex-direction:column;gap:7px;padding:18px 12px;background:#fff}
.iem-result-overview span{color:var(--iem-muted);font-size:12px;text-transform:uppercase;letter-spacing:.07em;font-weight:700}
.iem-result-overview strong{font-size:27px;color:var(--iem-black)}
.iem-result-outcome{display:flex;flex-direction:column;align-items:center;gap:4px;margin:0 auto 22px;padding:16px 22px;border:1px solid var(--iem-border);background:var(--iem-soft)}
.iem-result-outcome span{color:var(--iem-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}
.iem-result-outcome strong{font-size:26px}
.iem-result-outcome small{font-size:14px;color:var(--iem-muted)}
.iem-result-outcome.is-passed{border-left:4px solid var(--iem-success)}
.iem-result-outcome.is-passed strong{color:var(--iem-success)}
.iem-result-outcome.is-not-passed{border-left:4px solid var(--iem-danger)}
.iem-result-outcome.is-not-passed strong{color:var(--iem-danger)}
.iem-result-review{margin-top:34px;padding-top:30px;border-top:1px solid var(--iem-border);text-align:left}
.iem-result-review h2{margin:0 0 7px;font-size:28px;text-align:center}
.iem-result-review-intro{margin:0 0 24px;color:var(--iem-muted);font-size:16px;text-align:center}
.iem-result-question-list{display:grid;gap:14px}
.iem-result-question{padding:20px 22px;border:1px solid var(--iem-border);border-left-width:4px;background:#fff}
.iem-result-question.is-correct{border-left-color:var(--iem-success)}
.iem-result-question.is-wrong,.iem-result-question.is-unanswered{border-left-color:var(--iem-danger)}
.iem-result-question-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:10px}
.iem-result-question-head span{color:var(--iem-muted);font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.iem-result-question-head strong{padding:5px 10px;border:1px solid currentColor;border-radius:999px;font-size:13px}
.iem-result-question.is-correct .iem-result-question-head strong{color:var(--iem-success)}
.iem-result-question.is-wrong .iem-result-question-head strong,.iem-result-question.is-unanswered .iem-result-question-head strong{color:var(--iem-danger)}
.iem-result-question h3{margin:0 0 16px;font-size:21px;line-height:1.35}
.iem-result-answer{display:grid;grid-template-columns:150px minmax(0,1fr);gap:15px;padding:11px 0;border-top:1px solid #eee9df}
.iem-result-answer span{color:var(--iem-muted);font-size:13px;font-weight:700}
.iem-result-answer p{margin:0;font-size:16px;line-height:1.45}
.iem-result-correct p{font-weight:700}

@media(max-width:900px){
    .iem-exam{height:auto;min-height:0;max-height:none;overflow:visible}
    .iem-exam .iem-exam-layout{display:block}
    .iem-exam .iem-question-nav{display:grid;grid-template-columns:repeat(10,32px);overflow-x:auto;overflow-y:hidden;border-right:0;border-bottom:1px solid var(--iem-border)}
    .iem-exam .iem-question-stage{overflow:visible}
    .iem-exam .iem-question.is-active{overflow:visible}
    .iem-result-overview{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:600px){
    .iem-thanks-panel.iem-results-visible{padding:30px 20px}
    .iem-result-overview{grid-template-columns:1fr 1fr}
    .iem-result-answer{grid-template-columns:1fr;gap:5px}
    .iem-result-question{padding:17px}
    .iem-result-question-head{align-items:flex-start;flex-direction:column}
}


/* Dettaglio risultati: tutte le alternative */
.iem-result-options{display:grid;gap:10px;margin-top:15px}
.iem-result-option{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:13px;align-items:center;min-height:56px;padding:11px 14px;border:1px solid var(--iem-border);background:#fff}
.iem-result-option-letter{display:flex;width:30px;height:30px;align-items:center;justify-content:center;border:1px solid var(--iem-border);font-weight:700;color:var(--iem-black);background:#fff}
.iem-result-option p{margin:0;font-size:16px;line-height:1.42;color:var(--iem-black)}
.iem-result-option-badges{display:flex;justify-content:flex-end;min-width:138px}
.iem-result-option-badges strong{display:inline-flex;padding:5px 9px;border:1px solid currentColor;border-radius:999px;font-size:12px;line-height:1.2;white-space:nowrap}
.iem-result-option.is-correct-option{border-color:#4f8b62;background:#f3faf5}
.iem-result-option.is-correct-option .iem-result-option-letter{border-color:#4f8b62;background:#e4f3e8;color:#245f38}
.iem-result-option.is-correct-option .iem-result-option-badges{color:var(--iem-success)}
.iem-result-option.is-wrong-option{border-color:#c94b4b;background:#fff5f5}
.iem-result-option.is-wrong-option .iem-result-option-letter{border-color:#c94b4b;background:#fde7e7;color:#8a1f1f}
.iem-result-option.is-wrong-option .iem-result-option-badges{color:var(--iem-danger)}
@media(max-width:760px){.iem-result-option{grid-template-columns:34px minmax(0,1fr);align-items:start}.iem-result-option-badges{grid-column:2;justify-content:flex-start;min-width:0}.iem-result-option-badges strong{white-space:normal}}

.iem-result-download{display:flex;justify-content:center;margin:20px 0 0}.iem-result-download .iem-button{text-decoration:none}


/* Sessioni multiple */
.iem-sessions-panel{max-width:980px}
.iem-session-list{display:grid;gap:18px;margin-top:28px}
.iem-session-card{border:1px solid var(--iem-border);padding:24px;background:#fff}
.iem-session-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.iem-session-card h2{margin:5px 0 0;font-size:24px;line-height:1.25}
.iem-session-label{font-size:12px;text-transform:uppercase;letter-spacing:.12em;color:var(--iem-muted);font-weight:700}
.iem-session-status{display:inline-flex;align-items:center;min-height:30px;padding:5px 11px;border:1px solid var(--iem-border);border-radius:999px;font-size:13px;white-space:nowrap}
.iem-session-status.is-available{border-color:var(--iem-gold);background:#fffaf0;color:#5e4614}
.iem-session-status.is-completed{border-color:#8a8a8a;color:#555}
.iem-session-status.is-future{border-color:#9aa8b5;color:#465461}
.iem-session-status.is-expired{border-color:#bd7777;color:#7b2727}
.iem-session-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin:18px 0;color:var(--iem-muted);font-size:15px}
.iem-session-meta strong{color:var(--iem-black)}
.iem-session-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:16px;border-top:1px solid var(--iem-border)}
.iem-session-note{font-size:14px;color:var(--iem-muted)}
.iem-back-link{color:var(--iem-black);text-decoration:none;font-weight:700}
.iem-back-link:hover{color:var(--iem-gold-dark)}
@media(max-width:760px){.iem-session-card{padding:18px}.iem-session-card-head{flex-direction:column}.iem-session-actions .iem-button{width:100%}}


/* Verifica pubblica delle certificazioni */
.iem-certificate-shell{max-width:980px}
.iem-certificate-panel{max-width:820px}
.iem-certificate-form{margin-top:24px}
.iem-certificate-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.iem-certificate-form .iem-button{margin-top:24px}
.iem-certificate-message{margin-top:28px}
.iem-certificate-result{display:grid;grid-template-columns:72px minmax(0,1fr);gap:18px;margin-top:32px;padding:28px;border:1px solid var(--iem-border);background:#fff;text-align:left}
.iem-certificate-result.is-valid{border-left:4px solid var(--iem-success);background:#f7fbf8}
.iem-certificate-result.is-not-valid{border-left:4px solid var(--iem-danger);background:#fff8f8}
.iem-certificate-result-mark{display:flex;width:58px;height:58px;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:50%;font-size:30px;font-weight:700}
.iem-certificate-result.is-valid .iem-certificate-result-mark{color:var(--iem-success)}
.iem-certificate-result.is-not-valid .iem-certificate-result-mark{color:var(--iem-danger)}
.iem-certificate-result-heading span{display:block;color:var(--iem-muted);font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.iem-certificate-result-heading h2{margin:5px 0 22px;font-size:27px;line-height:1.25}
.iem-certificate-result-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;border:1px solid var(--iem-border);background:var(--iem-border)}
.iem-certificate-result-grid>div{padding:17px 18px;background:#fff}
.iem-certificate-result-grid span{display:block;margin-bottom:6px;color:var(--iem-muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:700}
.iem-certificate-result-grid strong{font-size:17px;line-height:1.4}
.iem-certificate-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;overflow-wrap:anywhere}
@media(max-width:650px){.iem-certificate-form-grid,.iem-certificate-result-grid{grid-template-columns:1fr}.iem-certificate-result{grid-template-columns:1fr;padding:22px}.iem-certificate-result-mark{width:50px;height:50px}.iem-certificate-result-heading h2{font-size:23px}}
