/* Alpnexa supported SFTPGo extra_css theme. Canonical tokens loaded first.
   Preserve native UI, authentication controls, attribution and accessibility. */
:root, [data-bs-theme="light"] {
 --bs-primary: var(--ax-color-navy); --bs-primary-active: var(--ax-color-navy-dark);
 --bs-primary-light: var(--ax-color-bg-medium); --bs-primary-inverse: var(--ax-color-white);
 --bs-link-color: var(--ax-link); --bs-link-hover-color: var(--ax-color-navy);
 --bs-body-bg: var(--ax-color-bg-light); --bs-body-color: var(--ax-color-text);
 --bs-app-bg-color: var(--ax-color-bg-light); --bs-app-sidebar-bg-color: var(--ax-color-navy-dark);
 --bs-app-sidebar-base-bg-color: var(--ax-color-navy-dark);
}
body {font-family: var(--ax-font-sans);}
#kt_app_sidebar {background:var(--ax-color-navy-dark)!important; border-right:1px solid var(--ax-color-navy);}
#kt_app_sidebar .menu-link, #kt_app_sidebar .text-sidebar, #kt_app_sidebar .menu-icon, #kt_app_sidebar .menu-icon i {color:var(--ax-color-white)!important;}
#kt_app_sidebar .menu-link.active, #kt_app_sidebar .menu-link:hover {background:var(--ax-color-navy)!important; border-radius:var(--ax-radius-button);}
#kt_app_sidebar .menu-link.active {box-shadow:inset 3px 0 var(--ax-color-teal);}
.app-sidebar-logo {display:flex; flex-direction:column; align-items:flex-start; gap:var(--ax-space-2);}
.app-sidebar-logo img {content:url("logo-light.svg");width:180px!important;height:auto!important;max-width:100%;}
.app-sidebar-logo span {padding-left:0!important; letter-spacing:.03em;}
#kt_app_header img[alt="Logo"] {width:145px!important;height:auto!important;}
#kt_app_header_navbar > .app-navbar-item::before {content:"Secure. Private. Yours.";color:var(--ax-color-heading);font-size:14px;font-weight:600;}
#sign_in_form img[alt="Logo"]:not(.h-20px), .ax-guide-logo {width:240px!important;height:auto!important;max-width:100%;margin:var(--ax-space-4) auto;}
#sign_in_form h1::after {content:"Secure. Private. Yours.";display:block;font-size:14px;font-weight:400;margin-top:var(--ax-space-3);color:var(--ax-color-teal-readable);}
.btn-primary {background:var(--ax-color-teal)!important;border-color:var(--ax-color-teal)!important;color:var(--ax-color-navy-dark)!important;font-weight:600;border-radius:var(--ax-radius-button);}
.btn-primary:hover {background:var(--ax-color-teal-hover)!important;border-color:var(--ax-color-teal-hover)!important;box-shadow:var(--ax-shadow-teal);}
.btn-primary:active {background:var(--ax-color-teal-pressed)!important;}
a {color:var(--ax-link);} a:hover {color:var(--ax-color-navy);}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible {outline:2px solid var(--ax-color-teal-readable)!important;outline-offset:3px;box-shadow:var(--ax-focus-ring)!important;}
#kt_app_footer .app-container::before {content:"Powered by Alpnexa · Secure. Private. Yours.";color:var(--ax-color-heading);font-size:12px;}
#kt_app_footer .app-container {gap:var(--ax-space-2);flex-wrap:wrap;}
#kt_app_footer .text-gray-900 {font-size:11px;}
[data-bs-theme="dark"] {--bs-primary:var(--ax-color-teal);--bs-primary-light:var(--ax-color-navy);--bs-primary-inverse:var(--ax-color-navy-dark);--bs-body-bg:var(--ax-color-navy-dark);--bs-body-color:var(--ax-color-white);--bs-app-bg-color:var(--ax-color-navy-dark);--bs-link-color:var(--ax-color-teal);}
[data-bs-theme="dark"] #kt_app_header_navbar > .app-navbar-item::before,[data-bs-theme="dark"] #kt_app_footer .app-container::before {color:var(--ax-color-white);}
[data-bs-theme="dark"] #sign_in_form img[alt="Logo"]:not(.h-20px),[data-bs-theme="dark"] #kt_app_header img[alt="Logo"] {content:url("logo-light.svg");}
[data-bs-theme="dark"] #sign_in_form h1::after,[data-bs-theme="dark"] a {color:var(--ax-color-teal);}
.ax-guide {background:var(--ax-color-bg-light);color:var(--ax-color-text);font:16px/1.6 var(--ax-font-sans);margin:0;}
.ax-guide main {max-width:960px;margin:auto;padding:32px 24px 64px;}
.ax-guide header {border-bottom:2px solid var(--ax-color-teal);padding-bottom:24px;}
.ax-guide h1,.ax-guide h2,.ax-guide h3 {color:var(--ax-color-heading);}
.ax-guide nav {display:flex;flex-wrap:wrap;gap:16px;margin:24px 0;}
.ax-guide .note {background:var(--ax-color-bg-medium);border-left:4px solid var(--ax-color-teal);padding:16px 24px;border-radius:var(--ax-radius-button);}
.ax-guide table {width:100%;border-collapse:collapse;font-size:15px;}
.ax-guide th,.ax-guide td {text-align:left;padding:12px;border-bottom:1px solid var(--ax-color-border);vertical-align:top;}
.ax-guide th {background:var(--ax-color-bg-medium);}
.ax-guide footer {border-top:1px solid var(--ax-color-border);margin-top:40px;padding-top:20px;font-size:13px;}
.ax-guide pre {white-space:pre-wrap;font-family:var(--ax-font-mono);background:var(--ax-color-bg-medium);padding:20px;}
@media(max-width:600px) {#kt_app_header_navbar > .app-navbar-item::before {content:none;} .ax-guide main {padding:20px 16px;} .ax-guide th,.ax-guide td {padding:8px;font-size:13px;}}
@media(prefers-reduced-motion:reduce) {*,*::before,*::after {animation:none!important;transition:none!important;scroll-behavior:auto!important;}}

/* Native dark surfaces retain readable text and input contrast. */
[data-bs-theme="dark"] {--bs-gray-900:#f1f5f9;--bs-gray-800:#e2e8f0;--bs-gray-700:#cbd5e1;--bs-gray-600:#b8c4d4;--bs-gray-500:#a3b3c6;--bs-gray-400:#8c9caf;--bs-gray-300:#50617a;--bs-gray-200:#33455f;--bs-gray-100:#24364f;--bs-body-color:#f1f5f9;--bs-heading-color:#f1f5f9;}
[data-bs-theme="dark"] .form-control,[data-bs-theme="dark"] .form-select {background-color:var(--ax-color-navy-dark);color:#f1f5f9;border-color:#50617a;}
[data-bs-theme="dark"] a:hover {color:#fff;}
