@font-face{font-family:"Estedad";src:url("../fonts/Estedad-VF.woff2") format("woff2");font-weight:100 900;font-display:swap}
:root{--ov:255,255,255;--field:rgba(7,10,14,.5);--navbg:rgba(17,22,28,.8);--solid:#141a21;--bga:#1b2530;--bgb:#18222a;--em-mid:#fff;--bg:#0c1014;--panel:rgba(var(--ov),.045);--panel2:rgba(var(--ov),.075);--line:rgba(205,215,225,.14);--text:#f3f5f8;--muted:#9eaab8;--sage:#b9d0c5;--gold:#dccb9f;--blue:#bccbe6;--rose:#e6bcc8;--ok:#78dca0;--bad:#f0a3a3;--accent:var(--sage);--ease:cubic-bezier(.16,1,.3,1);--r:22px}
*{box-sizing:border-box;margin:0;padding:0;letter-spacing:0}
html{scroll-behavior:smooth;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{font-family:"Estedad",Tahoma,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.8;overflow-x:hidden;min-height:100vh}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}
svg{display:block}[hidden]{display:none!important}
.container{width:min(1180px,100% - 40px);margin-inline:auto}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
/* background */
.bg{position:fixed;inset:0;z-index:-1;overflow:hidden;background:radial-gradient(1200px 700px at 85% -10%,var(--bga),transparent 60%),radial-gradient(900px 600px at 0% 100%,var(--bgb),transparent 60%),var(--bg)}
.bg:before,.bg:after{content:"";position:absolute;width:60vmax;height:60vmax;border-radius:50%;animation:driftA 28s ease-in-out infinite}
.bg:before{top:-24vmax;right:-18vmax;background:radial-gradient(circle,rgba(185,208,197,.14),transparent 65%)}
.bg:after{bottom:-28vmax;left:-20vmax;background:radial-gradient(circle,rgba(188,203,230,.12),transparent 65%);animation-name:driftB;animation-duration:34s}
.bg i{position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;opacity:.16;-webkit-mask-image:radial-gradient(ellipse at 50% 30%,#000,transparent 70%);mask-image:radial-gradient(ellipse at 50% 30%,#000,transparent 70%)}
@keyframes driftA{50%{transform:translate(8vw,6vh) scale(1.15)}}@keyframes driftB{50%{transform:translate(-9vw,-7vh) scale(1.2)}}
.cursor-glow{position:fixed;left:0;top:0;width:560px;height:560px;margin:-280px 0 0 -280px;border-radius:50%;pointer-events:none;z-index:1;opacity:0;transition:opacity .5s;background:radial-gradient(circle,rgba(185,208,197,.08),transparent 62%)}.cursor-glow.on{opacity:1}
.progress{position:fixed;top:0;right:0;width:100%;height:3px;z-index:300;pointer-events:none;transform-origin:right;transform:scaleX(0);background:linear-gradient(270deg,var(--sage),var(--gold),var(--blue))}
/* header */
.site-header{position:fixed;top:14px;left:0;right:0;z-index:200;padding:0 14px;transition:transform .4s var(--ease)}
.nav{width:min(1180px,100%);margin-inline:auto;display:flex;align-items:center;gap:14px;padding:9px 12px 9px 12px;border-radius:999px;background:var(--navbg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:0 14px 40px rgba(0,0,0,.28)}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:.98rem;white-space:nowrap}.brand img{width:46px;height:46px;object-fit:contain;border-radius:50%;background:rgba(var(--ov),.06);padding:7px;box-sizing:border-box}.lg-l{display:none!important}html[data-theme=light] .lg-l{display:block!important}html[data-theme=light] .lg-d{display:none!important}
.nav-links{display:flex;gap:4px;margin-inline:auto}.nav-links a{padding:7px 14px;border-radius:999px;color:var(--muted);font-size:.84rem;font-weight:600;transition:.25s}
.nav-links a:hover,.nav-links a.active{color:var(--text);background:var(--panel2)}
.menu-btn{display:none;width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:var(--panel);cursor:pointer;place-items:center}
.menu-btn span,.menu-btn span:before,.menu-btn span:after{display:block;width:18px;height:2px;background:var(--text);border-radius:2px;position:relative;transition:.3s}
.menu-btn span:before,.menu-btn span:after{content:"";position:absolute;right:0}.menu-btn span:before{top:-6px}.menu-btn span:after{top:6px}
.menu-btn[aria-expanded=true] span{background:transparent}.menu-btn[aria-expanded=true] span:before{top:0;transform:rotate(45deg)}.menu-btn[aria-expanded=true] span:after{top:0;transform:rotate(-45deg)}
/* buttons */
.btn{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 24px;border-radius:999px;border:1px solid var(--line);background:var(--panel);font-weight:700;font-size:.88rem;cursor:pointer;transition:transform .3s var(--ease),border-color .3s,background .3s,box-shadow .3s;white-space:nowrap}
.btn:hover{transform:translateY(-2px);border-color:rgba(205,215,225,.35)}.btn:active{transform:scale(.97)}
.btn:after{content:"";position:absolute;inset:0;pointer-events:none;transform:translateX(120%);transition:transform .75s var(--ease);background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.35) 50%,transparent 70%)}.btn:hover:after{transform:translateX(-120%)}
.btn svg{width:18px;height:18px;transition:transform .3s var(--ease)}.btn:hover svg{transform:translateX(-4px)}
.btn-primary{color:#0d1613;border:0;background:linear-gradient(120deg,var(--sage),#dfe9f3);box-shadow:0 12px 34px rgba(185,208,197,.2)}.btn-primary:hover{box-shadow:0 18px 44px rgba(185,208,197,.32)}
.btn-wa{color:#0b1a12;border:0;background:linear-gradient(120deg,#7fe3a8,#b8f0cc);box-shadow:0 12px 34px rgba(120,220,160,.2)}
.btn-sm{min-height:40px;padding:6px 18px;font-size:.8rem}.btn-block{width:100%}
.btn[disabled]{opacity:.55;pointer-events:none}
/* type */
.eyebrow{display:inline-flex;align-items:center;gap:12px;color:var(--accent);font-size:.8rem;font-weight:700}.eyebrow:before{content:"";width:22px;height:1px;background:currentColor;transform-origin:right;animation:draw .9s var(--ease) .4s both}
@keyframes draw{from{transform:scaleX(0)}}
h1,h2,h3{line-height:1.4;font-weight:700}
h1{font-size:clamp(2.1rem,5.2vw,4.1rem);line-height:1.4}h2{font-size:clamp(1.8rem,4vw,3rem)}h3{font-size:1.1rem}
em{font-style:normal;background:linear-gradient(100deg,var(--accent) 0%,var(--em-mid) 48%,var(--accent) 72%);background-size:230% 100%;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:800;animation:shine 7s ease-in-out infinite}
@keyframes shine{0%,100%{background-position:100% 0}50%{background-position:0 0}}
.lead{color:var(--muted);font-size:1.05rem;line-height:2;max-width:56ch}
.section{padding:clamp(64px,9vw,110px) 0;position:relative}
.head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:42px;flex-wrap:wrap}.head p{color:var(--muted);max-width:44ch}
/* cards */
.card{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(160deg,var(--panel2),var(--panel));padding:28px;transition:transform .3s var(--ease),border-color .3s,box-shadow .3s;backdrop-filter:blur(6px)}
.card:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .35s;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--accent) 17%,transparent),transparent 58%)}
.card:hover{border-color:color-mix(in srgb,var(--accent) 40%,transparent);box-shadow:0 24px 60px rgba(0,0,0,.3)}.card:hover:after{opacity:1}
.tilt,.tilt:hover{transform:perspective(900px) translateY(var(--ty,0)) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.tilt:hover{--ty:-6px}.tilt{transition:transform .25s ease-out,border-color .3s,box-shadow .3s}
.icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 30%,transparent);background:color-mix(in srgb,var(--accent) 10%,transparent);margin-bottom:18px;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.icon svg{width:24px;height:24px}.card:hover .icon{transform:translateY(-3px) rotate(-7deg) scale(1.1)}
.card p{color:var(--muted);font-size:.92rem;margin-top:8px}
.grid{display:grid;gap:18px}.g3{grid-template-columns:repeat(3,1fr)}.g2{grid-template-columns:repeat(2,1fr)}.g4{grid-template-columns:repeat(4,1fr)}
.a-sage{--accent:var(--sage)}.a-gold{--accent:var(--gold)}.a-blue{--accent:var(--blue)}.a-rose{--accent:var(--rose)}
/* motion helpers */
.rise{animation:rise .95s var(--ease) both;animation-delay:var(--d,0s)}@keyframes rise{from{opacity:0;transform:translateY(24px)}}
.js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .85s var(--ease),transform .85s var(--ease);transition-delay:var(--d,0s)}.js [data-reveal].in{opacity:1;transform:none}
@keyframes floaty{50%{transform:translateY(-8px)}}@keyframes pop{from{opacity:0;transform:translateY(-6px) scale(.98)}}@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(120,220,160,.55)}100%{box-shadow:0 0 0 9px rgba(120,220,160,0)}}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes unspin{to{transform:rotate(-360deg)}}
.badge{display:inline-flex;align-items:center;gap:8px;padding:5px 13px;border-radius:999px;font-size:.74rem;font-weight:700;color:#bfeccf;background:rgba(120,220,160,.1);border:1px solid rgba(120,220,160,.26)}
.badge:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok);animation:pulse 1.8s ease-out infinite}.badge.closed{color:#e6cfa0;background:rgba(220,203,159,.09);border-color:rgba(220,203,159,.26)}.badge.closed:before{background:var(--gold);animation:none}
.to-top{position:fixed;bottom:22px;left:22px;z-index:150;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:var(--solid);border:1px solid var(--line);opacity:0;visibility:hidden;transform:translateY(14px);pointer-events:none;transition:.3s var(--ease)}.to-top.show{opacity:1;visibility:visible;transform:none;pointer-events:auto}.to-top:hover{border-color:var(--accent)}
.footer{border-top:1px solid var(--line);padding:34px 0 40px;color:var(--muted);font-size:.85rem}.footer .container{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center}.footer a:hover{color:var(--text)}
.footer nav{display:flex;gap:20px;flex-wrap:wrap}
/* forms */
.field{display:grid;gap:7px}.field label{font-size:.78rem;font-weight:700;color:var(--muted);transition:color .2s}.field:focus-within label{color:var(--accent)}
.field input,.field select,.field textarea{width:100%;min-height:50px;padding:11px 16px;border-radius:15px;border:1px solid var(--line);background:var(--field);outline:none;transition:border-color .25s,box-shadow .25s,background .25s}
.field textarea{min-height:130px;resize:vertical;line-height:1.9}
.field input:hover,.field select:hover,.field textarea:hover{border-color:rgba(205,215,225,.3)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 16%,transparent);background:var(--field)}
.field select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-left:40px;background:var(--field) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23aeb8c4' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat left 15px center}
.field option{background:var(--solid)}.ltr{direction:ltr;text-align:right}.ltr::placeholder{text-align:right}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.msg{min-height:0;font-size:.84rem;line-height:1.8;border-radius:14px;padding:0;color:var(--muted)}.msg.show{padding:11px 15px;border:1px solid var(--line);background:rgba(var(--ov),.04);animation:pop .4s var(--ease)}.msg.err{color:#f4c7c7;border-color:rgba(240,163,163,.35);background:rgba(240,163,163,.07)}.msg.okk{color:#c8f0d8;border-color:rgba(120,220,160,.3);background:rgba(120,220,160,.07)}
.note{display:flex;gap:10px;align-items:flex-start;font-size:.76rem;color:var(--muted);line-height:1.8}.note svg{width:18px;height:18px;flex:0 0 auto;margin-top:3px;color:var(--accent)}
@media(max-width:980px){.g3,.g4{grid-template-columns:repeat(2,1fr)}.nav-links{position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;padding:12px;border-radius:24px;background:var(--navbg);backdrop-filter:blur(16px);border:1px solid var(--line);opacity:0;transform:translateY(-10px);pointer-events:none;transition:.3s var(--ease);margin:0}.nav-links.open{opacity:1;transform:none;pointer-events:auto}.nav-links a{padding:12px 16px}.menu-btn{display:grid}.nav .btn-sm{margin-inline-start:auto}.nav-links+.btn-sm{margin-inline-start:auto}.nav{position:relative}}
@media(max-width:640px){.g2,.g3,.g4,.row{grid-template-columns:1fr}.brand span{display:none}.card{padding:22px}.to-top{bottom:16px;left:16px}.ann.show~.to-top{bottom:92px}.head{margin-bottom:30px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important}.js [data-reveal]{opacity:1;transform:none}}

/* ===== Light theme ===== */
[data-theme=light]{--ov:12,16,20;--field:rgba(255,255,255,.85);--navbg:rgba(255,255,255,.82);--solid:#ffffff;--bga:#e3ebf3;--bgb:#e6efe9;--em-mid:#0f1720;--bg:#f3f6f9;--panel:rgba(255,255,255,.7);--panel2:rgba(255,255,255,.92);--line:rgba(15,23,32,.14);--text:#0f1720;--muted:#4a5868;--sage:#3f7360;--gold:#85691b;--blue:#38568f;--rose:#a2506a;--ok:#1d8750;--bad:#b23a3a;color-scheme:light}
[data-theme=light] .card{box-shadow:0 10px 30px rgba(20,32,48,.06)}
[data-theme=light] .btn-primary,[data-theme=light] .tabs button[aria-selected=true],[data-theme=light] .dtabs button.on,[data-theme=light] button.ichip.on{color:#fff}
[data-theme=light] .btn-primary{background:linear-gradient(120deg,#3f7360,#38568f);box-shadow:0 12px 30px rgba(56,86,143,.25)}
[data-theme=light] .tabs .pill,[data-theme=light] .dtabs button.on,[data-theme=light] button.ichip.on{background:linear-gradient(120deg,#38568f,#4b6fae)}
[data-theme=light] .avatar,[data-theme=light] .badge{color:#0f1720}
[data-theme=light] .badge{color:#14633b;background:rgba(29,135,80,.1);border-color:rgba(29,135,80,.3)}[data-theme=light] .badge.closed{color:#7a5d12;background:rgba(133,105,27,.1);border-color:rgba(133,105,27,.3)}
[data-theme=light] .cover-bg{background:linear-gradient(120deg,#cfe0f2,#cfe8dc,#efe3c2,#d3dff3)}
[data-theme=light] .msg.err{color:#8f2a2a}[data-theme=light] .msg.okk{color:#14633b}[data-theme=light] .demo-note{color:#6b5410}
[data-theme=light] .hero-meta svg{color:var(--gold)}
html{transition:background-color .4s}
body,.card,.nav,.field input,.field select,.field textarea{transition-property:background,background-color,border-color,color,box-shadow,transform}
[data-size="2"]{font-size:112.5%}[data-size="3"]{font-size:125%}
/* skip link + prefs */
.skip{position:fixed;top:-60px;right:16px;z-index:1000;padding:10px 18px;border-radius:12px;background:var(--text);color:var(--bg);font-weight:700;transition:top .25s}.skip:focus{top:12px}
.tools{display:flex;align-items:center;gap:6px}.tool{height:38px;min-width:38px;padding:0 10px;border-radius:999px;border:1px solid var(--line);background:var(--panel);cursor:pointer;display:grid;place-items:center;font-size:.78rem;font-weight:800;transition:.25s}.tool:hover{border-color:var(--accent);background:var(--panel2)}.tool svg{width:18px;height:18px}
.langsw{display:flex;padding:3px;border-radius:999px;border:1px solid var(--line);background:var(--panel)}.langsw button{border:0;background:none;cursor:pointer;height:32px;padding:0 11px;border-radius:999px;font-size:.76rem;font-weight:700;color:var(--muted);transition:.25s}.langsw button[aria-pressed=true]{background:linear-gradient(120deg,var(--sage),var(--blue));color:#0d1613}[data-theme=light] .langsw button[aria-pressed=true]{color:#fff}.langsw button:hover{color:var(--text)}
[dir=ltr] .field select{background-position:right 15px center;padding-left:16px;padding-right:40px}[dir=ltr] .ltr,[dir=ltr] .ltr::placeholder{text-align:left}
[dir=ltr] .progress{right:auto;left:0;transform-origin:left}[dir=ltr] .to-top{left:auto;right:22px}
[dir=ltr] .eyebrow:before{transform-origin:left}
.fade-lang{animation:fadelang .45s var(--ease)}@keyframes fadelang{from{opacity:.2;transform:translateY(6px)}}
@media(max-width:980px){.nav .tools,.nav .langsw{margin-inline-start:auto}.nav .btn-sm{margin-inline-start:0!important}}
@media(max-width:640px){.nav{gap:8px;padding:8px}.tool{min-width:36px;height:36px;padding:0 8px}.langsw button{padding:0 8px;height:30px}.nav .tools .tool.size{display:none}}

/* ===== v3: accessibility, tools, light mode, large text, LTR ===== */
.skip{position:fixed;top:-60px;right:14px;z-index:1000;padding:10px 18px;border-radius:12px;background:#fff;color:#0c1014;font-weight:700;transition:top .25s}.skip:focus{top:10px}
.tools{display:flex;align-items:center;gap:6px;position:relative}
.tool{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:var(--panel);display:grid;place-items:center;cursor:pointer;color:var(--text);font-size:.78rem;font-weight:800;transition:.3s var(--ease)}.tool:hover{border-color:var(--accent);transform:translateY(-2px)}.tool svg{width:18px;height:18px}
.lang-btn{width:auto;padding:0 12px;gap:6px;display:inline-flex;border-radius:999px}
.lang-menu{position:absolute;top:calc(100% + 10px);inset-inline-start:0;min-width:150px;padding:6px;border-radius:18px;background:rgba(17,22,28,.96);backdrop-filter:blur(16px);border:1px solid var(--line);box-shadow:0 20px 50px rgba(0,0,0,.4);opacity:0;transform:translateY(-8px);pointer-events:none;transition:.3s var(--ease);z-index:5}
.lang-menu.open{opacity:1;transform:none;pointer-events:auto}.lang-menu button{display:flex;width:100%;gap:10px;align-items:center;justify-content:space-between;padding:9px 14px;border:0;border-radius:12px;background:none;color:var(--text);font-size:.86rem;cursor:pointer;text-align:start}.lang-menu button:hover{background:var(--panel2)}.lang-menu button[aria-current=true]{color:var(--accent);font-weight:800}
.lang-fade{animation:langfade .5s var(--ease)}@keyframes langfade{from{opacity:.2;transform:translateY(6px)}}
html[data-size=l]{font-size:112%}html[data-size=xl]{font-size:126%}
html[data-theme=light]{--bg:#f3f5f8;--panel:rgba(20,32,46,.04);--panel2:rgba(20,32,46,.075);--line:rgba(30,44,60,.17);--text:#15202b;--muted:#4f5f72;--sage:#3b7a62;--gold:#8f6f1b;--blue:#37599a;--rose:#a94c66;--ok:#1b8f55;--bad:#bb4545;color-scheme:light}
html[data-theme=light] .bg{background:radial-gradient(1200px 700px at 85% -10%,#e2ebf3,transparent 60%),radial-gradient(900px 600px at 0% 100%,#e6efe9,transparent 60%),var(--bg)}
html[data-theme=light] .bg:before{background:radial-gradient(circle,rgba(59,122,98,.14),transparent 65%)}html[data-theme=light] .bg:after{background:radial-gradient(circle,rgba(55,89,154,.12),transparent 65%)}
html[data-theme=light] .nav,html[data-theme=light] .lang-menu{background:rgba(255,255,255,.82)}
@media(max-width:980px){html[data-theme=light] .nav-links{background:rgba(255,255,255,.97)}}
html[data-theme=light] .card{background:linear-gradient(160deg,rgba(255,255,255,.92),rgba(255,255,255,.66));box-shadow:0 10px 30px rgba(30,50,80,.07)}
html[data-theme=light] .card:hover{box-shadow:0 22px 50px rgba(30,50,80,.14)}
html[data-theme=light] .field input,html[data-theme=light] .field select,html[data-theme=light] .field textarea{background:rgba(255,255,255,.9)}html[data-theme=light] .field input:focus,html[data-theme=light] .field textarea:focus,html[data-theme=light] .field select:focus{background:#fff}html[data-theme=light] .field option{background:#fff;color:#15202b}
html[data-theme=light] .btn-primary{color:#fff;background:linear-gradient(120deg,#3b7a62,#37599a);box-shadow:0 12px 30px rgba(55,89,154,.25)}
html[data-theme=light] .btn-wa{color:#06301a;background:linear-gradient(120deg,#6fdca0,#a8ecc4)}
html[data-theme=light] em{background-image:linear-gradient(100deg,var(--accent) 0%,#15202b 48%,var(--accent) 72%)}
html[data-theme=light] .to-top,html[data-theme=light] .toast,html[data-theme=light] .float-card,html[data-theme=light] .chip b{background:rgba(255,255,255,.95)}
html[data-theme=light] .stage .core{background:radial-gradient(circle at 35% 30%,#fff,rgba(255,255,255,.5));box-shadow:0 0 90px rgba(59,122,98,.2)}
html[data-theme=light] .marquee{background:rgba(255,255,255,.5)}html[data-theme=light] .step .dot{background:#fff}
html[data-theme=light] .tabs,html[data-theme=light] .dtabs{background:rgba(255,255,255,.7)}
html[data-theme=light] .tabs .pill,html[data-theme=light] .dtabs button.on{background:linear-gradient(120deg,#cddcf5,#e8eff9);color:#15202b}html[data-theme=light] .tabs button[aria-selected=true]{color:#15202b}
html[data-theme=light] .track,html[data-theme=light] .meter{background:rgba(30,44,60,.1)}
html[data-theme=light] .rg .bgc{stroke:rgba(30,44,60,.1)}html[data-theme=light] .tt td,html[data-theme=light] .perk,html[data-theme=light] .f2,html[data-theme=light] .ichip{background:rgba(255,255,255,.7)}
html[data-theme=light] .avatar,html[data-theme=light] .av-big{border-color:#fff}html[data-theme=light] .success{background:rgba(240,244,248,.8)}html[data-theme=light] .success .box{background:#fff}
html[data-theme=light] .badge{color:#14673b}html[data-theme=light] .msg.err{color:#8c2f2f}html[data-theme=light] .msg.okk{color:#14673b}html[data-theme=light] .demo-note{color:#6a5410}
html[data-theme=light] .p{color:#14673b}html[data-theme=light] .a{color:#8c2f2f}html[data-theme=light] .l{color:#6a5410}
html[dir=ltr] .progress{right:auto;left:0;transform-origin:left;background:linear-gradient(90deg,var(--sage),var(--gold),var(--blue))}
html[dir=ltr] .to-top{left:auto;right:22px}html[dir=ltr] .field select{background-position:right 15px center;padding-left:16px;padding-right:40px}
html[dir=ltr] .eyebrow:before,html[dir=ltr] .steps:before{transform-origin:left}html[dir=ltr] .stages .num{left:auto;right:20px}
html[dir=ltr] .ltr,html[dir=ltr] .ltr::placeholder{text-align:left}html[dir=ltr] .btn:hover svg{transform:translateX(4px)}html[dir=ltr] .btn svg{transform:scaleX(-1)}html[dir=ltr] .btn:hover svg{transform:scaleX(-1) translateX(-4px)}
html[dir=ltr] .skip{right:auto;left:14px}
@media(max-width:640px){.lang-btn span{display:none}.lang-btn{width:40px;padding:0;justify-content:center}.tools{gap:4px}html[dir=ltr] .to-top{right:16px}}

/* Light-theme fixes: elements whose dark-theme colours were near-white and vanished on light backgrounds */
html[data-theme=light] .cursor-glow{background:radial-gradient(circle,rgba(55,89,154,.16),transparent 62%)}
html[data-theme=light] .ring{border-color:rgba(55,89,154,.4)}
html[data-theme=light] .ring.r2{border-color:rgba(59,122,98,.28)}
html[data-theme=light] .btn:hover,html[data-theme=light] .field input:hover,html[data-theme=light] .field select:hover,html[data-theme=light] .field textarea:hover{border-color:rgba(30,44,60,.38)}
html[data-theme=light] .sample,html[data-theme=light] .hw-item .due.soon{color:#6a5410;border-color:rgba(133,105,27,.55)}
html[data-theme=light] .toast{color:#14673b;border-color:rgba(27,143,85,.45)}
html[data-theme=light] .avopt.on{border-color:var(--blue)}
html[data-theme=light] .grade{color:var(--text)!important}
html[data-theme=light] .track i{filter:saturate(1.6) brightness(.82)}
html[data-theme=light] .d.l{background:rgba(133,105,27,.16);color:#6a5410}html[data-theme=light] .d.a{background:rgba(187,69,69,.14)}

/* ===== v9 light-mode polish (light only: dark mode is untouched) ===== */
html[data-theme=light]{--line:rgba(30,44,60,.24);--muted:#44556a;--gold:#7a5c10}
html[data-theme=light] .bg{background:radial-gradient(760px 520px at 6% -4%,rgba(238,222,176,.6),transparent 62%),radial-gradient(1200px 700px at 85% -10%,#dde8f2,transparent 60%),radial-gradient(900px 600px at 0% 100%,#e2eee7,transparent 60%),var(--bg)}
/* orbits around the logo: clearly visible, with small planets */
html[data-theme=light] .ring{border-width:1.6px;border-color:rgba(55,89,154,.62)}
html[data-theme=light] .ring.r1{border-style:dashed;border-color:rgba(46,106,84,.8)}
html[data-theme=light] .ring.r2{border-style:solid;border-color:rgba(55,89,154,.6)}
html[data-theme=light] .ring:after{content:"";position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 5px rgba(55,89,154,.16),0 4px 10px rgba(55,89,154,.35)}
html[data-theme=light] .ring.r2:after{top:14.6%;left:14.6%}
html[data-theme=light] .ring.r1:after{top:85.4%;left:85.4%;background:var(--sage);box-shadow:0 0 0 5px rgba(59,122,98,.16),0 4px 10px rgba(59,122,98,.35)}
html[data-theme=light] .stage .core{background:#fff;border:1.5px solid rgba(55,89,154,.3);box-shadow:0 22px 60px rgba(55,89,154,.2),0 0 0 10px rgba(55,89,154,.06)}
html[data-theme=light] .chip b{color:#223a66;border:1.5px solid rgba(55,89,154,.4);box-shadow:0 8px 22px rgba(30,50,80,.14)}
/* cards, FAQ, hours, forms: crisper edges */
html[data-theme=light] .card{border-color:rgba(30,44,60,.2);box-shadow:0 1px 0 rgba(255,255,255,.9) inset,0 12px 32px rgba(30,50,80,.09)}
html[data-theme=light] .faq details{background:#fff;box-shadow:0 6px 18px rgba(30,50,80,.06)}html[data-theme=light] .faq details[open]{background:#fbfcfe;border-color:color-mix(in srgb,var(--accent) 60%,transparent)}
html[data-theme=light] .field input,html[data-theme=light] .field select,html[data-theme=light] .field textarea{border-color:rgba(30,44,60,.3)}
html[data-theme=light] .field input::placeholder,html[data-theme=light] .field textarea::placeholder{color:#6b7b8d}
html[data-theme=light] .tool,html[data-theme=light] .lang-btn,html[data-theme=light] .btn:not(.btn-primary){background:rgba(255,255,255,.85);border-color:rgba(30,44,60,.28)}
html[data-theme=light] .nav{border-color:rgba(30,44,60,.2);box-shadow:0 12px 34px rgba(30,50,80,.12)}
html[data-theme=light] .footer{background:rgba(255,255,255,.55)}
/* gallery */
html[data-theme=light] .gx-tabs{background:#fff;border-color:rgba(30,44,60,.24);box-shadow:0 8px 24px rgba(30,50,80,.08)}
html[data-theme=light] .gx-tabs button{color:#44556a}html[data-theme=light] .gx-tabs button[aria-selected=true]{color:#fff}
html[data-theme=light] .gx-slide{border-color:rgba(30,44,60,.2);box-shadow:0 26px 60px rgba(30,50,80,.28)}html[data-theme=light] .gx-slide:not(.on){filter:saturate(.85) brightness(.97)}
html[data-theme=light] .gx-glow.show{opacity:.38}
html[data-theme=light] .gx-dots button{background:rgba(30,44,60,.22)}html[data-theme=light] .gx-dots button.on{background:var(--gx)}
html[data-theme=light] ::selection{background:rgba(55,89,154,.22)}

/* Hide only the gallery downloadable-activities panel requested for removal. */
#gallery-grid .gx-folder { display: none !important; }
