/* V6.1.6 — contrast & appearance stability layer. Must load last. */
html,body{color:var(--ink)!important;background:var(--canvas)!important}
body.app-body,body.v34-client-body,.app-shell,.app-main,.rs-shell,.rs-main{background:var(--canvas)!important;color:var(--ink)!important}

/* Unified surfaces */
.card,.panel,.widget,.section-card,.v2-section-card,.v25-card,.v26-card,.v27-card,.v28-card,.v29-card,.v30-card,.v31-card,.v32-card,.v34-card,.v35-card,.v36-card,.v37-card,.v38-card,.v39-card,.v40-card,.v41-card,.v42-card,.v43-card,.v44-card,.v50-card,.v54-card,.v60-card,.v61-card,.rs-card,.rs-panel,.rs-stat,.rs-table-wrap,.rs-modal-card{
 background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important;border-radius:var(--radius)!important;
 box-shadow:0 8px 28px color-mix(in srgb,var(--ink) 7%,transparent)!important
}
.card h1,.card h2,.card h3,.card h4,.panel h1,.panel h2,.panel h3,.page-heading h1,.page-heading h2,.rs-main h1,.rs-main h2,.rs-main h3{color:var(--ink)!important}
.card p,.card small,.panel p,.panel small,.page-heading p,.empty-cell,.help-text,.form-help,.rs-main p,.rs-main small{color:var(--muted)!important}

/* Header / sidebar */
.app-sidebar,.rs-sidebar{background:var(--navy-900)!important;color:var(--sidebar-text)!important;border-right:1px solid var(--line)!important;box-shadow:none!important}
.app-sidebar .app-brand strong,.app-sidebar .app-brand small,.rs-sidebar .rs-brand strong,.rs-sidebar .rs-brand small,.rs-side-foot{color:var(--sidebar-text)!important}
.app-sidebar .app-nav a,.rs-sidebar nav a{color:color-mix(in srgb,var(--sidebar-text) 82%,transparent)!important;background:transparent!important;border-color:transparent!important}
.app-sidebar .app-nav a i,.rs-sidebar nav a i{color:color-mix(in srgb,var(--sidebar-text) 72%,var(--blue-600))!important}
.app-sidebar .app-nav a:hover,.rs-sidebar nav a:hover{background:var(--primary-soft)!important;color:var(--sidebar-text)!important}
.app-sidebar .app-nav a.active,.rs-sidebar nav a.active{background:var(--primary-soft)!important;color:var(--blue-600)!important;border-color:color-mix(in srgb,var(--blue-600) 16%,transparent)!important;box-shadow:none!important}
.sidebar-license,.rs-side-foot{background:color-mix(in srgb,var(--surface) 76%,transparent)!important;border-color:var(--line)!important}
.app-header,.rs-header{background:color-mix(in srgb,var(--header-bg) 96%,transparent)!important;color:var(--header-text)!important;border-color:var(--line)!important;box-shadow:none!important}
.header-title strong,.account-chip strong,.rs-header strong{color:var(--header-text)!important}.header-title span,.account-chip small,.rs-header small{color:color-mix(in srgb,var(--header-text) 60%,transparent)!important}
.icon-btn,.account-chip,.rs-account button{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
.app-footer,.rs-main footer{background:var(--footer-bg)!important;color:var(--footer-text)!important;border-color:var(--line)!important}

/* Forms / text */
label,.form-label,.v2-form-pad label,.rs-main label{color:var(--ink)!important}
input,select,textarea,.rs-main input,.rs-main select,.rs-main textarea{background:var(--surface-2)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:calc(var(--radius) - 2px)!important;box-shadow:none!important}
input::placeholder,textarea::placeholder{color:color-mix(in srgb,var(--muted) 82%,transparent)!important;opacity:1!important}
input:focus,select:focus,textarea:focus{border-color:var(--blue-600)!important;box-shadow:0 0 0 3px var(--focus-ring)!important;outline:0!important}
.btn-primary,.rs-main .btn-primary,.rs-login-card button,body.login-page .login-card .btn-primary,body.v61-register-page .v61-auth-card button{background:var(--blue-600)!important;color:var(--on-primary)!important;border-color:var(--blue-600)!important}
.btn-secondary{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
a{color:var(--blue-600)}

/* Tables */
table{background:var(--surface)!important;color:var(--ink)!important}thead th{background:var(--surface-2)!important;color:color-mix(in srgb,var(--ink) 72%,transparent)!important;border-color:var(--line)!important}tbody td{color:var(--ink)!important;border-color:var(--line)!important}tbody tr:hover{background:color-mix(in srgb,var(--blue-600) 4%,var(--surface))!important}

/* Auth: true full page, readable in both themes */
html:has(body.login-page),html:has(body.rs-login),html:has(body.v61-register-page){background:var(--canvas)!important}
body.login-page,body.rs-login,body.v61-register-page{min-height:100vh!important;margin:0!important;background:var(--canvas)!important;color:var(--ink)!important}
body.login-page .login-shell,body.rs-login main,body.v61-register-page .v61-auth-shell{width:100vw!important;max-width:none!important;min-height:100vh!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;display:grid!important;grid-template-columns:minmax(420px,46%) 1fr!important;background:var(--surface)!important}
body.login-page .login-visual,body.rs-login .rs-login-brand,body.v61-register-page .v61-auth-visual{min-height:100vh!important;padding:clamp(42px,5vw,82px)!important;background:linear-gradient(145deg,var(--soft),var(--canvas))!important;color:var(--ink)!important;border-right:1px solid var(--line)!important}
body.login-page .login-panel,body.v61-register-page .v61-auth-card-wrap{min-height:100vh!important;background:var(--surface)!important;padding:clamp(34px,6vw,92px)!important;display:flex!important;align-items:center!important;justify-content:center!important}
body.login-page .login-card,body.rs-login .rs-login-card,body.v61-register-page .v61-auth-card{width:min(520px,100%)!important;max-width:520px!important;background:transparent!important;color:var(--ink)!important;border:0!important;box-shadow:none!important;padding:0!important}
body.login-page .login-card h2,body.login-page .login-visual h1,body.rs-login h1,body.rs-login h2,body.v61-register-page h1,body.v61-register-page h2{color:var(--ink)!important}
body.login-page .login-card>p,body.login-page .login-help,body.login-page .login-visual p,body.rs-login p,body.rs-login small,body.v61-register-page p{color:var(--muted)!important}
body.login-page .v61-portal-chip,body.rs-login .v61-portal-chip,body.v61-register-page .v61-portal-chip{background:var(--surface-2)!important;color:var(--ink)!important;border-color:var(--line)!important}

/* Definitive email/password icon spacing */
body.login-page .login-card .input-icon{position:relative!important;display:block!important;width:100%!important;height:56px!important}
body.login-page .login-card .input-icon>i{position:absolute!important;left:18px!important;top:50%!important;transform:translateY(-50%)!important;z-index:10!important;width:20px!important;height:20px!important;line-height:20px!important;text-align:center!important;color:var(--muted)!important;pointer-events:none!important;margin:0!important;padding:0!important}
body.login-page .login-card .input-icon>input{position:relative!important;z-index:1!important;width:100%!important;height:56px!important;padding:0 18px 0 56px!important;text-indent:0!important;line-height:normal!important;box-sizing:border-box!important}
body.login-page .login-card label{display:block!important;margin:18px 0 8px!important;color:var(--ink)!important}
body.login-page .login-card .input-icon+label{margin-top:18px!important}
body.login-page input:-webkit-autofill{-webkit-text-fill-color:var(--ink)!important;-webkit-box-shadow:0 0 0 1000px var(--surface-2) inset!important}

/* Registration icons */
body.v61-register-page .v61-auth-card label{position:relative!important;display:block!important;color:var(--ink)!important}
body.v61-register-page .v61-auth-card label>i{position:absolute!important;left:18px!important;top:47px!important;z-index:4!important;color:var(--muted)!important;pointer-events:none!important}
body.v61-register-page .v61-auth-card label>input{height:56px!important;padding:0 18px 0 54px!important}

/* Appearance Studio */
.v615-appearance-hero,.v616-contrast-note,.v615-upload-field,.v615-live-preview{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
.v615-appearance-hero p,.v615-upload-field small,.v616-contrast-note p{color:var(--muted)!important}
.v615-theme-mode span,.v615-preset span{background:var(--surface)!important;color:var(--ink)!important;border-color:var(--line)!important}
.v615-theme-mode input:checked+span,.v615-preset input:checked+span{color:var(--blue-600)!important;border-color:var(--blue-600)!important;box-shadow:0 0 0 3px var(--focus-ring)!important}
.v2-color-control code{color:var(--ink)!important;background:var(--surface-2)!important;border:1px solid var(--line)!important}
.v616-contrast-note{margin:18px 0;padding:14px 16px;border:1px solid var(--line);border-radius:var(--radius);display:flex;gap:12px;align-items:flex-start}.v616-contrast-note i{color:var(--blue-600);margin-top:2px}.v616-contrast-note strong{display:block;margin-bottom:4px}.v616-contrast-note p{margin:0;font-size:12px;line-height:1.55}
.v616-preview-warning{display:none;margin-top:12px;padding:10px 12px;border-radius:12px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;font-size:12px}.v616-preview-warning.show{display:block}
html[data-otp-theme="dark"] .v616-preview-warning{background:#2a1710;color:#fed7aa;border-color:#7c2d12}

@media(max-width:900px){body.login-page .login-shell,body.rs-login main,body.v61-register-page .v61-auth-shell{grid-template-columns:1fr!important}body.login-page .login-visual,body.rs-login .rs-login-brand,body.v61-register-page .v61-auth-visual{min-height:auto!important;padding:34px 26px!important}body.login-page .login-panel,body.v61-register-page .v61-auth-card-wrap{min-height:auto!important;padding:34px 22px 54px!important}.v615-theme-modes,.v615-preset-grid,.v615-upload-box{grid-template-columns:1fr!important}}
