:root {
  --ev-bg:#f5f3ff; --ev-ink:#241b3f; --ev-muted:#6f6685; --ev-primary:#673de6;
  --ev-primary-dark:#4d27be; --ev-accent:#ffb703; --ev-green:#169b72; --ev-red:#d64550;
  --ev-card:#fff; --ev-line:#e7e1f4; --ev-shadow:0 18px 45px rgba(53,35,105,.10);
}
*,*::before,*::after{box-sizing:border-box}
body.evalua-body{margin:0;min-height:100vh;font-family:Inter,system-ui,sans-serif;background:
radial-gradient(circle at 10% 5%,rgba(255,183,3,.16),transparent 27rem),
radial-gradient(circle at 90% 0,rgba(103,61,230,.15),transparent 30rem),var(--ev-bg);color:var(--ev-ink)}
.evalua-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:26px 0 64px}
.evalua-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px}
.evalua-brand{display:flex;align-items:center;gap:11px;color:var(--ev-ink);text-decoration:none;font-weight:900;font-size:1.05rem}
.evalua-brand-mark{width:38px;height:38px;border-radius:13px;background:linear-gradient(135deg,var(--ev-primary),#9b5de5);display:grid;place-items:center;color:#fff;box-shadow:0 10px 22px rgba(103,61,230,.25)}
.evalua-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.evalua-link{color:var(--ev-muted);font-weight:700;text-decoration:none;font-size:.9rem}
.evalua-link:hover{color:var(--ev-primary)}
.evalua-hero{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;margin-bottom:24px}
.evalua-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--ev-primary);font-size:.76rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.evalua-hero h1{font-size:clamp(2rem,5vw,3.8rem);line-height:1.02;margin:9px 0 10px;letter-spacing:-.045em}
.evalua-hero p{margin:0;color:var(--ev-muted);font-size:1.02rem;line-height:1.65;max-width:720px}
.evalua-button{border:0;border-radius:13px;padding:12px 18px;font:800 .92rem Inter,sans-serif;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.18s ease;background:var(--ev-primary);color:#fff;box-shadow:0 10px 24px rgba(103,61,230,.2)}
.evalua-button:hover{transform:translateY(-1px);background:var(--ev-primary-dark)}
.evalua-button.secondary{background:#fff;color:var(--ev-primary);border:1px solid var(--ev-line);box-shadow:none}
.evalua-button.danger{background:#fff;color:var(--ev-red);border:1px solid #f4cbd0;box-shadow:none}
.evalua-button.small{padding:9px 12px;border-radius:10px;font-size:.8rem}
.evalua-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
.evalua-card{background:var(--ev-card);border:1px solid rgba(99,72,164,.11);border-radius:20px;padding:22px;box-shadow:var(--ev-shadow)}
.evalua-card h2,.evalua-card h3{margin-top:0}.evalua-card p{color:var(--ev-muted);line-height:1.55}
.evalua-stat{grid-column:span 3}.evalua-stat strong{display:block;font-size:2rem;letter-spacing:-.04em}.evalua-stat span{color:var(--ev-muted);font-size:.82rem;font-weight:700}
.evalua-list{display:grid;gap:14px}
.evalua-evaluation{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center}
.evalua-evaluation h3{margin:0 0 7px;font-size:1.08rem}.evalua-meta{display:flex;gap:8px;flex-wrap:wrap;color:var(--ev-muted);font-size:.78rem;font-weight:700}
.evalua-pill{display:inline-flex;padding:5px 9px;border-radius:999px;background:#f1edff;color:var(--ev-primary);font-size:.72rem;font-weight:900}.evalua-pill.green{background:#e8f7f1;color:#087b58}.evalua-pill.gray{background:#f1eff4;color:#6c637d}.evalua-pill.orange{background:#fff4d4;color:#855d00}
.evalua-code{font:900 1.05rem ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.1em;background:#261a44;color:#fff;border-radius:10px;padding:7px 10px;display:inline-flex}
.evalua-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.evalua-empty{text-align:center;padding:46px 22px}.evalua-empty .icon{font-size:3rem}.evalua-empty h2{margin:12px 0 7px}.evalua-empty p{max-width:530px;margin:0 auto 20px}
.evalua-form{display:grid;gap:18px}.evalua-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.evalua-field{display:grid;gap:7px}.evalua-field.full{grid-column:1/-1}.evalua-field label{font-size:.78rem;font-weight:900;color:#4d4363}.evalua-field small{color:var(--ev-muted);line-height:1.4}
.evalua-field input,.evalua-field select,.evalua-field textarea{width:100%;border:1.5px solid var(--ev-line);border-radius:12px;background:#fff;color:var(--ev-ink);padding:12px 13px;font:500 .92rem Inter,sans-serif;outline:none}.evalua-field textarea{min-height:92px;resize:vertical}.evalua-field input:focus,.evalua-field select:focus,.evalua-field textarea:focus{border-color:#9b7ef0;box-shadow:0 0 0 4px rgba(103,61,230,.1)}
.evalua-check{display:flex;gap:10px;align-items:flex-start}.evalua-check input{margin-top:3px}.evalua-check span{font-size:.88rem;color:var(--ev-muted);line-height:1.45}
.evalua-section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0 0}.evalua-section-title h2{margin:0;font-size:1.25rem}
.question-card{position:relative;border:1px solid var(--ev-line);border-radius:18px;padding:18px;background:#fcfbff;display:grid;gap:14px}.question-card::before{content:attr(data-number);position:absolute;left:-10px;top:18px;width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:var(--ev-primary);color:#fff;font-size:.75rem;font-weight:900}.question-top{display:grid;grid-template-columns:1fr 190px 95px;gap:12px}.question-options{display:grid;gap:8px}.option-row{display:grid;grid-template-columns:1fr 42px;gap:8px}.option-row button,.remove-question{border:0;background:#f9e8eb;color:var(--ev-red);border-radius:9px;cursor:pointer;font-weight:900}.remove-question{position:absolute;right:12px;top:12px;width:32px;height:32px}
.evalua-notice{border-radius:14px;padding:13px 15px;font-size:.86rem;line-height:1.5;background:#fff7da;color:#6d5100;border:1px solid #f3dc8b}.evalua-notice.error{background:#fff0f1;color:#8e2530;border-color:#f0c1c7}.evalua-notice.success{background:#eaf8f3;color:#087351;border-color:#bce7d7}
.evalua-student{width:min(820px,calc(100% - 28px));margin:0 auto;padding:24px 0 60px}.student-card{background:#fff;border-radius:24px;padding:clamp(22px,5vw,42px);box-shadow:var(--ev-shadow);border:1px solid var(--ev-line)}
.student-title{text-align:center;margin-bottom:28px}.student-title .subject{color:var(--ev-primary);font-weight:900;font-size:.78rem;text-transform:uppercase;letter-spacing:.09em}.student-title h1{margin:9px 0 8px;font-size:clamp(1.7rem,5vw,2.6rem)}.student-title p{color:var(--ev-muted);line-height:1.55}
.student-progress{height:9px;border-radius:999px;background:#eee9f7;overflow:hidden;margin-bottom:26px}.student-progress span{height:100%;display:block;background:linear-gradient(90deg,var(--ev-primary),#b26bdb);border-radius:inherit}
.student-question{border-top:1px solid var(--ev-line);padding:25px 0}.student-question:first-of-type{border-top:0}.student-question h2{font-size:1.06rem;line-height:1.5;margin:0 0 15px}.student-question .points{color:var(--ev-muted);font-size:.72rem;font-weight:800}.answer-option{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--ev-line);border-radius:13px;padding:12px 13px;margin:8px 0;cursor:pointer}.answer-option:hover{border-color:#b6a3ec;background:#faf8ff}.answer-option input{margin-top:3px}.answer-option span{line-height:1.4}
.result-score{text-align:center;padding:18px}.result-score strong{display:block;font-size:clamp(3rem,10vw,5.5rem);line-height:1;color:var(--ev-primary)}.result-score span{color:var(--ev-muted);font-weight:700}.result-detail{border:1px solid var(--ev-line);border-radius:15px;padding:16px;margin-top:12px}.result-detail.correct{border-color:#b8e2d3;background:#f2fbf7}.result-detail.wrong{border-color:#efc3c8;background:#fff7f7}.result-detail h3{font-size:.95rem;margin:0 0 8px}.result-detail p{margin:5px 0;font-size:.86rem}
.friendly-ranking{display:grid;gap:8px;margin-top:16px}.ranking-row{display:grid;grid-template-columns:38px 1fr auto;gap:10px;align-items:center;padding:10px 12px;border-radius:12px;background:#f8f6fd}.ranking-row.me{background:#eee8ff;border:1px solid #c9b8f8}.ranking-pos{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--ev-primary);font-weight:900}.ranking-score{font-weight:900;color:var(--ev-primary)}
.evalua-table-wrap{overflow-x:auto}.evalua-table{width:100%;border-collapse:collapse}.evalua-table th,.evalua-table td{text-align:left;border-bottom:1px solid var(--ev-line);padding:12px 10px;font-size:.82rem}.evalua-table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ev-muted)}
.accuracy{display:grid;grid-template-columns:minmax(180px,1fr) 2fr 60px;gap:12px;align-items:center;margin:11px 0}.accuracy-name{font-size:.82rem;font-weight:700}.accuracy-bar{height:9px;background:#eee9f7;border-radius:999px;overflow:hidden}.accuracy-bar span{display:block;height:100%;background:var(--ev-green);border-radius:inherit}.accuracy-value{text-align:right;font-size:.78rem;font-weight:900}
@media(max-width:820px){.evalua-hero{grid-template-columns:1fr}.evalua-stat{grid-column:span 6}.evalua-evaluation{grid-template-columns:1fr}.evalua-actions{justify-content:flex-start}.question-top{grid-template-columns:1fr}.evalua-form-grid{grid-template-columns:1fr}.evalua-field.full{grid-column:auto}}
@media(max-width:520px){.evalua-shell{width:min(100% - 20px,1180px);padding-top:16px}.evalua-topbar{align-items:flex-start}.evalua-nav{justify-content:flex-end}.evalua-stat{grid-column:span 12}.evalua-card{padding:17px}.accuracy{grid-template-columns:1fr 48px}.accuracy-bar{grid-column:1/-1;grid-row:2}.question-card{padding:16px 12px}.question-card::before{left:-5px}.evalua-button{width:100%}}
