/* V11 visual system — scoped to marketing, signup and staff consoles; guest kiosk is retained. */
body:has(.wrap.nav){--bg:#f8faf8;--bg2:#eef4f0;--card:#fff;--line:#dce5df;--ink:#132e2b;--muted:#526a64;--gold:#126558;--gold2:#126558;--teal:#126558;--rust:#ae4939;background:var(--bg);font-family:Manrope,system-ui,sans-serif}
body:has(.wrap.nav) header{background:#ffffffed;border-color:#dce5df}
body:has(.wrap.nav) .nav{height:auto;min-height:82px;gap:18px;flex-wrap:wrap;padding-block:15px}
body:has(.wrap.nav) .nav nav{gap:16px;flex:1}.nav .navLink.login{display:inline-flex!important;padding:10px 18px;border:1px solid #b7cdc4;border-radius:30px;color:#164b40!important;font-weight:800}
body:has(.wrap.nav) .btn.gold{background:#126558;color:#fff;border-color:#126558;box-shadow:0 5px 15px #12655818}
body:has(.wrap.nav) .hero{background:radial-gradient(ellipse at 10% 20%,#e6f2e9,transparent 70%),#f8faf8;min-height:710px;padding:50px 0;gap:24px}
body:has(.wrap.nav) .hero h1{font-family:Manrope,system-ui,sans-serif;font-weight:650;font-size:clamp(42px,4.3vw,70px);letter-spacing:-2.7px;line-height:1.06}
body:has(.wrap.nav) .hero h1 em{font-style:normal;color:#126558}
body:has(.wrap.nav) .hero .lead{line-height:1.7;font-size:18px}
body:has(.wrap.nav) h2{font-family:Manrope,system-ui,sans-serif;font-size:clamp(30px,3.4vw,48px);font-weight:650;letter-spacing:-1.5px;line-height:1.15}
body:has(.wrap.nav) h2 em{font-style:normal}
body:has(.wrap.nav) .askBox{background:#fff;border:1px solid #cdded4;box-shadow:0 15px 40px #1b40380a;border-radius:18px}
body:has(.wrap.nav) .askRow input{background:#f5f8f6;color:#173d34;border:1px solid #d9e6df}
body:has(.wrap.nav) .askChips button{background:#eef5f0;color:#315b4a;border-color:#d6e5dc}
body:has(.wrap.nav) .scene{border-radius:30px;overflow:hidden;box-shadow:0 26px 60px #203c3020;border:1px solid #e1e8e2}
body:has(.wrap.nav) .kScreen{color:#f5f6f2;background:#102521}
body:has(.wrap.nav) .kPanel{background:#142e28;color:#fff}
body:has(.wrap.nav) .kText{color:#e0ebe5}
body:has(.wrap.nav) .plan,body:has(.wrap.nav) .feature,body:has(.wrap.nav) .step,body:has(.wrap.nav) .joinCard{background:#fff;border:1px solid #dce5df;border-radius:20px}
body:has(.wrap.nav) .joinBand{background:#e6f1e9}
body:has(.wrap.nav) .affiliateBand{background:#113c32;color:#fff}.affiliateBand .lead{color:#d2e4da}.affiliateBand .btn{color:#fff;border-color:#80a698}.affiliateBand .kicker{color:#a5d5b9}
body:has(.wrap.nav) .affGrid{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}.affGrid .affDetail{padding:32px;border:1px solid #517266;border-radius:24px}.affDetail p{color:#d2e4da}
body:has(.wrap.nav) .nav .partnerLink{font-weight:750;color:#126558}
/* Auth and public application screens */
body:has(.signupPage){background:#f4f8f5;color:#172e28;font-size:17px}body:has(.signupPage) .top{background:#fff}body:has(.signupPage) .top nav{display:none}body:has(.signupPage) .signupPage{max-width:1120px;margin:48px auto;gap:72px;align-items:start}body:has(.signupPage) h1{font-family:system-ui,sans-serif;font-size:clamp(34px,4vw,56px);letter-spacing:-2px}body:has(.signupPage) form{background:white;padding:32px;border:1px solid #dce7df;border-radius:24px;box-shadow:0 20px 60px #0a493b08}body:has(.signupPage) input{min-height:46px;border:1px solid #b7cabe;background:#fcfdfb;color:#172e28;border-radius:9px}body:has(.signupPage) input[type=checkbox]{min-height:0}body:has(.signupPage) .primary{background:#126558;color:white;border-color:#126558}body:has(.signupPage) .topActions{display:flex;flex-wrap:wrap;gap:10px}
/* Console shell and login */
body:has(#root){--bg:#f3f6f5;--side:#12382f;--side2:#1c4a3e;--ink:#18342c;--muted:#536b61;--line:#dbe5de;--gold:#126558;--gold2:#acd6bb;font-size:16px}
body:has(#root) .card{border-radius:17px;border-color:#dbe5de;box-shadow:0 4px 15px #163c2703}body:has(#root) .kpi{border-radius:16px;padding:22px;border-color:#dbe5de}body:has(#root) .kpi b{letter-spacing:-1px}body:has(#root) .navg button{font-size:15px;padding:11px 12px}body:has(#root) .navg button.on{background:#28624f;box-shadow:inset 3px 0 #b4d7bf}body:has(#root) .navg h6{color:#b0c9b8;font-size:12px}body:has(#root) .brand small{color:#c3d7c8}body:has(#root) .btn.pri{background:#126558;color:#fff;border-color:#126558}body:has(#root) h1,body:has(#root) h2{font-family:Manrope,system-ui,sans-serif;font-weight:700}body:has(#root) .inp{min-height:45px;border-radius:9px}body:has(#root) .login{background:radial-gradient(ellipse at 15% 0%,#dfece4,transparent 60%),#f4f8f5;padding:32px 18px;min-height:100vh}body:has(#root) .login form{max-width:460px;width:100%;border-radius:24px;padding:38px;border:1px solid #d5e2d9;box-shadow:0 25px 80px #163c3010}body:has(#root) .login .brand{font-size:21px}body:has(#root) .login h1{font-size:30px;letter-spacing:-1px}body:has(#root) .login a{color:#126558}body:has(#root) .loginBack{font-size:14px;margin:0}body:has(#root) .tw{border-radius:12px}body:has(#root) td,body:has(#root) th{padding:14px 12px;font-size:14px}
@media(max-width:1100px){body:has(.wrap.nav) .nav nav{display:none!important}body:has(.wrap.nav) .hero{min-height:0}body:has(.wrap.nav) .heroText{padding:26px 5vw}}
@media(max-width:760px){body:has(.wrap.nav) .nav{gap:10px;justify-content:space-between}.nav .logo{order:0}.nav #siteLanguage{order:1}.nav .sp{display:none}.nav .navLink.login,.nav .btn.gold{order:2;flex:1;justify-content:center;min-height:46px}.nav .partnerLink{order:3;width:100%;text-align:center}.nav .logo span.t{display:inline!important;font-size:16px}.nav .ir-locale-selector{max-width:110px}body:has(.wrap.nav) .hero{grid-template-columns:1fr;padding:20px 0 40px}body:has(.wrap.nav) .heroArt{padding:0 5vw}body:has(.wrap.nav) .hero h1{letter-spacing:-1.6px}body:has(.wrap.nav) .affGrid{grid-template-columns:1fr;gap:25px}body:has(.signupPage) .signupPage{margin:25px 18px;display:block}body:has(.signupPage) form{padding:22px}body:has(.signupPage) .top{flex-wrap:wrap;padding:15px}body:has(.signupPage) .topActions{width:100%}body:has(#root) .login form{padding:26px}body:has(#root) .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
:focus-visible{outline:3px solid #28866a;outline-offset:3px}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}

body:has(.wrap.nav) .msg.g{background:#e4eee6;color:#17382c}body:has(.wrap.nav) .msg.a{background:#edf3ef;color:#17382c}body:has(.wrap.nav) form.req input,body:has(.wrap.nav) form.req select,body:has(.wrap.nav) form.req textarea{background:#f9fcf9;color:#17382c}body:has(.wrap.nav) .askRow button[type=button]{background:#e7f0e9;color:#17382c}body:has(.wrap.nav) .kLang{color:#17382c}body:has(.wrap.nav) .arch{background:#161f1b}body:has(.wrap.nav) .heroArt::before{background:linear-gradient(90deg,#f8faf8 0%,transparent 30%)}
