@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Raleway:wght@600;700;800;900&display=swap');
:root{--bg:#F7F5FC;--surface:#fff;--border:#E6E0F5;--t1:#1C1530;--t2:#5C5378;--tm:#9B92B8;--a1:#6B3FA8;--a2:#9B6FD4;--a3:#D4B8F5;--aL:#F0E8FF;--aW:#C45FC0;--aT:#7B6FD4;--ok:#5BBF8A}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'DM Sans',system-ui,sans-serif;background:var(--bg);color:var(--t1);min-height:100vh}
input,textarea,button{font-family:inherit}button{cursor:pointer}

/* WELCOME */
#welcome{position:fixed;inset:0;background:radial-gradient(circle at 78% 18%,rgba(196,168,245,.26),transparent 28%),radial-gradient(circle at 10% 82%,rgba(120,94,205,.20),transparent 32%),linear-gradient(135deg,#1A0B38 0%,#3B1E6B 48%,#6B3FA8 100%);display:flex;align-items:center;justify-content:center;z-index:9999;overflow:auto;transition:opacity .6s,transform .6s;padding:clamp(22px,3vw,36px) clamp(34px,5vw,76px)}
#welcome.exit{opacity:0;transform:translateY(-24px);pointer-events:none}
.wc{position:relative;z-index:1;width:min(1520px,100%);min-height:min(620px,calc(100vh - 56px));display:grid;grid-template-columns:minmax(640px,1.18fr) minmax(360px,.82fr);gap:clamp(56px,5vw,96px);align-items:center;justify-content:space-between}
.wleft{text-align:left;max-width:760px}
.wlogo{display:block;margin-bottom:18px;width:178px;max-width:34%;height:auto;object-fit:contain;opacity:1;filter:none}
.weyebrow{font-size:10px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.66);margin-bottom:14px}
.wh1{font-family:'Raleway',system-ui,sans-serif;font-weight:900;font-size:clamp(40px,3.55vw,58px);line-height:1.03;letter-spacing:-1.8px;color:#fff;margin-bottom:20px;max-width:760px}
.wh1 span{display:block;background:linear-gradient(90deg,#F2E8FF 0%,#D9C0FF 64%,#B997F1 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.wdesc{font-size:15.5px;color:rgba(255,255,255,.78);line-height:1.62;max-width:680px;margin-bottom:12px}
.wtrust{font-size:13.2px;color:rgba(255,255,255,.64);line-height:1.58;max-width:660px;margin-bottom:22px}
.btn-start{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:16px;background:#fff;color:var(--a1);font-family:'DM Sans',system-ui,sans-serif;font-size:14.5px;font-weight:800;border:none;box-shadow:0 16px 38px rgba(0,0,0,.22),0 0 0 1px rgba(255,255,255,.28);margin-bottom:14px;transition:all .3s}
.btn-start:hover{transform:translateY(-3px);background:#F8F3FF;box-shadow:0 22px 54px rgba(0,0,0,.28)}
.wmeta{display:flex;gap:14px;align-items:center;flex-wrap:wrap;color:rgba(255,255,255,.58)}
.wmeta span{font-size:11.8px;color:rgba(255,255,255,.58)}
.wright{position:relative;width:100%;max-width:455px;justify-self:end}
.wright:before{content:"";position:absolute;inset:-28px;background:radial-gradient(circle,rgba(255,255,255,.14),transparent 62%);filter:blur(10px);z-index:-1}
.wcard{background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.42);border-radius:28px;padding:23px;box-shadow:0 24px 64px rgba(20,9,45,.28);backdrop-filter:blur(16px);color:var(--t1)}
.wcard-kicker{display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(107,63,168,.16);background:#F7F1FF;border-radius:999px;padding:7px 11px;font-size:9.6px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--a1);margin-bottom:14px}
.wcard h2{font-family:'Raleway',system-ui,sans-serif;font-size:21.5px;line-height:1.18;letter-spacing:-.5px;margin-bottom:16px;color:#1A1430}
.wdeliver{display:grid;gap:7px;margin-bottom:16px}
.wdeliver-item{display:grid;grid-template-columns:30px 1fr;gap:10px;align-items:flex-start;padding:9px 10px;border-radius:16px;background:linear-gradient(180deg,#fff,#FBF8FF);border:1px solid rgba(107,63,168,.08)}
.wdeliver-ico{width:30px;height:30px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#F0E8FF;color:var(--a1);font-size:13px;flex-shrink:0}
.wdeliver-title{font-size:12.5px;font-weight:800;color:#2A2142;margin-bottom:2px}
.wdeliver-desc{font-size:11.4px;line-height:1.42;color:#766A93}
.wjourney{border-top:1px solid #ECE5F8;padding-top:16px;margin-top:2px}
.wjourney-title{font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#9B92B8;margin-bottom:10px}
.wsteps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:0}
.wstep{padding:10px 10px;text-align:left;border:1px solid #E9E1F7;border-radius:16px;background:#fff}
.wstep-n{width:25px;height:25px;border-radius:9px;background:linear-gradient(135deg,var(--a1),var(--a2));display:flex;align-items:center;justify-content:center;font-family:'DM Sans',system-ui,sans-serif;font-size:11px;font-weight:800;color:#fff;margin:0 0 8px}
.wstep-t{font-size:11.8px;font-weight:800;color:#31254B;margin-bottom:3px}
.wstep-d{font-size:10.5px;color:#8A7DA8;line-height:1.4}
.wdiv{display:none}
.worb{position:absolute;border-radius:999px;pointer-events:none;opacity:.62;filter:blur(.2px)}
.worb.one{width:110px;height:110px;right:-42px;top:-42px;background:rgba(255,255,255,.10)}
.worb.two{width:68px;height:68px;left:-22px;bottom:-26px;background:rgba(196,168,245,.18)}
@media(max-width:1180px){#welcome{padding:28px 22px}.wc{grid-template-columns:1fr;gap:28px;min-height:auto;max-width:900px}.wleft{text-align:center;margin:0 auto;max-width:760px}.wlogo{margin:0 auto 22px;width:160px;max-width:55%}.wh1{font-size:clamp(32px,7.2vw,50px);letter-spacing:-1.2px;margin-left:auto;margin-right:auto;max-width:760px}.wdesc,.wtrust{margin-left:auto;margin-right:auto}.wmeta{justify-content:center}.wright{max-width:620px;margin:0 auto;width:100%;justify-self:center}}
@media(max-width:640px){.wcard{padding:20px;border-radius:24px}.wsteps{grid-template-columns:1fr}.wmeta{gap:10px}.btn-start{width:100%;justify-content:center}.wh1{font-size:32px}.wdesc{font-size:14.5px}.wtrust{font-size:12.8px}}

/* HOME CTA/JOURNEY REBALANCE */
.wleft .wjourney{border-top:1px solid rgba(255,255,255,.14);padding-top:18px;margin-top:20px;max-width:690px}
.wleft .wjourney-title{color:rgba(255,255,255,.58)}
.wleft .wsteps{gap:10px}
.wleft .wstep{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px)}
.wleft .wstep-t{color:#fff}
.wleft .wstep-d{color:rgba(255,255,255,.64)}
.wcard-cta{border-top:1px solid #ECE5F8;margin-top:16px;padding-top:18px}
.wcard .btn-start{width:100%;justify-content:center;margin:0 0 12px;background:linear-gradient(135deg,var(--a1),var(--a2));color:#fff;box-shadow:0 14px 34px rgba(107,63,168,.28)}
.wcard .btn-start:hover{background:linear-gradient(135deg,#5E3598,var(--a2));box-shadow:0 18px 46px rgba(107,63,168,.34)}
.wcard .wmeta{justify-content:center;gap:10px;color:#8A7DA8}
.wcard .wmeta span{color:#8A7DA8;font-size:11.2px}
@media(max-width:1180px){.wleft .wjourney{margin-left:auto;margin-right:auto}.wleft .wsteps{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.wleft .wsteps{grid-template-columns:1fr}.wcard .wmeta{align-items:center}}

/* HEADER */
.header{display:flex;align-items:center;justify-content:space-between;padding:14px 28px;background:#fff;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:200;display:none}
.hlogo{display:flex;align-items:center}
.hlogo-img{display:block;width:138px;height:auto;object-fit:contain}
.pw{flex:1;max-width:400px;margin:0 32px}
.psteps{display:flex;align-items:center;margin-bottom:6px}
.ps{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--tm);white-space:nowrap;transition:color .3s}
.ps.active{color:var(--a1)}.ps.done{color:var(--ok)}
.ps-dot{width:18px;height:18px;border-radius:50%;border:2px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:9px;flex-shrink:0;transition:all .3s}
.ps.active .ps-dot{background:var(--a1);border-color:var(--a1);color:#fff}
.ps.done .ps-dot{background:var(--ok);border-color:var(--ok);color:#fff}
.pline{flex:1;height:1px;background:var(--border);margin:0 6px}
.pbar{height:3px;background:var(--border);border-radius:2px;overflow:hidden}
.pfill{height:100%;background:linear-gradient(90deg,var(--a1),var(--a2));border-radius:2px;transition:width .8s cubic-bezier(.16,1,.3,1);width:0%}

/* AURORA */
.fab{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,var(--a1),var(--a2));border:none;display:none;align-items:center;justify-content:center;box-shadow:0 8px 28px rgba(107,63,168,.38);z-index:300;transition:all .3s}
.fab:hover{transform:translateY(-3px)}
.fab-badge{position:absolute;top:-4px;right:-4px;width:16px;height:16px;background:#E85F5F;border-radius:50%;border:2px solid #fff;font-size:9px;font-weight:700;color:#fff;display:none;align-items:center;justify-content:center}
.fab-badge.show{display:flex}
.apanel{position:fixed;bottom:92px;right:24px;width:320px;max-height:calc(100vh - 140px);background:var(--surface);border-radius:24px;box-shadow:0 20px 60px rgba(107,63,168,.18);border:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden;z-index:299;transform:translateY(24px) scale(.95);opacity:0;pointer-events:none;transition:all .35s cubic-bezier(.16,1,.3,1);transform-origin:bottom right}
.apanel.open{transform:translateY(0) scale(1);opacity:1;pointer-events:all}
.aphdr{padding:18px 18px 14px;background:linear-gradient(135deg,var(--a1),var(--a2));display:flex;align-items:center;gap:12px}
.apavatar{width:40px;height:40px;border-radius:13px;background:rgba(255,255,255,.18);display:flex;align-items:center;justify-content:center;border:1.5px solid rgba(255,255,255,.25);flex-shrink:0}
.apname{font-family:Georgia,serif;font-weight:700;font-size:15px;color:#fff}
.aprole{font-size:11px;color:rgba(255,255,255,.7)}
.apmin{width:28px;height:28px;border-radius:8px;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:16px;display:flex;align-items:center;justify-content:center;margin-left:auto}
.chat{flex:1;overflow-y:auto;padding:14px 14px 10px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,#FDFAFF,#F8F3FF);scrollbar-width:none}
.chat::-webkit-scrollbar{display:none}
.mb{padding:10px 13px;font-size:13px;line-height:1.65;background:var(--surface);border:1px solid rgba(107,63,168,.1);border-radius:4px 14px 14px 14px;color:var(--t2)}
.mb.reward{background:rgba(91,191,138,.08);border-color:rgba(91,191,138,.2);color:var(--ok)}
.mb.insight{background:rgba(196,95,192,.08);border-color:rgba(196,95,192,.2);color:var(--aW);border-radius:10px}
.typing{display:flex;gap:5px;padding:10px 13px;background:var(--surface);border:1px solid rgba(107,63,168,.1);border-radius:4px 14px 14px 14px;width:fit-content}
.td{width:7px;height:7px;border-radius:50%;background:var(--a3);animation:bnc 1.2s infinite}
.td:nth-child(2){animation-delay:.2s}.td:nth-child(3){animation-delay:.4s}
@keyframes bnc{0%,60%,100%{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}

/* SCREENS */
.scr{display:none;max-width:700px;margin:0 auto;padding:40px 20px 100px}
.scr.active{display:block}
.scrc{display:none;max-width:580px;margin:0 auto;padding:60px 20px 100px;text-align:center}
.scrc.active{display:block}
.elbl{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--a1);margin-bottom:12px}
.elbl::before{content:'';display:block;width:16px;height:2px;background:var(--a1);border-radius:1px}
.stitle{font-family:Georgia,serif;font-weight:700;font-size:26px;letter-spacing:-.5px;color:var(--t1);margin-bottom:8px}
.ssub{font-size:14px;color:var(--t2);line-height:1.6;margin-bottom:28px}

/* TABS */
.tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}
.tab{padding:8px 18px;border-radius:100px;font-size:13px;font-weight:500;border:1.5px solid var(--border);background:transparent;color:var(--tm);transition:all .25s}
.tab:not(:disabled):hover{border-color:var(--a3);color:var(--a1)}
.tab.active{background:var(--a1);border-color:var(--a1);color:#fff;box-shadow:0 4px 12px rgba(107,63,168,.25)}
.tab.done{border-color:var(--ok);color:var(--ok);background:rgba(91,191,138,.06)}
.tp{display:none;flex-direction:column;gap:20px;animation:fi .35s ease}
.tp.active{display:flex}
@keyframes fi{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}

/* CARDS */
.card{background:var(--surface);border:1.5px solid var(--border);border-radius:20px;padding:24px 28px;transition:border-color .3s,box-shadow .3s}
.card:focus-within{border-color:rgba(107,63,168,.3);box-shadow:0 0 0 4px rgba(107,63,168,.06)}
.chdr{display:flex;align-items:flex-start;gap:14px;margin-bottom:16px}
.cicon{width:40px;height:40px;border-radius:12px;background:rgba(107,63,168,.1);display:flex;align-items:center;justify-content:center;font-size:18px;flex-shrink:0}
.flbl{font-family:Georgia,serif;font-weight:600;font-size:15px;color:var(--t1);margin-bottom:3px}
.fdesc{font-size:12.5px;color:var(--tm);line-height:1.5}
.cact{display:flex;justify-content:space-between;align-items:center;margin-top:12px}

/* CHIPS */
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}
.chip{padding:7px 14px;border-radius:100px;border:1.5px solid var(--border);background:transparent;font-size:13px;color:var(--t2);transition:all .2s;white-space:nowrap}
.chip:hover{border-color:var(--a3);color:var(--a1)}
.chip.sel{background:linear-gradient(135deg,var(--a1),var(--a2));border-color:transparent;color:#fff;box-shadow:0 2px 8px rgba(107,63,168,.3);transform:translateY(-1px)}
.chint{font-size:11.5px;color:var(--tm);margin-top:4px}

/* INPUTS */
.fi{width:100%;padding:13px 15px;border-radius:12px;border:1.5px solid var(--border);background:var(--bg);font-size:14px;color:var(--t1);outline:none;transition:all .25s;line-height:1.6}
.fi::placeholder{color:var(--tm)}
.fi:focus{border-color:var(--a1);background:var(--surface);box-shadow:0 0 0 4px rgba(107,63,168,.08)}
.fi.filled{border-color:rgba(107,63,168,.25);background:var(--surface)}
textarea.fi{min-height:100px}

/* BUTTONS */
.btn{padding:11px 26px;border-radius:12px;border:none;font-size:14px;font-weight:500;transition:all .25s}
.btn-p{background:var(--a1);color:#fff;box-shadow:0 4px 14px rgba(107,63,168,.3)}
.btn-p:hover{background:#5a2f9a;transform:translateY(-1px)}
.btn-g{background:linear-gradient(135deg,var(--ok),var(--aT));color:#fff;box-shadow:0 4px 14px rgba(91,191,138,.3)}
.btn-g:hover{transform:translateY(-1px)}
.btn-gs{font-size:13px;color:var(--tm);background:none;border:none;padding:6px 0}
.btn-gs:hover{color:var(--a1)}
.btn-g:disabled,.btn-p:disabled{opacity:.5;cursor:not-allowed;transform:none}
.hbox{background:var(--aL);border:1px solid var(--a3);border-radius:12px;padding:12px 16px;font-size:13px;color:var(--a1);line-height:1.6}

/* DIM PROGRESS */
.dprog{display:flex;align-items:center;margin-bottom:32px}
.dd{width:32px;height:32px;border-radius:50%;border:2px solid var(--border);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:13px;flex-shrink:0;transition:all .4s;background:var(--surface);color:var(--tm)}
.dd.active{border-color:var(--a1);color:var(--a1);box-shadow:0 0 0 4px rgba(107,63,168,.1)}
.dd.done{background:var(--a1);border-color:var(--a1);color:#fff}
.dl{flex:1;height:2px;background:var(--border);margin:0 4px;border-radius:1px;transition:background .4s}
.dl.done{background:var(--a1)}
.pcards{margin-bottom:24px;display:flex;flex-direction:column;gap:8px}
.pclbl{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--tm);margin-bottom:4px}
.pc{background:var(--aL);border:1px solid var(--a3);border-radius:10px;padding:10px 14px;display:flex;gap:10px;align-items:flex-start}
.pc-d{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--a1);flex-shrink:0;margin-top:1px}
.pc-t{font-size:12.5px;color:var(--t2);line-height:1.5}
.dbadge{display:inline-flex;padding:5px 12px;border-radius:100px;background:rgba(196,95,192,.1);border:1px solid rgba(196,95,192,.2);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--aW);margin-bottom:14px}
.dq{font-family:Georgia,serif;font-weight:700;font-size:21px;color:var(--t1);line-height:1.3;margin-bottom:14px}
.dhint{font-size:13.5px;color:var(--tm);line-height:1.65;padding:13px 15px;background:var(--aL);border-radius:12px;border-left:3px solid var(--a3);margin-bottom:14px}
.chal{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;display:block;margin-bottom:6px;margin-top:12px}

/* VALIDATION */
.vi{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,var(--a1),var(--a2));display:flex;align-items:center;justify-content:center;font-size:24px;margin:0 auto 20px}
.vopts{display:flex;flex-direction:column;gap:12px;margin-bottom:20px;text-align:left}
.vopt{padding:14px 18px;border-radius:14px;border:1.5px solid var(--border);background:var(--surface);font-size:14px;color:var(--t2);text-align:left;transition:all .2s}
.vopt:hover{border-color:var(--a3);color:var(--a1)}
.vopt.sel{border-color:var(--a1);background:var(--aL);color:var(--a1)}
.vchip{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:12px;background:var(--aL);border:1px solid var(--a3);margin-bottom:24px}

/* LOADING */
.lscr{display:none;position:fixed;inset:0;background:var(--bg);z-index:400;flex-direction:column;align-items:center;justify-content:center;gap:24px}
.lscr.active{display:flex}
.lorb{width:80px;height:80px;border-radius:50%;background:linear-gradient(135deg,var(--a1),var(--a2),var(--aW));animation:pulse 2s ease-in-out infinite}
@keyframes pulse{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(107,63,168,.3)}50%{transform:scale(1.05);box-shadow:0 0 0 20px rgba(107,63,168,0)}}
.lsteps{display:flex;flex-direction:column;gap:10px;align-items:center}
.lstep{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--tm);opacity:.3;transition:all .4s}
.lstep.done{color:var(--ok);opacity:1}

/* SYNTHESIS */
#ss{display:none;background:var(--bg);min-height:100vh;padding:48px 0 100px}
.si{max-width:860px;margin:0 auto;padding:0 20px}
.sbadge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:100px;background:linear-gradient(135deg,rgba(107,63,168,.1),rgba(155,111,212,.08));border:1px solid rgba(107,63,168,.15);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--a1);margin-bottom:18px}
.stit{font-family:Georgia,serif;font-weight:800;font-size:34px;letter-spacing:-.8px;color:var(--t1);line-height:1.15;margin-bottom:10px}
.ssb{font-size:15px;color:var(--t2);line-height:1.6;max-width:460px;margin:0 auto 20px}
.aigrid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.aic{background:var(--surface);border:1.5px solid var(--border);border-radius:20px;padding:22px 24px;position:relative;overflow:hidden}
.aic::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.aic.c1::before{background:linear-gradient(90deg,var(--a1),var(--a2))}
.aic.c2::before{background:linear-gradient(90deg,var(--aW),#F59E0B)}
.aic.c3::before{background:linear-gradient(90deg,var(--ok),var(--aT))}
.aic.c4::before{background:linear-gradient(90deg,var(--a2),var(--aW))}
.aicico{font-size:22px;display:block;margin-bottom:8px;margin-top:4px}
.aiclbl{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tm);margin-bottom:8px}
.aicc{font-size:14px;color:var(--t2);line-height:1.65}
.rbar{height:6px;background:var(--border);border-radius:3px;overflow:hidden;margin-top:12px;margin-bottom:5px}
.rfill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--ok),var(--aT));width:0%;transition:width 1.2s cubic-bezier(.16,1,.3,1) .3s}
.ws{font-size:12px;color:var(--ok);background:rgba(91,191,138,.08);border-radius:8px;padding:6px 10px;margin-top:8px}
.wl{font-size:12px;color:var(--aW);background:rgba(196,95,192,.08);border-radius:8px;padding:6px 10px;margin-top:6px}
.slbl{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--tm);margin-bottom:14px;display:flex;align-items:center;gap:8px}
.slbl::after{content:'';flex:1;height:1px;background:var(--border)}
.mgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:24px}
.mc{background:var(--surface);border:1.5px solid var(--border);border-radius:20px;padding:20px 22px;position:relative;overflow:hidden}
.mc::before{content:'';position:absolute;top:0;left:0;right:0;height:3px}
.mc.ma::before{background:linear-gradient(90deg,var(--a1),var(--a2))}
.mc.mb::before{background:linear-gradient(90deg,var(--a2),var(--aT))}
.mc.mc2::before{background:linear-gradient(90deg,var(--aW),#F59E0B)}
.mc.md::before{background:linear-gradient(90deg,var(--ok),var(--aT))}
.mct{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tm);margin-bottom:12px;padding-top:6px}
.mf{margin-bottom:10px}
.mfl{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--tm);margin-bottom:3px}
.mfv{font-size:13.5px;color:var(--t1);font-weight:500;line-height:1.5}
.nbox{background:linear-gradient(135deg,rgba(107,63,168,.06),rgba(155,111,212,.03));border:1.5px solid rgba(107,63,168,.12);border-radius:20px;padding:24px 28px;margin-bottom:24px}
.nhdr{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.nico{width:38px;height:38px;border-radius:12px;background:linear-gradient(135deg,var(--a1),var(--a2));display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff;flex-shrink:0}
.ntit{font-family:Georgia,serif;font-weight:700;font-size:15px;color:var(--t1)}
.ntxt{font-size:14.5px;color:var(--t2);line-height:1.75}
.tblk{background:var(--surface);border:1.5px solid var(--border);border-radius:20px;padding:22px 24px;margin-bottom:14px}
.thdr{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--border)}
.tico{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:18px}
.tico.rep{background:linear-gradient(135deg,rgba(107,63,168,.12),rgba(155,111,212,.08))}
.tico.area{background:linear-gradient(135deg,rgba(196,95,192,.12),rgba(196,95,192,.06))}
.ttit{font-family:Georgia,serif;font-weight:700;font-size:15px;color:var(--t1)}
.tdesc{font-size:12.5px;color:var(--tm);line-height:1.5;margin-top:2px}
.ti{background:var(--bg);border:1.5px solid var(--border);border-radius:14px;padding:15px 18px;margin-bottom:10px}
.ti.core{border-color:var(--a1);background:linear-gradient(135deg,rgba(107,63,168,.04),rgba(155,111,212,.02))}
.ti.estr{border-color:rgba(245,158,11,.3);background:rgba(245,158,11,.03)}
.ttop{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}
.tname{font-family:Georgia,serif;font-weight:600;font-size:14px;color:var(--t1);line-height:1.3}
.tbdg{display:flex;gap:5px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end}
.bdg{padding:3px 9px;border-radius:100px;font-size:10px;font-weight:700}
.bdg-core{background:linear-gradient(135deg,var(--aW),var(--a2));color:#fff}
.bdg-estr{background:rgba(245,158,11,.12);color:#92650A;border:1px solid rgba(245,158,11,.25)}
.bdg-max{background:linear-gradient(135deg,var(--a1),var(--a2));color:#fff}
.bdg-pot{color:var(--a2);border:1px solid var(--border)}
.bdg-sec{color:var(--tm);border:1px solid var(--border)}
.tjust{font-size:12.5px;color:var(--t2);line-height:1.55;margin-bottom:8px}
.cbdg{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:100px;display:inline-block;margin-bottom:6px}
.ce{background:rgba(107,63,168,.05);border:1px solid rgba(107,63,168,.12);border-radius:8px;padding:8px 12px;margin-bottom:10px;font-size:12px;color:var(--a1);line-height:1.5}
.srow{display:flex;align-items:center;gap:10px}
.slb{font-size:11px;color:var(--tm);font-weight:500;min-width:44px}
.sbar{flex:1;height:5px;background:var(--border);border-radius:3px;overflow:hidden}
.sbarfill{height:100%;border-radius:3px;transition:width 1s cubic-bezier(.16,1,.3,1)}
.snum{font-size:12px;font-weight:600;color:var(--t2);min-width:36px;text-align:right}
.sdet{display:flex;gap:4px;margin-top:8px;flex-wrap:wrap}
.sdi{display:flex;flex-direction:column;align-items:center;background:rgba(107,63,168,.05);border-radius:6px;padding:4px 7px;min-width:36px}
.sdk{font-size:9px;color:var(--tm);letter-spacing:.05em;margin-bottom:2px}
.sdv{font-size:13px;font-weight:700}
.ctabox{text-align:center;padding:36px 32px;background:var(--surface);border-radius:20px;position:relative;overflow:hidden;border:1.5px solid var(--border)}
.ctalbl{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--tm);margin-bottom:10px;padding-top:8px}
.ctatit{font-family:Georgia,serif;font-weight:700;font-size:22px;color:var(--t1);margin-bottom:10px;line-height:1.3}
.ctaarg{font-size:14px;color:var(--t2);margin-bottom:24px;line-height:1.6;max-width:480px;margin-left:auto;margin-right:auto}
.ctabtn{display:inline-flex;align-items:center;gap:10px;padding:15px 34px;border-radius:14px;color:#fff;font-family:Georgia,serif;font-size:15px;font-weight:600;border:none;transition:all .3s}
.ctabtn:hover{transform:translateY(-2px)}
.dlbtn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:10px;border:1.5px solid var(--border);background:var(--surface);color:var(--t2);font-size:13px;margin-bottom:20px;transition:all .2s}
.dlbtn:hover{border-color:var(--a1);color:var(--a1)}

.scoretip{position:relative;cursor:help}
.scoretip:hover::after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);width:240px;background:#1C1530;color:#fff;border-radius:12px;padding:10px 12px;font-size:11.5px;line-height:1.45;font-weight:400;letter-spacing:0;text-transform:none;box-shadow:0 12px 30px rgba(28,21,48,.18);z-index:50;text-align:left}
.scoretip:hover::before{content:'';position:absolute;left:50%;bottom:calc(100% + 2px);transform:translateX(-50%);border:7px solid transparent;border-top-color:#1C1530;z-index:51}
.report-actions{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.savebtn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:10px;border:1.5px solid rgba(107,63,168,.22);background:linear-gradient(135deg,rgba(107,63,168,.08),rgba(155,111,212,.06));color:var(--a1);font-size:13px;transition:all .2s}
.savebtn:hover{border-color:var(--a1);transform:translateY(-1px)}
.rep-summary{background:linear-gradient(135deg,rgba(107,63,168,.045),rgba(155,111,212,.025));border:1.5px solid rgba(107,63,168,.12);border-radius:16px;padding:16px 18px;color:var(--t2);font-size:13.5px;line-height:1.65}
.rep-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.rep-tag{padding:6px 10px;border-radius:100px;background:#fff;border:1px solid var(--border);font-size:12px;color:var(--a1);font-weight:600}


/* FONT REFINEMENT */
h1,h2,h3,.qtitle,.st,.rt,.diag h1,.card-title,.wh1,.wcard h2{font-family:'Raleway',system-ui,sans-serif!important;letter-spacing:-.02em}
button,input,textarea,.chip,.opt,.btn,.btn-start{font-family:'DM Sans',system-ui,sans-serif!important}

/* AVATAR AURORA — aplicação segura sem alterar o painel */
.fab{
  overflow:hidden !important;
  padding:0 !important;
  border:2px solid rgba(255,255,255,.28) !important;
}
.fab-avatar-img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:18px !important;
}
.apavatar{
  overflow:hidden !important;
  padding:0 !important;
}
.apavatar-img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  display:block !important;
  border-radius:12px !important;
}


/* CONTROLE DE QUALIDADE DA INFORMAÇÃO */
.qnote{
  margin-top:10px;
  padding:10px 12px;
  border-radius:12px;
  font-size:12.5px;
  line-height:1.45;
  border:1px solid rgba(107,63,168,.16);
  background:#FAF7FF;
  color:#5C5378;
}
.qnote.block{
  border-color:rgba(236,87,87,.28);
  background:#FFF7F8;
  color:#7A3140;
}
.qnote.warn{
  border-color:rgba(217,119,6,.26);
  background:#FFF9ED;
  color:#7A4D12;
}
.qnote.good{
  border-color:rgba(91,191,138,.25);
  background:#F4FFF9;
  color:#2C7552;
}
.qhint-list{
  margin:6px 0 0 0;
  padding-left:18px;
}
.qshake{animation:qshake .28s ease}
@keyframes qshake{
  0%,100%{transform:translateX(0)}
  25%{transform:translateX(-4px)}
  75%{transform:translateX(4px)}
}
