.reseller-customer-app{font-family:Inter,'Segoe UI',Arial,sans-serif;background:radial-gradient(ellipse at 95% 0,#51351935,transparent 50%),#101318;min-height:100dvh;color:#edf1f7}
.reseller-customer-app [hidden]{display:none!important}.reseller-customer-app header{gap:22px;flex-wrap:wrap;min-height:76px;border-bottom:1px solid #735331;padding:12px 3vw}.reseller-customer-app #brand{max-width:260px;overflow-wrap:anywhere}.reseller-customer-app #brand img{max-width:210px;max-height:48px;object-fit:contain}.reseller-customer-app #customer-nav{display:flex;flex:1;gap:5px;flex-wrap:wrap}.reseller-customer-app #customer-nav a{padding:14px 16px;font-size:14px;color:#c5cbd3;border-radius:8px}.reseller-customer-app #customer-nav a[aria-current=page]{background:linear-gradient(120deg,#ffbd59,#ff981a);color:#17191d}.reseller-customer-app main{max-width:1180px;margin:24px auto}.customer-welcome{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid #434449;background:radial-gradient(ellipse at right,#75542233,transparent 65%),#1c232d;border-radius:16px;padding:22px 26px;margin-bottom:22px}.customer-welcome h1{margin:8px 0;font-size:28px}.customer-welcome p{margin:5px 0;color:#bac4d1}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:700;color:#ffc273!important}.account-card{background:#1c232d;border:1px solid #384351;border-radius:14px;padding:24px;min-width:0}.section-heading{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap}.section-heading h2{margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:26px 0}.service-grid dt{font-size:12px;color:#aebaca;margin-bottom:7px}.service-grid dd{margin:0;font-size:16px;font-weight:600;overflow-wrap:anywhere}.status-pill{display:inline-block;border:1px solid #655239;background:#ffac2810;color:#ffc273;border-radius:30px;padding:7px 12px;text-transform:capitalize;white-space:nowrap}.account-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.primary-link,.reseller-customer-app button.primary{background:linear-gradient(120deg,#ffbd59,#ff981a);color:#14181f;border:1px solid #ffc26a;font-weight:700;box-shadow:0 4px 18px #ff9c1312}.primary-link{display:inline-flex;align-items:center;min-height:44px;padding:12px 18px;text-decoration:none;border-radius:8px}.customer-signin{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;margin:8vh auto;max-width:950px}.customer-signin h1{font-size:40px;line-height:1.2}.password-field{display:flex;gap:8px}.password-field input{min-width:0;flex:1}.customer-dialog{width:min(720px,calc(100% - 24px));padding:22px}.customer-dialog small{overflow-wrap:anywhere}.reseller-customer-app button,.reseller-customer-app input{min-height:44px}.reseller-customer-app input{width:100%;min-width:0;font-size:16px}.reseller-customer-app .table-wrap{margin-bottom:16px}.reseller-customer-app table{min-width:550px}.reseller-customer-app td small{display:block;margin-top:6px}.reseller-customer-app #message:empty{display:none}
@media(max-width:768px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-signin{gap:24px;margin:30px auto}.customer-signin h1{font-size:30px}.reseller-customer-app header{gap:10px}.reseller-customer-app #customer-nav{order:3;flex-basis:100%}.reseller-customer-app #customer-nav a{flex:1;text-align:center;padding:12px 10px}.reseller-customer-app #logout{margin-left:auto}}
@media(max-width:480px){.customer-signin{grid-template-columns:1fr}.customer-welcome{padding:18px;align-items:flex-start}.customer-welcome h1{font-size:22px;overflow-wrap:anywhere}.account-card{padding:18px}.service-grid{gap:18px 12px}.service-grid dd{font-size:15px}.reseller-customer-app #customer-nav a{font-size:13px}.customer-dialog{padding:16px}.contact-grid{grid-template-columns:1fr}}
.invoice-dialog{width:min(800px,calc(100% - 24px))}.invoice-sheet{border:1px solid #46505d;border-radius:12px;padding:26px;background:#171e27;margin:16px 0}.invoice-heading{display:flex;justify-content:space-between;gap:24px;border-bottom:2px solid #c48a3a;padding-bottom:22px}.invoice-heading h2{font-size:23px;overflow-wrap:anywhere;margin:10px 0}.invoice-heading p,.invoice-parties p{color:#b8c3d2;line-height:1.6;overflow-wrap:anywhere}.invoice-logo{width:auto;max-width:180px;height:auto;max-height:70px;object-fit:contain}.invoice-reference{display:flex;align-items:flex-end;flex-direction:column;gap:10px}.invoice-reference strong{letter-spacing:1px}.invoice-parties{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:24px 0}.invoice-parties h3{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#b8c3d2}.invoice-parties dl{display:grid;grid-template-columns:auto 1fr;gap:12px;align-content:start;font-size:14px}.invoice-parties dt{color:#b8c3d2}.invoice-parties dd{margin:0;text-align:right;overflow-wrap:anywhere}.reseller-customer-app .invoice-line-items table{min-width:0;table-layout:fixed}.invoice-line-items td,.invoice-line-items th{overflow-wrap:anywhere}.invoice-line-items td:last-child,.invoice-line-items th:last-child{text-align:right;width:110px}.invoice-total{display:flex;justify-content:flex-end;gap:50px;padding-top:20px}.invoice-balance{font-size:20px;color:#ffc273}.invoice-footnote{font-size:11px;color:#aab6c7;overflow-wrap:anywhere;margin-top:28px}.invoice-controls{display:flex;gap:12px;justify-content:flex-end;flex-wrap:wrap}@media(max-width:480px){.invoice-sheet{padding:16px}.invoice-heading{flex-direction:column;gap:12px}.invoice-reference{align-items:flex-start}.invoice-parties{grid-template-columns:1fr;gap:8px}.invoice-controls button{flex:1}.invoice-total{justify-content:space-between;gap:12px}}
@media print{body:has(.invoice-dialog[open])> :not(.invoice-dialog){display:none!important}.invoice-dialog[open]{position:static;width:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;overflow:visible;background:white;color:black}.invoice-dialog::backdrop{display:none}.invoice-dialog>.dialog-head,.invoice-dialog .invoice-controls,.invoice-dialog [role=status]{display:none}.invoice-sheet{background:white;border:0;color:black}.invoice-sheet p,.invoice-sheet dt,.invoice-balance{color:#333}.invoice-line-items th{background:#eee;color:black}.invoice-logo{max-height:65px}}

.store-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.store-plan{padding:20px;border:1px solid #465366;border-radius:12px}.plan-price{font-size:1.25rem;font-weight:700}.product-toggle{display:flex;align-items:center;gap:12px;min-height:48px;margin:12px 0}.product-toggle small{display:block}.product-toggle input[type=checkbox]{appearance:none;width:40px;height:24px;min-width:40px;padding:0;border:1px solid #718095;border-radius:14px;background:#374354;position:relative}.product-toggle input[type=checkbox]::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:white}.product-toggle input:checked{background:#ffb13d}.product-toggle input:checked::after{transform:translateX(16px);background:#16202d}.product-toggle input:focus-visible{outline:3px solid #ffb13d;outline-offset:3px}.customer-dialog fieldset{border:1px solid #465366;border-radius:10px;padding:12px}

.product-toggle input[type=checkbox]{min-height:24px;flex:0 0 40px}.account-card+.account-card{margin-top:20px}

/* Consistent compact forms across staff and customer panels. */
:is(.panel,.billing-card,.account-card,.card,.customer-modal,.customer-dialog,.account-dialog,.reseller-account-dialog) form{align-content:start;row-gap:10px}
:is(.panel,.billing-card,.account-card,.card,.customer-modal,.customer-dialog,.account-dialog,.reseller-account-dialog) form>label{margin:0;min-width:0;gap:5px}
:is(.panel,.billing-card,.account-card,.card,.customer-modal,.customer-dialog,.account-dialog,.reseller-account-dialog) form>p{margin:4px 0;line-height:1.45}
:is(.panel,.billing-card,.account-card,.card,.customer-modal,.customer-dialog,.account-dialog,.reseller-account-dialog) form>fieldset{margin:4px 0;padding:10px 12px;min-width:0}
:is(.panel,.billing-card,.account-card,.card,.customer-modal,.customer-dialog,.account-dialog,.reseller-account-dialog) form>button{margin-top:0;min-height:44px}
:is(.panel,.billing-card,.account-card,.card) form>[role=status]:empty{display:none}
:is(.panel,.billing-card,.account-card,.card):has(>form){padding:18px;align-self:start}
:is(.panel,.billing-card,.account-card,.card)>:is(h2,h3,h4){margin-top:0;margin-bottom:10px}
:is(.panel,.billing-card,.account-card,.card)>p{margin:8px 0}
:is(.panel,.billing-card,.account-card,.card) form :is(input:not([type=checkbox]):not([type=radio]),select){margin-top:0;min-height:44px;box-sizing:border-box;max-width:100%}
:is(.panel,.billing-card,.account-card,.card) form textarea{margin-top:0;box-sizing:border-box;max-width:100%}
.service-settings{margin-top:12px;padding-top:8px}.service-settings>div,.service-settings>details{margin-top:8px}.service-settings form{gap:10px}.service-settings form label{margin:0}.service-settings form>h4{margin:8px 0}.service-settings form>p:empty{display:none}
.service-summary-grid{margin:12px 0;padding:12px 0;gap:12px}.service-summary-grid dt{margin-bottom:4px}
.included-access-compact{margin:8px 0;padding:0!important;border:0!important;background:transparent!important}.included-access-compact>summary{min-height:44px;display:list-item;align-content:center;cursor:pointer;font-weight:600}.included-access-compact form{margin-top:8px}.included-access-compact .billing-addons{display:flex;flex-wrap:wrap;gap:8px 20px}.included-access-compact .addon-choice{margin:0;min-height:44px;flex:1 1 240px}.included-access-compact .addon-choice span span{display:block;font-size:12px}
.service-card-credentials .toolbar{margin:8px 0}.compact-xui-editor .service-editor-section>h4{margin:12px 0 8px}.compact-xui-editor form>details{margin-top:0}.compact-xui-editor form>details>summary{min-height:44px;padding:8px 0}
.compact-reseller-service .customer-summary-grid,.reseller-customer-app .service-grid{gap:12px;margin:14px 0}.compact-reseller-controls .card{padding:0}.compact-reseller-controls form>label{margin:0}.compact-reseller-controls>h3{margin-top:8px}
@media(max-width:600px){:is(.panel,.billing-card,.account-card,.card):has(>form){padding:14px}.included-access-compact .addon-choice{flex-basis:100%}.service-settings form{max-width:100%}}

/* Shared toggle rendering: one track and one thumb, no generated overlay. */
html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden]){appearance:none!important;-webkit-appearance:none!important;box-sizing:border-box!important;display:inline-block!important;position:relative!important;flex:0 0 34px!important;width:34px!important;min-width:34px!important;max-width:34px!important;height:20px!important;min-height:20px!important;max-height:20px!important;padding:0!important;margin:0 8px 0 0!important;border:1px solid #8192a5!important;border-radius:20px!important;vertical-align:middle!important;background:radial-gradient(circle at 8px 9px,#fff 0 6px,transparent 6.5px),#455665!important;box-shadow:none!important;transform:none!important;cursor:pointer;opacity:1}
html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden]):checked{background:radial-gradient(circle at 24px 9px,#fff 0 6px,transparent 6.5px),#a96813!important}
html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden]):indeterminate{background:linear-gradient(#fff,#fff) center/12px 3px no-repeat,#72603e!important}
html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden])::before,html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden])::after{content:none!important;display:none!important}
html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden]):focus-visible{outline:2px solid #ffce85!important;outline-offset:3px!important}
html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden]):disabled{opacity:.5!important;cursor:not-allowed!important}
html body label:has(input[type=checkbox]){min-height:44px;align-content:center;cursor:pointer}
@media(forced-colors:active){html body input[type=checkbox][type=checkbox][type=checkbox][type=checkbox]:not([hidden]){appearance:auto!important;-webkit-appearance:auto!important;background:none!important;forced-color-adjust:auto}}
