/* Customer v47: cohesive dark surfaces and solid, restrained CTAs. */
.numera-shell{
 --surface:#151823;--surface-2:#202431;--surface-soft:#1a1d28;
 --header-surface:#10131d;--strong-surface:#725b9e;--strong-text:#fff;
 --border:#363946;--border-strong:#ac99cc;--text:#f4f2f8;
 --muted:#adb0c0;--surface-shadow:none;--strong-shadow:none;
 background:#0e1119;color:#f4f2f8
}
.numera-shell .numera-main{background:#0e1119}
.numera-shell .numera-sidebar{background:#10121b;border-right:1px solid #303440}
.numera-shell .numera-topbar{background:#11141e;border-bottom:1px solid #303440;
 display:grid;grid-template-columns:minmax(90px,auto) minmax(155px,1fr) auto;gap:22px;align-items:center}
.numera-shell .numera-top-actions{display:flex;align-items:center;gap:10px}
.numera-47-search{max-width:470px;min-width:0;width:100%;justify-self:center;
 display:flex;align-items:center;gap:11px;color:#b8b7c8;background:#1b1e2b;
 border:1px solid #373b49;border-radius:14px;padding:0 15px;height:44px}
.numera-47-search:focus-within{border-color:#ac99cc;background:#232536}
.numera-47-search svg{flex:none}
.numera-shell .numera-47-search input{width:100%;min-width:0;border:0!important;outline:0!important;
 background:transparent!important;box-shadow:none!important;color:#f5f2fb!important;
 font:600 12px system-ui;padding:10px 0}
.numera-47-search input::placeholder{color:#a8a6b6}
.numera-shell :is(.numera-button-primary,.numera-plan-row .numera-button-primary,
 .numera-workspace-shortcuts button.selected):not(:disabled){
 background:#725b9e!important;background-image:none!important;color:#fff!important;
 border:1px solid #8673ab!important;box-shadow:none!important;filter:none!important;
 text-shadow:none!important;font-weight:750;transition:background .16s,transform .16s}
.numera-shell :is(.numera-button-primary,.numera-plan-row .numera-button-primary):not(:disabled):hover{
 background:#836cab!important;border-color:#a48fc9!important;transform:translateY(-1px)}
.numera-shell :is(.numera-button-primary,.numera-plan-row .numera-button-primary):not(:disabled):active{
 background:#654e90!important;transform:translateY(0)}
.numera-shell :is(.numera-button,.numera-icon-button,.numera-support-button,
 .numera-support-mobile,.numera-setting-actions button,.numera-payment-actions button){
 border-radius:12px;box-shadow:none;text-shadow:none}
.numera-shell :is(.numera-button:not(.numera-button-primary),.numera-support-button,
 .numera-support-mobile,.numera-setting-actions button,.numera-payment-actions button){
 background:#20232f;color:#f1eff8;border:1px solid #3b3d4a}
.numera-shell :is(.numera-button:not(.numera-button-primary),.numera-support-button,
 .numera-support-mobile):hover{background:#2b2c3c;border-color:#59586b}
.numera-shell :is(button,a,input,textarea,select):focus-visible{
 outline:2px solid #b4a0d3!important;outline-offset:3px!important}
.numera-shell button:disabled{opacity:.62;cursor:not-allowed;filter:none}
.numera-shell .numera-nav-item.active,.numera-shell .numera-primary-nav .numera-nav-item.active,
.numera-shell .numera-bottom-tabs .numera-nav-item.active{
 background:#2a2639!important;border:1px solid #3d394a!important;
 box-shadow:none!important;color:#f5f2fb!important}
.numera-shell :is(.numera-primary-nav,.numera-bottom-tabs) .numera-nav-item.active em{
 background:none!important;background-image:none!important;
 -webkit-text-fill-color:currentColor!important;color:#f7f4fa!important}
.numera-shell .numera-bottom-tabs{background:#12141f;border-top:1px solid #323440;box-shadow:none}
.numera-shell .numera-bottom-tabs .numera-nav-item.active svg{color:#c1afd9}
.numera-shell .numera-esim-tabs button.selected{border-image:none!important;
 border:0!important;border-bottom:2px solid #a79ac0!important;
 box-shadow:none!important;background:none!important;color:#fff!important}
.numera-shell .numera-thread.selected{border-inline-start:3px solid #aaa0bc!important;box-shadow:none!important}
.numera-shell .numera-country-option.selected,.numera-shell .numera-payg-country.selected{
 background:#292739!important;border-color:#736780!important;box-shadow:none!important}
.numera-shell :is(.numera-card,.numera-service-card,.numera-profile-settings-group,
 .numera-46-number-catalogue,.numera-46-assigned,.numera-46-wallet-history,
 .numera-46-stat,.numera-46-destination,.numera-plan-row,.numera-payg-country-section){
 border-color:#373a48;box-shadow:none}
.numera-shell :is(.numera-card,.numera-profile-settings-group,.numera-46-number-catalogue){
 border-radius:20px;background:#191c27}
.numera-shell .numera-page-head{margin:9px 0 20px}
.numera-shell .numera-page-head h1{font-size:clamp(28px,3.4vw,40px);line-height:1.14;letter-spacing:-.045em}
.numera-shell .numera-eyebrow{font-size:10px;letter-spacing:.12em;color:#a5a1b7}
.numera-shell :is(.numera-card,.numera-profile-settings-group) h2{line-height:1.25}
.numera-shell :is(.numera-card p,.numera-account-tile small,.numera-account-row p){line-height:1.52}
.numera-shell .numera-account-tile{background:#222431;border-color:#3a3c4a;
 min-height:67px;padding:13px 15px;box-shadow:none}
.numera-shell .numera-account-tile:hover{border-color:#746e83;background:#2a2a39;transform:none}
.numera-shell .numera-profile-settings{gap:13px}
.numera-shell .numera-profile-settings-group{padding:21px;margin:0}
.numera-shell .numera-profile-settings-group h2{font-size:18px;margin:5px 0 13px}
.numera-shell .numera-profile-primary>.numera-card{margin-bottom:13px}
.numera-shell .numera-profile-layout{gap:18px}
.numera-shell .numera-photo-avatar{border-color:#4c465d;background:#242133}
.numera-shell .numera-profile-signout{margin:18px 0 0;padding:0;border:0;
 display:flex;justify-content:flex-end}
.numera-shell .numera-profile-photo-form{align-items:center}
.numera-shell .numera-form label,.numera-shell .numera-profile-photo-form label{color:#c8c6d5}
.numera-shell :is(input,textarea,select){accent-color:#8d75b3}
.numera-shell :is(.numera-form input,.numera-form select,.numera-form textarea){
 border:1px solid #3d414f;border-radius:12px;min-height:45px}
.numera-shell .numera-profile-settings .numera-account-links{gap:8px}
.numera-shell .numera-profile-settings .numera-account-tile strong{font-size:13px}
.numera-shell .numera-46-hero{background:#242032;border-color:#494050;
 min-height:260px;box-shadow:none}
.numera-shell .numera-46-plus-promo{background:#292239;border-color:#4a4054;
 box-shadow:none;min-height:255px;margin-top:22px}
.numera-shell .numera-46-plus-features span{background:#373044;border-color:#595067}
.numera-shell .numera-46-product-card{border-color:#444452;box-shadow:none}
.numera-shell .numera-46-product-card:hover{border-color:#8e819e;transform:translateY(-2px)}
.numera-shell .numera-46-product-copy em{background:#282733e6;color:#f6f3fa;
 border-color:#6c6476}
.numera-shell .numera-46-stat{background:#1d1f2a;border-color:#383a48}
.numera-shell .numera-46-stat:hover{background:#262735;border-color:#777083}
.numera-shell .numera-46-destination{background:#1c1f2a}
.numera-shell .numera-46-destination:hover{background:#282a37;border-color:#6f6a7a}
.numera-shell .numera-46-number-catalogue{margin:0 0 20px;
 padding:clamp(17px,2.5vw,27px)}
.numera-shell .numera-46-number-catalogue .numera-country-option{background:#202430}
.numera-shell .numera-46-number-catalogue .numera-country-option:hover{background:#2b2e3b}
.numera-shell .numera-46-wallet-hero{background:#252132;border-color:#50445c;box-shadow:none}
.numera-shell .numera-46-wallet-history{background:#191c27}
.numera-shell .numera-46-wallet-actions{gap:11px}
.numera-shell .numera-46-location-art{background:#2d283b;color:#c9b7e4}
.numera-shell .numera-46-location-hero{gap:25px}
.numera-shell .numera-plan-row.unavailable{opacity:.78}
.numera-shell .numera-payg-country-heading{background:#222534}
.numera-shell .numera-payg-country-heading:before{opacity:.4}
.numera-shell .numera-payg-country{background:#222532;border-color:#3a3c49}
.numera-shell .numera-payg-country:hover{background:#2b2e3d}
.numera-shell .numera-46-connect-tile{border-color:#3b3e4b!important}
.numera-shell .numera-46-connect-tile:hover{border-color:#777183!important}
.numera-shell .numera-sms-composer .numera-button-primary{white-space:nowrap}
.numera-auth-desktop :is(.numera-button-primary,.numera-auth-panel button[type="submit"]),
.numera-auth-panel .numera-button-primary{
 background:#725b9e!important;background-image:none!important;
 border:1px solid #8673ab!important;color:#fff!important;box-shadow:none!important}
.numera-auth-desktop :is(.numera-button-primary,.numera-auth-panel button[type="submit"]):hover,
.numera-auth-panel .numera-button-primary:hover{background:#836cab!important}
@media(max-width:1200px){
 .numera-shell .numera-topbar{grid-template-columns:minmax(0,1fr) auto;gap:12px}
 .numera-shell .numera-top-route{display:none}
 .numera-47-search{justify-self:stretch;max-width:520px}
}
@media(max-width:850px){
 .numera-shell .numera-topbar{display:none}
 .numera-shell .numera-sidebar{background:#10121b;border-bottom:1px solid #303440}
 .numera-shell .numera-content{padding:18px 17px 90px}
 .numera-shell .numera-profile-layout{grid-template-columns:minmax(0,1fr)}
 .numera-shell .numera-46-number-catalogue{padding:17px}
}
@media(max-width:590px){
 .numera-shell .numera-46-hero{min-height:220px}
 .numera-shell .numera-46-plus-promo{min-height:0}
 .numera-shell .numera-profile-settings-group{padding:17px}
 .numera-shell .numera-profile-settings .numera-account-links{grid-template-columns:minmax(0,1fr)}
 .numera-shell .numera-46-location-art{display:none}
 .numera-shell .numera-46-wallet-hero{padding:21px}
}
@media(prefers-reduced-motion:reduce){
 .numera-shell :is(.numera-button-primary,.numera-46-product-card,
 .numera-46-destination,.numera-46-stat){transition:none!important;transform:none!important}
}
/* Real product screenshots, not filler or an oversized purchase CTA. */
.numera-47-plus-gallery{grid-column:1/-1;display:grid;
 grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin-top:3px}
.numera-47-plus-gallery figure{margin:0;position:relative;overflow:hidden;
 min-width:0;aspect-ratio:2.2;background:#151722;border:1px solid #44404c;
 border-radius:14px;isolation:isolate}
.numera-47-plus-gallery img{display:block;width:100%;height:100%;
 object-fit:cover;object-position:top;transition:transform .22s}
.numera-47-plus-gallery figure:hover img{transform:scale(1.035)}
.numera-47-plus-gallery figcaption{position:absolute;inset:auto 0 0;padding:18px 12px 10px;
 background:rgba(9,10,18,.86);
 color:#f4f2f7;font:750 12px/1.2 system-ui}
@media(max-width:590px){
 .numera-47-plus-gallery{grid-template-columns:repeat(3,minmax(165px,1fr));
 overflow-x:auto;scroll-snap-type:x mandatory}
 .numera-47-plus-gallery figure{scroll-snap-align:start;aspect-ratio:1.7}
}
@media(prefers-reduced-motion:reduce){.numera-47-plus-gallery img{transition:none}}
