:root{--bg:#F8FAFC;--panel:#fff;--ink:#0F172A;--mute:#64748B;--line:#E2E8F0;--brand:#2563EB;--bi:#fff;--soft:#EFF6FF;--ok:#16A34A;--warn:#D97706;--field:#F8FAFC;box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0B1220;--panel:#111A2E;--ink:#E5ECF6;--mute:#94A3B8;--line:#1E2A44;--brand:#60A5FA;--bi:#0B1220;--soft:#16233F;--field:#0E1729}}
:root[data-theme="dark"]{--bg:#0B1220;--panel:#111A2E;--ink:#E5ECF6;--mute:#94A3B8;--line:#1E2A44;--brand:#60A5FA;--bi:#0B1220;--soft:#16233F;--field:#0E1729}
*,*::before,*::after{box-sizing:inherit}
html{scroll-padding-top:env(safe-area-inset-top,0px)}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 "Hind Siliguri",system-ui,sans-serif}
button{font:inherit;color:inherit;cursor:pointer}
button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--brand);outline-offset:2px}
header{display:flex;align-items:center;gap:10px;padding:10px 18px;position:sticky;top:env(safe-area-inset-top,0px);z-index:6;background:var(--bg)}
.logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:19px;flex:1}
.mark{width:34px;height:34px;border-radius:10px;background:var(--brand);position:relative;overflow:hidden}
.mark::before{content:"";position:absolute;left:8px;top:7px;width:18px;height:22px;background:var(--bi);border-radius:3px;transform:rotate(-8deg)}
.mark::after{content:"";position:absolute;left:12px;top:13px;width:10px;height:3px;background:var(--brand);box-shadow:0 6px 0 var(--brand);transform:rotate(-8deg)}
.btn{border:1px solid var(--line);background:var(--panel);padding:8px 14px;border-radius:999px;font-weight:600}
.btn.p{background:var(--brand);color:var(--bi);border-color:var(--brand)}
main{display:grid;grid-template-columns:minmax(360px,440px) 1fr;gap:18px;padding:6px 18px 24px;max-width:1300px;margin:0 auto;align-items:start}
section.ed{min-width:0;background:var(--panel);border-radius:22px;padding:14px;border:1px solid var(--line)}
.rail{display:flex;gap:6px;overflow-x:auto;padding-bottom:10px}
.pill{flex:0 0 auto;border:1px solid var(--line);background:var(--field);border-radius:999px;padding:6px 12px;font-size:14px;font-weight:600;display:flex;gap:6px;align-items:center;color:var(--mute)}
.pill i{width:18px;height:18px;border-radius:50%;background:var(--line);display:grid;place-items:center;font-size:11px;font-style:normal}
.pill.on{background:var(--brand);color:var(--bi);border-color:var(--brand)}
.pill.on i{background:var(--bi);color:var(--brand)}
.pill.done i{background:var(--ok);color:#fff}
.pane{display:none}.pane.on{display:block}
h2.q{font-size:22px;line-height:1.25;margin:8px 0 2px}
.sub{color:var(--mute);margin:0 0 8px;font-size:14px}
label{display:block;font-size:13.5px;color:var(--mute);margin:10px 0 3px;font-weight:500}
input,textarea,select{width:100%;font:inherit;color:var(--ink);background:var(--field);border:1px solid var(--line);border-radius:12px;padding:9px 12px}
textarea{min-height:76px;resize:vertical}
.row{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.card{border:1px solid var(--line);background:var(--field);border-radius:14px;padding:4px 12px 12px;margin-top:10px}
.card .x{float:right;margin-top:8px;border:0;background:var(--soft);border-radius:999px;padding:2px 10px;font-size:13px}
.add{width:100%;margin-top:10px;border-style:dashed}
.err{color:var(--warn);font-size:13px;margin-top:4px}
.ck{display:flex;gap:8px;align-items:center;color:var(--ink);font-size:15px;margin:12px 0 2px}
.ck input{width:20px;height:20px;min-height:0;accent-color:var(--brand)}
input:disabled{opacity:.45}
.row.cc{grid-template-columns:minmax(0,5fr) minmax(0,6fr)}
.tp small{display:block;font-weight:400;color:var(--mute);font-size:11px}
.cv.cl,.cv.cp,.cv.ge,.cv.cd{display:block}
.cv.cl{padding:40px 46px}
.cv.cl .hd{text-align:center;border-bottom:2px solid var(--ac);padding-bottom:12px}
.cv.cl h1{font-size:30px;letter-spacing:.05em;text-transform:uppercase}
.cv.cl .rl{color:#444}
.cv.cl .ct{justify-content:center}
.cv.cl h3{border:0;border-bottom:1px solid #9aa0b4;text-transform:uppercase;letter-spacing:.1em;font-size:13px;color:#1b2033}
.cv.cp .hd{background:var(--ac);color:#fff;padding:32px 36px;display:flex;justify-content:space-between;align-items:flex-end;gap:20px}
.cv.cp .rl{color:#fff;opacity:.9}
.cv.cp .ct{flex-direction:column;align-items:flex-end;gap:0;text-align:right}
.cv.cp .ct p{margin:2px 0}
.cv.cp .bd{display:grid;grid-template-columns:1fr 250px;min-height:980px}
.cv.cp .l{padding:8px 30px 30px 36px}
.cv.cp .r{background:var(--soft2);padding:22px}
.cv.cp .tg em,.cv.cd .tg em{background:var(--ac);color:#fff}
.cv.ge{position:relative;overflow:hidden}
.cv.ge .top{box-sizing:border-box;height:190px;background:linear-gradient(176deg,var(--ac) 0,var(--ac) 180px,transparent 180px);color:#fff;padding:30px 40px 0;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.cv.ge .top .ph{margin:0}
.cv.ge .rl{color:#fff;opacity:.9}
.cv.ge .bd{display:grid;grid-template-columns:230px 1fr;margin-top:8px;position:relative;z-index:1}
.cv.ge .l{padding:0 20px 30px 34px}
.cv.ge .r{padding:20px 36px 30px 12px}
.cv.ge .tg em{background:var(--soft2);color:#1b2033}
.cv.ge::after{content:"";position:absolute;right:-70px;bottom:-70px;width:220px;height:220px;border-radius:50%;background:var(--soft2);z-index:0}
.cv.cd{background:var(--soft2);padding:34px}
.cv.cd .hd{display:flex;gap:22px;align-items:center;margin-bottom:18px}
.cv.cd .hd .ph{margin:0}
.cv.cd h1{font-size:34px}
.cv.cd .cardx{background:#fff;border-radius:16px;padding:14px 20px 8px;margin-bottom:14px;border:1px solid #e1e4f0}
.cv.cd h3{border:0;margin:0 0 8px;font-size:16px}
.cv.pr .sd{background:#151922;border-top:6px solid var(--ac)}
.cv.pr .sd h3{color:var(--ac);border-color:rgba(255,255,255,.22)}
.cv.pr .mn h1{font-size:36px;letter-spacing:.03em;text-transform:uppercase}
.cv.pr .mn .rl{letter-spacing:.12em;text-transform:uppercase;font-size:14px}
.cv.au{display:block}
.cv.au .top{background:linear-gradient(135deg,var(--ac),var(--acd));color:#fff;padding:40px;border-radius:0 0 54px 0;display:flex;gap:26px;align-items:center}
.cv.au .top .ph{margin:0}
.cv.au .rl{color:#fff;opacity:.9}
.cv.au .bd{display:grid;grid-template-columns:1fr 230px}
.cv.au .l{padding:10px 20px 30px 36px}
.cv.au .r{padding:10px 32px 30px 10px}
.cv.au .tg em,.cv.ed .tg em,.cv.rb .tg em{background:var(--soft2);color:#1b2033}
.cv.ed,.cv.rb{display:block;padding:44px 46px}
.cv.ed .hd{display:flex;gap:26px;align-items:center;padding-bottom:20px;border-bottom:4px solid var(--ac)}
.cv.ed .hd .ph,.cv.rb .hd .ph{margin:0}
.cv.ed h1{font-size:42px;line-height:1.05}
.cv.ed .rl{text-transform:uppercase;letter-spacing:.14em;font-size:13px}
.cv.ed .sc{display:grid;grid-template-columns:130px 1fr;gap:18px;padding:14px 0;border-bottom:1px solid #d5d8e3}
.cv.ed .sc h3{border:0;margin:2px 0 0;font-size:13px;text-transform:uppercase;letter-spacing:.1em}
.cv.rb .hd{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:3px solid var(--ac);padding-bottom:16px}
.cv.rb h3{display:inline-block;background:var(--ac);color:#fff;border:0;padding:5px 26px 5px 46px;margin:20px 0 10px -46px;font-size:14px;border-radius:0 999px 999px 0}
.cv .fr{display:inline-block;margin-left:10px;padding:1px 11px;border-radius:999px;font-size:12px;font-weight:600;background:var(--ac);color:#fff;vertical-align:middle}
.cv.bold .fr,.cv.ge .fr,.cv.cp .fr,.cv.au .fr{background:#fff;color:var(--ac)}
.cv .aix{margin-bottom:9px}
.cv .aix b{font-size:14px}
.cv .aix em{font-style:normal;font-size:12px;font-weight:600;color:var(--ac);margin-left:8px}
.cv .aix p{color:#454c66;margin:1px 0 0}
details{border-top:1px solid var(--line);padding:2px 0}
details>summary{padding:11px 0;font-weight:600;cursor:pointer}
.row3{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr) minmax(0,1fr);gap:8px}
.ordr{display:flex;justify-content:space-between;align-items:center;padding:4px 0;border-bottom:1px solid var(--line)}
#toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:10px 16px;border-radius:999px;font-size:14px;z-index:20;opacity:0;pointer-events:none;transition:opacity .2s}
#toast.on{opacity:1}
.pv{text-align:center;padding:0 18px 6px}
#priv{max-width:760px;margin:0 auto 16px;padding:12px 18px;color:var(--mute);font-size:14px}
.cv .dec{margin-top:22px;font-size:13px}
.cv .dec img{display:block;height:50px;margin:8px 0 2px}
#cv{position:relative}
.pgb{position:absolute;left:0;right:0;height:0;border-top:2px dashed #e11d48;opacity:.55;pointer-events:none;z-index:5}
.pgb::after{content:attr(data-l);position:absolute;right:8px;top:3px;font-size:11px;color:#e11d48}
.cv p,.cv .bl li{font-size:calc(13.5px*var(--fz,1))}
.cv .it{font-size:calc(14px*var(--fz,1))}
.cv .it span,.cv .tg em{font-size:calc(13px*var(--fz,1))}
.cv .aix b{font-size:calc(14px*var(--fz,1))}
.guide{max-width:760px;margin:0 auto;padding:6px 18px 18px}
.guide h2{font-size:22px;margin:8px 0}
.guide p{color:var(--mute);margin:0 0 10px}
.pgmap{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:8px;background:var(--field);border:1px solid var(--line);border-radius:14px;padding:10px;margin-top:6px}
.mz{display:flex;flex-direction:column;gap:6px}
.mz small{color:var(--mute);font-size:12px}
.mzs{background:var(--soft);border-radius:10px;padding:6px}
.mb{display:flex;align-items:center;gap:6px;text-align:left;border:1px solid var(--line);background:var(--panel);border-radius:10px;padding:7px 9px;font-size:14px}
.mb i{font-style:normal}
.mb.on{border-color:var(--brand);box-shadow:0 0 0 2px var(--brand) inset}
.mb.off{opacity:.45;text-decoration:line-through}
.mapbar{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}
.atsb{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:10px 16px;margin-bottom:14px;font-size:14px}.atsb summary{cursor:pointer;font-weight:700}.atsb ul{list-style:none;margin:10px 0 0;padding:0}.atsb li{padding:5px 0;display:flex;gap:8px}.atsb li i{font-style:normal;flex:none}.atsb .nt{color:var(--mute);font-size:13px;margin-top:6px}.kwt{width:100%;box-sizing:border-box;min-height:110px;margin-top:10px;padding:10px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:inherit;font:inherit;resize:vertical}.kwc{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.kwc span{padding:4px 10px;border-radius:999px;border:1px solid var(--line);font-size:13px}.kwc .m{background:rgba(34,160,90,.15)}.kwc .x{background:rgba(230,150,20,.18)}.kwi{width:100%;box-sizing:border-box;margin-top:8px;padding:10px;border-radius:12px;border:1px solid var(--line);background:var(--soft);color:inherit;font:inherit}.clb{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.hint{display:flex;gap:10px;align-items:center;justify-content:space-between;background:var(--soft);border:1px solid var(--line);border-radius:14px;padding:10px 14px;margin-bottom:12px;font-size:14px}
.hint[hidden]{display:none}
.cv .mn .tg em,.cv .l .tg em,.cv .r .tg em{background:var(--soft2);color:#1b2033}
.cv.cp .r .tg em{background:#fff}
.cv .sd .it span{color:rgba(255,255,255,.8)}
.cv .sd .it{border-left-color:rgba(255,255,255,.4)}
.cv .sd .it::before{background:#fff;border-color:var(--ac)}
.cv .sd .aix p{color:rgba(255,255,255,.88)}
.cv .sd .aix em{color:#fff;opacity:.85}
@media print{.cv,.cv *{-webkit-print-color-adjust:exact;print-color-adjust:exact}.cv .it,.cv .aix,.cv .cardx,.cv .sc{break-inside:avoid}.cv h3{break-after:avoid}.pgb,.guide,#fitHint{display:none!important}}
input.bad{border-color:var(--warn)}
.acw{position:relative}
.acl{position:absolute;left:0;right:0;top:100%;z-index:8;background:var(--panel);border:1px solid var(--line);border-radius:12px;margin-top:4px;box-shadow:0 10px 30px rgba(0,0,0,.28);max-height:300px;overflow:auto}
.ai{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;padding:10px 12px}
.ai small{display:block;color:var(--mute);font-size:12.5px}
.ai.add{color:var(--brand);font-weight:600;border-bottom:0}
.acl .st{padding:8px 12px;color:var(--mute);font-size:13px;border-bottom:1px solid var(--line)}
.chips{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}
.chip{background:var(--soft);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:14px}
.chip.sel{background:var(--brand);color:var(--bi);border-color:var(--brand)}
.chip.sg{border-style:dashed;background:transparent}
.tpls{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tp{border:2px solid var(--line);background:var(--field);border-radius:14px;padding:8px 6px 6px;text-align:center;font-size:13px;font-weight:600}
.tp.on{border-color:var(--brand)}
.tp svg{width:100%;height:64px;display:block;margin-bottom:4px}
.sw{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}
.sw button{width:34px;height:34px;border-radius:50%;border:3px solid var(--panel);box-shadow:0 0 0 1.5px var(--line)}
.sw button.on{box-shadow:0 0 0 2.5px var(--brand)}
.nav{display:flex;justify-content:space-between;gap:8px;margin-top:16px}
.stage{min-width:0}
.score{display:flex;gap:14px;align-items:center;background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:12px 16px;margin-bottom:14px}
.ring{position:relative;width:64px;height:64px;flex:0 0 auto}
.ring svg{width:64px;height:64px;transform:rotate(-90deg)}
.ring b{position:absolute;inset:0;display:grid;place-items:center;font-size:17px}
.tips{margin:0;padding:0;list-style:none;font-size:14px}
.tips li{margin:1px 0}
.tips li::before{content:"＋ ";color:var(--warn);font-weight:700}
.tips li.good::before{content:"✓ ";color:var(--ok)}
.score h4{margin:0;font-size:15px}
#wrap{overflow:hidden}
#cv{width:794px;min-height:1123px;background:#fff;color:#1b2033;font-family:var(--cf,"Hind Siliguri");line-height:var(--lh,1.55);transform-origin:top left;box-shadow:0 10px 40px rgba(20,24,60,.25);border-radius:4px}
.cv{display:grid;grid-template-columns:245px 1fr;min-height:1123px}
.cv .sd{background:var(--ac);color:#fff;padding:34px 22px}
.cv .mn{padding:36px 32px}
.cv .ph{--pc:#fff;position:relative;width:140px;height:140px;margin:8px auto 26px;flex:0 0 auto}
.cv.min .ph{--pc:var(--ac)}
.cv .ph img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;display:block}
.cv .ph::before{content:"";position:absolute;z-index:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.cv .ph.ring img{border-radius:50%}
.cv .ph.ring::before{inset:-9px;border:2px solid var(--pc);border-radius:50%}
.cv .ph.ring::after{content:"";position:absolute;z-index:2;right:0;top:4px;width:16px;height:16px;border-radius:50%;background:var(--pc);border:3px solid var(--ac);-webkit-print-color-adjust:exact;print-color-adjust:exact}
.cv .ph.arch img{border-radius:70px 70px 10px 10px}
.cv .ph.arch::before{inset:10px -10px -10px 10px;border:2px solid var(--pc);border-radius:70px 70px 10px 10px}
.cv .ph.frame img{border-radius:30px}
.cv .ph.frame::before{inset:10px -10px -10px 10px;border-radius:30px;background:var(--pc);opacity:.4}
.cv .ph.hex img,.cv .ph.hex::before{border-radius:50% 0 50% 0}
.cv .ph.hex::before{inset:10px -10px -10px 10px;background:var(--pc);opacity:.45}
.cv h1{margin:0;font-size:31px;line-height:1.15}
.cv .rl{color:var(--ac);font-weight:600;font-size:17px;margin:2px 0 12px}
.cv h3{font-size:15px;margin:calc(20px*var(--sp,1)) 0 7px;color:var(--ac);padding-bottom:3px;border-bottom:2px solid var(--ac)}
.cv .sd h3{color:#fff;border-color:rgba(255,255,255,.45)}
.cv p{margin:4px 0;font-size:13.5px;word-break:break-word}
.cv .it{position:relative;margin:0 0 calc(16px*var(--sp,1)) 5px;padding:0 0 0 16px;font-size:14px;border-left:2px solid var(--ac30)}
.cv .it::before{content:"";position:absolute;left:-7px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--ac);border:2px solid #fff;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.cv .it:last-child{margin-bottom:4px}
.cv .bl{margin:5px 0 0;padding-left:16px}
.cv .bl li{font-size:13.5px;margin:2px 0}
.cv .it b{display:block}.cv .it span{color:#5d6480;font-size:13px}
.cv .tg{display:flex;flex-wrap:wrap;gap:5px}
.cv .tg em{font-style:normal;font-size:13px;padding:2px 9px;border-radius:999px;background:rgba(255,255,255,.2)}
.cv.min,.cv.bold{display:block}
.cv.min .hd{padding:36px 40px 14px;border-bottom:3px solid var(--ac)}
.cv.min .hd .ph{margin:0 0 24px}
.cv.min .mn,.cv.bold .mn{padding:6px 40px 34px}
.cv.min .tg em,.cv.bold .mn .tg em{background:var(--soft2);color:#1b2033}
.cv .ct{display:flex;flex-wrap:wrap;gap:2px 18px}
.cv.bold .hd{background:var(--ac);color:#fff;padding:38px 40px;display:flex;gap:22px;align-items:center}
.cv.bold .hd .ph{margin:0 14px 0 0;width:130px;height:130px}
.cv.bold .hd .rl{color:#fff;opacity:.85}
.cv.bold h1{font-size:38px}
.cv.bold h3{border:0;font-size:16px;padding:0 0 0 10px;border-left:5px solid var(--ac)}
#cv{--soft2:#eef0fb}
.bar{display:none}
.hero{max-width:1300px;margin:0 auto;padding:28px 18px 18px;display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:center}
.hh{font-size:clamp(34px,6vw,58px);line-height:1.1;margin:0 0 12px;font-weight:700;letter-spacing:-.01em}
.hp{font-size:18px;color:var(--mute);max-width:34em;margin:0 0 20px}
.go{display:inline-block;text-decoration:none;font-size:18px;padding:12px 26px}
.stack{position:relative;height:230px;overflow:hidden}
.sh{position:absolute;top:10px;width:150px;height:205px;border-radius:6px;box-shadow:0 10px 30px rgba(20,24,60,.28);background:linear-gradient(90deg,var(--c) 0 32%,#fff 32%)}
.sh::after{content:"";position:absolute;left:42%;top:16px;right:12px;height:6px;border-radius:3px;background:#cfd3e6;box-shadow:0 14px 0 #e3e6f2,0 28px 0 #e3e6f2,0 42px 0 #e3e6f2,0 70px 0 #e3e6f2,0 84px 0 #e3e6f2}
.sh:nth-child(1){left:2%;transform:rotate(-9deg);--c:#0f766e}
.sh:nth-child(2){left:28%;transform:rotate(2deg);--c:#4f46e5;z-index:1}
.sh:nth-child(3){left:50%;transform:rotate(10deg);--c:#be123c}
.feat{max-width:1300px;margin:0 auto;padding:6px 18px 22px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.feat div{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px 16px}
.feat b{display:block;font-size:17px}
.feat span{color:var(--mute);font-size:14.5px}
footer{text-align:center;color:var(--mute);font-size:14px;padding:6px 18px 30px}
@media (min-width:1280px){main,.hero,.feat{max-width:1400px}main{grid-template-columns:480px 1fr}}
@media (max-width:959px){.hero,.feat{max-width:760px}}
@media (min-width:600px) and (max-width:959px){.bar{max-width:420px;margin:0 auto}}
@media (max-width:599px){.hero,.feat{grid-template-columns:minmax(0,1fr)}.hero{padding-top:16px}.stack{height:200px}.hp{font-size:16px}header{padding:8px 12px}.logo{font-size:17px}.btn{padding:7px 12px;font-size:15px}.ed{padding:12px;border-radius:18px}h2.q{font-size:20px}.score{padding:10px 12px;gap:10px}.go{font-size:16px}}
@media (max-width:420px){.row{grid-template-columns:1fr}.tpls{gap:6px}.tp{font-size:12px}.ring,.ring svg{width:54px;height:54px}.sh{width:120px;height:165px}}
@media (pointer:coarse){.btn,.pill,.chip,.tp{min-height:42px}input,select{min-height:44px}}
@media (max-width:959px){
 main{grid-template-columns:minmax(0,1fr);padding:4px 14px 90px;max-width:760px}
 body[data-v="e"] .stage{display:none}
 body[data-v="v"] section.ed{display:none}
 .bar{display:flex;position:fixed;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:7;background:var(--panel);border:1px solid var(--line);border-radius:999px;padding:5px;box-shadow:0 8px 30px rgba(0,0,0,.2)}
 .bar button{flex:1;border:0;background:none;padding:9px;border-radius:999px;font-weight:600}
 .bar button.on{background:var(--brand);color:var(--bi)}
 :root{padding-bottom:0}
}
@media print{
 @page{size:A4;margin:0}
 body{background:#fff}header,.ed,.score,.bar,.hero,.feat,footer,.pv,#priv,#toast{display:none!important}
 main{display:block;padding:0}.stage{display:block!important}
 #wrap{overflow:visible;height:auto!important}
 #cv{box-shadow:none;transform:none!important;border-radius:0}
 .cv .sd,.cv.bold .hd,.cv .tg em{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}
.logo{text-decoration:none;color:inherit}
.tabs{display:flex;gap:8px;overflow-x:auto;padding:0 12px 8px;max-width:1400px;margin:0 auto}
.tabs a{flex:none;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:inherit;text-decoration:none;font-weight:600;font-size:14px}
.tabs a.on{background:var(--brand);color:var(--bi);border-color:transparent}
.tool{max-width:760px;margin:0 auto;padding:8px 18px 90px}
.tool h2{font-size:22px;margin:8px 0}
.tool .sub{color:var(--mute);margin:0 0 12px}
.tcards{max-width:1300px;margin:0 auto;padding:6px 18px 22px;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.tc{display:block;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:14px 16px;color:inherit;text-decoration:none}
.tc b{display:block;font-size:17px}.tc span{color:var(--mute);font-size:14.5px}
.tl{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.tl a{text-decoration:none}
.pv a.btn{display:inline-block;text-decoration:none}
@media(max-width:700px){.tcards{grid-template-columns:minmax(0,1fr)}}
@media print{.tabs,.tl,.tcards{display:none!important}}

/* ===== v2 theme: navy + royal blue ===== */
body{font-family:"Inter","Hind Siliguri",system-ui,sans-serif;-webkit-font-smoothing:antialiased}
header{background:color-mix(in srgb,var(--panel) 90%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.btn{min-height:44px;border-radius:12px;border:1px solid var(--line);background:var(--panel);font-weight:600;transition:transform .15s,box-shadow .2s,background .2s}
.btn:active,.xtile:active,.xcont:active{transform:scale(.97)}
.btn.p{background:var(--brand);color:var(--bi);border-color:transparent;box-shadow:0 8px 18px color-mix(in srgb,var(--brand) 28%,transparent)}
input,textarea,select{border-radius:12px;border:1.5px solid var(--line);background:var(--panel);transition:border-color .15s,box-shadow .15s}
input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 18%,transparent);outline:0}
input.bad{border-color:#DC2626;box-shadow:0 0 0 4px rgba(220,38,38,.14);animation:xshake .45s}
.card,details{border-radius:16px;border-color:var(--line)}
.tabs a{border-radius:999px;transition:background .2s,transform .15s}.tabs a:active{transform:scale(.96)}
.tabs a.on{box-shadow:0 6px 14px color-mix(in srgb,var(--brand) 26%,transparent)}
#arc{transition:stroke-dasharray .9s cubic-bezier(.2,.7,.2,1)}

.card{animation:xfu .4s cubic-bezier(.2,.7,.2,1)}
.tool>*,.tcards>a,.guide>*{opacity:0;animation:xfu .55s cubic-bezier(.2,.7,.2,1) forwards}
.tool>*:nth-child(2),.tcards>a:nth-child(2){animation-delay:.08s}.tool>*:nth-child(3),.tcards>a:nth-child(3){animation-delay:.16s}.tool>*:nth-child(n+4),.tcards>a:nth-child(4){animation-delay:.24s}
.tc{border-radius:18px;transition:transform .15s,box-shadow .2s}.tc:hover{box-shadow:0 10px 24px rgba(15,23,42,.08)}
@keyframes xfu{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes xpop{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}
@keyframes xflt{50%{transform:translateY(-7px) rotate(8deg)}}
@keyframes xgrow{from{transform:scaleX(0)}}
@keyframes xshake{20%{transform:translateX(-5px)}50%{transform:translateX(5px)}80%{transform:translateX(-3px)}}
/* home */
.xw{max-width:1000px;margin:0 auto;padding:6px 16px 0}
.xfu{opacity:0;animation:xfu .6s cubic-bezier(.2,.7,.2,1) forwards}
.xhero{position:relative;overflow:hidden;background:#0B1220;color:#fff;border-radius:28px;padding:26px 22px;display:grid;grid-template-columns:1fr 150px;gap:8px;min-height:250px}
.xhero .eb{font-size:13px;font-weight:600;color:#93C5FD}
.xhero h1.hh{margin:8px 0 0;font-size:31px;line-height:1.3;font-weight:700;max-width:260px}
.xhero p{margin:10px 0 18px;color:#94A3B8;max-width:260px}
.xhero .btn.p{padding:0 22px;min-height:52px;font-size:16px;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.xpap{position:absolute;right:-18px;top:36px;width:128px;height:168px;background:#fff;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:7px;box-shadow:0 14px 30px rgba(0,0,0,.45);transform:rotate(8deg);animation:xflt 5s ease-in-out infinite}
.xpap i{display:block;height:5px;border-radius:3px;background:#E2E8F0}.xpap i:first-child{width:26px;height:26px;border-radius:50%;background:#2563EB}.xpap i.d{background:#0F172A;height:7px;width:75%}.xpap i.b{background:#BFDBFE;width:55%;height:7px}
.xbdg{position:absolute;right:16px;bottom:16px;background:#16A34A;color:#fff;font-weight:600;font-size:12.5px;border-radius:999px;padding:6px 12px;opacity:0;animation:xpop .5s .8s cubic-bezier(.3,1.4,.5,1) forwards}
.xcont{display:flex;align-items:center;gap:14px;margin-top:16px;padding:14px 16px;background:var(--panel);border:1px solid var(--line);border-radius:18px;color:inherit;text-decoration:none;animation-delay:.15s}
.xcont[hidden]{display:none}.xcont>div{flex:1}.xcont b{font-size:15px}
.xpb{height:6px;border-radius:3px;background:var(--line);margin:8px 0 6px;overflow:hidden}.xpb i{display:block;height:100%;width:0;background:var(--brand);border-radius:3px;transform-origin:left;animation:xgrow 1s .3s ease-out both}
.xcont small{color:var(--mute);font-size:12.5px}
.xtiles{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:16px}
.xtile{display:flex;flex-direction:column;gap:8px;padding:14px;border-radius:18px;background:var(--panel);border:1px solid var(--line);color:inherit;text-decoration:none;min-height:112px;transition:transform .15s,box-shadow .2s;animation-delay:.3s}
.xtile:hover{box-shadow:0 10px 24px rgba(15,23,42,.08)}
.xtile i{width:40px;height:40px;border-radius:12px;background:var(--soft);display:flex;align-items:center;justify-content:center}
.xtile b{font-size:15.5px}.xtile span{font-size:13px;color:var(--mute)}
.xtrust{text-align:center;font-size:12.5px;color:var(--mute);padding:18px 0 90px}
@media(min-width:760px){.xhero{grid-template-columns:1fr 320px;min-height:320px;padding:44px}.xhero h1.hh{font-size:42px;max-width:440px}.xhero p{max-width:420px;font-size:17px}.xpap{right:60px;top:50px;width:190px;height:250px}.xtiles{grid-template-columns:repeat(4,1fr)}}
@media(prefers-reduced-motion:reduce){.fu,.xfu,.xpap,.xbdg,.xpb i,.tool>*,.tcards>a,.guide>*,.pane.on,.card,input.bad{animation:none!important;opacity:1!important}}
@media print{.xfu,.tool>*,.card{animation:none!important;opacity:1!important}}
a.btn{color:inherit;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
a.btn.p{color:var(--bi)}
.pv{text-align:center;padding:10px 0}

/* ===== v3: all pages ===== */
input,textarea,select{width:100%;min-width:0}input[type=email],input[type=tel],input[type=text]{width:100%!important}
details{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:0 16px;margin:0 0 12px;overflow:hidden}
details>summary{list-style:none;min-height:56px;display:flex;align-items:center;gap:10px;padding:8px 0;font-weight:600;font-size:16px}
details>summary::-webkit-details-marker{display:none}
details>summary::after{content:"";width:9px;height:9px;margin-left:auto;border-right:2px solid var(--mute);border-bottom:2px solid var(--mute);transform:rotate(45deg);transition:transform .25s;flex:none}
details[open]>summary::after{transform:rotate(-135deg)}
details[open]>*:not(summary){animation:xfu .35s cubic-bezier(.2,.7,.2,1)}
details[open]{padding-bottom:12px}
.phd{display:flex;align-items:center;gap:14px;margin:8px 0 6px}
.phi{width:48px;height:48px;border-radius:14px;background:var(--soft);display:flex;align-items:center;justify-content:center;flex:none}
.phd h2{margin:0;font-size:26px;line-height:1.25;letter-spacing:-.01em}
.tool,.guide.tool{max-width:760px;margin:0 auto;padding:18px 18px 100px}
.guide.tool>h2{display:none}
.xsc{display:flex;align-items:center;gap:14px;background:#0B1220;color:#fff;border-radius:20px;padding:14px 16px;margin:6px 0 16px}
.xsc>div{flex:1}.xsc b{display:block;font-size:16px}.xsc small{color:#94A3B8;font-size:13px}
.xsc .btn{background:#16233F;border-color:transparent;color:#fff}
.xsc circle.t{stroke:#1E2A44}.xsc circle.v{stroke:#60A5FA;stroke-dasharray:163.4;stroke-dashoffset:163.4;transition:stroke-dashoffset 1s .2s cubic-bezier(.2,.7,.2,1)}
.xsc text{fill:#fff;font-weight:700;font-size:15px}
.xprog{height:5px;border-radius:3px;background:var(--line);margin:0 0 12px;overflow:hidden}
.xprog i{display:block;height:100%;width:0;background:var(--brand);border-radius:3px;transition:width .5s cubic-bezier(.2,.7,.2,1)}
#builder{padding-bottom:110px}
.pill{transition:background .2s,color .2s,transform .15s}.pill.on{box-shadow:0 6px 14px color-mix(in srgb,var(--brand) 26%,transparent)}
#priv{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:18px;line-height:1.7}
@media(prefers-reduced-motion:reduce){details[open]>*:not(summary){animation:none!important}.xprog i,.xsc circle.v{transition:none}}
.xsc{border:1px solid #1E2A44;background:linear-gradient(0deg,#0F1A30,#0F1A30)}
:root[data-theme=dark] .xsc{background:#111A2E}

/* ===== v4: build section ===== */
section.ed{background:transparent;border:0;padding:0}
.xbh{background:#0B1220;color:#fff;border-radius:22px;padding:16px 18px 18px;margin-bottom:12px;border:1px solid #1E2A44}
.xbt{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;font-weight:600;color:#93C5FD}
.xbt b{color:#fff}.xsv{background:#0F2A22;color:#4ADE80;border-radius:999px;padding:4px 10px;font-size:12px;opacity:0;animation:xpop .5s .4s cubic-bezier(.3,1.4,.5,1) forwards}
.xbh h2{margin:8px 0 2px;font-size:24px;line-height:1.3;font-weight:700}
.xbh p{margin:0 0 12px;color:#94A3B8;font-size:14px;line-height:1.5;min-height:21px}
.xbh .xprog{background:#1E2A44;margin:0}.xbh .xprog i{background:#60A5FA}
.rail{padding:2px 0 12px;gap:8px}
.pill{font-size:0;gap:0;padding:4px;min-height:36px;min-width:36px;justify-content:center;background:var(--panel)}
.pill i{width:26px;height:26px;font-size:13px}
.pill.on{font-size:14px;gap:8px;padding:4px 14px 4px 5px}
.pane>h2.q,.pane>h2.q+.sub{display:none}
.pane.on{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:6px 16px 18px;box-shadow:0 6px 20px rgba(15,23,42,.06)}
label{color:var(--ink);font-weight:600;font-size:14px;margin:16px 0 6px}
input,textarea,select{min-height:52px;padding:12px 14px;font-size:16px}
textarea{min-height:110px}
input[type=range]{min-height:0;padding:0}input[type=file]{min-height:0;padding:10px}input[type=checkbox],input[type=radio]{min-height:0;width:auto}
.chips:has(>[data-lv]){display:grid;grid-template-columns:1fr 1fr;background:var(--line);border-radius:12px;padding:4px;gap:4px;margin:14px 0 8px}
.chips>[data-lv]{min-height:44px;border:0;border-radius:9px;background:transparent;font-weight:600;font-size:15px;padding:0}
.chips>[data-lv].sel{background:var(--panel);color:var(--ink);box-shadow:0 1px 3px rgba(15,23,42,.15)}
.chip{min-height:38px;padding:4px 14px;transition:transform .15s,background .2s}.chip:active{transform:scale(.96)}
.add{min-height:48px;border-radius:12px;border:1.5px dashed var(--line);background:transparent;color:var(--brand)}
.nav{gap:10px}.nav #back{min-width:96px}.nav #next{flex:1;min-height:54px;font-size:17px}
@media(max-width:959px){.nav{position:sticky;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:5;background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:10px;margin-top:14px;box-shadow:0 10px 24px rgba(15,23,42,.12)}}
@media(prefers-reduced-motion:reduce){.xsv{animation:none!important;opacity:1!important}}

/* ===== v5: match artifact design (templates, preview, export) ===== */
.tpls{grid-template-columns:1fr 1fr;gap:16px 14px;margin-top:4px}
.tp{position:relative;background:transparent;border:0;padding:0;text-align:left;display:flex;flex-direction:column;gap:4px;font-size:15px;font-weight:600;color:var(--ink);min-height:44px;opacity:0;animation:xfu .5s cubic-bezier(.2,.7,.2,1) forwards}
.tp:nth-child(2){animation-delay:.08s}.tp:nth-child(3){animation-delay:.16s}.tp:nth-child(n+4){animation-delay:.24s}
.tp svg{width:100%;height:150px;border-radius:12px;background:#fff;border:1px solid var(--line);margin:0 0 4px}
.tp small{font-size:13px;color:var(--mute);font-weight:400}
.tp.on{border:0}.tp.on svg{outline:2px solid var(--brand);outline-offset:3px;border-color:transparent;animation:xring 2.4s 1s ease-in-out infinite}
.tp.on::after{content:"\2713";position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:var(--brand);color:var(--bi);font-size:14px;display:flex;align-items:center;justify-content:center;animation:xpop .4s cubic-bezier(.3,1.4,.5,1)}
@keyframes xring{50%{outline-offset:6px}}
.sw{gap:10px}.sw button{width:44px;height:44px;border-width:3px}.sw button.on{box-shadow:0 0 0 2.5px var(--brand)}
.xmore{margin:16px 0 4px}
.score{background:#0F1A30;color:#fff;border:1px solid #1E2A44;border-radius:20px;padding:14px 16px}
:root[data-theme=dark] .score{background:#111A2E}
.score .ring b{color:#fff}.score circle:first-child{stroke:#1E2A44}.score #arc{stroke:#60A5FA;transition:stroke-dasharray .9s cubic-bezier(.2,.7,.2,1)}
.score h4{color:#fff}.score .tips,.score .tips li{color:#94A3B8}
.stage .tl{gap:10px}.stage .tl a{min-height:44px;padding:0 16px}
#wrap{margin:0;box-shadow:none;background:transparent;overflow:visible}

.xexp{display:none}

@media(min-width:960px){.stage{position:sticky;top:84px;align-self:start;max-height:calc(100vh - 100px);overflow:auto}}
@media(prefers-reduced-motion:reduce){.tp,.tp.on svg,.tp.on::after{animation:none!important;opacity:1!important}}

/* ===== v6: desktop layout like design, validation, page transitions ===== */
@view-transition{navigation:auto}
@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}}
.xerr{color:#DC2626;font-size:13px;font-weight:500;margin-top:6px}.xerr[hidden]{display:none}
:root[data-theme=dark] .xerr{color:#F87171}
@media(min-width:960px){
#builder{grid-template-columns:minmax(0,1fr) 440px;max-width:1400px;gap:22px;padding-bottom:40px}
section.ed{display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:22px;align-items:start}
.xbh{grid-column:1/-1}
.rail{grid-column:1;grid-row:2/span 30;flex-direction:column;overflow:visible;position:sticky;top:84px;gap:6px;padding:0}
.pill{font-size:15px;gap:12px;padding:6px 14px 6px 8px;min-height:46px;justify-content:flex-start;width:100%;border-radius:12px}
.pill.on{font-size:15px}
.pane,.nav{grid-column:2}
.stage{background:color-mix(in srgb,var(--line) 65%,transparent);border-radius:22px;padding:18px}
#wrap{margin:0;box-shadow:none}
}
.row:has(>:only-child){grid-template-columns:minmax(0,1fr)!important}
.row>div{min-width:0}

/* ===== v7: theme switch, desktop-only export, admin ===== */
:root[data-theme=dark]{color-scheme:dark}:root[data-theme=light]{color-scheme:light}
.btn.ic{width:44px;padding:0;display:inline-flex;align-items:center;justify-content:center}
:root[data-theme=dark] .i-moon{display:none}:root[data-theme=light] .i-sun{display:none}
.xexp{display:none}
@media(min-width:960px){.xexp{display:flex;gap:10px;position:sticky;bottom:0;margin-top:14px;background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:10px;box-shadow:0 10px 24px rgba(15,23,42,.12)}.xexp .p{flex:1;min-height:50px;font-size:16px}.xexp .btn{min-height:50px}}
#adm{background:var(--bg);color:var(--ink);font:15px/1.6 "Inter","Hind Siliguri",sans-serif;padding:0 0 60px}
.ad-top{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;background:color-mix(in srgb,var(--panel) 92%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.ad-brand{display:flex;align-items:center;gap:10px}.ad-brand i{width:40px;height:40px;border-radius:12px;background:var(--brand);color:var(--bi);display:flex;align-items:center;justify-content:center}
.ad-brand b{display:block;font-size:17px;line-height:1.2}.ad-brand small{color:var(--mute);font-size:12.5px}
.ad-act{display:flex;gap:8px}
.ad-b{min-height:44px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;font-weight:600;font-size:14.5px;cursor:pointer;transition:transform .15s,box-shadow .2s}
.ad-b:active{transform:scale(.96)}.ad-b.p{background:var(--brand);color:var(--bi);border-color:transparent;box-shadow:0 6px 14px color-mix(in srgb,var(--brand) 26%,transparent)}.ad-b.d{color:#DC2626}
:root[data-theme=dark] .ad-b.d{color:#F87171}
.ad-w{max-width:720px;margin:0 auto;padding:16px}
.ad-in{opacity:0;animation:xfu .5s cubic-bezier(.2,.7,.2,1) forwards}
.ad-login{max-width:420px;margin:7vh auto 0;padding:28px 22px;text-align:center;background:#0B1220;color:#fff;border-radius:28px;border:1px solid #1E2A44;display:flex;flex-direction:column;gap:10px}
.ad-login h2{margin:4px 0 0;font-size:24px}.ad-login p{margin:0 0 8px;color:#94A3B8}
.ad-lock{width:64px;height:64px;border-radius:20px;background:#2563EB;margin:0 auto;display:flex;align-items:center;justify-content:center;animation:xflt 4s ease-in-out infinite}
.ad-i{width:100%;min-height:52px;padding:0 14px;border-radius:12px;border:1.5px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;font-size:16px;box-sizing:border-box}
.ad-login .ad-i{background:#111A2E;border-color:#1E2A44;color:#fff}.ad-i:focus{outline:0;border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 18%,transparent)}
.ad-err{color:#F87171;font-size:13.5px;min-height:20px}
.ad-stat{display:flex;flex-direction:column;gap:12px;background:#0B1220;color:#fff;border-radius:24px;padding:18px;margin-bottom:14px;border:1px solid #1E2A44}
.ad-stat b{font-size:40px;line-height:1;margin-right:8px}.ad-stat small{color:#94A3B8;font-size:14px}
.ad-chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}
.ad-c{flex:none;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid #1E2A44;background:#111A2E;color:#CBD5E1;font:inherit;font-weight:600;font-size:14px;cursor:pointer;transition:background .2s,transform .15s}
.ad-c em{font-style:normal;opacity:.7;margin-left:4px}.ad-c.on{background:#2563EB;border-color:transparent;color:#fff}
.ad-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:14px 16px;margin-bottom:12px}
.ad-t{display:inline-block;font-size:12px;font-weight:700;border-radius:999px;padding:3px 10px;background:var(--soft);color:var(--brand)}
.ad-t.t-company{background:#CCFBF1;color:#0F766E}.ad-t.t-inst{background:#EDE9FE;color:#6D28D9}.ad-t.t-ai{background:#FEF3C7;color:#B45309}
.ad-n{font-size:19px;font-weight:600;margin:8px 0 12px;word-break:break-word}
.ad-r{display:flex;gap:8px;flex-wrap:wrap}.ad-r .p{flex:1 1 140px}
.ad-empty{text-align:center;padding:36px 16px;background:var(--panel);border:1px dashed var(--line);border-radius:20px;margin-bottom:12px}
.ad-empty div{width:56px;height:56px;border-radius:50%;background:#DCFCE7;color:#15803D;font-size:28px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;animation:xpop .5s cubic-bezier(.3,1.4,.5,1)}
.ad-empty p{margin:2px 0 0;color:var(--mute)}
.ad-add{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:10px;margin-top:18px}
.ad-add small{color:var(--mute);margin-top:-8px}
@media(prefers-reduced-motion:reduce){.ad-in,.ad-lock,.ad-empty div{animation:none!important;opacity:1!important}}

/* ===== v8: creative ATS page ===== */
.xg{background:#0B1220;color:#fff;border:1px solid #1E2A44;border-radius:28px;padding:22px 20px 20px;text-align:center;margin:8px 0 18px;--gc:#F87171;position:relative;overflow:hidden;opacity:0;animation:xfu .6s cubic-bezier(.2,.7,.2,1) forwards}
.xg[data-tier=mid]{--gc:#FBBF24}.xg[data-tier=hi]{--gc:#4ADE80}
.xg-eb{font-size:13px;font-weight:600;color:#93C5FD;letter-spacing:.02em}
.xg-wrap{position:relative;width:250px;max-width:100%;margin:8px auto 0}
.xg-svg{width:100%;display:block}
.xg-t,.xg-v{fill:none;stroke-width:14;stroke-linecap:round}.xg-t{stroke:#1E2A44}
.xg-v{stroke:var(--gc);stroke-dasharray:251.3;stroke-dashoffset:251.3;transition:stroke-dashoffset 1.2s .2s cubic-bezier(.2,.7,.2,1),stroke .4s;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--gc) 55%,transparent))}
.xg-n{position:absolute;left:0;right:0;top:46px;display:flex;align-items:baseline;justify-content:center;gap:2px}
.xg-n b{font-size:50px;line-height:1;font-weight:700}.xg-n span{font-size:20px;color:#94A3B8;font-weight:600}
.xg-tier{min-height:30px;margin-top:2px}.xg-tier b{display:none;font-size:19px;color:var(--gc)}
.xg[data-tier=lo] .t-lo,.xg[data-tier=mid] .t-mid,.xg[data-tier=hi] .t-hi{display:block;animation:xpop .5s .5s cubic-bezier(.3,1.4,.5,1) both}
.xg-chips{display:flex;justify-content:center;gap:8px;margin-top:12px}
.xch{border-radius:999px;padding:6px 12px;font-size:13.5px;font-weight:600}.xch.ok{background:#0F2A22;color:#4ADE80}.xch.wn{background:#2D2410;color:#FBBF24}
.xg .btn.p{margin-top:16px;width:100%;min-height:52px;font-size:16px}
.atsb{padding:12px 16px}
.atsb>summary{font-size:16px}
.atsb li{padding:12px 14px;border-radius:14px;margin:8px 0;border:1px solid var(--line);background:var(--field);align-items:center;gap:12px;font-size:14.5px;opacity:0;animation:xfu .45s cubic-bezier(.2,.7,.2,1) forwards}
.atsb li:nth-child(2){animation-delay:.05s}.atsb li:nth-child(3){animation-delay:.1s}.atsb li:nth-child(4){animation-delay:.15s}.atsb li:nth-child(5){animation-delay:.2s}.atsb li:nth-child(6){animation-delay:.25s}.atsb li:nth-child(7){animation-delay:.3s}.atsb li:nth-child(n+8){animation-delay:.35s}
.atsb li i{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;font-style:normal}
.atsb li.ok i{background:#DCFCE7;color:#15803D}.atsb li.wn i{background:#FEF3C7;color:#B45309}
.atsb li.wn{background:color-mix(in srgb,#F59E0B 9%,var(--panel));border-color:color-mix(in srgb,#F59E0B 35%,var(--line))}
:root[data-theme=dark] .atsb li.ok i{background:#0F2A22;color:#4ADE80}:root[data-theme=dark] .atsb li.wn i{background:#2D2410;color:#FBBF24}
.kwtools{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.kwtools .btn{min-height:40px;font-size:14px;padding:0 14px}
.kwt{min-height:140px;font-size:15px}
.kwm{display:flex;align-items:center;gap:16px;margin:14px 0 6px}
.kwp{font-size:36px;font-weight:700;line-height:1}.kwp small{display:block;font-size:12.5px;font-weight:500;color:var(--mute);margin-top:4px}
.kwbar{flex:1;height:10px;border-radius:5px;background:var(--line);overflow:hidden}.kwbar i{display:block;height:100%;background:var(--brand);border-radius:5px;transform-origin:left;animation:xgrow .9s ease-out both}
.kwc span{border-color:transparent;animation:xpop .4s cubic-bezier(.3,1.4,.5,1) both}
.kwc span:nth-child(2){animation-delay:.04s}.kwc span:nth-child(3){animation-delay:.08s}.kwc span:nth-child(4){animation-delay:.12s}.kwc span:nth-child(5){animation-delay:.16s}.kwc span:nth-child(n+6){animation-delay:.2s}
.kwc .m{background:#DCFCE7;color:#15803D}.kwc .x{background:#FEF3C7;color:#B45309}
:root[data-theme=dark] .kwc .m{background:#0F2A22;color:#4ADE80}:root[data-theme=dark] .kwc .x{background:#2D2410;color:#FBBF24}
@media(prefers-reduced-motion:reduce){.xg,.atsb li,.kwc span,.kwbar i,.xg[data-tier] b{animation:none!important;opacity:1!important}.xg-v{transition:none}}

/* ===== v9: navigation, guide, contact ===== */
.bnav{display:none}
@media(max-width:759px){
.tabs{display:none}body{padding-bottom:92px}
.bnav{display:flex;position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:40;gap:2px;padding:6px;background:color-mix(in srgb,var(--panel) 90%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 30px rgba(15,23,42,.18)}
.bnav a{flex:1;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:54px;border-radius:18px;font-size:11.5px;font-weight:600;color:var(--mute);text-decoration:none;transition:color .2s,background .2s,transform .15s}
.bnav a:active{transform:scale(.94)}.bnav a.on{color:var(--brand);background:var(--soft)}.bnav a.on svg{animation:xpop .45s cubic-bezier(.3,1.4,.5,1)}
.bnav a.on::after{content:"";position:absolute;top:3px;width:18px;height:3px;border-radius:2px;background:var(--brand)}
.bar{top:calc(76px + env(safe-area-inset-top,0px));bottom:auto!important;left:12px;right:12px}
#builder{padding-top:80px;padding-bottom:110px}
.nav{bottom:calc(86px + env(safe-area-inset-bottom,0px))}
}
@media print{.bnav{display:none!important}}
.rv{opacity:0;transform:translateY(16px);transition:opacity .6s cubic-bezier(.2,.7,.2,1),transform .6s cubic-bezier(.2,.7,.2,1)}.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}
.gh{background:#0B1220;color:#fff;border:1px solid #1E2A44;border-radius:24px;padding:22px 20px;margin:10px 0 16px}
.gh-e{font-size:13px;font-weight:600;color:#93C5FD}.gh h3{margin:6px 0 6px;font-size:26px;line-height:1.3}.gh p{margin:0;color:#94A3B8}
.gr{list-style:none;margin:0 0 16px;padding:0;position:relative}
.gr li{display:flex;gap:14px;padding:14px 16px;margin-bottom:10px;background:var(--panel);border:1px solid var(--line);border-radius:18px;align-items:flex-start}
.gr li:nth-child(2){transition-delay:.06s}.gr li:nth-child(3){transition-delay:.12s}.gr li:nth-child(4){transition-delay:.18s}.gr li:nth-child(5){transition-delay:.24s}
.gn{flex:none;width:34px;height:34px;border-radius:50%;background:var(--brand);color:var(--bi);display:flex;align-items:center;justify-content:center;font-weight:700}
.gr b{font-size:16px}.gr p{margin:4px 0 0;color:var(--mute);font-size:14.5px;line-height:1.55}
.gdd{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.gd{border-radius:18px;padding:14px 16px;border:1px solid var(--line);background:var(--panel)}.gd b{font-size:15px}.gd ul{margin:8px 0 0;padding-left:18px;font-size:14px;line-height:1.7;color:var(--mute)}
.gd.ok{border-top:4px solid #16A34A}.gd.no{border-top:4px solid #DC2626}
.gck{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:16px;margin-bottom:18px}
.gck-h{display:flex;justify-content:space-between;align-items:center;font-size:16px}.gck-h span{color:var(--brand);font-weight:700}
.gck-b{height:8px;border-radius:4px;background:var(--line);margin:10px 0 8px;overflow:hidden}.gck-b i{display:block;height:100%;width:0;background:var(--brand);border-radius:4px;transition:width .5s cubic-bezier(.2,.7,.2,1)}
.gck ul{list-style:none;margin:0;padding:0}.gck li{display:flex;align-items:center;gap:12px;min-height:48px;padding:6px 4px;cursor:pointer;border-radius:12px;font-size:15px}
.gck li i{flex:none;width:26px;height:26px;border-radius:8px;border:2px solid var(--line);display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s,transform .2s}
.gck li.on i{background:var(--brand);border-color:var(--brand);transform:scale(1.05)}.gck li.on i::after{content:"\2713";color:var(--bi);font-size:15px;font-weight:700}
.gck li.on span{color:var(--mute);text-decoration:line-through}
.gck-d{margin-top:10px;padding:12px;border-radius:14px;background:#DCFCE7;color:#15803D;font-weight:600;text-align:center;animation:xpop .5s cubic-bezier(.3,1.4,.5,1)}
:root[data-theme=dark] .gck-d{background:#0F2A22;color:#4ADE80}
.gq{margin:6px 0 10px;font-size:18px}.gcta{width:100%;min-height:54px;margin-top:6px;font-size:17px}
@media(max-width:520px){.gdd{grid-template-columns:1fr}}
.cf,.ci{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:18px;margin-bottom:16px}
.cf h3,.ci h3{margin:0 0 4px;font-size:19px}.cf .chips{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 4px}
.cf-s{width:100%;min-height:54px;margin-top:14px;font-size:17px}.hp{position:absolute!important;left:-9999px;opacity:0;height:0;min-height:0!important;padding:0!important;border:0!important}
.cf-msg{margin-top:10px;font-weight:600;font-size:14.5px;min-height:20px}.cf-msg.ok{color:#15803D;animation:xpop .5s cubic-bezier(.3,1.4,.5,1)}.cf-msg.er{color:#DC2626}
:root[data-theme=dark] .cf-msg.ok{color:#4ADE80}:root[data-theme=dark] .cf-msg.er{color:#F87171}
.cr{display:flex;align-items:center;gap:12px;min-height:48px;color:inherit;text-decoration:none;font-weight:600}.cr svg{color:var(--brand)}
.cs{display:flex;gap:10px;margin-top:10px}.cb{width:48px;height:48px;border-radius:14px;background:var(--soft);color:var(--brand);display:flex;align-items:center;justify-content:center;transition:transform .15s}.cb:active{transform:scale(.92)}

/* ===== v10: reviews, admin tabs ===== */
.xrev{margin-top:22px}.xrh{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.xrh h2{margin:0;font-size:22px}.xrh p{margin:2px 0 0;color:var(--mute);font-size:14px}
.xrg{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px;align-items:stretch}
@media(max-width:759px){.xrg{grid-template-columns:minmax(0,1fr)}}
.xrs{background:#0B1220;color:#fff;border:1px solid #1E2A44;border-radius:22px;padding:18px}
.xav{display:flex;align-items:center;gap:14px;margin-bottom:12px}.xav b{font-size:46px;line-height:1}.xav small{color:#94A3B8}
.stf{position:relative;display:inline-block;font-size:20px;letter-spacing:2px;line-height:1}.stb{color:#1E2A44}.stv{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:#FBBF24;transition:width 1s cubic-bezier(.2,.7,.2,1)}
.xb{display:flex;align-items:center;gap:8px;font-size:12.5px;color:#94A3B8;margin:4px 0}.xb div{flex:1;height:7px;border-radius:4px;background:#1E2A44;overflow:hidden}.xb i{display:block;height:100%;width:0;background:#FBBF24;border-radius:4px;transition:width 1s .1s cubic-bezier(.2,.7,.2,1)}.xb em{font-style:normal;width:18px;text-align:right}
.xre{text-align:center;padding:10px 4px}.xrn{width:56px;height:56px;margin:0 auto 10px;border-radius:50%;background:#2D2410;color:#FBBF24;font-size:28px;display:flex;align-items:center;justify-content:center;animation:xflt 4s ease-in-out infinite}.xre b{display:block;font-size:17px}.xre p{margin:6px 0 0;color:#94A3B8;font-size:14px}
.xrw{overflow:hidden;border-radius:22px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.xrk{display:flex;gap:12px;width:max-content;padding:2px 0}.xrk.go{animation:xmar var(--d,40s) linear infinite}.xrw:hover .xrk,.xrw:active .xrk{animation-play-state:paused}
@keyframes xmar{to{transform:translateX(-50%)}}
.xrc{flex:none;width:260px;background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:14px 16px;box-sizing:border-box}
.xrt{display:flex;align-items:center;gap:10px}.xra{width:40px;height:40px;border-radius:50%;color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;flex:none}.xrt b{font-size:15px}.xrst{color:#F59E0B;letter-spacing:1px;font-size:14px}
.xrc p{margin:10px 0 0;font-size:14.5px;line-height:1.6;color:var(--ink);display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden}
@media(prefers-reduced-motion:reduce){.xrk.go{animation:none}.xrw{overflow-x:auto}.xrn{animation:none}}
.xmod{position:fixed;inset:0;z-index:100;background:rgba(2,6,23,.6);display:flex;align-items:flex-end;justify-content:center;animation:xfade .25s both}.xmod[hidden]{display:none}
@keyframes xfade{from{opacity:0}}
.xsh{position:relative;width:100%;max-width:520px;max-height:92vh;overflow:auto;background:var(--panel);border-radius:26px 26px 0 0;padding:22px 18px calc(22px + env(safe-area-inset-bottom,0px));animation:xup .35s cubic-bezier(.2,.8,.2,1) both}
@media(min-width:760px){.xmod{align-items:center}.xsh{border-radius:26px}}
@keyframes xup{from{transform:translateY(40px);opacity:0}}
.xsh h3{margin:0 0 10px;font-size:20px}.xx{position:absolute;right:12px;top:12px;width:44px;height:44px;border-radius:50%;border:0;background:var(--soft);color:var(--ink);font-size:16px}
.xst{display:flex;gap:6px;margin:6px 0 6px}.xst button{width:52px;height:52px;border:0;border-radius:14px;background:var(--soft);color:#CBD5E1;font-size:30px;line-height:1;transition:transform .15s,color .2s,background .2s}.xst button.on{color:#F59E0B;background:#FEF3C7;transform:scale(1.06)}.xst button:active{transform:scale(.9)}
.ad-tabs{display:flex;gap:8px;max-width:720px;margin:0 auto;padding:12px 16px 0}.ad-tabs button{flex:1;min-height:44px;border-radius:12px;border:1px solid var(--line);background:var(--panel);color:var(--ink);font:inherit;font-weight:600;font-size:14.5px;cursor:pointer}.ad-tabs button.on{background:var(--brand);color:var(--bi);border-color:transparent}
.ad-t.t-pending{background:#FEF3C7;color:#B45309}.ad-t.t-approved{background:#DCFCE7;color:#15803D}.ad-m{color:var(--mute);font-size:13px;margin:-6px 0 10px;word-break:break-word}
.ad-sx{color:#F59E0B;letter-spacing:1px;margin-left:8px}

/* ===== v11: real page sheets ===== */
#cv{position:absolute!important;left:-12000px;top:0;visibility:hidden;pointer-events:none;box-shadow:none!important}
#sheets{display:flex;flex-direction:column;gap:6px;width:794px;transform-origin:top left}
.shw{width:794px}.shw::after{content:attr(data-p);display:block;text-align:center;font:600 13px/1 Inter,sans-serif;color:var(--mute);padding:10px 0 16px}
.sheet{width:794px;overflow:hidden;position:relative;background:#fff;color:#1b2033;box-shadow:0 10px 40px rgba(20,24,60,.25);border-radius:3px;animation:xfu .5s cubic-bezier(.2,.7,.2,1) both}
.sheet .cv{box-sizing:border-box;overflow:hidden}.pgw{display:block}
@media(prefers-reduced-motion:reduce){.sheet{animation:none}}
@media print{#cv{display:none!important}#sheets{transform:none!important;display:block;width:auto}.shw{break-after:page;page-break-after:always}.shw:last-child{break-after:auto;page-break-after:auto}.shw::after{display:none}.sheet{box-shadow:none;border-radius:0;animation:none}}

/* ===== v12: slide system, emoji rating ===== */
.bnav{transition:transform .38s cubic-bezier(.2,.8,.2,1)}.bnav.hide{transform:translateY(calc(100% + 28px))}
body.bn-h .nav{bottom:calc(14px + env(safe-area-inset-bottom,0px))}.nav{transition:bottom .38s cubic-bezier(.2,.8,.2,1)}
.bar{isolation:isolate}.bar::before{content:"";position:absolute;top:6px;bottom:6px;left:6px;width:calc(50% - 6px);border-radius:999px;background:var(--brand);box-shadow:0 6px 14px color-mix(in srgb,var(--brand) 30%,transparent);transition:transform .38s cubic-bezier(.2,.8,.2,1);z-index:-1}
body[data-v=v] .bar::before{transform:translateX(100%)}.bar button.on{background:transparent!important;box-shadow:none!important}.bar button{transition:color .25s}.bar button.on{color:var(--bi)}
.xem{margin:6px 0 8px}.xem-stage{position:relative;height:104px;display:flex;align-items:center;justify-content:center}
.xem-face{font-size:76px;line-height:1;filter:drop-shadow(0 6px 12px rgba(0,0,0,.18));user-select:none}
.xem-face.go{animation:var(--fa) .9s both}
.xem[data-r="1"]{--fa:xmad;--ac:#EF4444}.xem[data-r="2"]{--fa:xsad;--ac:#F97316}.xem[data-r="3"]{--fa:xokay;--ac:#EAB308}.xem[data-r="4"]{--fa:xhop;--ac:#22C55E}.xem[data-r="5"]{--fa:xwow;--ac:#06B6D4}
.xem[data-r="2"] .xem-face{filter:grayscale(.35) drop-shadow(0 6px 12px rgba(0,0,0,.18))}
@keyframes xmad{0%,100%{transform:translateX(0) scale(1)}15%{transform:translateX(-9px) rotate(-6deg) scale(1.12)}30%{transform:translateX(9px) rotate(6deg) scale(1.12)}45%{transform:translateX(-7px) rotate(-4deg)}60%{transform:translateX(7px) rotate(4deg)}80%{transform:translateX(-3px)}}
@keyframes xsad{0%{transform:scale(1.15) translateY(-10px)}35%{transform:scale(.92) translateY(8px) rotate(-8deg)}65%{transform:scale(.95) translateY(5px) rotate(5deg)}100%{transform:scale(.96) translateY(4px)}}
@keyframes xokay{0%{transform:scale(.85)}50%{transform:scale(1.08)}100%{transform:scale(1)}}
@keyframes xhop{0%{transform:translateY(0) scale(.9)}30%{transform:translateY(-22px) scale(1.15)}55%{transform:translateY(0) scale(.96,1.04)}75%{transform:translateY(-9px)}100%{transform:translateY(0) scale(1)}}
@keyframes xwow{0%{transform:scale(.6) rotate(0)}30%{transform:scale(1.3) rotate(-14deg) translateY(-14px)}60%{transform:scale(1.15) rotate(360deg) translateY(-6px)}100%{transform:scale(1) rotate(360deg)}}
.xem-sp{position:absolute;inset:0;pointer-events:none}.xem-sp i{position:absolute;left:50%;top:50%;font-style:normal;font-size:18px;opacity:0;animation:xsp .9s ease-out forwards}
@keyframes xsp{0%{transform:translate(-50%,-50%) scale(.3);opacity:1}100%{transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(1.2);opacity:0}}
.xem-txt{text-align:center;font-weight:700;font-size:17px;min-height:26px;color:var(--ink);transition:color .3s}.xem[data-r]:not([data-r="0"]) .xem-txt{color:var(--ac)}
.xem-track{--p:0;position:relative;height:68px;margin:6px 0 0;display:flex;align-items:center;justify-content:space-between;touch-action:none;cursor:pointer;outline:0;border-radius:18px}
.xem-track:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 35%,transparent)}
.xem-line,.xem-fill{position:absolute;left:24px;top:50%;height:8px;margin-top:-4px;border-radius:4px}.xem-line{right:24px;background:var(--line)}
.xem-fill{width:calc((100% - 48px) * var(--p));background:linear-gradient(90deg,#EF4444,#F97316 25%,#EAB308 50%,#22C55E 75%,#06B6D4);transition:width .35s cubic-bezier(.2,.8,.2,1)}
.xem-fill{background-size:calc(100% / max(var(--p),.001)) 100%;background-size:auto}
.xem-ring{position:absolute;top:50%;left:calc(24px + (100% - 48px) * var(--p) - 30px);width:60px;height:60px;margin-top:-30px;border-radius:50%;background:var(--panel);border:3px solid var(--ac,var(--line));box-shadow:0 8px 20px rgba(15,23,42,.18);transition:left .35s cubic-bezier(.2,.8,.2,1),border-color .3s,opacity .2s;opacity:0}.xem:not([data-r="0"]) .xem-ring{opacity:1}
.xem-track button{position:relative;z-index:1;width:48px;height:48px;border:0;background:transparent;font-size:28px;line-height:1;padding:0;opacity:.55;filter:grayscale(.6);transition:transform .3s cubic-bezier(.3,1.4,.5,1),opacity .2s,filter .2s;cursor:pointer}
.xem-track button.on{opacity:1;filter:none;transform:scale(1.35)}
.xmood{font-size:34px;line-height:1;animation:xhop 1.2s .4s both}.xav{align-items:center}
.xrst small{color:var(--mute);font-weight:600;letter-spacing:0;margin-left:2px}.xb span{width:24px;font-size:15px}
@media(prefers-reduced-motion:reduce){.xem-face.go,.xmood,.xem-sp i{animation:none!important}.xem-ring,.xem-fill,.bar::before,.bnav{transition:none}}

/* ===== v13: template picker, palettes, new templates ===== */
.tpls{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 14px}.tpf{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}
.tp{display:flex;flex-direction:column;gap:2px;align-items:flex-start;text-align:left}.tp b{font-size:15px;margin-top:6px}.tp small{font-size:12.5px;color:var(--mute);font-weight:400}
.tpv{display:block;width:100%;aspect-ratio:794/1123;overflow:hidden;position:relative;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 6px 16px rgba(15,23,42,.08);transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
.tp:active .tpv{transform:scale(.97)}.tp:hover .tpv{box-shadow:0 12px 26px rgba(15,23,42,.16)}
.tpv-in{position:absolute;left:0;top:0;width:794px;height:1123px;transform-origin:top left;transform:scale(var(--k,.2));overflow:hidden;background:#fff;color:#1b2033;font-family:var(--cf);line-height:var(--lh,1.55);pointer-events:none}
.tpv-in .cv{min-height:1123px;box-sizing:border-box}
.tp svg{display:none}
.tpb{font-style:normal;font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 9px;margin-top:4px}.tpb.a{background:#DCFCE7;color:#15803D}.tpb.d{background:#EDE9FE;color:#6D28D9}
:root[data-theme=dark] .tpb.a{background:#0F2A22;color:#4ADE80}:root[data-theme=dark] .tpb.d{background:#241B3F;color:#A78BFA}
.tp.on .tpv{outline:3px solid var(--brand);outline-offset:3px;border-color:transparent;animation:xring 2.4s 1s ease-in-out infinite}
.sw{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.swn{flex-basis:100%;font-size:13px;color:var(--mute);font-weight:600}
.swc{position:relative;width:44px;height:44px;border-radius:50%;border:2px dashed var(--line);display:flex;align-items:center;justify-content:center;color:var(--mute);font-size:20px;cursor:pointer;overflow:hidden}.swc input{position:absolute;inset:-8px;opacity:0;cursor:pointer;width:70px;height:70px;min-height:0}
/* Executive */
.cv.ex{padding:46px 54px}.cv.ex .hd{border:0;border-top:4px solid var(--ac);border-bottom:1px solid #1b2033;padding:18px 0 16px}.cv.ex h1{font-size:34px;letter-spacing:.09em}.cv.ex .rl{letter-spacing:.14em;text-transform:uppercase;font-size:12.5px;color:var(--acd)}
.cv.ex h3{border:0;color:var(--ac);text-transform:uppercase;letter-spacing:.16em;font-size:12.5px;margin-bottom:6px}.cv.ex h3::after{content:"";display:block;height:2px;width:34px;background:var(--ac);margin-top:6px}
/* Compact */
.cv.cm .hd{padding:26px 34px 10px;border-bottom:2px solid var(--ac)}.cv.cm .mn{padding:2px 34px 24px}.cv.cm h1{font-size:25px}.cv.cm h3{font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.cv.cm p,.cv.cm .bl li{font-size:calc(12.4px*var(--fz,1))}.cv.cm .it{font-size:calc(13px*var(--fz,1))}.cv.cm .hd .ph{margin:0 0 12px;width:70px;height:70px}
/* Timeline */
.cv.tl .hd{border-bottom:0;padding-bottom:10px}.cv.tl .sc,.cv.tl .sx{position:relative;display:block;border:0;padding:12px 0 4px 30px}
.cv.tl .sc::before,.cv.tl .sx::before{content:"";position:absolute;left:5px;top:24px;bottom:-12px;width:2px;background:var(--ac30)}
.cv.tl .sc h3,.cv.tl .sx h3{border:0;position:relative;margin:0 0 6px;font-size:14px;text-transform:uppercase;letter-spacing:.1em;color:var(--ac)}
.cv.tl .sc h3::before,.cv.tl .sx h3::before{content:"";position:absolute;left:-30px;top:3px;width:12px;height:12px;border-radius:50%;background:var(--ac);box-shadow:0 0 0 4px var(--soft2)}
/* Elegant */
.cv.el{background:#fff;padding:42px 50px}.cv.el .hd{flex-direction:column;text-align:center;gap:10px;margin-bottom:20px}.cv.el .ct{justify-content:center}.cv.el h1{font-size:36px;font-weight:600}
.cv.el .rl{color:var(--ac);letter-spacing:.12em;text-transform:uppercase;font-size:12.5px}
.cv.el .cardx{background:transparent;border:0;border-top:1px solid #d5d8e3;border-radius:0;padding:14px 0 6px;margin:0}.cv.el h3{color:var(--ac);text-transform:uppercase;letter-spacing:.14em;font-size:12.5px}
@media(prefers-reduced-motion:reduce){.tp,.tp.on .tpv{animation:none!important;opacity:1!important}.tpv{transition:none}}
/* ===== v14: stop page-wide horizontal overflow (preview sheets are 794px wide) ===== */
#wrap{overflow:hidden!important;position:relative}
html,body{max-width:100%;overflow-x:clip}
#wrap{contain:layout paint}
#sheets{position:absolute;left:0;top:0}

/* ===== v15: Qodrix logo system ===== */
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit;min-width:0}
.lg-m{width:36px;height:32px;flex:none;overflow:visible}
.lg-t{display:flex;flex-direction:column;line-height:1.05;min-width:0}.lg-t b{font-size:19px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.lg-t small{font-size:10.5px;font-weight:500;color:var(--mute);letter-spacing:.14em;margin-top:2px}
.lgp{stroke-dasharray:420;stroke-dashoffset:420;animation:lgd 1.1s .1s cubic-bezier(.4,0,.2,1) forwards}.lgp+.lgp{animation-delay:.35s}
@keyframes lgd{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.lgp{animation:none;stroke-dashoffset:0}}

.kwc .p{background:#E0F2FE;color:#0369A1;border-color:transparent;animation:xpop .4s cubic-bezier(.3,1.4,.5,1) both}
:root[data-theme=dark] .kwc .p{background:#0C2A3F;color:#7DD3FC}

/* ===== v16: install button + user manual ===== */
[data-ins][hidden],[data-insbox][hidden],[data-insdone][hidden]{display:none!important}
.ins-h{flex:none;padding:8px 10px}
.xins,.xhelp{display:flex;align-items:center;gap:14px;background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:14px 16px;margin:12px 0;color:inherit;text-decoration:none}
.xins>i,.xhelp>i{flex:none;width:48px;height:48px;border-radius:14px;background:var(--soft);display:flex;align-items:center;justify-content:center;color:var(--brand);font-style:normal}
.xins>div,.xhelp>div{flex:1;min-width:0}
.xins b,.xhelp b{display:block;font-size:16px;line-height:1.35}
.xins small,.xhelp small{display:block;color:var(--mute);font-size:13.5px;line-height:1.45;margin-top:2px}
.xins .btn{flex:none}
.xhelp>span{flex:none;color:var(--brand);font-weight:700;font-size:20px}
.xhelp:active{transform:scale(.985)}
.ist{list-style:none;margin:10px 0 0;padding:0;counter-reset:s}
.ist li{counter-increment:s;display:flex;gap:12px;padding:11px 0;border-top:1px solid var(--line);align-items:flex-start;line-height:1.55;font-size:15px}
.ist li:first-child{border-top:0}
.ist li::before{content:counter(s);flex:none;width:28px;height:28px;border-radius:50%;background:var(--brand);color:var(--bi);font-weight:700;font-size:14px;display:flex;align-items:center;justify-content:center;margin-top:-1px}
.ist svg{vertical-align:-5px;margin:0 3px;color:var(--brand)}
.insn{background:var(--soft);border-radius:14px;padding:10px 12px;font-size:14.5px;line-height:1.55;margin:10px 0 4px}
.insl{display:inline-block;margin-top:10px;font-weight:600;color:var(--brand);text-decoration:none}
#insm .xsh p.lead{margin:0 0 4px;color:var(--mute);font-size:14.5px;line-height:1.55}

/* manual page */
html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.mn .gh p{color:#CBD5E1;margin:0}
.mj{display:flex;gap:8px;overflow-x:auto;margin:4px -18px 14px;padding:2px 18px 6px;scrollbar-width:none}
.mj::-webkit-scrollbar{display:none}
.mj a{flex:none;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--panel);color:inherit;text-decoration:none;font-weight:600;font-size:14px}
.mj a:active{background:var(--soft)}
.mc{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:16px;margin-bottom:14px;scroll-margin-top:76px}
.mh{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.mh h3{margin:0;font-size:19px;line-height:1.3}
.md{background:var(--soft);border-radius:16px;padding:12px;display:flex;justify-content:center;margin:0 0 12px}
.md svg{max-width:100%;height:auto;display:block}
.mc p{margin:0 0 8px;color:var(--ink);font-size:15px;line-height:1.65}
.mc ul{margin:6px 0 0;padding-left:20px;font-size:14.5px;line-height:1.6;color:var(--ink)}
.mc ul li{margin-bottom:5px}
.mc ul li::marker{color:var(--brand)}
.mpf{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
@media(max-width:560px){.mpf{grid-template-columns:1fr}}
.mpf>div{border:1px solid var(--line);border-radius:18px;padding:12px;background:var(--bg)}
.mpf h4{margin:0 0 8px;font-size:16px}
.mpf .md{margin-bottom:6px}
.mpf .ist li{font-size:14.5px;padding:9px 0}
.mcta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:4px 0 6px}
.mok{font-weight:600;color:var(--ok)}
.mn .gq{margin:20px 0 8px;font-size:20px}
.mn details p{margin:0 0 12px;color:var(--ink);font-size:15px;line-height:1.65}
.mfin{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
