/* Storefront components reuse the global theme and typography. */
.sf-body{--primary:var(--shop-accent);--primary-hover:color-mix(in srgb,var(--shop-accent) 82%,#000);--primary-soft:color-mix(in srgb,var(--shop-accent) 10%,var(--surface));--brand:var(--primary);--brand-dark:var(--primary-hover);--focus:var(--shop-accent);--shop-deep:color-mix(in srgb,var(--shop-accent) 55%,#080f21);--shop-banner:linear-gradient(125deg,#080f21,var(--shop-deep));--shop-link:color-mix(in srgb,var(--shop-accent) 65%,#0f172a);background:linear-gradient(180deg,var(--primary-soft),transparent 550px),var(--bg-primary);color:var(--text-primary)}
body.sf-body{background:linear-gradient(180deg,var(--primary-soft),transparent 550px),var(--bg-primary)}
.sf-header{position:sticky;top:0;z-index:30;background:var(--surface);border-bottom:1px solid var(--border)}
.sf-header-inner{display:flex;align-items:center;gap:20px;min-height:76px}
.sf-header .theme-menu{justify-content:center}
.sf-brand{display:flex;align-items:center;gap:10px;font-weight:750;min-width:0;max-width:320px;overflow-wrap:anywhere}
.sf-logo{width:44px;height:44px;border-radius:12px;object-fit:contain;flex-shrink:0;background:var(--surface-elevated)}
.sf-initials{display:grid;place-items:center;border:1px solid transparent;background:var(--shop-banner);color:#fff;box-shadow:var(--shadow-sm)}
.sf-nav{display:flex;align-items:center;gap:22px;margin-left:auto;font-size:13px;font-weight:600}
.sf-nav a:not(.btn){padding-block:12px}.sf-mobile-nav{display:none}.sf-main{padding-block:28px;min-height:55vh}
.sf-hero{position:relative;isolation:isolate;overflow:hidden;padding:32px;border:1px solid var(--shop-deep);border-radius:var(--radius-lg);background:var(--shop-banner);color:#fff;margin-bottom:24px;box-shadow:var(--shadow-md)}
.sf-hero::after{content:"";position:absolute;z-index:-1;width:280px;height:280px;right:-145px;top:-130px;border:40px solid #ffffff09;border-radius:50%;box-shadow:0 0 0 40px #ffffff05;pointer-events:none}
body.sf-body .sf-hero .eyebrow{color:#e2e8f0;font-size:10px;letter-spacing:.14em}body.sf-body .sf-hero .muted{color:#e2e8f0;font-size:14px;line-height:1.65}.sf-hero .sf-trust{color:#e2e8f0}
.sf-hero h1{font-size:clamp(24px,3vw,34px);margin-bottom:10px}.sf-hero p{max-width:650px;margin-bottom:12px;white-space:pre-line;overflow-wrap:anywhere}
.sf-trust{display:flex;flex-wrap:wrap;gap:8px 20px;color:var(--text-secondary);font-size:12px}
.sf-filters{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.sf-filters a{padding:10px 14px;border:1px solid var(--border);border-radius:30px;background:var(--surface);font-weight:600}
.sf-filters a[aria-current]{border-color:var(--shop-deep);color:#fff;background:var(--shop-deep);box-shadow:var(--shadow-sm)}
.sf-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.sf-product{--bundle-accent:var(--shop-accent);--bundle-label-bg:var(--primary-soft);--bundle-label-ink:var(--text-primary);display:grid;gap:12px;min-width:0;padding:20px;background:linear-gradient(160deg,color-mix(in srgb,var(--bundle-accent) 9%,var(--surface)),var(--surface) 65%);border:1px solid var(--border);border-top:3px solid var(--bundle-accent);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);transition:border-color .16s,transform .16s}
.sf-product.net-mtn{--bundle-accent:#e9b91b;--bundle-label-bg:#ffdb53;--bundle-label-ink:#433400}.sf-product.net-telecel{--bundle-accent:#e34358;--bundle-label-bg:#ffe5ea;--bundle-label-ink:#9e1730}.sf-product:is(.net-at,.net-at-ishare,.net-at-ishare-tigo,.net-tigo){--bundle-accent:#4b88f4;--bundle-label-bg:#e5eeff;--bundle-label-ink:#2149a2}.sf-product.net-at-bigtime{--bundle-accent:#a469e4;--bundle-label-bg:#f0e4ff;--bundle-label-ink:#6b289e}
.sf-product:hover{border-color:var(--shop-accent);transform:translateY(-2px)}.sf-product strong{font-size:26px;letter-spacing:-.04em;color:var(--text-primary)}.sf-product small{justify-self:start;max-width:100%;padding:4px 8px;border-radius:6px;font-size:10px;font-weight:700;color:var(--bundle-label-ink);background:var(--bundle-label-bg);overflow-wrap:anywhere}.sf-product .sf-price{font-size:18px;font-weight:700;color:var(--text-primary)}.sf-product .sf-select{margin-top:2px;padding-top:12px;border-top:1px solid var(--border);color:var(--shop-link);font-weight:650;font-size:12px}
[data-theme="dark"] .sf-body{--shop-link:color-mix(in srgb,var(--shop-accent) 40%,#fff)}
.sf-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;padding-block:24px;border-top:1px solid var(--border);color:var(--text-secondary)}.sf-footer p{margin:6px 0}.sf-support{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.sf-footer small{flex-basis:100%}
.sf-main .wrap{width:100%}.sf-main .page{max-width:620px;width:100%;margin-inline:auto}.sf-main .account-page{padding-block:0}
.sf-tools{display:flex;gap:12px;flex-wrap:wrap;align-items:end;margin-block:16px}.sf-tools label{display:grid;gap:6px;flex:1 1 140px;min-width:0}.sf-tools input,.sf-tools select{box-sizing:border-box;width:100%;min-width:0;max-width:100%}
/* Native date fields must fit their grid track, including on iOS Safari. */
.sf-tools input[type="date"]{display:block;min-inline-size:0;inline-size:100%;max-inline-size:100%;text-align:left;-webkit-appearance:none;appearance:none}
.sf-tools input[type="date"]::-webkit-date-and-time-value{text-align:left;min-width:0}
.sf-tools input[type="date"]::-webkit-datetime-edit{min-width:0;padding:0}
.sf-stack{display:grid;gap:18px}.sf-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.sf-setting-grid label{display:grid;gap:6px}.sf-wide{grid-column:1/-1}.sf-setting-grid textarea{width:100%;min-height:90px}.sf-settings-preview{padding:20px;border:1px solid var(--border);border-left:4px solid var(--shop-accent,var(--primary));border-radius:12px;background:var(--surface)}
.sf-copy-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.sf-copy-row input{flex:1 1 220px;min-width:0}.sf-pagination{display:flex;justify-content:space-between;gap:16px;padding:18px 0}.sf-price-input{width:110px!important}.sf-note{padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--bg-secondary);color:var(--text-secondary)}
@media(max-width:950px){.sf-nav{gap:12px}.sf-products{grid-template-columns:repeat(3,minmax(0,1fr))}.sf-header-inner{gap:12px}.sf-brand{max-width:240px}}
@media(max-width:760px){.sf-nav{display:none}.sf-mobile-nav{display:block;margin-left:auto;flex-shrink:0}.sf-mobile-nav summary{display:grid;place-items:center;list-style:none;cursor:pointer;width:44px;height:44px;padding:0;border:1px solid var(--border);border-radius:10px;background:var(--primary-soft);color:var(--text-primary)}.sf-mobile-nav summary::-webkit-details-marker{display:none}.sf-mobile-nav summary::marker{content:""}.sf-mobile-nav[open] summary{border-color:var(--shop-accent)}.sf-mobile-nav nav{position:absolute;inset:calc(100% + 8px) 12px auto;display:grid;gap:4px;padding:8px;border:1px solid var(--border);background:var(--surface);border-radius:12px;box-shadow:var(--shadow-md)}.sf-mobile-nav a{padding:13px;border-radius:7px;font-weight:600}.sf-mobile-nav a:hover{background:var(--primary-soft)}.sf-products{grid-template-columns:repeat(2,minmax(0,1fr))}.sf-header-inner{min-height:68px}.sf-hero{padding:24px 20px}.sf-setting-grid{grid-template-columns:1fr}.sf-brand{font-size:13px;max-width:190px}.sf-logo{width:36px;height:36px}}
@media(max-width:430px){.sf-main{padding-block:18px}.sf-product{padding:14px;gap:9px}.sf-product strong{font-size:20px}.sf-product .sf-price{font-size:16px}.sf-header-inner{gap:8px}.sf-brand{max-width:170px}.sf-filters{gap:6px}.sf-filters a{padding:10px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.sf-product{transition:none}.sf-product:hover{transform:none}}
.sf-login-shell{max-width:480px;margin:auto}.sf-login-shell .auth-page{padding-inline:0}.sf-login-shell .auth-form{width:100%}
/* Grid children must shrink around scrollable tables instead of widening the page. */
.sf-stack{grid-template-columns:minmax(0,1fr)}.sf-stack>*{min-width:0;max-width:100%}
.sf-setting-grid input[type="file"]::file-selector-button{border:0;border-radius:6px;background:var(--primary-soft);color:var(--text-primary);padding:7px 10px;margin-right:10px;font:inherit;cursor:pointer}
.sf-setting-grid input[type="color"]{padding:5px;max-width:160px;cursor:pointer}
.sf-withdrawals{overflow-wrap:anywhere}.sf-withdrawals>header h1{font-size:clamp(22px,3vw,28px)}
.sf-withdrawals .metric-grid{margin-block:0}.sf-withdrawals .metric-card{min-width:0}
.sf-withdrawals input:not([type="checkbox"]),.sf-withdrawals select,.sf-withdrawals textarea{max-width:100%;min-width:0}
.sf-withdrawals input[type="checkbox"]{width:18px;height:18px;vertical-align:middle;accent-color:var(--primary)}
.sf-withdrawals summary{cursor:pointer;min-height:44px;padding-block:12px;font-weight:600}
@media(max-width:600px){.sf-withdrawals .sf-tools label{flex-basis:100%}.sf-withdrawals .sf-tools>.btn{flex:1 1 160px}.sf-withdrawals .metric-value{font-size:20px}}
@media(max-width:760px){.sf-tools input,.sf-tools select,.sf-setting-grid input,.sf-setting-grid select,.sf-setting-grid textarea{font-size:16px}.sf-body .theme-menu{flex-shrink:0;width:44px;min-height:44px}.sf-hero .muted{font-size:13px}.sf-trust{font-size:11px;gap:8px 14px}.sf-body .sf-main{padding-bottom:max(28px,env(safe-area-inset-bottom))}}

/* Pricing controls: readable filters and edited rows on small screens. */
.sf-price-changed{background:var(--primary-soft)}.sf-price-editor [data-price-selection]{font-weight:700;color:var(--text-primary)}.sf-price-editor input[type="checkbox"]{min-width:18px;min-height:18px;accent-color:var(--primary)}.sf-price-filters{padding:18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}
@media(max-width:600px){.sf-price-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sf-price-filters label:first-child{grid-column:1/-1}.sf-price-editor .sf-tools{display:grid;grid-template-columns:1fr}.sf-price-editor .sf-tools .btn{width:100%}}

.sf-price-editor output{font-variant-numeric:tabular-nums;font-weight:650}.sf-price-editor [data-price-feedback]{display:block;max-width:220px;white-space:normal;color:var(--danger);font-size:12px}.sf-price-editor .price-loss{color:var(--danger)}
.sf-price-editor [data-save-status]{display:block;min-height:18px;max-width:230px;white-space:normal;font-size:12px;margin-top:4px}
