/* SUN LIFE V2.0 — International UI system
   Presentation-only layer. It does not change wallet, payment, package or access logic. */
:root{
  --sl-forest:#052b27;--sl-deep:#031d1c;--sl-emerald:#08765d;--sl-green:#0c956d;
  --sl-gold:#e7b83f;--sl-gold-2:#f7d879;--sl-mist:#f3f7f5;--sl-paper:#fff;
  --sl-ink:#122b29;--sl-muted:#71817d;--sl-line:#dfe9e5;
  --sl-shadow:0 18px 50px rgba(5,39,34,.10);--sl-shadow-soft:0 8px 26px rgba(5,39,34,.07);
  --sl-radius:22px;
}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body.user-site{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:#f2f6f4;color:var(--sl-ink);font-size:14px;line-height:1.58;letter-spacing:-.01em}
body.user-site button,body.user-site input,body.user-site select,body.user-site textarea{font-family:inherit}
.user-site a{transition:color .18s ease,background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.user-site .page-progress{background:linear-gradient(90deg,var(--sl-gold),#4dbd9b,var(--sl-gold));box-shadow:0 0 14px #dcb54466}
.user-site .topbar{width:100%;max-width:none;height:74px;padding:10px clamp(16px,3vw,44px);background:rgba(3,31,29,.96);border-bottom:1px solid rgba(231,184,63,.24);box-shadow:0 8px 30px rgba(1,25,23,.12);color:#fff;backdrop-filter:blur(18px)}
.user-site .topbar .brand img{width:154px;height:48px;padding:3px 8px;border-radius:9px;background:#fff;object-fit:contain;mix-blend-mode:normal}
.user-site .top-actions{gap:9px}
.user-site .top-actions .icon-btn,.user-site .top-actions .avatar,.user-site .theme-toggle{width:40px;height:40px;border-radius:13px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;box-shadow:none}
.user-site .top-actions .avatar{background:linear-gradient(145deg,#e9c760,#a97b1b);color:#143a31}
.user-site .language-select{min-height:36px;padding:7px 28px 7px 10px;border:1px solid rgba(255,255,255,.18);border-radius:12px;background:#123e37;color:#f9f8ef;font-size:11px;font-weight:750}
.user-site .app-main{width:min(calc(100% - 44px),1280px);max-width:1280px;margin:0 auto;padding:28px 0 100px;min-height:calc(100vh - 74px)}
.user-site .app-main.public-main{width:100%;max-width:none;padding:0;margin:0;min-height:0}
.user-site .flash-wrap{max-width:1280px;padding:0 22px}
.user-site .btn{min-height:43px;padding:11px 18px;border-radius:13px;font-size:12px;font-weight:800;letter-spacing:.01em;box-shadow:none}
.user-site .btn.primary{color:white;background:linear-gradient(125deg,#08775c,#06483f);box-shadow:0 9px 22px rgba(6,94,72,.18)}
.user-site .btn.primary:hover{transform:translateY(-2px);box-shadow:0 13px 26px rgba(6,94,72,.24)}
.user-site .btn.gold{color:#173b32;background:linear-gradient(125deg,#ffe59a,#e4b33d);box-shadow:0 9px 22px rgba(204,157,43,.2)}
.user-site .btn.light{background:#fff;border:1px solid var(--sl-line);color:#26423c}
.user-site .btn.danger-outline{background:#fff;border:1px solid #f1d2cf;color:#b13f39}
.user-site .eyebrow{font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;color:#a47a1f}
.user-site .muted{color:var(--sl-muted)}
.user-site .page-head{margin:0 0 22px}
.user-site .page-head h1{font-size:clamp(25px,3vw,34px);font-weight:850;letter-spacing:-.04em;color:#103d34;margin:6px 0}
.user-site .page-head p{font-size:13px;line-height:1.7}
.user-site .back-link{font-size:11px;font-weight:800;color:#58716a}
.user-site .section{padding:22px 0}
.user-site .section-head{margin-bottom:15px}
.user-site .section-head h2,.user-site .section h2{font-size:18px;font-weight:850;letter-spacing:-.025em;color:#153e35}
.user-site .section-subtitle{font-size:12px;color:#81918c}
.user-site .balance-card{border:1px solid rgba(241,211,121,.4);border-radius:25px;background:radial-gradient(circle at 85% 0%,rgba(60,163,127,.38),transparent 34%),linear-gradient(125deg,#052c27,#06463d 62%,#0a7658);box-shadow:0 20px 45px rgba(4,53,43,.19);padding:28px;isolation:isolate}
.user-site .balance-card:after{border-color:#f5d77a39;box-shadow:0 0 0 25px #f5d77a0b,0 0 0 55px #f5d77a08,0 0 0 90px #f5d77a05}
.user-site .balance-top{color:#d5e6dd;font-size:12px;font-weight:700}
.user-site .balance-chip{color:#ffe9a7;border-color:#eed27b6b;background:#fff1c210}
.user-site .balance-value{font-size:clamp(32px,4vw,48px);font-weight:850;letter-spacing:-.05em}
.user-site .balance-caption{color:#c4d8ce;font-size:11px}
.user-site .balance-actions .btn{border-radius:12px}
.user-site .quick-grid{gap:13px;padding:22px 0}
.user-site .quick-grid a{font-size:11px;font-weight:750;color:#435c55}
.user-site .quick-grid span{width:54px;height:54px;border-radius:17px;background:linear-gradient(145deg,#fff,#f0f7f3);border:1px solid #e2ece7;color:#08775c;box-shadow:0 8px 20px rgba(8,67,52,.08)}
.user-site .task-card,.user-site .sub-row,.user-site .news-row,.user-site .active-plan-strip,.user-site .filter-info,.user-site .empty-inline,.user-site .simple-row,.user-site .member-row,.user-site .ledger-row,.user-site .wallet-bucket,.user-site .help-shortcuts a,.user-site .faq-item{border:1px solid var(--sl-line);border-radius:17px;background:#fff;box-shadow:0 6px 20px rgba(8,56,45,.035)}
.user-site .task-card{padding:16px;transition:transform .2s,box-shadow .2s}
.user-site .task-card:hover,.user-site .sub-row:hover,.user-site .news-row:hover,.user-site .help-shortcuts a:hover{transform:translateY(-2px);box-shadow:var(--sl-shadow-soft)}
.user-site .task-icon{border-radius:14px;background:linear-gradient(145deg,#f7e7b4,#e6c15a);color:#24473a}
.user-site .filter-chip{background:#fff;border:1px solid var(--sl-line);color:#49615a;border-radius:12px;padding:9px 14px;font-size:11px}
.user-site .filter-chip.active{background:linear-gradient(125deg,#0d765b,#064438);border-color:#0b6c53;color:#fff;box-shadow:0 6px 17px rgba(6,94,72,.16)}
.user-site .plan-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.user-site .plan-card{border:1px solid #e0e9e3;border-radius:22px;box-shadow:var(--sl-shadow-soft);transition:transform .22s,box-shadow .22s}
.user-site .plan-card:hover{transform:translateY(-4px);box-shadow:var(--sl-shadow)}
.user-site .plan-image{height:190px;background:linear-gradient(135deg,#e6f1eb,#f6f2e6)}
.user-site .plan-image img{transition:transform .6s cubic-bezier(.2,.75,.25,1)}
.user-site .plan-card:hover .plan-image img{transform:scale(1.06)}
.user-site .plan-tag{background:#f7e7af;color:#24483a}
.user-site .daily-tag{background:#0a4b3c;color:#fff}
.user-site .plan-body{padding:19px 20px 0}
.user-site .plan-body h2{color:#163f35;font-weight:850}
.user-site .plan-price-row strong{color:#0b654e;font-size:30px}
.user-site .plan-foot{border-color:#e8eee9}
.user-site .benefit-pill{background:#eaf5ed;border-color:#d4e9d8;color:#23734e}
.user-site .detail-banner{border-radius:22px;box-shadow:var(--sl-shadow-soft)}
.user-site .detail-price{border:1px solid var(--sl-line);border-radius:18px;box-shadow:var(--sl-shadow-soft)}
.user-site .wallet-bucket{padding:16px}
.user-site .wallet-bucket strong{font-size:21px;color:#0d674f}
.user-site .ledger-row{padding:14px 15px;margin:8px 0}
.user-site .ledger-amount{font-weight:850;color:#14684f}
.user-site .help-search{border:1px solid var(--sl-line);border-radius:15px;background:#fff;box-shadow:var(--sl-shadow-soft)}
.user-site .help-search input{color:#183d34}
.user-site .empty-state{padding:50px 20px;border:1px dashed #cbdcd2;border-radius:20px;background:#fbfdfb}
.user-site .status{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:99px;font-size:10px;font-weight:850}
.user-site .status.success{background:#e7f6ec;color:#147246}
.user-site .status.pending{background:#fff5d8;color:#8a6817}
.user-site .status.danger{background:#fff0ef;color:#b13b36}
.user-site form.stack label,.user-site .stack label{font-size:11px;font-weight:800;color:#38584e;gap:7px}
.user-site form.stack input,.user-site form.stack select,.user-site form.stack textarea,.user-site .stack input,.user-site .stack select,.user-site .stack textarea,.user-site input:not([type=checkbox]):not([type=radio]),.user-site select,.user-site textarea{min-height:45px;border:1px solid #dce8e2;border-radius:12px;background:#fbfdfc;padding:11px 13px;color:#183b32;font-size:13px;outline:none;transition:border-color .18s,box-shadow .18s,background .18s}
.user-site input:focus,.user-site select:focus,.user-site textarea:focus{border-color:#41a68a;box-shadow:0 0 0 4px rgba(41,151,115,.12);background:#fff}
.user-site input::placeholder,.user-site textarea::placeholder{color:#9aa9a2}
.user-site .table-wrap{border:1px solid var(--sl-line);border-radius:16px;background:#fff;box-shadow:var(--sl-shadow-soft)}
.user-site table{border-collapse:separate;border-spacing:0;min-width:620px;width:100%;font-size:11px}
.user-site th{background:#f2f7f4;color:#527068;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.user-site th,.user-site td{padding:12px 13px;border-bottom:1px solid #edf2ee}
.user-site tr:last-child td{border-bottom:0}
.user-site .profile-hero{border:1px solid rgba(237,207,112,.35);border-radius:24px;background:radial-gradient(circle at 85% 0%,rgba(230,194,95,.22),transparent 30%),linear-gradient(130deg,#052f29,#0b604b);color:#fff;padding:26px;box-shadow:var(--sl-shadow)}
.user-site .profile-hero h1{color:#fff;font-size:25px}
.user-site .profile-hero p,.user-site .profile-created{color:#c6ded3}
.user-site .member-badge{display:inline-flex;border:1px solid #f2d57d80;background:#fff2c11c;color:#f7dd8f;border-radius:99px;padding:5px 10px;font-size:9px;font-weight:900;letter-spacing:.1em}
.user-site .profile-wallet-strip span{border:1px solid #ffffff20;background:#ffffff10;border-radius:11px;padding:8px 10px;color:#e6f0e9;font-size:10px}
.user-site .menu-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.user-site .menu-list>a{padding:14px;border:1px solid var(--sl-line);border-radius:15px;background:#fff;box-shadow:0 6px 18px rgba(8,56,45,.035);font-size:12px}
.user-site .menu-list>a>span{color:#0a7658}
.user-site .bottom-nav{background:rgba(4,40,34,.97);border:1px solid rgba(230,190,87,.35);box-shadow:0 12px 35px rgba(1,27,23,.25);backdrop-filter:blur(18px)}
.user-site .bottom-nav a{color:#c7dbd1}
.user-site .bottom-nav a.active{background:linear-gradient(145deg,#eec95d,#c99724);color:#173e34}
.user-site .support-float-menu .support-float{background:linear-gradient(145deg,#f9dc8c,#d6a52d);color:#173c32;box-shadow:0 12px 25px rgba(7,45,35,.2)}
.user-site .support-float-panel{border-color:#e1e9e2;box-shadow:var(--sl-shadow)}
.user-site .footer{background:linear-gradient(130deg,#031e1c,#07483d);color:#e6f0e9;border-radius:22px 22px 0 0}
.user-site .footer a{color:#d6e7df}
.user-site .footer small,.user-site .footer p{color:#adc7bb}
.user-site .footer-brand img{background:#fff;border-radius:8px;padding:4px}
.user-site .flash-wrap .alert{border-radius:13px;border:1px solid transparent;font-size:12px}
.user-site .flash-wrap .alert.success{background:#e9f7ee;border-color:#ccebd6;color:#176a42}
.user-site .flash-wrap .alert.danger{background:#fff0ef;border-color:#f4d2ce;color:#a53630}
.user-site .flash-wrap .alert.warning{background:#fff8e5;border-color:#f0e0ae;color:#745813}

/* Public landing page */
.public-landing{background:#f4f8f5;color:#132c28;overflow:hidden}
.public-nav{width:min(1320px,calc(100% - 64px));min-height:82px;padding:11px 0}
.public-brand img{width:175px;height:59px;background:#fff;border-radius:9px;padding:3px 7px;object-fit:contain}
.public-nav-actions{gap:10px}
.public-nav-actions .language-select{background:#fff;color:#244b41;border-color:#e1e9e3;min-width:82px}
.public-login-link{color:#174c40;border:1px solid #d8e4dc;border-radius:12px;padding:10px 15px;font-size:12px}
.public-login-link:hover{background:#edf6f0}
.public-register-link{background:linear-gradient(120deg,#f6d879,#dca92f)!important;color:#173a30!important;border:1px solid #dfb644;box-shadow:0 8px 20px #bd8e2b2e}
.landing-hero{width:min(1320px,calc(100% - 64px));min-height:510px;margin:0 auto 24px;padding:65px clamp(32px,6vw,86px);border-radius:30px;background-color:#042d28;box-shadow:0 25px 65px rgba(4,50,39,.19);background-position:center right!important}
.landing-hero:before{inset:12px;border-radius:23px;border-color:#edcf762a}
.landing-hero-content{width:min(650px,61%)}
.landing-hero h1{font-size:clamp(42px,5.1vw,70px);letter-spacing:-.055em;line-height:1.04}
.landing-hero p{font-size:15px;line-height:1.8;max-width:530px}
.landing-hero .hero-eyebrow{border-radius:99px;background:#fff1c115;color:#f7db83;letter-spacing:.16em;font-size:9px}
.landing-hero .hero-orbit-mark{right:8%;border-color:#eecf7738;color:#f3d27435;animation:sl-orbit-drift 13s ease-in-out infinite alternate}
.welcome-bonus-note{border-radius:14px;box-shadow:0 12px 30px #0002}
.hero-actions .btn{min-height:49px;border-radius:13px}
.hero-stats{gap:28px}
.hero-stats b{font-size:15px}
.public-landing .section{width:min(1200px,calc(100% - 64px));max-width:1200px;padding:58px 0}
.public-landing .section-heading-block h2,.public-landing .public-about-copy h2{font-size:clamp(25px,3vw,36px);font-weight:850;letter-spacing:-.04em;color:#113c32}
.public-landing .section-heading-block p,.public-landing .public-about-copy p{font-size:13px;line-height:1.8}
.public-services-section .feature-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.public-services-section .feature-card{min-height:188px;padding:22px;border-radius:20px;border-color:#e1ebe4;background:linear-gradient(155deg,#fff,#f5f9f6);box-shadow:0 10px 28px rgba(7,62,43,.05)}
.public-services-section .feature-card:hover{transform:translateY(-5px);box-shadow:0 18px 36px rgba(7,62,43,.1)}
.public-services-section .feature-icon{background:linear-gradient(145deg,#f9e7ae,#e4bf57);color:#185240;border-radius:14px}
.public-about-section{padding:40px!important;border:1px solid #dfebe3;border-radius:26px;background:linear-gradient(120deg,#edf5ef,#fff)}
.public-about-mark{background:#fff;border-color:#e3e9dc;box-shadow:var(--sl-shadow-soft)}
.public-steps-section .steps>div{border-radius:18px;box-shadow:0 10px 26px rgba(14,61,43,.05)}
.public-steps-section .steps b{background:linear-gradient(135deg,#f7e4a5,#e4bf5c);color:#174c3c;border-radius:12px}
.public-plans-section .mini-plan{border-radius:19px}
.public-faq-section .faq-item{border-radius:14px;background:#fff}
.public-final-cta{background:radial-gradient(circle at 85% 0%,#1d8a66 0,transparent 31%),linear-gradient(120deg,#042d29,#075b46)!important;border:1px solid #e7c45c66;box-shadow:0 20px 45px rgba(5,55,41,.2);border-radius:25px!important;color:white}
.public-final-cta h2{color:#fff!important}
.public-final-cta p{color:#d3e5da!important}
.public-footer{width:100%!important;max-width:none!important;border-radius:0;margin-top:30px;padding:30px max(32px,calc((100% - 1200px)/2))!important}
.public-footer .footer-brand img{width:160px;height:54px}

/* Authentication: premium international split layout */
.auth-login-layout,.auth-register-layout,.auth-layout{width:min(1180px,calc(100% - 40px));min-height:min(760px,calc(100svh - 46px));margin:24px auto;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);align-items:stretch;gap:0;border:1px solid #dce8e1;border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 25px 70px rgba(4,43,32,.13)}
.auth-promo-panel{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:clamp(28px,5vw,62px);overflow:hidden;background:radial-gradient(circle at 80% 20%,rgba(220,183,76,.25),transparent 28%),linear-gradient(140deg,#052c28,#075b49 72%,#06362f);color:#fff}
.auth-promo-panel:before{content:"";position:absolute;width:440px;height:440px;right:-210px;top:-160px;border:1px solid #f1d27a66;border-radius:50%;box-shadow:0 0 0 30px #f1d27a0a,0 0 0 70px #f1d27a08,0 0 0 120px #f1d27a05;animation:sl-orbit-drift 17s ease-in-out infinite alternate}
.auth-promo-brand img{width:180px;height:62px;padding:4px 8px;border-radius:9px;background:#fff;object-fit:contain}
.auth-promo-panel .eyebrow{margin-top:30px;color:#efd37c}
.auth-promo-panel h2{max-width:560px;color:#fff;font-size:clamp(30px,4vw,49px);line-height:1.12;letter-spacing:-.05em;margin:12px 0}
.auth-promo-panel p{max-width:470px;color:#cfe1d6;font-size:14px;line-height:1.8}
.auth-promo-points{display:grid;gap:11px;margin-top:28px;color:#e8f1e9;font-size:12px;font-weight:750}
.auth-promo-points span:before{content:"✓";display:inline-grid;place-items:center;width:21px;height:21px;margin-right:9px;border-radius:50%;background:#f2d47a;color:#164737;font-weight:950}
.auth-promo-bonus{display:flex;align-items:center;gap:12px;padding:12px 15px;border:1px solid #f2d77a66;border-radius:15px;background:#fff1c113;color:#ffe49b;margin-top:17px}
.auth-promo-bonus b,.auth-promo-bonus small{display:block}.auth-promo-bonus b{font-size:12px}.auth-promo-bonus small{font-size:9px;color:#d5e6d8}
.auth-shell{width:100%;max-width:none;margin:0;padding:clamp(24px,4vw,56px);display:flex;flex-direction:column;justify-content:center;background:#fff}
.auth-shell .auth-controls{margin-bottom:30px}
.auth-shell .auth-controls select{border:1px solid #dce8e2;border-radius:10px;background:#f9fcfa;color:#34574a}
.auth-shell h1{font-size:34px;line-height:1.12;letter-spacing:-.045em;font-weight:900;color:#123b31;margin:7px 0}
.auth-shell>p{font-size:12px;line-height:1.7;margin-bottom:20px}
.auth-shell .stack{gap:14px}
.auth-shell .stack label{font-size:11px;color:#3a5f51;font-weight:800}
.auth-shell .stack input,.auth-shell .stack select{min-height:48px;border:1px solid #dce8e2;background:#f9fcfa;border-radius:12px}
.auth-shell .btn{min-height:48px;border-radius:12px}
.auth-logo{width:150px;height:54px;border-radius:8px;background:#fff;object-fit:contain}

/* Authenticated user layout: desktop sidebar, compact mobile tab bar */
.user-desktop-sidebar{position:fixed;z-index:28;left:0;top:74px;bottom:0;width:246px;padding:22px 14px 26px;background:linear-gradient(180deg,#052b27,#063b33);border-right:1px solid rgba(230,190,91,.2);overflow-y:auto;display:none}
.user-desktop-sidebar .sidebar-kicker{padding:0 12px 11px;color:#83a99a;font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.user-desktop-sidebar nav{display:grid;gap:5px}
.user-desktop-sidebar a{display:flex;align-items:center;gap:11px;min-height:43px;padding:9px 12px;border-radius:12px;color:#c9ddd3;font-size:11px;font-weight:750}
.user-desktop-sidebar a span{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#ffffff10;color:#f1d37d;font-size:13px}
.user-desktop-sidebar a:hover{background:#ffffff11;color:#fff}
.user-desktop-sidebar a.active{background:linear-gradient(105deg,#e7bd52,#c99627);color:#153c31;box-shadow:0 7px 18px #0002}
.user-desktop-sidebar a.active span{background:#fff4ce;color:#173f32}
.user-desktop-sidebar .sidebar-divider{height:1px;margin:12px 8px;background:#ffffff19}
.user-site.user-authenticated .app-main{width:min(calc(100% - 300px),1280px);max-width:1280px;margin:0 24px 0 270px;padding-top:30px}
.user-site.user-authenticated .topbar{padding-left:270px}
.user-site.user-authenticated .user-desktop-sidebar{display:block}
.user-site.user-authenticated .bottom-nav{display:none}
.user-site.user-authenticated .support-float-menu{bottom:22px}

/* Modals and smart alerts */
.user-site .welcome-overlay{backdrop-filter:blur(8px);background:rgba(2,24,22,.72);padding:18px}
.user-site .welcome-modal{width:min(460px,100%);border:1px solid #ead28b;border-radius:24px;background:linear-gradient(180deg,#fff,#f7faf7);box-shadow:0 28px 80px rgba(0,0,0,.32);padding:24px;color:#183d33;animation:sl-modal-in .25s cubic-bezier(.2,.8,.2,1)}
.user-site .welcome-modal h2{font-size:22px;font-weight:900;letter-spacing:-.035em;color:#123b31}
.user-site .welcome-modal p{font-size:12px;line-height:1.7;color:#667a71}
.user-site .welcome-modal img{width:100%;max-height:190px;object-fit:cover;border-radius:16px}
.user-site .welcome-close{width:34px;height:34px;border-radius:10px;background:#eff5f0;color:#375b4d}
.user-site .welcome-modal label{font-size:11px;font-weight:800;color:#335c4c}
.user-site .welcome-modal input{width:100%;min-height:46px;border:1px solid #dbe7df;border-radius:11px;background:#fbfdfb;padding:11px}
.user-site .welcome-modal[hidden],.user-site [hidden]{display:none!important}
#sunlifeGlobalAlert{width:min(560px,calc(100% - 24px));top:calc(env(safe-area-inset-top) + 14px)}
.sunlife-alert-toast{border-radius:16px;box-shadow:0 20px 55px rgba(0,0,0,.26)}

/* Admin workspace: retain separate operational identity */
.admin-body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:#eef3f1;color:#1b332e}
.admin-sidebar{background:linear-gradient(180deg,#032622,#063a32 75%,#052a25)!important;border-right:1px solid rgba(225,185,80,.18)!important;box-shadow:12px 0 35px rgba(2,35,29,.08)}
.admin-brand img{width:164px;max-width:100%;height:55px;object-fit:contain;background:#fff;border-radius:8px;padding:4px 7px}
.admin-label{color:#d8bc66!important;letter-spacing:.16em}
.admin-nav-group{border-color:#ffffff17!important;background:#ffffff07!important;border-radius:13px!important}
.admin-nav-group>summary{color:#9bb9ac!important}
.admin-nav-group>a{color:#d8e7de!important;border-radius:10px!important}
.admin-nav-group>a:hover{background:#ffffff12!important}
.admin-nav-group>a.active{background:linear-gradient(105deg,#e7bd52,#c9972c)!important;color:#153c31!important;box-shadow:0 8px 20px #0002!important}
.admin-main{background:#f1f5f3!important}
.admin-top{background:rgba(255,255,255,.88)!important;border-bottom:1px solid #dce8e1!important;backdrop-filter:blur(14px);padding:18px 28px!important}
.admin-top h1{color:#123c32!important;font-size:24px!important;letter-spacing:-.04em}
.admin-top small{color:#9a7a2e!important;letter-spacing:.13em;font-weight:900}
.admin-view{border:1px solid #dbe8e0!important;background:#f7fbf8!important;color:#23634d!important;border-radius:11px!important}
.admin-card{background:#fff!important;border:1px solid #e0eae4!important;border-radius:19px!important;box-shadow:0 10px 28px rgba(4,48,35,.055)!important;padding:20px!important}
.admin-card h2{color:#163d33!important;font-weight:850!important;letter-spacing:-.025em}
.admin-stats>div,.admin-mini-metrics>div,.ops-stat,.super-user-meta>div,.system-health-grid>div,.wallet-tile{border:1px solid #e2ebe5!important;background:linear-gradient(145deg,#fff,#f6faf7)!important;border-radius:15px!important;box-shadow:0 7px 19px rgba(7,55,39,.04)!important}
.admin-stats strong,.ops-stat strong,.wallet-tile strong{color:#11684f!important}
.admin-body .btn.primary{background:linear-gradient(125deg,#0c765b,#064639)!important;color:#fff!important}
.admin-body .btn.gold{background:linear-gradient(125deg,#f8dd8d,#d9a52f)!important;color:#173a31!important}
.admin-body input,.admin-body select,.admin-body textarea{border:1px solid #d9e6de!important;border-radius:11px!important;background:#fbfdfb!important;color:#173d33!important;min-height:42px}
.admin-body input:focus,.admin-body select:focus,.admin-body textarea:focus{border-color:#48a889!important;box-shadow:0 0 0 4px #24946e18!important}
.admin-body table{font-size:11px}
.admin-body th{background:#eff6f1!important;color:#557468!important}
.admin-body .table-wrap{border:1px solid #e0eae4;border-radius:14px;overflow:auto}
.admin-hero-panel{background:radial-gradient(circle at 88% 0%,rgba(222,185,83,.23),transparent 26%),linear-gradient(120deg,#052e28,#0b684f 75%,#093f35)!important;border:1px solid #e5c46b66;box-shadow:0 16px 34px rgba(5,55,40,.14)}
.admin-eyebrow{color:#f2d67e!important}
.admin-support-toolbar{background:linear-gradient(110deg,#f1f7f3,#fff)!important;border-color:#dfe9e3!important}
.admin-support-toolbar h2{color:#163f34!important}
.support-availability-box{border-color:#dfe9e3!important}
.admin-chat-layout .chat-user.active{background:#edf7f0!important;border-color:#cce5d5!important}
.admin-chat-layout .chat-user b,.chat-list-head h2,.admin-chat-conversation-head>div>b{color:#174638!important}
.admin-chat-context{border:1px solid #e2ebe5;border-radius:15px;background:#fff}

/* Motion: restrained, purposeful, and disabled for reduced-motion preferences */
@keyframes sl-orbit-drift{0%{transform:translateY(-50%) rotate(-5deg) scale(1)}100%{transform:translateY(-47%) rotate(7deg) scale(1.04)}}
@keyframes sl-modal-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes sl-shimmer{0%{background-position:160% 0}100%{background-position:-160% 0}}
.user-site .hero-register-btn,.user-site .public-register-link{position:relative;overflow:hidden}
.user-site .hero-register-btn:after,.user-site .public-register-link:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,rgba(255,255,255,.42) 48%,transparent 72%);background-size:220% 100%;animation:sl-shimmer 5s ease-in-out infinite;pointer-events:none}
.user-site .sl-reveal,.admin-body .sl-reveal{opacity:0;transform:translateY(15px);transition:opacity .58s ease,transform .58s cubic-bezier(.2,.7,.2,1)}
.user-site .sl-reveal.is-visible,.admin-body .sl-reveal.is-visible{opacity:1;transform:none}
.user-site .page-head,.user-site .balance-card,.user-site .profile-hero,.user-site .plan-card,.user-site .task-card{animation:sl-fade-up .42s ease both}
@keyframes sl-fade-up{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.user-site *, .user-site *:before,.user-site *:after,.admin-body *, .admin-body *:before,.admin-body *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.user-site .sl-reveal,.admin-body .sl-reveal{opacity:1;transform:none}}

@media(max-width:1050px){
 .public-landing .section{width:min(calc(100% - 42px),900px)}
 .landing-hero{width:calc(100% - 42px);min-height:450px;padding:48px 38px}
 .user-site.user-authenticated .app-main{width:calc(100% - 284px);margin-left:264px;margin-right:20px}
 .user-desktop-sidebar{width:236px}
 .public-services-section .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
 .user-site .topbar{height:64px;padding:8px 13px}
 .user-site .topbar .brand img{width:120px;height:40px}
 .user-site .top-actions{gap:5px}
 .user-site .top-actions .icon-btn,.user-site .top-actions .avatar,.user-site .theme-toggle{width:34px;height:34px;border-radius:11px}
 .user-site .language-select{min-height:32px;font-size:9px;max-width:84px}
 .user-site .app-main{width:calc(100% - 28px);padding:18px 0 110px}
 .user-site.user-authenticated .topbar{padding-left:13px}
 .user-site.user-authenticated .app-main{width:calc(100% - 28px);margin:0 auto;padding-top:18px}
 .user-desktop-sidebar{display:none!important}
 .user-site.user-authenticated .bottom-nav{display:grid}
 .user-site.user-authenticated .support-float-menu{bottom:calc(92px + env(safe-area-inset-bottom))}
 .user-site .plan-grid{grid-template-columns:1fr}
 .user-site .plan-image{height:175px}
 .user-site .menu-list{grid-template-columns:1fr}
 .public-nav{width:calc(100% - 28px);min-height:66px;gap:8px}
 .public-brand img{width:122px;height:45px}
 .public-nav-actions{gap:5px}
 .public-nav-actions .language-select{min-width:64px;max-width:75px;font-size:9px;padding:6px 18px 6px 7px}
 .public-login-link{padding:8px 9px;font-size:10px}
 .public-register-link{min-height:36px;padding:8px 11px;font-size:10px}
 .landing-hero{width:calc(100% - 22px);min-height:0;min-height:510px;padding:33px 23px 30px;border-radius:22px;background-position:62% center!important;align-items:flex-start}
 .landing-hero:before{inset:7px;border-radius:16px}
 .landing-hero-content{width:min(100%,520px)}
 .landing-hero h1{font-size:clamp(34px,8vw,49px);max-width:460px}
 .landing-hero p{font-size:12px;max-width:360px}
 .landing-hero .hero-orbit-mark{width:210px;height:210px;right:-8%;top:60%;font-size:155px;opacity:.65}
 .hero-actions{gap:8px;margin-top:19px}
 .hero-actions .btn{min-height:43px;padding:10px 13px;font-size:11px}
 .hero-stats{gap:12px;margin-top:23px;padding-top:14px}
 .hero-stats>div{min-width:72px}
 .hero-stats b{font-size:12px}.hero-stats span{font-size:9px}
 .public-landing .section{width:calc(100% - 30px);padding:35px 0}
 .public-services-section .feature-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .public-services-section .feature-card{min-height:145px;padding:14px;border-radius:15px}
 .public-services-section .feature-card h3{font-size:12px;margin:10px 0 5px}
 .public-services-section .feature-card p{font-size:10px}
 .public-about-section{grid-template-columns:1fr!important;padding:22px!important;gap:14px}
 .public-about-mark{min-height:110px}.public-about-mark img{width:155px}
 .public-steps-section .steps{grid-template-columns:1fr;gap:9px}
 .public-steps-section .steps>div{min-height:0;padding:15px}
 .public-plans-section .section-head{align-items:flex-start;flex-direction:column;gap:8px}
 .public-plans-section .section-head h2{font-size:24px}
 .public-plans-section .mini-plans{grid-template-columns:1fr;gap:10px}
 .public-plans-section .mini-plan{display:grid;grid-template-columns:112px minmax(0,1fr);flex-direction:row}
 .public-plans-section .mini-plan img{width:112px;height:100%;min-height:105px;aspect-ratio:auto}
 .public-plans-section .mini-plan>div{padding:12px}
 .public-final-cta{width:calc(100% - 22px)!important;margin:12px auto!important;padding:24px 18px!important}
 .public-footer{padding:24px 18px calc(35px + env(safe-area-inset-bottom))!important}
 .auth-login-layout,.auth-register-layout,.auth-layout{width:calc(100% - 20px);min-height:0;margin:10px auto 20px;border-radius:20px;grid-template-columns:1fr}
 .auth-promo-panel{min-height:240px;padding:23px 21px}
 .auth-promo-brand img{width:135px;height:48px}
 .auth-promo-panel .eyebrow{margin-top:16px}
 .auth-promo-panel h2{font-size:27px;margin:7px 0}
 .auth-promo-panel p{font-size:11px;margin:4px 0}
 .auth-promo-points{grid-template-columns:1fr 1fr;gap:7px;margin-top:13px;font-size:9px}
 .auth-shell{padding:22px 20px 27px}
 .auth-shell .auth-controls{margin-bottom:18px}
 .auth-shell h1{font-size:27px}
 .auth-shell .stack{gap:11px}
 .admin-main{margin-left:65px!important}
 .admin-top{padding:13px!important}
 .admin-top h1{font-size:18px!important}
 .admin-card{padding:14px!important}
}
@media(max-width:390px){
 .user-site .topbar .brand img{width:104px}
 .user-site .top-actions .icon-btn{display:none}
 .public-nav{width:calc(100% - 20px)}
 .public-brand img{width:105px}
 .public-nav-actions .language-select{max-width:62px;min-width:55px}
 .public-login-link{padding:7px 8px}
 .public-register-link{padding:7px 9px}
 .landing-hero{min-height:485px;padding:27px 17px}
 .landing-hero h1{font-size:34px}
 .hero-actions{display:grid;grid-template-columns:1fr 1fr}
 .hero-actions .btn{padding:9px 6px;font-size:10px}
 .hero-stats{gap:7px}
 .hero-stats>div{min-width:65px}
 .hero-stats b{font-size:11px}
 .hero-stats span{font-size:8px}
 .public-plans-section .mini-plan{grid-template-columns:94px minmax(0,1fr)}
 .public-plans-section .mini-plan img{width:94px}
 .admin-main{margin-left:0!important}
 .admin-sidebar{transform:translateX(-100%);transition:transform .2s ease}
}
