.ace-shell{--ace-bg:#fff;--ace-ink:#172026;--ace-muted:#647078;--ace-line:#e4e8eb;--ace-soft:#f6f8f9;--ace-ok:#0d7a37;--ace-warn:#9b5d00;--ace-bad:#a12f2f;max-width:920px;margin:24px auto;padding:24px;border:1px solid var(--ace-line);border-radius:18px;background:var(--ace-bg);color:var(--ace-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box;box-shadow:0 10px 32px rgba(19,30,37,.05)}.ace-shell *{box-sizing:border-box}.ace-shell h2{font-size:clamp(1.55rem,3vw,2rem);line-height:1.15;margin:4px 0 8px}.ace-shell h3{font-size:1.08rem;line-height:1.25;margin:0 0 8px}.ace-shell p{line-height:1.55}.ace-muted{color:var(--ace-muted)}.ace-error{color:var(--ace-bad)}.ace-success{color:var(--ace-ok)}.ace-loading{padding:48px 16px;text-align:center;color:var(--ace-muted)}.ace-kicker{font-size:.72rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;color:var(--ace-muted)}.ace-top,.ace-portal-header,.ace-focus-head,.ace-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.ace-portal-subtitle{margin:0}.ace-grid{display:grid;gap:14px}.ace-enrollment-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px}.ace-enrollment-card{display:flex;flex-direction:column;gap:7px;text-align:left;padding:18px;border:1px solid var(--ace-line);border-radius:14px;background:#fff;color:var(--ace-ink);cursor:pointer;font:inherit}.ace-enrollment-card:hover{border-color:#9aa5ab;box-shadow:0 7px 20px rgba(17,29,36,.06)}.ace-enrollment-card strong{font-size:1.04rem}.ace-enrollment-card span:not(.ace-enrollment-status){color:var(--ace-muted);font-size:.9rem}.ace-enrollment-status{align-self:flex-start;font-size:.72rem;font-weight:750;padding:4px 8px;border-radius:999px;background:#eef2f3}.ace-enrollment-status.is-ready{background:#e9f7ee;color:var(--ace-ok)}.ace-enrollment-status.is-pending{background:#fff4df;color:var(--ace-warn)}.ace-button,.ace-button-secondary,.ace-text-button{appearance:none;border:0;border-radius:11px;font:inherit;font-weight:700;cursor:pointer;text-decoration:none}.ace-button{display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;background:var(--ace-ink);color:#fff;min-height:44px}.ace-button-secondary{background:#eef2f3;color:var(--ace-ink);border:1px solid var(--ace-line)}.ace-text-button{background:transparent;color:var(--ace-ink);padding:7px 4px}.ace-button[disabled],.ace-text-button[disabled]{opacity:.48;cursor:not-allowed}.ace-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.ace-form-grid{display:grid;gap:14px;max-width:620px}.ace-field label{display:block;font-weight:700;margin-bottom:6px}.ace-field select,.ace-field input{width:100%;min-height:46px;padding:11px 12px;border:1px solid #bfc7cc;border-radius:10px;background:#fff;color:var(--ace-ink);font:inherit}.ace-onboarding{max-width:680px;margin:12px auto}.ace-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:22px 0 24px;padding:5px;border:1px solid var(--ace-line);border-radius:13px;background:var(--ace-soft)}.ace-tabs button{border:0;border-radius:9px;background:transparent;padding:10px 8px;font:inherit;font-weight:700;color:var(--ace-muted);cursor:pointer}.ace-tabs button.is-active{background:#fff;color:var(--ace-ink);box-shadow:0 1px 5px rgba(18,30,37,.08)}.ace-portal-content{display:grid;gap:16px}.ace-home-hero,.ace-hero,.ace-study-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:22px;border-radius:16px;background:var(--ace-soft);border:1px solid var(--ace-line)}.ace-home-hero h3,.ace-hero h3,.ace-study-summary h3{font-size:1.35rem;margin:10px 0 6px}.ace-chip{display:inline-block;padding:5px 9px;border-radius:999px;background:#e9eef1;color:#344049;font-size:.75rem;font-weight:800}.ace-readiness-ring{width:130px;height:130px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:10px solid #e0e6e9;background:#fff;text-align:center}.ace-readiness-ring strong{font-size:1.7rem}.ace-readiness-ring span{font-size:.72rem;color:var(--ace-muted);max-width:80px}.ace-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ace-metric-card{display:flex;flex-direction:column;gap:4px;min-height:108px;padding:14px;border:1px solid var(--ace-line);border-radius:13px;background:#fff}.ace-metric-card span{font-size:.82rem;color:var(--ace-muted);font-weight:700}.ace-metric-card strong{font-size:1.55rem}.ace-metric-card small{font-size:.72rem;line-height:1.35;color:var(--ace-muted)}.ace-metric-card.ace-featured{background:var(--ace-ink);color:#fff}.ace-metric-card.ace-featured span,.ace-metric-card.ace-featured small{color:#d9e0e4}.ace-panel{padding:18px;border:1px solid var(--ace-line);border-radius:15px;background:#fff}.ace-section-head p{margin:2px 0;color:var(--ace-muted);font-size:.9rem}.ace-progress,.ace-mini-progress{height:8px;border-radius:999px;background:#e9edef;overflow:hidden}.ace-progress{margin:14px 0 2px}.ace-progress span,.ace-mini-progress span{display:block;height:100%;background:var(--ace-ink);transition:width .2s}.ace-priority-list,.ace-plan-list,.ace-skill-list{display:grid;gap:8px}.ace-priority-row,.ace-skill-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid var(--ace-line)}.ace-priority-row:first-child,.ace-skill-item:first-child{border-top:0}.ace-priority-row>div:first-child,.ace-skill-item>div:first-child{display:flex;flex-direction:column;gap:3px}.ace-priority-row span,.ace-skill-item span{font-size:.8rem;color:var(--ace-muted)}.ace-score-stack,.ace-skill-values{display:flex;flex-direction:column;text-align:right}.ace-score-stack small,.ace-skill-values small{font-size:.7rem;color:var(--ace-muted);white-space:nowrap}.ace-plan-row{display:grid;grid-template-columns:38px 1fr;gap:10px;align-items:center;padding:11px 0;border-top:1px solid var(--ace-line)}.ace-plan-row:first-child{border-top:0}.ace-plan-row>div{display:flex;flex-direction:column;gap:3px}.ace-plan-row span:not(.ace-plan-index){font-size:.8rem;color:var(--ace-muted)}.ace-plan-row.is-complete{opacity:.55}.ace-plan-index{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#eef2f3;font-weight:800;font-size:.82rem}.ace-discipline-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:13px 0;border-top:1px solid var(--ace-line)}.ace-discipline-row:first-of-type{border-top:0}.ace-discipline-row>div:first-child{display:flex;flex-direction:column;gap:3px}.ace-discipline-row span{font-size:.78rem;color:var(--ace-muted)}.ace-discipline-row .ace-mini-progress{grid-column:1/-1;height:6px}.ace-skill-group{border-top:1px solid var(--ace-line)}.ace-skill-group:first-of-type{border-top:0}.ace-skill-group summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 0;cursor:pointer;list-style:none}.ace-skill-group summary::-webkit-details-marker{display:none}.ace-skill-group summary span{display:flex;flex-direction:column;gap:2px}.ace-skill-group summary small{font-size:.76rem;color:var(--ace-muted);font-weight:400}.ace-skill-group summary>b{min-width:32px;height:28px;border-radius:999px;background:#eef2f3;display:grid;place-items:center;font-size:.78rem}.ace-skill-group[open] .ace-skill-list{padding-bottom:8px}.ace-inline-stats{display:flex;gap:18px;flex-wrap:wrap}.ace-inline-stats span{color:var(--ace-muted);font-size:.86rem}.ace-inline-stats b{color:var(--ace-ink);font-size:1rem}.ace-exam-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.ace-exam-facts div{display:flex;flex-direction:column;gap:3px}.ace-exam-facts span{font-size:.75rem;color:var(--ace-muted);font-weight:700}.ace-exam-facts strong{font-size:1.02rem}.ace-note{padding:13px 15px;border:1px solid #dfe5e8;background:#f7f9fa;border-radius:12px;line-height:1.5}.ace-question{margin:20px 0}.ace-statement{font-size:1.08rem;line-height:1.6;font-weight:650}.ace-options{display:grid;gap:10px}.ace-option{display:flex;gap:10px;padding:14px;border:1px solid #d5dce0;border-radius:12px;cursor:pointer;line-height:1.45}.ace-option:hover{border-color:#9da8ae}.ace-option:has(input:checked){border-color:var(--ace-ink);background:var(--ace-soft)}.ace-option input{width:auto;margin-top:4px}.ace-feedback{margin:16px 0;padding:15px;border-radius:12px}.ace-feedback.is-correct{background:#edf8f1;border:1px solid #a8d5b6}.ace-feedback.is-wrong{background:#fff1ef;border:1px solid #e3b4ae}.ace-lesson{font-size:1.07rem;line-height:1.72;padding:20px;border:1px solid var(--ace-line);border-radius:14px;background:var(--ace-soft)}.ace-lesson p{margin:0}.ace-focus-head{margin-bottom:12px}.ace-result-screen,.ace-empty{padding:24px 8px;text-align:center;max-width:760px;margin:0 auto}.ace-result-screen .ace-actions,.ace-empty .ace-actions{justify-content:center}.ace-result-screen .ace-metric-grid{text-align:left;margin:20px 0}.ace-empty p{color:var(--ace-muted)}
@media(max-width:760px){.ace-shell{margin:0;border-left:0;border-right:0;border-radius:0;min-height:100vh;padding:18px;box-shadow:none}.ace-enrollment-grid{grid-template-columns:1fr}.ace-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ace-home-hero,.ace-hero,.ace-study-summary{grid-template-columns:1fr}.ace-readiness-ring{width:110px;height:110px}.ace-tabs{position:sticky;top:0;z-index:3}.ace-exam-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.ace-button{width:100%}.ace-actions .ace-button{flex:1 1 180px}.ace-portal-header,.ace-focus-head{align-items:center}.ace-portal-header h2,.ace-focus-head h2{font-size:1.35rem}.ace-tabs button{font-size:.8rem;padding:9px 4px}.ace-section-head{align-items:center}.ace-inline-stats{display:grid;grid-template-columns:1fr 1fr}.ace-skill-item{align-items:flex-start}}
@media(max-width:430px){.ace-shell{padding:15px}.ace-metric-grid{grid-template-columns:1fr 1fr}.ace-metric-card{min-height:98px;padding:12px}.ace-metric-card strong{font-size:1.35rem}.ace-tabs{gap:3px;padding:4px}.ace-tabs button{font-size:.74rem}.ace-top,.ace-portal-header,.ace-focus-head{gap:10px}.ace-exam-facts{grid-template-columns:1fr 1fr}.ace-priority-row,.ace-skill-item{gap:8px}.ace-score-stack,.ace-skill-values{min-width:68px}.ace-home-hero,.ace-panel,.ace-study-summary{padding:15px}}

/* Alpha 8 — Tutor IA */
.ace-ai-panel{margin:16px 0;padding:16px 18px;border:1px solid #d7dce2;border-radius:14px;background:#fff;line-height:1.6}
.ace-ai-panel p{margin:8px 0 0}
.ace-ai-panel.is-loading{opacity:.78}
.ace-ai-panel.is-error{border-style:dashed}
.ace-ai-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.ace-ai-disclaimer{margin-top:12px;padding-top:10px;border-top:1px solid #e7e9ec;font-size:12px;opacity:.72}
