.ferob-theme {
    --ferob-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
    --ferob-black: #111111;
    --ferob-ink: #1f2329;
    --ferob-graphite: #2b3036;
    --ferob-gray-900: #34383d;
    --ferob-gray-700: #5d6670;
    --ferob-gray-300: #d8dde2;
    --ferob-gray-200: #e8ebef;
    --ferob-gray-100: #f4f5f6;
    --ferob-white: #ffffff;
    --ferob-yellow: #ffd200;
    --ferob-accent: #ffd200;
    --ferob-yellow-soft: #fff7cf;
    --ferob-orange: #f58220;
    --ferob-orange-soft: #fff0df;
    --ferob-border: #d8dde2;
    --ferob-shadow: 0 14px 34px rgba(17, 17, 17, 0.10);
    --ferob-page-bg: #f1f3f2;
    --ferob-panel-bg: #ffffff;
    --ferob-panel-muted-bg: #f8faf9;
    --ferob-panel-hover-bg: #f8faf9;
    --ferob-input-bg: #ffffff;
    --ferob-input-border: #cfd5db;
    --ferob-input-focus: #87929a;
    --ferob-checkbox-accent: #8a6d00;
    --ferob-link: #365486;
    --ferob-link-hover: #1f3f68;
    --ferob-button-bg: #2c3033;
    --ferob-button-hover-bg: #111111;
    --ferob-button-text: #ffffff;
    --ferob-topnav-bg: #2c3033;
    --ferob-topnav-text: #ffffff;
    --ferob-topnav-muted: rgba(255, 255, 255, 0.72);
    --ferob-topnav-border: rgba(17, 17, 17, 0.16);
    --ferob-topnav-height: 64px;
    --ferob-topnav-logo-height: 48px;
    --ferob-topnav-logo-offset-y: -2px;
    --ferob-sidenav-bg: #22272b;
    --ferob-sidenav-footer-bg: #1d2125;
    --ferob-sidenav-border: rgba(255, 255, 255, 0.10);
    --ferob-sidenav-text: rgba(255, 255, 255, 0.72);
    --ferob-sidenav-muted: rgba(255, 255, 255, 0.42);
    --ferob-sidenav-icon: rgba(255, 255, 255, 0.32);
    --ferob-sidenav-active-bg: rgba(255, 255, 255, 0.06);
    --ferob-sidenav-active-text: #ffffff;
    --ferob-sidenav-select-bg: rgba(255, 255, 255, 0.08);
    --ferob-table-border: #e8ebef;
    --ferob-table-heading-bg: #f8faf9;
    --ferob-table-heading-text: #4c555b;
    --ferob-table-heading-border: #cdd5d2;
    --ferob-danger: #dc2626;
    --ferob-success: #16a34a;
    --ferob-card-total: var(--ferob-accent);
    --ferob-card-service: #0f766e;
    --ferob-card-fault: #b45309;
    --ferob-card-work: #c026d3;
    --ferob-card-time: #4c6473;
    --ferob-card-robot: #4a6f46;
    --ferob-card-backup: #2f6f73;
    --ferob-card-cell: #7c6f45;
    --ferob-card-customer: #8f4f64;
    --ferob-card-recent: #607d8b;
    --ferob-card-missing: #6b7280;
}

.ferob-theme-1 {
    --ferob-ink: #f9fafb;
    --ferob-black: #f9fafb;
    --ferob-graphite: #1f2937;
    --ferob-gray-900: #d1d5db;
    --ferob-gray-700: #9ca3af;
    --ferob-gray-300: #374151;
    --ferob-gray-200: #26313d;
    --ferob-gray-100: #111827;
    --ferob-border: #273415;
    --ferob-page-bg: #0f1720;
    --ferob-panel-bg: #111827;
    --ferob-panel-muted-bg: #17212d;
    --ferob-panel-hover-bg: #182231;
    --ferob-input-bg: #0f1720;
    --ferob-input-border: #374151;
    --ferob-input-focus: #f59e0b;
    --ferob-checkbox-accent: #b45309;
    --ferob-link: #fbbf24;
    --ferob-link-hover: #ffcc33;
    --ferob-accent: #f59e0b;
    --ferob-button-bg: #f59e0b;
    --ferob-button-hover-bg: #ffcc33;
    --ferob-button-text: #111827;
    --ferob-topnav-bg: #111827;
    --ferob-topnav-text: #ffffff;
    --ferob-topnav-muted: rgba(255, 255, 255, 0.76);
    --ferob-topnav-border: rgba(245, 158, 11, 0.28);
    --ferob-sidenav-bg: #111827;
    --ferob-sidenav-footer-bg: #0b1118;
    --ferob-sidenav-border: rgba(255, 255, 255, 0.12);
    --ferob-sidenav-text: rgba(255, 255, 255, 0.78);
    --ferob-sidenav-muted: rgba(255, 255, 255, 0.48);
    --ferob-sidenav-icon: rgba(255, 255, 255, 0.38);
    --ferob-sidenav-active-bg: rgba(245, 158, 11, 0.20);
    --ferob-sidenav-active-text: #ffcc33;
    --ferob-sidenav-select-bg: rgba(255, 255, 255, 0.08);
    --ferob-table-border: #26313d;
    --ferob-table-heading-bg: #17212d;
    --ferob-table-heading-text: #e5e7eb;
    --ferob-table-heading-border: #374151;
    --ferob-shadow: 0 14px 34px rgba(0, 0, 0, 0.26);
}

.ferob-theme-2 {
    --ferob-ink: #111827;
    --ferob-black: #111827;
    --ferob-graphite: #1f2937;
    --ferob-border: #e2e8f0;
    --ferob-page-bg: #f8fafc;
    --ferob-panel-bg: #ffffff;
    --ferob-panel-muted-bg: #f8fafc;
    --ferob-panel-hover-bg: #fff7e6;
    --ferob-input-bg: #ffffff;
    --ferob-checkbox-accent: #b45309;
    --ferob-link: #1f2937;
    --ferob-link-hover: #f59e0b;
    --ferob-accent: #f59e0b;
    --ferob-button-bg: #f59e0b;
    --ferob-button-hover-bg: #d97706;
    --ferob-button-text: #111827;
    --ferob-topnav-bg: #ffffff;
    --ferob-topnav-text: #111827;
    --ferob-topnav-muted: rgba(17, 24, 39, 0.68);
    --ferob-topnav-border: rgba(17, 24, 39, 0.10);
    --ferob-sidenav-bg: #ffffff;
    --ferob-sidenav-footer-bg: #f8fafc;
    --ferob-sidenav-border: rgba(17, 24, 39, 0.10);
    --ferob-sidenav-text: #374151;
    --ferob-sidenav-muted: #64748b;
    --ferob-sidenav-icon: #64748b;
    --ferob-sidenav-active-bg: #fff3d6;
    --ferob-sidenav-active-text: #b45309;
    --ferob-sidenav-select-bg: #ffffff;
    --ferob-table-border: #e2e8f0;
    --ferob-table-heading-bg: #f8fafc;
    --ferob-table-heading-text: #334155;
    --ferob-table-heading-border: #cbd5e1;
}

.ferob-theme-3 {
    --ferob-ink: #0f172a;
    --ferob-black: #0f172a;
    --ferob-graphite: #1e3a5f;
    --ferob-border: #d8e2ee;
    --ferob-page-bg: #eef2f6;
    --ferob-panel-bg: #ffffff;
    --ferob-panel-muted-bg: #f5f8fb;
    --ferob-panel-hover-bg: #eef5ff;
    --ferob-input-bg: #ffffff;
    --ferob-checkbox-accent: #1e3a5f;
    --ferob-link: #1e3a5f;
    --ferob-link-hover: #0f172a;
    --ferob-accent: #f59e0b;
    --ferob-button-bg: #1e3a5f;
    --ferob-button-hover-bg: #0f172a;
    --ferob-button-text: #ffffff;
    --ferob-topnav-bg: #ffffff;
    --ferob-topnav-text: #0f172a;
    --ferob-topnav-muted: rgba(15, 23, 42, 0.68);
    --ferob-topnav-border: rgba(15, 23, 42, 0.10);
    --ferob-sidenav-bg: #1e3a5f;
    --ferob-sidenav-footer-bg: #17304e;
    --ferob-sidenav-border: rgba(255, 255, 255, 0.16);
    --ferob-sidenav-text: rgba(255, 255, 255, 0.82);
    --ferob-sidenav-muted: rgba(255, 255, 255, 0.54);
    --ferob-sidenav-icon: rgba(255, 255, 255, 0.54);
    --ferob-sidenav-active-bg: rgba(255, 255, 255, 0.13);
    --ferob-sidenav-active-text: #ffffff;
    --ferob-sidenav-select-bg: rgba(255, 255, 255, 0.10);
    --ferob-table-border: #d8e2ee;
    --ferob-table-heading-bg: #f5f8fb;
    --ferob-table-heading-text: #1e3a5f;
    --ferob-table-heading-border: #c3d2e2;
}

.ferob-theme-4 {
    --ferob-ink: #1e3a5f;
    --ferob-black: #1e3a5f;
    --ferob-graphite: #2563eb;
    --ferob-border: #d9e8ff;
    --ferob-page-bg: #f0f6ff;
    --ferob-panel-bg: #ffffff;
    --ferob-panel-muted-bg: #f7fbff;
    --ferob-panel-hover-bg: #eaf4ff;
    --ferob-input-bg: #ffffff;
    --ferob-checkbox-accent: #2563eb;
    --ferob-link: #2563eb;
    --ferob-link-hover: #1e3a8a;
    --ferob-accent: #2563eb;
    --ferob-button-bg: #2563eb;
    --ferob-button-hover-bg: #1e3a8a;
    --ferob-button-text: #ffffff;
    --ferob-topnav-bg: #ffffff;
    --ferob-topnav-text: #1e3a5f;
    --ferob-topnav-muted: rgba(30, 58, 95, 0.68);
    --ferob-topnav-border: rgba(37, 99, 235, 0.14);
    --ferob-sidenav-bg: #ffffff;
    --ferob-sidenav-footer-bg: #f0f6ff;
    --ferob-sidenav-border: rgba(37, 99, 235, 0.14);
    --ferob-sidenav-text: #2f557f;
    --ferob-sidenav-muted: #6b8aae;
    --ferob-sidenav-icon: #6b8aae;
    --ferob-sidenav-active-bg: #d8e9ff;
    --ferob-sidenav-active-text: #2563eb;
    --ferob-sidenav-select-bg: #ffffff;
    --ferob-table-border: #d9e8ff;
    --ferob-table-heading-bg: #f7fbff;
    --ferob-table-heading-text: #1e3a5f;
    --ferob-table-heading-border: #bfdbfe;
}

.ferob-theme-5 {
    --ferob-ink: #f7ede1;
    --ferob-black: #f7ede1;
    --ferob-graphite: #23262e;
    --ferob-gray-900: #e5e7eb;
    --ferob-gray-700: #9ca3af;
    --ferob-gray-300: #3a3f48;
    --ferob-gray-200: #2b3036;
    --ferob-gray-100: #141923;
    --ferob-orange: #ca7a3a;
    --ferob-border: #3a3f48;
    --ferob-page-bg: #141923;
    --ferob-panel-bg: #1b212b;
    --ferob-panel-muted-bg: #222b35;
    --ferob-panel-hover-bg: #202936;
    --ferob-input-bg: #141923;
    --ferob-input-border: #3a3f48;
    --ferob-input-focus: #ca7a3a;
    --ferob-checkbox-accent: #a8612e;
    --ferob-link: #f7ede1;
    --ferob-link-hover: #ca7a3a;
    --ferob-accent: #ca7a3a;
    --ferob-button-bg: #ca7a3a;
    --ferob-button-hover-bg: #a8612e;
    --ferob-button-text: #141923;
    --ferob-topnav-bg: #141923;
    --ferob-topnav-text: #f7ede1;
    --ferob-topnav-muted: rgba(247, 237, 225, 0.72);
    --ferob-topnav-border: rgba(202, 122, 58, 0.25);
    --ferob-sidenav-bg: #141923;
    --ferob-sidenav-footer-bg: #10141c;
    --ferob-sidenav-border: rgba(247, 237, 225, 0.12);
    --ferob-sidenav-text: rgba(247, 237, 225, 0.76);
    --ferob-sidenav-muted: rgba(247, 237, 225, 0.48);
    --ferob-sidenav-icon: rgba(247, 237, 225, 0.40);
    --ferob-sidenav-active-bg: rgba(202, 122, 58, 0.20);
    --ferob-sidenav-active-text: #ca7a3a;
    --ferob-sidenav-select-bg: rgba(247, 237, 225, 0.08);
    --ferob-table-border: #2b3036;
    --ferob-table-heading-bg: #222b35;
    --ferob-table-heading-text: #f7ede1;
    --ferob-table-heading-border: #3a3f48;
    --ferob-shadow: 0 14px 34px rgba(0, 0, 0, 0.28);
}

.ferob-theme-6 {
    --ferob-sidenav-active-bg: rgba(255, 210, 0, 0.12);
    --ferob-sidenav-active-text: #ffffff;
}

body.ferob-theme {
    background: var(--ferob-page-bg) !important;
    color: var(--ferob-ink);
    font-family: var(--ferob-font-sans);
    font-size: 0.9rem;
    font-weight: 400;
}

.ferob-theme input,
.ferob-theme button,
.ferob-theme select,
.ferob-theme textarea {
    font-family: var(--ferob-font-sans);
}

.ferob-theme input[type="checkbox"] {
    accent-color: var(--ferob-checkbox-accent);
}

.ferob-theme input[type="checkbox"]:focus-visible {
    outline: 2px solid var(--ferob-checkbox-accent);
    outline-offset: 2px;
}

.ferob-theme a {
    color: var(--ferob-link);
}

.ferob-theme a:hover,
.ferob-theme a:focus {
    color: var(--ferob-link-hover);
}

.ferob-theme .form-control {
    background: var(--ferob-input-bg);
    border-color: var(--ferob-input-border);
    color: var(--ferob-ink);
    border-radius: 6px;
    font-size: 0.9rem;
}

.ferob-theme .form-control:focus {
    background: var(--ferob-input-bg);
    border-color: var(--ferob-input-focus);
    color: var(--ferob-ink);
    box-shadow: 0 0 0 0.18rem rgba(76, 85, 91, 0.16);
}

.ferob-theme .btn-primary {
    background: var(--ferob-button-bg);
    border-color: var(--ferob-button-bg);
    color: var(--ferob-button-text);
    font-weight: 650;
}

.ferob-theme .btn-primary:hover,
.ferob-theme .btn-primary:focus {
    background: var(--ferob-button-hover-bg);
    border-color: var(--ferob-button-hover-bg);
    color: var(--ferob-button-text);
}

.ferob-theme button:not(.btn):not(.login-password-toggle):not(.report-type-card):not(.solu-filter-button) {
    min-height: 34px;
    padding: 0.34rem 0.72rem;
    border: 1px solid var(--ferob-gray-300);
    border-radius: 6px;
    background: var(--ferob-panel-bg);
    color: var(--ferob-ink);
    font-size: 0.9rem;
    font-weight: 650;
    line-height: 1.2;
}

.ferob-theme button:not(.btn):not(.login-password-toggle):not(.report-type-card):not(.solu-filter-button):hover,
.ferob-theme button:not(.btn):not(.login-password-toggle):not(.report-type-card):not(.solu-filter-button):focus {
    border-color: var(--ferob-gray-700);
    background: var(--ferob-panel-muted-bg);
    color: var(--ferob-ink);
}

.ferob-theme .ferob-button-icon {
    display: inline-block;
    margin-right: 0.28rem;
    font-size: 0.86em;
    line-height: 1;
    vertical-align: -0.04em;
}

.ferob-theme button[id^="rajaa"],
.ferob-theme button[id^="lisa"],
.ferob-theme button[id^="muuta"][id$="update"],
.ferob-theme button[id="omaupdate"],
.ferob-theme button[id="savereportbutton"],
.ferob-theme button[id="laitteetbtn"],
.ferob-theme button[id="vakioosatbtn"] {
    background: var(--ferob-button-bg) !important;
    border-color: var(--ferob-button-bg) !important;
    color: var(--ferob-button-text) !important;
}

.ferob-theme button[id^="rajaa"]:hover,
.ferob-theme button[id^="lisa"]:hover,
.ferob-theme button[id^="muuta"][id$="update"]:hover,
.ferob-theme button[id="omaupdate"]:hover,
.ferob-theme button[id="savereportbutton"]:hover,
.ferob-theme button[id="laitteetbtn"]:hover,
.ferob-theme button[id="vakioosatbtn"]:hover {
    background: var(--ferob-button-hover-bg) !important;
    border-color: var(--ferob-button-hover-bg) !important;
}

.ferob-theme-6 button[id^="rajaa"],
.ferob-theme-6 button[id^="lisa"],
.ferob-theme-6 button[id^="muuta"][id$="update"],
.ferob-theme-6 button[id="omaupdate"],
.ferob-theme-6 button[id="savereportbutton"] {
    background: var(--ferob-accent) !important;
    border-color: var(--ferob-accent) !important;
    color: #111111 !important;
    box-shadow: 0 0.35rem 0.8rem rgba(255, 210, 0, 0.16);
}

.ferob-theme-6 button[id^="rajaa"]:hover,
.ferob-theme-6 button[id^="rajaa"]:focus,
.ferob-theme-6 button[id^="lisa"]:hover,
.ferob-theme-6 button[id^="lisa"]:focus,
.ferob-theme-6 button[id^="muuta"][id$="update"]:hover,
.ferob-theme-6 button[id^="muuta"][id$="update"]:focus,
.ferob-theme-6 button[id="omaupdate"]:hover,
.ferob-theme-6 button[id="omaupdate"]:focus,
.ferob-theme-6 button[id="savereportbutton"]:hover,
.ferob-theme-6 button[id="savereportbutton"]:focus {
    background: #f2c600 !important;
    border-color: #f2c600 !important;
    color: #111111 !important;
}

.ferob-theme button[class*="nayta"],
.ferob-theme button[class*="muuta"] {
    background: var(--ferob-button-bg) !important;
    border-color: var(--ferob-button-bg) !important;
    color: var(--ferob-button-text) !important;
}

.ferob-theme button[class*="nayta"]:hover,
.ferob-theme button[class*="muuta"]:hover {
    background: var(--ferob-button-hover-bg) !important;
    border-color: var(--ferob-button-hover-bg) !important;
}

.ferob-theme-6 button[class*="nayta"] {
    background: #2f353a !important;
    border-color: #2f353a !important;
    color: #ffffff !important;
}

.ferob-theme-6 button[class*="nayta"]:hover,
.ferob-theme-6 button[class*="nayta"]:focus {
    background: #23282d !important;
    border-color: #23282d !important;
    color: #ffffff !important;
}

.ferob-theme-6 button[class*="muuta"] {
    background: #365486 !important;
    border-color: #365486 !important;
    color: #ffffff !important;
}

.ferob-theme-6 button[class*="muuta"]:hover,
.ferob-theme-6 button[class*="muuta"]:focus {
    background: #29426d !important;
    border-color: #29426d !important;
    color: #ffffff !important;
}

.ferob-theme button[id*="clear"],
.ferob-theme button[id*="cancel"] {
    background: var(--ferob-panel-bg) !important;
    border-color: var(--ferob-gray-300) !important;
    color: var(--ferob-ink) !important;
}

.ferob-theme button[class*="poista"],
.ferob-theme button[id*="poista"] {
    background: var(--ferob-orange) !important;
    border-color: var(--ferob-orange) !important;
    color: #111111 !important;
}

.ferob-theme-6 button[class*="poista"],
.ferob-theme-6 button[id*="poista"] {
    background: var(--ferob-danger) !important;
    border-color: var(--ferob-danger) !important;
    color: #ffffff !important;
}

.ferob-theme-6 button[class*="poista"]:hover,
.ferob-theme-6 button[class*="poista"]:focus,
.ferob-theme-6 button[id*="poista"]:hover,
.ferob-theme-6 button[id*="poista"]:focus {
    background: #b91c1c !important;
    border-color: #b91c1c !important;
    color: #ffffff !important;
}

.ferob-theme.login-page {
    background-color: #101214 !important;
    background-image: linear-gradient(125deg, #050607 0%, #121518 42%, #30353a 100%) !important;
    background-attachment: fixed;
}

.ferob-theme .login-card {
    border: 0 !important;
    border-radius: 0.3rem !important;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.ferob-theme .login-header {
    background: rgba(0, 0, 0, 0.03) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.125) !important;
    color: var(--ferob-ink);
}

.ferob-theme .login-title {
    color: var(--ferob-ink);
    font-weight: 300 !important;
}

.ferob-theme .login-body {
    background: var(--ferob-white);
}

.ferob-theme .login-label {
    color: var(--ferob-ink);
}

.ferob-theme .login-input-icon,
.ferob-theme .login-password-toggle {
    color: #687078;
}

.ferob-theme .login-input:focus {
    border-color: #87929a !important;
    box-shadow: 0 0 0 0.18rem rgba(76, 85, 91, 0.16) !important;
}

.ferob-theme .login-password-toggle:hover,
.ferob-theme .login-password-toggle:focus {
    background: var(--ferob-gray-100);
    color: var(--ferob-black);
}

.ferob-theme .sb-topnav {
    height: var(--ferob-topnav-height);
    padding-right: 28px;
}

.ferob-theme.sb-nav-fixed #layoutSidenav #layoutSidenav_nav .sb-sidenav {
    padding-top: var(--ferob-topnav-height);
}

.ferob-theme.sb-nav-fixed #layoutSidenav #layoutSidenav_content {
    top: var(--ferob-topnav-height);
}

.ferob-theme .sb-topnav.navbar-dark.bg-dark,
.ferob-theme .sb-topnav.navbar-light.bg-light {
    min-height: var(--ferob-topnav-height);
    background: var(--ferob-topnav-bg) !important;
    border-bottom: 0;
    box-shadow: 0 1px 0 var(--ferob-topnav-border);
}

.ferob-theme .sb-topnav .navbar-brand {
    color: var(--ferob-topnav-text);
    display: inline-flex;
    align-items: center;
    flex: 0 0 auto;
    min-width: 240px;
    width: auto;
    padding-left: 28px;
    padding-right: 18px;
    font-size: 0.92rem;
    font-weight: 600;
    white-space: nowrap;
}

.ferob-theme .sb-topnav .navbar-brand-logo {
    height: var(--ferob-topnav-height);
    min-width: 240px;
    padding-top: 0;
    padding-bottom: 0;
}

.ferob-theme .sb-topnav .topnav-app-logo {
    display: block;
    width: auto;
    height: var(--ferob-topnav-logo-height);
    max-width: 220px;
    object-fit: contain;
    transform: translateY(var(--ferob-topnav-logo-offset-y));
}

.ferob-theme .sb-topnav .topnav-app-logo-black {
    display: none;
}

.ferob-theme .sb-topnav.navbar-light .topnav-app-logo-white {
    display: none;
}

.ferob-theme .sb-topnav.navbar-light .topnav-app-logo-black {
    display: block;
}

.ferob-theme .sb-topnav.navbar-dark .topnav-app-logo-white {
    display: block;
}

.ferob-theme .sb-topnav.navbar-dark .topnav-app-logo-black {
    display: none;
}

.ferob-theme .sb-topnav #sidebarToggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    color: var(--ferob-topnav-muted);
    font-size: 1.14rem;
    margin-left: -1.35rem;
    margin-right: 0.75rem;
}

.ferob-theme .sb-topnav #sidebarToggle:hover,
.ferob-theme .sb-topnav #sidebarToggle:focus {
    color: var(--ferob-topnav-text);
}

.ferob-theme .sb-topnav .navbar-brand:hover,
.ferob-theme .sb-topnav .navbar-brand:focus {
    color: var(--ferob-topnav-text);
}

.ferob-theme .topnav-role-admin {
    background: rgba(40, 167, 69, 0.24);
    border-color: rgba(83, 215, 113, 0.72);
    color: #dfffe8;
}

.ferob-theme .topnav-role-user {
    background: rgba(0, 123, 255, 0.86);
    border-color: rgba(120, 186, 255, 0.82);
    color: #ffffff;
}

.ferob-theme-light .topnav-role-admin {
    background: rgba(22, 163, 74, 0.14);
    border-color: rgba(22, 163, 74, 0.48);
    color: #14532d;
}

.ferob-theme-light .topnav-role-user {
    background: rgba(37, 99, 235, 0.14);
    border-color: rgba(37, 99, 235, 0.44);
    color: #1d4ed8;
}

.ferob-theme .topnav-analytics-link {
    color: var(--ferob-topnav-muted);
    font-size: 0.9rem;
}

.ferob-theme .topnav-analytics-link:hover,
.ferob-theme .topnav-analytics-link:focus {
    color: var(--ferob-topnav-text);
}

.ferob-theme .sb-topnav .nav-link,
.ferob-theme .topnav-username {
    color: var(--ferob-topnav-muted);
}

.ferob-theme .sb-topnav .nav-link:hover,
.ferob-theme .sb-topnav .nav-link:focus {
    color: var(--ferob-topnav-text);
}

.ferob-theme .sb-topnav .dropdown-menu {
    border-color: var(--ferob-border);
    background: var(--ferob-panel-bg);
    box-shadow: 0 12px 28px rgba(17, 17, 17, 0.16);
}

.ferob-theme .sb-topnav .dropdown-header {
    color: var(--ferob-gray-700);
}

.ferob-theme .sb-topnav .dropdown-divider {
    border-top-color: var(--ferob-border);
}

.ferob-theme .sb-topnav .dropdown-item {
    color: var(--ferob-ink);
}

.ferob-theme .sb-topnav .dropdown-item:hover,
.ferob-theme .sb-topnav .dropdown-item:focus {
    background: var(--ferob-panel-muted-bg);
    color: var(--ferob-ink);
}

.ferob-theme .sb-sidenav-dark {
    background: var(--ferob-sidenav-bg);
}

.ferob-theme .sb-sidenav-dark .sb-sidenav-menu .nav-link {
    color: var(--ferob-sidenav-text);
    font-size: 0.9rem;
}

.ferob-theme .sb-sidenav-dark .sb-sidenav-menu .nav-link .sb-nav-link-icon {
    color: var(--ferob-sidenav-icon);
}

.ferob-theme .sb-sidenav-dark .sb-sidenav-menu .nav-link:hover,
.ferob-theme .sb-sidenav-dark .sb-sidenav-menu .nav-link:focus,
.ferob-theme .sb-sidenav-dark .sb-sidenav-menu .nav-link.active {
    background: var(--ferob-sidenav-active-bg);
    color: var(--ferob-sidenav-active-text);
}

.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link:hover,
.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link:focus,
.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link.active {
    background: rgba(255, 210, 0, 0.10);
    box-shadow: inset 4px 0 0 var(--ferob-accent);
    color: #ffffff;
}

.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link:hover .sb-nav-link-icon,
.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link:focus .sb-nav-link-icon,
.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link.active .sb-nav-link-icon {
    color: var(--ferob-accent);
}

.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link:hover .sb-sidenav-collapse-arrow,
.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link:focus .sb-sidenav-collapse-arrow,
.ferob-theme-6 .sb-sidenav-dark .sb-sidenav-menu .nav-link.active .sb-sidenav-collapse-arrow {
    color: rgba(255, 255, 255, 0.82);
}

.ferob-theme .sb-sidenav-dark .sb-sidenav-footer {
    background: var(--ferob-sidenav-footer-bg);
    border-top: 1px solid var(--ferob-sidenav-border);
}

.ferob-theme .app-footer {
    background: var(--ferob-panel-bg) !important;
    border-top: 1px solid var(--ferob-border);
    color: var(--ferob-gray-700);
}

.ferob-theme .app-footer .text-muted,
.ferob-theme .app-footer-brand {
    color: var(--ferob-gray-700) !important;
}

.ferob-theme #layoutSidenav_content {
    background: var(--ferob-page-bg);
}

.ferob-theme #layoutSidenav_content main {
    background: var(--ferob-page-bg);
}

.ferob-theme #palsta {
    padding-top: 1rem;
}

.ferob-theme #palsta > div,
.ferob-theme #palsta [id^="kokosivu"],
.ferob-theme #palsta .uusi-raportti-page {
    background: var(--ferob-page-bg) !important;
}

.ferob-theme #palsta > div > .p-2,
.ferob-theme #palsta [class*="suodattimet"],
.ferob-theme #palsta .report-type-block {
    border: 1px solid var(--ferob-border) !important;
    border-radius: 8px !important;
    background: var(--ferob-panel-bg) !important;
    box-shadow: 0 8px 22px rgba(17, 17, 17, 0.05);
}

.ferob-theme #kokosivusolut > .p-2,
.ferob-theme #kokosivulaitteet > .p-2 {
    border: 1px solid var(--ferob-border) !important;
    border-radius: 8px !important;
    background: var(--ferob-panel-bg) !important;
    box-shadow: 0 8px 22px rgba(17, 17, 17, 0.05);
    padding: 0.75rem !important;
}

.ferob-theme #kokosivusolut .suodattimetdiv,
.ferob-theme #kokosivulaitteet .suodattimetdivlaite {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none;
}

.ferob-theme #kokosivusolut .form-group,
.ferob-theme #kokosivulaitteet .form-group {
    margin-bottom: 0.75rem;
}

.ferob-theme #palsta h4,
.ferob-theme #palsta h6 {
    color: var(--ferob-ink);
    font-weight: 650;
    letter-spacing: 0;
}

.ferob-theme #palsta h4 {
    font-size: 1.28rem;
}

.ferob-theme #palsta h6 {
    font-size: 0.92rem;
}

.ferob-theme #palsta label {
    color: var(--ferob-ink);
    font-size: 0.9rem;
}

.ferob-theme #palsta table {
    display: inline-table !important;
    width: max-content !important;
    max-width: 100%;
    border: 1px solid var(--ferob-border) !important;
    background: var(--ferob-panel-bg);
    table-layout: auto !important;
}

.ferob-theme #palsta table th,
.ferob-theme #palsta table td {
    border-color: var(--ferob-table-border) !important;
    color: var(--ferob-ink);
    font-size: 0.84rem;
    line-height: 1.28;
    padding: 0.42rem 1.45rem;
    vertical-align: top;
    white-space: nowrap;
    width: auto !important;
}

.ferob-theme #palsta table th:first-child,
.ferob-theme #palsta table td:first-child {
    padding-left: 0.75rem;
}

.ferob-theme #palsta table tr {
    border-color: var(--ferob-table-border) !important;
}

.ferob-theme #palsta table thead,
.ferob-theme #palsta table thead tr,
.ferob-theme #palsta table thead th,
.ferob-theme #palsta table .thead-light th,
.ferob-theme #palsta table tr:first-child th {
    background: var(--ferob-table-heading-bg) !important;
    color: var(--ferob-table-heading-text) !important;
}

.ferob-theme #palsta table thead th,
.ferob-theme #palsta table .thead-light th,
.ferob-theme #palsta table tr:first-child th {
    border-bottom: 1px solid var(--ferob-table-heading-border) !important;
    font-weight: 650;
    padding-bottom: 0.46rem;
    padding-top: 0.46rem;
}

.ferob-theme #palsta table tbody tr:hover {
    background: var(--ferob-panel-hover-bg);
}

.ferob-theme #palsta table button,
.ferob-theme #palsta table .btn {
    min-height: 28px;
    padding: 0.2rem 0.48rem;
    font-size: 0.8rem;
    line-height: 1.2;
}

.ferob-theme #palsta #laitteet {
    display: block;
    width: min(100%, 760px) !important;
}

.ferob-theme #palsta #laitteet > .laitteet-caption {
    display: block;
    margin-bottom: 0.35rem;
    color: var(--ferob-ink);
    font-size: 0.9rem;
    text-align: left;
}

.ferob-theme #palsta table#laitteettaulu {
    display: table !important;
    width: 100% !important;
    max-width: 100%;
    table-layout: auto !important;
}

.ferob-theme #palsta table#laitteettaulu thead {
    border: 0 !important;
}

.ferob-theme #palsta table#laitteettaulu th,
.ferob-theme #palsta table#laitteettaulu td {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
}

.ferob-theme #palsta table#laitteettaulu tbody td:first-child {
    vertical-align: middle;
}

.ferob-theme #palsta table#laitteettaulu .laitevalinta-checkbox {
    margin: 0;
    position: static;
    vertical-align: middle;
}

.ferob-theme #palsta #tarkistuskohdat {
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
}

.ferob-theme #palsta table#taulutarkistus {
    display: table !important;
    width: 100% !important;
    max-width: 100%;
    table-layout: fixed !important;
}

.ferob-theme #palsta table#taulutarkistus th,
.ferob-theme #palsta table#taulutarkistus td {
    padding: 0.38rem 0.55rem !important;
    white-space: normal !important;
}

.ferob-theme #palsta table#taulutarkistus th:nth-child(1),
.ferob-theme #palsta table#taulutarkistus td:nth-child(1) {
    width: 25% !important;
}

.ferob-theme #palsta table#taulutarkistus th:nth-child(2),
.ferob-theme #palsta table#taulutarkistus td:nth-child(2),
.ferob-theme #palsta table#taulutarkistus th:nth-child(3),
.ferob-theme #palsta table#taulutarkistus td:nth-child(3),
.ferob-theme #palsta table#taulutarkistus th:nth-child(4),
.ferob-theme #palsta table#taulutarkistus td:nth-child(4) {
    width: 7% !important;
    text-align: center;
}

.ferob-theme #palsta table#taulutarkistus th:nth-child(5),
.ferob-theme #palsta table#taulutarkistus td:nth-child(5) {
    width: 9% !important;
    text-align: center;
}

.ferob-theme #palsta table#taulutarkistus th:nth-child(6),
.ferob-theme #palsta table#taulutarkistus td:nth-child(6) {
    width: 45% !important;
}

.ferob-theme #palsta .tarkistus-huomautus-wrap {
    width: 100%;
    margin: 0;
    padding: 0;
}

.ferob-theme #palsta input.tarkistus-huomautus {
    position: static;
    display: block;
    width: 100% !important;
    min-width: 0;
    height: 1.6rem;
    margin: 0 !important;
    padding: 0.12rem 0.38rem;
    box-sizing: border-box;
    font-size: 0.8rem;
    line-height: 1.2;
}

.ferob-theme #palsta #vakioosatdiv {
    max-width: 100%;
}

.ferob-theme #palsta #vakioosatdiv > p {
    margin-bottom: 0.45rem;
}

.ferob-theme #palsta table#vakioosattaulu {
    display: table !important;
    margin-bottom: 0.45rem;
}

.ferob-theme #palsta table#vakioosattaulu th,
.ferob-theme #palsta table#vakioosattaulu td {
    padding-top: 0.28rem !important;
    padding-bottom: 0.28rem !important;
    vertical-align: middle;
}

.ferob-theme #palsta table#vakioosattaulu select.form-control {
    height: 2rem;
    min-height: 2rem;
    padding-top: 0.2rem;
    padding-bottom: 0.2rem;
    line-height: 1.2;
}

.ferob-theme #palsta #vakioosatbtn {
    display: block;
    margin: 0 0 0.75rem;
    max-width: 100%;
    white-space: normal;
}

.ferob-theme #palsta .responsive-list-table-wrap {
    box-sizing: border-box;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.ferob-theme #palsta table#asiakaslistaustable {
    display: table !important;
    width: 100% !important;
    min-width: 1350px;
    max-width: none;
    table-layout: fixed !important;
}

.ferob-theme #palsta table#asiakaslistaustable th,
.ferob-theme #palsta table#asiakaslistaustable td {
    padding: 0.36rem 0.55rem !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: normal;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(1),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(1) {
    width: 14% !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(2),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(2) {
    width: 16% !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(3),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(3) {
    width: 13% !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(4),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(4) {
    width: 16% !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(5),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(5) {
    width: 11% !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(6),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(6) {
    width: 14.5% !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(7),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(7) {
    width: 6.5% !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(7) {
    white-space: nowrap !important;
}

.ferob-theme #palsta table#asiakaslistaustable th:nth-child(8),
.ferob-theme #palsta table#asiakaslistaustable td:nth-child(8) {
    width: 9% !important;
    white-space: normal !important;
}

.ferob-theme #palsta table#asiakaslistaustable button {
    margin: 0;
    white-space: nowrap;
}

.ferob-theme #palsta table#laitelistaustable {
    display: table !important;
    width: 100% !important;
    min-width: 1080px;
    max-width: none;
    table-layout: fixed !important;
}

.ferob-theme #palsta table#laitelistaustable th,
.ferob-theme #palsta table#laitelistaustable td {
    padding: 0.38rem 0.55rem !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: normal;
}

.ferob-theme #palsta table#laitelistaustable th:nth-child(1),
.ferob-theme #palsta table#laitelistaustable td:nth-child(1) {
    width: 12% !important;
}

.ferob-theme #palsta table#laitelistaustable th:nth-child(2),
.ferob-theme #palsta table#laitelistaustable td:nth-child(2) {
    width: 11% !important;
}

.ferob-theme #palsta table#laitelistaustable th:nth-child(3),
.ferob-theme #palsta table#laitelistaustable td:nth-child(3) {
    width: 13% !important;
}

.ferob-theme #palsta table#laitelistaustable th:nth-child(4),
.ferob-theme #palsta table#laitelistaustable td:nth-child(4) {
    width: 13% !important;
}

.ferob-theme #palsta table#laitelistaustable th:nth-child(5),
.ferob-theme #palsta table#laitelistaustable td:nth-child(5) {
    width: 15% !important;
}

.ferob-theme #palsta table#laitelistaustable th:nth-child(6),
.ferob-theme #palsta table#laitelistaustable td:nth-child(6) {
    width: 21% !important;
}

.ferob-theme #palsta table#laitelistaustable th:nth-child(7),
.ferob-theme #palsta table#laitelistaustable td:nth-child(7) {
    width: 17% !important;
    white-space: normal !important;
}

.ferob-theme #palsta table#laitelistaustable button {
    margin: 0;
    white-space: nowrap;
}

.ferob-theme #palsta table#solulistaustabletable {
    display: table !important;
    width: 100% !important;
    min-width: 1120px;
    max-width: none;
    table-layout: fixed !important;
}

.ferob-theme #palsta table#solulistaustabletable th,
.ferob-theme #palsta table#solulistaustabletable td {
    padding: 0.38rem 0.55rem !important;
    white-space: normal !important;
    overflow-wrap: anywhere;
    word-break: normal;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(1),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(1) {
    width: 16% !important;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(2),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(2) {
    width: 17% !important;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(3),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(3) {
    width: 13% !important;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(4),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(4) {
    width: 8% !important;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(5),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(5) {
    width: 8% !important;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(6),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(6) {
    width: 22% !important;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(7),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(7) {
    width: 7% !important;
}

.ferob-theme #palsta table#solulistaustabletable th:nth-child(8),
.ferob-theme #palsta table#solulistaustabletable td:nth-child(8) {
    width: 9% !important;
    white-space: normal !important;
}

.ferob-theme #palsta table#solulistaustabletable button {
    margin: 0;
    white-space: nowrap;
}

.ferob-theme #palsta table#asiakaslistaustable .list-actions-cell,
.ferob-theme #palsta table#solulistaustabletable .list-actions-cell,
.ferob-theme #palsta table#laitelistaustable .list-actions-cell {
    vertical-align: middle;
}

.ferob-theme #palsta .list-row-actions {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 0.22rem;
}

.ferob-theme #hakupvmtaulu {
    box-sizing: border-box;
    max-width: 100%;
    -webkit-overflow-scrolling: touch;
    width: 100%;
    overflow-x: auto;
}

.ferob-theme #hakupvmtaulu #editableTable {
    width: 100% !important;
    min-width: 1160px;
    max-width: none;
    table-layout: fixed !important;
}

.ferob-theme #hakupvmtaulu #editableTable th,
.ferob-theme #hakupvmtaulu #editableTable td {
    font-size: 0.8rem;
    overflow: visible;
    overflow-wrap: anywhere;
    padding: 0.34rem 0.48rem !important;
    text-overflow: clip;
    vertical-align: middle;
    white-space: normal !important;
    word-break: normal;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(1),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(1) {
    width: 10% !important;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(2),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(2) {
    width: 7% !important;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(3),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(3) {
    width: 18% !important;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(4),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(4) {
    width: 18% !important;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(5),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(5) {
    width: 9% !important;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(6),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(6) {
    width: 7% !important;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(7),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(7) {
    width: 11% !important;
}

.ferob-theme #hakupvmtaulu #editableTable th:nth-child(8),
.ferob-theme #hakupvmtaulu #editableTable td:nth-child(8) {
    width: 20% !important;
}

.ferob-theme #hakupvmtaulu #editableTable td.report-actions-cell {
    text-overflow: clip;
    white-space: normal !important;
}

.ferob-theme #hakupvmtaulu #editableTable .report-row-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.16rem 0.22rem;
}

.ferob-theme #hakupvmtaulu #editableTable button {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    margin: 0;
    padding: 0.16rem 0.38rem;
    font-size: 0.76rem;
    white-space: nowrap;
}

.ferob-theme #report-page-size {
    min-width: 68px;
}

.ferob-theme .report-page-button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.ferob-theme .uusi-raportti-page {
    --report-service: #0f766e;
    --report-service-soft: #eef8f5;
    --report-fault: #b45309;
    --report-fault-soft: #fff4e8;
    --report-work: #c026d3;
    --report-work-soft: #fbecfe;
    --report-neutral: var(--ferob-graphite);
}

.ferob-theme .report-type-card {
    border-radius: 8px;
}

.ferob-theme .report-type-card.is-selected {
    box-shadow: 0 0 0 1px rgba(17, 17, 17, 0.12), 0 12px 28px rgba(17, 17, 17, 0.08);
}

.ferob-theme .admin-stat-summary {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
    gap: 10px;
    max-width: 1120px;
    margin: 10px 0 22px;
}

.ferob-theme .admin-stat-card {
    position: relative;
    display: block;
    min-height: 104px;
    box-sizing: border-box;
    padding: 13px 14px;
    border: 1px solid var(--ferob-border);
    border-top: 4px solid #6b7280;
    border-radius: 8px;
    background: var(--ferob-panel-bg);
    box-shadow: 0 8px 22px rgba(17, 17, 17, 0.05);
}

.ferob-theme .admin-stat-card span,
.ferob-theme .admin-stat-card small {
    display: block;
    color: var(--ferob-gray-700);
    font-size: 0.72rem;
    line-height: 1.25;
}

.ferob-theme .admin-stat-card span {
    min-height: 1.8rem;
    padding-right: 32px;
    font-weight: 400;
}

.ferob-theme .admin-stat-icon {
    position: absolute;
    top: 12px;
    right: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    color: #6b7280;
    font-size: 1.25rem;
    opacity: 0.32;
    pointer-events: none;
}

.ferob-theme .admin-stat-card strong {
    display: block;
    margin: 8px 0 4px;
    color: var(--ferob-ink);
    font-size: 1.75rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
    line-height: 1.05;
}

.ferob-theme .admin-stat-main {
    border-top-color: var(--ferob-card-total);
}

.ferob-theme .admin-stat-main .admin-stat-icon {
    color: var(--ferob-card-total);
}

.ferob-theme .admin-stat-service {
    border-top-color: var(--ferob-card-service);
}

.ferob-theme .admin-stat-service .admin-stat-icon {
    color: var(--ferob-card-service);
}

.ferob-theme .admin-stat-fault {
    border-top-color: var(--ferob-card-fault);
}

.ferob-theme .admin-stat-fault .admin-stat-icon {
    color: var(--ferob-card-fault);
}

.ferob-theme .admin-stat-work {
    border-top-color: var(--ferob-card-work);
}

.ferob-theme .admin-stat-work .admin-stat-icon {
    color: var(--ferob-card-work);
}

.ferob-theme .admin-stat-cell {
    border-top-color: var(--ferob-card-cell);
}

.ferob-theme .admin-stat-cell .admin-stat-icon {
    color: var(--ferob-card-cell);
}

.ferob-theme .admin-stat-robot {
    border-top-color: var(--ferob-card-robot);
}

.ferob-theme .admin-stat-robot .admin-stat-icon {
    color: var(--ferob-card-robot);
    opacity: 0.5;
    stroke-width: 2.1;
}

.ferob-theme .admin-stat-customer {
    border-top-color: var(--ferob-card-customer);
}

.ferob-theme .admin-stat-customer .admin-stat-icon {
    color: var(--ferob-card-customer);
}

.ferob-theme .maintenance-panel {
    max-width: 100%;
}

.ferob-theme #palsta .statistics-section-heading {
    color: var(--ferob-ink);
    font-size: 1.08rem;
    font-weight: 650;
    line-height: 1.3;
}

.ferob-theme #palsta table.maintenance-table {
    display: table !important;
    width: max-content !important;
    min-width: 0;
    border: 0 !important;
    background: var(--ferob-panel-bg);
}

.ferob-theme #palsta table.maintenance-table th,
.ferob-theme #palsta table.maintenance-table td {
    border-bottom: 1px solid var(--ferob-table-border) !important;
    padding: 0.36rem 0.6rem;
}

.ferob-theme #palsta table.maintenance-table .maintenance-col-date {
    width: 112px !important;
    min-width: 112px;
}

.ferob-theme #palsta .maintenance-panel-overdue table.maintenance-table .maintenance-col-date {
    width: 96px !important;
    min-width: 96px;
}

.ferob-theme #palsta table.maintenance-table .maintenance-col-customer {
    width: 340px !important;
    min-width: 340px;
    max-width: 340px;
    overflow-wrap: anywhere;
    white-space: normal;
}

.ferob-theme #palsta table.maintenance-table .maintenance-col-cell {
    width: 310px !important;
    min-width: 310px;
    max-width: 310px;
    overflow-wrap: anywhere;
    white-space: normal;
}

.ferob-theme #palsta table.maintenance-table .maintenance-col-report {
    width: 210px !important;
    min-width: 210px;
    white-space: normal;
}

.ferob-theme .maintenance-report-meta {
    color: var(--ferob-gray-700);
}

.ferob-theme .maintenance-table-wrap {
    border-color: var(--ferob-border);
}

.ferob-theme #palsta table.maintenance-table th {
    border-color: var(--ferob-table-heading-border);
    background: var(--ferob-table-heading-bg);
    color: var(--ferob-table-heading-text);
}

.ferob-theme #palsta table.maintenance-table td {
    color: var(--ferob-ink);
}

.ferob-theme #palsta table.maintenance-table .maintenance-empty {
    color: var(--ferob-gray-700);
}

.ferob-theme #palsta table.maintenance-table tbody tr:hover {
    background: var(--ferob-panel-hover-bg);
}

body.ferob-theme.analytiikka-page {
    --report-service: #0f766e;
    --report-service-border: #b8d8d2;
    --report-service-bg: #eef8f5;
    --report-fault: #b45309;
    --report-fault-border: #efc491;
    --report-fault-bg: #fff4e8;
    --report-work: #c026d3;
    --report-work-border: #e4b8ee;
    --report-work-bg: #fbecfe;
    background: #f1f3f2;
    color: var(--ferob-ink);
}

.ferob-theme .analytiikka-topbar {
    grid-template-columns: minmax(240px, auto) 1fr;
    min-height: var(--ferob-topnav-height);
    height: var(--ferob-topnav-height);
    padding: 0 28px 0 0;
    background: var(--ferob-topnav-bg);
    border-bottom: 0;
    box-shadow: 0 1px 0 var(--ferob-topnav-border);
}

.ferob-theme .analytiikka-brand {
    color: var(--ferob-topnav-text);
    display: inline-flex;
    align-items: center;
    font-size: 0.92rem;
    font-weight: 600;
}

.ferob-theme .analytiikka-brand:hover,
.ferob-theme .analytiikka-brand:focus {
    color: var(--ferob-topnav-text);
}

.ferob-theme .analytiikka-brand-logo {
    min-width: 240px;
    height: var(--ferob-topnav-height);
    padding-left: 44px;
    padding-right: 18px;
}

.ferob-theme .analytiikka-topbar .topnav-app-logo {
    display: block;
    width: auto;
    height: var(--ferob-topnav-logo-height);
    max-width: 220px;
    object-fit: contain;
    transform: translateY(var(--ferob-topnav-logo-offset-y));
}

.ferob-theme .analytiikka-topbar .topnav-app-logo-black {
    display: none;
}

.ferob-theme .analytiikka-topbar .topnav-app-logo-white {
    display: block;
}

.ferob-theme .analytiikka-back {
    border-color: rgba(255, 255, 255, 0.24);
    color: var(--ferob-white);
}

.ferob-theme .analytiikka-back:hover {
    background: rgba(255, 255, 255, 0.08);
    color: var(--ferob-white);
}

.ferob-theme .metric-box,
.ferob-theme .chart-panel,
.ferob-theme .table-panel,
.ferob-theme .solu-empty-state,
.ferob-theme .solu-title-panel {
    border-color: var(--ferob-border);
    border-radius: 8px;
    box-shadow: 0 8px 22px rgba(17, 17, 17, 0.05);
}

.ferob-theme .metric-main,
.ferob-theme .metric-total {
    border-top-color: var(--ferob-card-total);
    background: var(--ferob-panel-bg);
}

.ferob-theme .metric-main .metric-icon,
.ferob-theme .metric-total .metric-icon {
    color: var(--ferob-card-total);
    opacity: 0.32;
}

.ferob-theme .metric-service,
.ferob-theme .metric-fault,
.ferob-theme .metric-work,
.ferob-theme .metric-time,
.ferob-theme .metric-robot,
.ferob-theme .metric-backup,
.ferob-theme .metric-cell,
.ferob-theme .metric-customer,
.ferob-theme .metric-recent,
.ferob-theme .metric-missing {
    border-color: var(--ferob-border);
    background: var(--ferob-panel-bg);
}

.ferob-theme .metric-service {
    border-top-color: var(--ferob-card-service);
}

.ferob-theme .metric-fault {
    border-top-color: var(--ferob-card-fault);
}

.ferob-theme .metric-work {
    border-top-color: var(--ferob-card-work);
}

.ferob-theme .metric-time {
    border-top-color: var(--ferob-card-time);
}

.ferob-theme .metric-robot {
    border-top-color: var(--ferob-card-robot);
}

.ferob-theme .metric-backup {
    border-top-color: var(--ferob-card-backup);
}

.ferob-theme .metric-cell {
    border-top-color: var(--ferob-card-cell);
}

.ferob-theme .metric-customer {
    border-top-color: var(--ferob-card-customer);
}

.ferob-theme .metric-recent {
    border-top-color: var(--ferob-card-recent);
}

.ferob-theme .metric-missing {
    border-top-color: var(--ferob-card-missing);
}

.ferob-theme .metric-service strong,
.ferob-theme .metric-fault strong,
.ferob-theme .metric-work strong {
    color: var(--ferob-ink);
}

.ferob-theme .metric-service .metric-icon {
    color: var(--ferob-card-service);
}

.ferob-theme .metric-fault .metric-icon {
    color: var(--ferob-card-fault);
}

.ferob-theme .metric-work .metric-icon {
    color: var(--ferob-card-work);
}

.ferob-theme .metric-time .metric-icon {
    color: var(--ferob-card-time);
}

.ferob-theme .metric-robot .metric-icon {
    color: var(--ferob-card-robot);
}

.ferob-theme .metric-backup .metric-icon {
    color: var(--ferob-card-backup);
}

.ferob-theme .metric-cell .metric-icon {
    color: var(--ferob-card-cell);
}

.ferob-theme .metric-customer .metric-icon {
    color: var(--ferob-card-customer);
}

.ferob-theme .metric-recent .metric-icon {
    color: var(--ferob-card-recent);
}

.ferob-theme .metric-missing .metric-icon {
    color: var(--ferob-card-missing);
}

.ferob-theme .panel-heading h2,
.ferob-theme .analytiikka-header h1 {
    color: var(--ferob-black);
}

.ferob-theme .analytiikka-header h1 {
    font-size: 1.65rem;
}

.ferob-theme .panel-heading h2 {
    font-size: 1rem;
}

.ferob-theme .analytiikka-table th,
.ferob-theme .analytiikka-table td {
    font-size: 0.84rem;
    padding-left: 1rem;
    padding-right: 1rem;
}

.ferob-theme .analytiikka-table thead th {
    background: #fff;
    color: #4c555b;
    border-bottom: 1px solid #cdd5d2;
}

.ferob-theme .analytiikka-table a {
    color: #365486;
}

.ferob-theme .solu-pdf-button,
.ferob-theme .solu-pdf-button:visited {
    background: #2c3033;
    color: var(--ferob-white);
}

.ferob-theme .solu-pdf-button:hover,
.ferob-theme .solu-pdf-button:focus,
.ferob-theme .solu-pdf-button:active {
    background: var(--ferob-black);
    color: var(--ferob-white);
    text-decoration: none;
}

.ferob-theme .solu-filter-button {
    border: 1px solid #d9b300;
    background: var(--ferob-yellow);
    color: var(--ferob-black);
    box-shadow: 0 1px 2px rgba(17, 17, 17, 0.12);
}

.ferob-theme .solu-filter-button:hover,
.ferob-theme .solu-filter-button:focus {
    border-color: #b99800;
    background: #e8bf00;
    color: var(--ferob-black);
    box-shadow: 0 0 0 0.18rem rgba(255, 210, 0, 0.24);
}

.ferob-theme .solu-filter-button:active {
    border-color: #a88900;
    background: #d9b300;
    color: var(--ferob-black);
}

@media (max-width: 720px) {
    .ferob-theme .sb-topnav {
        padding-right: 14px;
    }

    .ferob-theme .sb-topnav .navbar-brand {
        min-width: 0;
        padding-left: 16px;
        padding-right: 12px;
    }

    .ferob-theme .sb-topnav .navbar-brand-logo {
        min-width: 128px;
    }

    .ferob-theme .sb-topnav .topnav-app-logo {
        height: 36px;
        max-width: 150px;
        transform: none;
    }

    .ferob-theme .analytiikka-topbar {
        grid-template-columns: 1fr auto;
        padding-right: 16px;
    }

    .ferob-theme .analytiikka-brand-logo {
        min-width: 128px;
        padding-left: 16px;
        padding-right: 12px;
    }

    .ferob-theme .analytiikka-topbar .topnav-app-logo {
        height: 36px;
        max-width: 150px;
        transform: none;
    }

    .ferob-theme #palsta {
        padding-top: 0.5rem;
    }

    .ferob-theme #palsta .w-25,
    .ferob-theme #palsta .w-50,
    .ferob-theme #palsta .w-75 {
        width: 100% !important;
    }

    .ferob-theme #palsta table th,
    .ferob-theme #palsta table td {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }
}
