*{box-sizing:border-box}:root{--bg:#f5f6fa;--surface:#fff;--surface-soft:#fafbfe;--text:#161925;--muted:#737b8d;--line:#e5e8f0;--primary:#5a5bd7;--primary-soft:#eeeeff;--sidebar:#171827;--success:#17683d;--error:#a02b2b;--shadow:0 18px 45px rgba(25,30,55,.08)}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--text);background:var(--bg)}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.app-shell{display:flex;min-height:100vh}.sidebar{position:fixed;right:0;top:0;bottom:0;width:260px;padding:24px 18px;background:var(--sidebar);color:#fff;overflow-y:auto}.logo{display:flex;align-items:center;gap:11px;padding:0 10px;margin-bottom:32px}.logo>span,.auth-logo span{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:var(--primary);font-weight:800}.logo b,.logo small{display:block}.logo small{margin-top:3px;color:#9299ad}.sidebar nav{display:grid;gap:5px}.sidebar nav a{padding:12px 14px;border-radius:10px;color:#b9bfd0;font-size:14px}.sidebar nav a:hover,.sidebar nav a.active{background:rgba(255,255,255,.09);color:#fff}.nav-title{padding:22px 14px 8px;color:#71798f;font-size:11px;font-weight:700}.main-area{width:calc(100% - 260px);margin-right:260px}.topbar{height:76px;padding:0 30px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.menu-button{display:none;border:0;background:none;font-size:24px}.topbar-search{width:min(420px,40%)}.topbar-search input,.filters input{width:100%;height:42px;border:1px solid var(--line);border-radius:11px;padding:0 14px;background:var(--surface-soft);outline:none}.user-menu{display:flex;align-items:center;gap:10px;font-size:13px}.user-menu b,.user-menu small{display:block}.user-menu small{color:var(--muted);margin-top:3px}.user-menu>a{margin-right:10px;color:var(--primary)}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-weight:800}.content{padding:32px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.page-heading span{color:var(--primary);font-size:13px;font-weight:700}.page-heading h1{margin:7px 0 7px;font-size:34px}.page-heading p,.panel-header p{margin:0;color:var(--muted)}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 18px;border:0;border-radius:11px;font-weight:700;cursor:pointer}.primary-button{width:100%;background:var(--primary);color:#fff}.primary-button.inline{width:auto}.secondary-button{background:#fff;border:1px solid var(--line)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stats-grid article{padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.stats-grid small,.stats-grid span{display:block;color:var(--muted)}.stats-grid strong{display:block;font-size:34px;margin:12px 0}.panel{background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:var(--shadow)}.panel-header{padding:20px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.panel-header h2,.form-panel h2{margin:0 0 6px;font-size:20px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse}th,td{text-align:right;padding:15px 20px;border-bottom:1px solid var(--line);font-size:14px}th{background:#fbfcfe;color:var(--muted);font-size:12px}.badge{display:inline-flex;padding:6px 9px;border-radius:20px;background:var(--primary-soft);color:var(--primary);font-size:11px}.table-sub{display:block;color:var(--muted);margin-top:4px}.empty-state{text-align:center;color:var(--muted);padding:40px}.split-layout{display:grid;grid-template-columns:1fr 360px;gap:20px}.form-panel{padding:22px}.form-panel h2{margin-bottom:20px}.form-page{padding:26px}.form-section{padding-bottom:24px;margin-bottom:24px;border-bottom:1px solid var(--line)}.form-section h2{font-size:18px;margin:0 0 18px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid.three{grid-template-columns:repeat(3,1fr)}label{display:block;font-size:13px;font-weight:700;margin-bottom:16px}input,select,textarea{width:100%;margin-top:8px;border:1px solid var(--line);border-radius:11px;padding:12px;background:var(--surface-soft);outline:none}input,select{height:46px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(90,91,215,.1);background:#fff}.form-actions{display:flex;justify-content:flex-end;gap:10px}.filters{display:flex;gap:10px;padding:18px}.filters .secondary-button{flex:0 0 auto}.cards-list{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.warehouse-card{display:flex;gap:15px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px}.warehouse-card h3{margin:0 0 7px}.warehouse-card p{color:var(--muted);margin:0 0 12px}.warehouse-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:14px;background:var(--primary-soft);color:var(--primary);font-weight:800}.alert{padding:13px 16px;border-radius:11px;margin-bottom:16px}.alert-success{background:#edf9f2;color:var(--success)}.alert-error{background:#fff0f0;color:var(--error)}.auth-body{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 20%,#7072ea 0,transparent 25%),linear-gradient(145deg,#17182b,#292a5d)}.auth-card{width:min(480px,100%);padding:36px;background:#fff;border-radius:22px;box-shadow:0 30px 80px rgba(0,0,0,.25)}.auth-logo{display:flex;align-items:center;gap:11px;margin-bottom:32px}.auth-logo span{color:#fff}.auth-card h1{font-size:32px;margin:0 0 8px}.auth-card>p{color:var(--muted);margin-bottom:24px}.auth-link{text-align:center;font-size:14px}.auth-link a{color:var(--primary)}@media(max-width:1000px){.stats-grid{grid-template-columns:repeat(2,1fr)}.split-layout{grid-template-columns:1fr}.cards-list{grid-template-columns:1fr 1fr}}@media(max-width:760px){.sidebar{transform:translateX(100%);transition:.25s;z-index:20}.sidebar.open{transform:translateX(0)}.main-area{width:100%;margin-right:0}.menu-button{display:block}.topbar{padding:0 16px}.topbar-search{display:none}.content{padding:22px 16px}.page-heading{align-items:flex-start;gap:16px}.stats-grid,.cards-list,.form-grid,.form-grid.three{grid-template-columns:1fr}.user-menu div:not(.avatar){display:none}.page-heading h1{font-size:29px}}

/* Sidebar accordion V1.3 */
.sidebar-navigation {
    display: grid;
    gap: 7px;
}

.sidebar-single-link,
.sidebar-module-button {
    width: 100%;
    min-height: 46px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 0 14px;
    border: 0;
    border-radius: 11px;
    background: transparent;
    color: #b9bfd0;
    cursor: pointer;
    text-align: right;
    transition: background .2s ease, color .2s ease;
}

.sidebar-single-link:hover,
.sidebar-single-link.active,
.sidebar-module-button:hover,
.sidebar-module.open > .sidebar-module-button {
    background: rgba(255, 255, 255, .09);
    color: #fff;
}

.sidebar-module-button {
    justify-content: space-between;
    font: inherit;
}

.sidebar-module-label {
    display: flex;
    align-items: center;
    gap: 11px;
}

.sidebar-link-icon {
    width: 22px;
    min-width: 22px;
    display: inline-grid;
    place-items: center;
    color: #858da3;
    font-size: 16px;
}

.sidebar-module.open .sidebar-link-icon,
.sidebar-single-link.active .sidebar-link-icon {
    color: #bdbdff;
}

.sidebar-chevron {
    font-size: 18px;
    color: #747d93;
    transition: transform .22s ease;
}

.sidebar-module.open .sidebar-chevron {
    transform: rotate(180deg);
}

.sidebar-submenu {
    max-height: 0;
    overflow: hidden;
    display: grid;
    gap: 3px;
    padding-right: 19px;
    opacity: 0;
    transition: max-height .28s ease, opacity .2s ease, padding .28s ease;
}

.sidebar-module.open .sidebar-submenu {
    max-height: 720px;
    padding-top: 7px;
    padding-bottom: 7px;
    opacity: 1;
}

.sidebar .sidebar-submenu a {
    position: relative;
    padding: 10px 18px 10px 12px;
    border-radius: 9px;
    color: #8f97aa;
    font-size: 13px;
}

.sidebar .sidebar-submenu a::before {
    content: "";
    position: absolute;
    right: 4px;
    top: 50%;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #51596d;
    transform: translateY(-50%);
}

.sidebar .sidebar-submenu a:hover,
.sidebar .sidebar-submenu a.active {
    background: rgba(255, 255, 255, .06);
    color: #fff;
}

.sidebar .sidebar-submenu a.active::before {
    background: #8f90ff;
    box-shadow: 0 0 0 4px rgba(143, 144, 255, .12);
}


/* CRUD actions V1.4 */
.table-actions,
.page-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
}

.table-actions form,
.page-actions form {
    margin: 0;
}

.danger-link {
    border: 0;
    padding: 0;
    background: transparent;
    color: #c44343;
    font: inherit;
    cursor: pointer;
}

.danger-link:hover {
    text-decoration: underline;
}

.danger-button {
    min-height: 42px;
    padding: 0 17px;
    border: 1px solid #e7b4b4;
    border-radius: 10px;
    background: #fff1f1;
    color: #a82f2f;
    font: inherit;
    cursor: pointer;
}
/* Inventory V1.5 */
.section-title-row {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:16px;
}
.inventory-form table input,
.inventory-form table select { min-width:150px; }
.inventory-form table select { min-width:320px; }
@media(max-width:700px) {
    .section-title-row {
        align-items:stretch;
        flex-direction:column;
    }
    .inventory-form table select { min-width:230px; }
}

/* Sales editor V1.6 */
.sale-section-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
}

.sale-section-heading h2 {
    margin: 0;
}

.sale-summary {
    background: #f8f9fc;
    border: 1px solid #e5e8f0;
    border-radius: 14px;
    padding: 20px;
}

.sale-summary p {
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.sale-summary hr {
    border: 0;
    border-top: 1px solid #e5e8f0;
}

.sale-summary-total {
    font-size: 20px;
}

@media (max-width: 700px) {
    .sale-section-heading {
        align-items: stretch;
        flex-direction: column;
    }

    #sale-items-table {
        min-width: 760px;
    }
}


/* Sale customer selection V1.8 */
.customer-mode-switch {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}
.customer-mode-switch label,
.inline-check {
    display: flex;
    align-items: center;
    gap: 8px;
}
.customer-mode-switch label {
    border: 1px solid #e0e4ee;
    border-radius: 10px;
    padding: 11px 14px;
    background: #f8f9fc;
    cursor: pointer;
}
#existing-customer-fields,
#new-customer-fields {
    margin-bottom: 20px;
}


/* Customer selector polish V1.9 */
.customer-mode-switch {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 22px;
}

.customer-mode-switch label {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    gap: 9px;
    width: auto;
    min-width: 145px;
    min-height: 44px;
    margin: 0;
    padding: 10px 14px;
    border: 1px solid #dfe4ef;
    border-radius: 11px;
    background: #fff;
    color: #20263a;
    cursor: pointer;
    transition: border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.customer-mode-switch label:hover {
    border-color: #b9c1d6;
    background: #fafbfe;
}

.customer-mode-switch label:has(input:checked) {
    border-color: #6869e8;
    background: #f2f2ff;
    box-shadow: 0 0 0 3px rgba(104, 105, 232, .10);
}

.customer-mode-switch input[type="radio"] {
    appearance: none;
    -webkit-appearance: none;
    width: 17px !important;
    height: 17px !important;
    min-width: 17px !important;
    min-height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 2px solid #aeb6c8;
    border-radius: 50%;
    background: #fff;
    box-shadow: none;
    flex: 0 0 17px;
    cursor: pointer;
}

.customer-mode-switch input[type="radio"]:checked {
    border: 5px solid #5e60df;
}

.inline-check {
    display: inline-flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 9px;
    width: auto !important;
    min-height: 38px !important;
    margin: 4px 0 0 !important;
    padding: 7px 10px !important;
    border: 1px solid #e3e7f0;
    border-radius: 9px;
    background: #fafbfe;
    color: #333a4f;
    cursor: pointer;
}

.inline-check input[type="checkbox"] {
    appearance: none;
    -webkit-appearance: none;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1.5px solid #aeb6c8;
    border-radius: 5px;
    background: #fff;
    box-shadow: none;
    flex: 0 0 18px;
    cursor: pointer;
    position: relative;
}

.inline-check input[type="checkbox"]:checked {
    border-color: #5e60df;
    background: #5e60df;
}

.inline-check input[type="checkbox"]:checked::after {
    content: "✓";
    position: absolute;
    inset: 0;
    display: grid;
    place-items: center;
    color: #fff;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
}

#existing-customer-fields,
#new-customer-fields {
    margin-bottom: 22px;
}

#new-customer-fields[hidden],
#existing-customer-fields[hidden] {
    display: none !important;
}

@media (max-width: 650px) {
    .customer-mode-switch {
        align-items: stretch;
        flex-direction: column;
    }

    .customer-mode-switch label {
        width: 100%;
    }

    .inline-check {
        width: 100% !important;
    }
}


/* ======================================================
   NESISE Brand Theme V2.0
   Logo palette: green #4FED96, charcoal #231F20
   ====================================================== */
:root {
    --bg: #f5f8f6;
    --surface: #ffffff;
    --surface-soft: #f7faf8;
    --text: #231f20;
    --muted: #737b76;
    --line: #dfe8e2;
    --primary: #22b86f;
    --primary-hover: #15985a;
    --primary-soft: #e8fbf1;
    --brand-green: #4fed96;
    --brand-charcoal: #231f20;
    --sidebar: #231f20;
    --success: #157347;
    --error: #b33131;
    --shadow: 0 18px 45px rgba(35, 31, 32, .08);
}

body {
    background:
        radial-gradient(circle at 15% 5%, rgba(79, 237, 150, .06), transparent 25%),
        var(--bg);
}

.sidebar {
    background:
        linear-gradient(180deg, #231f20 0%, #171516 100%);
    border-left: 1px solid rgba(79, 237, 150, .14);
}

.logo {
    width: 100%;
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 26px;
    padding: 12px 14px;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(0, 0, 0, .16);
}

.logo img {
    display: block;
    width: 100%;
    max-width: 184px;
    height: auto;
}

.sidebar-single-link,
.sidebar-module-button {
    color: #c6cbc8;
}

.sidebar-single-link:hover,
.sidebar-single-link.active,
.sidebar-module-button:hover,
.sidebar-module.open > .sidebar-module-button {
    background: rgba(79, 237, 150, .11);
    color: #ffffff;
}

.sidebar-link-icon {
    color: #8d9690;
}

.sidebar-module.open .sidebar-link-icon,
.sidebar-single-link.active .sidebar-link-icon {
    color: var(--brand-green);
}

.sidebar-chevron {
    color: #89918c;
}

.sidebar .sidebar-submenu a {
    color: #aeb6b1;
}

.sidebar .sidebar-submenu a:hover,
.sidebar .sidebar-submenu a.active {
    background: rgba(79, 237, 150, .08);
    color: #ffffff;
}

.sidebar .sidebar-submenu a.active::before {
    background: var(--brand-green);
    box-shadow: 0 0 0 4px rgba(79, 237, 150, .13);
}

.topbar {
    box-shadow: 0 5px 22px rgba(35, 31, 32, .035);
}

.topbar-search input:focus,
.filters input:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 4px rgba(79, 237, 150, .14);
}

.user-menu > a,
.page-heading span,
.auth-link a {
    color: var(--primary);
}

.avatar {
    background: var(--primary-soft);
    color: #158650;
    border: 1px solid rgba(34, 184, 111, .16);
}

.primary-button {
    background: var(--primary);
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(34, 184, 111, .18);
    transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
}

.primary-button:hover {
    background: var(--primary-hover);
    transform: translateY(-1px);
    box-shadow: 0 11px 24px rgba(34, 184, 111, .24);
}

.secondary-button:hover {
    border-color: #b9d9c6;
    background: var(--primary-soft);
}

.panel,
.stats-grid article,
.warehouse-card {
    border-color: var(--line);
}

.badge,
.warehouse-icon {
    background: var(--primary-soft);
    color: #14844f;
}

input:focus,
select:focus,
textarea:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 4px rgba(79, 237, 150, .14);
}

.customer-mode-switch label:has(input:checked) {
    border-color: var(--primary);
    background: var(--primary-soft);
    box-shadow: 0 0 0 3px rgba(79, 237, 150, .14);
}

.customer-mode-switch input[type="radio"]:checked {
    border-color: var(--primary);
}

.inline-check input[type="checkbox"]:checked {
    border-color: var(--primary);
    background: var(--primary);
}

.auth-body {
    background:
        radial-gradient(circle at 18% 18%, rgba(79, 237, 150, .42) 0, transparent 24%),
        linear-gradient(145deg, #171516, #2b2728);
}

.auth-logo {
    width: 100%;
    justify-content: center;
    margin-bottom: 28px;
}

.auth-logo img {
    display: block;
    width: min(245px, 78%);
    height: auto;
}

.auth-card {
    border: 1px solid rgba(79, 237, 150, .18);
}

@media (max-width: 760px) {
    .logo {
        max-width: 205px;
        margin-left: auto;
        margin-right: auto;
    }
}


/* V2.1 Logo refinement */
.logo{
    background: transparent !important;
    box-shadow:none !important;
    border:none !important;
    padding:18px 10px 24px;
}
.logo img{
    max-width:170px;
    filter:drop-shadow(0 4px 12px rgba(79,237,150,.12));
}

/* NESISE V3.0 FOUNDATION */
:root{--brand:#4fed96;--brand-strong:#20c875;--ink:#161817;--sidebar:#171918;--bg:#f4f7f5;--surface:#fff;--surface-soft:#f8faf9;--border:#e3e9e5;--muted:#758078;--danger:#dc4c4c;--warning:#d79b25;--radius:16px;--shadow:0 12px 34px rgba(20,30,24,.07)}*{box-sizing:border-box}body{font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--bg);color:var(--ink);margin:0}.app-shell{min-height:100vh}.sidebar{position:fixed;right:0;top:0;bottom:0;width:264px;padding:18px 14px;background:var(--sidebar);z-index:50;display:flex;flex-direction:column;border:0}.sidebar-brand{display:flex;align-items:center;gap:8px;padding:2px 4px 18px}.logo{background:transparent!important;box-shadow:none!important;padding:8px!important;margin:0!important;min-height:auto!important;justify-content:flex-start!important}.logo img{width:148px!important;max-width:148px!important}.sidebar-collapse{margin-right:auto;width:34px;height:34px;border:1px solid rgba(255,255,255,.09);border-radius:10px;background:rgba(255,255,255,.05);color:#9ba49e;display:grid;place-items:center;cursor:pointer}.sidebar-collapse svg{width:16px;fill:none;stroke:currentColor;stroke-width:2}.sidebar-navigation{display:grid;gap:6px;overflow:auto}.sidebar-single-link,.sidebar-module-button{min-height:44px;padding:0 13px;border-radius:11px;color:#adb6b0;font-size:14px}.sidebar-single-link.active,.sidebar-module.open>.sidebar-module-button,.sidebar-single-link:hover,.sidebar-module-button:hover{background:rgba(79,237,150,.1);color:#fff}.sidebar-single-link.active:before{content:"";position:absolute;right:0;width:3px;height:22px;border-radius:4px;background:var(--brand)}.sidebar-single-link{position:relative}.sidebar-link-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8}.sidebar-link-icon{color:#858e88}.active .sidebar-link-icon,.open>.sidebar-module-button .sidebar-link-icon{color:var(--brand)}.sidebar-submenu{padding-right:38px!important}.sidebar .sidebar-submenu a{font-size:13px;padding:9px 13px}.sidebar-footer{margin-top:auto;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}.sidebar-user{display:flex;align-items:center;gap:10px}.sidebar-user .avatar{background:var(--brand);color:#153222}.sidebar-user b{display:block;color:#fff;font-size:13px}.sidebar-user small{color:#88918b}.logout-link{margin-right:auto;color:#8f9892;font-size:12px}.main-area{margin-right:264px;min-height:100vh}.topbar{height:72px;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid var(--border);padding:0 30px;display:flex;align-items:center;gap:18px;position:sticky;top:0;z-index:30}.topbar-search{position:relative;max-width:540px;flex:1}.topbar-search span{position:absolute;right:15px;top:50%;transform:translateY(-50%);color:#9ba49e}.topbar-search svg{width:18px;fill:none;stroke:currentColor;stroke-width:2}.topbar-search input{width:100%;height:42px;padding:0 44px 0 15px;background:#f7f9f8;border:1px solid var(--border);border-radius:12px}.topbar-actions{margin-right:auto;display:flex;gap:10px;align-items:center}.quick-create{height:40px;padding:0 15px;border-radius:11px;background:var(--ink);color:#fff;display:flex;align-items:center;gap:7px;font-size:13px}.quick-create svg{width:17px;fill:none;stroke:var(--brand);stroke-width:2}.icon-button{width:40px;height:40px;border:1px solid var(--border);border-radius:11px;background:#fff;color:var(--brand-strong)}.content{padding:32px;max-width:1680px;margin:auto}.dashboard-hero,.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:26px}.dashboard-hero h1,.page-heading h1{font-size:30px;line-height:1.2;margin:7px 0}.dashboard-hero p,.page-heading p{margin:0;color:var(--muted)}.eyebrow,.page-heading span{font-size:12px;font-weight:700;color:#18a962}.hero-actions{display:flex;gap:10px}.button,.primary-button,.secondary-button{height:42px;padding:0 17px;border-radius:11px;font-weight:650;display:inline-flex;align-items:center;justify-content:center;border:1px solid transparent}.button-primary,.primary-button{background:var(--ink)!important;color:#fff!important;box-shadow:none!important}.button-primary:hover,.primary-button:hover{background:#2a2d2b!important}.button-secondary,.secondary-button{background:#fff;color:var(--ink);border-color:var(--border)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:22px}.metric-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;right:0;top:0;width:4px;height:100%;background:var(--brand)}.metric-card strong{display:block;font-size:28px;margin:10px 0 8px}.metric-label{font-size:13px;color:var(--muted)}.metric-card small{color:#929b95}.metric-warning:before{background:var(--warning)}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,.8fr);gap:18px}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.panel-header{padding:20px 22px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.panel-header h2{margin:4px 0 0;font-size:18px}.text-link,.strong-link{color:#188e5a;font-weight:650}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th{font-size:11px;text-transform:uppercase;letter-spacing:.03em;color:#8b958e;background:#fafcfb}th,td{padding:14px 18px;border-bottom:1px solid #edf1ee;text-align:right}tbody tr:hover{background:#fbfdfc}.status-pill,.badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:700;background:#e8fbf1;color:#158550}.status-cancelled{background:#fff0f0;color:#b83939}.rank-list{padding:8px 20px}.rank-item{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid var(--border)}.rank-number{width:25px;height:25px;border-radius:8px;background:#eff8f3;color:#188e5a;display:grid;place-items:center;font-size:11px;font-weight:800}.rank-item b{display:block;font-size:13px}.rank-item small{color:var(--muted)}.rank-item strong{font-size:13px}.quick-actions-card{padding:20px}.quick-actions-card h3{margin:0 0 12px}.quick-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.quick-actions-grid a{padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-soft);font-size:12px;color:var(--ink);font-weight:650}.toast{position:fixed;left:24px;bottom:24px;z-index:1000;min-width:280px;max-width:430px;padding:14px 16px;background:#1d211f;color:#fff;border-radius:12px;box-shadow:0 16px 40px rgba(0,0,0,.2);display:flex;justify-content:space-between;gap:16px}.toast button{border:0;background:transparent;color:#fff;font-size:20px}.toast-error{border-right:4px solid #ed6060}.toast-success{border-right:4px solid var(--brand)}input,select,textarea{border:1px solid var(--border)!important;background:#fff!important;border-radius:11px!important}input:focus,select:focus,textarea:focus{border-color:#49c989!important;box-shadow:0 0 0 4px rgba(79,237,150,.12)!important}.sidebar-collapsed .sidebar{width:82px}.sidebar-collapsed .main-area{margin-right:82px}.sidebar-collapsed .nav-text,.sidebar-collapsed .sidebar-chevron,.sidebar-collapsed .sidebar-submenu,.sidebar-collapsed .logo img{display:none}.sidebar-collapsed .logo:after{content:"N";width:38px;height:38px;border-radius:11px;background:var(--brand);color:#183426;display:grid;place-items:center;font-weight:900}.sidebar-collapsed .sidebar-module-button,.sidebar-collapsed .sidebar-single-link{justify-content:center}.sidebar-collapsed .sidebar-module-label{justify-content:center}.sidebar-collapsed .sidebar-collapse svg{transform:rotate(180deg)}@media(max-width:1100px){.metric-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:760px){.sidebar{transform:translateX(100%);width:270px}.sidebar.open{transform:translateX(0)}.main-area,.sidebar-collapsed .main-area{margin-right:0}.content{padding:20px 14px}.topbar{padding:0 14px}.quick-create span{display:none}.dashboard-hero,.page-heading{align-items:flex-start;flex-direction:column}.metric-grid{grid-template-columns:1fr}.hero-actions{width:100%}.hero-actions .button{flex:1}.topbar-actions{margin-right:0}.topbar-search{max-width:none}.sidebar-collapsed .sidebar{width:270px}.sidebar-collapsed .nav-text,.sidebar-collapsed .sidebar-chevron,.sidebar-collapsed .logo img{display:initial}.sidebar-collapsed .logo:after{display:none}}

/* V3.1 Customers PRO */
.page-heading-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.heading-buttons{display:flex;gap:10px;flex-wrap:wrap}.customer-stats{margin-bottom:20px}.customer-filter-bar{display:grid;grid-template-columns:minmax(260px,2fr) repeat(3,minmax(130px,1fr)) auto auto;gap:10px;align-items:center;margin-bottom:18px}.customer-filter-bar input,.customer-filter-bar select{margin:0}.customer-identity{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none}.customer-identity span:last-child{display:grid;gap:3px}.customer-identity small,.customers-table td small{color:var(--muted,#7b8190)}.customer-avatar{width:38px;height:38px;border-radius:12px;background:rgba(79,237,150,.14);color:#147843;display:inline-flex;align-items:center;justify-content:center;font-weight:800;flex:0 0 auto}.customer-avatar-large{width:64px;height:64px;border-radius:18px;font-size:21px}.status-badge{display:inline-flex;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap}.status-active{background:#e7f9ef;color:#157647}.status-inactive{background:#f1f2f4;color:#646b76}.row-action{font-weight:700;color:#157647;text-decoration:none;white-space:nowrap}.form-card-large{max-width:1050px}.entity-form{display:grid;gap:26px}.form-section{display:grid;grid-template-columns:220px 1fr;gap:32px;padding-bottom:26px;border-bottom:1px solid #eceef1}.form-section:last-of-type{border-bottom:0}.form-section h2{margin:0 0 6px}.form-section p{margin:0;color:#7b8190}.form-grid{display:grid;gap:16px}.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.form-actions{display:flex;gap:12px;align-items:center}.customer-profile-grid{display:grid;grid-template-columns:minmax(290px,.8fr) 1.8fr;gap:20px;margin-bottom:20px}.customer-profile-card{display:grid;gap:24px}.profile-main{display:flex;align-items:center;gap:15px}.profile-main h2{margin:0 0 8px}.contact-list{display:grid;gap:14px;margin:0}.contact-list div{display:grid;grid-template-columns:85px 1fr;gap:10px;border-top:1px solid #eef0f2;padding-top:12px}.contact-list dt{color:#7b8190}.contact-list dd{margin:0;font-weight:600;overflow-wrap:anywhere}.profile-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stat-date{font-size:24px!important}.customer-content-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(290px,.8fr);gap:20px;align-items:start}.customer-side-stack{display:grid;gap:20px}.panel-heading{display:flex;justify-content:space-between;gap:15px;align-items:start;margin-bottom:16px}.panel-heading h2{margin:0 0 4px}.panel-heading p{margin:0;color:#7b8190}.quick-note-form{display:grid;gap:10px;margin-bottom:16px}.notes-list{display:grid;gap:10px;max-height:370px;overflow:auto}.notes-list article{background:#f8f9fa;border:1px solid #eceef1;border-radius:12px;padding:12px}.notes-list p{margin:0 0 8px}.notes-list small,.activity-timeline small{color:#7b8190}.activity-timeline{display:grid;gap:0}.activity-timeline article{display:grid;grid-template-columns:14px 1fr;gap:10px;position:relative;padding-bottom:18px}.activity-timeline article>span{width:10px;height:10px;background:#4fed96;border-radius:50%;margin-top:5px;position:relative;z-index:1}.activity-timeline article:not(:last-child)::before{content:"";position:absolute;right:4px;top:12px;bottom:0;border-right:1px solid #dfe4e7}.activity-timeline article div{display:grid;gap:4px}.danger-zone{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:20px}.danger-zone h2{margin:0 0 5px}.danger-zone p{margin:0;color:#7b8190}.danger-button{background:#fff0f0;color:#b42318;border:1px solid #fecaca;border-radius:10px;padding:10px 15px;font-weight:700;cursor:pointer}.muted{color:#7b8190}
@media(max-width:1050px){.customer-filter-bar{grid-template-columns:repeat(2,minmax(0,1fr))}.customer-profile-grid,.customer-content-grid{grid-template-columns:1fr}}
@media(max-width:700px){.page-heading-actions{align-items:stretch;flex-direction:column}.heading-buttons{display:grid}.customer-filter-bar,.two-columns,.profile-stat-grid{grid-template-columns:1fr}.form-section{grid-template-columns:1fr;gap:16px}.danger-zone{align-items:stretch;flex-direction:column}.danger-zone form,.danger-zone button{width:100%}.customers-table{min-width:920px}}


/* NESISE V3.1.1 - Light sidebar logo */
.sidebar-brand .logo {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 4px 6px !important;
}
.sidebar-brand .logo img {
    display: block;
    width: 116px !important;
    max-width: 116px !important;
    height: auto !important;
    filter: none !important;
}
@media (max-width: 760px) {
    .sidebar-brand .logo {
        margin: 0 !important;
        max-width: none !important;
    }
}

/* NESISE V3.1.2 - Sidebar refresh */
.sidebar-brand {
    min-height: 82px;
    padding: 8px 6px 20px !important;
    border-bottom: 1px solid rgba(255, 255, 255, .07);
    margin-bottom: 14px;
}

.sidebar-brand .logo {
    width: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 2px 4px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 5px;
}

.sidebar-brand .logo img {
    display: block;
    width: 126px !important;
    max-width: 126px !important;
    height: auto !important;
    filter: none !important;
}

.sidebar-brand-copy {
    display: block;
    line-height: 1;
}

.sidebar-brand-copy small {
    display: block;
    color: rgba(255, 255, 255, .42);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .18em;
    white-space: nowrap;
}

.sidebar-collapse {
    flex: 0 0 auto;
    transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}

.sidebar-collapse:hover {
    color: var(--brand);
    border-color: rgba(79, 237, 150, .28);
    background: rgba(79, 237, 150, .08);
}

.sidebar-single-link,
.sidebar-module-button {
    transition: background-color .18s ease, color .18s ease, transform .18s ease;
}

.sidebar-single-link.active,
.sidebar-module.open > .sidebar-module-button {
    background: rgba(79, 237, 150, .075);
    box-shadow: inset -3px 0 0 var(--brand);
}

.sidebar-single-link.active::before {
    display: none;
}

.sidebar .sidebar-submenu a {
    position: relative;
    border-radius: 8px;
    transition: color .18s ease, background-color .18s ease, padding-right .18s ease;
}

.sidebar .sidebar-submenu a:hover {
    padding-right: 17px;
}

.sidebar-collapsed .sidebar-brand {
    justify-content: center;
    padding-inline: 0 !important;
}

.sidebar-collapsed .sidebar-brand .logo {
    display: none !important;
}

.sidebar-collapsed .sidebar-brand::before {
    content: "N";
    width: 38px;
    height: 38px;
    border-radius: 12px;
    display: grid;
    place-items: center;
    background: var(--brand);
    color: #183426;
    font-weight: 900;
}

.sidebar-collapsed .sidebar-brand-copy {
    display: none;
}

.sidebar-collapsed .logo::after {
    display: none !important;
}

@media (max-width: 760px) {
    .sidebar-brand {
        min-height: 76px;
    }

    .sidebar-brand .logo {
        display: flex !important;
        margin: 0 !important;
        max-width: none !important;
    }

    .sidebar-brand .logo img {
        width: 126px !important;
        max-width: 126px !important;
    }

    .sidebar-collapsed .sidebar-brand::before {
        display: none;
    }
}

/* V3.1.4 — clean sidebar logo */
.sidebar-brand {
    min-height: 92px;
    padding: 12px 8px 20px;
    align-items: flex-start;
}

.sidebar-brand .logo {
    flex: 1;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.sidebar-brand .logo img {
    display: block !important;
    width: 154px !important;
    max-width: 154px !important;
    height: auto !important;
    object-fit: contain;
}

.sidebar-brand-copy {
    display: none !important;
}

.sidebar-collapsed .sidebar-brand {
    min-height: 72px;
    padding: 8px 0 18px;
    justify-content: center;
}

.sidebar-collapsed .sidebar-brand .logo {
    display: none !important;
}

.sidebar-collapsed .sidebar-brand::before {
    content: "N";
    width: 38px;
    height: 38px;
    border-radius: 11px;
    background: var(--brand);
    color: #183426;
    display: grid;
    place-items: center;
    font-weight: 900;
}

@media (max-width: 760px) {
    .sidebar-brand {
        min-height: 86px;
        padding-top: 10px;
    }

    .sidebar-brand .logo img {
        width: 148px !important;
        max-width: 148px !important;
    }
}

/* V3.1.5 — dedicated logo mark for collapsed sidebar */
.sidebar-brand .logo-mark {
    display: none !important;
}

.sidebar-collapsed .sidebar-brand {
    position: relative;
    min-height: 88px;
    padding: 8px 0 14px !important;
    align-items: flex-start;
    justify-content: center;
}

.sidebar-collapsed .sidebar-brand .logo {
    display: flex !important;
    width: 36px !important;
    height: 36px !important;
    flex: 0 0 36px;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto !important;
    overflow: visible;
}

.sidebar-collapsed .sidebar-brand .logo-full {
    display: none !important;
}

.sidebar-collapsed .sidebar-brand .logo-mark {
    display: block !important;
    width: 34px !important;
    max-width: 34px !important;
    height: 34px !important;
    object-fit: contain;
}

.sidebar-collapsed .sidebar-brand::before,
.sidebar-collapsed .logo::after {
    display: none !important;
    content: none !important;
}

.sidebar-collapsed .sidebar-collapse {
    position: absolute;
    top: 8px;
    left: -2px;
    width: 32px;
    height: 32px;
}

@media (max-width: 760px) {
    .sidebar-collapsed .sidebar-brand .logo-full {
        display: block !important;
    }

    .sidebar-collapsed .sidebar-brand .logo-mark {
        display: none !important;
    }

    .sidebar-collapsed .sidebar-brand .logo {
        width: auto !important;
        height: auto !important;
        flex: 1 1 auto;
    }

    .sidebar-collapsed .sidebar-collapse {
        position: static;
        width: 34px;
        height: 34px;
    }
}


/* V3.1.6 — sidebar cleanup: full logo only when expanded; arrow only when collapsed */
.sidebar,
.main-area {
    transition: width 200ms ease, margin-right 200ms ease, transform 200ms ease;
}

.sidebar-brand {
    min-height: 74px;
    padding: 8px 8px 16px !important;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.sidebar-brand .logo {
    min-width: 0;
}

.sidebar-brand .logo-full {
    display: block !important;
    width: 148px !important;
    max-width: 148px !important;
    height: auto !important;
}

.sidebar-brand .logo-mark,
.sidebar-collapsed .sidebar-brand .logo,
.sidebar-collapsed .sidebar-brand::before,
.sidebar-collapsed .logo::after {
    display: none !important;
    content: none !important;
}

.sidebar-collapsed .sidebar-brand {
    min-height: 58px;
    padding: 8px 0 12px !important;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}

.sidebar-collapsed .sidebar-collapse {
    position: static !important;
    width: 34px;
    height: 34px;
    margin: 0 auto;
}

@media (max-width: 760px) {
    .sidebar-collapsed .sidebar-brand .logo {
        display: flex !important;
    }

    .sidebar-collapsed .sidebar-brand .logo-full {
        display: block !important;
    }
}


/* Sales Experience 3.3.0 */
.sale-workspace{display:grid;gap:20px}.sale-card{overflow:hidden}.sale-card-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;border-bottom:1px solid var(--ns-color-border,#e5e8f0)}.sale-card-header>div{display:grid;grid-template-columns:auto 1fr;column-gap:12px;align-items:center}.sale-card-header h2{margin:0;font-size:20px}.sale-card-header p{grid-column:2;margin:4px 0 0;color:var(--ns-color-text-muted,#6b7280)}.sale-step{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--ns-color-primary-soft,#e9fff3);color:#16814a;font-weight:800;grid-row:1/3}.sale-card-body{padding:24px}.sale-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.field-help{display:block;margin-top:7px;color:var(--ns-color-text-muted,#6b7280);font-size:12px;font-weight:400}.sale-items-wrap{padding:0 24px 24px}.sale-items-wrap table{table-layout:fixed}.sale-items-wrap th:first-child{width:42%}.sale-items-wrap th:nth-child(2){width:14%}.sale-items-wrap th:nth-child(3){width:18%}.sale-items-wrap th:nth-child(4){width:16%}.sale-items-wrap th:last-child{width:10%}.sale-items-wrap select,.sale-items-wrap input{width:100%;min-width:0}.sale-items-wrap .line-total{white-space:nowrap}.sale-bottom-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:20px}.sale-notes{min-height:210px;resize:vertical}.sale-summary-card .sale-card-body{display:grid;gap:20px}.sale-summary{padding:22px;border-radius:16px;background:var(--ns-color-surface-soft,#f8f9fc);border:1px solid var(--ns-color-border,#e5e8f0)}.sale-summary p{margin:0;padding:10px 0}.sale-summary-total{font-size:22px}.sale-summary-total b{font-size:28px}.sale-sticky-actions{position:sticky;bottom:0;z-index:5;padding:15px 18px;border:1px solid var(--ns-color-border,#e5e8f0);border-radius:16px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);box-shadow:0 -8px 30px rgba(35,31,32,.08)}
@media(max-width:900px){.sale-bottom-grid{grid-template-columns:1fr}.sale-details-grid{grid-template-columns:1fr}}@media(max-width:700px){.sale-card-header{align-items:stretch;flex-direction:column}.sale-items-wrap{padding-inline:14px}.sale-sticky-actions{position:static}.sale-summary-total b{font-size:24px}}

/* Authentication security — V3.4.0 */
.password-field{position:relative;margin-top:8px}.password-field input{margin-top:0;padding-left:52px}.password-toggle{position:absolute;left:8px;top:50%;transform:translateY(-50%);width:38px;height:38px;display:grid;place-items:center;padding:0;border:0;border-radius:10px;background:transparent;color:#68716c;cursor:pointer;transition:background .18s ease,color .18s ease}.password-toggle:hover{background:#eef3f0;color:#161b18}.password-toggle:focus-visible{outline:3px solid rgba(79,237,150,.35);outline-offset:1px}.password-eye{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-eye-closed{display:none}.password-toggle.is-visible .password-eye-open{display:none}.password-toggle.is-visible .password-eye-closed{display:block}.auth-form-row{display:flex;justify-content:flex-start;margin:-7px 0 18px}.auth-form-row a{color:var(--primary,#20c875);font-size:13px;font-weight:700}.password-strength{display:grid;gap:7px;margin:-7px 0 12px;color:var(--muted,#758078);font-size:12px}.password-strength-bar{height:7px;overflow:hidden;border-radius:999px;background:#edf0ee}.password-strength-bar span{display:block;width:calc(var(--password-score,0) * 20%);height:100%;border-radius:inherit;background:#dc4c4c;transition:width .2s ease,background .2s ease}.password-strength[data-score="3"] .password-strength-bar span{background:#d79b25}.password-strength[data-score="4"] .password-strength-bar span{background:#63b879}.password-strength[data-score="5"] .password-strength-bar span{background:#20c875}.password-rules{display:grid;grid-template-columns:1fr 1fr;gap:7px 14px;margin:0 0 18px;padding:0;list-style:none;color:#7b8190;font-size:12px}.password-rules li::before{content:"○";margin-left:6px}.password-rules li.is-valid{color:#157647}.password-rules li.is-valid::before{content:"✓";font-weight:800}.auth-card .help-text{margin:-7px 0 18px;color:var(--muted,#758078);font-size:13px;line-height:1.6}.auth-card .reset-result{overflow-wrap:anywhere}@media(max-width:520px){.password-rules{grid-template-columns:1fr}}


/* V3.4.7 — reliable mobile navigation */
.sidebar-backdrop {
    display: none;
    position: fixed;
    inset: 0;
    z-index: 45;
    padding: 0;
    border: 0;
    background: rgba(10, 14, 12, .48);
    backdrop-filter: blur(2px);
}

@media (max-width: 760px) {
    html,
    body {
        max-width: 100%;
        overflow-x: hidden;
    }

    .app-shell,
    .main-area {
        width: 100% !important;
        min-width: 0;
    }

    .main-area,
    .sidebar-collapsed .main-area {
        margin-right: 0 !important;
    }

    .sidebar,
    .sidebar-collapsed .sidebar {
        right: 0;
        left: auto;
        width: min(86vw, 320px) !important;
        max-width: 320px;
        transform: translateX(105%) !important;
        visibility: hidden;
        pointer-events: none;
        z-index: 50;
        box-shadow: -18px 0 50px rgba(0, 0, 0, .28);
        transition: transform 220ms ease, visibility 220ms ease !important;
    }

    .sidebar.open,
    .sidebar-collapsed .sidebar.open {
        transform: translateX(0) !important;
        visibility: visible;
        pointer-events: auto;
    }

    .mobile-menu-open {
        overflow: hidden;
        touch-action: none;
    }

    .mobile-menu-open .sidebar-backdrop {
        display: block;
    }

    .menu-button {
        display: grid !important;
        place-items: center;
        flex: 0 0 42px;
        width: 42px;
        height: 42px;
        padding: 0;
        border: 1px solid var(--border, #e3e9e5);
        border-radius: 11px;
        background: #fff;
        color: var(--ink, #161817);
        cursor: pointer;
    }

    .sidebar-collapsed .nav-text,
    .sidebar-collapsed .sidebar-chevron,
    .sidebar-collapsed .sidebar-submenu,
    .sidebar-collapsed .sidebar-brand .logo,
    .sidebar-collapsed .sidebar-brand .logo-full {
        display: initial !important;
    }

    .sidebar-collapsed .sidebar-brand {
        min-height: 74px;
        padding: 8px 8px 16px !important;
        align-items: center;
        justify-content: flex-start;
    }

    .sidebar-collapsed .sidebar-collapse {
        position: static !important;
        margin-right: auto;
    }

    .topbar {
        width: 100%;
        min-width: 0;
    }

    .content,
    .content > * {
        min-width: 0;
    }

    .page-heading,
    .dashboard-hero {
        width: 100%;
    }

    .hero-actions,
    .heading-buttons {
        max-width: 100%;
    }
}

/* NESISE 7.0 authentication refresh */
.auth-shell{width:min(1040px,100%);display:grid;grid-template-columns:minmax(0,560px) minmax(300px,1fr);border-radius:28px;overflow:hidden;box-shadow:0 34px 90px rgba(0,0,0,.28)}
.auth-shell-wide{width:min(1180px,100%);grid-template-columns:minmax(0,690px) minmax(310px,1fr)}
.auth-card-modern{width:100%;max-width:none;border-radius:0;box-shadow:none;padding:42px 48px;background:#fff}
.auth-side{display:flex;align-items:flex-end;padding:48px;background:linear-gradient(155deg,#0e3828,#176f48 55%,#21a265);color:#fff;min-height:620px;position:relative;overflow:hidden}
.auth-side::before{content:"";position:absolute;width:330px;height:330px;border-radius:50%;background:rgba(255,255,255,.08);top:-120px;left:-100px}.auth-side>div{position:relative}.auth-side h2{font-size:36px;line-height:1.12;margin:15px 0}.auth-side p{line-height:1.8;color:rgba(255,255,255,.82)}.auth-side-badge,.auth-heading>span{display:inline-flex;padding:7px 11px;border-radius:999px;background:#e9f9ef;color:#176f48;font-weight:800;font-size:12px}.auth-heading{margin-bottom:25px}.auth-heading h1{margin:12px 0 7px}.auth-heading p{margin:0;color:var(--muted)}
.auth-options{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:-4px 0 20px}.auth-options>a{color:#176f48;font-size:13px;font-weight:800}.check-option{display:flex!important;align-items:flex-start;gap:9px;margin:0!important;font-weight:500!important;line-height:1.5}.check-option input{width:18px;height:18px;min-width:18px;margin:2px 0 0;padding:0}.check-option a{color:#176f48;font-weight:800}.field-error-text{display:block;margin-top:7px;color:#a02b2b;font-size:12px;font-weight:700}.auth-step{border:1px solid #e2e9e5;border-radius:18px;padding:20px;margin:0 0 18px}.auth-step legend{display:flex;align-items:center;gap:9px;padding:0 8px;font-size:15px;font-weight:800}.auth-step legend b{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:#176f48;color:#fff}.auth-step-help{margin:-3px 0 16px;color:var(--muted);font-size:13px}.auth-module-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-module-option{margin:0!important}.auth-module-option>input{position:absolute;opacity:0;pointer-events:none}.auth-module-option>span{display:block;height:100%;padding:15px;border:1px solid #dfe7e2;border-radius:14px;background:#fafcfb;cursor:pointer;transition:.18s}.auth-module-option strong,.auth-module-option small{display:block}.auth-module-option small{margin-top:6px;color:var(--muted);line-height:1.5;font-weight:400}.auth-module-option>input:checked+span{border-color:#20a863;box-shadow:0 0 0 3px rgba(32,168,99,.12);background:#effaf4}.consent-option{margin:18px 2px!important}.legal-body{min-height:100vh;padding:30px;background:#f3f7f5}.legal-card{max-width:800px;margin:auto;padding:38px;background:#fff;border:1px solid #e1e9e4;border-radius:22px;box-shadow:var(--shadow)}.legal-card h1{font-size:34px}.legal-card p{line-height:1.9;color:#56615a}
@media(max-width:840px){.auth-shell,.auth-shell-wide{display:block;width:min(620px,100%)}.auth-side{display:none}.auth-card-modern{padding:34px 25px;border-radius:24px}.auth-module-grid{grid-template-columns:1fr}.auth-options{align-items:flex-start}.auth-body{padding:16px}.auth-register-body{place-items:start center}.auth-card .form-grid{grid-template-columns:1fr}}
@media(max-width:430px){.auth-card-modern{padding:28px 19px}.auth-step{padding:16px 13px}.auth-options{flex-direction:column;gap:10px}.auth-heading h1{font-size:28px}}

/* NESISE 7.0.1 — restrained authentication UI */
.auth-body{
    min-height:100vh;
    display:grid;
    place-items:center;
    padding:32px 18px;
    background:#f4f6f5;
}
.auth-register-body{place-items:start center;padding-top:42px;padding-bottom:42px}
.auth-shell,.auth-shell-wide{
    width:min(520px,100%);
    display:block;
    border-radius:18px;
    overflow:visible;
    box-shadow:none;
}
.auth-shell-wide{width:min(720px,100%)}
.auth-side{display:none!important}
.auth-card,
.auth-card-modern{
    width:100%;
    max-width:none;
    padding:34px 36px;
    border:1px solid #e2e7e4;
    border-radius:18px;
    background:#fff;
    box-shadow:0 12px 34px rgba(20,35,28,.06);
}
.auth-logo{margin-bottom:28px}
.auth-logo img{height:38px;width:auto}
.auth-heading{margin-bottom:26px}
.auth-heading>span,
.auth-side-badge{
    padding:0;
    border-radius:0;
    background:none;
    color:#6f7973;
    font-size:12px;
    font-weight:700;
    letter-spacing:.02em;
}
.auth-heading h1,
.auth-card h1{
    margin:8px 0 8px;
    font-size:30px;
    line-height:1.25;
    color:#18211c;
}
.auth-heading p,
.auth-card>p{
    margin:0 0 24px;
    color:#69746e;
    line-height:1.7;
}
.auth-card label{font-size:13px;color:#26312b;margin-bottom:17px}
.auth-card input,
.auth-card select{
    height:48px;
    margin-top:7px;
    padding:0 13px;
    border:1px solid #d9dfdc;
    border-radius:10px;
    background:#fff;
}
.auth-card input:focus,
.auth-card select:focus{
    border-color:#279d62;
    box-shadow:0 0 0 3px rgba(39,157,98,.10);
}
.auth-card .primary-button{
    height:48px;
    border-radius:10px;
    background:#168b50;
    box-shadow:none;
}
.auth-card .primary-button:hover{background:#117744}
.auth-options{margin:0 0 22px}
.auth-options>a,.auth-link a,.check-option a{color:#168b50}
.auth-link{margin:22px 0 0;color:#68726c}
.auth-step{
    margin:0;
    padding:24px 0;
    border:0;
    border-top:1px solid #edf0ee;
    border-radius:0;
}
.auth-step:first-of-type{border-top:0;padding-top:0}
.auth-step legend{
    width:100%;
    padding:0;
    margin-bottom:18px;
    gap:10px;
    color:#1f2a24;
    font-size:15px;
}
.auth-step legend b{
    width:24px;
    height:24px;
    border-radius:50%;
    background:#eef4f0;
    color:#168b50;
    font-size:12px;
}
.auth-step-help{margin:-5px 0 17px;color:#77817b}
.auth-module-grid{grid-template-columns:1fr 1fr;gap:10px}
.auth-module-option>span{
    padding:14px;
    border:1px solid #dfe5e1;
    border-radius:10px;
    background:#fff;
    box-shadow:none;
}
.auth-module-option>input:checked+span{
    border-color:#168b50;
    background:#f6fbf8;
    box-shadow:inset 3px 0 0 #168b50;
}
.auth-module-option small{font-size:12px;color:#737d77}
.password-strength-bar{height:5px}
.password-rules{color:#7a847e}
.alert{border-radius:10px;border:1px solid transparent}
.alert-error{background:#fff7f7;border-color:#f3dcdc}
.alert-success{background:#f4faf6;border-color:#d9ebdf}
@media(max-width:840px){
    .auth-body,.auth-register-body{padding:18px 12px;place-items:start center}
    .auth-card,.auth-card-modern{padding:28px 22px;border-radius:15px}
    .auth-module-grid{grid-template-columns:1fr}
    .auth-card .form-grid{grid-template-columns:1fr}
}
@media(max-width:430px){
    .auth-card,.auth-card-modern{padding:24px 17px}
    .auth-heading h1,.auth-card h1{font-size:26px}
    .auth-step{padding:21px 0}
}

/* NESISE 7.0.2 — solid branded authentication layout */
.auth-body{
    height:100dvh;
    min-height:100vh;
    overflow:hidden;
    padding:24px;
    background:
        radial-gradient(circle at 12% 12%,rgba(27,139,82,.08),transparent 30%),
        #eef3f0;
}
.auth-shell,
.auth-shell-wide{
    width:min(980px,100%);
    max-height:calc(100dvh - 48px);
    display:grid;
    grid-template-columns:minmax(0,560px) minmax(300px,1fr);
    overflow:hidden;
    border:1px solid #dce5df;
    border-radius:22px;
    background:#fff;
    box-shadow:0 22px 58px rgba(21,53,38,.12);
}
.auth-shell-wide{
    width:min(1120px,100%);
    grid-template-columns:minmax(0,690px) minmax(300px,1fr);
}
.auth-card,
.auth-card-modern{
    border:0;
    border-radius:0;
    padding:38px 44px;
    box-shadow:none;
    background:#fff;
}
.auth-side{
    display:flex!important;
    min-height:0;
    padding:42px;
    align-items:flex-end;
    background:#123f32;
    color:#fff;
}
.auth-side::before{
    width:260px;
    height:260px;
    top:-100px;
    left:-90px;
    background:rgba(255,255,255,.045);
}
.auth-side::after{
    content:"";
    position:absolute;
    right:34px;
    top:34px;
    width:44px;
    height:4px;
    border-radius:999px;
    background:#42c781;
}
.auth-side h2{
    margin:14px 0 12px;
    font-size:31px;
    line-height:1.25;
}
.auth-side p{margin:0;color:rgba(255,255,255,.76);line-height:1.75}
.auth-side-badge{
    display:inline-flex;
    padding:6px 10px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    color:#dff7e9;
    background:rgba(255,255,255,.06);
}
.auth-heading>span{
    display:inline-flex;
    padding:6px 10px;
    border-radius:999px;
    color:#176f48;
    background:#eaf6ef;
}
.auth-logo img{height:40px}
.auth-card .primary-button{
    background:#176f48;
    box-shadow:0 7px 17px rgba(23,111,72,.16);
}
.auth-card .primary-button:hover{background:#125d3c}
.auth-card input:focus,
.auth-card select:focus{
    border-color:#279d62;
    box-shadow:0 0 0 3px rgba(39,157,98,.11);
}
.auth-module-option>input:checked+span{
    border-color:#279d62;
    background:#f0f9f4;
    box-shadow:inset 4px 0 0 #279d62;
}

/* Registration stays within the viewport; only the card content scrolls. */
.auth-register-body{
    height:100dvh;
    min-height:100vh;
    overflow:hidden;
    padding:20px;
    place-items:center;
}
.auth-register-body .auth-shell-wide{height:calc(100dvh - 40px)}
.auth-register-card{
    height:100%;
    overflow-y:auto;
    overscroll-behavior:contain;
    scrollbar-width:thin;
    scrollbar-color:#a9bbb0 transparent;
}
.auth-register-card::-webkit-scrollbar{width:7px}
.auth-register-card::-webkit-scrollbar-track{background:transparent}
.auth-register-card::-webkit-scrollbar-thumb{background:#b6c5bc;border-radius:999px}
.auth-register-card::-webkit-scrollbar-thumb:hover{background:#8fa79a}

@media(max-width:840px){
    .auth-body,
    .auth-register-body{
        height:100dvh;
        overflow:hidden;
        padding:12px;
        place-items:center;
    }
    .auth-shell,
    .auth-shell-wide{
        display:block;
        width:min(620px,100%);
        height:auto;
        max-height:calc(100dvh - 24px);
        border-radius:18px;
    }
    .auth-register-body .auth-shell-wide{height:calc(100dvh - 24px)}
    .auth-side{display:none!important}
    .auth-card,
    .auth-card-modern{padding:28px 24px}
    .auth-register-card{height:100%;overflow-y:auto}
}
@media(max-width:430px){
    .auth-card,
    .auth-card-modern{padding:24px 18px}
    .auth-logo{margin-bottom:20px}
    .auth-heading{margin-bottom:21px}
}

/* NESISE 7.0.3 — focused registration wizard */
.auth-wizard-shell{grid-template-columns:minmax(0,650px) 330px;min-height:650px;max-height:min(760px,calc(100dvh - 48px))}
.auth-wizard-shell .auth-register-card{height:auto;overflow:hidden;display:flex;flex-direction:column;padding:34px 42px}
.auth-register-header{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:18px}
.auth-register-header .auth-logo{margin:4px 0 0;order:2}.auth-register-header .auth-logo img{height:34px}.auth-register-header .auth-heading{margin:0}.auth-register-header .auth-heading h1{font-size:29px;margin:7px 0 5px}.auth-register-header .auth-heading p{margin:0;font-size:14px}
.auth-progress{display:flex;align-items:center;margin:0 0 26px;padding:14px 16px;border:1px solid #e5ebe7;border-radius:14px;background:#f8faf9}
.auth-progress-item{display:flex;align-items:center;gap:8px;padding:0;border:0;background:transparent;color:#89918c;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.auth-progress-item b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e8eeea;color:#6f7973;font-size:11px}.auth-progress-item.is-active{color:#173c30}.auth-progress-item.is-active b{background:#176f48;color:#fff}.auth-progress-item.is-complete{color:#176f48}.auth-progress-item.is-complete b{background:#dff2e7;color:#176f48}.auth-progress-line{height:1px;flex:1;min-width:22px;margin:0 10px;background:#dce4df}
.auth-wizard-step{display:none;min-height:390px;animation:authStepIn .18s ease}.auth-wizard-step.is-active{display:flex;flex-direction:column}@keyframes authStepIn{from{opacity:.45;transform:translateY(5px)}to{opacity:1;transform:none}}
.auth-step-title{margin-bottom:22px}.auth-step-title>span{display:block;margin-bottom:5px;color:#178051;font-size:12px;font-weight:800}.auth-step-title h2{margin:0 0 7px;font-size:24px;color:#18251f}.auth-step-title p{margin:0;color:#707a74;font-size:14px;line-height:1.6}
.auth-wizard-step label{margin-bottom:17px}.auth-wizard-step .form-grid{gap:14px}.auth-password-grid{grid-template-columns:1fr 1fr}.auth-wizard-step .password-strength{margin:-5px 0 10px}.auth-wizard-step .password-rules{grid-template-columns:repeat(3,1fr);gap:5px 12px;margin-bottom:12px;font-size:11px}
.auth-wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid #edf1ee}.auth-wizard-actions .primary-button,.auth-wizard-actions .secondary-button{width:auto;min-width:160px;height:46px;margin:0}.auth-wizard-actions .secondary-button{min-width:90px}
.auth-module-grid-wizard{grid-template-columns:1fr 1fr;gap:11px}.auth-module-grid-wizard .auth-module-option>span{position:relative;min-height:92px;padding:16px 43px 14px 14px}.auth-module-grid-wizard .auth-module-option>span i{position:absolute;right:15px;top:17px;width:17px;height:17px;border:1.5px solid #c8d2cc;border-radius:5px;background:#fff}.auth-module-grid-wizard .auth-module-option>input:checked+span i{border-color:#176f48;background:#176f48;box-shadow:inset 0 0 0 4px #fff}.auth-module-grid-wizard .auth-module-option>input:checked+span{box-shadow:none;border-color:#7dbb98;background:#f5fbf7}.auth-module-grid-wizard .auth-module-option small{line-height:1.45}.auth-wizard-step .consent-option{margin:15px 0 0!important;font-size:12px}
.auth-wizard-shell .auth-link{margin:16px 0 0;padding-top:14px;border-top:1px solid #edf1ee;font-size:13px}
.auth-wizard-side{padding:34px;align-items:stretch;justify-content:space-between;flex-direction:column;background:#123f32}.auth-side-logo{position:relative;z-index:1;display:block}.auth-side-logo img{height:34px;max-width:150px;filter:brightness(0) invert(1)}.auth-side-copy{margin-top:auto;margin-bottom:30px;position:relative;z-index:1}.auth-wizard-side h2{font-size:28px;margin:13px 0 12px}.auth-wizard-side p{font-size:14px}.auth-side-points{position:relative;z-index:1;display:grid;gap:10px;margin:0;padding:0;list-style:none}.auth-side-points li{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:12px;padding:11px 0;border-top:1px solid rgba(255,255,255,.11)}.auth-side-points b{font-size:13px;color:#61d99a}.auth-side-points span{font-size:12px;color:rgba(255,255,255,.72)}
@media(max-width:840px){.auth-wizard-shell{display:block;min-height:0;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.auth-wizard-shell .auth-register-card{height:100%;overflow-y:auto;padding:24px 22px}.auth-register-header{display:block}.auth-register-header .auth-logo{margin:0 0 18px}.auth-wizard-side{display:none!important}.auth-wizard-step{min-height:0}.auth-progress{padding:12px 10px}.auth-progress-item span{display:none}.auth-progress-line{margin:0 7px}.auth-password-grid,.auth-module-grid-wizard{grid-template-columns:1fr}.auth-wizard-step .password-rules{grid-template-columns:1fr 1fr}.auth-wizard-actions{position:sticky;bottom:-24px;margin:12px -22px -24px;padding:14px 22px;background:#fff}.auth-wizard-actions .primary-button{min-width:0;flex:1}}
@media(max-width:430px){.auth-wizard-shell .auth-register-card{padding:20px 17px}.auth-register-header .auth-heading h1{font-size:26px}.auth-progress{margin-bottom:20px}.auth-wizard-actions{margin-left:-17px;margin-right:-17px;padding-left:17px;padding-right:17px}.auth-wizard-actions .secondary-button{min-width:76px}.auth-step-title h2{font-size:22px}}


/* NESISE 7.0.4 — unified premium authentication experience */
.auth-body{
    --auth-green:#123f32;
    --auth-green-2:#176f48;
    --auth-accent:#46d68f;
    --auth-ink:#17231d;
    --auth-muted:#6d7771;
    --auth-border:#dfe7e2;
    display:grid;
    place-items:center;
    min-height:100dvh;
    height:100dvh;
    padding:28px;
    overflow:hidden;
    background:
      radial-gradient(circle at 10% 8%,rgba(70,214,143,.10),transparent 28%),
      linear-gradient(145deg,#f7faf8 0%,#edf3ef 100%);
}
.auth-premium-shell{
    direction:rtl;
    width:min(1080px,100%);
    height:min(680px,calc(100dvh - 56px));
    max-height:none;
    display:grid;
    grid-template-columns:minmax(0,62%) minmax(320px,38%);
    overflow:hidden;
    border:1px solid rgba(23,63,50,.10);
    border-radius:26px;
    background:#fff;
    box-shadow:0 28px 80px rgba(18,63,50,.14);
}
.auth-premium-shell .auth-card{
    min-width:0;
    padding:44px 54px 34px;
    overflow:auto;
    scrollbar-width:thin;
    scrollbar-color:#c5d1ca transparent;
}
.auth-premium-shell .auth-card::-webkit-scrollbar{width:6px}
.auth-premium-shell .auth-card::-webkit-scrollbar-thumb{background:#c5d1ca;border-radius:999px}
.auth-form-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}
.auth-form-top .auth-logo{margin:0}
.auth-form-top .auth-logo img{height:36px;width:auto}
.auth-trial-note{display:inline-flex;align-items:center;min-height:30px;padding:6px 11px;border:1px solid #dbece2;border-radius:999px;background:#f3faf6;color:#176f48;font-size:12px;font-weight:800;white-space:nowrap}
.auth-premium-shell .auth-heading{margin:0 0 28px}
.auth-premium-shell .auth-heading>span{padding:0;background:transparent;color:#168451;font-size:12px;letter-spacing:.01em}
.auth-premium-shell .auth-heading h1{margin:8px 0 8px;font-size:34px;line-height:1.18;color:var(--auth-ink);letter-spacing:-.025em}
.auth-premium-shell .auth-heading p{max-width:530px;margin:0;color:var(--auth-muted);font-size:14px;line-height:1.75}
.auth-premium-shell .auth-card label{display:block;margin-bottom:18px;color:#27332d;font-size:13px;font-weight:800}
.auth-premium-shell .auth-card input,
.auth-premium-shell .auth-card select{height:48px;margin-top:8px;border:1px solid var(--auth-border);border-radius:12px;background:#fff;color:#17231d;box-shadow:none}
.auth-premium-shell .auth-card input:hover,
.auth-premium-shell .auth-card select:hover{border-color:#c7d5cd}
.auth-premium-shell .auth-card input:focus,
.auth-premium-shell .auth-card select:focus{border-color:#31b875;box-shadow:0 0 0 4px rgba(49,184,117,.10)}
.auth-premium-shell .password-field{margin-top:8px}
.auth-premium-shell .password-field input{margin-top:0}
.auth-premium-shell .auth-options{margin:0 0 22px;align-items:center}
.auth-premium-shell .check-option{color:#4d5852;font-size:13px;font-weight:600!important}
.auth-premium-shell .check-option input{accent-color:#176f48}
.auth-premium-shell .auth-options>a,.auth-premium-shell .auth-link a{color:#176f48;text-decoration:none;font-weight:800}
.auth-premium-shell .auth-submit-button,
.auth-premium-shell .primary-button{height:48px;border-radius:12px;background:#161d19;color:#fff;box-shadow:none;font-size:14px;font-weight:800}
.auth-premium-shell .auth-submit-button:hover,
.auth-premium-shell .primary-button:hover{background:#0e1511;transform:translateY(-1px)}
.auth-premium-shell .secondary-button{height:48px;border-radius:12px;background:#fff;border:1px solid #dfe7e2;color:#26322c}
.auth-premium-shell .auth-link{margin:20px 0 0;padding-top:18px;border-top:1px solid #edf1ee;color:#77817b;text-align:center;font-size:13px}
.auth-premium-side{
    position:relative;
    display:flex!important;
    flex-direction:column;
    align-items:stretch;
    justify-content:space-between;
    min-height:0;
    padding:38px 36px;
    overflow:hidden;
    background:var(--auth-green);
    color:#fff;
}
.auth-premium-side::before{content:"";position:absolute;width:330px;height:330px;top:-190px;right:-150px;border-radius:50%;background:rgba(255,255,255,.055)}
.auth-premium-side::after{content:"";position:absolute;width:210px;height:210px;bottom:-130px;left:-100px;border:1px solid rgba(255,255,255,.07);border-radius:50%}
.auth-premium-side>*{position:relative;z-index:1}
.auth-premium-side .auth-side-logo{display:block;margin:0}
.auth-premium-side .auth-side-logo img{height:34px;max-width:155px;filter:brightness(0) invert(1)}
.auth-premium-side .auth-side-copy{margin:auto 0 26px}
.auth-premium-side .auth-side-badge{padding:6px 10px;border:1px solid rgba(255,255,255,.17);background:rgba(255,255,255,.07);color:#e5fff0;font-size:11px}
.auth-premium-side h2{margin:16px 0 13px;color:#fff!important;font-size:31px;line-height:1.25;letter-spacing:-.025em}
.auth-premium-side p{max-width:300px;margin:0;color:rgba(255,255,255,.78)!important;font-size:14px;line-height:1.8}
.auth-benefit-list{display:grid;gap:0;margin:0;padding:0;list-style:none}
.auth-benefit-list li{display:grid;grid-template-columns:78px 1fr;gap:12px;align-items:center;padding:12px 0;border-top:1px solid rgba(255,255,255,.12)}
.auth-benefit-list b{color:#6ce2a8;font-size:12px}
.auth-benefit-list span{color:rgba(255,255,255,.76);font-size:12px;line-height:1.45}

/* Login receives the same visual system instead of the legacy layout. */
.auth-login-shell{width:min(960px,100%);height:min(620px,calc(100dvh - 56px));grid-template-columns:minmax(0,58%) minmax(330px,42%)}
.auth-login-card{display:flex;flex-direction:column;justify-content:center;padding-left:62px!important;padding-right:62px!important}
.auth-login-card .auth-heading h1{font-size:36px}

/* Registration wizard polish */
.auth-wizard-shell{width:min(1100px,100%);height:min(700px,calc(100dvh - 56px));min-height:0;max-height:none;grid-template-columns:minmax(0,64%) minmax(330px,36%)}
.auth-wizard-shell .auth-register-card{height:100%;padding:34px 46px 24px;overflow:hidden}
.auth-register-header{display:block;margin:0 0 18px}
.auth-register-header .auth-form-top{margin-bottom:20px}
.auth-register-header .auth-heading{margin:0}
.auth-register-header .auth-heading h1{font-size:31px}
.auth-progress{margin:0 0 24px;padding:12px 14px;border-color:#e4ebe7;border-radius:12px;background:#f8faf9}
.auth-progress-item{font-size:12px}
.auth-progress-item b{width:24px;height:24px}
.auth-wizard-step{min-height:0;flex:1;overflow:auto;padding:2px 2px 0;scrollbar-width:thin;scrollbar-color:#cad5ce transparent}
.auth-wizard-step.is-active{display:flex}
.auth-step-title{margin-bottom:18px}
.auth-step-title h2{font-size:25px}
.auth-step-title p{font-size:13px}
.auth-wizard-step .form-grid{gap:14px}
.auth-wizard-step .password-rules{grid-template-columns:repeat(2,1fr);gap:6px 12px}
.auth-wizard-actions{position:sticky;bottom:0;z-index:3;margin-top:auto;padding:16px 0 0;background:#fff;border-top:1px solid #edf1ee}
.auth-wizard-actions .primary-button,.auth-wizard-actions .secondary-button{height:46px}
.auth-module-grid-wizard .auth-module-option>span{min-height:84px;border-radius:12px;background:#fbfcfb}
.auth-module-grid-wizard .auth-module-option>input:checked+span{border-color:#69ba8f;background:#f2faf6}
.auth-wizard-side{padding:38px 34px}

@media(max-width:900px){
    .auth-body{padding:16px;overflow:auto;height:auto;min-height:100dvh}
    .auth-premium-shell,.auth-login-shell,.auth-wizard-shell{display:block;width:min(650px,100%);height:auto;min-height:0;max-height:none;border-radius:22px}
    .auth-premium-side{display:none!important}
    .auth-premium-shell .auth-card,.auth-login-card,.auth-wizard-shell .auth-register-card{height:auto;overflow:visible;padding:30px 28px!important}
    .auth-wizard-step{overflow:visible}
    .auth-wizard-actions{position:static}
}
@media(max-width:520px){
    .auth-body{padding:0;background:#fff}
    .auth-premium-shell,.auth-login-shell,.auth-wizard-shell{width:100%;min-height:100dvh;border:0;border-radius:0;box-shadow:none}
    .auth-premium-shell .auth-card,.auth-login-card,.auth-wizard-shell .auth-register-card{min-height:100dvh;padding:24px 18px!important}
    .auth-form-top{margin-bottom:25px}
    .auth-form-top .auth-logo img{height:32px}
    .auth-trial-note{font-size:10px;padding:5px 8px}
    .auth-premium-shell .auth-heading h1,.auth-login-card .auth-heading h1{font-size:29px}
    .auth-progress-item span{display:none}
    .auth-progress-line{margin:0 7px}
    .auth-password-grid,.auth-module-grid-wizard{grid-template-columns:1fr}
    .auth-wizard-step .password-rules{grid-template-columns:1fr}
    .auth-wizard-actions{position:sticky;bottom:-24px;margin:14px -18px -24px;padding:14px 18px;background:#fff}
}


/* NESISE 7.0.5 — refined authentication composition */
.auth-premium-shell{
    width:min(980px,calc(100vw - 56px));
    height:auto;
    min-height:590px;
    max-height:calc(100dvh - 56px);
    grid-template-columns:minmax(0,60%) minmax(300px,40%);
}
.auth-premium-shell .auth-card{padding:38px 46px 30px;overflow:auto}
.auth-login-shell{width:min(920px,calc(100vw - 56px));min-height:560px;grid-template-columns:minmax(0,59%) minmax(300px,41%)}
.auth-login-card{padding:38px 48px!important;justify-content:center}
.auth-login-card .auth-form-top{margin-bottom:24px}
.auth-login-card .auth-heading{margin-bottom:24px}
.auth-login-card .auth-heading h1{font-size:34px}
.auth-premium-side{padding:34px 30px}
.auth-premium-side .auth-side-copy{margin:auto 0 22px}
.auth-premium-side h2{font-size:28px;line-height:1.25}
.auth-premium-side p{font-size:13px;line-height:1.75}
.auth-benefit-list li{padding:10px 0}
.auth-wizard-shell{width:min(1040px,calc(100vw - 56px));min-height:620px;height:min(650px,calc(100dvh - 56px));grid-template-columns:minmax(0,64%) minmax(300px,36%)}
.auth-wizard-shell .auth-register-card{padding:30px 40px 22px}
.auth-register-header .auth-form-top{margin-bottom:16px}
.auth-register-header .auth-heading h1{font-size:29px}
.auth-register-header .auth-heading p{font-size:13px}
.auth-progress{margin-bottom:20px;padding:10px 12px}
.auth-wizard-step{padding-inline:0}
.auth-step-title{margin-bottom:16px}
.auth-step-title h2{font-size:23px}
.auth-wizard-actions{padding-top:14px}
.auth-recovery-shell{width:min(880px,calc(100vw - 56px));min-height:520px;grid-template-columns:minmax(0,58%) minmax(290px,42%)}
.auth-recovery-card{display:flex;flex-direction:column;justify-content:center;padding:40px 48px!important}
.auth-recovery-card .auth-heading{margin-bottom:24px}
.auth-recovery-card .auth-heading h1{font-size:33px}
.auth-recovery-side h2{font-size:27px}
.auth-reset-shell{min-height:610px}
.auth-reset-shell .auth-recovery-card{justify-content:flex-start;padding-top:34px!important;padding-bottom:28px!important;overflow:auto}
.auth-reset-shell .password-rules{grid-template-columns:1fr 1fr;gap:7px 14px;margin:10px 0 18px}
@media(max-width:900px){
  .auth-premium-shell,.auth-login-shell,.auth-wizard-shell,.auth-recovery-shell{width:min(620px,100%);max-height:none;min-height:0}
  .auth-recovery-card{padding:30px 28px!important}
}
@media(max-width:520px){
  .auth-premium-shell,.auth-login-shell,.auth-wizard-shell,.auth-recovery-shell{width:100%;min-height:100dvh}
  .auth-recovery-card{min-height:100dvh;padding:24px 18px!important;justify-content:flex-start}
  .auth-reset-shell .password-rules{grid-template-columns:1fr}
}


/* NESISE 7.0.6 — side hero circle alignment refinement */
.auth-premium-side{
  padding:32px 28px 30px;
  justify-content:flex-start;
}
.auth-premium-side::before{
  top:26px;
  left:26px;
  right:auto;
  width:188px;
  height:188px;
  border-radius:50%;
  background:rgba(70,214,143,.88);
}
.auth-premium-side::after{
  top:auto;
  right:auto;
  bottom:-74px;
  left:-74px;
  width:168px;
  height:168px;
  border:1px solid rgba(255,255,255,.08);
}
.auth-premium-side .auth-side-logo{
  align-self:flex-start;
  margin-bottom:34px;
}
.auth-premium-side .auth-side-logo img{
  position:relative;
  z-index:2;
  height:32px;
  max-width:142px;
}
.auth-premium-side .auth-side-copy{
  margin:0 0 22px;
  padding-top:138px;
}
.auth-premium-side .auth-side-badge{
  position:relative;
  z-index:2;
}
.auth-premium-side h2{
  max-width:260px;
}
.auth-premium-side p{
  max-width:255px;
}
@media(max-width:900px){
  .auth-premium-side .auth-side-copy{padding-top:0;}
}


/* NESISE 7.0.7 — checkbox alignment fix */
.check-option{
  display:inline-flex!important;
  flex-direction:row-reverse;
  align-items:flex-start;
  justify-content:flex-end;
  gap:10px;
  width:auto;
  max-width:100%;
  text-align:right;
}
.check-option span{
  display:block;
  line-height:1.55;
}
.check-option input{
  flex:0 0 18px;
  width:18px;
  height:18px;
  min-width:18px;
  margin:2px 0 0;
  padding:0;
}
.auth-options .check-option{
  align-items:center;
}
.auth-options .check-option input{
  margin-top:0;
}
.consent-option{
  width:100%;
  justify-content:flex-start;
}


/* NESISE 7.0.8 — mobile registration scroll fix */
@media(max-width:900px){
  body.auth-register-body{
    height:100dvh;
    min-height:100dvh;
    overflow:hidden;
    padding:0;
    display:block;
  }
  .auth-register-body .auth-wizard-shell{
    width:100%;
    height:100dvh;
    min-height:100dvh;
    max-height:100dvh;
    margin:0;
    border:0;
    border-radius:0;
    box-shadow:none;
    overflow:hidden;
  }
  .auth-register-body .auth-wizard-shell .auth-register-card{
    display:block;
    width:100%;
    height:100dvh;
    min-height:0;
    max-height:100dvh;
    overflow-y:auto!important;
    overflow-x:hidden;
    overscroll-behavior-y:contain;
    -webkit-overflow-scrolling:touch;
    padding:24px 18px 96px!important;
  }
  .auth-register-body .auth-wizard-step,
  .auth-register-body .auth-wizard-step.is-active{
    min-height:0;
    overflow:visible;
  }
  .auth-register-body .auth-wizard-actions{
    position:static;
    margin-top:24px;
    padding:16px 0 0;
    background:#fff;
  }
}

/* NESISE 7.1.0 — trial lifecycle banner */
.trial-lifecycle-banner{position:sticky;top:0;z-index:120;display:flex;align-items:center;justify-content:center;gap:12px;padding:9px 18px;background:#fff5d9;border-bottom:1px solid #ebcc78;color:#654b0b;font-size:13px}.trial-lifecycle-banner strong{font-size:13px}.trial-lifecycle-banner a{color:#176f48;font-weight:800}.trial-lifecycle-banner.is-grace{background:#fff0f0;border-color:#e6a2a2;color:#7f2222}@media(max-width:650px){.trial-lifecycle-banner{position:relative;flex-wrap:wrap;text-align:center;gap:5px 10px;padding:8px 12px}}


/* NESISE 7.1.3 — clearer trial extension controls */
.platform-trial-remaining{display:block;margin-top:5px;color:#68758a;font-size:11px;font-weight:600;white-space:nowrap}
.platform-inline-action select:invalid{color:#7a8596}
.platform-inline-action select option{color:#172033}

/* Legal documents */
.legal-document{max-width:980px}.legal-document .auth-logo{display:flex;justify-content:center;margin-bottom:24px}.legal-document h1{margin:0 0 8px;text-align:center}.legal-document h2{margin:34px 0 10px;font-size:23px;color:#14231b}.legal-document h3{margin:22px 0 7px;font-size:17px;color:#263c31}.legal-document p,.legal-document li{line-height:1.85;color:#526059}.legal-document ul{margin:8px 0 18px;padding-right:24px}.legal-document li{margin:5px 0}.legal-updated{text-align:center!important;font-size:13px}.legal-notice{margin:24px 0;padding:17px 20px;border:1px solid #cfe7d8;border-radius:14px;background:#f0faf4;line-height:1.8;color:#204c35}.legal-toc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;margin:24px 0;padding:20px;border:1px solid #e1e9e4;border-radius:16px;background:#fafcfb}.legal-toc strong{grid-column:1/-1;margin-bottom:4px}.legal-toc a{color:#176f48;font-weight:700;text-decoration:none}.legal-toc a:hover{text-decoration:underline}.legal-document section{scroll-margin-top:20px;border-top:1px solid #edf1ee}.legal-document section:first-of-type{border-top:0}.legal-document code{direction:ltr;unicode-bidi:isolate;padding:2px 6px;border-radius:6px;background:#eef3f0}.legal-back{display:inline-flex;margin-top:28px}
@media(max-width:700px){.legal-body{padding:12px}.legal-card{padding:24px 18px;border-radius:16px}.legal-document h1{font-size:27px}.legal-document h2{font-size:20px}.legal-toc{grid-template-columns:1fr;padding:16px}.legal-toc strong{grid-column:auto}}
