/* NexoraHosting V229 — unified theme tokens and page primitives */
:root,html[data-theme="dark"]{--nx29-bg:#071522;--nx29-surface:#102438;--nx29-raised:#172e45;--nx29-text:#f2f7fc;--nx29-muted:#a7bbd0;--nx29-border:#284159;--nx29-accent:#ff892e;--nx29-accent-hover:#fb9c4d;--nx29-shadow:0 15px 40px rgba(0,0,0,.21);color-scheme:dark}
html[data-theme="light"]{--nx29-bg:#f4f7fb;--nx29-surface:#fff;--nx29-raised:#edf4fa;--nx29-text:#1c3046;--nx29-muted:#5b718a;--nx29-border:#d7e3ee;--nx29-shadow:0 15px 40px rgba(32,65,94,.08);color-scheme:light}
html{scroll-behavior:smooth}
body.public-shell,body.dashboard-body,body[class*="-auth"]{accent-color:var(--nx29-accent)}
:is(body.public-shell,body.dashboard-body,body[class*="-auth"]) :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ff9a50!important;outline-offset:3px!important}
/* Public navigation and menus: prevent older white-only rules winning. */
html[data-theme="dark"] body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega){background:var(--nx29-surface)!important;color:var(--nx29-text)!important;border-color:var(--nx29-border)!important;box-shadow:var(--nx29-shadow)!important}
html[data-theme="light"] body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega){background:#fff!important;color:#1c3046!important;border-color:#d7e3ee!important;box-shadow:var(--nx29-shadow)!important}
body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega){border-radius:22px!important;overflow:hidden}
html[data-theme="dark"] body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega) :is(h3,h4,strong,.v225-item,.v225-column-title,.v7-mega-card strong){color:#f2f7fc!important}
html[data-theme="dark"] body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega) :is(small,p,.v225-item-description){color:#afc0d3!important}
html[data-theme="dark"] body.public-shell :is(.v225-item-icon,.v7-mega-icon){background:#19384e!important;color:#7bc9e4!important}
html[data-theme="light"] body.public-shell :is(.v225-item-icon,.v7-mega-icon){background:#e8f3f8!important;color:#167e9d!important}
html[data-theme="dark"] body.public-shell :is(.v225-foot,.v225-mega-footer){background:#0b1d2c!important;border-color:#2a465e!important}
html[data-theme="light"] body.public-shell :is(.v225-foot,.v225-mega-footer){background:#f3f6fa!important;border-color:#d7e3ee!important}
body.public-shell :is(.v225-announcement,.v225-announcement-card){background:linear-gradient(145deg,#0b3546,#09253a)!important;color:#fff!important;border-radius:17px!important}
body.public-shell :is(.v225-announcement,.v225-announcement-card) :is(h3,strong,a){color:#fff!important}
body.public-shell :is(.v225-announcement,.v225-announcement-card) :is(p,small){color:#b9ccdd!important}
/* Service and product cards */
body.public-shell :is(.v200-product-card,.v199-vds-card,.product-card,.pricing-card,.v202-service-card){border-radius:20px!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
body.public-shell :is(.v200-product-card,.v199-vds-card,.product-card,.pricing-card,.v202-service-card):hover{transform:translateY(-3px);border-color:rgba(255,137,46,.5)!important;box-shadow:var(--nx29-shadow)!important}
body.public-shell :is(.v7-customer-button,.v224-auth-trigger),body.dashboard-body :is(.btn-primary,.v221-btn.primary){background:linear-gradient(125deg,#ff9c48,#f87521)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 10px 24px rgba(246,115,31,.15)!important}
/* Dashboard common visual components, without changing forms/actions. */
body.dashboard-body :is(.table-wrap,.card,.panel,.dashboard-card,.v221-panel,.v221-table-wrap){border-radius:18px!important}
body.dashboard-body :is(.table,.v221-table){width:100%;border-collapse:collapse}
body.dashboard-body :is(.table,.v221-table) :is(th,td){vertical-align:middle}
body.dashboard-body :is(.input,.select,input:not([type=checkbox]):not([type=radio]),textarea,select){max-width:100%;box-sizing:border-box}
body.dashboard-body :is(input[type=checkbox],input[type=radio]){width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;flex:0 0 17px!important;accent-color:var(--nx29-accent)!important}
body.dashboard-body :is(.btn,.side-link,a,button){transition:color .16s ease,background-color .16s ease,border-color .16s ease}
/* Authentication and registration */
body.v227-register .auth-card{width:min(100%,880px)!important;max-width:880px!important;border-radius:24px!important}
body.v227-register .v227-reg-section{border-radius:18px!important}
body.v227-register .v227-reg-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px!important}
body.v227-register input[type=checkbox],body[class*="-auth"] input[type=checkbox]{appearance:auto!important;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;flex:0 0 18px!important;margin:3px 9px 0 0!important;box-shadow:none!important;accent-color:var(--nx29-accent)!important}
body.v227-register .v227-reg-section :is(input,select,textarea){max-width:100%;box-sizing:border-box}
body.v227-register .v227-password button{color:#fff!important}
/* A safe, minimal build marker only on browser inspector; no floating badges */
@media(max-width:768px){body.v227-register .v227-reg-grid{grid-template-columns:1fr!important}body.v227-register .auth-card{padding:22px!important}body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega){max-width:calc(100vw - 24px)}body.dashboard-body .table-wrap{overflow-x:auto}body.dashboard-body .table{min-width:560px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* V230: shared admin/client/page-level forms and data blocks. Scoped to panels. */
body.dashboard-body{--nx-control-bg:var(--nx29-surface);--nx-control-line:var(--nx29-border);--nx-control-text:var(--nx29-text)}
body.dashboard-body :is(.card,.panel,.form-card,.dashboard-card,.table-wrap,.stat-card){border:1px solid var(--nx29-border);border-radius:18px;background:var(--nx29-surface);color:var(--nx29-text)}
body.dashboard-body :is(.card,.panel,.form-card,.dashboard-card) :is(h2,h3,h4){color:var(--nx29-text)}
body.dashboard-body :is(.table,.data-table,.v221-table) th{color:var(--nx29-muted);background:var(--nx29-raised);font-weight:700}
body.dashboard-body :is(.table,.data-table,.v221-table) td{border-bottom:1px solid var(--nx29-border);color:var(--nx29-text)}
body.dashboard-body :is(.table,.data-table,.v221-table) tr:hover td{background:rgba(255,137,46,.045)}
body.dashboard-body :is(.input,.select,textarea,input[type=text],input[type=email],input[type=password],input[type=number],input[type=search],select){border-radius:12px;min-height:43px;}
body.dashboard-body :is(.page-head,.page-header) h1{letter-spacing:-.025em}
body.dashboard-body :is(.badge,.status-pill){border-radius:999px}
body.dashboard-body :is(.btn,.button){border-radius:12px}
body.dashboard-body :is(.empty,.empty-state){padding:32px 20px;border:1px dashed var(--nx29-border);border-radius:16px;color:var(--nx29-muted)}
body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega){color-scheme:inherit}
html[data-theme=dark] body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega) :is(.v225-item,.v7-mega-card){background:transparent!important;color:var(--nx29-text)!important}
html[data-theme=light] body.public-shell :is(.v225-mega,.v225-mega-panel,.v7-mega) :is(.v225-item,.v7-mega-card){background:transparent!important;color:#1c3046!important}
@media(max-width:760px){body.dashboard-body :is(.table-wrap,.data-table-wrap){max-width:100%;overflow-x:auto;overscroll-behavior-x:contain}body.dashboard-body :is(.form-grid,.two-col-form){grid-template-columns:1fr}}
