body{min-width:320px;background:var(--nx-bg,#1c1d20);color:var(--nx-text,#eee);font-family:'Readex Pro','Segoe UI',Tahoma,sans-serif}button,input,select{font:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #9b89ff;outline-offset:3px}.rust-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.rust-brand-login{width:min(390px,100%);height:390px}.rust-router{width:90%;height:80%;overflow:visible;filter:drop-shadow(0 12px 20px #5142d63d)}.rust-brand-name{display:flex;align-items:baseline;gap:8px;margin-top:-16px;white-space:nowrap;font-size:30px;color:var(--nx-text,#fff)}.rust-brand-name em{font-style:normal;color:#956aff}.rust-brand-name small{font-size:12px;font-weight:bold}.rust-router-body{transform-origin:center;animation:rust-router-idle 8s ease-in-out infinite}.rust-led{animation:rust-led 2s ease-in-out infinite}.rust-radio{animation:rust-radio 2.5s ease-in-out infinite;transform-origin:center}.rust-brand-panel{width:160px;height:90px;flex-direction:row;gap:8px}.rust-brand-panel .rust-router{width:65px;height:70px}.rust-brand-panel .rust-brand-name{font-size:19px;margin:0}.rust-brand-panel .rust-brand-name small{font-size:7px}.rust-brand-loader{width:120px;height:110px}.rust-brand-loader .rust-router{width:100%;height:100%}.rust-initial-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#1c1d20;color:#eee}.rust-toast{position:fixed;bottom:24px;right:24px;z-index:5000;display:flex;align-items:center;gap:12px;max-width:min(440px,calc(100vw - 32px));padding:16px 18px;border:1px solid #9d8fff80;border-radius:13px;background:#463798;color:white;box-shadow:0 12px 30px #0004;direction:rtl}.rust-toast.is-error{background:#d83c35;border-color:#fa7e77}.rust-toast p{font-size:14px;line-height:1.65}.rust-toast button{border:0;background:none;color:inherit;cursor:pointer}.rust-toast>span{display:flex}.sonywifie-invoice-main .has-customer-name bdi{unicode-bidi:isolate}.sonywifie-chart-day small{font-size:.68rem}.rust-not-found{min-height:100vh;display:grid;place-content:center;text-align:center;gap:14px}.rust-not-found a{color:#ad9bff}.rust-spinner{height:28px;width:28px;border:3px solid #ffffff40;border-top-color:white;border-radius:50%;animation:rust-spin .8s linear infinite}.rust-success-check{display:grid;place-items:center;width:68px;height:68px;background:#22c55e30;color:#6cf2a3;border:1px solid #22c55e80;border-radius:50%}.rust-success-check svg{width:40px;height:40px}.rust-success{overflow:hidden;min-height:240px}.rust-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden}.rust-confetti i{position:absolute;top:-10px;left:calc(var(--i)*4.2%);width:7px;height:14px;background:hsl(calc(var(--i)*37) 90% 70%);animation:rust-confetti 2.6s calc(var(--i)*.025s) ease-in both}.rust-create{position:relative;width:min(640px,100%);max-height:90vh;overflow:auto;padding:28px;color:var(--nx-text,#fff);background:var(--nx-card,#292a2e);border-radius:20px}.rust-create h2{font-size:22px;margin-bottom:20px}.rust-create-close{position:absolute;top:14px;left:14px;background:none;color:inherit;border:0;cursor:pointer}.rust-create form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.rust-create label{display:flex;flex-direction:column;gap:8px;font-size:13px}.rust-create input,.rust-create select{width:100%;padding:11px;border:1px solid var(--nx-line,#555);border-radius:10px;background:var(--nx-soft,#1c1d20);color:inherit}.rust-create .sonywifie-primary{grid-column:1/-1;justify-content:center;margin-top:12px}.sonywifie-quick-actions{display:flex}.sonywifie-brand .rust-brand-name{color:var(--nx-text)}.sonywifie-invoice-date{display:inline-flex;flex-wrap:wrap}.sonywifie-deposit-notice h2{line-height:1.8}.sonywifie-deposit-notice-sender{max-width:100%}.sonywifie-deposit-notice-sender bdi{overflow-wrap:anywhere}.sonywifie-manager{display:flex;gap:8px;align-items:center}.sonywifie-tool{display:inline-flex;align-items:center;gap:7px}.sonywifie-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px}button:disabled{cursor:not-allowed}.rust-create label input:focus{border-color:#9b89ff}.sonywifie-payments-toggle{min-width:0}.rust-brand-panel .rust-radio{stroke-width:5}.sonywifie-empty>.sonywifie-outline{margin-top:14px}
@keyframes rust-router-idle{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes rust-led{0%,45%,100%{opacity:1}50%,80%{opacity:.25}}@keyframes rust-radio{0%,100%{opacity:.1;transform:scale(.94)}50%{opacity:.8;transform:scale(1.04)}}@keyframes rust-spin{to{transform:rotate(360deg)}}@keyframes rust-confetti{to{transform:translateY(360px) rotate(500deg);opacity:0}}
@media(max-width:640px){.rust-brand-panel{width:135px}.rust-brand-panel .rust-brand-name{font-size:15px}.rust-brand-login{height:250px}.rust-create form{grid-template-columns:1fr}.rust-toast{right:16px;bottom:16px}.sonywifie-manager{font-size:.75rem}.rust-brand-panel .rust-router{width:55px}}
@media(prefers-reduced-motion:reduce){.rust-router-body,.rust-led,.rust-radio,.rust-confetti i{animation:none}.rust-confetti{display:none}}

.rust-brand-login .rust-router{animation:rust-router-arrive 1.15s ease-out both,login-router-social-shake 8s ease-in-out 1.4s infinite}
.rust-brand-login .rust-router-body{animation:rust-router-sway 12s ease-in-out 1.15s infinite;transform-box:fill-box;transform-origin:50% 70%}
.rust-brand-login .animated-brand-social-emissions{top:12%;bottom:12%}
.rust-receipt{width:100%;margin:8px 0;display:grid;gap:9px;padding:14px;border:1px solid #ffffff30;border-radius:12px;background:#ffffff0d;text-align:start;color:inherit}
.rust-receipt>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.rust-receipt dt{font-size:12px;opacity:.8}.rust-receipt dd{margin:0;font-size:13px;font-weight:600;overflow-wrap:anywhere}.rust-success{max-height:90vh;overflow:auto}.rust-success>*:not(.rust-confetti){position:relative}
@keyframes rust-router-arrive{0%{opacity:0;transform:translateY(-100px) rotate(-7deg) scale(.86)}65%{opacity:1;transform:translateY(7px) rotate(1deg)}100%{opacity:1;transform:none}}
@keyframes rust-router-sway{0%,79%,100%{transform:rotate(0)}81%{transform:rotate(-1.5deg)}83%{transform:rotate(1.2deg)}85%{transform:rotate(-.6deg)}87%{transform:rotate(0)}}
@media(prefers-reduced-motion:reduce){.rust-brand-login .rust-router,.rust-brand-login .rust-router-body{animation:none}.rust-brand-login .animated-brand-social-emissions{display:none}}

.animated-brand-logo--login{width:min(390px,100%);height:390px}.animated-brand-animation{display:block}.animated-brand-animation img{display:block;width:100%;height:100%;object-fit:contain}.animated-brand-logo--login .animated-brand-router{transform:translateX(7.9%)}
.rust-success{overflow:visible}.rust-success>.rust-original-confetti{position:absolute!important;z-index:0!important}.rust-original-confetti img{display:block;width:100%;height:100%}.rust-success>.sonywifie-package-confetti-burst{position:absolute;z-index:1}.rust-success>h2,.rust-success>.rust-receipt,.rust-success>button,.rust-success>.rust-success-check{position:relative;z-index:2}
@media(max-width:760px){.animated-brand-logo--login{width:260px;height:260px}}@media(max-width:430px){.animated-brand-logo--login{width:220px;height:220px}}
@media(prefers-reduced-motion:reduce){.rust-original-confetti,.sonywifie-package-confetti-burst{display:none}}

/* Payment confirmation: clear receipt hierarchy with the original celebration. */
.sonywifie-deposit-notice.rust-success{
  width:min(410px,calc(100vw - 32px));box-sizing:border-box;padding:28px 24px 22px;
  gap:12px;border:1px solid #b5a9ff80;border-radius:24px;color:#fff;
  background:radial-gradient(ellipse at 50% 0%,#8271ed45,transparent 65%),linear-gradient(145deg,#29243f,#42338c);
  box-shadow:0 24px 80px #0006,0 0 36px #7662eb26;
}
.rust-success .rust-success-check{width:62px;height:62px;background:linear-gradient(145deg,#34d3992b,#34d3990d);border-color:#6ee7b766;box-shadow:0 0 0 7px #34d39908,0 8px 24px #0002}
.rust-success h2{font-size:19px;line-height:1.7;margin:3px 0 0;max-width:100%}
.rust-success .rust-receipt{box-sizing:border-box;margin:4px 0 3px;padding:0;gap:0;border-color:#ffffff24;border-radius:16px;background:#110d2626;overflow:hidden}
.rust-success .rust-receipt>div{padding:12px 14px;gap:14px}
.rust-success .rust-receipt>div+div{border-top:1px solid #ffffff12}
.rust-success .rust-receipt dt{display:flex;align-items:center;gap:7px;flex-shrink:0;font-size:12px;opacity:.76}
.rust-success .rust-receipt dt svg{width:16px;height:16px;color:#c4b5fd}
.rust-success .rust-receipt dd{text-align:end;line-height:1.7;font-size:13px}
.rust-success .rust-receipt-phone dd{letter-spacing:.5px;font-variant-numeric:tabular-nums}
.rust-success .rust-receipt-plan dd{color:#ddd6fe}
.rust-success .rust-receipt .rust-receipt-amount{background:linear-gradient(100deg,#a78bfa16,#a78bfa05);padding-block:15px}
.rust-success .rust-receipt-amount dd{font-size:23px;font-weight:700;color:#fff;line-height:1.3}
.rust-success .rust-receipt-date dd{font-size:11px;color:#e4dff7}
.rust-success .sonywifie-deposit-notice-confirm{width:100%;min-height:44px;border-radius:12px;border:1px solid #c4b5fd60;background:linear-gradient(135deg,#7962dc,#6550c4);color:#fff;font-weight:600;box-shadow:0 5px 16px #140b432e;transition:background .2s,box-shadow .2s}
.rust-success .sonywifie-deposit-notice-confirm:hover{background:linear-gradient(135deg,#8b74ed,#7560d4);box-shadow:0 6px 20px #140b4340}
:root[data-theme="light"] .sonywifie-deposit-notice.rust-success{background:radial-gradient(ellipse at 50% 0%,#c4b5fd30,transparent 65%),linear-gradient(145deg,#fff,#f5f2ff);color:#30284c;border-color:#d4c9f3;box-shadow:0 24px 70px #39265b24}
:root[data-theme="light"] .rust-success .rust-receipt{background:#fff9;border-color:#e4dcf3}
:root[data-theme="light"] .rust-success .rust-receipt>div+div{border-color:#eee7f7}
:root[data-theme="light"] .rust-success .rust-receipt-plan dd,:root[data-theme="light"] .rust-success .rust-receipt dt svg{color:#6950b8}
:root[data-theme="light"] .rust-success .rust-receipt-amount dd{color:#584098}
:root[data-theme="light"] .rust-success .rust-receipt-date dd{color:#726681}
:root[data-theme="light"] .rust-success .rust-success-check{color:#059669;border-color:#34d39966}
@media(max-width:430px){.sonywifie-deposit-notice.rust-success{padding:23px 18px 18px;gap:10px}.rust-success h2{font-size:17px}.rust-success .rust-receipt>div{padding-inline:11px}.rust-success .rust-receipt-amount dd{font-size:21px}}

/* The receipt keeps the selected package's palette, captured before payment. */
.sonywifie-deposit-notice.rust-success{--receipt-accent:#b69aff;--receipt-deep:#473187;--receipt-ink:#6240a1;--receipt-rgb:167,139,250;
  background:radial-gradient(ellipse at 50% -15%,rgba(var(--receipt-rgb),.30),transparent 64%),linear-gradient(145deg,#24232f,var(--receipt-deep));
  border-color:rgba(var(--receipt-rgb),.55);box-shadow:0 24px 80px #0006,0 0 42px rgba(var(--receipt-rgb),.13)}
.rust-success[data-tier="green"]{--receipt-accent:#6ee7b7;--receipt-deep:#184d40;--receipt-ink:#047857;--receipt-rgb:52,211,153}
.rust-success[data-tier="orange"]{--receipt-accent:#fdba74;--receipt-deep:#663c27;--receipt-ink:#b45309;--receipt-rgb:251,146,60}
.rust-success[data-tier="gold"]{--receipt-accent:#fde68a;--receipt-deep:#594a24;--receipt-ink:#896515;--receipt-rgb:251,191,36}
.rust-success[data-tier="silver"]{--receipt-accent:#e2e8f0;--receipt-deep:#3a4658;--receipt-ink:#475569;--receipt-rgb:148,163,184}
.rust-success[data-tier="diamond"]{--receipt-accent:#a5f3fc;--receipt-deep:#164e63;--receipt-ink:#0e7490;--receipt-rgb:34,211,238}
.rust-success::before{content:"";position:absolute;top:0;left:19%;right:19%;height:2px;border-radius:50%;background:linear-gradient(90deg,transparent,var(--receipt-accent),transparent);box-shadow:0 0 14px rgba(var(--receipt-rgb),.5);pointer-events:none}
.rust-success .rust-success-check{color:var(--receipt-accent);border-color:rgba(var(--receipt-rgb),.48);background:linear-gradient(145deg,rgba(var(--receipt-rgb),.20),rgba(var(--receipt-rgb),.04));box-shadow:0 0 0 7px rgba(var(--receipt-rgb),.035),0 8px 24px #0002}
.rust-success .rust-receipt dt svg{color:var(--receipt-accent)}
.rust-success .rust-receipt-plan dd{color:var(--receipt-accent);background:rgba(var(--receipt-rgb),.1);border:1px solid rgba(var(--receipt-rgb),.2);padding:3px 10px;border-radius:8px}
.rust-success .rust-receipt .rust-receipt-amount{background:linear-gradient(100deg,rgba(var(--receipt-rgb),.14),rgba(var(--receipt-rgb),.025))}
.rust-success .rust-receipt-amount dd{font-size:18px;font-weight:600;color:var(--receipt-accent);letter-spacing:0}
.rust-success .sonywifie-deposit-notice-confirm{border-color:rgba(var(--receipt-rgb),.45);background:linear-gradient(135deg,rgba(var(--receipt-rgb),.28),rgba(var(--receipt-rgb),.13));box-shadow:inset 0 1px 0 #ffffff0d,0 5px 16px #0002}
.rust-success .sonywifie-deposit-notice-confirm:hover{background:linear-gradient(135deg,rgba(var(--receipt-rgb),.4),rgba(var(--receipt-rgb),.23));box-shadow:0 6px 20px rgba(var(--receipt-rgb),.12)}
:root[data-theme="light"] .sonywifie-deposit-notice.rust-success{background:radial-gradient(ellipse at 50% -15%,rgba(var(--receipt-rgb),.20),transparent 65%),linear-gradient(145deg,#fff,#fafafa);border-color:rgba(var(--receipt-rgb),.4);box-shadow:0 24px 70px #2430471f,0 0 36px rgba(var(--receipt-rgb),.07);color:#292d38}
:root[data-theme="light"] .rust-success .rust-receipt-plan dd,:root[data-theme="light"] .rust-success .rust-receipt-amount dd,:root[data-theme="light"] .rust-success .rust-receipt dt svg,:root[data-theme="light"] .rust-success .rust-success-check{color:var(--receipt-ink)}
:root[data-theme="light"] .rust-success .rust-success-check{border-color:rgba(var(--receipt-rgb),.45)}
:root[data-theme="light"] .rust-success .rust-receipt{border-color:rgba(var(--receipt-rgb),.23)}
:root[data-theme="light"] .rust-success .sonywifie-deposit-notice-confirm{color:var(--receipt-ink);border-color:rgba(var(--receipt-rgb),.4)}
@media(max-width:430px){.rust-success .rust-receipt-amount dd{font-size:17px}}
/* Neutral outer shell, package-colored receipt center. */
.sonywifie-deposit-notice.rust-success,
:root[data-theme="light"] .sonywifie-deposit-notice.rust-success{
  background:var(--nx-card,#292a2e);color:var(--nx-text,#eee);
  border-color:var(--nx-line,#ffffff24);
  box-shadow:0 24px 80px #0004,0 2px 8px #0001;
}
.rust-success::before{
  top:0;left:12%;right:auto;width:24%;height:2px;z-index:3;
  background:linear-gradient(90deg,transparent,var(--receipt-accent) 30%,#fff 50%,var(--receipt-accent) 70%,transparent);
  box-shadow:0 0 6px rgba(var(--receipt-rgb),.4);opacity:0;
  animation:sonywifie-customer-top-glint 3.6s ease-in-out infinite;
}
.rust-success .rust-receipt{
  background:radial-gradient(ellipse at 100% 0%,rgba(var(--receipt-rgb),.10),transparent 80%),linear-gradient(135deg,rgba(var(--receipt-rgb),.07),rgba(var(--receipt-rgb),.16));
  border-color:rgba(var(--receipt-rgb),.26);color:var(--nx-text,#eee);
}
.rust-success .rust-receipt-date dd{color:var(--nx-muted,#bbb)}
.rust-success .rust-receipt-amount dd{color:var(--receipt-accent)}
.rust-success .sonywifie-deposit-notice-confirm,
:root[data-theme="light"] .rust-success .sonywifie-deposit-notice-confirm{
  background:var(--nx-soft,#ffffff09);color:var(--nx-text,#eee);border-color:var(--nx-line,#ffffff24);
  box-shadow:inset 0 1px 0 #ffffff06;
}
.rust-success .sonywifie-deposit-notice-confirm:hover{
  background:var(--nx-card,#292a2e);border-color:rgba(var(--receipt-rgb),.45);box-shadow:0 4px 15px #0001;
}
:root[data-theme="light"] .rust-success .rust-receipt{
  background:radial-gradient(ellipse at 100% 0%,rgba(var(--receipt-rgb),.06),transparent 80%),linear-gradient(135deg,rgba(var(--receipt-rgb),.05),rgba(var(--receipt-rgb),.14));
  border-color:rgba(var(--receipt-rgb),.28);
}
:root[data-theme="light"] .rust-success .rust-receipt>div+div{border-color:rgba(var(--receipt-rgb),.14)}
@media(prefers-reduced-motion:reduce){.rust-success::before{animation:none;left:38%;opacity:.55}}
/* Small screens and on-screen keyboards: keep the confirmation reachable. */
.sonywifie-deposit-notice-backdrop{box-sizing:border-box;overflow-y:auto;overflow-x:hidden;align-items:safe center;padding-block:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-bottom));min-height:0}
.sonywifie-deposit-notice.rust-success{flex-shrink:0;max-height:none;margin-block:auto;max-width:100%}
.rust-success .rust-receipt>div{min-width:0}
.rust-success .rust-receipt dd{min-width:0;overflow-wrap:anywhere}
@media(max-width:760px){
  .login-card input,.rust-create input,.rust-create select,.sonywifie-search-form input{font-size:16px}
  .login-submit,.rust-create button[type="submit"]{min-height:44px}
}
@media(max-width:360px){
  .sonywifie-deposit-notice.rust-success{padding-inline:14px}
  .rust-success .rust-receipt>div{gap:10px;padding-inline:10px}
  .rust-success .rust-receipt dt{font-size:11px}
  .rust-success .rust-receipt dd{font-size:12px}
  .rust-success .rust-receipt-amount dd{font-size:17px}
}

.rust-login-brand{display:grid;place-items:center;width:100%;height:100%}
.rust-login-error .animated-brand-router{animation:rust-login-rejected 1.1s cubic-bezier(.36,.07,.19,.97) both!important}
.rust-login-error .animated-brand-animation{animation:rust-login-error-flash 1.1s steps(1,end) both!important}
@keyframes rust-login-rejected{
  0%,100%{transform:translateX(7.9%) rotate(0) scale(1)}
  10%{transform:translateX(calc(7.9% - 24px)) rotate(-14deg) scale(1.08)}
  20%{transform:translateX(calc(7.9% + 22px)) rotate(12deg) scale(1.04)}
  30%{transform:translateX(calc(7.9% - 20px)) rotate(-11deg)}
  40%{transform:translateX(calc(7.9% + 18px)) rotate(10deg)}
  50%{transform:translateX(calc(7.9% - 15px)) rotate(-8deg)}
  60%{transform:translateX(calc(7.9% + 12px)) rotate(6deg)}
  70%{transform:translateX(calc(7.9% - 9px)) rotate(-5deg)}
  80%{transform:translateX(calc(7.9% + 6px)) rotate(3deg)}
  90%{transform:translateX(calc(7.9% - 2px)) rotate(-1deg)}
}
@keyframes rust-login-error-flash{0%,100%{filter:none}12%,36%,60%,84%{filter:brightness(1.5) drop-shadow(0 0 8px #a78bfa99)}24%,48%,72%{filter:brightness(.75)}}
@media(prefers-reduced-motion:reduce){.rust-login-error .animated-brand-router,.rust-login-error .animated-brand-animation{animation:none!important}}

.rust-login-loading .sonywifie-deposit-notice{background:var(--nx-card,#292a2e);color:var(--nx-text,#eee);border-color:var(--nx-line,#ffffff24);width:min(320px,100%);gap:10px;padding:24px 20px}
.rust-login-loading h2{margin:0;font-size:18px}.rust-login-loading p{margin:0;font-size:12px;color:var(--nx-muted,#aaa)}
.rust-login-loading .animated-brand-logo--loader{width:150px;height:120px;overflow:hidden}
.rust-login-loading .rust-spinner{width:20px;height:20px;border-color:#9b89ff35;border-top-color:#9b89ff}

.rust-initial-loading{position:fixed;inset:0;min-height:100dvh;background:var(--nx-bg,#1c1d20);z-index:4000;overflow:hidden}
.rust-router-loading{position:relative;width:min(115px,30vw);aspect-ratio:1;flex:none;filter:drop-shadow(0 12px 28px #5142d62e)}
.rust-router-loading img{display:block;width:100%;height:100%}
.rust-loader-lamp{position:absolute;top:80.8%;width:4.5%;height:4.5%;border-radius:50%;background:#32df8a;opacity:.2;transform:translate(-50%,-50%);animation:rust-lamp-step 1.8s ease-in-out infinite}
.rust-loader-lamp.lamp-one{left:36.3%}.rust-loader-lamp.lamp-two{left:50.5%;animation-delay:.6s}.rust-loader-lamp.lamp-three{left:65.3%;animation-delay:1.2s}
@keyframes rust-lamp-step{0%,18%{opacity:1;box-shadow:0 0 7px 2px #32df8ab3}30%,100%{opacity:.15;box-shadow:none}}
@media(prefers-reduced-motion:reduce){.rust-loader-lamp{animation:none;opacity:.65}}

.animated-brand-logo--panel .animated-brand-animation{position:relative}
.rust-panel-lamps{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}
.rust-panel-lamp-fixed{fill:#32df8a;filter:drop-shadow(0 0 3px #32df8a)}
.rust-panel-lamp-pulse{fill:#32df8a;opacity:.08;animation:rust-panel-pulse 6s ease-in-out infinite}
.animated-brand-logo--panel .animated-brand-router{animation:rust-panel-sway 12s ease-in-out infinite}
@keyframes rust-panel-sway{0%,77%,91%,100%{transform:translateX(-50%) rotate(0)}79%{transform:translateX(calc(-50% - 2px)) rotate(-3deg)}81%{transform:translateX(calc(-50% + 2px)) rotate(3deg)}83%{transform:translateX(calc(-50% - 1px)) rotate(-2deg)}86%{transform:translateX(calc(-50% + 1px)) rotate(1deg)}89%{transform:translateX(-50%) rotate(0)}}
@keyframes rust-panel-pulse{0%,12%,25%,38%,53%,100%{opacity:.08;filter:none}18%,31%,44%{opacity:1;filter:drop-shadow(0 0 4px #32df8a)}}
@media(prefers-reduced-motion:reduce){.animated-brand-logo--panel .animated-brand-router,.rust-panel-lamp-pulse{animation:none}.rust-panel-lamp-pulse{opacity:.65}}

/* Named golden plans keep their tier regardless of price or capacity. */
.sonywifie-customer.sonywifie-tier-gold,
.sonywifie-package-option.sonywifie-tier-gold,
.sonywifie-current-plan.sonywifie-tier-gold{position:relative;isolation:isolate;border-color:var(--nx-tier);box-shadow:0 0 15px #fbbf2414}
.sonywifie-customer.sonywifie-tier-gold::after,
.sonywifie-package-option.sonywifie-tier-gold::after,
.sonywifie-current-plan.sonywifie-tier-gold::after{
 content:"";position:absolute;inset:-1px;z-index:1;padding:2px;border-radius:inherit;pointer-events:none;
 background:linear-gradient(115deg,#8c5a12 5%,#dca427 22%,#fff1af 34%,#dca427 43%,#9d6817 56%,#f6cf63 75%,#fff4c2 84%,#b78321 96%);
 background-size:300% 300%;
 -webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;
 mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;
 animation:rust-gold-border 5s ease-in-out infinite;
}
.sonywifie-package-option.sonywifie-tier-gold .sonywifie-package-name,
.sonywifie-package-option.sonywifie-tier-gold .sonywifie-package-price,
.sonywifie-current-plan.sonywifie-tier-gold>strong{color:var(--nx-tier)}
.sonywifie-package-option.sonywifie-tier-gold::before{animation:sonywifie-package-top-glint 3.6s ease-in-out infinite}
@keyframes rust-gold-border{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@media(prefers-reduced-motion:reduce){.sonywifie-customer.sonywifie-tier-gold::after,.sonywifie-package-option.sonywifie-tier-gold::after,.sonywifie-current-plan.sonywifie-tier-gold::after{animation:none}.sonywifie-package-option.sonywifie-tier-gold::before{animation:none}}

/* Customer card inherits the current golden package's complete finish. */
.sonywifie-customer.sonywifie-tier-gold{
 background:radial-gradient(ellipse at 100% 0%,#fbbf2414,transparent 64%),var(--nx-card,#292a2e);
 border-color:#dca427;box-shadow:0 8px 28px #0002,0 0 22px #fbbf2412;
}
.sonywifie-customer.sonywifie-tier-gold::before{height:2px;background:linear-gradient(90deg,transparent,#dca427 25%,#fff1af 50%,#dca427 75%,transparent);box-shadow:0 0 7px #fbbf2455}
.sonywifie-customer.sonywifie-tier-gold .sonywifie-customer-title>.sonywifie-eyebrow{color:var(--nx-tier)}
:root[data-theme="light"] .sonywifie-customer.sonywifie-tier-gold{background:radial-gradient(ellipse at 100% 0%,#fbbf241c,transparent 65%),var(--nx-card,#fff);border-color:#c08b24;box-shadow:0 8px 26px #7857140d}
/* Light gold: champagne surfaces, warm readable ink and a fine satin frame. */
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold,
:root[data-theme="light"] .sonywifie-current-plan.sonywifie-tier-gold,
:root[data-theme="light"] .sonywifie-customer.sonywifie-tier-gold,
:root[data-theme="light"] .sonywifie-avatar.sonywifie-tier-gold{
 --nx-tier:#896619;--nx-tier-soft:#f9f2df;--nx-tier-badge:#f2e7c6;
}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold,
:root[data-theme="light"] .sonywifie-current-plan.sonywifie-tier-gold{
 background:linear-gradient(115deg,#fffdf8 0%,#fcf7e9 65%,#f7edcf 100%);
 border-color:#d9c48d;box-shadow:0 2px 5px #72531808,inset 0 1px 0 #fff;
}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold::after,
:root[data-theme="light"] .sonywifie-current-plan.sonywifie-tier-gold::after,
:root[data-theme="light"] .sonywifie-customer.sonywifie-tier-gold::after{
 padding:1px;background:linear-gradient(115deg,#d8c28b 5%,#e9d9aa 24%,#fffdf1 37%,#ceb16c 52%,#eadbb2 72%,#fff9e5 85%,#d8c28b 96%);background-size:300% 300%;
}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold:hover,
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold:focus-visible{
 background:linear-gradient(115deg,#fffdf6,#f8edce);border-color:#b99a50;box-shadow:0 5px 14px #8d6b1b14;
}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold.is-selected{
 background:linear-gradient(115deg,#fbf3dc,#f3e5bb);border-color:#ad8732;box-shadow:0 3px 12px #94702112;
}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold .sonywifie-package-name,
:root[data-theme="light"] .sonywifie-current-plan.sonywifie-tier-gold>strong{color:#795b1c}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold .sonywifie-package-price{color:#6e5115}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold .sonywifie-package-price small{color:#8d8062}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold .sonywifie-package-capacity{background:#eee1b9;color:#70541b;box-shadow:inset 0 1px 0 #ffffff80}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold .sonywifie-radio{border-color:#d8c99f;background:#fffdf6}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold.is-selected .sonywifie-radio{border-color:#a48338;background:#fffaf0}
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold.is-selected .sonywifie-radio::after{background:#a48338}
:root[data-theme="light"] .sonywifie-customer.sonywifie-tier-gold{background:radial-gradient(ellipse at 100% 0%,#f5e8c377,transparent 65%),#fffefa;border-color:#dfd0a6;box-shadow:0 8px 26px #78571409}
:root[data-theme="light"] .sonywifie-customer.sonywifie-tier-gold::before{background:linear-gradient(90deg,transparent,#c5aa68 25%,#fffdf1 50%,#c5aa68 75%,transparent);box-shadow:0 0 5px #c5aa6830}
/* A checkmark makes the selected package explicit at a glance. */
.sonywifie-package-option.is-selected .sonywifie-radio{display:grid;place-items:center}
.sonywifie-package-option.sonywifie-primary-package.is-selected .sonywifie-radio::after,
.sonywifie-package-option.sonywifie-extra-package.is-selected .sonywifie-radio::after,
:root[data-theme="light"] .sonywifie-package-option.sonywifie-tier-gold.is-selected .sonywifie-radio::after{
 content:"";position:absolute;inset:auto;width:7px;height:12px;margin-top:-3px;
 border:solid var(--nx-tier,var(--nx-purple));border-width:0 2.5px 2.5px 0;border-radius:0;
 background:transparent;transform:rotate(45deg);
}

/* Cairo Arabic numerals consistently across all package tiers and receipts. */
.sonywifie-package-option .sonywifie-package-capacity,
.sonywifie-package-option .sonywifie-package-price,
.sonywifie-package-option .sonywifie-package-price small,
.sonywifie-package-heading>span,
.sonywifie-current-plan>span:not(.sonywifie-current-plan-toggle),
.rust-success .rust-receipt dd{
 font-family:'Cairo','Segoe UI',Tahoma,sans-serif;
 font-variant-numeric:normal;font-feature-settings:normal;letter-spacing:0;
}
.sonywifie-package-option .sonywifie-package-capacity,
.sonywifie-package-option .sonywifie-package-price{font-weight:700;line-height:1.65}
/* Shared light package finish; every tier keeps its own palette. */
:root[data-theme="light"] :is(.sonywifie-package-option,.sonywifie-current-plan){
 --package-light-ink:var(--nx-tier,#4939c9);
 --package-light-edge:color-mix(in srgb,var(--package-light-ink) 30%,#fff);
 background:linear-gradient(115deg,#fff 0%,color-mix(in srgb,var(--package-light-ink) 4%,#fff) 65%,color-mix(in srgb,var(--package-light-ink) 8%,#fff) 100%);
 border-color:var(--package-light-edge);
 box-shadow:0 2px 5px color-mix(in srgb,var(--package-light-ink) 5%,transparent),inset 0 1px 0 #fff;
}
:root[data-theme="light"] .sonywifie-package-option:hover,
:root[data-theme="light"] .sonywifie-package-option:focus-visible{
 background:linear-gradient(115deg,#fff,color-mix(in srgb,var(--package-light-ink) 10%,#fff));
 border-color:color-mix(in srgb,var(--package-light-ink) 55%,#fff);
 box-shadow:0 5px 14px color-mix(in srgb,var(--package-light-ink) 10%,transparent);
}
:root[data-theme="light"] .sonywifie-package-option.is-selected{
 background:linear-gradient(115deg,color-mix(in srgb,var(--package-light-ink) 6%,#fff),color-mix(in srgb,var(--package-light-ink) 14%,#fff));
 border-color:color-mix(in srgb,var(--package-light-ink) 65%,#fff);
 box-shadow:0 3px 12px color-mix(in srgb,var(--package-light-ink) 8%,transparent);
}
:root[data-theme="light"] .sonywifie-package-option .sonywifie-package-name,
:root[data-theme="light"] .sonywifie-package-option .sonywifie-package-price,
:root[data-theme="light"] .sonywifie-current-plan>strong{color:var(--package-light-ink)}
:root[data-theme="light"] .sonywifie-package-option .sonywifie-package-capacity{
 background:color-mix(in srgb,var(--package-light-ink) 12%,#fff);
 color:var(--package-light-ink);box-shadow:inset 0 1px 0 #ffffff80;
}
:root[data-theme="light"] .sonywifie-package-option .sonywifie-radio{
 border-color:color-mix(in srgb,var(--package-light-ink) 26%,#fff);background:#ffffffb3;
}
:root[data-theme="light"] .sonywifie-package-option.is-selected .sonywifie-radio{
 border-color:var(--package-light-ink);background:#fff;
}
/* Silver needs graphite ink to remain readable on the pale surface. */
:root[data-theme="light"] :is(.sonywifie-package-option,.sonywifie-current-plan).sonywifie-tier-silver{--package-light-ink:#596575}

/* Login mascot: alternating winks and social broadcasts on a shared clock. */
.rust-router-character{display:block;overflow:visible}
.rust-character-eye{transform-box:fill-box;transform-origin:center;animation-duration:12s;animation-delay:1.4s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}
.rust-character-eye.eye-right{animation-name:rust-wink-right}
.rust-character-eye.eye-left{animation-name:rust-wink-left}
.rust-character-smile{transform-box:fill-box;transform-origin:center;animation:rust-smile 6s ease-in-out 1.4s infinite}
.animated-brand-logo--login .animated-brand-social-particle{animation-name:rust-social-wink;animation-duration:12s}
.animated-brand-logo--login .animated-brand-router{animation:login-router-land 1.15s cubic-bezier(.2,.75,.25,1) both,rust-mascot-wiggle 12s ease-in-out 1.4s infinite}
@keyframes rust-wink-right{0%,5%,14%,100%{transform:scaleY(1)}7%,11%{transform:scaleY(.12)}}
@keyframes rust-wink-left{0%,55%,64%,100%{transform:scaleY(1)}57%,61%{transform:scaleY(.12)}}
@keyframes rust-smile{0%,22%,100%{transform:scale(1)}8%,14%{transform:scale(1.15,1.2)}}
@keyframes rust-mascot-wiggle{0%,5%,14%,55%,64%,100%{translate:0 0;rotate:0deg}7%,57%{translate:-5px 1px;rotate:-2deg}9%,59%{translate:5px -1px;rotate:2deg}11%,61%{translate:-2px 0;rotate:-1deg}}
@keyframes rust-social-wink{0%,4%{opacity:0;transform:translate(0,0) scale(.3) rotate(0)}6%{opacity:1;transform:translate(0,0) scale(.82)}13%{opacity:1;transform:translate(var(--social-dx),var(--social-dy)) scale(1) rotate(var(--social-rotate))}18%,100%{opacity:0;transform:translate(var(--social-dx),calc(var(--social-dy) - 10px)) scale(.65) rotate(var(--social-rotate))}}
@media(prefers-reduced-motion:reduce){.rust-character-eye,.rust-character-smile,.animated-brand-logo--login .animated-brand-router{animation:none}.animated-brand-logo--login .animated-brand-social-emissions{display:none}}

.rust-mascot-waves .wave{opacity:0;animation:rust-mascot-signal 3s ease-out infinite;filter:drop-shadow(0 0 3px #8b6bff66)}
.rust-mascot-waves .wave-two{animation-delay:.22s}.rust-mascot-waves .wave-three{animation-delay:.44s}
.rust-mascot-waves.waves-right .wave-one{animation-delay:1.5s}.rust-mascot-waves.waves-right .wave-two{animation-delay:1.72s}.rust-mascot-waves.waves-right .wave-three{animation-delay:1.94s}
@keyframes rust-mascot-signal{0%,8%{opacity:0}22%{opacity:.9}42%{opacity:.5}65%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.rust-mascot-waves .wave{animation:none;opacity:.4}}

/* A gentle right-side arrival, followed by the mascot's shared animation cycle. */
.animated-brand-logo--login .animated-brand-router{
 animation:rust-router-enter-right 1.8s cubic-bezier(.16,1,.3,1) both,rust-mascot-wiggle 12s ease-in-out 2s infinite;
}
.animated-brand-logo--login .animated-brand-animation{animation-delay:2s}
.rust-character-eye,.rust-character-smile{animation-delay:2s}
.animated-brand-logo--login .animated-brand-social-particle{animation-delay:calc(var(--social-delay) + 2s)}
.rust-antenna-pulse{opacity:.22;animation:rust-antenna-heartbeat 4s ease-in-out 2s infinite}
.rust-antenna-pulse.antenna-right{animation-delay:4s}
@keyframes rust-router-enter-right{
 0%{opacity:0;transform:translate(130px,0) scale(.96)}
 100%{opacity:1;transform:translate(7.9%,0) scale(1)}
}
@keyframes rust-antenna-heartbeat{
 0%,12%,30%,100%{opacity:.22;filter:none}
 18%,25%{opacity:1;filter:drop-shadow(0 0 5px #32df8a)}
 21%{opacity:.45;filter:drop-shadow(0 0 2px #32df8a)}
}
@media(prefers-reduced-motion:reduce){.animated-brand-logo--login .animated-brand-router,.rust-antenna-pulse{animation:none}.rust-antenna-pulse{opacity:.7}}

/* Waves travel out from each pulsing antenna after the entrance settles. */
.rust-outgoing-signal .signal-arc{opacity:0;animation:rust-outgoing-wave 4s ease-out 2s infinite;filter:drop-shadow(0 0 2px #9275ff66)}
.rust-outgoing-signal .arc-two{animation-delay:2.22s}.rust-outgoing-signal .arc-three{animation-delay:2.44s}
.rust-outgoing-signal.signal-right .arc-one{animation-delay:4s}.rust-outgoing-signal.signal-right .arc-two{animation-delay:4.22s}.rust-outgoing-signal.signal-right .arc-three{animation-delay:4.44s}
@keyframes rust-outgoing-wave{0%,12%{opacity:0}18%,25%{opacity:.9}38%{opacity:.35}50%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.rust-outgoing-signal .signal-arc{animation:none;opacity:.35}}

/* Credential rejection: startled face and a strong shake, then resume the mascot. */
.rust-character-gasp{opacity:0}
.rust-login-error .animated-brand-router{transform-origin:42% 34%;animation:rust-router-fright 1.65s ease-out both,rust-mascot-wiggle 12s ease-in-out 3.8s infinite!important}
.rust-login-error .animated-brand-animation{animation:rust-login-error-flash 1.65s steps(1,end) both!important}
.rust-login-error .rust-character-eye.eye-left{animation:rust-fright-eye 1.65s ease-out both,rust-wink-left 12s ease-in-out 3.8s infinite}
.rust-login-error .rust-character-eye.eye-right{animation:rust-fright-eye 1.65s ease-out both,rust-wink-right 12s ease-in-out 3.8s infinite}
.rust-login-error .rust-character-gasp{animation:rust-fright-gasp 1.65s ease-out both}
.rust-login-error .rust-character-smile{animation:rust-fright-smile 1.65s ease-out both,rust-smile 6s ease-in-out 3.8s infinite}
.rust-login-error .animated-brand-social-particle{animation-delay:calc(var(--social-delay) + 3.8s)}
@keyframes rust-router-fright{
 0%,100%{transform:translate(7.9%,0) rotate(0) scale(1)}
 8%{transform:translate(7.9%,-12px) rotate(-7deg) scale(1.18)}
 18%{transform:translate(calc(7.9% + 34px),-8px) rotate(10deg) scale(1.14)}
 28%{transform:translate(calc(7.9% - 32px),-6px) rotate(-10deg) scale(1.12)}
 38%{transform:translate(calc(7.9% + 27px),-4px) rotate(8deg) scale(1.1)}
 48%{transform:translate(calc(7.9% - 24px),-3px) rotate(-7deg) scale(1.08)}
 58%{transform:translate(calc(7.9% + 18px),-2px) rotate(5deg) scale(1.05)}
 68%{transform:translate(calc(7.9% - 13px),0) rotate(-4deg) scale(1.03)}
 78%{transform:translate(calc(7.9% + 8px),0) rotate(2deg) scale(1.01)}
 90%{transform:translate(calc(7.9% - 3px),0) rotate(-1deg) scale(1)}
}
@keyframes rust-fright-eye{0%,100%{transform:scale(1)}8%,68%{transform:scale(1.22,1.25)}82%{transform:scale(1.08)}}
@keyframes rust-fright-gasp{0%,100%{opacity:0}6%,78%{opacity:1}}
@keyframes rust-fright-smile{0%,100%{opacity:1}6%,78%{opacity:0}}
@media(prefers-reduced-motion:reduce){.rust-login-error .animated-brand-router,.rust-login-error .animated-brand-animation,.rust-login-error .rust-character-eye,.rust-login-error .rust-character-gasp,.rust-login-error .rust-character-smile{animation:none!important}}

.sonywifie-status.is-unknown{color:var(--nx-muted);border-color:var(--nx-line)}.sonywifie-status.is-unknown i{background:var(--nx-muted);box-shadow:none}

/* Side devices: 0.4s entry, 2s reception, 0.4s exit in a quiet 12s cycle. */
.rust-network-devices{position:absolute;inset:0;width:100%;height:100%;transform:translateX(7.9%);pointer-events:none;overflow:visible;z-index:0}
.rust-network-device{opacity:0;--device-offset:70px;animation:rust-device-visit 12s cubic-bezier(.22,.75,.3,1) 2s infinite both;filter:drop-shadow(0 5px 8px #0002)}
.rust-network-device.device-access{--device-offset:-70px;animation-delay:6s}
.rust-network-device.device-laptop{--device-offset:-70px;animation-delay:10s}
.rust-device-reception{animation:rust-device-receiving 1s ease-in-out infinite;filter:drop-shadow(0 0 3px #34d39966)}
@keyframes rust-device-visit{
 0%{opacity:0;transform:translateX(var(--device-offset))}
 3.333%,20%{opacity:1;transform:translateX(0)}
 23.333%,100%{opacity:0;transform:translateX(var(--device-offset))}
}
@keyframes rust-device-receiving{0%,100%{opacity:.4}45%,65%{opacity:1}}
.rust-login-error .device-phone{animation-delay:3.8s}.rust-login-error .device-access{animation-delay:7.8s}.rust-login-error .device-laptop{animation-delay:11.8s}
@media(prefers-reduced-motion:reduce){.rust-network-device,.rust-device-reception{animation:none}.rust-network-device.device-phone,.rust-network-device.device-access{opacity:.8;transform:none}.rust-network-device.device-laptop{display:none}}

/* The visiting access point sends a short outward reply during its two-second stop. */
.rust-small-router-signal path{opacity:0;animation:rust-small-signal 12s ease-out 6s infinite both;filter:drop-shadow(0 0 2px #a78bfa66)}
.rust-small-router-signal .small-signal-two{animation-delay:6.16s}.rust-small-router-signal .small-signal-three{animation-delay:6.32s}
.rust-login-error .rust-small-router-signal .small-signal-one{animation-delay:7.8s}.rust-login-error .rust-small-router-signal .small-signal-two{animation-delay:7.96s}.rust-login-error .rust-small-router-signal .small-signal-three{animation-delay:8.12s}
@keyframes rust-small-signal{0%,4%{opacity:0}7%{opacity:1}12%{opacity:.5}16%,100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.rust-small-router-signal path{animation:none;opacity:.4}}

.rust-receipt-mobile-icon{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#7952ff;color:#fff;flex:none}
.rust-receipt-mobile-icon[data-color=red]{background:#dc2626}.rust-receipt-mobile-icon[data-color=green]{background:#15803d}.rust-receipt-mobile-icon[data-color=orange]{background:#c2410c}
.rust-success .rust-receipt-phone .rust-receipt-mobile-icon svg{width:15px;height:15px;color:#fff;stroke:currentColor}

.rust-invoice-mobile{display:inline-flex;align-items:center;gap:6px;vertical-align:middle;max-width:100%;white-space:nowrap}
.sonywifie-invoice .rust-invoice-mobile .rust-receipt-mobile-icon{width:23px;height:23px;flex:none;font-style:normal}
.sonywifie-invoice .rust-invoice-mobile .rust-receipt-mobile-icon svg{width:13px;height:13px;color:#fff;stroke:currentColor}
@media(max-width:480px){.sonywifie-invoice .rust-invoice-mobile .rust-receipt-mobile-icon{width:20px;height:20px}.rust-invoice-mobile{gap:4px}}

.rust-receipt-phone-value{display:inline-flex;align-items:center;gap:6px;vertical-align:middle;max-width:100%}.rust-receipt-phone-value .rust-receipt-mobile-icon{flex:none}

.sonywifie-package-option.is-unaffordable{background:var(--nx-soft);border-color:var(--nx-line);box-shadow:none}
.sonywifie-package-option.is-unaffordable .sonywifie-package-name,.sonywifie-package-option.is-unaffordable .sonywifie-package-price,.sonywifie-package-option.is-unaffordable .sonywifie-package-capacity{opacity:.65}
.sonywifie-package-option.is-unaffordable.is-selected{outline:2px solid var(--nx-muted);outline-offset:1px}
.sonywifie-funds-badge{display:block;width:fit-content;font-size:10px;font-weight:500;line-height:1.7;color:var(--nx-text);opacity:1;padding:2px 6px;margin-top:4px;border-radius:6px;background:var(--nx-purple-soft)}
.sonywifie-primary:disabled{cursor:not-allowed;box-shadow:none;opacity:.6}

.sonywifie-manager-icon[data-mobile-color=red]{background:#dc2626}
.sonywifie-manager-icon[data-mobile-color=green]{background:#15803d}
.sonywifie-manager-icon[data-mobile-color=orange]{background:#c2410c}
.sonywifie-manager-icon[data-mobile-color=purple]{background:var(--nx-purple,#7952ff)}

.mimosa-preview{margin-top:18px;padding:22px;min-width:0;overflow:hidden}.mimosa-demo-badge{font-size:10px;color:var(--nx-purple);background:var(--nx-purple-soft);padding:4px 8px;border-radius:20px}.mimosa-preview h2{font-size:18px;margin:12px 0 6px}.mimosa-preview-heading p,.mimosa-preview-note{font-size:11px;color:var(--nx-muted);line-height:1.8}.mimosa-preview-controls{display:flex;gap:8px;margin:16px 0}.mimosa-preview-controls button{padding:8px 16px;min-height:40px;border:1px solid var(--nx-line);border-radius:10px;background:var(--nx-soft);color:var(--nx-text);cursor:pointer;font:inherit;font-size:12px}.mimosa-preview-controls .selected{border-color:var(--nx-purple);background:var(--nx-purple-soft)}.mimosa-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mimosa-device-card{--device-status:#22c55e;border:1px solid var(--nx-line);border-radius:18px;min-width:0;overflow:hidden;background:var(--nx-soft)}.mimosa-device-card[data-state=offline]{--device-status:#ef4444}.mimosa-device-top{display:flex;justify-content:space-between;gap:8px;padding:12px;font-size:10px;flex-wrap:wrap}.mimosa-status{display:inline-flex;gap:5px;align-items:center;color:var(--device-status)}.mimosa-status i{width:6px;height:6px;background:currentColor;border-radius:50%}.mimosa-device-stage{position:relative;height:280px;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 50% 35%,color-mix(in srgb,var(--device-status) 8%,transparent),transparent 70%)}.mimosa-device-stage.is-photo{background:#fff;margin:0 8px;border-radius:12px}.mimosa-real-photo{position:absolute;width:360px!important;height:360px!important;max-width:none!important;object-fit:contain;left:50%;top:50%;transform:translate(-50%,-50%)}.mimosa-photo-led{position:absolute;left:calc(50% - 8px);top:calc(50% + 69px);width:6px;height:6px;background:var(--device-status);border-radius:50%;box-shadow:0 0 5px 2px var(--device-status);animation:mimosa-fast-led .65s steps(1,end) infinite}.mimosa-vector{height:260px;width:100%;max-width:200px;overflow:visible;color:var(--device-status);shape-rendering:geometricPrecision}.mimosa-vector-led{fill:var(--device-status);filter:drop-shadow(0 0 4px var(--device-status));animation:mimosa-fast-led .65s steps(1,end) infinite}.mimosa-vector-body{transform-box:fill-box;transform-origin:center;animation:mimosa-hover 5s ease-in-out infinite}.mimosa-signal-rings circle{opacity:0;transform-box:fill-box;transform-origin:center;animation:mimosa-radio 2.8s ease-out infinite}.mimosa-signal-rings circle:nth-child(2){animation-delay:.5s}.mimosa-signal-rings circle:nth-child(3){animation-delay:1s}.mimosa-device-card[data-state=offline] .mimosa-signal-rings{display:none}.mimosa-device-card[data-state=offline] .mimosa-vector-body{animation:none}.mimosa-device-caption{display:flex;flex-direction:column;gap:5px;text-align:center;padding:14px}.mimosa-device-caption strong{font-size:14px}.mimosa-device-caption small{font-size:10px;color:var(--nx-muted)}.mimosa-preview-note{margin:14px 0 0}
@keyframes mimosa-fast-led{0%,24%,48%{opacity:1}12%,36%,70%,100%{opacity:.2}}
@keyframes mimosa-hover{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-5px) rotate(1deg)}}
@keyframes mimosa-radio{0%{opacity:0;transform:scale(.9)}25%{opacity:.65}100%{opacity:0;transform:scale(1.12)}}
@media(max-width:480px){.mimosa-preview{padding:16px}.mimosa-preview-grid{grid-template-columns:minmax(0,1fr)}.mimosa-preview h2{font-size:16px}}
@media(prefers-reduced-motion:reduce){.mimosa-preview *{animation:none!important}.mimosa-signal-rings circle{opacity:.3}}

/* Server-authorized network monitoring. Neutral stale state never implies a disconnect. */
.network-points{margin-top:18px;padding:20px;--device-body:#292b36}
[data-theme="light"] .network-points, .light .network-points{--device-body:#faf9ff}
.network-points-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.network-points-heading h2{font-size:19px;margin:4px 0}.network-eyebrow,.network-period{font-size:11px;opacity:.7}
.network-group{margin-top:22px}.network-group h3{display:flex;align-items:center;gap:10px;font-size:14px}.network-group h3 small{border-radius:20px;background:#7c5cff22;padding:2px 9px}
.network-device-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}
.network-device{color:#9a83ff;background:#7c5cff08;border:1px solid #7c5cff30;border-radius:18px;padding:14px 10px;text-align:center;display:flex;flex-direction:column;align-items:center;min-width:0;gap:4px}
.network-device-name{font-size:12px;color:var(--text-primary,inherit);max-width:100%;overflow-wrap:anywhere;min-height:20px}
.network-device-art{width:150px;max-width:100%;height:112px;overflow:visible}
.network-device-status{font-size:13px;font-weight:800;color:#16a34a}.network-ip-label{font-size:10px;opacity:.65}.network-device-ip{font-size:13px;font-family:Cairo,sans-serif;letter-spacing:.2px}
.network-device small{font-size:10px;opacity:.75}.network-duration{color:#ef4444}.network-warning{font-size:12px;padding:12px;background:#f59e0b15;border-radius:10px;color:#d18c16}.network-empty{font-size:12px;opacity:.7;padding:12px}
.network-led{fill:#22c55e;filter:drop-shadow(0 0 4px #22c55e);animation:network-led-online .65s steps(1) infinite}
.network-radio-waves{animation:network-waves 2s ease-out infinite;transform-origin:90px 30px}
.network-device[data-status="offline"] .network-led{fill:#ef4444;filter:drop-shadow(0 0 5px #ef4444);animation:network-led-offline 1.4s steps(1) infinite}
.network-device[data-status="offline"] .network-device-status{color:#ef4444}
.network-device:not([data-status="online"]) .network-radio-waves{display:none}
.network-device[data-status="unknown"] .network-led,.network-device[data-status="disabled"] .network-led{fill:#94a3b8;filter:none;animation:none}
.network-device[data-status="unknown"] .network-device-status,.network-device[data-status="disabled"] .network-device-status{color:#94a3b8}
@keyframes network-led-online{0%,18%,43%,74%{opacity:1}9%,30%,60%,90%{opacity:.18}}
@keyframes network-led-offline{0%,14%,28%{opacity:1}7%,21%,35%,100%{opacity:.1}}
@keyframes network-waves{0%{opacity:0;transform:scale(.8)}25%{opacity:.9}100%{opacity:0;transform:scale(1.1)}}
@media(max-width:480px){.network-points{padding:14px}.network-device-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.network-device{padding:12px 6px}.network-device-art{height:95px}.network-device-ip{font-size:12px}}
@media(prefers-reduced-motion:reduce){.network-led,.network-radio-waves{animation:none!important}}

.network-device-art.is-hardware{height:142px;filter:drop-shadow(0 5px 7px #080c161a)}
@media(max-width:480px){.network-device-art.is-hardware{height:124px}}

.network-led-bank{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 14px;border-radius:12px;background:linear-gradient(145deg,#94a3b81c,#0f172a16);border:1px solid #94a3b833;box-shadow:inset 0 1px 3px #00000012;margin:1px 0 8px;direction:ltr}
.network-lamp{display:block;width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 7px #22c55e80,inset 0 1px 1px #ffffff90}
.network-device[data-status="online"] .lamp-fast{animation:network-activity-fast var(--network-fast-time,2.2s) steps(1) infinite;animation-delay:var(--network-fast-phase,-.5s)}
.network-device[data-status="online"] .lamp-slow{animation:network-activity-slow var(--network-slow-time,6.5s) ease-in-out infinite;animation-delay:var(--network-slow-phase,-2s)}
.network-device[data-status="offline"] .network-lamp{background:#ef4444;box-shadow:0 0 8px #ef444480,inset 0 1px 1px #ffffff90;animation:network-offline-bank 2s ease-in-out infinite;animation-delay:var(--network-offline-phase,0s)}
.network-device[data-status="unknown"] .network-lamp,.network-device[data-status="disabled"] .network-lamp{background:#94a3b8;box-shadow:inset 0 1px 1px #ffffff70;opacity:.4;animation:none}
@keyframes network-activity-fast{0%,19%,46%,72%{opacity:1}8%,30%,58%,89%{opacity:.15}}
@keyframes network-activity-slow{0%,100%{opacity:.2}35%,65%{opacity:1}}
@keyframes network-offline-bank{0%,45%,100%{opacity:.12}15%,25%{opacity:1}}
@media(prefers-reduced-motion:reduce){.network-lamp{animation:none!important;opacity:1}}

/* Inline vector hardware matches the panel router's illustrated style. */
.network-hardware-shell{fill:var(--device-body);stroke:currentColor}
.network-hardware-lens{fill:var(--device-body);stroke:currentColor}
.network-hardware-body{transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 3px 4px #7c5cff18)}
.network-device-art.is-hardware{width:165px;max-width:100%;height:142px}
@media(max-width:480px){.network-device-art.is-hardware{height:124px}}

.network-face-sad,.network-face-neutral{display:none}
.network-device[data-status="offline"] .network-face-smile,.network-device[data-status="unknown"] .network-face-smile,.network-device[data-status="disabled"] .network-face-smile{display:none}
.network-device[data-status="offline"] .network-face-sad{display:block;stroke:#ef4444}
.network-device[data-status="unknown"] .network-face-neutral,.network-device[data-status="disabled"] .network-face-neutral{display:block;stroke:#94a3b8}

.network-nano-waves{transform:none!important;animation:network-side-radio 2s ease-out infinite}
.network-mimosa-waves{transform:none!important;animation:none;opacity:1}
.network-mimosa-ring{transform-box:view-box;transform-origin:99px 57px;animation:network-mimosa-radio 2.4s ease-out infinite;opacity:0}
.network-mimosa-ring:nth-child(2){animation-delay:.8s}.network-mimosa-ring:nth-child(3){animation-delay:1.6s}
@keyframes network-side-radio{0%,100%{opacity:.1}35%{opacity:.95}70%{opacity:.4}}
@keyframes network-mimosa-radio{0%{opacity:0;transform:scale(1)}18%{opacity:.85}100%{opacity:0;transform:scale(1.85)}}
@media(prefers-reduced-motion:reduce){.network-nano-waves,.network-mimosa-ring{animation:none!important;opacity:.5}}

.network-router-antenna-waves{animation:none;transform:none!important;opacity:1}
.network-router-antenna-waves path{animation:network-antenna-pulse 2s ease-out infinite;opacity:0}
.network-router-antenna-waves path:nth-child(2){animation-delay:.22s}
.network-router-antenna-waves path:nth-child(3){animation-delay:.44s}
@keyframes network-antenna-pulse{0%,100%{opacity:0}25%{opacity:.95}65%{opacity:.25}}
@media(prefers-reduced-motion:reduce){.network-router-antenna-waves path{animation:none!important;opacity:.5}}

/* Collapsed below invoices on desktop, edge drawer on mobile. */
.sonywifie-payments-column{min-width:0}
.network-desktop-panel{margin-top:18px;overflow:hidden}
.network-desktop-toggle{width:100%;border:0;background:transparent;color:var(--nx-text);display:flex;align-items:center;gap:10px;padding:18px 20px;font:inherit;cursor:pointer;text-align:start}
.network-desktop-toggle>svg{color:var(--nx-purple)}.network-desktop-toggle span{font-weight:750;font-size:16px}
.network-desktop-toggle i{margin-inline-start:auto;display:flex;transition:transform .2s}.network-desktop-panel.is-open .network-desktop-toggle i{transform:rotate(180deg)}
.network-desktop-panel .network-points,.network-side-panel .network-points{margin:0;border:0;box-shadow:none;border-radius:0;background:transparent}
.network-desktop-panel .network-points-heading>div,.network-side-panel .network-points-heading>div{display:none}
.network-desktop-panel .network-points{border-top:1px solid var(--nx-line)}
.network-edge-handle{position:fixed;inset-inline-start:0;top:42dvh;z-index:80;width:35px;min-height:76px;padding:10px 3px;display:flex;flex-direction:column;gap:9px;align-items:center;justify-content:center;border:1px solid var(--nx-purple);border-inline-start:0;border-radius:15px 0 0 15px;background:var(--nx-card);color:var(--nx-purple);box-shadow:0 3px 14px #0002;touch-action:none;cursor:grab}
.network-edge-handle svg{width:18px;height:18px}.network-edge-grip{height:22px;width:3px;background:currentColor;border-radius:4px;box-shadow:-5px 0 #7c5cff33}
[dir="ltr"] .network-edge-handle{border-radius:0 15px 15px 0}
.network-drawer-backdrop{position:fixed;inset:0;background:#0d0d1b99;z-index:2100;animation:network-backdrop-in .2s ease-out}
.network-side-panel{position:fixed;inset-block:0;inset-inline-start:0;width:min(430px,calc(100vw - 32px));height:100dvh;overflow-y:auto;overscroll-behavior:contain;z-index:2101;background:var(--nx-card);color:var(--nx-text);border-inline-end:1px solid var(--nx-line);box-shadow:0 0 60px #0005;animation:network-drawer-in .25s ease-out;padding-bottom:env(safe-area-inset-bottom);--drawer-start:100%}
[dir="ltr"] .network-side-panel{--drawer-start:-100%}
.network-drawer-heading{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px;background:var(--nx-card);border-bottom:1px solid var(--nx-line)}
.network-drawer-heading strong{font-size:17px}.network-drawer-heading button{border:1px solid var(--nx-line);border-radius:10px;min-width:42px;min-height:42px;background:var(--nx-soft);color:var(--nx-text);display:grid;place-items:center}
.network-side-panel .network-device-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.network-side-panel .network-points{padding:14px}.network-side-panel .network-device{padding:12px 6px}
body[data-network-open="true"]{overflow:hidden}
@keyframes network-drawer-in{from{transform:translateX(var(--drawer-start))}to{transform:translateX(0)}}
@keyframes network-backdrop-in{from{opacity:0}to{opacity:1}}
@media(max-width:900px){.sonywifie-payments-column{order:2}}
@media(prefers-reduced-motion:reduce){.network-side-panel,.network-drawer-backdrop{animation:none}}

.network-refresh{margin-top:9px;min-height:38px;padding:7px 12px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--nx-line);border-radius:10px;background:var(--nx-soft);color:var(--nx-text);font:inherit;font-size:11px;cursor:pointer;width:100%}
.network-refresh svg{width:15px;height:15px;color:var(--nx-purple)}.network-refresh:disabled{opacity:.55;cursor:default}.network-refresh.is-checking svg{animation:network-refresh-spin 1s linear infinite}.network-refresh-message{color:var(--nx-red);font-size:10px!important}
@keyframes network-refresh-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.network-refresh.is-checking svg{animation:none}}

/* Transparent real product photos, with independent live SVG signal overlays. */
.network-device-art.is-photo{height:154px;width:180px;max-width:100%;filter:none}
.network-product-photo image{filter:drop-shadow(0 3px 3px #10152726)}
.network-device[data-status="unknown"] .network-product-photo,.network-device[data-status="disabled"] .network-product-photo{opacity:.65}
@media(max-width:480px){.network-device-art.is-photo{height:136px}}

.network-router-photo image{filter:drop-shadow(0 0 1px #ffffff66) drop-shadow(0 4px 4px #080b1740)}

.network-last-seen{display:flex;flex-direction:column;gap:2px;max-width:100%;line-height:1.8}
.network-last-seen time{font-size:11px;white-space:normal;overflow-wrap:anywhere;unicode-bidi:isolate;color:var(--nx-text)}

.network-powerbeam-waves{transform:none!important;animation:network-side-radio 2s ease-out infinite}
@media(prefers-reduced-motion:reduce){.network-powerbeam-waves{animation:none!important;opacity:.5}}

/* Light theme: richer violet equipment cards with readable white identity text. */
:root[data-theme="light"] .network-device{
 --nx-text:#fff;--nx-muted:#e4ddff;--nx-soft:#ffffff14;--nx-line:#ffffff38;--nx-purple:#e1d7ff;--nx-red:#ffbdc6;--device-body:#594c92;
 color:#dfd5ff;background:linear-gradient(150deg,#6052a4 0%,#4c408b 55%,#403674 100%);border-color:#7363b4;
 box-shadow:0 6px 18px #5142a11a,inset 0 1px 0 #ffffff20;
}
:root[data-theme="light"] .network-device-name,:root[data-theme="light"] .network-device-ip{color:#fff}
:root[data-theme="light"] .network-ip-label{color:#e4ddff;opacity:1}
:root[data-theme="light"] .network-device small{opacity:1;color:#e4ddff}
:root[data-theme="light"] .network-device .network-last-seen time{color:#fff}
:root[data-theme="light"] .network-device .network-device-status{color:#9af6c1}
:root[data-theme="light"] .network-device[data-status="offline"] .network-device-status,:root[data-theme="light"] .network-device .network-duration,:root[data-theme="light"] .network-device .network-refresh-message{color:#ffbdc6}
:root[data-theme="light"] .network-device[data-status="unknown"] .network-device-status,:root[data-theme="light"] .network-device[data-status="disabled"] .network-device-status{color:#e4dfef}
:root[data-theme="light"] .network-device .network-led-bank{background:#211a494a;border-color:#ffffff24;box-shadow:inset 0 1px 4px #110c3030}
:root[data-theme="light"] .network-device .network-refresh{background:#ffffff12;border-color:#ffffff35;color:#fff}
:root[data-theme="light"] .network-device .network-refresh:not(:disabled):hover{background:#ffffff22;border-color:#ffffff66}
:root[data-theme="light"] .network-device .network-refresh:disabled{opacity:.7}

/* A soft breathing halo behind each card, driven by its current status. */
.network-device{position:relative;isolation:isolate;--network-halo-rgb:52,211,153}
.network-device[data-status="offline"]{--network-halo-rgb:251,91,107}
.network-device::before{content:none}
.network-device::after{content:"";position:absolute;inset:1px;z-index:-1;border-radius:inherit;background:transparent;pointer-events:none;box-shadow:0 0 7px 2px rgba(var(--network-halo-rgb),.25),0 0 17px 4px rgba(var(--network-halo-rgb),.13);animation:network-card-breathe 1.8s ease-in-out infinite}
.network-device:not([data-status="online"]):not([data-status="offline"])::after{display:none}
@keyframes network-card-breathe{0%,100%{opacity:.18}50%{opacity:.7}}
@media(prefers-reduced-motion:reduce){.network-device::after{animation:none;opacity:.35}}

/* Brief, low-amplitude disconnect nudge, with a pause between repetitions. */
.network-device[data-status="offline"]{animation:network-offline-nudge 3s ease-in-out infinite}
@keyframes network-offline-nudge{0%,82%,100%{transform:translateX(0)}85%{transform:translateX(-2.5px)}88%{transform:translateX(2.5px)}91%{transform:translateX(-1.5px)}94%{transform:translateX(1.5px)}97%{transform:translateX(0)}}
@media(prefers-reduced-motion:reduce){.network-device[data-status="offline"]{animation:none}}

.network-device[data-status="offline"] .network-device-art{transform-origin:50% 80%;animation:network-offline-device-shake 3s ease-in-out infinite}
@keyframes network-offline-device-shake{0%,82%,100%{transform:rotate(0) translateX(0)}85%{transform:rotate(-3deg) translateX(-1px)}88%{transform:rotate(3deg) translateX(1px)}91%{transform:rotate(-2deg)}94%{transform:rotate(1.5deg)}97%{transform:rotate(0)}}
@media(prefers-reduced-motion:reduce){.network-device[data-status="offline"] .network-device-art{animation:none}}

/* Advanced customer insight. The API omits this data for ordinary distributor accounts. */
.sonywifie-customer-overview.has-quota{display:grid;grid-template-columns:minmax(0,1fr) 178px;gap:12px;align-items:stretch;margin:18px 0}
.sonywifie-customer-overview.has-quota>.sonywifie-facts{grid-template-columns:1fr;margin:0;gap:10px}
.customer-quota{--quota-track:#9486c42b;--quota-muted:var(--nx-muted);min-width:0;display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px solid var(--nx-line);border-radius:18px;padding:10px 10px 14px;background:radial-gradient(ellipse at 50% 20%,#8b6ee91c,transparent 75%),var(--nx-soft);overflow:hidden}
.customer-quota-instrument{width:158px;max-width:100%;flex:none}.customer-quota-dial{display:block;width:100%;height:auto;overflow:visible}
.quota-track{fill:none;stroke:var(--quota-track);stroke-width:11;stroke-linecap:round}
.quota-arc{fill:none;stroke:var(--quota-color);stroke-width:11;stroke-linecap:round;filter:drop-shadow(0 0 3px color-mix(in srgb,var(--quota-color) 25%,transparent));transition:stroke-dasharray .8s ease}
.quota-tick{stroke:var(--quota-muted);stroke-width:1;opacity:.35}.quota-tick.is-major{stroke-width:1.5;opacity:.65}
.quota-needle{transform-box:view-box;transform-origin:110px 116px;transform:rotate(var(--quota-angle));animation:customer-quota-arrive .9s cubic-bezier(.16,.7,.2,1) both;fill:var(--quota-color)}
.quota-needle-shine{stroke:#fff;stroke-width:.8;opacity:.6;fill:none}.quota-hub{fill:var(--nx-card);stroke:var(--quota-color);stroke-width:2}.quota-hub-dot{fill:var(--quota-color)}
.quota-scale{font:11px Cairo,sans-serif;fill:var(--quota-muted)}.quota-percent{font:700 15px Cairo,sans-serif;fill:var(--nx-text)}
.customer-quota-copy{display:flex;flex-direction:column;align-items:center;gap:3px;text-align:center;min-width:0}
.customer-quota-eyebrow{font-size:9px;color:var(--nx-muted);letter-spacing:.2px}.customer-quota-title{font-size:12px;color:var(--nx-text)}
.customer-quota-reading{display:flex;align-items:baseline;justify-content:center;gap:5px;line-height:1.25;color:var(--quota-color);margin-top:3px}
.customer-quota-reading bdi{font:800 27px Cairo,sans-serif;letter-spacing:-.5px}.customer-quota-reading>span{font-size:11px;font-weight:600}
.customer-quota-copy>small{font-size:10px;color:var(--nx-muted);line-height:1.6}.customer-quota-empty{font-size:12px;color:var(--nx-muted);padding:5px 0}
.customer-quota.is-unavailable .customer-quota-instrument{opacity:.45}
:root[data-theme="light"] .customer-quota{background:radial-gradient(ellipse at 50% 15%,#8262e314,transparent 75%),#f8f7fd;border-color:#7560bd26}
:root[data-theme="light"] .customer-quota-reading{color:color-mix(in srgb,var(--quota-color) 72%,#172c23)}
.customer-quota.is-unscaled .quota-arc{opacity:.45;stroke-dasharray:2 4;stroke-linecap:butt}
@keyframes customer-quota-arrive{from{transform:rotate(-90deg)}to{transform:rotate(var(--quota-angle))}}
@media(max-width:620px){.sonywifie-customer-overview.has-quota{grid-template-columns:1fr;gap:12px}.sonywifie-customer-overview.has-quota>.sonywifie-facts{grid-template-columns:1fr}.customer-quota{display:grid;grid-template-columns:146px minmax(0,1fr);padding:12px;gap:8px}.customer-quota-instrument{width:146px}.customer-quota-reading bdi{font-size:27px}.customer-quota-copy{align-items:flex-start;text-align:start}.customer-quota-reading{justify-content:flex-start}}
@media(max-width:380px){.customer-quota{grid-template-columns:126px minmax(0,1fr);gap:6px;padding:10px}.customer-quota-instrument{width:126px}.customer-quota-reading bdi{font-size:24px}.customer-quota-title{font-size:11px}}
@media(prefers-reduced-motion:reduce){.quota-needle{animation:none}.quota-arc{transition:none}}

/* Keep decimal balances and percentages legible at the compact mobile size. */
.customer-quota-reading .quota-decimal{font-size:1.18em;font-weight:900;display:inline-block;padding-inline:1px;line-height:1}
.quota-percent{font-size:18px;font-weight:800;direction:ltr;unicode-bidi:isolate}
.quota-arc{transition:stroke .8s ease,stroke-dasharray .8s ease}
.quota-needle,.quota-hub,.quota-hub-dot{transition:fill .8s ease,stroke .8s ease}
@media(prefers-reduced-motion:reduce){.quota-arc,.quota-needle,.quota-hub,.quota-hub-dot{transition:none}}

.customer-quota-reading bdi{display:inline-flex;flex-direction:row;direction:ltr;unicode-bidi:isolate;align-items:baseline;white-space:nowrap}

.quota-percent{font-family:Cairo,sans-serif;font-size:18px;font-weight:800}
.quota-percent-label{font-family:Cairo,sans-serif;font-size:10px;font-weight:600;fill:var(--nx-muted);direction:rtl;unicode-bidi:plaintext}

.quota-customer-connection{--quota-router-color:var(--quota-plan-color,#8175ed);--connection-led:#37c99b;display:flex;flex-direction:column;align-items:center;gap:2px;margin-top:9px;padding-top:8px;border-top:1px solid var(--nx-line);width:100%;grid-column:1/-1}
.quota-customer-router{width:78px;height:68px}.quota-customer-router svg{width:100%;height:100%;overflow:visible}
.quota-customer-connection>small{font-size:10px;color:var(--nx-muted)}.quota-customer-connection>bdi{font:700 13px Cairo,sans-serif;color:var(--nx-text)}
.quota-customer-router .customer-status-led{fill:#94a3b8;opacity:.4}
.quota-customer-router [data-state=online] .customer-status-led{fill:#37c99b;opacity:1}
.quota-customer-router [data-state=online] .first{animation:quota-router-blink 1.8s steps(1) infinite}
.quota-customer-router [data-state=online] .middle{animation:quota-router-blink 3.4s ease-in-out infinite}
.quota-customer-router [data-state=offline] .customer-status-led{fill:#ef5266;animation:quota-router-blink 2s steps(1) infinite}
.quota-customer-router .customer-status-waves{animation:none;stroke-width:3.5;stroke-linecap:round}
.quota-antenna-waves path{opacity:0;animation:quota-signal-travel 2.4s ease-out infinite}
.quota-antenna-waves path:nth-child(2){animation-delay:.22s}
.quota-antenna-waves path:nth-child(3){animation-delay:.44s}
@keyframes quota-signal-travel{0%,70%,100%{opacity:0}18%{opacity:1}45%{opacity:.5}}
@media(prefers-reduced-motion:reduce){.quota-antenna-waves path{animation:none;opacity:.65}}
@keyframes quota-router-blink{0%,40%,100%{opacity:.2}20%,65%{opacity:1}}
@media(prefers-reduced-motion:reduce){.quota-customer-router .customer-status-led,.quota-customer-router .customer-status-waves{animation:none!important}}

.quota-customer-connection>.quota-connection-status{font-family:Cairo,sans-serif;font-size:11px;font-weight:700;line-height:1.6}
.quota-customer-connection>.quota-connection-status.is-online{color:#37c99b}
.quota-customer-connection>.quota-connection-status.is-offline{color:#ef5266}
:root[data-theme="light"] .quota-customer-connection>.quota-connection-status.is-online{color:#168661}
:root[data-theme="light"] .quota-customer-connection>.quota-connection-status.is-offline{color:#c93249}

.customer-speed{width:100%;grid-column:1/-1;margin-top:12px;border-top:1px solid var(--nx-line);font-family:Cairo,sans-serif}
.customer-speed-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;background:transparent;border:0;color:var(--nx-text);font:700 12px Cairo,sans-serif;min-height:44px;cursor:pointer;text-align:start}
.customer-speed-toggle>span:last-child{color:var(--nx-purple);font-size:22px}.customer-speed-body{display:flex;flex-direction:column;gap:10px;padding-bottom:6px;min-width:0}
.customer-speed-body>p,.customer-speed-body>small{font-size:10px;line-height:1.8;margin:0;color:var(--nx-muted)}
.customer-speed-body label{display:flex;justify-content:space-between;gap:6px;font-size:11px;color:var(--nx-text)}
.customer-speed-body input[type=range]{width:100%;min-height:36px;margin:0;accent-color:#8f70ed;direction:ltr;cursor:pointer}
.customer-speed-current{font-size:10px;color:var(--nx-text);line-height:1.8;background:var(--nx-soft);border-radius:8px;padding:7px}
.customer-speed-actions{display:flex;flex-wrap:wrap;gap:7px}.customer-speed-body button{min-height:40px;font:700 10px Cairo,sans-serif;border-radius:9px;padding:7px 10px;border:1px solid var(--nx-line);background:var(--nx-soft);color:var(--nx-text);cursor:pointer}
.customer-speed-actions button:first-child{background:#7050d6;color:#fff;border-color:#8f70ed;flex:1}.customer-speed-body button:disabled{opacity:.5;cursor:wait}
.customer-speed-body>.customer-speed-message{color:#35bf90}.customer-speed-body>.customer-speed-message.is-error{color:#ec6475}

/* Transfer controls: vector router emblems and illuminated native range inputs. */
.speed-channel{--speed-accent:#ad8aff;--speed-rgb:173,138,255;padding:12px 10px 7px;border-radius:15px;border:1px solid rgba(var(--speed-rgb),.2);background:linear-gradient(135deg,rgba(var(--speed-rgb),.065),transparent 85%),var(--nx-soft);min-width:0}
.speed-channel.is-download{--speed-accent:#45d6bb;--speed-rgb:69,214,187}
.customer-speed-body .speed-channel label{align-items:center;flex-wrap:wrap;row-gap:5px}
.speed-channel-title{display:flex;align-items:center;gap:6px;min-width:0;font-weight:700;font-size:11px}
.speed-transfer-icon{width:39px;height:39px;flex:none;color:var(--speed-accent);overflow:visible}
.speed-icon-halo{fill:rgba(var(--speed-rgb),.07);stroke:rgba(var(--speed-rgb),.12);stroke-width:1}
.speed-icon-router{fill:var(--nx-card)}.speed-icon-cloud{opacity:.8}
.speed-icon-arrow{animation:speed-transfer-up 2.8s ease-in-out infinite}.is-down .speed-icon-arrow{animation-name:speed-transfer-down;animation-delay:.45s}
.speed-icon-leds circle:nth-child(2){animation:speed-transfer-light 2.8s ease-in-out infinite}.is-down .speed-icon-leds circle:nth-child(2){animation-delay:1s}
.speed-value{display:inline-flex;align-items:baseline;gap:4px;color:var(--speed-accent);padding:3px 7px;border:1px solid rgba(var(--speed-rgb),.2);border-radius:9px;background:rgba(var(--speed-rgb),.07);white-space:nowrap}
.speed-value bdi{font:800 17px Cairo,sans-serif;letter-spacing:0}.speed-value small{font-size:9px}
.speed-slider{position:relative;height:44px;direction:ltr;isolation:isolate;margin-top:3px}
.speed-slider-rail{position:absolute;left:14px;right:14px;top:19px;height:7px;border-radius:20px;background:rgba(var(--speed-rgb),.12);box-shadow:inset 0 1px 3px #0003;pointer-events:none;overflow:hidden}
.speed-slider-fill{position:absolute;inset:0 auto 0 0;width:var(--speed-fill);border-radius:inherit;background:linear-gradient(90deg,rgba(var(--speed-rgb),.55),var(--speed-accent));box-shadow:0 0 9px rgba(var(--speed-rgb),.3);overflow:hidden}
.speed-slider-fill::after{content:"";position:absolute;inset:0;width:45%;background:linear-gradient(90deg,transparent,#fff9,transparent);animation:speed-rail-sheen 4s ease-in-out infinite;transform:translateX(-130%)}
.customer-speed-body .speed-slider input[type=range]{position:relative;z-index:1;display:block;width:100%;height:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:12px;background:transparent;appearance:none;-webkit-appearance:none;direction:ltr;cursor:ew-resize;outline-offset:1px}
.customer-speed-body .speed-slider input::-webkit-slider-runnable-track{height:7px;background:transparent;border:0;border-radius:20px}
.customer-speed-body .speed-slider input::-moz-range-track{height:7px;background:transparent;border:0;border-radius:20px}
.customer-speed-body .speed-slider input::-moz-range-progress{background:transparent}
.customer-speed-body .speed-slider input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:28px;height:28px;margin-top:-10.5px;border-radius:50%;border:2px solid var(--speed-accent);background:radial-gradient(circle at 45% 38%,#fff 0 14%,var(--speed-accent) 17% 28%,var(--nx-card) 34% 62%,var(--speed-accent) 67%);box-shadow:0 0 0 4px rgba(var(--speed-rgb),.1),0 2px 8px #0005;transition:box-shadow .2s}
.customer-speed-body .speed-slider input::-moz-range-thumb{width:24px;height:24px;border-radius:50%;border:2px solid var(--speed-accent);background:radial-gradient(circle at 45% 38%,#fff 0 14%,var(--speed-accent) 17% 28%,var(--nx-card) 34% 62%,var(--speed-accent) 67%);box-shadow:0 0 0 4px rgba(var(--speed-rgb),.1),0 2px 8px #0005;transition:box-shadow .2s}
.speed-slider:focus-within .speed-slider-rail{box-shadow:0 0 9px rgba(var(--speed-rgb),.3)}
.speed-slider.is-disabled{opacity:.45}.speed-slider.is-disabled .speed-slider-fill::after{animation:none}
.speed-slider-scale{display:flex;justify-content:space-between;direction:ltr;padding:0 3px;font:600 9px Cairo,sans-serif;color:var(--nx-muted);margin-top:-3px}
:root[data-theme="light"] .speed-channel{--speed-accent:#7450c9;--speed-rgb:116,80,201;background:linear-gradient(135deg,#f3edff,#fcfaff)}
:root[data-theme="light"] .speed-channel.is-download{--speed-accent:#14846f;--speed-rgb:20,132,111;background:linear-gradient(135deg,#eaf8f4,#fbfffd)}
@keyframes speed-transfer-up{0%,100%{transform:translateY(1px);opacity:.6}45%{transform:translateY(-2px);opacity:1}}
@keyframes speed-transfer-down{0%,100%{transform:translateY(-1px);opacity:.6}45%{transform:translateY(2px);opacity:1}}
@keyframes speed-transfer-light{0%,100%{opacity:.3}45%{opacity:1}}
@keyframes speed-rail-sheen{0%,20%{transform:translateX(-130%);opacity:0}35%{opacity:.7}80%,100%{transform:translateX(340%);opacity:0}}
@media(prefers-reduced-motion:reduce){.speed-icon-arrow,.speed-icon-leds circle,.speed-slider-fill::after{animation:none!important}.speed-slider-fill::after{display:none}}

/* All login failures share the customer mascot reaction. */

.customer-device-fright{display:none}
.rust-login-error .animated-brand-router{animation:none!important;transform:translateX(7.9%)}
.rust-login-error .animated-brand-animation{animation:none!important;filter:drop-shadow(0 0 9px #b891ff88)}
.rust-login-error .router-throw-body{transform-box:fill-box;transform-origin:50% 75%;animation:customer-login-startle .48s ease-in-out 5!important}
.rust-login-error .rust-character-eye{animation:none!important;transform:scale(1.3,1.38)}
.rust-login-error .rust-character-smile{opacity:0!important;animation:none!important}
.rust-login-error .rust-character-gasp{opacity:1!important;animation:none!important}
.rust-login-error .rust-antenna-pulse,.rust-login-error .device-phone>circle{fill:#fb7185;animation:customer-login-alert .8s ease-in-out 3!important;filter:drop-shadow(0 0 6px #fb7185)}
.rust-login-error .rust-network-device{animation:none!important;transform:none!important}
.rust-login-error .device-phone,.rust-login-error .device-laptop{opacity:1!important;filter:drop-shadow(0 0 7px #a78bfa66)}
.rust-login-error .device-access{opacity:0!important}
.rust-login-error .customer-device-fright{display:block}
.rust-login-error .rust-device-reception,.rust-login-error .panel-device-packet,.rust-login-error .animated-brand-social-particle,.rust-login-error .rust-outgoing-signal{opacity:0!important;animation-play-state:paused!important}
.rust-login-error .animated-brand-letter{animation-play-state:paused!important}
@keyframes customer-login-startle{0%,100%{transform:translate(0,0) rotate(0)}20%{transform:translate(-4px,-2px) rotate(-4deg)}55%{transform:translate(4px,0) rotate(4deg)}80%{transform:translate(-2px,0) rotate(-2deg)}}
@keyframes customer-login-alert{0%,100%{opacity:.3}50%{opacity:1;filter:drop-shadow(0 0 9px #fb7185)}}
@media(prefers-reduced-motion:reduce){.rust-login-error .router-throw-body,.rust-login-error .rust-antenna-pulse,.rust-login-error .device-phone>circle{animation:none!important}.rust-login-error .router-throw-body{transform:none}.rust-login-error .rust-antenna-pulse{opacity:1}.rust-login-error .device-laptop{display:block}}
/* Weekly collections: full weekday labels and accessible touch details. */
.sonywifie-chart{position:relative;height:174px;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;padding:24px 8px 10px;margin:8px 0 20px;border:1px solid var(--nx-line);border-radius:16px;background:linear-gradient(145deg,#9580ff0c,transparent),repeating-linear-gradient(to top,transparent 0,transparent 35px,var(--nx-line) 36px)}
.sonywifie-chart-day{position:static;min-width:0;width:100%;padding:0 2px;border:0;border-radius:9px;background:transparent;color:var(--nx-text);cursor:pointer;gap:9px}
.sonywifie-bar-track{height:112px;flex:none;width:100%;border-bottom:1px solid var(--nx-line)}
.sonywifie-bar-track i{position:relative;overflow:hidden;width:min(34px,70%);min-height:3px;border-radius:8px 8px 2px 2px;background:linear-gradient(0deg,#6950d8,#9976f4,#c4b3ff);opacity:1;transform-origin:bottom;animation:weekly-bar-rise .85s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--day-delay)}
.sonywifie-bar-track i::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 15%,#ffffff70 48%,transparent 75%);transform:translateX(-150%);animation:weekly-bar-shine 4.8s ease-in-out infinite;animation-delay:calc(var(--day-delay) * 3 + 600ms)}
.sonywifie-chart-day.is-empty .sonywifie-bar-track i{opacity:.3;animation:none;background:var(--nx-muted);height:3px!important}
.sonywifie-chart-day.is-empty i::after{display:none}
.sonywifie-chart-day small{font-family:'Cairo','IBM Plex Sans Arabic',sans-serif;font-size:10px;line-height:1.6;font-weight:700;white-space:nowrap;color:var(--nx-text);opacity:.85}
.sonywifie-chart-day.today small{color:var(--nx-purple);opacity:1}
.sonywifie-chart-day:hover,.sonywifie-chart-day:focus{background:#9980ff16}
.sonywifie-chart-tooltip{position:absolute;top:2px;inset-inline:6px;z-index:2;text-align:center;font-size:10px;line-height:20px;color:var(--nx-text);background:var(--nx-card);border-radius:8px;opacity:0;pointer-events:none;transition:opacity .15s}
.sonywifie-chart-day:hover .sonywifie-chart-tooltip,.sonywifie-chart-day:focus .sonywifie-chart-tooltip{opacity:1}
@keyframes weekly-bar-rise{from{transform:scaleY(.02);opacity:.25}to{transform:scaleY(1);opacity:1}}
@keyframes weekly-bar-shine{0%,12%{transform:translateX(-150%)}42%,100%{transform:translateX(150%)}}
@media(max-width:400px){.sonywifie-chart{gap:2px;padding-inline:3px}.sonywifie-chart-day small{font-size:9px}}
@media(prefers-reduced-motion:reduce){.sonywifie-bar-track i,.sonywifie-bar-track i::after{animation:none}.sonywifie-bar-track i::after{display:none}}

.sonywifie-chart-day:not(.is-empty) .sonywifie-bar-track i{background:linear-gradient(0deg,#6940d7 0%,#9762fa 52%,#ccb6ff 100%);box-shadow:inset 1px 0 0 #ffffff40,inset -1px 0 0 #ffffff20,0 0 14px #9565fa45}
.sonywifie-chart-day:not(.is-empty):hover .sonywifie-bar-track i,.sonywifie-chart-day:not(.is-empty):focus .sonywifie-bar-track i{filter:brightness(1.12);box-shadow:inset 1px 0 0 #ffffff55,0 0 20px #9565fa70}
/* Receipt hover: a restrained lift and one soft sweep, with no layout shift. */
.sonywifie-invoice-list{padding:4px 5px 8px}
.sonywifie-invoice{--receipt-glow:151,119,245;position:relative;isolation:isolate;overflow:hidden;margin:3px 0;padding-inline:8px;border-radius:12px;transition:transform .25s ease,background-color .25s ease,box-shadow .25s ease}
.sonywifie-invoice.is-deposit{--receipt-glow:52,180,140}
.sonywifie-invoice.is-withdrawal{--receipt-glow:235,147,74}
.sonywifie-invoice::after{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,rgba(var(--receipt-glow),.16) 48%,transparent 75%);transform:translateX(-120%);opacity:0}
.sonywifie-invoice>*{position:relative;z-index:1}
.sonywifie-invoice-icon{transition:transform .3s ease,box-shadow .3s ease}
@media(hover:hover) and (pointer:fine){
.sonywifie-invoice:hover{transform:translateY(-2px);background-color:rgba(var(--receipt-glow),.07);box-shadow:inset 0 0 0 1px rgba(var(--receipt-glow),.22),0 5px 12px #0000000c}
.sonywifie-invoice:hover::after{animation:receipt-soft-sweep .95s ease-out both}
.sonywifie-invoice:hover .sonywifie-invoice-icon{transform:rotate(-5deg) scale(1.07);box-shadow:0 0 14px rgba(var(--receipt-glow),.2)}
}
.sonywifie-invoice:active,.sonywifie-invoice:focus-within{background-color:rgba(var(--receipt-glow),.09);box-shadow:inset 0 0 0 1px rgba(var(--receipt-glow),.25)}
.sonywifie-invoice:active::after{animation:receipt-soft-sweep .95s ease-out both}
.sonywifie-invoice:active .sonywifie-invoice-icon{transform:scale(1.06)}
@keyframes receipt-soft-sweep{0%{transform:translateX(-120%);opacity:0}15%,75%{opacity:1}100%{transform:translateX(120%);opacity:0}}
@media(prefers-reduced-motion:reduce){.sonywifie-invoice,.sonywifie-invoice-icon{transition:none}.sonywifie-invoice:hover,.sonywifie-invoice:hover .sonywifie-invoice-icon,.sonywifie-invoice:active .sonywifie-invoice-icon{transform:none}.sonywifie-invoice::after{animation:none!important;display:none}}
.customer-quota-instrument{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px}
.customer-quota-instrument>.customer-quota-eyebrow{display:block;width:100%;text-align:center;margin:0}
.customer-quota-capacity{display:block;width:100%;text-align:center;font-size:10px;line-height:1.6;color:var(--nx-muted);margin-top:0}
/* Desktop: keep plan facts compact; give quota and speed controls a full row. */
@media(min-width:621px){
.sonywifie-customer-overview.has-quota{grid-template-columns:minmax(0,1fr);align-items:start}
.sonywifie-customer-overview.has-quota>.sonywifie-facts{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;align-content:start}
.sonywifie-customer-overview.has-quota>.sonywifie-facts>.sonywifie-fact{height:auto;min-height:113px;align-self:start}
.sonywifie-customer-overview.has-quota>.customer-quota{display:grid;grid-template-columns:minmax(126px,1fr) minmax(0,1fr);align-items:center;justify-items:center;gap:10px 16px;padding:16px;width:100%;box-sizing:border-box}
.sonywifie-customer-overview.has-quota .customer-quota-instrument{width:158px}
.sonywifie-customer-overview.has-quota .customer-quota-copy{align-items:center;text-align:center}
.sonywifie-customer-overview.has-quota .customer-speed{min-width:0;grid-column:1/-1}
}
.customer-speed-current.speed-current-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0;text-align:start}
.speed-current-heading{grid-column:1/-1;font-size:10px;color:var(--nx-muted)}
.speed-current-card{--current-accent:#ab8bfa;display:flex;align-items:center;gap:8px;min-width:0;position:relative;overflow:hidden;padding:10px;border-radius:13px;border:1px solid color-mix(in srgb,var(--current-accent) 24%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--current-accent) 12%,transparent),var(--nx-soft))}
.speed-current-card.is-down{--current-accent:#38cbb1}
.speed-current-symbol{flex:none;color:var(--current-accent)}
.speed-current-symbol .speed-transfer-icon{width:34px;height:34px;display:block}
.speed-current-symbol .speed-icon-arrow{animation:current-speed-arrow 2.8s ease-in-out infinite;transform-box:fill-box;transform-origin:center}
.speed-current-card.is-down .speed-icon-arrow{animation-direction:reverse;animation-delay:.65s}
.speed-current-details{display:flex;flex-direction:column;gap:3px;min-width:0}
.speed-current-details>small{font-size:10px;color:var(--nx-muted)}
.speed-current-number{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;color:var(--current-accent)}
.speed-current-number bdi{font:800 21px Cairo,sans-serif;line-height:1.3;font-variant-numeric:tabular-nums}
.speed-current-number small{font-size:9px;color:var(--nx-muted)}
.speed-current-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#ffffff12 50%,transparent 70%);transform:translateX(-130%);animation:current-speed-shine 6s ease-in-out infinite}
.speed-current-card.is-down::after{animation-delay:1.6s}
@keyframes current-speed-arrow{0%,100%{transform:translateY(1px);opacity:.65}50%{transform:translateY(-3px);opacity:1}}
@keyframes current-speed-shine{0%,65%{transform:translateX(-130%)}90%,100%{transform:translateX(130%)}}
@media(max-width:380px){.speed-current-card{padding:8px;gap:5px}.speed-current-symbol .speed-transfer-icon{width:27px;height:27px}.speed-current-number bdi{font-size:19px}}
@media(prefers-reduced-motion:reduce){.speed-current-symbol .speed-icon-arrow,.speed-current-card::after{animation:none!important}.speed-current-card::after{display:none}}
/* Current readings use an orbit arrow, distinct from the editable router controls. */
.speed-current-symbol{width:42px;height:42px;display:grid;place-items:center;background:transparent;border-radius:50%}
.speed-current-orbit{display:block;width:42px;height:42px;overflow:visible;fill:none}
.current-orbit-disc{fill:color-mix(in srgb,var(--current-accent) 15%,transparent);stroke:color-mix(in srgb,var(--current-accent) 20%,transparent);stroke-width:1}
.current-orbit-ring{fill:none;stroke:var(--current-accent);stroke-width:1.6;stroke-dasharray:20 30;opacity:.55;transform-origin:24px 24px;animation:current-orbit-turn 12s linear infinite}
.current-orbit-arrow{animation:current-orbit-float 3s ease-in-out infinite}
.is-down .current-orbit-arrow{animation-direction:reverse;animation-delay:.6s}
.current-orbit-dot{fill:var(--current-accent);stroke:var(--nx-card);stroke-width:2;filter:drop-shadow(0 0 3px var(--current-accent))}
.speed-current-card{background:linear-gradient(120deg,color-mix(in srgb,var(--current-accent) 16%,var(--nx-card)),color-mix(in srgb,var(--current-accent) 5%,var(--nx-card)));border-color:color-mix(in srgb,var(--current-accent) 30%,transparent);box-shadow:inset 0 1px 0 #ffffff09}
@keyframes current-orbit-turn{to{transform:rotate(360deg)}}
@keyframes current-orbit-float{0%,100%{transform:translateY(1px)}50%{transform:translateY(-2px)}}
@media(max-width:380px){.speed-current-symbol,.speed-current-orbit{width:35px;height:35px}}
@media(prefers-reduced-motion:reduce){.current-orbit-ring,.current-orbit-arrow{animation:none}}
.distributor-result{position:relative;isolation:isolate;overflow:hidden;padding:24px;border:1px solid #a78bfa66;background:radial-gradient(ellipse at 100% 0,#9563f327,transparent 65%),var(--nx-card);border-radius:22px}
.distributor-result::before{content:"";position:absolute;z-index:1;top:0;left:12%;width:24%;height:1px;border-radius:999px;background:linear-gradient(90deg,transparent,#a78bfa 30%,#fff 50%,#a78bfa 70%,transparent);box-shadow:0 0 4px #a78bfa65;opacity:0;pointer-events:none;animation:sonywifie-customer-top-glint 3.6s ease-in-out infinite}
:root[data-theme="light"] .distributor-result::before{background:linear-gradient(90deg,transparent,#7452c7 30%,#fff 50%,#7452c7 70%,transparent)}
@media(prefers-reduced-motion:reduce){.distributor-result::before{animation:none;opacity:0}}
.distributor-result-orbit{position:absolute;inset-inline-end:-70px;top:-90px;width:230px;height:230px;border:1px solid #a78bfa22;border-radius:50%;box-shadow:0 0 0 25px #a78bfa07,0 0 0 50px #a78bfa04;pointer-events:none;z-index:-1}
.distributor-result-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.distributor-result-avatar{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:linear-gradient(140deg,#a78bfa33,#7c4de01a);border:1px solid #a78bfa55;color:#b69bff;box-shadow:0 8px 22px #7654d51a}
.distributor-result-avatar svg{width:29px;height:29px}
.distributor-result-badge{padding:6px 11px;border-radius:99px;border:1px solid #a78bfa33;background:#a78bfa12;color:var(--nx-text);font-size:11px}
.distributor-result h2{font-family:Cairo,sans-serif;font-size:23px;margin:17px 0 8px;color:var(--nx-text);overflow-wrap:anywhere}
.distributor-result-phone{display:flex;align-items:center;gap:7px;font:600 14px Cairo,sans-serif;color:var(--nx-muted)}
.distributor-result-balance{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:22px;padding:18px;border:1px solid #a78bfa33;border-radius:16px;background:linear-gradient(120deg,#a78bfa14,transparent)}
.distributor-result-balance>span{flex-basis:100%;font-size:11px;color:var(--nx-muted)}
.distributor-result-balance strong{font:800 34px Cairo,sans-serif;color:#a78bfa;font-variant-numeric:tabular-nums}
.distributor-result-balance small{font-size:12px;color:var(--nx-muted)}
.distributor-result footer,.distributor-result-address{display:flex;align-items:center;gap:7px;color:var(--nx-muted);font-size:11px;margin-top:16px}
.distributor-result footer svg{width:15px;height:15px;color:#34d399}
:root[data-theme="light"] .distributor-result-balance strong,:root[data-theme="light"] .distributor-result-avatar{color:#7452c7}
@media(max-width:620px){.distributor-result{padding:18px}.distributor-result h2{font-size:21px}.distributor-result-balance strong{font-size:30px}}
.distributor-wallet{margin-top:20px;padding-top:18px;border-top:1px solid var(--nx-line)}
.distributor-password{margin-top:20px;padding-top:16px;border-top:1px solid var(--nx-line)}
.distributor-password-toggle{display:flex;align-items:center;gap:9px;width:100%;padding:12px;border:1px solid var(--nx-line);border-radius:12px;background:var(--nx-soft);color:var(--nx-text);cursor:pointer;text-align:start;font-size:12px}
.distributor-password-toggle strong{flex:1}.distributor-password-toggle svg{width:19px;height:19px;color:#a78bfa}
.distributor-password form>p{font-size:10px;line-height:1.8;color:var(--nx-muted);margin-block:12px}
.distributor-password label{display:flex;flex-direction:column;gap:7px;margin-top:12px;font-size:11px;color:var(--nx-muted)}
.distributor-password input{box-sizing:border-box;width:100%;border:1px solid var(--nx-line);border-radius:12px;padding:12px;background:var(--nx-soft);color:var(--nx-text);direction:ltr}
.customer-ip-fields>p{font-size:11px;line-height:1.8;color:var(--nx-muted);margin:12px 0}
.customer-ip-current{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;border:1px solid var(--nx-line);border-radius:12px;font-size:12px}
.customer-ip-current>bdi{margin-inline-start:auto;font:700 15px Cairo,sans-serif;color:var(--nx-text)}
.customer-ip-current>button{padding:7px;min-height:34px}
.customer-ip-current{position:relative;isolation:isolate;overflow:hidden;border-color:#a78bfa45;background:linear-gradient(115deg,#a78bfa0d,transparent);padding-block:14px}
.customer-ip-current::before{content:"";position:absolute;top:0;left:12%;width:24%;height:1px;border-radius:99px;background:linear-gradient(90deg,transparent,#bfa8ff,#fff,#bfa8ff,transparent);box-shadow:0 0 5px #a78bfa55;opacity:0;pointer-events:none;animation:sonywifie-customer-top-glint 5s ease-in-out infinite}
.customer-ip-current>bdi{padding:6px 10px;border:1px solid #a78bfa38;border-radius:9px;background:#a78bfa12;color:#bfa8ff;letter-spacing:.035em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;max-width:100%;animation:current-identity-arrive .4s ease-out}
.customer-ip-current>span{font-size:10px;color:var(--nx-muted)}
.customer-ip-current>button{border-color:#a78bfa45;background:#a78bfa10;color:#bfa8ff;transition:background .2s,box-shadow .2s}
.customer-ip-current>button:hover:not(:disabled){background:#a78bfa25;box-shadow:0 0 12px #a78bfa18}
.customer-ip-current.is-refreshing>button svg{animation:rust-spin 1.4s linear infinite}
.customer-ip-current.is-refreshing>bdi{opacity:.6}
:root[data-theme="light"] .customer-ip-current>bdi,:root[data-theme="light"] .customer-ip-current>button{color:#7351bf}
@keyframes current-identity-arrive{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:420px){.customer-ip-current{gap:7px;padding:10px}.customer-ip-current>bdi{font-size:12px;padding:6px 7px;letter-spacing:0}.customer-ip-current>span{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){.customer-ip-current::before,.customer-ip-current>bdi,.customer-ip-current.is-refreshing>button svg{animation:none}}
.wallet-confirmation>.username-confirm-title{color:#ef4444}
.wallet-message.username-save-success{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;padding:13px 15px;border:1px solid #34d39955;border-radius:13px;background:linear-gradient(120deg,#34d39918,#34d39908);color:#42dba5;font-size:12px;line-height:1.8;animation:username-success-arrive .4s ease-out}
.username-save-success::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#a7f3d025 50%,transparent 70%);transform:translateX(-120%);animation:username-success-shine 1.4s .25s ease-out both}
.username-save-check{display:grid;place-items:center;flex:none;width:29px;height:29px;border-radius:50%;background:#34d39920;box-shadow:0 0 0 4px #34d39909;animation:username-success-arrive .5s cubic-bezier(.16,1,.3,1)}
.username-save-check svg{width:18px;height:18px;stroke-dasharray:45;stroke-dashoffset:45;animation:username-success-check .65s .15s ease-out forwards}
:root[data-theme="light"] .wallet-message.username-save-success{color:#087f57;border-color:#05966950}
@keyframes username-success-arrive{from{opacity:0;transform:translateY(6px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes username-success-check{to{stroke-dashoffset:0}}
@keyframes username-success-shine{to{transform:translateX(120%)}}
@media(prefers-reduced-motion:reduce){.wallet-message.username-save-success,.username-save-check,.username-save-check svg,.username-save-success::after{animation:none}.username-save-check svg{stroke-dashoffset:0}.username-save-success::after{display:none}}
.distributor-password button:disabled{opacity:.45;cursor:not-allowed}
.password-success-backdrop{z-index:6000;animation:password-success-fade .25s ease-out}
.password-success-dialog{position:relative;isolation:isolate;overflow:hidden;box-sizing:border-box;width:min(390px,100%);padding:34px 25px 23px;border:1px solid #a78bfa66;border-radius:24px;background:radial-gradient(ellipse at 50% 0%,#a78bfa25,transparent 65%),var(--nx-card);color:var(--nx-text);box-shadow:0 24px 80px #0005;display:flex;flex-direction:column;align-items:center;gap:22px;text-align:center;animation:password-success-enter .5s cubic-bezier(.16,1,.3,1)}
.password-success-dialog h2{font-size:18px;line-height:1.9;margin:0}
.password-success-lock{position:relative;display:grid;place-items:center;width:82px;height:82px;border:1px solid #a78bfa66;border-radius:25px;background:#a78bfa16;color:#bda5ff;box-shadow:0 0 30px #a78bfa20}
.password-success-lock>svg{width:40px;height:40px}
.password-success-lock i{position:absolute;bottom:-6px;inset-inline-end:-8px;display:grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#34d399;color:#123c31;border:4px solid var(--nx-card);animation:password-success-enter .55s .15s both}
.password-success-lock i svg{width:21px;height:21px}
.password-success-halo{position:absolute;z-index:-1;top:20px;width:110px;height:110px;border:1px solid #a78bfa50;border-radius:50%;animation:password-success-ring 2.8s ease-out infinite;pointer-events:none}
.password-success-dialog>button{width:100%;min-height:44px;border:1px solid #a78bfa65;border-radius:12px;background:linear-gradient(135deg,#9773f0,#7450d1);color:white;font:inherit;cursor:pointer}
@media(max-width:620px){
 .password-success-backdrop{padding:18px}
 .password-success-dialog{width:min(320px,100%);padding:25px 20px 18px;border-radius:20px;gap:18px}
 .password-success-dialog h2{font-size:15px;line-height:1.85;max-width:250px;text-wrap:balance}
 .password-success-lock{width:64px;height:64px;border-radius:20px}
 .password-success-lock>svg{width:32px;height:32px}
 .password-success-lock i{width:27px;height:27px;border-width:3px;bottom:-5px;inset-inline-end:-6px}
 .password-success-lock i svg{width:18px;height:18px}
 .password-success-halo{top:15px;width:90px;height:90px}
 .password-success-dialog>button{font-size:13px;border-radius:11px}
}
@keyframes password-success-enter{from{opacity:0;transform:translateY(16px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes password-success-fade{from{opacity:0}to{opacity:1}}
@keyframes password-success-ring{from{opacity:.6;transform:scale(.65)}to{opacity:0;transform:scale(1.65)}}
@media(prefers-reduced-motion:reduce){.password-success-backdrop,.password-success-dialog,.password-success-lock i,.password-success-halo{animation:none}.password-success-halo{display:none}}
.search-account-switch{box-sizing:border-box;display:flex;align-items:center;flex-wrap:wrap;gap:10px;max-width:1400px;margin:16px auto;padding:14px;border:1px solid var(--nx-line);border-radius:16px;background:var(--nx-card)}
.search-account-switch>span{font-size:11px;color:var(--nx-muted);margin-inline-end:auto}
.search-account-switch button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:12px;border:1px solid var(--nx-line);background:var(--nx-soft);color:var(--nx-text);cursor:pointer;font-size:12px;transition:background .2s,border-color .2s}
.search-account-switch button svg{width:18px;height:18px}
.search-account-switch button.is-selected{background:#a78bfa1c;border-color:#a78bfa88}
.search-account-switch button.is-selected.is-distributor{background:#2dd4bf15;border-color:#2dd4bf88}
@media(max-width:480px){.search-account-switch>span{width:100%}.search-account-switch button{flex:1;padding-inline:9px}}
.is-distributor-history .sonywifie-chart-day:not(.is-empty) .sonywifie-bar-track i{background:linear-gradient(0deg,#087e91,#36c7c1 55%,#a7f3e5);box-shadow:inset 1px 0 0 #ffffff40,0 0 15px #2dd4bf35}
.is-distributor-history .sonywifie-chart-day.today small{color:#44d8c7}
.distributor-history-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;margin:12px 0;border:1px solid #2dd4bf35;background:#2dd4bf09;border-radius:12px}
.distributor-history-caption strong{font-size:13px;color:var(--nx-text)}
.distributor-history-caption small{font-size:10px;color:var(--nx-muted)}
.distributor-history-loading{box-sizing:border-box;display:grid;place-items:center;width:100%;min-height:300px;padding:24px}
.history-router-character{display:block;width:180px;height:168px;overflow:visible;filter:drop-shadow(0 10px 20px #9565fa25)}
.invoice-admin-router{display:inline-flex;align-items:center;justify-content:center;flex:none;width:38px;height:32px;vertical-align:middle}
.invoice-admin-router .history-router-character{width:38px;height:35px;filter:drop-shadow(0 2px 4px #9565fa30)}
.invoice-admin-router .history-router-fill{animation:none;transform:none;opacity:.15}
.history-router-character .rust-character-gasp{display:none}
.history-router-fill{transform-box:fill-box;transform-origin:center bottom;animation:history-router-fill 3s ease-in-out infinite}
@keyframes history-router-fill{0%,100%{transform:scaleY(.05);opacity:.2}65%,80%{transform:scaleY(1);opacity:.6}}
@media(max-width:620px){.distributor-history-loading{min-height:210px}.history-router-character{width:110px;height:103px}}
@media(prefers-reduced-motion:reduce){.history-router-fill{animation:none;opacity:.35}}
:root[data-theme="light"] .is-distributor-history .sonywifie-chart-day.today small{color:#087e91}
.distributor-wallet>header{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--nx-text)}
.distributor-wallet>header svg{width:19px;height:19px;color:#a78bfa}
.wallet-operation-tabs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}
.wallet-operation-tabs button{display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--nx-line);background:var(--nx-soft);color:var(--nx-muted);padding:10px;border-radius:12px;font-size:12px;cursor:pointer;transition:background .2s,border-color .2s}
.wallet-operation-tabs .is-selected.is-deposit{color:#34d399;background:#34d39912;border-color:#34d39966}
.wallet-operation-tabs .is-selected.is-withdraw{color:#fb923c;background:#fb923c12;border-color:#fb923c66}
.wallet-operation-tabs button{--wallet-tone:52,211,153;position:relative;isolation:isolate;overflow:hidden;justify-content:flex-start;gap:9px;min-height:84px;padding:12px;border-radius:16px;transition:transform .25s,border-color .25s,box-shadow .25s,background .25s}
.wallet-operation-tabs button.is-withdraw{--wallet-tone:251,146,60}
.wallet-operation-tabs button::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(115deg,transparent 25%,rgba(var(--wallet-tone),.14) 48%,transparent 70%);transform:translateX(-150%);pointer-events:none}
.wallet-operation-tabs button.is-selected{box-shadow:inset 0 1px 0 #ffffff12,0 5px 18px rgba(var(--wallet-tone),.09);border-color:rgba(var(--wallet-tone),.65)}
.wallet-operation-tabs button.is-selected::before{animation:wallet-operation-shine 6s ease-in-out infinite}
.wallet-operation-icon{display:grid;place-items:center;flex-shrink:0;width:42px;height:46px;border:1px solid rgba(var(--wallet-tone),.2);border-radius:13px;background:rgba(var(--wallet-tone),.08);color:rgb(var(--wallet-tone))}
.wallet-operation-icon svg{width:36px;height:36px}
.wallet-operation-copy{display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-width:0;text-align:start}
.wallet-operation-copy b{font-size:14px;color:var(--nx-text)}
.wallet-operation-copy small{font-size:9px;line-height:1.6;color:var(--nx-muted)}
.wallet-operation-check{position:absolute;inset-inline-end:6px;top:5px;opacity:0;transform:scale(.5);transition:opacity .25s,transform .25s;color:rgb(var(--wallet-tone))}
.wallet-operation-check svg{width:13px;height:13px}
.is-selected .wallet-operation-check{opacity:1;transform:scale(1)}
.is-selected .wallet-flow-arrow{animation:wallet-arrow-glow 2.8s ease-in-out infinite}
.wallet-operation-tabs button:disabled::before,.wallet-operation-tabs button:disabled .wallet-flow-arrow{animation:none}
@media(hover:hover){.wallet-operation-tabs button:not(:disabled):hover{transform:translateY(-2px);border-color:rgba(var(--wallet-tone),.7);box-shadow:0 7px 20px rgba(var(--wallet-tone),.12)}}
.wallet-operation-tabs button:not(:disabled):active{transform:scale(.98)}
@keyframes wallet-operation-shine{0%,55%{transform:translateX(-150%)}90%,100%{transform:translateX(150%)}}
@keyframes wallet-arrow-glow{0%,100%{opacity:.55}50%{opacity:1;filter:drop-shadow(0 0 3px currentColor)}}
@media(prefers-reduced-motion:reduce){.wallet-operation-tabs button,.wallet-operation-check{transition:none}.wallet-operation-tabs button::before,.is-selected .wallet-flow-arrow{animation:none}}
.wallet-available{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;color:var(--nx-muted);flex-wrap:wrap}
.wallet-available b{font-family:Cairo,sans-serif;font-size:13px;color:var(--nx-text)}
.distributor-wallet>label{display:block;font-size:11px;color:var(--nx-muted);margin:14px 0 6px}
.distributor-wallet>input{box-sizing:border-box;width:100%;padding:12px 14px;border:1px solid var(--nx-line);border-radius:12px;background:var(--nx-soft);color:var(--nx-text);font:700 21px Cairo,sans-serif;font-variant-numeric:tabular-nums;outline-offset:3px}
.wallet-review,.wallet-confirm{width:100%;border:0;border-radius:12px;padding:12px;background:linear-gradient(135deg,#9773f0,#7450d1);color:white;font-size:12px;font-weight:700;cursor:pointer;margin-top:12px}
.distributor-wallet button:disabled{opacity:.45;cursor:not-allowed;filter:saturate(.5)}
.wallet-error,.wallet-message.is-error{font-size:11px;color:#f0787d;line-height:1.7;margin:9px 0}
.wallet-message{font-size:11px;line-height:1.7;color:#34d399;margin-top:12px}
.wallet-confirmation{padding:15px;margin-top:14px;border:1px solid #a78bfa55;border-radius:14px;background:#a78bfa0c;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
.wallet-confirmation>strong{font-size:15px}.wallet-confirmation>bdi,.wallet-confirmation>p{font-size:11px;color:var(--nx-muted)}
.wallet-confirmation>b{font:800 27px Cairo,sans-serif;color:#b69bff}
.wallet-confirmation>div{display:grid;grid-template-columns:2fr 1fr;gap:8px;width:100%}
.wallet-confirmation>.wallet-balance-preview{display:flex;flex-direction:column;gap:9px;width:100%;margin-block:7px}
.wallet-balance-preview>section{padding:12px;border:1px solid var(--nx-line);border-radius:12px;background:var(--nx-soft);text-align:start}
.wallet-balance-preview section>strong{font-size:11px;color:var(--nx-text)}
.wallet-balance-preview section>div{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:9px}
.wallet-balance-preview span{display:flex;flex-direction:column;gap:4px;min-width:0}
.wallet-balance-preview small{font-size:10px;color:var(--nx-muted);line-height:1.7}
.wallet-balance-preview b{font:700 16px Cairo,sans-serif;color:var(--nx-text);overflow-wrap:anywhere}
.wallet-balance-preview em{font-size:9px;font-style:normal;font-weight:400}
.wallet-balance-preview i{--wallet-arrow-direction:-1;position:relative;display:grid;place-items:center;width:32px;height:28px;font-style:normal;font-size:21px;color:#b69bff;animation:wallet-balance-flow 2.6s ease-in-out infinite}
.wallet-balance-preview i::after{content:"";position:absolute;width:22px;height:2px;border-radius:4px;background:linear-gradient(90deg,transparent,#a78bfa65,transparent);opacity:0;animation:wallet-balance-trail 2.6s ease-in-out infinite;pointer-events:none}
.wallet-balance-preview section:nth-child(2) i,.wallet-balance-preview section:nth-child(2) i::after{animation-delay:.35s}
@keyframes wallet-balance-flow{0%,100%{translate:0;opacity:.55;filter:drop-shadow(0 0 0 transparent)}50%{translate:calc(var(--wallet-arrow-direction)*7px) 0;opacity:1;filter:drop-shadow(0 0 5px #a78bfa80)}}
@keyframes wallet-balance-trail{0%,100%{opacity:0;scale:.5 1}50%{opacity:.65;scale:1 1}}
.wallet-balance-preview .wallet-balance-after b{color:#a78bfa}
:root[data-theme="light"] .wallet-balance-preview .wallet-balance-after b{color:#7452c7}
[dir="ltr"] .wallet-balance-preview i{--wallet-arrow-direction:1;transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.wallet-balance-preview i,.wallet-balance-preview i::after{animation:none}.wallet-balance-preview i::after{display:none}}
.wallet-confirmation button{margin:0;padding:10px;border-radius:10px;font-size:11px;cursor:pointer}
.wallet-confirmation button:not(.wallet-confirm){border:1px solid var(--nx-line);background:var(--nx-soft);color:var(--nx-text)}
:root[data-theme="light"] .wallet-confirmation>b{color:#7452c7}
:root[data-theme="light"] .wallet-operation-tabs .is-selected.is-deposit{color:#078760}
:root[data-theme="light"] .wallet-operation-tabs .is-selected.is-withdraw{color:#ad571a}

/* Pointer gaze moves only pupils; blinking and error expressions remain on the eye group. */
.animated-brand-logo--login .router-gaze-pupil{transition:transform .12s ease-out;pointer-events:none}
.rust-login-error .router-gaze-pupil,.customer-login-error .router-gaze-pupil{transform:none!important}
@media(prefers-reduced-motion:reduce){.animated-brand-logo--login .router-gaze-pupil{transition:none;transform:none!important}}

.speed-success-dialog{border-color:#34d39966;background:radial-gradient(ellipse at 50% 0%,#34d39920,transparent 65%),var(--nx-card)}
.speed-success-dialog .password-success-halo{border-color:#34d39960}
.speed-success-check{display:grid;place-items:center;width:86px;height:86px;color:#34d399;filter:drop-shadow(0 0 15px #34d39940)}
.speed-success-check svg{width:100%;height:100%;stroke:currentColor;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}
.speed-success-check circle{stroke-dasharray:190;stroke-dashoffset:190;animation:speed-success-draw .65s .1s ease-out forwards}
.speed-success-check path{stroke-width:5;stroke-dasharray:55;stroke-dashoffset:55;animation:speed-success-draw .4s .55s ease-out forwards}
.speed-success-dialog h2{color:#28bc8b;text-wrap:balance}
.speed-success-dialog>button{border-color:#34d39960;background:linear-gradient(135deg,#28bb90,#178765)}
@keyframes speed-success-draw{to{stroke-dashoffset:0}}
@media(max-width:600px){.speed-success-check{width:70px;height:70px}}
@media(prefers-reduced-motion:reduce){.speed-success-check circle,.speed-success-check path{animation:none;stroke-dashoffset:0}}
@media(max-width:600px){
 .speed-success-dialog{width:min(310px,100%);max-height:calc(100dvh - 36px);overflow-y:auto;padding:24px 18px 18px;gap:16px;border-radius:20px}
 .speed-success-dialog h2{font-size:15px;line-height:1.8;max-width:245px;overflow-wrap:anywhere}
 .speed-success-dialog>button{min-height:44px;font-size:14px;flex-shrink:0}
 .speed-success-check{width:66px;height:66px;flex-shrink:0}
}
.animated-brand-logo--login .router-head-tracking{transform-box:view-box;transform-origin:42.206% 37.5%;transition:transform .3s cubic-bezier(.2,.7,.3,1);backface-visibility:visible}
.rust-login-error .router-head-tracking,.customer-login-error .router-head-tracking{transform:none!important;transition:transform .12s ease-out}
@media(prefers-reduced-motion:reduce){.animated-brand-logo--login .router-head-tracking{transform:none!important;transition:none}}
