/* GESTORA 2026 visual layer. Accounting behavior remains unchanged. */
:root {
    --ink: #102a43;
    --muted: #627d82;
    --emerald: #087f68;
    --emerald-dark: #05584b;
    --teal: #19a78e;
    --blue: #4f7cff;
    --violet: #8b6fd6;
    --amber: #f3a64a;
    --rose: #e45b78;
    --cyan: #28a9c7;
    --surface: rgba(255,255,255,.94);
    --line: #d9e7e4;
    --shadow: 0 16px 42px rgba(16,42,67,.09);
}

html { background: #f3f8f7; }
body {
    color: var(--ink);
    background:
        radial-gradient(circle at 76% 4%, rgba(79,124,255,.08), transparent 24rem),
        radial-gradient(circle at 36% 34%, rgba(25,167,142,.08), transparent 30rem),
        #f4f8f7;
}

.content { position: relative; }
.content::before {
    content: "";
    position: fixed;
    inset: 0 0 auto 255px;
    height: 5px;
    background: linear-gradient(90deg, var(--emerald), var(--teal), var(--blue), var(--violet), var(--amber));
    z-index: 20;
}

.page-head { margin-bottom: 28px; }
.page-head h1 { letter-spacing: -.035em; outline: 0; }
.page-head > div > p:last-child { max-width: 720px; }
.eyebrow { letter-spacing: .18em; color: var(--emerald); }

.panel, .metric {
    border-color: rgba(160,190,185,.46);
    background: var(--surface);
    box-shadow: var(--shadow);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.panel:hover, .metric:hover {
    border-color: rgba(25,167,142,.38);
    box-shadow: 0 20px 52px rgba(16,42,67,.12);
}
.button {
    border-radius: 12px;
    font-weight: 800;
    transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}
.button:hover { transform: translateY(-2px); box-shadow: 0 9px 22px rgba(8,127,104,.18); }
.button.primary { background: linear-gradient(135deg, var(--emerald), #079b7f); border: 0; }
.button.light { background: #fff; color: var(--emerald-dark); border: 0; }
.button.glass { color: #fff; background: rgba(255,255,255,.13); border-color: rgba(255,255,255,.35); }

.dashboard-hero {
    color: #fff;
    padding: 34px 36px;
    border-radius: 24px;
    overflow: hidden;
    background:
        radial-gradient(circle at 88% 20%, rgba(255,255,255,.18) 0 80px, transparent 81px),
        radial-gradient(circle at 88% 20%, transparent 0 115px, rgba(255,255,255,.1) 116px 145px, transparent 146px),
        linear-gradient(120deg, #075649, #087f68 54%, #38a882);
    box-shadow: 0 24px 56px rgba(5,88,75,.23);
}
.dashboard-hero .eyebrow, .dashboard-hero p { color: rgba(255,255,255,.78); }
.dashboard-hero h1 { color: #fff; }

.cards { gap: 16px; }
.metric {
    position: relative;
    display: flex;
    align-items: center;
    gap: 14px;
    overflow: hidden;
    border-top: 4px solid var(--metric-color);
}
.metric::after {
    content: "";
    position: absolute;
    width: 85px; height: 85px;
    right: -34px; bottom: -38px;
    border-radius: 50%;
    background: var(--metric-soft);
}
.metric > div { min-width: 0; display: grid; }
.metric-icon {
    display: grid;
    flex: 0 0 42px;
    height: 42px;
    place-items: center;
    border-radius: 13px;
    color: var(--metric-color);
    background: var(--metric-soft);
    font: 800 18px/1 system-ui;
}
.metric strong { color: var(--ink); }
.metric-assets { --metric-color: var(--blue); --metric-soft: #e8efff; }
.metric-liabilities { --metric-color: var(--amber); --metric-soft: #fff1dc; }
.metric-equity { --metric-color: var(--violet); --metric-soft: #f0ebff; }
.metric-profit { --metric-color: var(--emerald); --metric-soft: #ddf5ed; }

.dashboard-panel { position: relative; overflow: hidden; }
.dashboard-panel::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 4px;
}
.equation-panel::before { background: linear-gradient(90deg, var(--blue), var(--violet)); }
.performance-panel::before { background: linear-gradient(90deg, var(--teal), var(--emerald)); }
.equation {
    background: linear-gradient(120deg, #f0f5ff, #f2fbf8);
    border: 1px solid #e1ebe9;
}
.revenue-row strong { color: var(--blue); }
.expense-row strong { color: var(--rose); }

.workflow {
    display: grid;
    grid-template-columns: minmax(240px,.8fr) minmax(500px,1.6fr);
    align-items: center;
    gap: 32px;
    background: linear-gradient(125deg, #fff, #f0faf7);
}
.workflow-copy small { color: var(--muted); }
.steps { margin: 0; }
.steps span { display: inline-flex; align-items: center; gap: 8px; background: #fff; border: 1px solid var(--line); box-shadow: 0 7px 17px rgba(16,42,67,.06); }
.steps b { display: grid; place-items: center; width: 23px; height: 23px; border-radius: 8px; color: #fff; background: var(--emerald); font-size: 11px; }

.company-card { position: relative; overflow: hidden; padding-top: 30px; }
.company-card::before { content:""; position:absolute; inset:0 0 auto; height:7px; background:var(--country-gradient); }
.company-card::after { content:""; position:absolute; width:120px; height:120px; right:-50px; top:-50px; border-radius:50%; background:var(--country-soft); }
.country-ec { --country-gradient: linear-gradient(90deg,#ffd447,#4f7cff,#e45b78); --country-soft:#edf2ff; }
.country-th { --country-gradient: linear-gradient(90deg,#e45b78,#fff,#4f7cff); --country-soft:#fff0f3; }
.company-card-head { display:flex; align-items:center; justify-content:space-between; position:relative; z-index:1; }
.country-mark { display:grid; place-items:center; width:48px; height:48px; border-radius:15px; color:var(--emerald-dark); background:#e6f5f1; font-weight:900; }
.tax-id { color:var(--muted); }
.company-card dl { padding:16px; border-radius:14px; background:#f7faf9; }
.company-open { justify-content:space-between; min-width:155px; }

.account-type { border: 0; }
.type-asset { color:#315fc5; background:#e7efff; }
.type-liability { color:#a85c05; background:#fff0d6; }
.type-equity { color:#674bb2; background:#eee8ff; }
.type-revenue { color:#08705d; background:#dff5ed; }
.type-expense { color:#b33f5c; background:#ffe5ec; }

.table-panel { overflow: hidden; }
table thead { background: linear-gradient(90deg,#f2f8f7,#f5f7ff); }
table tbody tr { transition: background .16s ease, transform .16s ease; }
table tbody tr:hover { background:#f1faf7; }
table tfoot { background:#eef6f4; }
.code { color:var(--emerald); }

.ledger-card { position:relative; overflow:hidden; }
.ledger-card::before { content:""; position:absolute; inset:0 auto 0 0; width:6px; background:var(--account-color); }
.ledger-asset { --account-color:var(--blue); }
.ledger-liability { --account-color:var(--amber); }
.ledger-equity { --account-color:var(--violet); }
.ledger-revenue { --account-color:var(--teal); }
.ledger-expense { --account-color:var(--rose); }
.ledger-identity { display:flex; align-items:center; gap:14px; }
.account-dot { width:14px; height:14px; border-radius:50%; background:var(--account-color); box-shadow:0 0 0 7px color-mix(in srgb,var(--account-color) 14%,transparent); }
.ledger-identity small { color:var(--muted); }
.balance-value { padding:10px 14px; border-radius:12px; background:#edf7f4; }

.profit-loss-statement { display:grid; gap:18px; }
.statement-section { padding:22px; border-radius:18px; }
.statement-section h2 { display:flex; align-items:center; gap:10px; }
.revenue-section { background:linear-gradient(130deg,#eef5ff,#f8fbff); border:1px solid #dbe6ff; }
.expense-section { background:linear-gradient(130deg,#fff1f4,#fffafa); border:1px solid #ffdce4; }
.section-icon { display:grid; place-items:center; width:36px; height:36px; border-radius:11px; color:#fff; background:var(--blue); font:800 17px/1 system-ui; }
.expense-section .section-icon { background:var(--rose); }
.profit-total { font-size:1.08rem; background:linear-gradient(90deg,#def5ed,#edf7ff); border:1px solid #ccebe2; }

.statements > .panel:first-child { border-top:5px solid var(--blue); }
.statements > .panel:last-child { border-top:5px solid var(--violet); }
.grand-total { border-radius:12px; }

.catalog-row { border-radius:14px; padding:15px; transition:background .18s ease, transform .18s ease; }
.catalog-row:hover { background:#f0f8f6; transform:translateX(3px); }
.type-icon { background:linear-gradient(135deg,#dff5ed,#e8efff); color:var(--emerald); }
.form-panel { border-top:5px solid var(--teal); }

.empty, .empty-state {
    min-height:120px;
    display:grid;
    place-items:center;
    text-align:center;
    border-radius:16px;
    color:var(--muted);
    background:radial-gradient(circle at 50% 20%,#e7f7f2,transparent 9rem),#fafcfb;
}
.alert { border-radius:14px; border-left-width:5px; box-shadow:0 8px 20px rgba(16,42,67,.05); }

input, select {
    border-radius:11px !important;
    transition:border-color .18s ease, box-shadow .18s ease;
}
input:focus, select:focus { border-color:var(--teal) !important; box-shadow:0 0 0 4px rgba(25,167,142,.12); outline:0; }

@media (max-width: 1050px) {
    .workflow { grid-template-columns:1fr; }
    .steps { display:grid; grid-template-columns:1fr; }
    .steps i { transform:rotate(90deg); text-align:center; }
}
@media (max-width: 760px) {
    .content::before { left:0; }
    .dashboard-hero { padding:25px 22px; }
    .dashboard-hero .head-actions { width:100%; }
    .dashboard-hero .button { flex:1; }
    .metric { min-height:120px; }
    .ledger-card, .ledger-values { align-items:flex-start; }
    .ledger-values { width:100%; display:grid; grid-template-columns:repeat(3,1fr); }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}

/* GESTORA blue professional identity, authentication and access control */
:root {
    --brand-navy:#173b69;
    --brand-blue:#2f65ad;
    --brand-blue-2:#4e86d6;
    --brand-pale:#eef5ff;
    --emerald:var(--brand-blue);
    --emerald-dark:#102f59;
    --teal:#5b8fd1;
}
body {
    background:
        radial-gradient(circle at 77% 4%,rgba(47,101,173,.10),transparent 25rem),
        radial-gradient(circle at 34% 38%,rgba(78,134,214,.08),transparent 32rem),
        #f4f7fb;
}
.content::before{background:linear-gradient(90deg,#173b69,#2f65ad,#5798df,#91b9eb)}
.sidebar{background:linear-gradient(180deg,#fff 0%,#f7faff 58%,#eef4fb 100%);border-color:#d9e4f2}
.sidebar nav a:hover,.sidebar nav a.active{color:#173b69;background:#eaf3ff;box-shadow:inset 4px 0 #2f65ad}
.nav-icon,.eyebrow{color:#2f65ad!important}
.brand{display:grid;justify-items:center;gap:7px;padding:2px 8px 18px}
.brand-logo{display:block;width:146px;height:70px;object-fit:contain}
.brand-caption{font-size:9px;letter-spacing:.04em;color:#6d829c;text-align:center}
.dashboard-hero,.profitability-head{background:linear-gradient(120deg,#173b69,#2f65ad 56%,#5b93d5)}
.button.primary,.company-pill.selected{background:linear-gradient(135deg,#173b69,#3979c6)}

/* Equal internal columns keep all four primary values on one baseline. */
.profitability-metrics{align-items:stretch}
.profitability-metrics .metric-button{
    display:grid;
    grid-template-columns:minmax(58px,.55fr) minmax(125px,1.25fr) minmax(100px,1fr) minmax(84px,.7fr);
    grid-template-rows:1fr;
    align-items:center;
    gap:12px;
    min-height:118px;
    padding:18px 20px;
}
.profitability-metrics .metric-button>span:first-child{align-self:center}
.profitability-metrics .metric-button>strong{align-self:center;margin:0;line-height:1.05;font-variant-numeric:tabular-nums}
.profitability-metrics .metric-button>small{align-self:center;line-height:1.35}
.profitability-metrics .metric-link{align-self:center;position:relative;z-index:2}
.metric-button.is-open{
    color:#fff!important;
    border-color:#173b69!important;
    background:linear-gradient(135deg,#173b69,#2f65ad)!important;
    box-shadow:0 0 0 4px rgba(47,101,173,.22),0 20px 42px rgba(23,59,105,.2)!important;
}
.metric-button.is-open>*{color:#fff!important}

.user-menu{display:flex;align-items:center;gap:10px;margin-left:12px;padding-left:14px;border-left:1px solid #d9e4f2}
.user-menu>img,.user-menu>span,.user-avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;object-fit:cover;background:#e5effb;color:#173b69;font-weight:900}
.user-menu div{min-width:90px}.user-menu div strong{font-size:12px}.user-menu div a{font-size:10px;color:#2f65ad}
.user-menu form button{border:0;background:transparent;color:#6b7c91;font-weight:700;cursor:pointer}

.auth-shell{min-height:100vh;display:grid;place-items:center;padding:32px 20px;background:radial-gradient(circle at 50% 30%,#fff 0,#f4f8fd 46%,#eaf2fb 100%)}
.auth-content{width:100%;display:grid;place-items:center}
.auth-frame{width:min(548px,100%);padding:36px 42px 34px;border:1px solid #cddff2;border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(22,62,111,.12)}
.auth-brand{display:block;width:174px;margin:0 auto 26px;border-radius:14px;overflow:hidden}.auth-brand img{display:block;width:100%;height:auto}
.auth-card{width:100%;padding:0;border:0;background:transparent;box-shadow:none;text-align:center}
.auth-card h1{margin:0 0 8px;color:#123c79;font:700 34px/1.15 "Segoe UI",Arial,sans-serif;letter-spacing:-.02em}.auth-subtitle,.auth-switch{color:#607795}.auth-subtitle{margin:0}.auth-form{display:grid;gap:18px;margin:28px 0 18px;text-align:left}.auth-form label{font-size:13px;font-weight:800;color:#314f78}.auth-form input{min-height:52px;margin-top:8px;padding:13px 15px;border-color:#c9d9ed;border-radius:9px}.auth-form input::placeholder{color:#8a9bb2}.auth-form input:focus{outline:3px solid rgba(47,113,198,.16);border-color:#3678c5}.auth-form small{margin-top:-9px;color:#667e9d;line-height:1.55}.auth-form .button{width:100%;min-height:54px;padding:13px;border-radius:9px;font-size:16px;background:linear-gradient(90deg,#0b4298,#1465c0);border-color:#0d51aa;box-shadow:0 10px 24px rgba(17,79,164,.2)}.auth-switch{margin:16px 0 0;padding-top:18px;border-top:1px solid #e1e9f3;text-align:center}.auth-switch a{color:#1264c4;font-weight:800}.auth-card .alert{margin:22px 0 0;text-align:left;border:1px solid #f2c6cc}.field-guidance{display:block}
/* FocusOnNavigate focuses the heading for screen readers; it is not an interactive control. */
.auth-card h1:focus{outline:none}
.auth-register .auth-owner-note{display:flex;align-items:center;gap:12px;margin:20px 0 0;padding:12px 15px;border-radius:10px;background:#eaf3ff;color:#1852a1;font-size:13px;font-weight:700;text-align:left}
.auth-owner-icon{display:grid;place-items:center;flex:0 0 22px;width:22px;height:22px;border:2px solid currentColor;border-radius:50%;font:800 14px/1 Arial,sans-serif}
.auth-register .auth-form{gap:0;margin:20px 0 14px}
.auth-register .auth-form label{margin-bottom:7px;font-size:13px}
.auth-input-wrap{position:relative;margin-bottom:17px}
.auth-register .auth-form .auth-input-wrap input{height:48px;min-height:48px;margin:0;padding:10px 48px 10px 52px}
.auth-input-icon{position:absolute;top:50%;left:16px;width:22px;height:22px;color:#245396;transform:translateY(-50%);pointer-events:none}
.auth-password-toggle{position:absolute;top:50%;right:10px;display:grid;place-items:center;width:36px;height:36px;padding:6px;border:0;border-radius:7px;background:transparent;color:#245396;transform:translateY(-50%);cursor:pointer}
.auth-password-toggle:hover{background:#eef4fc}.auth-password-toggle:focus-visible{outline:3px solid rgba(47,113,198,.35);outline-offset:2px}.auth-password-toggle svg{width:22px;height:22px}
.auth-register .auth-form .field-guidance{margin:-11px 0 18px;font-size:11px;color:#59708f}
.auth-register .auth-form .button{margin-top:0}
.profile-card{max-width:850px}.profile-preview{display:flex;align-items:center;gap:20px;margin-bottom:28px}.profile-preview>img,.profile-preview>span{display:grid;place-items:center;width:92px;height:92px;border-radius:24px;object-fit:cover;background:#e5effb;color:#173b69;font-size:30px;font-weight:900}.profile-preview h2{margin:0 0 5px}.profile-preview p{margin:0;color:#718398}.profile-form{align-items:end}
.profile-remove{grid-column:1/-1;display:flex!important;align-items:center;gap:10px;font-weight:700!important;color:#51677f}.profile-remove input{width:18px;height:18px;margin:0}.profile-form button[type="submit"]{min-height:44px}
.permission-list{display:grid;gap:18px}.permission-card{padding:28px}.permission-user{display:flex;align-items:center;gap:14px}.permission-user h2{margin:0 0 4px}.permission-user p{margin:0;color:#718398}.owner-note{display:inline-flex;margin-top:20px;padding:10px 13px;border-radius:10px;background:#edf4ff;color:#244f86;font-weight:800}
.permission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.permission-toggle{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid #dce6f3;border-radius:12px;background:#f9fbfe}.permission-toggle input{width:auto;margin:3px 0}.permission-toggle strong,.permission-toggle small{display:block}.permission-toggle small{margin-top:4px;color:#75879b;font-size:10px}
.team-member-create{padding:0;overflow:hidden}.team-member-create>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 26px;cursor:pointer;list-style:none}.team-member-create>summary::-webkit-details-marker{display:none}.team-member-create>summary>span:first-child{display:grid;gap:5px}.team-member-create>summary small{color:var(--theme-muted,var(--muted));font-weight:500}.team-member-create[open]>summary{border-bottom:1px solid var(--theme-border,var(--line))}.team-member-create form{padding:26px}.team-permission-fieldset{margin:0 0 22px;padding:0;border:0}.team-permission-fieldset legend{font-weight:800;font-size:16px}.team-permission-fieldset>p{margin:5px 0 0;color:var(--theme-muted,var(--muted))}
.auth-password-change{max-width:540px}.password-security-icon{display:grid;place-items:center;width:48px;height:48px;margin:0 auto 14px;border-radius:50%;background:#e3f7ef;color:#087052;font-size:24px;font-weight:900}.auth-signout-form{display:flex;justify-content:center;margin-top:14px}.auth-signout-form .button{background:transparent;box-shadow:none}
.profile-security-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.profile-security-card h2{margin:4px 0 7px}.profile-security-card p{margin:0;color:var(--theme-muted,var(--muted))}@media(max-width:650px){.profile-security-card{align-items:flex-start;flex-direction:column}}
.offering-link-option{align-self:end}.offering-link-option>label{display:block;font-size:12px;color:var(--theme-muted,var(--muted));font-weight:700}.offering-link-option>small{display:block;margin-top:5px;color:var(--theme-muted,var(--muted));font-size:10px;line-height:1.35}
@media(max-width:1200px){.profitability-metrics .metric-button{grid-template-columns:minmax(45px,.5fr) minmax(100px,1.15fr) minmax(80px,.9fr) minmax(70px,.65fr);padding:15px 12px;gap:8px}.profitability-metrics .metric-button>strong{font-size:21px}.permission-grid{grid-template-columns:1fr 1fr}.user-menu div{display:none}}
@media(max-width:760px){.auth-shell{padding:20px 14px}.auth-frame{padding:28px 22px}.auth-brand{width:148px;margin-bottom:22px}.auth-card h1{font-size:30px}.permission-grid{grid-template-columns:1fr}.user-menu{margin-left:auto}.brand-logo{width:48px;height:48px}.brand-caption{display:none}}
@media(max-width:520px){.profitability-metrics .metric-button{grid-template-columns:1fr;grid-template-rows:18px 32px 38px 20px;align-items:start}.profitability-metrics .metric-button>*{align-self:start!important}}

/* -------------------------------------------------------------------------
   Version 4 — light command rail and executive-finance refinement
   ------------------------------------------------------------------------- */
:root {
    --brand-navy: #123b66;
    --brand-blue: #2f72c4;
    --brand-sky: #eaf3fc;
    --nav-text: #29445f;
    --nav-muted: #7d91a6;
}

.shell { grid-template-columns: 272px minmax(0,1fr); }
.sidebar {
    width: auto;
    padding: 22px 16px 18px;
    color: var(--nav-text);
    background:
        radial-gradient(circle at 18% 3%, rgba(69,148,210,.12), transparent 170px),
        linear-gradient(180deg,#ffffff 0%,#f8fbfd 55%,#f3f8fb 100%);
    border-right: 1px solid #dbe7ef;
    box-shadow: 8px 0 32px rgba(35,74,112,.055);
}
.brand {
    position: relative;
    gap: 13px;
    margin: 0 2px 22px;
    padding: 10px 10px 20px;
    color: var(--brand-navy);
    border-bottom: 1px solid #e2ebf1;
}
.brand:hover { color: var(--brand-navy); }
.brand > span:last-child { font-size: 16px; letter-spacing: .14em; }
.brand small {
    color: #63819c;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .045em;
}
.brand-mark {
    position: relative;
    display: grid;
    place-items: center;
    width: 43px;
    height: 43px;
    overflow: hidden;
    border-radius: 14px;
    color: #fff;
    background: linear-gradient(145deg,var(--brand-navy),var(--brand-blue));
    box-shadow: 0 9px 21px rgba(34,93,150,.24);
}
.brand-mark b { font: 800 22px/1 system-ui; transform: translateX(-2px); }
.brand-mark i {
    position: absolute;
    right: 8px;
    bottom: 10px;
    width: 3px;
    height: 8px;
    border-radius: 2px;
    background: #8fd6d0;
    box-shadow: -5px 3px 0 #c6e8f7,-10px 5px 0 rgba(255,255,255,.9);
}

.sidebar nav { gap: 4px; }
.sidebar nav a {
    position: relative;
    justify-content: flex-start;
    min-height: 43px;
    padding: 9px 11px;
    border: 1px solid transparent;
    border-radius: 12px;
    color: var(--nav-text);
    font-weight: 650;
}
.sidebar nav a::after {
    content: "";
    position: absolute;
    right: -17px;
    width: 4px;
    height: 0;
    border-radius: 4px 0 0 4px;
    background: linear-gradient(var(--brand-blue),var(--teal));
    transition: height .18s ease;
}
.sidebar nav a:hover {
    color: var(--brand-navy);
    background: rgba(234,243,252,.72);
    border-color: #e0eaf2;
    transform: none;
}
.sidebar nav a.active {
    color: #0e5c75;
    background: linear-gradient(100deg,#e7f3fb,#e8f8f4);
    border-color: #cee5ed;
    box-shadow: 0 8px 20px rgba(42,107,153,.10);
}
.sidebar nav a.active::after { height: 25px; }
.nav-icon {
    width: 28px;
    height: 28px;
    flex-basis: 28px;
    border-radius: 9px;
    color: #47708f;
    background: #edf4f8;
    font-size: 14px;
}
.sidebar nav a.active .nav-icon {
    color: #fff;
    background: linear-gradient(145deg,var(--brand-blue),var(--teal));
    box-shadow: 0 5px 13px rgba(43,122,157,.20);
}
.nav-label {
    margin-top: 8px;
    padding: 13px 12px 5px;
    color: var(--nav-muted);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
}
.sidebar-footer {
    margin-top: auto;
    padding: 17px 9px 2px;
    color: #58728b;
    border-top: 1px solid #dfe9ef;
}
.engine-status { display:flex; align-items:center; gap:10px; }
.engine-status > span:last-child { display:grid; line-height:1.25; }
.engine-status strong { color:var(--brand-navy); font-size:11px; }
.engine-status small { color:#7890a5; font-size:9px; }
.status-dot { box-shadow:0 0 0 5px rgba(25,167,142,.11); }

.content::before { left: 272px; }
.topbar {
    min-height: 72px;
    padding-inline: 34px;
    background: rgba(255,255,255,.94);
    border-bottom-color: #dce7ed;
    box-shadow: 0 8px 25px rgba(22,62,97,.045);
}
.active-country {
    color: var(--brand-navy);
    background: linear-gradient(145deg,#e6f2fb,#e5f5f0);
    border: 1px solid #d6e9ed;
}
.active-company strong { color:var(--brand-navy); }
.company-pill {
    color: #41627c;
    background: #f1f6f8;
    border: 1px solid #e0eaef;
}
.company-pill:hover { color:var(--brand-navy); background:#eaf3f8; border-color:#cfe0e8; }
.company-pill.selected,
.company-pill.selected:hover {
    color:#fff;
    background:linear-gradient(125deg,var(--brand-navy),#146d7c);
    border-color:transparent;
    box-shadow:0 6px 16px rgba(25,78,111,.18);
}
.company-switch-confirmation{max-width:760px;margin:clamp(24px,7vh,72px) auto;padding:clamp(24px,4vw,40px);border:1px solid var(--theme-border);border-radius:20px;background:var(--theme-surface);box-shadow:0 24px 60px rgba(19,59,105,.12)}
.company-switch-heading{display:flex;align-items:flex-start;gap:17px;margin-bottom:26px}
.company-switch-heading .eyebrow{margin:0 0 5px}
.company-switch-heading-icon{display:grid;place-items:center;flex:0 0 48px;width:48px;height:48px;border-radius:14px;background:var(--theme-accent-soft);color:var(--theme-accent-strong);font-size:27px;font-weight:700}
.company-switch-confirmation h1{margin:0;font:700 clamp(28px,4vw,38px)/1.15 Georgia,serif;color:var(--theme-text)}
.company-switch-confirmation h1:focus{outline:none}
.company-switch-confirmation p{line-height:1.55;color:var(--theme-muted)}
.company-switch-intro{margin:7px 0 0}
.company-switch-route{display:grid;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);align-items:center;gap:10px}
.company-switch-company{display:flex;flex-direction:column;gap:9px;min-width:0;min-height:126px;padding:19px;border:1px solid var(--theme-border);border-radius:14px;background:var(--theme-soft)}
.company-switch-company-label{color:var(--theme-muted);font-size:10px;font-weight:800;letter-spacing:.12em}
.company-switch-company strong{color:var(--theme-text);font-size:16px;line-height:1.3;overflow-wrap:anywhere}
.company-switch-company small{margin-top:auto;color:var(--theme-muted);font-size:12px;font-weight:700}
.company-switch-destination{border-color:var(--theme-accent);background:var(--theme-accent-soft);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent) 10%,transparent)}
.company-switch-destination .company-switch-company-label{color:var(--theme-accent-strong)}
.company-switch-arrow{display:grid;place-items:center;color:var(--theme-accent);font-size:25px;font-weight:700}
.company-switch-note{display:flex;align-items:flex-start;gap:10px;margin:22px 0 0;padding:13px 15px;border:1px solid var(--theme-border);border-radius:10px;background:var(--theme-soft);font-size:13px}
.company-switch-note>span:first-child{color:var(--theme-accent);font-size:18px;line-height:1.1}
.company-switch-actions{display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:12px;margin-top:25px}
.company-switch-actions form{margin:0}.company-switch-actions .button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:11px 16px;text-align:center}
.company-switch-actions .button.primary{box-shadow:0 10px 24px rgba(25,82,153,.18)}
@media(max-width:620px){.company-switch-route{grid-template-columns:1fr}.company-switch-arrow{transform:rotate(90deg)}.company-switch-company{min-height:0}.company-switch-actions,.company-switch-actions form,.company-switch-actions .button{width:100%}}
.period { color:#256d62; background:#e6f5f0; border:1px solid #d5ebe4; }

.dashboard-hero {
    background:
        radial-gradient(circle at 88% 20%,rgba(255,255,255,.16) 0 80px,transparent 81px),
        radial-gradient(circle at 88% 20%,transparent 0 115px,rgba(255,255,255,.08) 116px 145px,transparent 146px),
        linear-gradient(120deg,#123b66,#176f8e 52%,#20a184);
    box-shadow:0 24px 56px rgba(24,70,112,.20);
}
.button.primary { background:linear-gradient(135deg,#176f8e,#109a7e); }
.button:hover { box-shadow:0 9px 22px rgba(33,99,137,.18); }
.eyebrow { color:#15768a; }
.panel, .metric { box-shadow:0 14px 38px rgba(25,64,96,.075); }
.panel:hover, .metric:hover {
    border-color:rgba(61,134,168,.33);
    box-shadow:0 20px 50px rgba(25,64,96,.11);
}

/* Restore financial-statement row structure after section wrappers. */
.statement-section > div {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:10px 0;
    border-bottom:1px solid rgba(122,151,169,.28);
}
.statement-section > div > span { min-width:0; }
.statement-section > div > strong {
    flex:0 0 auto;
    text-align:right;
    font-variant-numeric:tabular-nums;
}
.statement-section > .subtotal {
    margin-top:2px;
    border-top:1px solid #6e879b;
    border-bottom:0;
    font-size:1.03rem;
}
.profit-total { padding:16px !important; }

/* More refined report and configuration surfaces. */
.table-panel table { font-variant-numeric:tabular-nums; }
.table-panel th { color:#5a7388; }
.table-panel tbody tr:nth-child(even) { background:rgba(246,250,252,.72); }
.table-panel tbody tr:hover { background:#edf7f7; }
.statement.panel { overflow:hidden; }
.statements > .panel:first-child { border-top-color:#3c82d4; }
.statements > .panel:last-child { border-top-color:#7d67cf; }
.catalog-row { border:1px solid transparent; }
.catalog-row:hover { border-color:#d7e8ec; }
.alert.warning { color:#8b5700; background:#fff7e7; border-color:#f4d69a; }
.empty {
    min-height:130px;
    color:#6a8297;
    border:1px dashed #d4e3e9;
}

@media (max-width: 1000px) and (min-width: 701px) {
    .shell { grid-template-columns: 88px minmax(0,1fr); }
    .sidebar { padding: 20px 11px; }
    .brand { justify-content:center; padding-inline:0; }
    .brand > span:last-child,.sidebar nav a > span:last-child,.sidebar-footer,.nav-label { display:none; }
    .sidebar nav a { justify-content:center; padding:8px; }
    .sidebar nav a::after { right:-12px; }
    .content::before { left:88px; }
}
@media (max-width: 700px) {
    .shell { display:block; }
    .sidebar {
        width:min(320px,88vw);
        padding:22px 16px;
        box-shadow:20px 0 55px rgba(22,57,87,.22);
    }
    .brand > span:last-child,.sidebar nav a > span:last-child,.sidebar-footer,.nav-label { display:block; }
    .sidebar nav a { justify-content:flex-start; }
    .content::before { left:0; }
    .menu-button { color:var(--brand-navy); background:#eaf3f8; }
    .menu-backdrop { background:rgba(20,48,73,.38); }
}

/* Version 5: accessible contrast on branded dark surfaces.
   These selectors intentionally override the legacy global !important eyebrow color. */
.page-head.dashboard-hero .eyebrow,
.page-head.profitability-head .eyebrow {
    color: #d8fff6 !important;
    opacity: 1;
    text-shadow: 0 1px 1px rgba(0, 32, 52, .22);
}

.page-head.dashboard-hero > div > p:not(.eyebrow),
.page-head.profitability-head > div > p:not(.eyebrow) {
    color: #f4fffd !important;
    opacity: 1;
}

.page-head.dashboard-hero h1,
.page-head.profitability-head h1 {
    color: #fff !important;
}

.profitability-metrics .metric.accent {
    background: linear-gradient(135deg, #075a50, #0b7565);
    border-color: #0b7565;
    border-top-color: #36d0aa;
    color: #fff;
}

.profitability-metrics .metric.accent > span,
.profitability-metrics .metric.accent > small {
    color: #d8fff6 !important;
    opacity: 1;
}

.profitability-metrics .metric.accent > strong {
    color: #fff !important;
    text-shadow: 0 1px 1px rgba(0, 34, 29, .22);
}

.profitability-metrics .metric.accent::after {
    background: rgba(255, 255, 255, .09);
}

.profitability-metrics .metric.danger-card > span,
.profitability-metrics .metric.danger-card > small {
    color: #ffe8ec !important;
}

.profitability-metrics .metric.danger-card > strong {
    color: #fff !important;
}

/* Final blue-brand overrides */
.content::before{background:linear-gradient(90deg,#173b69,#2f65ad,#5798df,#91b9eb)}
.dashboard-hero,.profitability-head{background:linear-gradient(120deg,#173b69,#2f65ad 56%,#5b93d5)}
.button.primary,.company-pill.selected{background:linear-gradient(135deg,#173b69,#3979c6)}
.profitability-metrics .metric.accent{
    background:linear-gradient(135deg,#173b69,#2f65ad);
    border-color:#2f65ad;
    border-top-color:#84b4ec;
}
.profitability-metrics .metric-button.is-open{
    background:linear-gradient(135deg,#102f59,#3979c6)!important;
    border-color:#173b69!important;
}

/* Company selector and interactive profitability-card refinements */
.company-switch .period-status{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-left:5px;
    padding:3px 0 3px 12px;
    color:#256d62;
    border-left:1px solid #cfdee5;
    font-size:11px;
    font-weight:700;
    white-space:nowrap;
}
.profitability-metrics .metric-profit:not(.is-open):not(.danger-card){
    background:#fff;
    color:var(--ink);
}
.profitability-metrics .metric-button.is-open > *{
    color:#fff!important;
}
@media(max-width:650px){
    .company-switch .period-status{display:none}
}

/* Version 8: desktop navigation rail can fold and unfold. */
.shell,
.content::before,
.sidebar nav a,
.brand-logo {
    transition:
        background-color .15s ease;
}
.sidebar-fold-button {
    display:grid;
    place-items:center;
    flex:0 0 34px;
    width:34px;
    height:34px;
    margin-right:12px;
    padding:0;
    border:1px solid #cfdeea;
    border-radius:10px;
    color:var(--brand-navy);
    background:#f1f6fb;
    box-shadow:0 5px 14px rgba(32,78,119,.08);
    font:800 23px/1 "Segoe UI",sans-serif;
    cursor:pointer;
    transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease;
}
.sidebar-fold-button:hover {
    background:#e5f0fb;
    border-color:#a9c5df;
    box-shadow:0 7px 18px rgba(32,78,119,.14);
    transform:translateY(-1px);
}
.sidebar-fold-button:focus-visible {
    outline:3px solid rgba(47,114,196,.28);
    outline-offset:2px;
}
.shell.sidebar-collapsed {
    grid-template-columns:88px minmax(0,1fr);
}
.shell.sidebar-collapsed .sidebar {
    padding:20px 11px;
}
.shell.sidebar-collapsed .brand {
    justify-content:center;
    padding-inline:0;
}
.shell.sidebar-collapsed .brand-logo {
    width:58px;
    height:58px;
}
.shell.sidebar-collapsed .brand-caption,
.shell.sidebar-collapsed .sidebar nav a > span:last-child,
.shell.sidebar-collapsed .sidebar-footer,
.shell.sidebar-collapsed .nav-label {
    display:none;
}
.shell.sidebar-collapsed .sidebar nav a {
    justify-content:center;
    padding:8px;
}
.shell.sidebar-collapsed .sidebar nav a::after {
    right:-12px;
}
.shell.sidebar-collapsed .content::before {
    left:88px;
}

@media (max-width:700px) {
    .sidebar-fold-button { display:none; }
}
@media (max-width:700px) {
    .shell.sidebar-collapsed { display:block; }
    .shell.sidebar-collapsed .sidebar {
        width:min(320px,88vw);
        padding:22px 16px;
    }
    .shell.sidebar-collapsed .brand { justify-content:flex-start; padding-inline:10px; }
    .shell.sidebar-collapsed .brand-logo { width:146px; height:70px; }
    .shell.sidebar-collapsed .brand-caption,
    .shell.sidebar-collapsed .sidebar nav a > span:last-child,
    .shell.sidebar-collapsed .sidebar-footer,
    .shell.sidebar-collapsed .nav-label { display:block; }
    .shell.sidebar-collapsed .sidebar nav a { justify-content:flex-start; }
    .shell.sidebar-collapsed .content::before { left:0; }
}
@media (prefers-reduced-motion:reduce) {
    .shell,
    .content::before,
    .sidebar nav a,
    .brand-logo,
    .sidebar-fold-button { transition:none; }
}

/* Version 10: explicit, readable journal debit/credit totals. */
.journal-totals-row td {
    padding-block:12px;
    background:#f4f8fb;
    border-top:2px solid #c8dbe9;
}
.journal-totals-lead {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.journal-totals-lead > strong {
    color:#526e86;
    font-size:12px;
    letter-spacing:.04em;
    text-transform:uppercase;
}
.journal-total-cell span,
.journal-total-cell strong {
    display:block;
    white-space:nowrap;
}
.journal-total-cell span {
    margin-bottom:5px;
    color:#58738a;
    font-size:10px;
    font-weight:800;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.journal-total-cell strong {
    color:var(--brand-navy);
    font-size:15px;
    font-variant-numeric:tabular-nums;
}

/* Version 11: high-DPI/150% scaling and compact-desktop refinement. */
html, body { max-width:100%; overflow-x:hidden; }
.shell, .shell > main, .content, .topbar { min-width:0; max-width:100%; }
.table-panel, .line-editor { max-width:100%; overflow-x:auto; }
.journal-totals-row strong { font-variant-numeric:tabular-nums; }

@media (max-width:1350px) and (min-width:701px) {
    .shell { grid-template-columns:88px minmax(0,1fr); }
    .sidebar { padding:20px 11px; }
    .sidebar .brand { justify-content:center; padding-inline:0; }
    .sidebar .brand-logo { width:58px; height:58px; object-fit:contain; }
    .sidebar .brand-caption,
    .sidebar nav a > span:last-child,
    .sidebar .sidebar-footer,
    .sidebar .nav-label { display:none; }
    .sidebar nav a { justify-content:center; padding:8px; }
    .content::before { left:88px; }
    .sidebar-fold-button { display:grid; margin-right:0; }

    /* Expanded navigation participates in the layout so it cannot cover the
       application. Compact descendants reflow into the remaining space. */
    .shell.sidebar-expanded { grid-template-columns:272px minmax(0,1fr); }
    .shell.sidebar-expanded .sidebar {
        padding:26px 16px;
    }
    .shell.sidebar-expanded .sidebar .brand { justify-content:flex-start; padding-inline:10px; }
    .shell.sidebar-expanded .sidebar .brand-logo { width:146px; height:70px; }
    .shell.sidebar-expanded .sidebar .brand-caption,
    .shell.sidebar-expanded .sidebar nav a > span:last-child,
    .shell.sidebar-expanded .sidebar .sidebar-footer,
    .shell.sidebar-expanded .sidebar .nav-label { display:block; }
    .shell.sidebar-expanded .sidebar nav a { justify-content:flex-start; padding:9px 10px; }
    .shell.sidebar-expanded .content::before { left:272px; }

    .shell.sidebar-expanded .topbar {
        grid-template-columns:minmax(0,1fr) auto auto;
        padding-inline:16px;
    }
    .shell.sidebar-expanded .topbar .company-switch {
        grid-column:1/-1;
        grid-row:2;
        justify-content:flex-start;
        flex-wrap:nowrap;
        max-width:100%;
        overflow-x:auto;
        scrollbar-width:thin;
    }
    .shell.sidebar-expanded .dashboard-hero,
    .shell.sidebar-expanded .profitability-head {
        align-items:flex-start;
        flex-direction:column;
        gap:20px;
    }
    .shell.sidebar-expanded .dashboard-hero .head-actions,
    .shell.sidebar-expanded .profitability-head .head-actions { width:100%; }
    .shell.sidebar-expanded .dashboard-hero .head-actions .button,
    .shell.sidebar-expanded .profitability-head .head-actions .button {
        flex:1;
        text-align:center;
    }

    .topbar {
        display:grid;
        grid-template-columns:auto minmax(190px,.85fr) minmax(410px,1.65fr) auto;
        align-items:center;
        gap:10px 16px;
        min-height:88px;
        padding:10px 22px;
    }
    .active-company { min-width:0; }
    .active-company strong { font-size:14px; }
    .active-company small { font-size:11px; white-space:normal; }
    .company-switch { justify-content:center; gap:6px; }
    .company-pill, .period-status { padding:7px 10px; font-size:10px; }
    .user-menu { min-width:0; margin-left:0; }
    .user-menu > div { display:none; }
    .user-menu form button { padding-inline:6px; }

    .content { width:100%; padding:28px 26px; }
    .page-head h1 { font-size:clamp(30px,3.4vw,42px); }
    .dashboard-hero, .profitability-head { padding:28px 30px; }
    .dashboard-hero h1, .profitability-head h1 { font-size:clamp(36px,4.5vw,52px); }
    .grid.two { gap:16px; }
    .panel { padding:22px; }
    .form-panel { padding:24px; }
    th, td { padding-inline:13px; }
}

@media (max-width:1120px) and (min-width:701px) {
    .topbar { grid-template-columns:auto minmax(170px,.8fr) minmax(330px,1.4fr) auto; padding-inline:16px; }
    .active-company small { display:none; }
    .company-pill, .period-status { padding:6px 8px; }
    .cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .profitability-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .grid.two { grid-template-columns:1fr; }
}

@media (max-width:760px) {
    .journal-totals-lead { align-items:flex-start; flex-direction:column; }
    .journal-totals-row td { min-width:120px; }
}

/* Version 12: ChatGPT-style sidebar control lives above the GESTORA logo. */
.sidebar-brand-toggle{align-self:flex-end;flex:none;margin:0 4px 8px 0;border-color:transparent;background:transparent;box-shadow:none}
.sidebar-brand-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sidebar-brand-toggle:hover{background:#e9f1f8;border-color:#d5e2ee;box-shadow:none;transform:none}
.shell.sidebar-collapsed .sidebar-brand-toggle{align-self:center;margin-right:0}
@media (max-width:1350px) and (min-width:701px){.shell:not(.sidebar-expanded) .sidebar-brand-toggle{align-self:center;margin-right:0}}

.nav-hover-tooltip{
    position:fixed;
    z-index:10000;
    max-width:240px;
    padding:8px 11px;
    border-radius:8px;
    background:#101828;
    color:#fff;
    font-size:13px;
    font-weight:650;
    line-height:1.2;
    white-space:nowrap;
    pointer-events:none;
    opacity:0;
    transform:translateX(-4px);
    transition:opacity .12s ease,transform .12s ease;
    box-shadow:0 8px 24px rgba(15,35,64,.22);
}
.nav-hover-tooltip.visible{opacity:1;transform:translateX(0)}
@media (prefers-reduced-motion:reduce){.nav-hover-tooltip{transition:none}}

/* Version 15: preserve the accounting date while exposing the journal audit timeline. */
.table-note{
    display:block;
    margin-top:4px;
    color:#6b8295;
    font-size:10px;
    line-height:1.25;
    white-space:nowrap;
}
.journal-timestamps{min-width:215px;font-variant-numeric:tabular-nums}
.journal-timestamps>span{display:block;white-space:nowrap;line-height:1.45}
.journal-timestamps>span+span{margin-top:2px}
.journal-timestamps b{display:inline-block;min-width:58px;color:#58738a;font-size:10px;letter-spacing:.04em;text-transform:uppercase}
@media(max-width:760px){.journal-timestamps{min-width:210px}}

/* Version 16: calm, readable owner dashboard at common Windows scaling levels. */
.metric > div { width:100%; }
.metric strong {
    max-width:100%;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:clamp(21px,1.65vw,30px);
    font-variant-numeric:tabular-nums;
}
.profitability-metrics .metric-button > strong {
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    overflow-wrap:anywhere;
}
.sidebar { overflow-x:hidden; scrollbar-width:thin; }
.sidebar nav a { min-width:0; }
.sidebar nav a > span:last-child { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.page-head h1 { line-height:1.02; }
.dashboard-hero h1,.profitability-head h1 { max-width:760px; }
.table-panel { scrollbar-width:thin; }

@media (max-width:1500px) and (min-width:701px) {
    .cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dashboard-hero h1,.profitability-head h1 { font-size:clamp(32px,3vw,40px); }
    .dashboard-hero { align-items:center; }
    .dashboard-hero .head-actions { flex:0 0 auto; }
}

@media (max-width:950px) and (min-width:701px) {
    .topbar {
        grid-template-columns:minmax(0,1fr) auto auto;
        padding-inline:16px;
    }
    .topbar .company-switch {
        grid-column:1/-1;
        grid-row:2;
        justify-content:flex-start;
        overflow-x:auto;
        flex-wrap:nowrap;
        scrollbar-width:thin;
    }
    .dashboard-hero {
        align-items:flex-start;
        flex-direction:column;
        gap:20px;
    }
    .dashboard-hero .head-actions { width:100%; }
    .dashboard-hero .head-actions .button { flex:1; text-align:center; }
}

/* Version 22: guided first-run company setup. */
.getting-started {
    display:grid;
    grid-template-columns:minmax(170px,.7fr) minmax(0,2.3fr);
    gap:24px;
    align-items:center;
    margin:0 0 24px;
    padding:18px 22px;
    border:1px solid var(--theme-border,#d7e3ee);
    border-radius:16px;
    background:var(--theme-surface,#fff);
    box-shadow:0 10px 30px rgba(22,58,99,.06);
}
.getting-started-heading { display:grid; gap:4px; }
.getting-started-kicker { color:var(--theme-accent-strong,#1665bd); font-size:10px; font-weight:850; letter-spacing:.12em; }
.getting-started-heading strong { color:var(--theme-text,var(--brand-navy)); font-size:17px; }
.getting-started ol { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:0; padding:0; list-style:none; }
.getting-started li { position:relative; display:grid; grid-template-columns:34px minmax(0,1fr); gap:10px; align-items:center; min-width:0; padding-right:24px; color:var(--theme-muted,var(--muted)); }
.getting-started li:not(:last-child)::after { content:""; position:absolute; top:17px; right:6px; width:13px; border-top:2px solid var(--theme-border,#d7e3ee); }
.getting-started li>span:last-child { display:grid; min-width:0; gap:3px; }
.getting-started li strong { color:inherit; font-size:12px; line-height:1.25; }
.getting-started li small { font-size:10px; line-height:1.3; }
.step-marker { display:grid; place-items:center; width:34px; height:34px; border:1px solid var(--theme-border,#d7e3ee); border-radius:50%; background:var(--theme-soft,#f2f6fa); font-size:12px; font-weight:850; }
.getting-started li.is-current { color:var(--theme-accent-strong,#1665bd); }
.getting-started li.is-current .step-marker { border-color:var(--theme-accent-strong,#1665bd); background:var(--theme-accent-soft,#e8f2ff); box-shadow:0 0 0 4px rgba(38,118,203,.1); }
.getting-started li.is-complete { color:var(--theme-text,var(--brand-navy)); }
.getting-started li.is-complete .step-marker { border-color:#1b9277; background:#e4f7f1; color:#08705b; }
.getting-started li.is-complete:not(:last-child)::after { border-color:#7ac4b1; }
.setup-next,.setup-choice { display:flex; align-items:center; gap:18px; margin:0 0 24px; padding:20px 22px; border:1px solid #bcd5ed; border-radius:16px; background:linear-gradient(135deg,var(--theme-surface,#fff),var(--theme-accent-soft,#eef6ff)); box-shadow:0 12px 32px rgba(22,83,145,.08); }
.setup-next-icon { display:grid; place-items:center; flex:0 0 42px; width:42px; height:42px; border-radius:13px; background:var(--theme-accent-strong,#1665bd); color:#fff; font-weight:850; }
.setup-next>div,.setup-choice>div:first-child { flex:1; min-width:0; }
.setup-next h2,.setup-choice h2 { margin:2px 0 5px; font-size:20px; }
.setup-next p,.setup-choice p { margin:0; color:var(--theme-muted,var(--muted)); font-size:13px; line-height:1.5; }
.setup-next>form { flex:0 0 auto; margin:0; }
.setup-next .button { flex:0 0 auto; margin:0; white-space:nowrap; }
.setup-choice { align-items:flex-start; }
.setup-choice-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:9px; }
.setup-choice-actions .button { margin:0; }
.form-grid label>.field-label { display:block; color:var(--theme-text,var(--ink)); font-weight:750; }
.form-grid label>small { display:block; margin-top:4px; color:var(--theme-muted,var(--muted)); font-size:10px; font-weight:500; line-height:1.35; }
.country-template-note { display:flex; align-items:flex-start; gap:11px; margin:-4px 0 20px; padding:12px 15px; border:1px solid var(--theme-border,#d7e3ee); border-radius:11px; background:var(--theme-soft,#f4f8fc); color:var(--theme-muted,var(--muted)); }
.country-template-note-icon { display:grid; place-items:center; flex:0 0 24px; width:24px; height:24px; border-radius:50%; background:var(--theme-accent-soft,#eaf3ff); color:var(--theme-accent-strong,#173b69); font-size:12px; font-weight:850; }
.country-template-note strong { display:block; color:var(--theme-text,var(--ink)); font-size:12px; font-weight:750; }
.country-template-note p { max-width:950px; margin:3px 0 0; font-size:11px; line-height:1.5; }
@media(max-width:1050px) {
    .getting-started { grid-template-columns:1fr; gap:14px; }
    .setup-next,.setup-choice { align-items:flex-start; flex-wrap:wrap; }
    .setup-next>form { margin-left:60px; }
    .setup-choice-actions { width:100%; justify-content:flex-start; }
}
@media(max-width:700px) {
    .getting-started { padding:16px; }
    .getting-started ol { grid-template-columns:1fr; gap:12px; }
    .getting-started li { padding:0 0 0 2px; }
    .getting-started li:not(:last-child)::after { top:34px; left:18px; width:0; height:12px; border-top:0; border-left:2px solid var(--theme-border,#d7e3ee); }
    .setup-next,.setup-choice { padding:17px; }
    .setup-next>form { width:100%; margin-left:0; }
    .setup-next .button { width:100%; text-align:center; }
    .setup-choice-actions { display:grid; grid-template-columns:1fr; }
}
/* Country-pack capability contract */
.capability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin:24px 0}
.capability-card{display:flex;gap:14px;align-items:flex-start;border:1px solid #dbe5e8;border-radius:16px;padding:18px;background:#fff}
.capability-card>span{display:grid;place-items:center;min-width:34px;height:34px;border-radius:10px;font-weight:800}
.capability-card div{display:grid;gap:5px}.capability-card small{color:#68818a;line-height:1.4}
.capability-card.supported>span{background:#dcf5ea;color:#08765f}.capability-card.not-supported>span{background:#fff1dc;color:#9b5a00}
.international-options{border:1px dashed #b8cdd4;border-radius:16px;padding:16px 18px}.international-options legend{font-weight:800;padding:0 8px}.international-options>p{color:#68818a;margin:0 0 14px}
