@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-latin-500-normal.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-latin-700-normal.woff2) format("woff2");font-weight:600 700;font-display:swap}@font-face{font-family:Mrs Saint Delafield;src:url(/fonts/mrs-saint-delafield-latin-400-normal.woff2) format("woff2");font-weight:400;font-display:swap}html{-webkit-text-size-adjust:100%}body{margin:0}:root{padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}img{max-width:100%}a{color:var(--violet)}:root{--bg:#f6f2fb;--surface:#fff;--ink:#1f1633;--muted:#675e7c;--line:#e4dcf2;--violet:#6b3fe3;--violet-ink:#fff;--violet-soft:#ede5fd;--lilac:#e3d7fb;--lavender:#d6c8f7;--peach:#ffe0cc;--peach-ink:#7a3b12;--mint:#d3f1e2;--mint-ink:#16603f;--rose:#fbd9e3;--rose-ink:#8a2343;--shadow:0 10px 30px -18px rgba(70,35,160,.45);--font:"DM Sans",ui-rounded,"Segoe UI",system-ui,-apple-system,sans-serif;--r-lg:28px;--r-md:20px;--r-sm:14px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#140f1e;--surface:#1f1730;--ink:#f2edfb;--muted:#ada3c4;--line:#33284a;--violet:#9d7dff;--violet-ink:#140f1e;--violet-soft:#2a2042;--lilac:#2e2348;--lavender:#3a2c5c;--peach:#4a2d1e;--peach-ink:#ffc9a6;--mint:#173a2b;--mint-ink:#9fe3c0;--rose:#43202d;--rose-ink:#ffb3c8;--shadow:0 10px 30px -18px rgba(0,0,0,.8);color-scheme:dark}}:root[data-theme=dark]{--bg:#140f1e;--surface:#1f1730;--ink:#f2edfb;--muted:#ada3c4;--line:#33284a;--violet:#9d7dff;--violet-ink:#140f1e;--violet-soft:#2a2042;--lilac:#2e2348;--lavender:#3a2c5c;--peach:#4a2d1e;--peach-ink:#ffc9a6;--mint:#173a2b;--mint-ink:#9fe3c0;--rose:#43202d;--rose-ink:#ffb3c8;--shadow:0 10px 30px -18px rgba(0,0,0,.8);color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}body{color:var(--ink);font-family:var(--font);font-size:18px;line-height:1.5;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:0 120px}body,body:before{background:var(--bg)}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0);z-index:10}h1,h2,h3{text-wrap:balance;margin:0;line-height:1.15;letter-spacing:-.02em}h1{font-size:clamp(30px,6vw,42px)}h1,h2{font-weight:600}h2{font-size:26px}h3{font-size:20px;font-weight:600}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--violet);outline-offset:3px;border-radius:10px}.wrap{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:24px}.muted{color:var(--muted)}.eyebrow{font-size:14px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--violet)}.small{font-size:15px}.top{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:9;background:var(--bg);margin-bottom:8px}.top-in{max-width:720px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:14px}.logo{display:flex;align-items:baseline;gap:6px;text-decoration:none;color:var(--ink)}.logo b{font-size:28px;font-weight:500;letter-spacing:-.04em}.logo span{font-size:13px;color:var(--muted)}.nav{display:flex;gap:6px;flex-wrap:wrap}.nav a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;text-decoration:none;color:var(--ink);font-size:16px;font-weight:500;background:var(--surface);border:1px solid var(--line)}.nav a.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 26px;border-radius:999px;border:0;font-weight:600;font-size:18px;text-decoration:none}.btn-main{background:var(--violet);color:var(--violet-ink);box-shadow:var(--shadow)}.btn-main:hover{filter:brightness(1.07)}.btn-main[disabled]{opacity:.45;cursor:not-allowed;box-shadow:none}.btn-soft{background:var(--violet-soft);color:var(--ink)}.btn-block{width:100%}.chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;font-size:14px;font-weight:600;background:var(--violet-soft);color:var(--ink)}.chip.mint{background:var(--mint);color:var(--mint-ink)}.chip.peach{background:var(--peach);color:var(--peach-ink)}.chip.rose{background:var(--rose);color:var(--rose-ink)}.card{background:var(--surface);border-radius:var(--r-lg);padding:24px;border:1px solid var(--line)}.hero{background:var(--lilac);border-radius:var(--r-lg);padding:28px;display:flex;flex-direction:column;gap:18px}.bar{height:14px;border-radius:999px;background:var(--surface);overflow:hidden;border:1px solid var(--line)}.bar i{display:block;height:100%;background:var(--violet);border-radius:999px;transition:width .6s ease}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.login{min-height:calc(100vh - 32px);max-width:1120px;margin:0 auto;display:grid;grid-template-columns:1.05fr 1fr;grid-gap:20px;gap:20px;padding-block:16px}.brand{overflow:hidden;border-radius:36px;padding:clamp(28px,5vw,56px);background:radial-gradient(120% 90% at 0 0,#8b5cf6 0,#6b3fe3 45%,#3e1a9e 100%);color:#fff;flex-direction:column;justify-content:space-between;gap:32px;min-height:520px}.brand,.brand .wm{position:relative;display:flex}.brand .wm{align-items:baseline;gap:8px;z-index:1}.brand .wm b{font-size:44px;font-weight:500;letter-spacing:-.05em}.brand .wm span{font-size:15px;opacity:.8}.brand h1{font-size:clamp(32px,4.4vw,52px);font-weight:600;letter-spacing:-.03em;max-width:12ch}.brand .ticks,.brand h1{position:relative;z-index:1}.brand .ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.brand .ticks li{display:flex;align-items:center;gap:12px;font-size:17px}.brand .ticks li i{width:30px;height:30px;border-radius:50%;background:hsla(0,0%,100%,.18);display:grid;place-items:center;font-style:normal;font-size:15px;flex:none}.brand .giant{left:-2%;bottom:-6%;font-size:clamp(120px,19vw,250px);font-weight:600;letter-spacing:-.07em;color:hsla(0,0%,100%,.07);line-height:.8;white-space:nowrap}.brand .giant,.brand .iris{position:absolute;pointer-events:none}.brand .iris{right:-90px;top:-90px;width:340px;height:340px;opacity:.5;animation:spin 60s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.panel{display:flex;align-items:center;justify-content:center;padding:clamp(8px,3vw,40px)}.panel form{width:100%;max-width:420px;display:flex;flex-direction:column;gap:20px}.stepper{display:flex;gap:8px;align-items:center;font-size:14px;font-weight:600;color:var(--muted)}.stepper i{width:28px;height:6px;border-radius:9px;background:var(--line)}.stepper i.on{background:var(--violet)}.fld{display:flex;flex-direction:column;gap:8px}.otp{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;max-width:340px}.otp input{width:100%;aspect-ratio:1/1.15;min-height:56px;border-radius:16px;border:2px solid var(--line);background:var(--surface);text-align:center;font-size:28px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding:0}.otp input:focus{border-color:var(--violet);outline:none;box-shadow:0 0 0 4px var(--violet-soft)}.mailart{width:72px;height:72px;border-radius:22px;background:var(--violet-soft);display:grid;place-items:center}.linkbtn,.mailart{color:var(--violet)}.linkbtn{background:none;border:0;font-weight:600;font-size:16px;min-height:44px;padding:0;text-align:left}@media (max-width:860px){.login{grid-template-columns:1fr;gap:0;padding-block:8px}.brand{min-height:0;gap:20px;border-radius:30px;padding:28px 24px 64px}.brand .ticks{display:none}.brand .wm b{font-size:34px}.panel{margin-top:-40px;padding:0;position:relative;z-index:2}.panel form{max-width:none;background:var(--surface);border:1px solid var(--line);border-radius:30px;padding:26px 22px;box-shadow:var(--shadow)}}label{font-weight:600;font-size:16px}.input{width:100%;min-height:58px;border-radius:var(--r-sm);border:2px solid var(--line);background:var(--bg);padding:0 18px;font-size:20px}.input:focus{border-color:var(--violet);outline:none}.code{letter-spacing:.5em;text-align:center;font-size:28px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.alias-opts{display:flex;flex-wrap:wrap;gap:8px}.alias-opts button{border:2px solid var(--line);background:var(--surface);border-radius:999px;padding:8px 14px;font-size:16px}.alias-opts button.on{border-color:var(--violet);background:var(--violet-soft)}.path{display:flex;flex-direction:column;gap:0;list-style:none;margin:0;padding:0}.step{display:grid;grid-template-columns:52px 1fr;grid-gap:14px;gap:14px;position:relative;padding-bottom:16px}.step:before{content:"";position:absolute;left:25px;top:52px;bottom:0;width:3px;background:var(--line);border-radius:3px}.step:last-child:before{display:none}.step.done:before{background:var(--violet)}.dot{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:20px;background:var(--surface);border:3px solid var(--line);color:var(--muted);z-index:1}.step.done .dot{background:var(--violet);border-color:var(--violet);color:var(--violet-ink)}.step.now .dot{border-color:var(--violet);color:var(--violet);box-shadow:0 0 0 6px var(--violet-soft)}.step-card{display:flex;flex-direction:column;gap:6px;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:16px 18px;min-width:0;text-decoration:none;color:var(--ink)}.step.now .step-card,a.step-card:hover{border-color:var(--violet)}.step.now .step-card{background:var(--violet);color:var(--violet-ink);padding:20px;box-shadow:var(--shadow)}.step.now .step-card .muted{color:inherit;opacity:.85}.step.locked .step-card{opacity:.6}.step-card .go{margin-top:10px;align-self:flex-start;background:var(--violet-ink);color:var(--violet);min-height:50px}.step.cert .dot{border-color:var(--peach)}.step.cert .dot,.step.cert .step-card{background:var(--peach);color:var(--peach-ink)}.step.cert .step-card{border-color:transparent}.lesson-steps{display:flex;gap:8px;flex-wrap:wrap}.video{position:relative;aspect-ratio:16/9;max-width:100%;border-radius:var(--r-lg);overflow:hidden;background:linear-gradient(135deg,#3b1c8f,#7a4bf0 60%,#b79cff);color:#fff;display:flex;flex-direction:column;justify-content:space-between;padding:22px}.video h3{font-size:clamp(20px,4vw,28px);max-width:80%}.play{width:76px;height:76px;border-radius:50%;border:0;background:#fff;color:#4b24c2;display:grid;place-items:center;align-self:center;box-shadow:0 10px 30px rgba(0,0,0,.25)}.vbar{height:8px;border-radius:9px;background:hsla(0,0%,100%,.3);overflow:hidden}.vbar i{display:block;height:100%;background:#fff;width:0}.vmeta{display:flex;justify-content:space-between;font-size:15px;opacity:.9;gap:8px;flex-wrap:wrap}details.sum{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:6px 24px}details.sum summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:64px;font-weight:600;font-size:20px}details.sum summary::-webkit-details-marker{display:none}details.sum summary .plus{font-size:28px;color:var(--violet);transition:transform .2s}details.sum[open] summary .plus{transform:rotate(45deg)}.sum-body{gap:14px;padding-bottom:20px}.sum-body,.sum-body ul{display:flex;flex-direction:column}.sum-body ul{margin:0;padding-left:22px;gap:8px}.gloss{display:grid;grid-template-columns:auto 1fr;grid-gap:6px 14px;gap:6px 14px;font-size:16px}.gloss dt{font-weight:600}.gloss dd{margin:0;color:var(--muted)}.files{display:flex;flex-direction:column;gap:10px}.file{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:var(--r-sm);background:var(--bg);border:1px solid var(--line);width:100%;text-align:left}.file .ic{width:44px;height:44px;border-radius:12px;background:var(--rose);color:var(--rose-ink);display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}.q{display:flex;flex-direction:column;gap:12px;padding-block:18px;border-top:1px solid var(--line)}.q:first-of-type{border-top:0}.opt{display:flex;align-items:center;gap:12px;width:100%;min-height:58px;padding:12px 16px;border-radius:var(--r-sm);border:2px solid var(--line);background:var(--surface);text-align:left;font-size:18px}.opt:hover:not([disabled]){border-color:var(--violet)}.opt .l{width:32px;height:32px;border-radius:50%;background:var(--violet-soft);display:grid;place-items:center;font-weight:700;font-size:15px;flex:none}.opt.ok{border-color:var(--mint-ink);background:var(--mint);color:var(--mint-ink)}.opt.bad{border-color:var(--rose-ink);background:var(--rose);color:var(--rose-ink)}.opt[disabled]{cursor:default}.exp{padding:14px 16px;border-radius:var(--r-sm);background:var(--violet-soft);font-size:16px}.result{border-radius:var(--r-md);padding:20px;display:flex;flex-direction:column;gap:10px}.result.pass{background:var(--mint);color:var(--mint-ink)}.result.fail{background:var(--rose);color:var(--rose-ink)}.attempts{font-size:15px;display:flex;flex-direction:column;gap:4px}.stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px}.stat{border-radius:var(--r-md);padding:18px;display:flex;flex-direction:column;gap:2px}.stat b{font-size:34px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em}.stat span{font-size:15px}.podium{display:grid;grid-template-columns:repeat(3,1fr);align-items:end;grid-gap:10px;gap:10px;text-align:center}.pod{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0}.pod .who{font-weight:600;font-size:16px;overflow-wrap:anywhere}.pod .blk{width:100%;border-radius:18px 18px 8px 8px;display:grid;place-items:center;font-size:30px;font-weight:700}.pod.p1 .blk{height:130px;background:var(--violet);color:var(--violet-ink)}.pod.p2 .blk{height:96px;background:var(--lavender)}.pod.p3 .blk{height:72px;background:var(--peach);color:var(--peach-ink)}.av{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-weight:700;background:var(--violet-soft);color:var(--violet)}.rank{display:flex;flex-direction:column;gap:6px;list-style:none;margin:0;padding:0}.rank li{display:grid;grid-template-columns:36px 1fr auto;grid-gap:10px;gap:10px;align-items:center;padding:12px 14px;border-radius:var(--r-sm);background:var(--bg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rank li.me{background:var(--violet-soft);outline:2px solid var(--violet)}.mods{display:flex;flex-direction:column;gap:8px}.mods div{display:grid;grid-template-columns:1fr auto;grid-gap:12px;gap:12px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);font-size:16px}.certwrap{position:relative;overflow-x:auto;border-radius:24px}.cert{aspect-ratio:1.414/1;min-width:620px;background:#fffdf9;color:#1f1633;border-radius:20px;box-shadow:0 30px 60px -30px rgba(60,25,150,.45);display:grid;grid-template-columns:26% 1fr;font-family:var(--font)}.cert,.cert .side{position:relative;overflow:hidden}.cert .side{background:radial-gradient(130% 90% at 0 0,#8b5cf6,#6b3fe3 50%,#3e1a9e);color:#fff;padding:9% 10%;display:flex;flex-direction:column;justify-content:space-between}.cert .side .iris{position:absolute;width:150%;height:auto;left:-60%;bottom:-30%;top:auto;right:auto;opacity:.35;animation:none}.cert .side b{font-size:clamp(26px,3.4vw,38px);font-weight:500;letter-spacing:-.05em;line-height:1}.cert .side small{display:block;font-size:12px;opacity:.85;margin-top:4px}.cert .seal{position:relative;width:96px;height:96px;border-radius:50%;border:2px solid hsla(0,0%,100%,.7);display:grid;place-items:center;text-align:center;font-size:10px;font-weight:700;letter-spacing:.1em;line-height:1.25;text-transform:uppercase;background:hsla(0,0%,100%,.08)}.cert .seal:after{content:"";position:absolute;inset:6px;border-radius:50%;border:1px dashed hsla(0,0%,100%,.55)}.cert .main{padding:6% 7%;display:flex;flex-direction:column;justify-content:space-between;gap:12px;position:relative}.cert .main:before{content:"";position:absolute;inset:16px;border:1px solid #e4dcf2;border-radius:12px;pointer-events:none}.cert .kick{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:#6b3fe3;font-weight:700}.cert h2{font-size:clamp(24px,3vw,34px);font-weight:600;letter-spacing:-.02em;margin-top:6px}.cert .lbl{font-size:14px;color:#675e7c}.cert .nm{font-size:clamp(30px,4.2vw,48px);font-weight:600;color:#4b24c2;letter-spacing:-.03em;line-height:1.05;border-bottom:2px solid #e3d7fb;padding-bottom:8px}.cert .course{font-size:16px;line-height:1.45;max-width:46ch}.cert .foot{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:18px;gap:18px;align-items:end;font-size:12.5px}.cert .sig{display:flex;flex-direction:column}.cert .sig .hand{font-family:Mrs Saint Delafield,Snell Roundhand,Brush Script MT,cursive;font-size:44px;line-height:.9;color:#3e1a9e;font-weight:400;border-bottom:1.5px solid #1f1633;padding:0 0 2px 6px;margin-bottom:6px;white-space:nowrap}.cert .sig.plain{justify-content:flex-end;gap:2px}.cert .qr{display:flex;flex-direction:column;align-items:center;gap:4px;font-size:10.5px;color:#675e7c;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.certwrap.locked .cert{filter:blur(4px);opacity:.55}.verify{max-width:680px;margin:0 auto;padding-block:20px 40px;display:flex;flex-direction:column;gap:20px}.vtop{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.vcard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;gap:0}.vcard>p{padding:0 24px 22px}.vstatus{display:flex;gap:16px;align-items:center;padding:24px}.vstatus.ok{background:var(--mint);color:var(--mint-ink)}.vstatus.bad{background:var(--rose);color:var(--rose-ink)}.vstatus h1{font-size:clamp(26px,5vw,34px)}.vic{width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:700;flex:none;background:var(--surface)}.vrows{display:grid;grid-template-columns:minmax(120px,auto) 1fr;grid-gap:0;gap:0;margin:0;padding:12px 24px 18px}.vrows dd,.vrows dt{padding:12px 0;border-bottom:1px solid var(--line);margin:0}.vrows dt{color:var(--muted);font-size:15px;padding-right:16px}.vrows dd{font-weight:600;min-width:0;overflow-wrap:anywhere}.vrows dd:last-of-type,.vrows dt:last-of-type{border-bottom:0}.mono{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.04em}.vcta{background:var(--lilac);border-radius:var(--r-lg);padding:22px 24px;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.vcta h2{font-size:22px}@media (max-width:520px){.vrows{grid-template-columns:1fr}.vrows dt{border-bottom:0;padding-bottom:0}}.prevbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 16px;border-radius:var(--r-md);background:var(--peach);color:var(--peach-ink);font-size:16px}.lockmsg{position:absolute;inset:0;display:grid;place-items:center;padding:24px}.lockmsg div{background:var(--surface);border-radius:var(--r-md);padding:20px 24px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:6px;max-width:340px}.fab{position:fixed;right:max(16px,calc(env(safe-area-inset-right,0px) + 16px));bottom:calc(env(safe-area-inset-bottom,0px) + 18px);z-index:20;display:flex;align-items:center;gap:10px;min-height:60px;padding:0 22px 0 10px;border-radius:999px;border:0;background:var(--ink);color:var(--bg);font-weight:600;font-size:17px;box-shadow:0 14px 30px -12px rgba(30,10,80,.55)}.fab .doc{width:42px;height:42px;border-radius:50%;background:var(--violet);color:#fff;display:grid;place-items:center;font-size:20px}.sheet{position:fixed;z-index:30;right:max(16px,calc(env(safe-area-inset-right,0px) + 16px));bottom:calc(env(safe-area-inset-bottom,0px) + 16px);width:min(440px,calc(100vw - 32px));height:min(640px,calc(100vh - 110px));background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--line);box-shadow:0 30px 60px -20px rgba(30,10,80,.5);display:flex;flex-direction:column;overflow:hidden}.sheet-h{display:flex;align-items:center;gap:12px;padding:16px 18px;background:var(--violet);color:var(--violet-ink)}.sheet-h .av{background:var(--violet-ink);color:var(--violet)}.sheet-h button{margin-left:auto;background:transparent;border:0;color:inherit;font-size:16px;font-weight:600;min-height:44px;padding:0 6px}.msgs{flex:1 1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}.msg{max-width:88%;padding:12px 14px;border-radius:18px;font-size:16px;line-height:1.45}.msg.bot{background:var(--violet-soft);border-bottom-left-radius:6px}.msg.me{background:var(--ink);color:var(--bg);align-self:flex-end;border-bottom-right-radius:6px}.msg .src{display:block;margin-top:8px;font-size:13px;font-weight:600;color:var(--violet)}.sugs{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 10px}.sugs button{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:8px 12px;font-size:14px;text-align:left}.ask{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.ask .input{min-height:52px;font-size:17px}.ask .btn{min-height:52px;padding:0 18px;font-size:16px}.credits{font-size:13px;opacity:.9}.typing{display:inline-flex;gap:4px}.typing i{width:7px;height:7px;border-radius:50%;background:var(--violet);animation:b 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}@keyframes b{0%,80%,to{opacity:.25}40%{opacity:1}}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tabs button{min-height:46px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:var(--surface);font-weight:600;font-size:16px}.tabs button.on{background:var(--violet);color:var(--violet-ink);border-color:var(--violet)}.tbl{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}th{text-align:left;font-size:13px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:10px 12px}td,th{border-bottom:1px solid var(--line);white-space:nowrap}td{padding:12px}.mini,td{vertical-align:middle}.mini{height:8px;width:90px;border-radius:9px;background:var(--line);overflow:hidden;display:inline-block;margin-right:8px}.mini i{display:block;height:100%}.mini i,.sbtn{background:var(--violet)}.sbtn{min-height:42px;padding:0 16px;border-radius:999px;border:0;color:var(--violet-ink);font-weight:600;font-size:15px}.sbtn.ghost{background:var(--violet-soft);color:var(--ink)}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.funnel{display:flex;flex-direction:column;gap:10px}.funnel div{display:grid;grid-template-columns:110px 1fr 48px;grid-gap:10px;gap:10px;align-items:center;font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.funnel .track{height:14px;border-radius:9px;background:var(--violet-soft);overflow:hidden}.funnel .track i{display:block;height:100%;background:var(--violet);border-radius:9px}.pipeline{display:flex;flex-direction:column;gap:8px;font-size:16px}.pipeline div{display:flex;gap:10px;align-items:center}.demo{font-size:14px;color:var(--muted);text-align:center}.demo button{background:none;border:0;color:var(--violet);text-decoration:underline;font-size:14px;min-height:40px}.qedit{display:flex;flex-direction:column;gap:10px;padding:18px;border-radius:var(--r-md);background:var(--bg);border:1px solid var(--line)}.ta{width:100%;border-radius:var(--r-sm);border:2px solid var(--line);background:var(--surface);padding:12px 14px;font-size:17px;line-height:1.45;resize:vertical}.input.sm:focus,.ta:focus{border-color:var(--violet);outline:none}.input.sm{min-height:48px;font-size:17px;background:var(--surface)}.okfld{border-color:var(--mint-ink)!important;background:var(--mint)!important;color:var(--mint-ink)}.optrow{display:grid;grid-template-columns:auto 1fr;grid-gap:10px;gap:10px;align-items:center}.optrow input[type=radio]{width:24px;height:24px;accent-color:var(--violet);margin:0}.clsrow{display:grid;grid-template-columns:auto 1fr auto auto;grid-gap:12px;gap:12px;align-items:center;padding:14px 10px;border-bottom:1px solid var(--line)}.clsrow:last-child{border-bottom:0}.order{display:flex;flex-direction:column;gap:3px;min-width:34px}.order button{width:34px;height:28px;border:1px solid var(--line);background:var(--surface);border-radius:8px;font-size:12px}.order button[disabled]{opacity:.3}.savebar{position:-webkit-sticky;position:sticky;bottom:calc(env(safe-area-inset-bottom,0px) + 12px);display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:10px;box-shadow:var(--shadow);z-index:5}.dropzone{border:2px dashed var(--lavender);border-radius:var(--r-md);padding:22px;text-align:center;display:flex;flex-direction:column;gap:8px;align-items:center;background:var(--bg)}.dropzone input{max-width:100%}@media (max-width:560px){.clsrow{grid-template-columns:auto 1fr}.clsrow .chip,.clsrow .sbtn{grid-column:2;justify-self:start}}.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(env(safe-area-inset-bottom,0px) + 92px);z-index:40;background:var(--ink);color:var(--bg);padding:14px 20px;border-radius:999px;font-weight:600;font-size:16px;max-width:calc(100vw - 32px);text-align:center;box-shadow:var(--shadow)}.celebrate{position:fixed;inset:0;z-index:60;background:rgba(18,8,46,.82);display:grid;place-items:center;padding:24px max(16px,env(safe-area-inset-right,0px)) 24px max(16px,env(safe-area-inset-left,0px));animation:fadein .3s ease}.celebrate canvas{position:absolute;inset:0;width:100%;height:100%}.celebrate .msgbox{position:relative;z-index:1;background:var(--surface);color:var(--ink);border-radius:32px;padding:32px 28px;max-width:420px;width:100%;text-align:center;display:flex;flex-direction:column;gap:14px;align-items:center;box-shadow:0 30px 80px -20px rgba(0,0,0,.6);animation:pop .5s cubic-bezier(.2,1.4,.4,1)}.celebrate .medal{width:84px;height:84px;border-radius:50%;background:var(--peach);color:var(--peach-ink);display:grid;place-items:center;font-size:40px}@keyframes fadein{0%{opacity:0}}@keyframes pop{0%{transform:scale(.7);opacity:0}}@media (max-width:560px){.stats{grid-template-columns:1fr 1fr 1fr}.stat{padding:14px}.stat b{font-size:26px}.grid2{grid-template-columns:1fr}.nav a{padding:0 12px;font-size:15px}.fab .lbl,.logo span{display:none}.fab{padding:0 9px}}@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.err{color:var(--rose-ink);background:var(--rose);border-radius:var(--r-sm);padding:12px 14px;font-size:16px}.ytwrap{position:relative;aspect-ratio:16/9;max-width:100%;border-radius:var(--r-lg);overflow:hidden;background:#140f1e}.ytwrap .ytmount,.ytwrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.ytshield{position:absolute;inset:0;z-index:2;cursor:pointer}.ytctrl{position:absolute;left:0;right:0;bottom:0;z-index:3;display:flex;align-items:center;gap:10px;padding:12px 14px;background:linear-gradient(transparent,rgba(20,10,50,.85));color:#fff;font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.ytctrl button{background:hsla(0,0%,100%,.16);border:0;color:#fff;border-radius:999px;min-width:44px;height:44px;padding:0 12px;font-weight:600;font-size:15px}.ytctrl input[type=range]{flex:1 1;accent-color:#b79cff;min-width:60px}.ytbig{position:absolute;inset:0;z-index:3;display:grid;place-items:center;pointer-events:none}.ytbig span{width:84px;height:84px;border-radius:50%;background:#fff;color:#4b24c2;display:grid;place-items:center;box-shadow:0 10px 30px rgba(0,0,0,.3)}.drshield{position:absolute;top:0;right:0;width:72px;height:64px;z-index:2}.markwatched{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;border-radius:var(--r-md);background:var(--violet-soft)}.adminwrap{max-width:1040px;margin:0 auto;padding-block:20px 60px;display:flex;flex-direction:column;gap:20px}.inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:end}.inline-form .fld{flex:1 1;min-width:180px}.navbtn{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border-radius:999px;color:var(--ink);font-size:16px;font-weight:500;background:var(--surface);border:1px solid var(--line)}.linkbtn[disabled]{color:var(--muted);cursor:default}.btn[disabled]{opacity:.6;cursor:default}.cert .qr svg{width:68px;height:68px;display:block}.tabs a.on{background:var(--violet);color:var(--violet-ink)!important;border-color:var(--violet)!important}.tabs a{background:var(--surface)}.sbtn[disabled]{opacity:.6}.vl-spin{width:44px;height:44px;border-radius:50%;border:4px solid var(--violet-soft);border-top-color:var(--violet);animation:vlspin .8s linear infinite}@keyframes vlspin{to{transform:rotate(1turn)}}.fab .doc{font-weight:800;font-size:16px;letter-spacing:-.02em}.fab.pulse .doc{animation:drpulse 1.6s ease-out infinite}@keyframes drpulse{0%{box-shadow:0 0 0 0 rgba(157,125,255,.7)}to{box-shadow:0 0 0 16px rgba(157,125,255,0)}}.drhint{position:fixed;right:max(16px,calc(env(safe-area-inset-right,0px) + 16px));bottom:calc(env(safe-area-inset-bottom,0px) + 90px);z-index:21;max-width:300px;text-align:left;display:flex;flex-direction:column;gap:4px;padding:14px 38px 14px 16px;border-radius:20px 20px 6px 20px;border:1px solid var(--lavender);background:var(--surface,#fff);color:var(--ink);font-size:15px;line-height:1.35;box-shadow:0 18px 40px -16px rgba(40,15,100,.45);animation:drin .35s ease-out}.drhint .x{position:absolute;top:8px;right:10px;font-size:13px;opacity:.6;cursor:pointer;padding:4px}@keyframes drin{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.drhint,.fab.pulse .doc{animation:none}}