:root{
  box-sizing:border-box;
  padding-top:env(safe-area-inset-top,0px);
  padding-bottom:env(safe-area-inset-bottom,0px);
  --gold:#D9B26A; --gold-hi:#F0D8A0; --lime:#C6F36B;
  --ember1:#FF9A4A; --ember2:#E8492C; --ember3:#9E1F1B; --late:#FF7A5C;
  --bg:#08201A; --surface:#0E2C23; --raise:#153B2F; --line:rgba(234,242,236,.10);
  --text:#EAF2EC; --muted:#93AD9F;
  --serif:'Instrument Serif','Iowan Old Style',Georgia,serif;
  --sans:'Figtree',system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;
}
html{scroll-padding-top:env(safe-area-inset-top,0px);}
.sol-page{background:radial-gradient(120% 40% at 85% -8%,rgba(217,178,106,.14),transparent 62%),var(--bg);}
body.sol-page .sol-hdr{display:none;}
.sol-page *,.sol-page *::before,.sol-page *::after{box-sizing:inherit;}
.sol-page{margin:0;font-family:var(--sans);color:var(--text);-webkit-font-smoothing:antialiased;line-height:1.45;min-height:100dvh;}
.sol-page :focus-visible{outline:2px solid var(--gold);outline-offset:2px;}
.sol-page img{max-width:100%;}
.sol-page a{color:inherit;}
.sol-i{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;}

/* ---------------------------------------------------------------- sitewide header (shown outside plugin pages) */
:root{--h-bg:#F7F6F2;--h-ink:#08201A;--h-muted:#5D766A;--h-line:rgba(11,42,32,.12);--h-card:#FFF;}
.sol-hdr{position:sticky;top:0;z-index:40;background:rgba(247,246,242,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--h-line);font-family:var(--sans);}
.sol-hdr-in{max-width:1080px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px;}
.sol-brand{display:flex;align-items:center;gap:10px;text-decoration:none;}
.sol-mark{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--h-ink);color:var(--gold-hi);font:400 20px/1 var(--serif);flex:none;}
.sol-mark-lg{width:52px;height:52px;font-size:30px;margin-bottom:10px;}
.sol-brand-name{font:400 22px/1 var(--serif);color:var(--h-ink);}
.sol-hnav{display:flex;align-items:center;gap:8px;}
.sol-lang{display:flex;gap:2px;margin-right:4px;}
.sol-lang a{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;border-radius:8px;font-size:12px;font-weight:600;color:var(--h-muted);text-decoration:none;}
.sol-lang a.on{background:var(--h-card);color:var(--h-ink);box-shadow:inset 0 0 0 1px var(--h-line);}
.sol-hbtn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 15px;border-radius:999px;border:0;font:600 13.5px var(--sans);cursor:pointer;text-decoration:none;white-space:nowrap;}
.sol-hbtn.sol-primary{background:var(--h-ink);color:var(--gold-hi);}
.sol-hbtn.sol-outline{background:none;box-shadow:inset 0 0 0 1.5px var(--h-line);color:var(--h-ink);}
.sol-hbtn.sol-ghost{background:var(--h-card);color:var(--h-ink);box-shadow:inset 0 0 0 1px var(--h-line);}
.sol-avatar{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(140deg,var(--gold-hi),var(--gold));color:#2A1E05;font-size:10.5px;font-weight:700;}
@media (max-width:560px){.sol-hlabel{display:none;} .sol-hbtn{padding:0 11px;} .sol-brand-name{display:none;}}

/* ---------------------------------------------------------------- app shell */
.sol-app{max-width:460px;margin:0 auto;min-height:100dvh;padding:0 0 96px;position:relative;}
body.sol-mobile-only .sol-app{padding-bottom:110px;}
.sol-auth{padding:28px 20px 60px;}
.sol-hero-auth{text-align:center;padding:10px 0 22px;}
.sol-hero-auth h1{margin:0 0 6px;font:400 32px/1.1 var(--serif);color:#fff;}
.sol-hero-auth p{margin:0;color:var(--muted);font-size:14px;}
.sol-card-auth{padding:22px;}

.sol-shell{display:flex;flex-direction:column;min-height:100dvh;}
.sol-appbar{display:flex;align-items:center;justify-content:space-between;padding:20px 18px 6px;}
.sol-who{display:flex;align-items:center;gap:11px;}
.sol-who small{display:block;color:var(--muted);font-size:12px;}
.sol-who b{font-size:17px;font-weight:600;color:#fff;}
.sol-av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:14px;background:linear-gradient(140deg,var(--gold-hi),var(--gold));color:#2A1E05;flex:none;}
.sol-av-sm{width:34px;height:34px;font-size:12.5px;}
.sol-av-lg{width:58px;height:58px;font-size:19px;}
.sol-av-c1{background:linear-gradient(140deg,#D5F79A,#A8E04E);color:#17340A;}
.sol-av-c2{background:linear-gradient(140deg,#FFC08A,#F0703A);color:#3A1104;}
.sol-av-c3{background:linear-gradient(140deg,#CFE3D6,#8FB5A0);color:#0C2A21;}
.sol-ico-btn{position:relative;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);color:var(--text);text-decoration:none;}
.sol-dot{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--late);color:#2B0A04;font-size:10px;font-weight:800;display:grid;place-items:center;box-shadow:0 0 0 2px var(--bg);}
.sol-main{flex:1;padding:8px 18px 18px;}

.sol-page-h{margin:6px 0 2px;font:400 32px/1.1 var(--serif);color:#fff;}
.sol-sub{margin:0 0 16px;color:var(--muted);font-size:14px;}
.sol-h2{margin:0 0 10px;font:400 25px/1.1 var(--serif);}
.sol-back{display:inline-flex;align-items:center;gap:4px;margin:10px 0 4px;color:var(--muted);font-size:13.5px;font-weight:600;text-decoration:none;}
.sol-mini{text-align:center;font-size:13px;color:var(--muted);margin:18px 0 0;}
.sol-mini a{font-weight:600;color:var(--text);text-decoration:none;}
.sol-mini a.on{color:var(--gold);}
.sol-hint{margin:8px 2px 0;font-size:12.5px;color:var(--muted);}
.sol-hint-w{margin:10px 0 0;font-size:12.5px;color:rgba(255,255,255,.85);}
.sol-muted{color:var(--muted);}

/* ---------------------------------------------------------------- cards / rows */
.sol-card{background:var(--surface);border:1px solid var(--line);border-radius:24px;padding:18px;margin-bottom:16px;}
.sol-card-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px;}
.sol-card-h h3{margin:0;font:400 25px/1.1 var(--serif);}
.sol-card-welcome{text-align:center;padding:28px 20px;}
.sol-card-warn{background:rgba(255,122,92,.1);border-color:rgba(255,122,92,.25);}
.sol-card-gold{background:linear-gradient(160deg,rgba(240,216,160,.14),rgba(217,178,106,.08));border-color:rgba(217,178,106,.3);}
.sol-row{display:flex;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--line);}
.sol-row:first-of-type{border-top:0;}
.sol-row div{flex:1;min-width:0;}
.sol-row b{display:block;font-size:14.5px;font-weight:600;}
.sol-row small{color:var(--muted);font-size:12.5px;}
.sol-row-between{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 16px;font-size:13px;}

/* ---------------------------------------------------------------- chips */
.sol-chip{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 10px;border-radius:999px;font-size:11.5px;font-weight:700;white-space:nowrap;}
.sol-chip-ok{background:rgba(198,243,107,.14);color:var(--lime);}
.sol-chip-warn{background:rgba(217,178,106,.17);color:var(--gold-hi);}
.sol-chip-late{background:rgba(255,122,92,.17);color:var(--late);}
.sol-chip-mute{background:rgba(234,242,236,.08);color:var(--muted);}

/* ---------------------------------------------------------------- buttons */
.sol-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 20px;border:0;border-radius:999px;font:600 14.5px var(--sans);cursor:pointer;text-decoration:none;}
.sol-btn-sm{height:38px;padding:0 15px;font-size:13px;}
.sol-btn-block{width:100%;}
.sol-btn-ink{background:var(--gold);color:#2A1E05;}
.sol-btn-gold{background:linear-gradient(140deg,var(--gold-hi),var(--gold));color:#2A1E05;}
.sol-btn-ghost{background:rgba(234,242,236,.08);color:var(--text);}
.sol-btn-white{background:rgba(255,255,255,.9);color:#7A2A16;}
.sol-btn-glass{background:rgba(0,0,0,.24);color:#fff;}
.sol-btn-danger{background:var(--late);color:#2B0A04;}
[aria-disabled="true"]{opacity:.5;pointer-events:none;}
button[disabled]{opacity:.5;cursor:not-allowed;}
.sol-two{display:grid;grid-template-columns:1fr 1fr;gap:10px;}

/* ---------------------------------------------------------------- forms */
.sol-form{display:block;}
.sol-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden;}
.sol-field{display:block;position:relative;margin-bottom:13px;}
.sol-fl{display:block;margin-bottom:6px;font-size:12.5px;color:var(--muted);font-weight:600;}
.sol-field input,.sol-field select,.sol-field textarea{width:100%;height:48px;padding:0 14px;border-radius:14px;border:1.5px solid var(--line);background:var(--bg);font-size:15.5px;color:var(--text);font-family:var(--sans);}
.sol-field textarea{height:auto;padding:12px 14px;resize:vertical;}
.sol-field input:focus,.sol-field select:focus,.sol-field textarea:focus{outline:0;border-color:var(--gold);}
.sol-has-icon .sol-i{position:absolute;left:14px;bottom:14px;color:var(--muted);}
.sol-has-icon input{padding-left:40px;}
.sol-eye{position:absolute;right:8px;bottom:6px;width:36px;height:36px;border:0;background:none;border-radius:10px;color:var(--muted);display:grid;place-items:center;}
.sol-check{display:flex;align-items:center;gap:8px;font-size:13.5px;}
.sol-check input{width:17px;height:17px;accent-color:var(--gold);}
.sol-link{color:var(--gold-hi);font-weight:600;text-decoration:none;font-size:13px;}
.sol-tabs2{display:flex;border-radius:999px;background:rgba(234,242,236,.08);padding:4px;margin-bottom:16px;}
.sol-tabs2 span,.sol-tabs2 a{flex:1;text-align:center;height:38px;line-height:38px;border-radius:999px;font-size:13.5px;font-weight:600;text-decoration:none;color:var(--muted);}
.sol-tabs2 span.on{background:var(--raise);color:#fff;box-shadow:inset 0 0 0 1px rgba(217,178,106,.3);}

.sol-file{position:relative;display:flex;align-items:center;gap:10px;height:48px;padding:0 14px;border-radius:14px;border:1.5px dashed var(--line);background:rgba(234,242,236,.03);cursor:pointer;overflow:hidden;}
.sol-file input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.sol-file-b{display:flex;align-items:center;gap:8px;color:var(--gold-hi);font-weight:600;font-size:13.5px;flex:none;}
.sol-file-n{color:var(--muted);font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

.sol-methods{border:0;padding:0;margin:0 0 13px;display:flex;gap:10px;}
.sol-methods legend{padding:0;margin-bottom:7px;font-size:12.5px;color:var(--muted);font-weight:600;}
.sol-methods label{flex:1;position:relative;}
.sol-methods input{position:absolute;opacity:0;inset:0;}
.sol-methods span{display:flex;align-items:center;justify-content:center;height:46px;border-radius:14px;background:var(--raise);font-weight:600;font-size:13.5px;border:1.5px solid transparent;}
.sol-methods input:checked+span{border-color:var(--gold);color:var(--gold-hi);}
.sol-methods input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px;}
.sol-methods-3 label{flex:1 1 0;}

.sol-rows{display:grid;gap:0;margin-bottom:8px;}
.sol-rows div{display:flex;justify-content:space-between;padding:10px 0;border-top:1px solid var(--line);font-size:14px;}
.sol-rows div:first-child{border-top:0;}
.sol-rows b{font-weight:600;}
.sol-rows .sol-bad b{color:var(--late);}
.sol-total{display:flex;align-items:baseline;justify-content:space-between;padding:14px 16px;margin:8px 0 16px;border-radius:18px;background:var(--raise);}
.sol-total span{font-size:13.5px;color:var(--muted);}
.sol-total strong{font:400 34px/1 var(--serif);color:#fff;}
.sol-int,.sol-dec{font-family:var(--serif);}
.sol-dec{opacity:.55;}
.sol-cur{font:600 15px var(--sans);margin-left:6px;opacity:.85;}

.sol-pick{display:grid;gap:8px;margin-bottom:13px;}
.sol-pick label{position:relative;}
.sol-pick input{position:absolute;opacity:0;inset:0;}
.sol-pick span{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:16px;background:var(--raise);border:1.5px solid transparent;}
.sol-pick input:checked+span{border-color:var(--gold);}
.sol-pick input:focus-visible+span{outline:2px solid var(--gold);outline-offset:2px;}
.sol-txt{flex:1;}
.sol-txt b{display:block;font-size:14.5px;}
.sol-txt small{color:var(--muted);font-size:12.5px;}

.sol-note{display:flex;align-items:center;gap:9px;padding:11px 14px;border-radius:14px;margin-bottom:14px;font-size:13.5px;}
.sol-note-ok{background:rgba(198,243,107,.12);color:var(--lime);}
.sol-note-err{background:rgba(255,122,92,.14);color:var(--late);}

/* ---------------------------------------------------------------- stepper */
.sol-stepper{display:flex;justify-content:space-between;list-style:none;margin:0 0 18px;padding:0;}
.sol-stepper li{flex:1;text-align:center;position:relative;font-size:11px;color:var(--muted);}
.sol-stepper li::before{content:"";position:absolute;top:14px;left:-50%;width:100%;height:2px;background:var(--line);z-index:0;}
.sol-stepper li:first-child::before{display:none;}
.sol-stepper li.done::before{background:var(--lime);}
.sol-stepper i{position:relative;z-index:1;display:grid;place-items:center;width:28px;height:28px;margin:0 auto 6px;border-radius:50%;background:var(--raise);font-style:normal;font-weight:700;font-size:12px;color:var(--muted);}
.sol-stepper li.now i{background:var(--gold);color:#2A1E05;}
.sol-stepper li.done i{background:var(--lime);color:#17340A;}
.sol-stepper li.done i .sol-i{width:14px;height:14px;}

/* ---------------------------------------------------------------- payout hero */
.sol-payout-wrap{position:relative;margin:4px 0 26px;}
.sol-payout-wrap::before,.sol-payout-wrap::after{content:"";position:absolute;left:16px;right:16px;bottom:-12px;height:44px;border-radius:0 0 28px 28px;background:linear-gradient(#D2401F,#8E1B18);opacity:.55;}
.sol-payout-wrap::after{left:32px;right:32px;bottom:-22px;opacity:.28;}
.sol-payout{position:relative;z-index:1;overflow:hidden;border-radius:30px;padding:22px 20px 18px;color:#fff;background:linear-gradient(140deg,var(--ember1) 0%,var(--ember2) 52%,var(--ember3) 100%);box-shadow:0 22px 44px rgba(158,31,27,.35);}
.sol-waves{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:rgba(255,255,255,.2);stroke-width:1;pointer-events:none;}
.sol-payout>*:not(.sol-waves){position:relative;}
.sol-p-top{display:flex;align-items:center;justify-content:space-between;font-size:14.5px;font-weight:500;}
.sol-pill{display:inline-flex;align-items:center;height:30px;padding:0 13px;border-radius:999px;background:rgba(255,255,255,.2);backdrop-filter:blur(8px);font-size:12.5px;font-weight:600;}
.sol-amount{margin-top:20px;font:400 52px/1 var(--serif);letter-spacing:-.01em;white-space:nowrap;}
.sol-p-date{margin-top:8px;font-size:15.5px;font-weight:500;}
.sol-p-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;}
.sol-count{display:flex;align-items:baseline;gap:8px;font-size:13.5px;}
.sol-count b{font:400 34px/1 var(--serif);}

/* ---------------------------------------------------------------- ring / seg */
.sol-ring-row{display:flex;align-items:center;gap:18px;}
.sol-ring{width:100px;height:100px;flex:none;position:relative;}
.sol-ring svg{width:100%;height:100%;}
.sol-tick{stroke:rgba(234,242,236,.15);stroke-width:4.4;stroke-linecap:round;}
.sol-tick.done{stroke:var(--lime);}
.sol-tick.now{stroke:#fff;}
.sol-tick.me{stroke:var(--gold);}
.sol-ring-c{position:absolute;inset:0;display:grid;place-content:center;text-align:center;}
.sol-ring-c b{font:400 26px/1 var(--serif);}
.sol-ring-c small{font-size:11px;color:var(--muted);}
.sol-ring-info p{margin:0 0 2px;font-size:14px;line-height:1.25;}
.sol-ring-info p:first-child{font-weight:600;font-size:15.5px;}
.sol-ring-info p:last-child{margin-bottom:0;}
.sol-ring-info .sol-num{font:400 15.5px/1.3 var(--serif);}
.sol-strip{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;}
.sol-strip>div{display:flex;flex-direction:column;gap:4px;min-width:0;}
.sol-strip b{font:400 20px/1.2 var(--serif);white-space:nowrap;}
.sol-strip small{color:var(--muted);font-size:12.5px;}
.sol-quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 16px;}
.sol-quick{display:flex;align-items:center;gap:10px;padding:14px 15px;border-radius:18px;background:var(--surface);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:13.5px;font-weight:600;}
.sol-quick-wide{grid-column:1 / -1;}
.sol-quick .sol-i{color:var(--gold-hi);flex:none;}
.sol-quick-danger{color:var(--late);}
.sol-quick-danger .sol-i{color:var(--late);}
.sol-seg{display:grid;grid-template-columns:repeat(var(--n),1fr);gap:3px;height:18px;margin:12px 0 8px;}
.sol-seg i{border-radius:3px;background:rgba(234,242,236,.11);}
.sol-seg i.on{background:linear-gradient(var(--gold-hi),var(--gold));}
.sol-cap-line{display:flex;justify-content:space-between;align-items:center;margin:0 0 14px;font-size:13.5px;}
.sol-facts{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:0 0 16px;font-size:13px;}
.sol-facts dt{color:var(--muted);font-size:12px;}
.sol-facts dd{margin:1px 0 0;font-weight:600;}
.sol-card-full{opacity:.78;}
.sol-more{margin-top:6px;}
.sol-more summary{display:flex;align-items:center;justify-content:space-between;list-style:none;cursor:pointer;font-size:13.5px;font-weight:600;color:var(--muted);padding:4px 0;}
.sol-more summary::-webkit-details-marker{display:none;}
.sol-more[open] summary .sol-i{transform:rotate(90deg);}
.sol-more .sol-i{transition:transform .15s;}

/* ---------------------------------------------------------------- lists */
.sol-list-row{display:flex;align-items:center;gap:13px;width:100%;padding:15px 0;background:none;border:0;border-top:1px solid var(--line);color:var(--text);text-align:left;font-size:15px;font-weight:500;text-decoration:none;}
.sol-list-row:first-of-type{border-top:0;}
.sol-list-row .sol-i:first-child{color:var(--gold);}
.sol-list-row span{flex:1;}
.sol-list-row .sol-i:last-child{color:var(--muted);width:18px;height:18px;}
.sol-list-row.sol-exit .sol-i:first-child{color:var(--late);}
.sol-profile{display:flex;align-items:center;gap:14px;margin:4px 0 18px;}
.sol-profile h1{margin:0;font:400 30px/1.1 var(--serif);color:#fff;}
.sol-profile small{color:var(--muted);}

/* ---------------------------------------------------------------- banners */
.sol-banner{display:flex;align-items:center;gap:10px;padding:13px 14px;border-radius:16px;background:var(--surface);border:1px solid var(--line);color:var(--text);text-decoration:none;font-size:13.5px;font-weight:600;margin-bottom:12px;}
.sol-banner-gold{background:rgba(217,178,106,.12);border-color:rgba(217,178,106,.3);}
.sol-banner .sol-i:last-child{margin-left:auto;color:var(--muted);width:16px;height:16px;}

.sol-pay-row{align-items:flex-start;}
.sol-pay-ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:none;background:rgba(198,243,107,.14);color:var(--lime);}
.sol-pay-ic.warn{background:rgba(217,178,106,.17);color:var(--gold-hi);}
.sol-pay-ic.late{background:rgba(255,122,92,.17);color:var(--late);}
.sol-late-t{display:block;color:var(--late);}
.sol-r{text-align:right;display:grid;gap:5px;justify-items:end;}
.sol-sum{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:18px;}
.sol-sum strong{display:flex;align-items:baseline;font:400 42px/1 var(--serif);color:#fff;}
.sol-msg{position:relative;}
.sol-msg-new::before{content:"";position:absolute;top:18px;left:-4px;width:8px;height:8px;border-radius:50%;background:var(--late);}

.sol-done{text-align:center;padding:6px 0;}
.sol-done .sol-i{width:26px;height:26px;}
.sol-done>.sol-i{width:56px;height:56px;padding:15px;border-radius:50%;background:rgba(198,243,107,.14);color:var(--lime);margin-bottom:12px;}
.sol-done h2{margin:0 0 6px;font:400 27px/1.1 var(--serif);}
.sol-done p{margin:0;color:var(--muted);font-size:14px;}

.sol-steps{margin:0 0 18px;padding-left:20px;font-size:13.5px;line-height:1.6;}
.sol-steps li{margin-bottom:6px;}
.sol-rules{list-style:none;margin:0 0 8px;padding:0;}
.sol-rules li{display:flex;gap:9px;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px;}
.sol-rules li:first-child{border-top:0;}
.sol-rules .sol-i{color:var(--lime);margin-top:1px;}

/* ---------------------------------------------------------------- tabbar */
.sol-tabbar{position:fixed;left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom,0px));z-index:30;display:flex;gap:4px;padding:6px;border-radius:32px;background:rgba(21,59,47,.84);backdrop-filter:blur(18px);border:1px solid var(--line);max-width:428px;margin:0 auto;}
.sol-tab{flex:1;height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:26px;color:var(--muted);text-decoration:none;font-size:10.5px;font-weight:600;}
.sol-tab.on{background:var(--gold);color:#2A1E05;}
body.sol-mobile-only .sol-tabbar{position:fixed;}

/* ---------------------------------------------------------------- modals */
.sol-modal{position:fixed;inset:0;z-index:200;display:flex;align-items:flex-end;justify-content:center;background:rgba(3,14,10,.65);}
.sol-modal[hidden]{display:none;}
.sol-modal-card{position:relative;width:100%;max-width:440px;max-height:92vh;overflow-y:auto;padding:26px 22px calc(26px + env(safe-area-inset-bottom,0px));border-radius:26px 26px 0 0;background:var(--surface);border:1px solid var(--line);color:var(--text);}
@media (min-width:560px){.sol-modal{align-items:center;} .sol-modal-card{border-radius:24px;margin:20px;}}
.sol-modal-wide{max-width:560px;}
.sol-x{position:absolute;top:14px;right:14px;width:34px;height:34px;border-radius:50%;border:0;background:rgba(234,242,236,.08);color:var(--text);display:grid;place-items:center;}
.sol-modal-card h2{margin:6px 24px 6px 0;font:400 27px/1.1 var(--serif);}
.sol-modal-card h3{margin:18px 0 10px;font:400 19px/1.1 var(--serif);}

/* ---------------------------------------------------------------- mobile-only enforcement */
.sol-desktop-note{display:none;}
@media (min-width:901px){
  body.sol-mobile-only .sol-shell{display:none;}
  body.sol-mobile-only .sol-desktop-note{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:70vh;max-width:420px;margin:0 auto;padding:40px 20px;}
  body.sol-mobile-only .sol-desktop-note h2{margin:14px 0 6px;font:400 27px var(--serif);color:#fff;}
  body.sol-mobile-only .sol-desktop-note p{margin:0;color:var(--muted);font-size:14px;}
}
@media (max-width:900px){.sol-desktop-note{display:none!important;}}

@media (max-width:430px){.sol-amount{font-size:44px;}}
@media (prefers-reduced-motion:reduce){.sol-page *{transition-duration:.01ms!important;animation-duration:.01ms!important;}}


/* ---------------------------------------------------------------- hardened UX layer */
.sol-form[data-sol-busy="1"] { opacity:.78; }
.sol-form button:disabled,.sol-form input[type="submit"]:disabled { cursor:wait; opacity:.65; }
.sol-form button:disabled::after { content:""; display:inline-block; width:12px; height:12px; margin-left:8px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; vertical-align:-2px; animation:solspin .7s linear infinite; }
@keyframes solspin { to { transform:rotate(360deg); } }
.sol-field input[readonly] { background:rgba(234,242,236,.045); color:var(--muted); cursor:not-allowed; }
.sol-btn,.sol-banner,.sol-list-row,.sol-tab { transition:transform .15s ease, opacity .15s ease, background .15s ease, border-color .15s ease; }
.sol-btn:not(:disabled):active,.sol-banner:active,.sol-list-row:active,.sol-tab:active { transform:translateY(1px); }
.sol-card { scroll-margin-top:20px; }
.sol-main { padding-bottom:calc(94px + env(safe-area-inset-bottom,0px)); }
.sol-page-h { letter-spacing:-.02em; }
.sol-note { line-height:1.45; }
@media (min-width:700px) {
  .sol-main { max-width:760px; margin:0 auto; }
  .sol-auth { max-width:560px; margin:0 auto; }
}
@media (max-width:520px) {
  .sol-card { border-radius:22px; }
  .sol-payout { border-radius:24px; }
  .sol-amount { letter-spacing:-.03em; }
  .sol-two { grid-template-columns:1fr; }
  .sol-two .sol-btn { width:100%; }
}
@media (prefers-reduced-motion:reduce) {
  .sol-form button:disabled::after { animation:none; }
}

/* ---------------------------------------------------------------- registration UX */
.sol-register-page .sol-card { margin-bottom:14px; }
.sol-reg-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 18px;padding:10px 2px;}
.sol-reg-progress span{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:11.5px;font-weight:600;min-width:0;}
.sol-reg-progress i{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:var(--raise);font-style:normal;font-size:11px;flex:none;}
.sol-reg-progress span.on{color:var(--text);}
.sol-reg-progress span.on i{background:var(--gold);color:#2A1E05;}
.sol-reg-progress b{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.sol-reg-submit{margin-top:2px;}
.sol-reg-submit .sol-hint{display:block;text-align:center;margin:0 0 10px;font-size:12px;}
.sol-register-page input:invalid:not(:placeholder-shown){border-color:rgba(255,122,92,.7);}
.sol-register-page input:valid:not(:placeholder-shown){border-color:rgba(198,243,107,.28);}
@media (max-width:390px){.sol-reg-progress span{font-size:10px;gap:4px}.sol-reg-progress i{width:23px;height:23px}}

/* Responsive app shell: preserve the mobile UX while using available tablet/desktop width. */
@media (min-width:700px){
  .sol-app{max-width:760px;padding-left:8px;padding-right:8px;}
  .sol-appbar{padding-left:8px;padding-right:8px;}
  .sol-main{max-width:none;margin:0;}
  .sol-card{padding:20px 22px;}
}
@media (min-width:1100px){
  .sol-app{max-width:900px;}
  .sol-main{padding-left:4px;padding-right:4px;}
}
@media (min-width:901px){
  .sol-tabbar{position:static;max-width:560px;margin:18px auto 0;}
}


/* Configured payment destination */
.sol-pay-destination{margin:12px 0 16px;padding:14px 16px;border:1px solid #d9e5f7;border-radius:14px;background:#f4f8ff}
.sol-pay-destination-item{display:flex;flex-direction:column;gap:4px}
.sol-pay-destination-item b{font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.sol-pay-destination-item strong{font-size:20px;letter-spacing:.02em;word-break:break-word}
.sol-pay-destination-item small{color:#52657f;line-height:1.45}


/* Pending dashboard / guarantee sharing */
.sol-status-hero{text-align:center;padding:8px 4px 18px}.sol-status-hero .sol-mark{margin:0 auto 10px}.sol-status-hero h1{margin:0 0 8px}.sol-status-hero p{margin:0 auto 12px;max-width:620px}.sol-guarantee-share .sol-share-link{display:flex;gap:8px;align-items:center;margin:14px 0}.sol-guarantee-share .sol-share-link input{min-width:0;flex:1;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:var(--bg);font-size:13px}.sol-share-actions{margin-top:8px}.sol-share-actions .sol-btn{flex:1}.sol-pending-app .sol-tabbar{max-width:428px}
@media(min-width:760px){.sol-pending-app .sol-main,.sol-shell .sol-main{max-width:900px;margin:0 auto}.sol-pending-app .sol-card{padding:22px}}
@media(max-width:520px){.sol-guarantee-share .sol-share-link{flex-direction:column;align-items:stretch}.sol-guarantee-share .sol-share-link .sol-btn{width:100%}.sol-share-actions{grid-template-columns:1fr}}
.sol-list-btn{width:100%;border:0;text-align:left;font:inherit;cursor:pointer;}
.sol-modal-x{position:absolute;right:16px;top:14px;width:36px;height:36px;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:inherit;font-size:24px;cursor:pointer;}
.sol-payment-summary{margin-bottom:14px;}
.sol-cycle-head{display:flex;justify-content:space-between;gap:12px;padding:12px 0 6px;border-top:1px solid var(--line)}
.sol-cycle-head:first-of-type{border-top:0}.sol-cycle-head small{color:var(--muted)}
.sol-cycle-row{border-top:1px solid var(--line)}.sol-cycle-num{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);font-weight:700;flex:none}

/* ---------------------------------------------------------------- SOL ETIDYAN blue/white design system */
.sol-page{
  --gold:#2563EB; --gold-hi:#60A5FA; --lime:#16A34A;
  --ember1:#2563EB; --ember2:#1D4ED8; --ember3:#1E3A8A; --late:#C2402A;
  --bg:#F5F8FC; --surface:#FFFFFF; --raise:#EFF6FF; --line:#E2E8F0;
  --text:#0F172A; --muted:#64748B;
  background:var(--bg);
  color:var(--text);
}
.sol-page :focus-visible{outline-color:#2563EB;}
.sol-page .sol-hero-auth h1,.sol-page .sol-page-h,.sol-page .sol-h2,
.sol-page .sol-profile h1,.sol-page .sol-card-h h3,.sol-page .sol-done h2{color:#0F172A;}
.sol-page .sol-app{max-width:1120px;padding-left:20px;padding-right:20px;}
.sol-page .sol-auth{max-width:560px;margin:0 auto;padding-top:44px;}
.sol-page .sol-appbar{padding:22px 0 10px;}
.sol-page .sol-main{padding:12px 0 28px;}
.sol-page .sol-card{background:#FFF;border-color:#E2E8F0;box-shadow:none;border-radius:20px;}
.sol-page .sol-quick{background:#FFF;border-color:#E2E8F0;color:#0F172A;}
.sol-page .sol-quick .sol-i{color:#2563EB;}
.sol-page .sol-quick-danger{color:#C2402A;}
.sol-page .sol-quick-danger .sol-i{color:#C2402A;}
.sol-page .sol-card-welcome{background:linear-gradient(180deg,#EFF6FF 0%,#FFF 72%);border-color:#DBEAFE;}
.sol-page .sol-card-gold{background:#EFF6FF;border-color:#BFDBFE;}
.sol-page .sol-card-warn{background:#FEF2F2;border-color:#FECACA;}
.sol-page .sol-row,.sol-page .sol-list-row,.sol-page .sol-rules li,.sol-page .sol-rows div{border-color:#E2E8F0;}
.sol-page .sol-chip-ok{background:#DCFCE7;color:#166534;}
.sol-page .sol-chip-warn{background:#DBEAFE;color:#1E3A8A;}
.sol-page .sol-chip-mute{background:#F1F5F9;color:#64748B;}
.sol-page .sol-btn-ink,.sol-page .sol-btn-gold{background:#2563EB;color:#FFF;}
.sol-page .sol-btn-ghost{background:#EFF6FF;color:#1D4ED8;border:1px solid #DBEAFE;}
.sol-page .sol-btn-white{background:#FFF;color:#1D4ED8;border:1px solid #BFDBFE;}
.sol-page .sol-btn-glass{background:rgba(15,23,42,.18);color:#FFF;}
.sol-page .sol-link,.sol-page .sol-mini a.on{color:#2563EB;}
.sol-page .sol-field input,.sol-page .sol-field select,.sol-page .sol-field textarea{background:#FFF;color:#0F172A;border-color:#CBD5E1;}
.sol-page .sol-field input:focus,.sol-page .sol-field select:focus,.sol-page .sol-field textarea:focus{border-color:#2563EB;box-shadow:0 0 0 3px rgba(37,99,235,.10);}
.sol-page .sol-tabs2{background:#F1F5F9;}
.sol-page .sol-tabs2 span.on{background:#2563EB;color:#FFF;box-shadow:none;}
.sol-page .sol-file{background:#F8FAFC;border-color:#CBD5E1;}
.sol-page .sol-file-b{color:#2563EB;}
.sol-page .sol-methods span,.sol-page .sol-pick span{background:#F8FAFC;border-color:#E2E8F0;}
.sol-page .sol-methods input:checked+span,.sol-page .sol-pick input:checked+span{border-color:#2563EB;background:#EFF6FF;color:#1D4ED8;}
.sol-page .sol-total{background:#EFF6FF;border:1px solid #DBEAFE;}
.sol-page .sol-total strong,.sol-page .sol-amount{color:#0F172A;}
.sol-page .sol-seg i.on{background:#2563EB;}
.sol-page .sol-tick{stroke:#CBD5E1;}
.sol-page .sol-tick.done{stroke:#16A34A;}
.sol-page .sol-tick.me,.sol-page .sol-tick.now{stroke:#2563EB;}
.sol-page .sol-banner{background:#FFF;border-color:#E2E8F0;box-shadow:0 4px 16px rgba(15,23,42,.04);}
.sol-page .sol-banner-gold{background:#EFF6FF;border-color:#BFDBFE;}
.sol-page .sol-banner-gold .sol-i{color:#2563EB;}
.sol-page .sol-pay-ic{background:#DCFCE7;color:#166534;}
.sol-page .sol-pay-ic.warn{background:#DBEAFE;color:#1D4ED8;}
.sol-page .sol-av{background:linear-gradient(140deg,#60A5FA,#2563EB);color:#FFF;}
.sol-page .sol-ico-btn{background:#FFF;border-color:#E2E8F0;color:#0F172A;box-shadow:0 4px 14px rgba(15,23,42,.05);}
.sol-page .sol-dot{background:#2563EB;color:#FFF;box-shadow:0 0 0 2px #F5F8FC;}
.sol-page .sol-payout{background:linear-gradient(140deg,#2563EB 0%,#1D4ED8 55%,#1E3A8A 100%);box-shadow:0 22px 44px rgba(37,99,235,.22);}
.sol-page .sol-payout-wrap::before,.sol-page .sol-payout-wrap::after{background:#1D4ED8;}
.sol-page .sol-mark{background:#2563EB;color:#FFF;}
.sol-page .sol-hdr{background:rgba(255,255,255,.94);border-bottom-color:#E2E8F0;}
.sol-page .sol-brand-name{color:#0F172A;}
.sol-page .sol-hbtn.sol-primary{background:#2563EB;color:#FFF;}
.sol-page .sol-hbtn.sol-outline{color:#0F172A;box-shadow:inset 0 0 0 1.5px #CBD5E1;}
.sol-page .sol-hbtn.sol-ghost{background:#FFF;color:#0F172A;box-shadow:inset 0 0 0 1px #E2E8F0;}
.sol-page .sol-sum strong{color:#0F172A;}
.sol-page .sol-rules .sol-i{color:#16A34A;}
@media (max-width:760px){
  .sol-page .sol-app{max-width:680px;padding-left:14px;padding-right:14px;}
  .sol-page .sol-main{padding-bottom:24px;}
}
@media (max-width:560px){
  .sol-page .sol-app{max-width:100%;padding-left:12px;padding-right:12px;}
  .sol-page .sol-auth{padding-top:28px;}
  .sol-page .sol-appbar{padding-left:2px;padding-right:2px;}
  .sol-page .sol-main{padding-left:0;padding-right:0;}
}
\n\n/* ---------------------------------------------------------------- payout card: solid blue, no layered/wave effect */\n.sol-page .sol-payout-wrap{margin:4px 0 26px;}\n.sol-page .sol-payout-wrap::before,.sol-page .sol-payout-wrap::after{display:none;}\n.sol-page .sol-payout{background:#2563EB;box-shadow:none;border:0;color:#FFF;}\n.sol-page .sol-waves{display:none;}\n.sol-page .sol-pill{background:rgba(29,78,216,.55);border:1px solid rgba(255,255,255,.16);color:#FFF;backdrop-filter:none;}\n.sol-page .sol-amount{margin-top:20px;color:#FFF;font-family:var(--sans);font-size:clamp(34px,6vw,52px);font-weight:800;letter-spacing:-.02em;}\n.sol-page .sol-amount .sol-cur{font-family:var(--sans);font-size:.48em;font-weight:700;letter-spacing:0;}\n.sol-page .sol-p-date{margin-top:10px;color:#FFF;font-family:var(--sans);font-size:15.5px;font-weight:500;}\n.sol-page .sol-p-days{margin-top:4px;color:#FFF;font-family:var(--sans);font-size:15.5px;font-weight:500;}\n.sol-page .sol-count{display:none;}\n.sol-page .sol-claim-question{font-weight:600;color:#0F172A;}\n
/* Payout card: amount and currency use the same white typography. */
.sol-page .sol-amount{color:#FFF;font-family:var(--sans);font-size:clamp(34px,6vw,52px);font-weight:800;letter-spacing:-.02em;}
.sol-page .sol-amount .sol-cur{color:#FFF;font-family:var(--sans);font-size:1em;font-weight:800;letter-spacing:-.02em;}
.sol-page .sol-payout-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.sol-page .sol-payout-actions .sol-btn{margin:0;}
.sol-page .sol-modal-card{color:#0F172A;background:#FFF;border-color:#E2E8F0;}
.sol-page .sol-modal-card h2{font-family:var(--sans);font-weight:800;}
.sol-page .sol-modal-x{background:#EFF6FF;color:#1D4ED8;}
@media (max-width:560px){
  .sol-page .sol-payout-actions{justify-content:stretch;}
  .sol-page .sol-payout-actions .sol-btn{flex:1 1 150px;}
}

/* Final payout card refinement: flat blue, all typography white, contrasting position badge. */
.sol-page .sol-payout{
  background:#2563EB !important;
  color:#FFF !important;
  box-shadow:none !important;
}
.sol-page .sol-payout *{color:#FFF;}
.sol-page .sol-payout .sol-pill{
  background:#0F172A !important;
  border:0 !important;
  color:#FFF !important;
  box-shadow:none !important;
}
.sol-page .sol-payout .sol-amount,
.sol-page .sol-payout .sol-amount .sol-cur,
.sol-page .sol-payout .sol-p-date,
.sol-page .sol-payout .sol-p-days,
.sol-page .sol-payout .sol-p-top > span:first-child{
  color:#FFF !important;
  font-family:var(--sans) !important;
}
.sol-page .sol-payout .sol-amount{
  font-size:clamp(34px,6vw,52px) !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
}
.sol-page .sol-payout .sol-amount .sol-cur{
  font-size:1em !important;
  font-weight:800 !important;
  letter-spacing:-.02em !important;
}
.sol-page .sol-payout .sol-p-date,
.sol-page .sol-payout .sol-p-days{font-size:15.5px;font-weight:500;}
.sol-page .sol-btn-disabled{opacity:.48;cursor:not-allowed;pointer-events:none;}

/* Payout amount: larger, unified white typography. */
.sol-page .sol-payout .sol-amount{
  font-size:clamp(42px,8vw,64px) !important;
  line-height:1.05 !important;
  font-weight:800 !important;
  color:#FFF !important;
}
.sol-page .sol-payout .sol-amount .sol-cur{
  font-size:1em !important;
  line-height:inherit !important;
  font-weight:800 !important;
  color:#FFF !important;
}

/* Payout actions: Claim + Pay stay together on one line. */
.sol-page .sol-payout-actions{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:nowrap !important;
  gap:10px !important;
  width:100%;
}
.sol-page .sol-payout-actions .sol-btn{
  flex:0 1 auto !important;
  white-space:nowrap !important;
  min-width:0 !important;
}
@media (max-width:560px){
  .sol-page .sol-payout-actions{flex-wrap:nowrap !important;gap:8px !important;}
  .sol-page .sol-payout-actions .sol-btn{flex:1 1 0 !important;min-width:0 !important;padding-left:10px;padding-right:10px;}
}


/* Home quick actions + popup refinements */
.sol-home-quick{margin:0 0 16px;}
.sol-home-quick .sol-quick{font:600 13.5px var(--sans);cursor:pointer;}
.sol-message-modal h2,
.sol-message-modal h3,
.sol-modal-card h2,
.sol-modal-card h3{font-family:var(--serif) !important;font-weight:400;}
.sol-modal-card h2{margin:0 46px 3px 0;line-height:1.05;}
.sol-modal-card h2 + .sol-hint{margin:0 0 14px 0;line-height:1.35;}
.sol-modal-x{right:18px;top:18px;width:auto;height:auto;padding:0;border:0;border-radius:0;background:transparent !important;color:#000 !important;font:600 22px/1 var(--sans);}
.sol-message-list{display:grid;gap:8px;margin-top:2px;}
.sol-message-item{padding:12px 0;border-top:1px solid var(--line);}
.sol-message-item:first-child{border-top:0;padding-top:0;}
.sol-message-item .sol-card-h{margin:0 0 5px;}
.sol-message-item p{margin:0 0 5px;line-height:1.45;}
.sol-message-empty{margin:4px 0 0;}
.sol-page .sol-modal-card .sol-btn-danger{background:#2563EB;color:#FFF;border:0;box-shadow:none;}
.sol-page .sol-modal-card .sol-btn-ink{background:#2563EB;color:#FFF;border:0;box-shadow:none;}
.sol-page .sol-modal-card .sol-btn-ghost{background:#EFF6FF;color:#1D4ED8;border:1px solid #DBEAFE;}

/* Quick actions: preserve the original five-tile layout while making every CTA pill-shaped. */
.sol-page .sol-home-quick .sol-quick{border-radius:999px !important;}
.sol-page .sol-home-quick .sol-quick-wide{grid-column:1 / -1;}
.sol-page .sol-modal-card .sol-btn{border-radius:999px !important;}
.sol-page .sol-modal-card .sol-btn-ink{background:#2563EB !important;color:#FFF !important;border:1px solid #2563EB !important;}
