:root{--ml-ink:#17132c;--ml-muted:#6b657a;--ml-bg:#f5f2fb;--ml-card:#fff;--ml-p:#5639cc;--ml-pd:#2f1d78;--ml-ps:#f0ebff;--ml-gold:#ffb938;--ml-green:#087a64;--ml-green-soft:#e7f8f3;--ml-warn:#8a5200;--ml-warn-soft:#fff4da;--ml-red:#9a3e4d;--ml-red-soft:#fff0f3;--ml-line:#e2dced;--ml-shadow:0 24px 68px rgba(50,34,110,.16)}
*{box-sizing:border-box}.cegia-ml-host,.cegia-ml-host *{box-sizing:border-box}
.cegia-ml-host{position:fixed!important;z-index:2147482500!important;inset:var(--ml-admin-top,0px) 0 0!important;width:100vw!important;height:auto!important;margin:0!important;padding:0!important;background:var(--ml-bg)!important;color:var(--ml-ink)!important;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;overflow:hidden!important}
html:has(.cegia-ml-host),body:has(.cegia-ml-host){overflow:hidden!important;overscroll-behavior:none!important}
.cegia-ml-app{height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr);background:radial-gradient(circle at 0 0,rgba(86,57,204,.13),transparent 28rem),radial-gradient(circle at 100% 100%,rgba(255,185,56,.12),transparent 28rem),var(--ml-bg)}
.cegia-ml-top{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px max(16px,calc((100vw - 1180px)/2));background:rgba(249,247,253,.92);border-bottom:1px solid rgba(226,220,237,.9);backdrop-filter:blur(14px)}
.cegia-ml-brand{display:flex;align-items:center;gap:11px;min-width:0}.cegia-ml-mark{display:grid;width:44px;height:44px;place-items:center;border-radius:14px;background:linear-gradient(145deg,var(--ml-p),#8064e9);color:#fff;font-weight:950;letter-spacing:-.05em;box-shadow:0 10px 24px rgba(86,57,204,.25)}.cegia-ml-brand b{display:block;font-size:16px;letter-spacing:.08em}.cegia-ml-brand small{display:block;margin-top:2px;color:var(--ml-muted);font-size:11px;font-weight:700}.cegia-ml-labtag{display:inline-flex;margin-left:6px;padding:5px 8px;border-radius:999px;background:#fff4d9;color:#754800;font-size:9px;font-weight:950;letter-spacing:.08em;vertical-align:middle}
.cegia-ml-actions{display:flex;align-items:center;gap:8px}.cegia-ml-btn{min-height:42px;padding:0 14px;border:1px solid var(--ml-line);border-radius:14px;background:#fff;color:var(--ml-pd);font-weight:850;font-size:13px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px}.cegia-ml-btn.primary{border-color:var(--ml-p);background:linear-gradient(145deg,var(--ml-p),var(--ml-pd));color:#fff;box-shadow:0 9px 20px rgba(70,44,160,.18)}.cegia-ml-btn[disabled]{opacity:.5;cursor:default}.cegia-ml-btn:hover:not([disabled]){transform:translateY(-1px)}
.cegia-ml-progress{padding:9px max(16px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.7);border-bottom:1px solid rgba(226,220,237,.86)}.cegia-ml-progressline{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px;color:var(--ml-muted);font-size:12px;font-weight:800}.cegia-ml-track{height:8px;border-radius:99px;background:#e9e4f2;overflow:hidden}.cegia-ml-fill{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--ml-p),#8c70e9 72%,var(--ml-gold));transition:width .35s ease}
.cegia-ml-stage{min-height:0;padding:12px max(14px,calc((100vw - 1180px)/2)) 14px}.cegia-ml-card{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid var(--ml-line);border-radius:28px;background:var(--ml-card);box-shadow:var(--ml-shadow);overflow:hidden}.cegia-ml-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 22px;border-bottom:1px solid #eeeaf5}.cegia-ml-phase{font-size:12px;font-weight:950;letter-spacing:.1em;text-transform:uppercase;color:var(--ml-pd)}.cegia-ml-count{font-size:12px;font-weight:850;color:var(--ml-muted)}
.cegia-ml-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y pinch-zoom;-webkit-overflow-scrolling:touch;padding:clamp(22px,4vw,44px) clamp(20px,6vw,72px) 30px;scrollbar-width:thin;scrollbar-color:#c9bee7 transparent}.cegia-ml-screen{width:min(100%,820px);margin:0 auto;animation:ml-in .22s ease both}.cegia-ml-kicker{margin:0 0 8px;color:var(--ml-green);font-size:12px;font-weight:950;letter-spacing:.06em;text-transform:uppercase}.cegia-ml-screen h1,.cegia-ml-screen h2{margin:0;letter-spacing:-.035em}.cegia-ml-screen h1{font-size:clamp(38px,5.7vw,64px);line-height:1.00}.cegia-ml-screen h2{font-size:clamp(28px,4vw,42px);line-height:1.08}.cegia-ml-lead{max-width:720px;margin:14px 0 0;color:var(--ml-muted);font-size:clamp(17px,2.2vw,20px);line-height:1.55}.cegia-ml-instruction{margin:0 0 9px;color:var(--ml-p);font-size:14px;font-weight:900}.cegia-ml-prompt{margin:0 0 18px;font-size:clamp(26px,3.4vw,38px);font-weight:900;line-height:1.17;letter-spacing:-.025em}.cegia-ml-context{margin:-6px 0 17px;padding:11px 14px;border-radius:14px;background:#f7f4ff;color:#5d5671;font-size:14px;line-height:1.45}
.cegia-ml-quote{position:relative;margin-top:26px;padding:24px 26px 23px 70px;border:1px solid #d6cbf1;border-radius:24px;background:linear-gradient(125deg,#342078,#5d40ce 60%,#815fdc);color:#fff;box-shadow:0 18px 42px rgba(55,34,127,.18)}.cegia-ml-quote:before{content:'“';position:absolute;left:23px;top:18px;font-family:Georgia,serif;font-size:58px;line-height:1;color:#ffd477}.cegia-ml-quote strong{display:block;font-family:Georgia,serif;font-size:clamp(20px,2.7vw,28px);line-height:1.3}.cegia-ml-quote em{display:block;margin-top:8px;color:rgba(255,255,255,.76);font-size:14px;line-height:1.45}
.cegia-ml-scene{display:grid;gap:10px;margin-top:20px}.cegia-ml-msg{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:start}.cegia-ml-avatar{display:grid;width:42px;height:42px;place-items:center;border-radius:13px;background:linear-gradient(145deg,var(--ml-p),#846be6);color:#fff;font-weight:950}.cegia-ml-msg:nth-child(2) .cegia-ml-avatar{background:linear-gradient(145deg,#0d776e,#2ba48f)}.cegia-ml-msg:nth-child(3) .cegia-ml-avatar{background:linear-gradient(145deg,#d07819,#f2aa48)}.cegia-ml-bubble{padding:12px 15px;border:1px solid var(--ml-line);border-radius:15px 15px 15px 5px;background:#fbfaff;font-size:17px;line-height:1.45}.cegia-ml-bubble b{display:block;margin-bottom:2px;color:var(--ml-muted);font-size:12px}
.cegia-ml-rule{margin-top:23px;display:grid;gap:11px}.cegia-ml-rule-row{display:grid;grid-template-columns:minmax(120px,.8fr) 42px minmax(180px,1.2fr);align-items:center;gap:12px;padding:15px 17px;border:1px solid var(--ml-line);border-radius:17px;background:linear-gradient(145deg,#fff,#f7f4ff)}.cegia-ml-rule-row .subj{color:var(--ml-muted);font-size:17px;font-weight:850}.cegia-ml-rule-row .arr{text-align:center;color:#a79eb7}.cegia-ml-rule-row .form{color:var(--ml-pd);font-size:24px;font-weight:950}.cegia-ml-rule-note{margin-top:12px;padding:12px 14px;border-left:4px solid var(--ml-gold);border-radius:10px;background:#fff8e6;color:#674a11;font-size:14px;line-height:1.5}
.cegia-ml-options{display:grid;gap:10px;margin-top:17px}.cegia-ml-option{position:relative;min-height:58px;padding:13px 52px 13px 17px;border:2px solid var(--ml-line);border-radius:16px;background:#fff;color:var(--ml-ink);text-align:left;font-size:17px;font-weight:800;transition:.16s}.cegia-ml-option:hover{border-color:#b5a5e5;transform:translateY(-1px)}.cegia-ml-option:after{content:attr(data-key);position:absolute;right:14px;top:50%;transform:translateY(-50%);display:grid;width:27px;height:27px;place-items:center;border:1px solid var(--ml-line);border-radius:8px;background:#faf9fd;color:var(--ml-muted);font-size:11px}.cegia-ml-option.correct{border-color:#65bda8;background:var(--ml-green-soft);color:#075e4d}.cegia-ml-option.wrong{border-color:#dba2ad;background:var(--ml-red-soft);color:#792f3b}.cegia-ml-option[disabled]{opacity:1}
.cegia-ml-feedback{display:none;margin-top:14px;padding:13px 15px;border-radius:14px;font-size:14px;line-height:1.5}.cegia-ml-feedback.show{display:block}.cegia-ml-feedback.ok{background:var(--ml-green-soft);color:#075e4d;border:1px solid #adddce}.cegia-ml-feedback.hint{background:var(--ml-warn-soft);color:#724500;border:1px solid #ead294}.cegia-ml-feedback.reveal{background:var(--ml-red-soft);color:#792f3b;border:1px solid #e2afb8}.cegia-ml-feedback b{display:block;margin-bottom:2px}.cegia-ml-dots{display:flex;gap:6px;margin-top:9px}.cegia-ml-dot{width:8px;height:8px;border-radius:50%;background:#ded9e8}.cegia-ml-dot.on{background:var(--ml-gold)}
.cegia-ml-reorder-zone{display:flex;min-height:68px;flex-wrap:wrap;gap:8px;align-items:center;padding:12px;border:2px dashed #c9bee7;border-radius:16px;background:#fbfaff}.cegia-ml-bank{display:flex;flex-wrap:wrap;gap:9px;margin-top:12px}.cegia-ml-token{min-height:44px;padding:9px 14px;border:1px solid #c7b9e9;border-radius:12px;background:var(--ml-ps);color:var(--ml-pd);font-weight:850}.cegia-ml-token.used{background:var(--ml-p);color:#fff;border-color:var(--ml-p)}
.cegia-ml-match{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:17px}.cegia-ml-matchcol{display:grid;gap:8px}.cegia-ml-matchitem{min-height:52px;padding:11px 13px;border:2px solid var(--ml-line);border-radius:14px;background:#fff;text-align:left;font-weight:800;color:var(--ml-ink)}.cegia-ml-matchitem.selected{border-color:var(--ml-p);background:var(--ml-ps)}.cegia-ml-matchitem.done{border-color:#69bfa9;background:var(--ml-green-soft);color:#075e4d}.cegia-ml-matchscore{margin-top:12px;color:var(--ml-muted);font-size:13px;font-weight:850}
.cegia-ml-recall{padding:22px;border:1px solid #d9d0ef;border-radius:20px;background:linear-gradient(145deg,#fff,#f6f2ff)}.cegia-ml-recall .think{display:grid;width:58px;height:58px;place-items:center;border-radius:17px;background:var(--ml-ps);font-size:28px}.cegia-ml-recall h2{margin-top:14px}.cegia-ml-recall p{color:var(--ml-muted);font-size:16px;line-height:1.5}.cegia-ml-recall .cegia-ml-btn{margin-top:8px}
.cegia-ml-audio{margin-top:18px;padding:18px;border:1px solid var(--ml-line);border-radius:18px;background:#faf8ff}.cegia-ml-audio button{min-width:150px}.cegia-ml-audio small{display:block;margin-top:10px;color:var(--ml-muted);line-height:1.4}
.cegia-ml-summary{display:grid;gap:11px;margin-top:19px}.cegia-ml-summary-row{display:grid;grid-template-columns:140px 1fr;gap:14px;align-items:center;padding:14px 16px;border:1px solid var(--ml-line);border-radius:16px;background:#fcfbff}.cegia-ml-summary-row b{color:var(--ml-pd);font-size:20px}.cegia-ml-summary-row span{color:var(--ml-muted);font-size:15px}
.cegia-ml-result{text-align:center;padding:22px 12px}.cegia-ml-badge{display:grid;width:80px;height:80px;margin:0 auto 15px;place-items:center;border-radius:50%;background:linear-gradient(145deg,var(--ml-gold),#e58a1d);color:#fff;font-size:36px;box-shadow:0 14px 28px rgba(216,135,28,.22)}.cegia-ml-result h1{font-size:clamp(36px,5vw,54px)}.cegia-ml-stats{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:21px}.cegia-ml-stat{min-width:150px;padding:13px 15px;border:1px solid var(--ml-line);border-radius:15px;background:#fff}.cegia-ml-stat strong{display:block;color:var(--ml-pd);font-size:22px}.cegia-ml-stat span{display:block;margin-top:3px;color:var(--ml-muted);font-size:12px}
.cegia-ml-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:72px;padding:10px 18px;border-top:1px solid #eeeaf5;background:rgba(255,255,255,.97)}.cegia-ml-footnote{color:var(--ml-muted);font-size:11px}.cegia-ml-footactions{display:flex;gap:9px;margin-left:auto}
@keyframes ml-in{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
@media(max-width:720px){.cegia-ml-top{padding:10px 12px}.cegia-ml-brand small{display:none}.cegia-ml-labtag{display:none}.cegia-ml-actions .compare-label{display:none}.cegia-ml-actions .cegia-ml-btn{padding:0 11px}.cegia-ml-progress{padding:8px 12px}.cegia-ml-stage{padding:8px}.cegia-ml-card{border-radius:22px}.cegia-ml-head{padding:9px 14px}.cegia-ml-body{padding:22px 18px 20px}.cegia-ml-screen h1{font-size:38px}.cegia-ml-screen h2{font-size:29px}.cegia-ml-prompt{font-size:27px}.cegia-ml-rule-row{grid-template-columns:1fr 32px 1.2fr;padding:12px}.cegia-ml-rule-row .form{font-size:21px}.cegia-ml-match{grid-template-columns:1fr}.cegia-ml-summary-row{grid-template-columns:1fr;gap:4px}.cegia-ml-footer{padding:8px 12px;min-height:66px}.cegia-ml-footnote{display:none}.cegia-ml-footactions{width:100%}.cegia-ml-footactions .cegia-ml-btn.primary{flex:1}.cegia-ml-quote{padding:20px 18px 19px 58px}.cegia-ml-quote:before{left:18px;top:16px}}
@media(max-height:680px) and (min-width:721px){.cegia-ml-top{padding-top:7px;padding-bottom:7px}.cegia-ml-progress{padding-top:6px;padding-bottom:6px}.cegia-ml-stage{padding-top:7px;padding-bottom:7px}.cegia-ml-body{padding-top:21px;padding-bottom:18px}.cegia-ml-footer{min-height:62px}}


/* v0.2.0 — Desktop Compact Stage
   Mobile stays on the comfortable v0.1 layout. On desktop, one activity = one physical screen. */
.cegia-ml-desktop-progress{display:none;color:var(--ml-muted);font-size:12px;font-weight:900;white-space:nowrap}
@media (min-width:900px){
  .cegia-ml-app{grid-template-rows:auto 4px minmax(0,1fr)}
  .cegia-ml-top{min-height:58px;padding:7px max(16px,calc((100vw - 1180px)/2))}
  .cegia-ml-mark{width:38px;height:38px;border-radius:12px;font-size:14px}
  .cegia-ml-brand{gap:9px}
  .cegia-ml-brand b{font-size:14px}
  .cegia-ml-brand small{margin-top:1px;font-size:10px;line-height:1.2}
  .cegia-ml-labtag{padding:4px 7px;font-size:8px}
  .cegia-ml-actions{gap:7px}
  .cegia-ml-desktop-progress{display:inline-flex}
  .cegia-ml-btn{min-height:38px;padding:0 12px;border-radius:12px;font-size:12px}
  .cegia-ml-progress{height:4px;padding:0;background:#e9e4f2;border-bottom:0}
  .cegia-ml-progressline{display:none}
  .cegia-ml-track{height:4px;border-radius:0}
  .cegia-ml-stage{padding:8px max(14px,calc((100vw - 1180px)/2))}
  .cegia-ml-card{grid-template-rows:minmax(0,1fr) auto;border-radius:22px}
  .cegia-ml-body{overflow:hidden!important;display:flex;align-items:center;padding:14px clamp(28px,4vw,54px) 12px;touch-action:none}
  .cegia-ml-screen{width:min(100%,900px);max-height:100%;margin:auto}
  .cegia-ml-screen h1{font-size:clamp(38px,4.2vw,52px);line-height:1.02}
  .cegia-ml-screen h2{font-size:clamp(27px,3vw,35px)}
  .cegia-ml-lead{margin-top:9px;font-size:17px;line-height:1.4}
  .cegia-ml-kicker{margin-bottom:5px;font-size:10px}
  .cegia-ml-prompt{margin-bottom:12px;font-size:clamp(26px,2.8vw,34px);line-height:1.12}
  .cegia-ml-context{margin:-3px 0 10px;padding:9px 12px}
  .cegia-ml-options{gap:8px;margin-top:10px}
  .cegia-ml-option{min-height:50px;padding:10px 48px 10px 15px;border-radius:14px;font-size:16px}
  .cegia-ml-option:after{width:24px;height:24px;right:12px}
  .cegia-ml-feedback{margin-top:9px;padding:9px 12px;font-size:13px;line-height:1.35}
  .cegia-ml-dots{margin-top:6px}
  .cegia-ml-quote{margin-top:15px;padding:17px 20px 17px 58px;border-radius:19px}
  .cegia-ml-quote:before{left:18px;top:11px;font-size:49px}
  .cegia-ml-quote strong{font-size:clamp(19px,2.2vw,24px)}
  .cegia-ml-quote em{margin-top:5px;font-size:12px}
  .cegia-ml-scene{gap:7px;margin-top:12px}
  .cegia-ml-msg{grid-template-columns:36px minmax(0,1fr);gap:8px}
  .cegia-ml-avatar{width:36px;height:36px;border-radius:11px;font-size:13px}
  .cegia-ml-bubble{padding:9px 12px;border-radius:13px 13px 13px 5px;font-size:15px;line-height:1.35}
  .cegia-ml-rule{margin-top:13px;gap:7px}
  .cegia-ml-rule-row{grid-template-columns:minmax(110px,.8fr) 34px minmax(160px,1.2fr);gap:9px;padding:10px 14px;border-radius:14px}
  .cegia-ml-rule-row .subj{font-size:15px}.cegia-ml-rule-row .form{font-size:20px}
  .cegia-ml-rule-note{margin-top:8px;padding:9px 12px;font-size:12px;line-height:1.4}
  .cegia-ml-reorder-zone{min-height:54px;padding:9px;border-radius:14px}
  .cegia-ml-bank{gap:7px;margin-top:9px}
  .cegia-ml-token{min-height:38px;padding:7px 12px;border-radius:10px}
  .cegia-ml-match{gap:8px;margin-top:10px}
  .cegia-ml-matchcol{gap:6px}
  .cegia-ml-matchitem{min-height:44px;padding:8px 11px;border-radius:12px}
  .cegia-ml-matchscore{margin-top:8px}
  .cegia-ml-recall{padding:17px;border-radius:17px}
  .cegia-ml-recall .think{width:48px;height:48px;border-radius:14px;font-size:24px}
  .cegia-ml-recall h2{margin-top:9px}.cegia-ml-recall p{font-size:15px;line-height:1.4;margin:8px 0}
  .cegia-ml-audio{margin-top:10px;padding:12px;border-radius:15px}
  .cegia-ml-audio small{margin-top:6px;font-size:11px}
  .cegia-ml-summary{gap:7px;margin-top:12px}
  .cegia-ml-summary-row{grid-template-columns:130px 1fr;gap:10px;padding:10px 13px;border-radius:13px}
  .cegia-ml-summary-row b{font-size:18px}.cegia-ml-summary-row span{font-size:13px}
  .cegia-ml-result{padding:10px}
  .cegia-ml-badge{width:62px;height:62px;margin-bottom:10px;font-size:29px}
  .cegia-ml-result h1{font-size:40px}
  .cegia-ml-stats{margin-top:13px}.cegia-ml-stat{min-width:135px;padding:9px 12px}.cegia-ml-stat strong{font-size:19px}
  .cegia-ml-footer{min-height:54px;padding:7px 14px}
  .cegia-ml-footnote{display:none}
}
@media (min-width:900px) and (max-height:720px){
  .cegia-ml-top{min-height:52px;padding-top:5px;padding-bottom:5px}
  .cegia-ml-mark{width:34px;height:34px}
  .cegia-ml-stage{padding-top:6px;padding-bottom:6px}
  .cegia-ml-body{padding-top:10px;padding-bottom:8px}
  .cegia-ml-prompt{font-size:28px;margin-bottom:9px}
  .cegia-ml-options{gap:6px;margin-top:7px}
  .cegia-ml-option{min-height:46px;padding-top:8px;padding-bottom:8px}
  .cegia-ml-footer{min-height:48px;padding-top:5px;padding-bottom:5px}
  .cegia-ml-scene{gap:5px;margin-top:8px}
  .cegia-ml-bubble{padding-top:7px;padding-bottom:7px}
  .cegia-ml-rule{margin-top:9px;gap:5px}
  .cegia-ml-rule-row{padding-top:8px;padding-bottom:8px}
  .cegia-ml-rule-note{margin-top:6px;padding-top:7px;padding-bottom:7px}
  .cegia-ml-quote{margin-top:10px;padding-top:14px;padding-bottom:14px}
}
