:root {
    --pf-bg: #15171a;
    --pf-panel: #202328;
    --pf-panel-alt: #292d33;
    --pf-border: #454b54;
    --pf-text: #f4f5f7;
    --pf-muted: #adb3bd;
    --pf-red: #c90000;
    --pf-red-dark: #970000;
    --pf-red-soft: #3a1719;
}

html,
body {
    min-height: 100%;
}

body {
    background: var(--pf-bg);
    color: var(--pf-text);
}

a {
    color: #ff6b6b;
}

a:hover {
    color: #ff9b9b;
}

.navbar {
    background: #0d0f11 !important;
    border-bottom: 1px solid var(--pf-border);
}

.navbar-brand {
    font-weight: 700;
    letter-spacing: .02em;
}

.navbar-dark .navbar-nav .nav-link {
    color: #d9dde3;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: #fff;
}

.environment-banner {
    padding: .65rem 1rem;
    text-align: center;
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
    border-bottom: 2px solid #000;
    font-weight: 600;
}

.environment-uat {
    background: #ffd24d;
    color: #111;
}

.environment-production {
    background: #b50000;
    color: #fff;
}

.environment-development {
    background: #2574a9;
    color: #fff;
}

.login-page {
    min-height: 100vh;
}

.login-card,
.summary-card,
.card,
.modal-content,
.dropdown-menu {
    background: var(--pf-panel);
    color: var(--pf-text);
    border: 1px solid var(--pf-border);
}

.login-card {
    max-width: 430px;
    margin: 8vh auto;
    border-radius: .45rem;
    padding: 2rem;
    box-shadow: 0 .75rem 2rem rgba(0, 0, 0, .45);
}

.summary-card {
    min-height: 135px;
    border-radius: .4rem;
    padding: 1.25rem;
    box-shadow: 0 .25rem .8rem rgba(0, 0, 0, .22);
}

.summary-value {
    font-size: 2.2rem;
    font-weight: 700;
}

.card-header,
.card-footer {
    background: var(--pf-panel-alt);
    border-color: var(--pf-border);
}

.table {
    color: var(--pf-text);
}

.table thead th,
.table td,
.table th {
    border-color: var(--pf-border);
}

.table-hover tbody tr:hover {
    color: #fff;
    background: rgba(255, 255, 255, .045);
}

.form-control,
.custom-file-label,
.custom-select {
    background: #111317;
    color: var(--pf-text);
    border-color: var(--pf-border);
}

.form-control:focus,
.custom-select:focus {
    background: #111317;
    color: #fff;
    border-color: var(--pf-red);
    box-shadow: 0 0 0 .2rem rgba(201, 0, 0, .2);
}

.form-control::placeholder {
    color: #7e858f;
}

.btn-primary,
.btn-danger {
    background: var(--pf-red);
    border-color: var(--pf-red);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:not(:disabled):not(.disabled):active,
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:not(:disabled):not(.disabled):active {
    background: var(--pf-red-dark);
    border-color: var(--pf-red-dark);
}

.btn-outline-primary,
.btn-outline-danger {
    color: #ff5d5d;
    border-color: var(--pf-red);
}

.btn-outline-primary:hover,
.btn-outline-danger:hover {
    background: var(--pf-red);
    border-color: var(--pf-red);
    color: #fff;
}

.btn-outline-light {
    border-color: #8f969f;
}

.alert-success {
    color: #eafbea;
    background: #17351e;
    border-color: #2c6a37;
}

.alert-danger {
    color: #ffe7e7;
    background: var(--pf-red-soft);
    border-color: #7c292d;
}

.alert-warning {
    color: #fff4ce;
    background: #4a3a08;
    border-color: #8b6e11;
}

.badge-status {
    padding: .45rem .6rem;
}

.badge-ready {
    background: #117a8b;
    color: #fff;
}

.badge-active {
    background: #218838;
    color: #fff;
}

.badge-inactive {
    background: #5a6268;
    color: #fff;
}

.badge-validation-failed {
    background: var(--pf-red);
    color: #fff;
}

.validation-row {
    background: #35191b;
}

.text-muted {
    color: var(--pf-muted) !important;
}

code {
    color: #ff7777;
}

hr {
    border-color: var(--pf-border);
}

.registration-card {
    max-width: 560px;
    margin-top: 4vh;
    margin-bottom: 4vh;
}

.form-text {
    line-height: 1.4;
}


/* PacForge Deploy V1.3.0 theme engine */
html[data-theme="pacforge-standard"], html[data-theme="pacforge-dark"] { --pf-bg:#15171a; --pf-panel:#202328; --pf-panel-alt:#292d33; --pf-border:#454b54; --pf-text:#f4f5f7; --pf-muted:#adb3bd; --pf-red:#c90000; --pf-red-dark:#970000; --pf-red-soft:#3a1719; }
html[data-theme="pacforge-midnight"], html[data-theme="midnight"] { --pf-bg:#07111f; --pf-panel:#0d1c30; --pf-panel-alt:#122744; --pf-border:#28476b; --pf-text:#eef6ff; --pf-muted:#9fb4cc; --pf-red:#d21f3c; --pf-red-dark:#a50f28; --pf-red-soft:#3b1421; }
html[data-theme="pacforge-ocean"] { --pf-bg:#071a26; --pf-panel:#0d2838; --pf-panel-alt:#12384e; --pf-border:#28627d; --pf-text:#eefaff; --pf-muted:#a9c7d6; --pf-red:#1596c7; --pf-red-dark:#0e6f96; --pf-red-soft:#173747; }
html[data-theme="pacforge-forest"] { --pf-bg:#0d1b14; --pf-panel:#173024; --pf-panel-alt:#204331; --pf-border:#46755a; --pf-text:#f0fff5; --pf-muted:#afd0ba; --pf-red:#2d9c5b; --pf-red-dark:#217543; --pf-red-soft:#203b2a; }
html[data-theme="pacforge-slate"], html[data-theme="slate"] { --pf-bg:#252a2f; --pf-panel:#343a40; --pf-panel-alt:#3f464d; --pf-border:#626b75; --pf-text:#f4f5f6; --pf-muted:#c0c5ca; --pf-red:#bb1f2d; --pf-red-dark:#8e1621; --pf-red-soft:#452126; }
html[data-theme="pacforge-light"] { --pf-bg:#eef1f5; --pf-panel:#ffffff; --pf-panel-alt:#f4f5f7; --pf-border:#c8ced7; --pf-text:#1d232b; --pf-muted:#626d7a; --pf-red:#c90000; --pf-red-dark:#970000; --pf-red-soft:#ffe5e5; }
html[data-theme="pacforge-sand"] { --pf-bg:#eee7da; --pf-panel:#fffaf0; --pf-panel-alt:#f4ead8; --pf-border:#b9a58a; --pf-text:#34291f; --pf-muted:#756654; --pf-red:#b25f25; --pf-red-dark:#86461b; --pf-red-soft:#f3ddca; }
html[data-theme="pacforge-high-contrast"], html[data-theme="high-contrast"] { --pf-bg:#000; --pf-panel:#000; --pf-panel-alt:#151515; --pf-border:#fff; --pf-text:#fff; --pf-muted:#fff; --pf-red:#ff2020; --pf-red-dark:#c90000; --pf-red-soft:#440000; }
html[data-theme="pacforge-light"] .navbar { background:#202328!important; }
html[data-theme="pacforge-light"] .form-control,html[data-theme="pacforge-light"] .custom-select,html[data-theme="pacforge-light"] .custom-file-label { background:#fff;color:var(--pf-text); }
html[data-theme="pacforge-light"] .table-hover tbody tr:hover { color:#111;background:rgba(0,0,0,.04); }
html[data-theme="pacforge-high-contrast"] .card,html[data-theme="high-contrast"] .card,html[data-theme="pacforge-high-contrast"] .summary-card,html[data-theme="high-contrast"] .summary-card,html[data-theme="pacforge-high-contrast"] .form-control,html[data-theme="high-contrast"] .form-control,html[data-theme="pacforge-high-contrast"] .custom-select,html[data-theme="high-contrast"] .custom-select { border-width:2px; }
.product-mark,.brand-mark { display:inline-flex;align-items:center;justify-content:center;background:var(--pf-red);color:#fff;font-weight:800;border-radius:.25rem; }
.product-mark { width:54px;height:54px;font-size:1.3rem;margin-bottom:1rem; }
.brand-mark { width:30px;height:30px;font-size:.75rem;margin-right:.4rem; }
.version-label { margin-top:1.25rem;text-align:center;color:var(--pf-muted);font-size:.8rem; }
.page-heading { display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;margin-bottom:1.25rem; }
.page-heading h1 { margin-bottom:.2rem; }
.profile-card { max-width:720px; }
.welcome-panel { background:var(--pf-panel);border:1px solid var(--pf-red);border-left:6px solid var(--pf-red);padding:1.4rem;margin-bottom:1.5rem;border-radius:.35rem; }
.summary-label { font-size:1.05rem;font-weight:600;margin-bottom:.25rem; }
.empty-state { padding:2rem;text-align:center; }
.checklist-item { position:relative;padding:.65rem .5rem .65rem 2rem;border-bottom:1px solid var(--pf-border); }
.checklist-item::before { content:'○';position:absolute;left:.5rem;font-weight:700;color:var(--pf-muted); }
.checklist-item.complete::before { content:'✓';color:#46c46f; }
.navbar-text { color:#d9dde3 !important;text-decoration:none; }

.manifest-view{max-height:520px;overflow:auto;white-space:pre-wrap;word-break:break-word;background:rgba(0,0,0,.22);padding:1rem;border-radius:.35rem}.badge-archived{background:#555;color:#fff}.badge-validation-failed{background:#8b1e1e;color:#fff}.badge-ready{background:#8a5a00;color:#fff}.badge-active{background:#198754;color:#fff}.badge-inactive{background:#495057;color:#fff}

/* V1.4.0 Deployment Administration */
.page-heading {
    gap: 1rem;
    margin-bottom: 1.25rem;
}
.card dl dt,
.card dl dd {
    margin-bottom: 0.65rem;
}
.table small {
    color: var(--pf-muted-text);
}

/* PacForge standard password visibility control */
.password-field {
    position: relative;
}

.password-field .form-control {
    padding-right: 3rem;
}

.password-toggle {
    position: absolute;
    top: 50%;
    right: 0.6rem;
    width: 2rem;
    height: 2rem;
    padding: 0.25rem;
    transform: translateY(-50%);
    border: 0;
    border-radius: 0.25rem;
    background: transparent;
    color: var(--pf-muted);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.password-toggle:hover,
.password-toggle:focus {
    color: var(--pf-text);
    background: rgba(255, 255, 255, 0.08);
    outline: none;
}

.password-toggle:focus-visible {
    box-shadow: 0 0 0 0.2rem rgba(181, 0, 0, 0.35);
}

.password-toggle svg {
    width: 1.25rem;
    height: 1.25rem;
    display: block;
}

/* V2.4.18 unified profile and theme catalogue */
.profile-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:1.25rem;align-items:start}.profile-layout .profile-card{margin:0}.theme-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:.75rem;margin:1rem 0}.theme-select-card{appearance:none;border:1px solid var(--pf-border);border-radius:.65rem;background:var(--pf-panel-alt);color:var(--pf-text);padding:.7rem;text-align:left;cursor:pointer;transition:transform .14s ease,border-color .14s ease,box-shadow .14s ease}.theme-select-card:hover,.theme-select-card:focus-visible{transform:translateY(-2px);border-color:var(--pf-red);outline:none}.theme-select-card.selected{border-color:var(--pf-red);box-shadow:0 0 0 2px var(--pf-red)}.theme-select-card strong,.theme-select-card small{display:block}.theme-select-card small{color:var(--pf-muted);margin-top:.25rem}.theme-swatch{display:block;height:48px;border-radius:.45rem;margin-bottom:.55rem;border:1px solid rgba(127,127,127,.4)}.theme-swatch-pacforge-standard{background:linear-gradient(135deg,#15171a 0 68%,#c90000 68%)}.theme-swatch-pacforge-midnight{background:linear-gradient(135deg,#07111f 0 68%,#d21f3c 68%)}.theme-swatch-pacforge-ocean{background:linear-gradient(135deg,#071a26 0 68%,#1596c7 68%)}.theme-swatch-pacforge-forest{background:linear-gradient(135deg,#0d1b14 0 68%,#2d9c5b 68%)}.theme-swatch-pacforge-slate{background:linear-gradient(135deg,#252a2f 0 68%,#bb1f2d 68%)}.theme-swatch-pacforge-light{background:linear-gradient(135deg,#eef1f5 0 68%,#c90000 68%)}.theme-swatch-pacforge-sand{background:linear-gradient(135deg,#eee7da 0 68%,#b25f25 68%)}.theme-swatch-pacforge-high-contrast{background:linear-gradient(135deg,#000 0 68%,#ff2020 68%)}.theme-card-actions{display:flex;gap:.8rem;align-items:center;flex-wrap:wrap}@media(max-width:800px){.profile-layout{grid-template-columns:1fr}.theme-card-actions{align-items:stretch;flex-direction:column}.theme-card-actions .btn{width:100%}}

/* V2.4.19 stable password visibility control */
.password-toggle,
.password-toggle:hover,
.password-toggle:focus,
.password-toggle:focus-visible,
.password-toggle:active {
    top: 50%;
    transform: translateY(-50%);
    background: transparent !important;
    transition: color .16s ease;
}
.password-toggle { color: var(--pf-text) !important; }
.password-toggle[aria-pressed="true"], .password-toggle.is-visible { color: var(--pf-red, #d40000) !important; }

/* V2.4.29 Runtime Administration Management UX */
.runtime-actions { min-width: 185px; white-space: normal; }
.runtime-admin-modal .modal-content { background: var(--pf-panel); color: var(--pf-text); border-color: var(--pf-border); }
.runtime-admin-modal .modal-header,
.runtime-admin-modal .modal-footer { border-color: var(--pf-border); }
.runtime-admin-section { padding: 1rem 0 1.15rem; border-bottom: 1px solid var(--pf-border); }
.runtime-admin-section:first-child { padding-top: 0; }
.runtime-admin-section:last-child { border-bottom: 0; padding-bottom: 0; }
.runtime-admin-section h6 { font-weight: 700; margin-bottom: .35rem; }
.js-runtime-key-status.is-entered { color: #46c46f !important; }
.js-runtime-key-status.is-unexpected { color: #f0b84b !important; }
@media (max-width: 767.98px) {
    .runtime-admin-modal .modal-dialog { margin: .5rem; }
    .runtime-admin-modal .modal-footer { align-items: stretch; flex-direction: column; }
    .runtime-admin-modal .modal-footer .btn { width: 100%; }
}


/* V2.4.33 canonical PacForge family theme handling. Display names are product-neutral. */
:root,
html[data-theme="standard"] {
    --pf-bg:#15171a;--pf-bg-secondary:#1b1e22;--pf-surface:#202328;--pf-surface-elevated:#292d33;
    --pf-text:#f4f5f7;--pf-text-muted:#adb3bd;--pf-border:#454b54;--pf-border-strong:#626a75;
    --pf-accent-light:#ef4242;--pf-accent:#c90000;--pf-accent-dark:#8d0000;--pf-accent-text:#fff;
    --pf-success:#46c46f;--pf-warning:#f0b84b;--pf-danger:#e13b3b;--pf-info:#48a9d8;
    --pf-shadow:0 .25rem .8rem rgba(0,0,0,.24);--pf-shadow-elevated:0 .75rem 2rem rgba(0,0,0,.42);
    --pf-input-bg:#111317;--pf-input-border:#454b54;--pf-input-focus:#c90000;--pf-nav-bg:rgba(13,15,17,.94);--pf-card-bg:#202328;
}
html[data-theme="midnight"] {--pf-bg:#07111f;--pf-bg-secondary:#091726;--pf-surface:#0d1c30;--pf-surface-elevated:#122744;--pf-text:#eef6ff;--pf-text-muted:#9fb4cc;--pf-border:#28476b;--pf-border-strong:#3d648e;--pf-accent-light:#f24b68;--pf-accent:#d21f3c;--pf-accent-dark:#8f1025;--pf-accent-text:#fff;--pf-input-bg:#091625;--pf-input-border:#28476b;--pf-input-focus:#d21f3c;--pf-nav-bg:rgba(4,12,23,.94);--pf-card-bg:#0d1c30;}
html[data-theme="ocean"] {--pf-bg:#071a26;--pf-bg-secondary:#092230;--pf-surface:#0d2838;--pf-surface-elevated:#12384e;--pf-text:#eefaff;--pf-text-muted:#a9c7d6;--pf-border:#28627d;--pf-border-strong:#3b7f9d;--pf-accent-light:#48c6e8;--pf-accent:#1596c7;--pf-accent-dark:#0b668b;--pf-accent-text:#fff;--pf-input-bg:#081e2b;--pf-input-border:#28627d;--pf-input-focus:#1596c7;--pf-nav-bg:rgba(5,22,32,.94);--pf-card-bg:#0d2838;}
html[data-theme="forest"] {--pf-bg:#0d1b14;--pf-bg-secondary:#11251b;--pf-surface:#173024;--pf-surface-elevated:#204331;--pf-text:#f0fff5;--pf-text-muted:#afd0ba;--pf-border:#46755a;--pf-border-strong:#5d8e70;--pf-accent-light:#5fc982;--pf-accent:#2d9c5b;--pf-accent-dark:#1c6b3d;--pf-accent-text:#fff;--pf-input-bg:#10241a;--pf-input-border:#46755a;--pf-input-focus:#2d9c5b;--pf-nav-bg:rgba(8,24,15,.94);--pf-card-bg:#173024;}
html[data-theme="slate"] {--pf-bg:#252a2f;--pf-bg-secondary:#2c3238;--pf-surface:#343a40;--pf-surface-elevated:#3f464d;--pf-text:#f4f5f6;--pf-text-muted:#c0c5ca;--pf-border:#626b75;--pf-border-strong:#7c8792;--pf-accent-light:#e04b58;--pf-accent:#bb1f2d;--pf-accent-dark:#7f131d;--pf-accent-text:#fff;--pf-input-bg:#292f35;--pf-input-border:#626b75;--pf-input-focus:#bb1f2d;--pf-nav-bg:rgba(29,34,39,.95);--pf-card-bg:#343a40;}
html[data-theme="light"] {--pf-bg:#eef1f5;--pf-bg-secondary:#e3e8ee;--pf-surface:#fff;--pf-surface-elevated:#f7f9fb;--pf-text:#1d232b;--pf-text-muted:#626d7a;--pf-border:#c8ced7;--pf-border-strong:#9ba5b2;--pf-accent-light:#ef4242;--pf-accent:#c90000;--pf-accent-dark:#8d0000;--pf-accent-text:#fff;--pf-input-bg:#fff;--pf-input-border:#b9c1cc;--pf-input-focus:#c90000;--pf-nav-bg:rgba(32,35,40,.97);--pf-card-bg:#fff;--pf-shadow:0 .25rem .8rem rgba(40,50,60,.12);--pf-shadow-elevated:0 .75rem 2rem rgba(40,50,60,.18);}
html[data-theme="sand"] {--pf-bg:#eee7da;--pf-bg-secondary:#e5dac7;--pf-surface:#fffaf0;--pf-surface-elevated:#f4ead8;--pf-text:#34291f;--pf-text-muted:#756654;--pf-border:#b9a58a;--pf-border-strong:#9e8769;--pf-accent-light:#d98a4d;--pf-accent:#b25f25;--pf-accent-dark:#783c15;--pf-accent-text:#fff;--pf-input-bg:#fffaf0;--pf-input-border:#b9a58a;--pf-input-focus:#b25f25;--pf-nav-bg:rgba(65,49,34,.95);--pf-card-bg:#fffaf0;}
html[data-theme="high-contrast"] {--pf-bg:#000;--pf-bg-secondary:#000;--pf-surface:#000;--pf-surface-elevated:#151515;--pf-text:#fff;--pf-text-muted:#fff;--pf-border:#fff;--pf-border-strong:#fff;--pf-accent-light:#ff5a5a;--pf-accent:#ff2020;--pf-accent-dark:#c90000;--pf-accent-text:#fff;--pf-input-bg:#000;--pf-input-border:#fff;--pf-input-focus:#ffff00;--pf-nav-bg:#000;--pf-card-bg:#000;--pf-shadow:none;--pf-shadow-elevated:none;}
html[data-theme="autumn"] {--pf-bg:#24150f;--pf-bg-secondary:#321d12;--pf-surface:#3a2418;--pf-surface-elevated:#4b2d1c;--pf-text:#fff5e8;--pf-text-muted:#d8b99b;--pf-border:#79513a;--pf-border-strong:#9a6848;--pf-accent-light:#e7a23a;--pf-accent:#c96b24;--pf-accent-dark:#7f351c;--pf-accent-text:#fff;--pf-input-bg:#2b1a12;--pf-input-border:#79513a;--pf-input-focus:#c96b24;--pf-nav-bg:rgba(39,20,12,.95);--pf-card-bg:#3a2418;}
html[data-theme="spring"] {--pf-bg:#f3f8ee;--pf-bg-secondary:#e8f2df;--pf-surface:#fffdf8;--pf-surface-elevated:#f7f1f4;--pf-text:#263328;--pf-text-muted:#637367;--pf-border:#bfd2b6;--pf-border-strong:#92b287;--pf-accent-light:#8fd27f;--pf-accent:#5ca85a;--pf-accent-dark:#36783d;--pf-accent-text:#fff;--pf-input-bg:#fff;--pf-input-border:#bfd2b6;--pf-input-focus:#5ca85a;--pf-nav-bg:rgba(54,91,59,.96);--pf-card-bg:#fffdf8;}
html[data-theme="summer"] {--pf-bg:#eaf9ff;--pf-bg-secondary:#d9f3fb;--pf-surface:#fff;--pf-surface-elevated:#effcff;--pf-text:#12303b;--pf-text-muted:#52717c;--pf-border:#9fd8e4;--pf-border-strong:#69b9ca;--pf-accent-light:#38d2d0;--pf-accent:#159fc4;--pf-accent-dark:#08738e;--pf-accent-text:#fff;--pf-input-bg:#fff;--pf-input-border:#9fd8e4;--pf-input-focus:#159fc4;--pf-nav-bg:rgba(8,91,119,.95);--pf-card-bg:#fff;}
html[data-theme="winter"] {--pf-bg:#e9f0f6;--pf-bg-secondary:#dce7f0;--pf-surface:#f9fcff;--pf-surface-elevated:#eef5fa;--pf-text:#172b3d;--pf-text-muted:#5b7082;--pf-border:#afc3d3;--pf-border-strong:#829fb6;--pf-accent-light:#75aeda;--pf-accent:#3f78a7;--pf-accent-dark:#254e72;--pf-accent-text:#fff;--pf-input-bg:#fff;--pf-input-border:#afc3d3;--pf-input-focus:#3f78a7;--pf-nav-bg:rgba(28,55,79,.96);--pf-card-bg:#f9fcff;}
html[data-theme="lavender"] {--pf-bg:#f2eef7;--pf-bg-secondary:#e8e0f0;--pf-surface:#fbf9fd;--pf-surface-elevated:#f0e8f6;--pf-text:#30283a;--pf-text-muted:#6f6478;--pf-border:#c8b7d4;--pf-border-strong:#a28bb4;--pf-accent-light:#b79bd2;--pf-accent:#8a68aa;--pf-accent-dark:#5f4777;--pf-accent-text:#fff;--pf-input-bg:#fff;--pf-input-border:#c8b7d4;--pf-input-focus:#8a68aa;--pf-nav-bg:rgba(66,55,78,.96);--pf-card-bg:#fbf9fd;}

/* Compatibility aliases used by established Deploy components. */
html {--pf-panel:var(--pf-surface);--pf-panel-alt:var(--pf-surface-elevated);--pf-muted:var(--pf-text-muted);--pf-red:var(--pf-accent);--pf-red-dark:var(--pf-accent-dark);--pf-red-soft:color-mix(in srgb,var(--pf-accent) 22%,var(--pf-surface));}
body {background:linear-gradient(145deg,var(--pf-bg),var(--pf-bg-secondary));background-attachment:fixed;}
.navbar {background:var(--pf-nav-bg)!important;backdrop-filter:blur(12px);box-shadow:var(--pf-shadow);}
.card,.summary-card,.login-card,.modal-content,.dropdown-menu {background:linear-gradient(145deg,var(--pf-card-bg),var(--pf-surface-elevated));box-shadow:var(--pf-shadow);border-radius:.7rem;}
.form-control,.custom-file-label,.custom-select {background:var(--pf-input-bg);color:var(--pf-text);border-color:var(--pf-input-border);}
.form-control:focus,.custom-select:focus {background:var(--pf-input-bg);color:var(--pf-text);border-color:var(--pf-input-focus);box-shadow:0 0 0 .2rem color-mix(in srgb,var(--pf-input-focus) 24%,transparent);}
.btn-primary,.btn-danger {background:linear-gradient(135deg,var(--pf-accent-light) 0%,var(--pf-accent) 50%,var(--pf-accent-dark) 100%);border-color:transparent;color:var(--pf-accent-text);box-shadow:0 .2rem .55rem color-mix(in srgb,var(--pf-accent) 30%,transparent);}
.btn-primary:hover,.btn-primary:focus,.btn-primary:not(:disabled):not(.disabled):active,.btn-danger:hover,.btn-danger:focus,.btn-danger:not(:disabled):not(.disabled):active {background:linear-gradient(135deg,var(--pf-accent) 0%,var(--pf-accent-dark) 100%);border-color:transparent;color:var(--pf-accent-text);transform:translateY(-1px);}
a,code {color:var(--pf-accent-light);} a:hover {color:var(--pf-accent);}
.theme-select-card:hover,.theme-select-card:focus-visible,.theme-select-card.selected {border-color:var(--pf-accent);}
.theme-select-card.selected {box-shadow:0 0 0 2px var(--pf-accent),var(--pf-shadow);}
.theme-swatch-standard{background:linear-gradient(135deg,#15171a 0 68%,#c90000 68%)}
.theme-swatch-midnight{background:linear-gradient(135deg,#07111f 0 68%,#d21f3c 68%)}
.theme-swatch-ocean{background:linear-gradient(135deg,#071a26 0 68%,#1596c7 68%)}
.theme-swatch-forest{background:linear-gradient(135deg,#0d1b14 0 68%,#2d9c5b 68%)}
.theme-swatch-slate{background:linear-gradient(135deg,#252a2f 0 68%,#bb1f2d 68%)}
.theme-swatch-light{background:linear-gradient(135deg,#eef1f5 0 68%,#c90000 68%)}
.theme-swatch-sand{background:linear-gradient(135deg,#eee7da 0 68%,#b25f25 68%)}
.theme-swatch-high-contrast{background:linear-gradient(135deg,#000 0 68%,#fff 68% 82%,#ff2020 82%)}
.theme-swatch-autumn{background:linear-gradient(135deg,#3a2418 0 50%,#c96b24 50% 75%,#7f351c 75%)}
.theme-swatch-spring{background:linear-gradient(135deg,#e8f2df 0 45%,#8fd27f 45% 68%,#e7a6b7 68% 84%,#f2d56b 84%)}
.theme-swatch-summer{background:linear-gradient(135deg,#d9f3fb 0 48%,#159fc4 48% 70%,#38d2d0 70% 85%,#f2c84b 85%)}
.theme-swatch-winter{background:linear-gradient(135deg,#f9fcff 0 45%,#afc3d3 45% 65%,#3f78a7 65% 82%,#254e72 82%)}
.theme-swatch-lavender{background:linear-gradient(135deg,#e8e0f0 0 42%,#b79bd2 42% 63%,#8a68aa 63% 80%,#788b68 80%)}
html[data-theme="high-contrast"] .card,html[data-theme="high-contrast"] .summary-card,html[data-theme="high-contrast"] .form-control,html[data-theme="high-contrast"] .custom-select,html[data-theme="high-contrast"] .theme-select-card {border-width:2px;}
html[data-theme="light"] .table-hover tbody tr:hover,html[data-theme="sand"] .table-hover tbody tr:hover,html[data-theme="spring"] .table-hover tbody tr:hover,html[data-theme="summer"] .table-hover tbody tr:hover,html[data-theme="winter"] .table-hover tbody tr:hover,html[data-theme="lavender"] .table-hover tbody tr:hover {color:var(--pf-text);background:color-mix(in srgb,var(--pf-accent) 8%,transparent);}
.swal2-popup {background:var(--pf-surface)!important;color:var(--pf-text)!important;border:1px solid var(--pf-border)!important;}
.swal2-title,.swal2-html-container {color:var(--pf-text)!important;}
.swal2-confirm {background:linear-gradient(135deg,var(--pf-accent-light),var(--pf-accent-dark))!important;color:var(--pf-accent-text)!important;}


/* V2.4.34 — Canonical PacForge family theme selector presentation (Business reference). */
.theme-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-top:.75rem}
.theme-option{display:grid;grid-template-columns:34px auto 1fr;align-items:center;gap:9px;cursor:pointer;border:1px solid var(--pf-border);border-radius:12px;padding:12px;background:var(--pf-surface-elevated);color:var(--pf-text);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.theme-option:hover,.theme-option:focus-within{transform:translateY(-2px);border-color:var(--pf-accent-light);box-shadow:0 8px 18px rgba(0,0,0,.14)}
.theme-option.selected{border-color:var(--pf-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--pf-accent) 72%,transparent),var(--pf-shadow)}
.theme-option input{width:auto;margin:0;accent-color:var(--pf-accent)}
.theme-option .theme-swatch{width:34px;height:34px;border-radius:10px;border:1px solid color-mix(in srgb,currentColor 22%,transparent);box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}
.theme-standard .theme-swatch{background:linear-gradient(135deg,#ff6b63,#e53935 48%,#a91313)}
.theme-midnight .theme-swatch{background:linear-gradient(135deg,#c4b5fd,#8b5cf6 48%,#5b21b6)}
.theme-ocean .theme-swatch{background:linear-gradient(135deg,#67e8f9,#0288d1 48%,#01579b)}
.theme-forest .theme-swatch{background:linear-gradient(135deg,#81c784,#2e7d32 48%,#1b5e20)}
.theme-slate .theme-swatch{background:linear-gradient(135deg,#b0bec5,#607d8b 48%,#37474f)}
.theme-light .theme-swatch{background:linear-gradient(135deg,#fff,#ef5350 48%,#c62828)}
.theme-sand .theme-swatch{background:linear-gradient(135deg,#ffd180,#c77800 48%,#8d5200)}
.theme-high-contrast .theme-swatch{background:linear-gradient(135deg,#fff,#ff0 48%,#000)}
.theme-autumn .theme-swatch{background:linear-gradient(135deg,#f6ad55,#c65d21 48%,#7f2f16)}
.theme-spring .theme-swatch{background:linear-gradient(135deg,#f7a8c4,#72b66a 55%,#3f7f49)}
.theme-summer .theme-swatch{background:linear-gradient(135deg,#70e1f5,#19b5c5 48%,#087f8c)}
.theme-winter .theme-swatch{background:linear-gradient(135deg,#d7efff,#79bde8 48%,#3978a7)}
.theme-lavender .theme-swatch{background:linear-gradient(135deg,#d8b4fe,#a56cc1 48%,#6f3d8c)}
html[data-theme="high-contrast"] .theme-option{border-width:2px}

/* V2.4.35 — Business visual experience and profile alignment. Business is the family visual-shell reference. */
html[data-theme="standard"]{--pf-bg:#0b0f14;--pf-bg-secondary:#121923;--pf-surface:#151b23;--pf-surface-elevated:#1c2430;--pf-text:#eef3f8;--pf-text-muted:#9eacbb;--pf-border:#303b49;--pf-border-strong:#455467;--pf-accent-light:#ff6b63;--pf-accent:#e53935;--pf-accent-dark:#a91313;--pf-accent-text:#fff;--pf-input-bg:#0e141c;--pf-input-border:#303b49;--pf-input-focus:#e53935;--pf-nav-bg:rgba(11,15,20,.94);--pf-card-bg:#151b23;--pf-shadow:0 14px 35px rgba(0,0,0,.22);--pf-shadow-elevated:0 18px 42px rgba(0,0,0,.3)}
html[data-theme="midnight"]{--pf-bg:#05070d;--pf-bg-secondary:#11182b;--pf-surface:#0d1220;--pf-surface-elevated:#151d30;--pf-text:#eef3f8;--pf-text-muted:#9eacbb;--pf-border:#283552;--pf-border-strong:#41557c;--pf-accent-light:#c4b5fd;--pf-accent:#8b5cf6;--pf-accent-dark:#5b21b6;--pf-accent-text:#fff;--pf-input-bg:#090e19;--pf-input-border:#283552;--pf-input-focus:#8b5cf6;--pf-nav-bg:rgba(5,7,13,.94);--pf-card-bg:#0d1220}
html[data-theme="ocean"]{--pf-bg:#06141b;--pf-bg-secondary:#0b2b39;--pf-surface:#0c2530;--pf-surface-elevated:#123745;--pf-text:#eef3f8;--pf-text-muted:#9eacbb;--pf-border:#255568;--pf-border-strong:#34758c;--pf-accent-light:#67e8f9;--pf-accent:#0288d1;--pf-accent-dark:#01579b;--pf-accent-text:#fff;--pf-input-bg:#081c25;--pf-input-border:#255568;--pf-input-focus:#0288d1;--pf-nav-bg:rgba(6,20,27,.94);--pf-card-bg:#0c2530}
html[data-theme="forest"]{--pf-bg:#07130d;--pf-bg-secondary:#12321e;--pf-surface:#10271a;--pf-surface-elevated:#183a26;--pf-text:#eef3f8;--pf-text-muted:#9eacbb;--pf-border:#2e5b3e;--pf-border-strong:#477b58;--pf-accent-light:#81c784;--pf-accent:#2e7d32;--pf-accent-dark:#1b5e20;--pf-accent-text:#fff;--pf-input-bg:#0a1c11;--pf-input-border:#2e5b3e;--pf-input-focus:#2e7d32;--pf-nav-bg:rgba(7,19,13,.94);--pf-card-bg:#10271a}
html[data-theme="slate"]{--pf-bg:#111318;--pf-bg-secondary:#242932;--pf-surface:#20242c;--pf-surface-elevated:#2b303a;--pf-text:#eef3f8;--pf-text-muted:#9eacbb;--pf-border:#464d59;--pf-border-strong:#616b79;--pf-accent-light:#b0bec5;--pf-accent:#607d8b;--pf-accent-dark:#37474f;--pf-accent-text:#fff;--pf-input-bg:#171a20;--pf-input-border:#464d59;--pf-input-focus:#607d8b;--pf-nav-bg:rgba(17,19,24,.94);--pf-card-bg:#20242c}
html[data-theme="light"]{--pf-bg:#eef2f6;--pf-bg-secondary:#fff;--pf-surface:#fff;--pf-surface-elevated:#f8fafc;--pf-text:#17212b;--pf-text-muted:#5f6b78;--pf-border:#cbd5e1;--pf-border-strong:#94a3b8;--pf-accent-light:#ef5350;--pf-accent:#c62828;--pf-accent-dark:#8e0000;--pf-accent-text:#fff;--pf-input-bg:#fff;--pf-input-border:#cbd5e1;--pf-input-focus:#c62828;--pf-nav-bg:rgba(255,255,255,.94);--pf-card-bg:#fff;--pf-shadow:0 14px 35px rgba(15,23,42,.10);--pf-shadow-elevated:0 18px 42px rgba(15,23,42,.16)}
html[data-theme="sand"]{--pf-bg:#241f18;--pf-bg-secondary:#3a3022;--pf-surface:#332b20;--pf-surface-elevated:#43382a;--pf-text:#eef3f8;--pf-text-muted:#9eacbb;--pf-border:#665641;--pf-border-strong:#8a7457;--pf-accent-light:#ffd180;--pf-accent:#c77800;--pf-accent-dark:#8d5200;--pf-accent-text:#1d1407;--pf-input-bg:#2b241b;--pf-input-border:#665641;--pf-input-focus:#c77800;--pf-nav-bg:rgba(36,31,24,.94);--pf-card-bg:#332b20}
html[data-theme="autumn"]{--pf-bg:#1d100b;--pf-bg-secondary:#3a1d10;--pf-surface:#2b1810;--pf-surface-elevated:#402417;--pf-text:#fff3e7;--pf-text-muted:#d8b69a;--pf-border:#70452d;--pf-border-strong:#99603b;--pf-accent-light:#f6ad55;--pf-accent:#c65d21;--pf-accent-dark:#7f2f16;--pf-accent-text:#fff;--pf-input-bg:#24140d;--pf-input-border:#70452d;--pf-input-focus:#c65d21;--pf-nav-bg:rgba(29,16,11,.94);--pf-card-bg:#2b1810}
html[data-theme="spring"]{--pf-bg:#f3f8f1;--pf-bg-secondary:#fff7fb;--pf-surface:#fff;--pf-surface-elevated:#f2faef;--pf-text:#26352a;--pf-text-muted:#65766a;--pf-border:#c8ddc2;--pf-border-strong:#9fc597;--pf-accent-light:#f7a8c4;--pf-accent:#72b66a;--pf-accent-dark:#3f7f49;--pf-accent-text:#fff;--pf-input-bg:#fff;--pf-input-border:#c8ddc2;--pf-input-focus:#72b66a;--pf-nav-bg:rgba(250,253,249,.95);--pf-card-bg:#fff;--pf-shadow:0 14px 35px rgba(54,92,60,.10);--pf-shadow-elevated:0 18px 42px rgba(54,92,60,.16)}
html[data-theme="summer"]{--pf-bg:#062332;--pf-bg-secondary:#0b4960;--pf-surface:#0d3445;--pf-surface-elevated:#12506a;--pf-text:#f1fbff;--pf-text-muted:#b4dbe5;--pf-border:#287891;--pf-border-strong:#3fa0b9;--pf-accent-light:#70e1f5;--pf-accent:#19b5c5;--pf-accent-dark:#087f8c;--pf-accent-text:#03242b;--pf-input-bg:#092b3a;--pf-input-border:#287891;--pf-input-focus:#19b5c5;--pf-nav-bg:rgba(6,35,50,.94);--pf-card-bg:#0d3445}
html[data-theme="winter"]{--pf-bg:#07121f;--pf-bg-secondary:#132a43;--pf-surface:#102238;--pf-surface-elevated:#19324e;--pf-text:#f2f8ff;--pf-text-muted:#b5c8d9;--pf-border:#35536f;--pf-border-strong:#537695;--pf-accent-light:#d7efff;--pf-accent:#79bde8;--pf-accent-dark:#3978a7;--pf-accent-text:#07121f;--pf-input-bg:#0b1a2a;--pf-input-border:#35536f;--pf-input-focus:#79bde8;--pf-nav-bg:rgba(7,18,31,.95);--pf-card-bg:#102238}
html[data-theme="lavender"]{--pf-bg:#171123;--pf-bg-secondary:#2b1d40;--pf-surface:#241933;--pf-surface-elevated:#35254a;--pf-text:#faf5ff;--pf-text-muted:#cdbedf;--pf-border:#5d4772;--pf-border-strong:#806399;--pf-accent-light:#d8b4fe;--pf-accent:#a56cc1;--pf-accent-dark:#6f3d8c;--pf-accent-text:#fff;--pf-input-bg:#1d1529;--pf-input-border:#5d4772;--pf-input-focus:#a56cc1;--pf-nav-bg:rgba(23,17,35,.94);--pf-card-bg:#241933}
body{background:radial-gradient(circle at top left,var(--pf-bg-secondary) 0,var(--pf-bg) 48%);background-attachment:fixed;min-height:100vh}
.navbar{border-bottom:1px solid var(--pf-border);box-shadow:none;backdrop-filter:blur(12px)}
.card,.summary-card,.login-card,.modal-content,.dropdown-menu{background:linear-gradient(150deg,var(--pf-surface-elevated),var(--pf-surface));border-radius:16px;box-shadow:var(--pf-shadow)}
.btn{border-radius:10px;font-weight:700;box-shadow:0 5px 14px rgba(0,0,0,.12);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,filter .16s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,0,0,.18)}
.btn-secondary,.btn-outline-light{background:linear-gradient(135deg,var(--pf-surface-elevated),var(--pf-surface));border-color:var(--pf-border);color:var(--pf-text)}
.btn-secondary:hover,.btn-outline-light:hover{background:linear-gradient(135deg,var(--pf-surface-elevated),var(--pf-surface));border-color:var(--pf-accent-light);color:var(--pf-text)}
.deploy-user-profile-button{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:5px 11px 5px 6px;border:1px solid var(--pf-border);border-radius:999px;background:var(--pf-surface-elevated);color:var(--pf-text)!important;font-weight:700;text-decoration:none!important;transition:border-color .2s ease,transform .2s ease}
.deploy-user-profile-button:hover{border-color:var(--pf-accent-light);transform:translateY(-1px)}
.deploy-topbar-avatar{position:relative;width:32px;height:32px;flex:0 0 32px;border-radius:50%;overflow:hidden;border:2px solid var(--pf-border);background:var(--pf-surface);display:grid;place-items:center}
.deploy-topbar-avatar img{width:100%;height:100%;object-fit:cover}.deploy-topbar-avatar-fallback{position:absolute;inset:0;place-items:center;font-size:.76rem;font-weight:800}.deploy-user-profile-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deploy-signout-button{min-height:38px}
.deploy-breadcrumbs{display:flex;align-items:center;gap:8px;color:var(--pf-text-muted);font-size:.88rem;margin-bottom:1rem}.deploy-breadcrumbs strong{color:var(--pf-text)}
.profile-hero{padding:10px 0 24px}.profile-hero .eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:800;color:var(--pf-accent-light)}.profile-hero h1{font-size:clamp(2rem,4vw,3.2rem);margin:.25rem 0 .4rem}.profile-hero p{color:var(--pf-text-muted);font-size:1.05rem}
.business-profile-layout{display:grid;grid-template-columns:minmax(260px,340px) 1fr;gap:18px;margin:0 0 28px}.business-profile-content{min-width:0}.business-profile-photo h2,.profile-section h2{font-size:1.25rem;font-weight:800;margin-bottom:1rem}.profile-section{margin-bottom:18px}.profile-avatar{width:150px;height:150px;border-radius:50%;object-fit:cover;border:4px solid var(--pf-border);background:var(--pf-surface-elevated);margin:0 auto 16px}.profile-avatar-fallback{display:grid;place-items:center;font-size:3rem;font-weight:800}.camera-panel{display:none;margin-top:16px}.camera-panel.active{display:block}.camera-video{width:100%;max-height:420px;border-radius:12px;background:#000}.camera-actions,.profile-image-actions{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:10px}.business-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.profile-wide{grid-column:1/-1}.form-control[readonly]{opacity:.8}.form-control-file{color:var(--pf-text);border:1px solid var(--pf-input-border);border-radius:10px;padding:8px;background:var(--pf-input-bg);width:100%}
@media(max-width:900px){.business-profile-layout{grid-template-columns:1fr}.business-form-grid{grid-template-columns:1fr}.profile-wide{grid-column:auto}}
@media(max-width:700px){.deploy-user-profile-name{display:none}.deploy-user-profile-button{padding:5px}.deploy-topbar-avatar{width:34px;height:34px;flex-basis:34px}}

/* V2.4.36 — Theme-aware form state readability alignment.
   Bootstrap 4.5.2 gives readonly/disabled controls a light #e9ecef background.
   Its .form-control[readonly] selector is more specific than the family base
   .form-control rule, so dark themes could render pale text on a pale control.
   Keep every control state inside the active PacForge theme instead. */
.form-control[readonly],
.form-control:disabled,
.custom-select:disabled,
textarea.form-control[readonly],
textarea.form-control:disabled,
select.form-control:disabled,
input.form-control[readonly],
input.form-control:disabled {
    background-color: var(--pf-input-bg) !important;
    color: var(--pf-text-muted) !important;
    -webkit-text-fill-color: var(--pf-text-muted);
    border-color: var(--pf-input-border) !important;
    opacity: 1;
}
.form-control[readonly] { cursor: default; }
.form-control:disabled,
.custom-select:disabled,
textarea.form-control:disabled,
select.form-control:disabled,
input.form-control:disabled { cursor: not-allowed; }
.form-control::placeholder,
.custom-select::placeholder,
textarea.form-control::placeholder,
input.form-control::placeholder {
    color: var(--pf-text-muted);
    opacity: .72;
}
.form-control:-webkit-autofill,
.form-control:-webkit-autofill:hover,
.form-control:-webkit-autofill:focus,
.form-control:-webkit-autofill:active {
    -webkit-text-fill-color: var(--pf-text) !important;
    caret-color: var(--pf-text);
    box-shadow: 0 0 0 1000px var(--pf-input-bg) inset !important;
    -webkit-box-shadow: 0 0 0 1000px var(--pf-input-bg) inset !important;
    border-color: var(--pf-input-border) !important;
    transition: background-color 9999s ease-out 0s;
}
