/* ==========================================================================
   SERVİSLOC ENTERPRISE DESIGN SYSTEM (v7.0 PREMIUM SAAS)
   Single Source of Truth for B2B SaaS / ERP UI & UX
   Design Standard: Linear, Stripe, Vercel, modern B2B ERP panels
   Priorities: Speed, Extreme Clarity, Visual Calm, 8-Hour Low Fatigue, High Density
   ========================================================================== */

:root {
    /* 1. TYPOGRAPHY TOKENS */
    --sl-font: 'Inter', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --sl-font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

    --sl-fs-page-title: 1.25rem;      /* 20px */
    --sl-fs-section-title: 1rem;      /* 16px */
    --sl-fs-card-title: 0.9375rem;    /* 15px */
    --sl-fs-body: 0.875rem;           /* 14px */
    --sl-fs-table: 0.84375rem;        /* 13.5px */
    --sl-fs-label: 0.78125rem;        /* 12.5px */
    --sl-fs-caption: 0.75rem;         /* 12px */
    --sl-fs-xs: 0.6875rem;            /* 11px */

    --sl-fw-regular: 400;
    --sl-fw-medium: 500;
    --sl-fw-semibold: 600;
    --sl-fw-bold: 700;

    /* 2. COLOR TOKENS (Calm, Semantic & Uncluttered) */
    --sl-primary: #2563EB;
    --sl-primary-hover: #1D4ED8;
    --sl-primary-active: #1E40AF;
    --sl-primary-subtle: #EFF6FF;
    --sl-primary-border: #BFDBFE;

    --sl-dark: #0F172A;
    --sl-text: #0F172A;
    --sl-text-secondary: #334155;
    --sl-text-muted: #64748B;
    --sl-text-subtle: #94A3B8;

    --sl-bg: #F8FAFC;
    --sl-surface: #FFFFFF;
    --sl-surface-subtle: #F8FAFC;
    --sl-surface-muted: #F1F5F9;

    --sl-border: #E2E8F0;
    --sl-border-subtle: #F1F5F9;
    --sl-border-strong: #CBD5E1;

    /* Semantic Status Colors (Only to Convey Meaning) */
    --sl-success: #16A34A;
    --sl-success-text: #15803D;
    --sl-success-bg: #F0FDF4;
    --sl-success-border: #BBF7D0;

    --sl-danger: #DC2626;
    --sl-danger-text: #B91C1C;
    --sl-danger-bg: #FEF2F2;
    --sl-danger-border: #FECACA;

    --sl-warning: #D97706;
    --sl-warning-text: #B45309;
    --sl-warning-bg: #FFFBEB;
    --sl-warning-border: #FDE68A;

    --sl-info: #0284C7;
    --sl-info-text: #0369A1;
    --sl-info-bg: #F0F9FF;
    --sl-info-border: #BAE6FD;

    /* 3. SPACING & LAYOUT TOKENS */
    --sl-space-1: 4px;
    --sl-space-2: 8px;
    --sl-space-3: 12px;
    --sl-space-4: 16px;
    --sl-space-5: 20px;
    --sl-space-6: 24px;
    --sl-space-8: 32px;

    /* 4. RADIUS & SHADOW TOKENS */
    --sl-radius-xs: 4px;
    --sl-radius-sm: 6px;
    --sl-radius: 6px;
    --sl-radius-md: 8px;
    --sl-radius-lg: 10px;

    --sl-shadow-none: none;
    --sl-shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.04);
    --sl-shadow-sm: 0 1px 3px rgba(15, 23, 42, 0.05), 0 1px 2px rgba(15, 23, 42, 0.03);
    --sl-shadow-md: 0 4px 12px rgba(15, 23, 42, 0.06);
    --sl-shadow-modal: 0 20px 25px -5px rgba(15, 23, 42, 0.14), 0 8px 10px -6px rgba(15, 23, 42, 0.06);

    /* 5. COMPONENT HEIGHTS */
    --sl-h-xs: 26px;
    --sl-h-sm: 30px;
    --sl-h-md: 36px;
    --sl-h-lg: 40px;

    /* 6. SIDEBAR & TOPBAR DIMENSIONS */
    --sl-sidebar-w: 240px;
    --sl-topbar-h: 48px;

    /* Legacy Fallback Variables */
    --accent: #2563EB;
    --accent-hover: #1D4ED8;
    --accent-dark: #1E293B;
    --border: #E2E8F0;
    --text-head: #0F172A;
    --text-muted: #64748B;
    --panel-bg: #F8FAFC;
    --panel-card: #FFFFFF;
    --panel-border: #E2E8F0;
    --panel-text: #0F172A;
    --panel-muted: #64748B;
    --panel-primary: #2563EB;
}

/* ==========================================================================
   GLOBAL TYPOGRAPHY & BASE RESETS
   ========================================================================== */
*, *::before, *::after {
    box-sizing: border-box;
}

html, body {
    margin: 0;
    padding: 0;
    font-family: var(--sl-font) !important;
    font-size: 14px;
    color: var(--sl-text);
    background-color: var(--sl-bg);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

button, input, select, textarea {
    font-family: inherit;
    font-size: inherit;
}

a {
    color: var(--sl-primary);
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

/* Neutralize excessive font-weights (800/900 bold spam) */
h1, h2, h3, h4, h5, h6, strong, b,
.section-title, .panel-card-header h2, .form-section-title {
    font-family: var(--sl-font) !important;
    font-weight: var(--sl-fw-semibold) !important;
    letter-spacing: -0.015em;
    color: var(--sl-text);
}

[style*="font-weight:900"],
[style*="font-weight: 900"],
[style*="font-weight:800"],
[style*="font-weight: 800"] {
    font-weight: var(--sl-fw-semibold) !important;
}

/* Protect FontAwesome Icons */
.fas, .far, .fab, .fa, .fa-solid, .fa-regular, .fa-brands, [class*="fa-"] {
    font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands", "FontAwesome" !important;
    font-style: normal;
}
.fab, .fa-brands {
    font-family: "Font Awesome 6 Brands" !important;
}

/* ==========================================================================
   AUTHENTICATED APPLICATION SHELL & FULL-VIEWPORT LAYOUT
   ========================================================================== */
html,
body.authenticated {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    min-height: 100vh !important;
    overflow-x: hidden !important;
    background: var(--sl-bg) !important;
}

body.authenticated footer,
body.authenticated header:not(.panel-main-topbar),
body.authenticated #mainNav,
body.authenticated .site-footer {
    display: none !important;
}

body.authenticated #panelSection {
    width: 100% !important;
    max-width: none !important;
    min-width: 100% !important;
    min-height: 100vh !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
}

/* Nullify external css/style.css .container constraints in authenticated mode */
body.authenticated #panelSection > .container,
body.authenticated .container,
body.authenticated .panel-workspace,
body.authenticated .panel-main-wrapper,
body.authenticated .panel-main,
body.authenticated .panel-main-content {
    max-width: none !important;
}

body.authenticated #panelSection > .container {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Authentication Visibility Enforcement */
body.authenticated #loginContainer,
body.authenticated .sl-auth-page {
    display: none !important;
}

body:not(.authenticated) #mainDashboardContainer,
body:not(.authenticated) #mobileAppShell {
    display: none !important;
}

body:not(.authenticated) #loginContainer,
body:not(.authenticated) .sl-auth-page {
    display: flex !important;
}

body.authenticated .panel-app-shell,
body.authenticated #mainDashboardContainer {
    display: flex !important;
    width: 100vw !important;
    max-width: 100vw !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--sl-bg) !important;
    box-sizing: border-box !important;
    position: relative !important;
    overflow-x: hidden !important;
}

.panel-sidebar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    flex: 0 0 240px !important;
    width: 240px !important;
    min-width: 240px !important;
    max-width: 240px !important;
    height: 100vh !important;
    background: #0F172A !important;
    border-right: 1px solid #1E293B !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 1000 !important;
    box-sizing: border-box !important;
    user-select: none;
    flex-shrink: 0 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    transition: transform 0.25s ease;
}

.panel-workspace,
.panel-main-wrapper {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin-left: 240px !important;
    width: calc(100vw - 240px) !important;
    max-width: calc(100vw - 240px) !important;
    display: flex !important;
    flex-direction: column !important;
    background: var(--sl-bg) !important;
    box-sizing: border-box !important;
    min-height: 100vh !important;
}

.panel-erp-topbar,
.panel-main-topbar {
    width: 100% !important;
    min-width: 100% !important;
    box-sizing: border-box !important;
    padding: 0 24px !important;
}

.panel-main,
.panel-main-content {
    flex: 1 1 auto !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    padding: 20px 24px 40px !important;
    box-sizing: border-box !important;
    margin: 0 !important;
}

.panel-pane {
    display: none;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    animation: slFadeIn 0.15s ease-out;
}

.panel-pane.active {
    display: block !important;
}

@keyframes slFadeIn {
    from { opacity: 0; transform: translateY(2px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ==========================================================================
   SIDEBAR NAVIGATION (Linear / Stripe Standard)
   ========================================================================== */

/* Sidebar Brand Header */
.sidebar-header {
    padding: 12px 14px !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    background: transparent !important;
    height: var(--sl-topbar-h);
}

.sidebar-brand {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: #FFFFFF !important;
}

.sidebar-brand-icon {
    width: 28px;
    height: 28px;
    background: var(--sl-primary) !important;
    color: #FFFFFF;
    border-radius: var(--sl-radius-sm);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9rem;
    box-shadow: none !important;
    flex-shrink: 0;
}

.sidebar-brand-info {
    display: flex;
    align-items: baseline;
    gap: 6px;
    line-height: 1;
}

.sidebar-brand-text {
    font-size: 0.9375rem !important;
    font-weight: 600 !important;
    letter-spacing: -0.02em;
    color: #FFFFFF !important;
}
.sidebar-brand-text span {
    color: #38BDF8 !important;
}

.sidebar-erp-pill {
    font-size: 0.625rem !important;
    font-weight: 600 !important;
    color: #94A3B8 !important;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.sidebar-close-btn {
    display: none;
    background: transparent;
    border: none;
    color: #94A3B8;
    font-size: 1.1rem;
    cursor: pointer;
    padding: 4px;
    border-radius: 4px;
}
.sidebar-close-btn:hover {
    color: #FFFFFF;
}

/* Sidebar Quick Action CTA */
.sidebar-cta-wrap {
    padding: 10px 10px 4px 10px !important;
}

.sidebar-cta-btn {
    width: 100%;
    height: 34px !important;
    background: var(--sl-primary) !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: var(--sl-radius-sm) !important;
    padding: 0 10px !important;
    font-size: 0.78125rem !important;
    font-weight: 500 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    cursor: pointer;
    box-shadow: none !important;
    animation: none !important;
    transition: background 0.12s ease;
}
.sidebar-cta-btn:hover {
    background: var(--sl-primary-hover) !important;
}

/* Sidebar Navigation Items */
.sidebar-nav {
    flex: 1;
    overflow-y: auto;
    padding: 6px 8px !important;
}
.sidebar-nav::-webkit-scrollbar {
    width: 4px;
}
.sidebar-nav::-webkit-scrollbar-thumb {
    background: rgba(255, 255, 255, 0.1);
    border-radius: 4px;
}

.sidebar-nav-group {
    margin-bottom: 6px;
}

.sidebar-group-header {
    padding: 6px 8px 3px 8px !important;
    font-size: 0.65625rem !important;
    font-weight: 600 !important;
    color: #64748B !important;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}
.sidebar-group-header:hover {
    color: #94A3B8;
}

.sidebar-group-items {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.panel-sidebar .panel-tab-btn {
    height: 34px !important;
    padding: 0 9px !important;
    border-radius: var(--sl-radius-sm) !important;
    font-size: 0.8125rem !important;
    font-weight: 400 !important;
    color: #94A3B8 !important;
    background: transparent !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    cursor: pointer;
    transition: all 0.12s ease;
    text-align: left;
    width: 100%;
    position: relative;
}

.panel-sidebar .panel-tab-btn i {
    width: 16px !important;
    font-size: 0.8125rem !important;
    color: #64748B !important;
    text-align: center;
    flex-shrink: 0;
}

.panel-sidebar .panel-tab-btn:hover {
    background: rgba(255, 255, 255, 0.05) !important;
    color: #F8FAFC !important;
}
.panel-sidebar .panel-tab-btn:hover i {
    color: #94A3B8 !important;
}

.panel-sidebar .panel-tab-btn.active {
    background: rgba(37, 99, 235, 0.16) !important;
    color: #FFFFFF !important;
    font-weight: 500 !important;
}
.panel-sidebar .panel-tab-btn.active::before {
    content: '';
    position: absolute;
    left: 0;
    top: 6px;
    bottom: 6px;
    width: 3px;
    background: #3B82F6;
    border-radius: 0 2px 2px 0;
}
.panel-sidebar .panel-tab-btn.active i {
    color: #60A5FA !important;
}

.sidebar-badge {
    margin-left: auto;
    font-size: 0.6875rem !important;
    padding: 1px 6px !important;
    border-radius: 9999px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
}
.badge-blue { background: rgba(37, 99, 235, 0.3); color: #93C5FD; }
.badge-red { background: rgba(220, 38, 38, 0.3); color: #FCA5A5; }

/* Sidebar Footer (Single Consolidated Card) */
.sidebar-footer {
    padding: 10px !important;
    border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
    background: #0B1120 !important;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sidebar-license-chip {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.6875rem;
    color: #94A3B8;
    background: rgba(255, 255, 255, 0.04);
    padding: 4px 8px;
    border-radius: 4px;
}

.sidebar-user-card {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sidebar-user-avatar {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #1E293B;
    color: #94A3B8;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
}

.sidebar-user-details {
    flex: 1;
    min-width: 0;
    line-height: 1.2;
}
.sidebar-user-name {
    display: block;
    font-size: 0.78125rem;
    font-weight: 500;
    color: #F8FAFC;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.sidebar-user-role {
    font-size: 0.65625rem;
    color: #64748B;
}

.sidebar-actions-row {
    display: flex;
    gap: 6px;
}
.sidebar-btn-site,
.sidebar-btn-logout {
    flex: 1;
    height: 26px;
    border-radius: var(--sl-radius-xs);
    font-size: 0.6875rem;
    font-weight: 500;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: rgba(255, 255, 255, 0.05);
    color: #94A3B8;
    border: 1px solid rgba(255, 255, 255, 0.06);
    cursor: pointer;
    text-decoration: none;
    transition: all 0.12s ease;
}
.sidebar-btn-site:hover {
    color: #FFFFFF;
    background: rgba(255, 255, 255, 0.1);
}
.sidebar-btn-logout:hover {
    color: #FCA5A5;
    background: rgba(220, 38, 38, 0.2);
    border-color: rgba(220, 38, 38, 0.3);
}

/* ==========================================================================
   TOPBAR HEADER (Modern SaaS Clean Standard)
   ========================================================================== */
.panel-main-topbar {
    height: var(--sl-topbar-h) !important;
    padding: 0 24px !important;
    background: var(--sl-surface) !important;
    border-bottom: 1px solid var(--sl-border) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    position: sticky;
    top: 0;
    z-index: 900;
    box-shadow: none !important;
}

.topbar-left-zone {
    display: flex;
    align-items: center;
    gap: 12px;
}

.topbar-hamburger-btn {
    display: none;
    background: transparent;
    border: none;
    color: var(--sl-text-secondary);
    font-size: 1.1rem;
    cursor: pointer;
    padding: 4px;
}

.topbar-breadcrumb {
    font-size: 0.8125rem !important;
    color: var(--sl-text-muted);
    display: flex;
    align-items: center;
    gap: 6px;
}
.breadcrumb-root {
    color: var(--sl-text-muted);
    font-weight: 400;
}
.breadcrumb-sep {
    font-size: 0.65rem;
    color: var(--sl-text-subtle);
}
.breadcrumb-active {
    color: var(--sl-text);
    font-weight: 500;
}

.topbar-center-zone {
    flex: 1;
    max-width: 440px;
}

.topbar-spotlight-box {
    position: relative;
    width: 100%;
}

.topbar-spotlight-box input {
    width: 100%;
    height: 32px !important;
    padding: 0 54px 0 30px !important;
    background: #F8FAFC !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius) !important;
    font-size: 0.78125rem !important;
    color: var(--sl-text) !important;
    transition: all 0.15s ease;
}
.topbar-spotlight-box input:focus {
    background: #FFFFFF !important;
    border-color: var(--sl-primary) !important;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.1) !important;
    outline: none;
}

.topbar-spotlight-icon {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.75rem;
    color: var(--sl-text-subtle);
}

.topbar-spotlight-shortcut {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    gap: 2px;
}
.topbar-spotlight-shortcut kbd {
    background: #E2E8F0;
    color: #475569;
    font-size: 0.65rem;
    padding: 1px 4px;
    border-radius: 3px;
    font-family: var(--sl-font-mono);
}

.topbar-right-zone {
    display: flex;
    align-items: center;
    gap: 8px;
}

.topbar-branch-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--sl-surface-muted);
    border: 1px solid var(--sl-border);
    padding: 4px 10px;
    border-radius: var(--sl-radius-full);
    font-size: 0.78125rem;
    font-weight: 500;
    color: var(--sl-text-secondary);
}

.topbar-branch-chip i {
    color: var(--sl-primary);
    font-size: 0.75rem;
}

.topbar-quick-btn {
    height: 30px !important;
    background: var(--sl-primary) !important;
    color: #FFFFFF !important;
    border: none !important;
    border-radius: var(--sl-radius-sm) !important;
    padding: 0 10px !important;
    font-size: 0.78125rem !important;
    font-weight: 500 !important;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    cursor: pointer;
    transition: background 0.12s ease;
}
.topbar-quick-btn:hover {
    background: var(--sl-primary-hover) !important;
}

.topbar-icon-action-btn {
    width: 30px;
    height: 30px;
    border-radius: var(--sl-radius-sm);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: var(--sl-text-muted);
    background: transparent;
    border: 1px solid transparent;
    cursor: pointer;
    font-size: 0.85rem;
    transition: all 0.12s ease;
}
.topbar-icon-action-btn:hover {
    color: var(--sl-text);
    background: #F1F5F9;
}
.topbar-icon-action-btn.logout:hover {
    color: var(--sl-danger);
    background: #FEF2F2;
}

.topbar-user-pill {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    background: #F8FAFC;
    border: 1px solid var(--sl-border);
    border-radius: 9999px;
    font-size: 0.75rem;
    color: var(--sl-text-secondary);
}
.topbar-user-dot {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #10B981;
}

/* ==========================================================================
   PAGE HEADERS & TOOLBARS
   ========================================================================== */
.erp-module-header,
.sl-page-header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-bottom: 16px !important;
    padding: 0 0 14px 0 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 1px solid var(--sl-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    flex-wrap: wrap !important;
}

.erp-module-title-group h2,
.sl-page-header h1,
.sl-page-header h2 {
    font-size: var(--sl-fs-page-title) !important;
    font-weight: 600 !important;
    color: var(--sl-text) !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    letter-spacing: -0.02em !important;
    line-height: 1.3 !important;
}

.erp-module-title-group h2 i,
.sl-page-header h2 i {
    color: var(--sl-text-muted) !important;
    font-size: 1rem !important;
    background: none !important;
    padding: 0 !important;
}

.erp-module-title-group p,
.sl-page-header p {
    font-size: 0.8125rem !important;
    font-weight: 400 !important;
    color: var(--sl-text-muted) !important;
    margin: 2px 0 0 0 !important;
}

.erp-module-actions,
.sl-page-actions {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
}

/* Toolbar & Filters */
.sl-toolbar,
.erp-filter-toolbar,
.records-toolbar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin-bottom: 14px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.filter-btn-group {
    display: inline-flex !important;
    align-items: center !important;
    background: #F1F5F9 !important;
    padding: 3px !important;
    border-radius: var(--sl-radius) !important;
    border: 1px solid var(--sl-border) !important;
    gap: 2px !important;
}

.filter-btn {
    border: none !important;
    background: transparent !important;
    color: var(--sl-text-muted) !important;
    font-family: var(--sl-font) !important;
    font-size: var(--sl-fs-label) !important;
    font-weight: 500 !important;
    padding: 5px 11px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    transition: all 0.12s ease !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    white-space: nowrap !important;
}
.filter-btn:hover {
    color: var(--sl-text) !important;
}
.filter-btn.active {
    background: var(--sl-surface) !important;
    color: var(--sl-text) !important;
    font-weight: 600 !important;
    box-shadow: var(--sl-shadow-xs) !important;
}

/* ==========================================================================
   BUTTON SYSTEM (Linear Standard)
   ========================================================================== */
.btn {
    font-family: var(--sl-font) !important;
    font-size: var(--sl-fs-label) !important;
    font-weight: 500 !important;
    height: var(--sl-h-md);
    padding: 0 13px;
    border-radius: var(--sl-radius) !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    transition: background 0.12s ease, border-color 0.12s ease, color 0.12s ease;
    text-decoration: none;
    white-space: nowrap;
    box-shadow: none !important;
    line-height: 1;
}

.btn:active {
    transform: none !important;
}

.btn-primary {
    background: var(--sl-primary) !important;
    color: #FFFFFF !important;
    border: 1px solid var(--sl-primary) !important;
    font-weight: 500 !important;
}
.btn-primary:hover {
    background: var(--sl-primary-hover) !important;
    border-color: var(--sl-primary-hover) !important;
}

.btn-secondary {
    background: var(--sl-surface) !important;
    color: var(--sl-text-secondary) !important;
    border: 1px solid var(--sl-border-strong) !important;
}
.btn-secondary:hover {
    background: #F8FAFC !important;
    border-color: #94A3B8 !important;
    color: var(--sl-text) !important;
}

.btn-ghost {
    background: transparent !important;
    color: var(--sl-text-muted) !important;
    border: 1px solid transparent !important;
}
.btn-ghost:hover {
    background: #F1F5F9 !important;
    color: var(--sl-text) !important;
}

.btn-danger {
    background: var(--sl-danger-bg) !important;
    color: var(--sl-danger) !important;
    border: 1px solid var(--sl-danger-border) !important;
}
.btn-danger:hover {
    background: #FEE2E2 !important;
    border-color: #FCA5A5 !important;
    color: #B91C1C !important;
}

.btn-sm {
    height: var(--sl-h-sm) !important;
    padding: 0 10px !important;
    font-size: var(--sl-fs-caption) !important;
}

.btn-xs {
    height: var(--sl-h-xs) !important;
    padding: 0 7px !important;
    font-size: var(--sl-fs-xs) !important;
}

.btn-icon {
    width: 30px !important;
    height: 30px !important;
    padding: 0 !important;
    border-radius: var(--sl-radius) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* ==========================================================================
   FORM CONTROLS & GRIDS
   ========================================================================== */
.form-group-panel {
    display: flex;
    flex-direction: column;
}

.form-group-panel label,
.sl-label {
    display: block;
    font-family: var(--sl-font) !important;
    font-size: var(--sl-fs-label) !important;
    font-weight: 500 !important;
    color: var(--sl-text-secondary) !important;
    margin-bottom: 5px !important;
}

.form-group-panel input,
.form-group-panel select,
.form-group-panel textarea,
.search-box input,
.sl-input,
.sl-select {
    font-family: var(--sl-font) !important;
    font-size: var(--sl-fs-table) !important;
    font-weight: 400 !important;
    color: var(--sl-text) !important;
    background-color: var(--sl-surface) !important;
    border: 1px solid var(--sl-border-strong) !important;
    border-radius: var(--sl-radius) !important;
    padding: 7px 11px !important;
    min-height: var(--sl-h-md);
    box-shadow: none !important;
    transition: border-color 0.15s ease, box-shadow 0.15s ease !important;
}

.form-group-panel textarea {
    min-height: 72px;
    line-height: 1.45;
}

.form-group-panel input:focus,
.form-group-panel select:focus,
.form-group-panel textarea:focus,
.search-box input:focus,
.sl-input:focus,
.sl-select:focus {
    outline: none !important;
    border-color: var(--sl-primary) !important;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1) !important;
}

.search-box {
    position: relative;
}
.search-box input {
    padding-left: 34px !important;
}
.search-box i {
    color: var(--sl-text-subtle) !important;
    font-size: 0.82rem !important;
    left: 12px !important;
}

.form-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}
.form-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

/* ==========================================================================
   CARDS & PANELS
   ========================================================================== */
.panel-card,
.sl-card {
    background: var(--sl-surface) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-md) !important;
    box-shadow: var(--sl-shadow-xs) !important;
    padding: 18px 20px !important;
    margin-bottom: 16px !important;
}

/* ==========================================================================
   DATA TABLES (Dense, Crisp, Tabular)
   ========================================================================== */
.table-responsive {
    background: var(--sl-surface) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-md) !important;
    box-shadow: var(--sl-shadow-xs) !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px !important;
}

.panel-card .table-responsive {
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

.items-table,
.sl-table {
    width: 100% !important;
    min-width: 920px !important;
    border-collapse: collapse !important;
    font-family: var(--sl-font) !important;
}

.items-table thead tr,
.sl-table thead tr {
    background: #F8FAFC !important;
    border-bottom: 1px solid var(--sl-border) !important;
}

.items-table th,
.sl-table th {
    background: #F8FAFC !important;
    color: var(--sl-text-muted) !important;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid var(--sl-border) !important;
    white-space: nowrap !important;
}

.items-table td,
.sl-table td {
    padding: 10px 14px !important;
    font-size: var(--sl-fs-table) !important;
    font-weight: 400 !important;
    color: var(--sl-text-secondary) !important;
    border-bottom: 1px solid var(--sl-border-subtle) !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

.items-table th:last-child,
.items-table td:last-child,
.sl-table th:last-child,
.sl-table td:last-child {
    text-align: right !important;
    white-space: nowrap !important;
    min-width: 180px !important;
}

.items-table tbody tr:last-child td,
.sl-table tbody tr:last-child td {
    border-bottom: none !important;
}

.items-table tbody tr:hover td,
.sl-table tbody tr:hover td {
    background-color: #F8FAFC !important;
}

/* ==========================================================================
   TURKISH PLATE BOX, BADGES & CODES
   ========================================================================== */
.plate-box {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: #FFFFFF !important;
    color: #0F172A !important;
    border: 1px solid #CBD5E1 !important;
    border-left: 3px solid #2563EB !important;
    border-radius: 4px !important;
    padding: 2px 7px !important;
    font-family: var(--sl-font-mono) !important;
    font-size: 0.78125rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
    box-shadow: none !important;
}

.plate-tr {
    background: #2563EB;
    color: #FFFFFF;
    font-size: 0.6rem;
    padding: 0 3px;
    border-radius: 2px;
    font-weight: 700;
}

.sl-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 2px 8px !important;
    border-radius: 9999px !important;
    font-size: 0.72rem !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
    white-space: nowrap !important;
}

.sl-badge-success {
    background: var(--sl-success-bg) !important;
    color: var(--sl-success-text) !important;
    border: 1px solid var(--sl-success-border) !important;
}

.sl-badge-warning {
    background: var(--sl-warning-bg) !important;
    color: var(--sl-warning-text) !important;
    border: 1px solid var(--sl-warning-border) !important;
}

.sl-badge-danger {
    background: var(--sl-danger-bg) !important;
    color: var(--sl-danger-text) !important;
    border: 1px solid var(--sl-danger-border) !important;
}

.sl-badge-primary,
.sl-badge-info {
    background: var(--sl-primary-subtle) !important;
    color: var(--sl-primary-hover) !important;
    border: 1px solid var(--sl-primary-border) !important;
}

.sl-badge-neutral {
    background: #F1F5F9 !important;
    color: #475569 !important;
    border: 1px solid #E2E8F0 !important;
}

.sl-code-badge {
    display: inline-flex;
    align-items: center;
    padding: 2px 6px;
    background: #F1F5F9;
    color: #475569;
    border: 1px solid #E2E8F0;
    border-radius: 4px;
    font-family: var(--sl-font-mono);
    font-size: 0.72rem;
    font-weight: 500;
}

/* ==========================================================================
   KPI STRIPS & SUMMARY METRICS (Flat, Calm, Horizontal)
   ========================================================================== */
.module-summary-grid,
.stat-cards-grid-4,
.corp-summary-strip {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
    gap: 0 !important;
    background: var(--sl-surface) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-md) !important;
    margin-bottom: 16px !important;
    box-shadow: var(--sl-shadow-xs) !important;
    overflow: hidden !important;
}

.module-summary-card,
.corp-summary-metric {
    background: transparent !important;
    border: none !important;
    border-right: 1px solid var(--sl-border-subtle) !important;
    border-radius: 0 !important;
    padding: 12px 16px !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.module-summary-card:last-child,
.corp-summary-metric:last-child {
    border-right: none !important;
}

.module-summary-label,
.corp-summary-metric .metric-lbl {
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    color: var(--sl-text-muted) !important;
    margin-bottom: 2px !important;
}

.module-summary-val,
.corp-summary-metric .metric-val {
    font-size: 1.125rem !important;
    font-weight: 600 !important;
    color: var(--sl-text) !important;
    font-variant-numeric: tabular-nums;
    line-height: 1.25 !important;
}

/* ==========================================================================
   CORPORATE FLEET MODULE (KURUMSAL FİLO) - REFACTORED
   ========================================================================== */
.corp-company-card {
    background: var(--sl-surface);
    border: 1px solid var(--sl-border);
    border-radius: var(--sl-radius-md);
    padding: 16px 20px;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.corp-company-card:hover {
    border-color: #CBD5E1;
    box-shadow: var(--sl-shadow-sm);
}

.corp-company-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}

.corp-company-name {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--sl-text);
    margin: 0 0 3px 0;
    line-height: 1.3;
}
.corp-company-name:hover {
    color: var(--sl-primary);
}

.corp-company-meta {
    font-size: 0.78125rem;
    color: var(--sl-text-muted);
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}

.corp-company-plates {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.corp-company-financials {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    padding: 10px 0;
    border-top: 1px solid var(--sl-border-subtle);
    border-bottom: 1px solid var(--sl-border-subtle);
}

.corp-fin-col .fin-lbl,
.corp-fin-label {
    font-size: 0.72rem;
    color: var(--sl-text-muted);
    font-weight: 400;
    margin-bottom: 2px;
}

.corp-fin-col .fin-val,
.corp-fin-val {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--sl-text);
    font-variant-numeric: tabular-nums;
}
.corp-fin-val.is-debt {
    color: var(--sl-danger);
}

.corp-company-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
}

/* Subviews: Entity Header */
.sl-entity-header {
    background: var(--sl-surface);
    border: 1px solid var(--sl-border);
    border-radius: var(--sl-radius-md);
    padding: 16px 20px;
    margin-bottom: 16px;
}

/* ==========================================================================
   WORKSHOP & KANBAN LIFTS
   ========================================================================== */
.workshop-board-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
}

.workshop-column {
    background: #F1F5F9 !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-md) !important;
}

.workshop-col-header {
    background: var(--sl-surface) !important;
    border-bottom: 1px solid var(--sl-border) !important;
    padding: 10px 14px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.workshop-card {
    background: var(--sl-surface) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius) !important;
    padding: 12px !important;
    box-shadow: var(--sl-shadow-xs) !important;
    margin: 8px;
}

/* ==========================================================================
   MODAL & TOAST SYSTEM
   ========================================================================== */
.ocr-modal {
    position: fixed;
    inset: 0;
    z-index: 10050;
    background: rgba(15, 23, 42, 0.45);
    backdrop-filter: blur(3px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}

.ocr-modal-content {
    background: var(--sl-surface) !important;
    border: 1px solid var(--sl-border) !important;
    border-radius: var(--sl-radius-lg) !important;
    box-shadow: var(--sl-shadow-modal) !important;
    overflow: hidden;
    max-width: 600px;
    width: 100%;
}

/* App Toast */
.app-toast-container {
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 100050;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 400px;
    width: calc(100vw - 32px);
    pointer-events: none;
}

.app-toast-card {
    pointer-events: auto;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 12px 16px;
    border-radius: 8px;
    background: #FFFFFF;
    color: #0F172A;
    box-shadow: 0 10px 25px -4px rgba(15, 23, 42, 0.12), 0 0 0 1px rgba(15, 23, 42, 0.08);
    position: relative;
    overflow: hidden;
    animation: slToastIn 0.25s ease-out forwards;
}

.app-toast-card.closing {
    animation: slToastOut 0.2s ease forwards;
}

@keyframes slToastIn {
    from { opacity: 0; transform: translateX(30px); }
    to { opacity: 1; transform: translateX(0); }
}
@keyframes slToastOut {
    from { opacity: 1; transform: translateX(0); }
    to { opacity: 0; transform: translateX(30px); }
}

.app-toast-icon { font-size: 1.1rem; flex-shrink: 0; margin-top: 2px; }
.app-toast-body { flex: 1; min-width: 0; }
.app-toast-title { font-weight: 600; font-size: 0.875rem; margin-bottom: 2px; color: #0F172A; }
.app-toast-text { font-size: 0.8125rem; color: #475569; line-height: 1.4; word-break: break-word; }
.app-toast-close { background: transparent; border: none; color: #94A3B8; font-size: 1.1rem; cursor: pointer; padding: 2px; }
.app-toast-close:hover { color: #0F172A; }

.app-toast-success { border-left: 4px solid #16A34A; }
.app-toast-success .app-toast-icon { color: #16A34A; }
.app-toast-error { border-left: 4px solid #DC2626; }
.app-toast-error .app-toast-icon { color: #DC2626; }
.app-toast-warning { border-left: 4px solid #D97706; }
.app-toast-warning .app-toast-icon { color: #D97706; }
.app-toast-info { border-left: 4px solid #2563EB; }
.app-toast-info .app-toast-icon { color: #2563EB; }

.app-toast-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 2px;
    background: currentColor;
    opacity: 0.25;
    width: 100%;
    transform-origin: left;
    animation: slToastProgress linear forwards;
}
@keyframes slToastProgress {
    from { transform: scaleX(1); }
    to { transform: scaleX(0); }
}

/* Modal Backdrop & Confirm Box */
.app-modal-backdrop {
    position: fixed;
    inset: 0;
    z-index: 100060;
    background: rgba(15, 23, 42, 0.55);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    animation: slFadeIn 0.15s ease forwards;
}

.app-modal-card {
    background: #FFFFFF;
    border-radius: 12px;
    padding: 1.75rem 1.5rem 1.25rem 1.5rem;
    max-width: 420px;
    width: 100%;
    text-align: center;
    box-shadow: 0 20px 25px -5px rgba(15, 23, 42, 0.18), 0 0 0 1px rgba(15, 23, 42, 0.05);
}

.app-modal-icon-wrapper {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin-bottom: 1rem;
}
.app-modal-icon-wrapper.success { background: #ECFDF5; color: #10B981; }
.app-modal-icon-wrapper.error { background: #FEF2F2; color: #EF4444; }
.app-modal-icon-wrapper.warning { background: #FFFBEB; color: #F59E0B; }
.app-modal-icon-wrapper.info { background: #EFF6FF; color: #2563EB; }

.app-modal-title { font-size: 1.125rem; font-weight: 600; color: #0F172A; margin: 0 0 0.4rem 0; }
.app-modal-message { font-size: 0.875rem; color: #64748B; line-height: 1.5; margin: 0 0 1.25rem 0; white-space: pre-line; }

.app-modal-actions { display: flex; gap: 8px; justify-content: center; }
.app-modal-btn-confirm { flex: 1; padding: 8px 16px; background: #0F172A; color: #FFF; font-weight: 600; border-radius: 6px; border: none; cursor: pointer; }
.app-modal-btn-cancel { flex: 1; padding: 8px 16px; background: #F1F5F9; color: #475569; font-weight: 500; border-radius: 6px; border: 1px solid #E2E8F0; cursor: pointer; }

/* Empty States */
.sl-empty-state {
    text-align: center;
    padding: 3rem 1.5rem;
    color: var(--sl-text-muted);
}
.sl-empty-state-icon {
    font-size: 2rem;
    color: var(--sl-text-subtle);
    margin-bottom: 8px;
}
.sl-empty-state-text {
    font-size: 0.875rem;
    color: var(--sl-text-muted);
    margin-bottom: 12px;
}

/* ==========================================================================
   RESPONSIVE OPTIMIZATIONS (1366 Laptop, Tablet, Mobile)
   ========================================================================== */
@media (max-width: 1366px) and (min-width: 981px) {
    .panel-main-content {
        padding: 16px 18px 32px 18px;
    }
    .panel-sidebar {
        width: 220px !important;
        min-width: 220px !important;
        max-width: 220px !important;
    }
    .panel-workspace,
    .panel-main-wrapper {
        margin-left: 220px !important;
        width: calc(100vw - 220px) !important;
        max-width: calc(100vw - 220px) !important;
    }
    .topbar-center-zone {
        max-width: 340px;
    }
}

@media (max-width: 980px) {
    .panel-sidebar {
        position: fixed !important;
        left: 0 !important;
        top: 0 !important;
        bottom: 0 !important;
        transform: translateX(-100%) !important;
        z-index: 10000 !important;
        box-shadow: 4px 0 24px rgba(0,0,0,0.3) !important;
    }
    .panel-sidebar.mobile-open {
        transform: translateX(0) !important;
    }
    .panel-workspace,
    .panel-main-wrapper {
        margin-left: 0 !important;
        width: 100vw !important;
        max-width: 100vw !important;
    }
    .sidebar-close-btn {
        display: block !important;
    }
    .topbar-hamburger-btn {
        display: block !important;
    }
    .topbar-spotlight-box input {
        width: 180px;
    }
}

@media (max-width: 640px) {
    .panel-main-content {
        padding: 12px 10px 24px 10px !important;
    }
    .form-grid-2, .form-grid-3 {
        grid-template-columns: 1fr;
    }
    .topbar-spotlight-shortcut {
        display: none;
    }
}

/* ==========================================================================
   ENTERPRISE COMPONENTS & MODULE SUITE (MIGRATED & V3 COMPLIANT)
   ========================================================================== */

/* --- SECTION: LOGIN SCREEN --- */
        /* Unauthenticated Login Screen (ServisLOC Clean Corporate SaaS) */
        body:not(.authenticated) {
            background-color: #F1F5F9 !important;
            background-image: none !important;
            min-height: 100vh;
            color: #0F172A;
            position: relative;
        }

        body:not(.authenticated)::before,
        body:not(.authenticated)::after {
            display: none !important;
            content: none !important;
        }

        body:not(.authenticated) #panelSection {
            min-height: 100vh;
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 0 !important;
            position: relative;
            z-index: 10;
        }

        body:not(.authenticated) #panelSection > .container {
            max-width: 1180px !important;
            width: 100% !important;
            margin: 0 auto !important;
            padding: 0 !important;
        }

        .sl-login-grid {
            display: grid;
            grid-template-columns: 1.22fr 0.78fr;
            gap: 3rem;
            align-items: center;
            width: 100%;
        }

        .sl-login-input-wrap {
            position: relative;
            display: flex;
            align-items: center;
        }

        .sl-login-input-wrap input {
            width: 100%;
            height: 48px;
            padding: 0 2.75rem 0 2.75rem !important;
            border: 1.5px solid #CBD5E1 !important;
            border-radius: 10px !important;
            background: #F8FAFC !important;
            color: #0F172A !important;
            font-size: 0.92rem !important;
            font-weight: 600 !important;
            transition: all 0.2s ease !important;
            box-sizing: border-box !important;
        }

        .sl-login-input-wrap input:focus {
            background: #FFFFFF !important;
            border-color: #2563EB !important;
            box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12) !important;
            outline: none !important;
        }

        .sl-login-submit-btn {
            width: 100%;
            height: 52px;
            background: linear-gradient(135deg, #0F172A 0%, #1E3A8A 50%, #2563EB 100%) !important;
            color: #FFFFFF !important;
            border: 1px solid rgba(56, 189, 248, 0.35) !important;
            border-radius: 10px !important;
            font-size: 0.96rem !important;
            font-weight: 600 !important;
            letter-spacing: 0.01em;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 10px;
            box-shadow: 0 12px 24px -6px rgba(15, 23, 42, 0.38), 0 4px 10px rgba(37, 99, 235, 0.25) !important;
            transition: all 0.22s ease !important;
        }

        .sl-login-submit-btn:hover {
            transform: translateY(-1.5px);
            box-shadow: 0 16px 30px -6px rgba(37, 99, 235, 0.5) !important;
            background: linear-gradient(135deg, #1E293B 0%, #1D4ED8 55%, #2563EB 100%) !important;
        }

        .sl-mock-nav-item {
            display: flex;
            align-items: center;
            gap: 7px;
            padding: 6px 8px;
            border-radius: 6px;
            font-size: 0.68rem;
            font-weight: 600;
            color: #94A3B8;
            cursor: pointer;
            transition: all 0.15s ease;
            border: none;
            background: transparent;
            width: 100%;
            text-align: left;
        }

        .sl-mock-nav-item:hover {
            color: #F8FAFC;
            background: rgba(255, 255, 255, 0.06);
        }

        .sl-mock-nav-item.active {
            color: #FFFFFF;
            background: #2563EB;
            font-weight: 700;
            box-shadow: 0 2px 8px rgba(37, 99, 235, 0.4);
        }

        @media (max-width: 980px) {
            .sl-login-grid {
                grid-template-columns: 1fr;
                gap: 2.25rem;
                max-width: 480px;
                margin: 0 auto;
            }
            .sl-auth-showcase {
                order: 2;
            }
            .sl-auth-form-col {
                order: 1;
            }
        }

        body:not(.authenticated) footer {
            display: none !important;
        }

        body:not(.authenticated) .panel-app-shell,
        body:not(.authenticated) #mainDashboardContainer {
            display: none !important;
        }

        /* Root App Shell: Left Sidebar + Right Main Content */

/* --- SECTION: DASHBOARD EXECUTIVE & KPI --- */
        /* Dashboard Executive Styling */
        .dash-welcome-card {
            background: linear-gradient(135deg, #0F172A 0%, #1E293B 100%);
            color: #FFFFFF;
            border-radius: 12px;
            padding: 2rem 2.25rem;
            margin-bottom: 2rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            flex-wrap: wrap;
            gap: 1.5rem;
            border: 1px solid #334155;
            box-shadow: 0 10px 25px rgba(15, 23, 42, 0.15);
        }
        .dash-welcome-tag {
            display: inline-flex;
            align-items: center;
            gap: 7px;
            background: rgba(255, 255, 255, 0.1);
            color: #E2E8F0;
            font-size: 0.78rem;
            font-weight: 700;
            padding: 0.3rem 0.75rem;
            border-radius: 20px;
            margin-bottom: 0.6rem;
        }
        .pulse-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #10B981;
            display: inline-block;
            box-shadow: 0 0 8px #10B981;
        }
        .dash-welcome-title {
            font-size: 1.85rem;
            font-weight: 600;
            color: #FFFFFF;
            margin: 0 0 0.35rem 0;
            letter-spacing: -0.5px;
        }
        .dash-welcome-subtitle {
            font-size: 0.9rem;
            color: #94A3B8;
            margin: 0;
        }
        .dash-welcome-actions {
            display: flex;
            gap: 0.75rem;
            flex-wrap: wrap;
        }
        .btn-dash-action {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            padding: 0.75rem 1.25rem;
            border-radius: 8px;
            font-size: 0.88rem;
            font-weight: 700;
            cursor: pointer;
            border: none;
            transition: all 0.2s ease;
            text-decoration: none;
        }
        .btn-dash-action.primary {
            background: var(--accent);
            color: #111111;
        }
        .btn-dash-action.primary:hover {
            background: var(--accent-hover);
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(255, 213, 0, 0.3);
        }
        .btn-dash-action.accent {
            background: #FFFFFF;
            color: #0F172A;
        }
        .btn-dash-action.accent:hover {
            background: #F1F5F9;
            transform: translateY(-2px);
            box-shadow: 0 4px 12px rgba(255, 255, 255, 0.2);
        }
        .btn-dash-action.dark {
            background: rgba(255, 255, 255, 0.12);
            color: #FFFFFF;
            border: 1px solid rgba(255, 255, 255, 0.25);
        }
        .btn-dash-action.dark:hover {
            background: rgba(255, 255, 255, 0.22);
            transform: translateY(-2px);
        }
        /* KPI Grid */
        .dash-kpi-grid {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 1.25rem;
            margin-bottom: 2rem;
        }
        @media (max-width: 1300px) {
            .dash-kpi-grid {
                grid-template-columns: repeat(3, 1fr);
            }
        }
        @media (max-width: 768px) {
            .dash-kpi-grid {
                grid-template-columns: 1fr;
            }
        }
        .dash-kpi-card {
            background: #FFFFFF;
            border: 1px solid var(--border);
            border-radius: 10px;
            padding: 1.25rem;
            display: flex;
            align-items: center;
            gap: 1rem;
            box-shadow: var(--shadow-soft);
            cursor: pointer;
            transition: all 0.2s ease;
        }
        .dash-kpi-card:hover {
            border-color: var(--accent-dark);
            transform: translateY(-2px);
            box-shadow: 0 6px 18px rgba(0,0,0,0.08);
        }
        .dash-kpi-card.highlight {
            background: #0F172A;
            color: #FFFFFF;
            border-color: #1E293B;
            cursor: default;
        }
        .dash-kpi-card.highlight:hover {
            transform: none;
            box-shadow: var(--shadow-soft);
        }
        .dash-kpi-icon {
            width: 48px;
            height: 48px;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.35rem;
            flex-shrink: 0;
        }
        .dash-kpi-label {
            font-size: 0.76rem;
            font-weight: 700;
            color: var(--text-muted);
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }
        .dash-kpi-value {
            font-size: 1.55rem;
            font-weight: 700;
            color: var(--text-head);
            line-height: 1.2;
            margin: 2px 0;
        }
        .dash-kpi-meta {
            font-size: 0.75rem;
            color: #0284C7;
            font-weight: 600;
            display: flex;
            align-items: center;
            gap: 4px;
        }
        /* Main Split Grid */
        .dash-main-grid {
            display: grid;
            grid-template-columns: 2fr 1fr;
            gap: 1.5rem;
        }
        @media (max-width: 1024px) {
            .dash-main-grid {
                grid-template-columns: 1fr;
            }
        }
        .dash-card-box {
            background: #FFFFFF;
            border: 1px solid var(--border);
            border-radius: 10px;
            padding: 1.5rem;
            box-shadow: var(--shadow-soft);
        }
        .dash-box-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1.25rem;
            padding-bottom: 0.75rem;
            border-bottom: 2px solid var(--border);
        }
        .dash-box-title {
            font-size: 1.15rem;
            font-weight: 600;
            color: var(--text-head);
            margin: 0;
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .dash-box-sub {
            font-size: 0.8rem;
            color: var(--text-muted);
            margin: 0.2rem 0 0 0;
        }
        /* Recent Records List */
        .dash-recent-list {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }
        .dash-record-row {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 0.85rem 1rem;
            background: #F8FAFC;
            border: 1px solid #E2E8F0;
            border-radius: 8px;
            transition: all 0.2s ease;
            gap: 1rem;
        }
        .dash-record-row:hover {
            background: #FFFFFF;
            border-color: var(--accent);
            box-shadow: 0 2px 8px rgba(0,0,0,0.05);
        }
        /* Recent Bookings List */
        .dash-recent-bookings {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }
        .dash-booking-row {
            padding: 0.85rem;
            background: #FFFBE6;
            border: 1px solid #FDE68A;
            border-radius: 8px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 0.75rem;
        }
        .panel-pane {
            display: none;
        }
        .panel-pane.active {
            display: block;
            animation: paneFadeIn 0.2s cubic-bezier(0.4, 0, 0.2, 1);
        }
        @keyframes paneFadeIn {
            from { opacity: 0; transform: translateY(4px); }
            to { opacity: 1; transform: translateY(0); }
        }

        #workshopBoardPane, #staffPane, #quotePane, #proposalsPane, #bookingsPane, #recordsPane, #mediaArchivePane, #expensesPane, #inventoryPane, #remindersPane, #corporatePane, #settingsPane {
            background: #FFFFFF;
            border: 1px solid #E2E8F0;
            border-radius: 14px;
            padding: 2.25rem 2.5rem;
            box-shadow: 0 4px 20px -2px rgba(15, 23, 42, 0.05), 0 2px 6px -1px rgba(15, 23, 42, 0.03);
            margin-bottom: 2.5rem;
        }

        @media (max-width: 768px) {
            #workshopBoardPane, #staffPane, #quotePane, #proposalsPane, #bookingsPane, #recordsPane, #mediaArchivePane, #expensesPane, #inventoryPane, #remindersPane, #corporatePane, #settingsPane {
                padding: 1.5rem 1.15rem;
                border-radius: 10px;
            }
        }
        .form-grid-3 {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 1.5rem;
            margin-bottom: 1.5rem;
        }
        .form-grid-2 {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 1.5rem;
            margin-bottom: 1.5rem;
        }
        @media (max-width: 768px) {
            .form-grid-3, .form-grid-2 {
                grid-template-columns: 1fr;
            }
            .panel-content {
                padding: 1.5rem;
            }
            .panel-nav {
                flex-direction: column;
            }
        }
        .form-group-panel {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }
        .form-group-panel label {
            font-size: 0.85rem;
            font-weight: 700;
            color: var(--text-head);
            text-transform: uppercase;
        }
        .form-group-panel input, .form-group-panel select, .form-group-panel textarea {
            padding: 0.85rem 1rem;
            border: 1px solid var(--border);
            border-radius: 6px;
            font-size: 0.95rem;
            font-family: inherit;
            transition: var(--transition);
        }
        .form-group-panel input:focus, .form-group-panel select:focus, .form-group-panel textarea:focus {
            border-color: var(--accent-dark);
            outline: none;
        }
        .plate-ocr-wrapper {
            display: flex;
            gap: 0.5rem;
        }
        .ocr-btn {
            background: #111111;
            color: #FFFFFF;
            border: none;
            border-radius: 6px;
            padding: 0 1.25rem;
            cursor: pointer;
            font-weight: 700;
            display: flex;
            align-items: center;
            gap: 5px;
            transition: var(--transition);
        }
        .ocr-btn:hover {
            background: var(--accent-dark);
            color: #111111;
        }
        .btn-reg-plate-picker {
            background: #0F172A;
            color: #FFFFFF;
            border: 1px solid #334155;
            border-radius: 6px;
            padding: 0 1rem;
            cursor: pointer;
            font-weight: 700;
            font-size: 0.82rem;
            display: inline-flex;
            align-items: center;
            gap: 7px;
            white-space: nowrap;
            transition: var(--transition);
        }
        .btn-reg-plate-picker:hover {
            background: #1E293B;
            border-color: var(--accent);
            color: var(--accent);
            box-shadow: 0 2px 8px rgba(0,0,0,0.15);
        }
        .reg-plate-card {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 0.85rem 1.15rem;
            background: #F8FAFC;
            border: 1.5px solid #E2E8F0;
            border-radius: 8px;
            cursor: pointer;
            transition: all 0.2s ease;
            gap: 1rem;
        }
        .reg-plate-card:hover {
            background: #FFFFFF;
            border-color: var(--accent-dark);
            box-shadow: 0 4px 14px rgba(0,0,0,0.07);
            transform: translateY(-1px);
        }
        .reg-tr-chip {
            display: inline-flex;
            align-items: center;
            background: #FFFFFF;
            border: 2px solid #0F172A;
            border-radius: 5px;
            height: 38px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.1);
            overflow: hidden;
            user-select: none;
            flex-shrink: 0;
        }
        .reg-tr-flag {
            background: #003399;
            color: #FFFFFF;
            font-size: 0.65rem;
            font-weight: 700;
            padding: 0 6px;
            height: 100%;
            display: flex;
            align-items: center;
            letter-spacing: 0.5px;
        }
        .reg-tr-text {
            font-family: 'Consolas', 'Courier New', monospace;
            font-weight: 700;
            font-size: 1rem;
            letter-spacing: 1.5px;
            padding: 0 10px;
            color: #0F172A;
        }
        .reg-service-count {
            background: #E2E8F0;
            color: #475569;
            font-size: 0.75rem;
            font-weight: 700;
            padding: 0.3rem 0.6rem;
            border-radius: 4px;
            white-space: nowrap;
        }
        .btn-select-plate-act {
            background: #0F172A;
            color: #FFFFFF;
            border: none;
            border-radius: 6px;
            padding: 0.45rem 0.95rem;
            font-size: 0.82rem;
            font-weight: 700;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            gap: 6px;
            transition: all 0.2s ease;
            white-space: nowrap;
        }
        .reg-plate-card:hover .btn-select-plate-act {
            background: var(--accent-dark);
            color: #0F172A;
        }
        @media (max-width: 640px) {
            .plate-ocr-wrapper {
                flex-wrap: wrap;
            }
            .plate-ocr-wrapper input {
                min-width: 100%;
            }
            .btn-reg-plate-picker, .ocr-btn {
                flex: 1;
                justify-content: center;
                padding: 0.65rem 0.5rem;
            }
            .reg-plate-card {
                flex-direction: column;
                align-items: flex-start;
                gap: 0.75rem;
            }
            .reg-plate-card > div:last-child {
                width: 100%;
                justify-content: space-between;
            }
        }
        .price-config-card {
            background: #F9FAFB;
            border: 1px solid var(--border);
            border-radius: 8px;
            padding: 1.5rem;
            margin-bottom: 1.5rem;
        }
        .price-config-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 1rem;
            margin-top: 1rem;
        }
        @media (max-width: 576px) {
            .price-config-grid {
                grid-template-columns: 1fr;
            }
        }
        /* Camera OCR modal styling */

/* --- SECTION: CAMERA OCR SCANNER --- */
        /* Camera OCR modal styling */
        .ocr-modal {
            display: none;
            position: fixed;
            z-index: 10000;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background: rgba(0, 0, 0, 0.85);
            align-items: center;
            justify-content: center;
        }
        .ocr-modal-content {
            background: #111111;
            color: #FFFFFF;
            border-radius: 12px;
            padding: 2rem;
            width: 90%;
            max-width: 500px;
            text-align: center;
            border: 2px solid var(--accent);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
            position: relative;
        }
        .camera-simulation-box {
            width: 100%;
            aspect-ratio: 4/3;
            background: #000000;
            border: 2px solid #333;
            border-radius: 8px;
            margin: 1.5rem auto;
            position: relative;
            overflow: hidden;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .scanner-line {
            position: absolute;
            width: 100%;
            height: 4px;
            background: #00FF00;
            box-shadow: 0 0 15px #00FF00;
            top: 0;
            animation: scanAnim 3s infinite ease-in-out;
        }
        @keyframes scanAnim {
            0% { top: 0%; }
            50% { top: 100%; }
            100% { top: 0%; }
        }
        .scanner-feedback {
            font-family: monospace;
            font-size: 1.1rem;
            color: #00FF00;
            text-shadow: 0 0 5px #00FF00;
        }
        /* Printable Service Receipt stylesheet override */

/* --- SECTION: PRINTABLE SERVICE RECEIPT --- */
        /* Printable Service Receipt stylesheet override */
        #printReceipt {
            display: none;
            width: 100%;
            max-width: 800px;
            margin: 0 auto;
            background: #FFFFFF;
            color: #000000;
            padding: 1.5rem;
            font-family: 'Inter', sans-serif;
        }
        .receipt-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-bottom: 2px dashed #000;
            padding-bottom: 1.5rem;
            margin-bottom: 1.5rem;
        }
        .receipt-title {
            text-align: center;
            font-size: 1.8rem;
            font-weight: 600;
            letter-spacing: 1px;
            margin: 1rem 0;
            border: 1px solid #000;
            padding: 0.5rem;
        }
        .receipt-grid {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 1.5rem;
            margin-bottom: 2rem;
            border-bottom: 1px dashed #000;
            padding-bottom: 1.5rem;
        }
        .receipt-table {
            width: 100%;
            border-collapse: collapse;
            margin-bottom: 2rem;
        }
        .receipt-table th {
            border-bottom: 1px solid #000;
            padding: 0.5rem;
            text-align: left;
            font-size: 0.9rem;
            font-weight: 700;
        }
        .receipt-table td {
            padding: 0.5rem;
            border-bottom: 1px dotted #ccc;
            font-size: 0.9rem;
        }
        .receipt-footer-notes {
            background: #F9FAFB;
            border: 1px solid #ccc;
            padding: 1rem;
            border-radius: 4px;
            font-size: 0.85rem;
            margin-bottom: 2.5rem;
        }
        .receipt-signatures {
            display: flex;
            justify-content: space-between;
            margin-top: 3rem;
        }
        .signature-box {
            width: 200px;
            border-top: 1px solid #000;
            text-align: center;
            padding-top: 0.5rem;
            font-size: 0.9rem;
            font-weight: 700;
        }
        @media print {
            html, body {
                position: static !important;
                width: auto !important;
                height: auto !important;
                max-height: none !important;
                overflow: visible !important;
                margin: 0 !important;
                padding: 0 !important;
                background: #FFFFFF !important;
            }
            body * {
                visibility: hidden;
            }
            body:not(.printing-quote):not(.printing-parts-supply-slip) #printReceipt,
            body:not(.printing-quote):not(.printing-parts-supply-slip) #printReceipt * {
                visibility: visible;
            }
            body:not(.printing-quote):not(.printing-parts-supply-slip) #printReceipt {
                position: absolute;
                left: 0;
                top: 0;
                width: 100%;
                display: block !important;
                margin: 0 !important;
                padding: 10px 0 !important;
            }
            body.printing-quote #printQuote,
            body.printing-quote #printQuote * {
                visibility: visible;
            }
            body.printing-quote #printQuote {
                position: absolute;
                left: 0;
                top: 0;
                width: 100%;
                display: block !important;
                margin: 0 !important;
                padding: 10px 0 !important;
            }
            body.printing-parts-supply-slip > *:not(#partsSupplyPrintPreviewModal) {
                display: none !important;
            }
            body.printing-parts-supply-slip #printReceipt,
            body.printing-parts-supply-slip #printQuote {
                display: none !important;
                visibility: hidden !important;
            }
            body.printing-parts-supply-slip #partsSupplyPrintPreviewModal,
            body.printing-parts-supply-slip #partsSupplyPrintPreviewModal * {
                visibility: visible !important;
            }
            body.printing-parts-supply-slip #psPrintPreviewTopBar,
            body.printing-parts-supply-slip #psPrintPreviewTopBar * {
                display: none !important;
                visibility: hidden !important;
            }
            body.printing-parts-supply-slip #partsSupplyPrintPreviewModal {
                position: static !important;
                inset: auto !important;
                width: 100% !important;
                height: auto !important;
                background: #FFFFFF !important;
                padding: 0 !important;
                margin: 0 !important;
                display: block !important;
                overflow: visible !important;
            }
        }
        /* ================= MODERN TOAST & POPUP NOTIFICATION SYSTEM ================= */

/* --- SECTION: MUKERRER PLAKA UYARI --- */
        /* Mükerrer Plaka / Telefon Akıllı Uyarı Kutuları */
        .duplicate-warning-banner {
            margin-top: 0.5rem;
            background: #FFFBEB;
            border: 1.5px solid #F59E0B;
            border-radius: 8px;
            padding: 0.85rem 1rem;
            box-shadow: 0 4px 12px rgba(245, 158, 11, 0.15);
            animation: appToastSlideIn 0.25s ease forwards;
        }

        /* ================= ÇIRAK ASİSTAN (PROFESYONEL VE TEMİZ TASARIM) ================= */

/* --- SECTION: CIRAK AI ASISTAN --- */
        /* ================= ÇIRAK ASİSTAN (PROFESYONEL VE TEMİZ TASARIM) ================= */
        .cirak-emblem-svg {
            display: inline-block;
            vertical-align: middle;
        }

        /* Characteristic Floating Çırak Button */
        .floating-cirak-fab {
            position: fixed;
            bottom: 2rem;
            right: 2rem; 
            left: auto;
            z-index: 99980;
            height: 48px;
            padding: 0 16px 0 10px;
            border-radius: 28px;
            background: linear-gradient(135deg, #0B1120 0%, #1E293B 100%);
            border: 1.5px solid rgba(56, 189, 248, 0.45);
            color: #FFFFFF;
            cursor: pointer;
            display: flex;
            align-items: center;
            gap: 0.65rem;
            box-shadow: 0 6px 20px rgba(15, 23, 42, 0.45), 0 0 18px rgba(56, 189, 248, 0.22);
            transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
        }

        .floating-cirak-fab:hover {
            transform: translateY(-2px) scale(1.03);
            border-color: #38BDF8;
            box-shadow: 0 10px 28px rgba(15, 23, 42, 0.6), 0 0 24px rgba(56, 189, 248, 0.4);
        }

        .floating-cirak-fab .fab-emblem-wrap {
            width: 34px;
            height: 34px;
            display: flex;
            align-items: center;
            justify-content: center;
            flex-shrink: 0;
        }

        .floating-cirak-fab .fab-emblem-wrap svg {
            width: 34px;
            height: 34px;
            filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.35));
        }

        .floating-cirak-fab .fab-label-group {
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .floating-cirak-fab .fab-text {
            font-size: 0.94rem;
            font-weight: 800;
            color: #F8FAFC;
            letter-spacing: 0.2px;
        }

        .floating-cirak-fab .fab-tag {
            background: linear-gradient(135deg, #2563EB, #0284C7);
            color: #FFFFFF;
            font-size: 0.65rem;
            font-weight: 900;
            padding: 1px 6px;
            border-radius: 6px;
            letter-spacing: 0.5px;
            border: 1px solid rgba(255, 255, 255, 0.2);
            box-shadow: 0 2px 6px rgba(37, 99, 235, 0.4);
        }

        .floating-cirak-fab .fab-pulse-dot {
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: #10B981;
            margin-left: 2px;
            box-shadow: 0 0 8px #10B981;
            animation: cirakFabPulse 2s infinite ease-in-out;
        }

        @keyframes cirakFabPulse {
            0%, 100% { transform: scale(1); opacity: 0.9; box-shadow: 0 0 4px #10B981; }
            50% { transform: scale(1.25); opacity: 1; box-shadow: 0 0 10px #10B981; }
        }

        /* Çırak Modal Backdrop & Card (V2 Enterprise SaaS Theme) */
        .cirak-backdrop {
            position: fixed;
            inset: 0;
            z-index: 100070;
            background: rgba(15, 23, 42, 0.75);
            backdrop-filter: blur(8px);
            -webkit-backdrop-filter: blur(8px);
            display: flex;
            align-items: center;
            justify-content: center;
            padding: 16px;
            animation: appBackdropFadeIn 0.18s ease forwards;
        }

        .cirak-card {
            background: var(--bg-card, #ffffff);
            border: 1px solid var(--border-color, #e2e8f0);
            border-radius: 16px;
            width: 100%;
            max-width: 680px;
            color: var(--text-main, #0f172a);
            box-shadow: 0 25px 60px -15px rgba(15, 23, 42, 0.35), 0 10px 25px -5px rgba(0, 0, 0, 0.1);
            overflow: hidden;
            display: flex;
            flex-direction: column;
        }

        .cirak-drag-handle-bar {
            display: none;
            justify-content: center;
            padding: 10px 0 2px 0;
            background: var(--bg-card, #ffffff);
        }

        .cirak-drag-pill {
            width: 40px;
            height: 5px;
            border-radius: 3px;
            background: #cbd5e1;
        }

        .cirak-header {
            padding: 1.1rem 1.4rem;
            background: var(--bg-card, #ffffff);
            border-bottom: 1px solid var(--border-color, #e2e8f0);
            display: flex;
            align-items: center;
            justify-content: space-between;
        }

        .cirak-header-info {
            display: flex;
            align-items: center;
            gap: 0.85rem;
        }

        .cirak-avatar-badge {
            width: 44px;
            height: 44px;
            border-radius: 12px;
            background: linear-gradient(135deg, #0F172A, #1E293B);
            color: #ffffff;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 4px 14px rgba(15, 23, 42, 0.35);
            border: 1.5px solid rgba(56, 189, 248, 0.4);
            flex-shrink: 0;
            overflow: hidden;
        }

        .cirak-avatar-badge svg {
            width: 36px;
            height: 36px;
        }

        .cirak-title {
            font-size: 1.15rem;
            font-weight: 800;
            color: var(--text-main, #0f172a);
            margin: 0;
            letter-spacing: -0.3px;
        }

        .cirak-status-pill {
            background: rgba(16, 185, 129, 0.12);
            border: 1px solid rgba(16, 185, 129, 0.28);
            color: #059669;
            padding: 2px 8px;
            border-radius: 9999px;
            font-size: 0.72rem;
            font-weight: 700;
            display: inline-flex;
            align-items: center;
            gap: 5px;
        }

        .cirak-pulse-dot {
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: #10B981;
            display: inline-block;
            box-shadow: 0 0 0 rgba(16, 185, 129, 0.4);
            animation: cirakDotPulse 1.8s infinite;
        }

        @keyframes cirakDotPulse {
            0% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7); }
            70% { transform: scale(1); box-shadow: 0 0 0 6px rgba(16, 185, 129, 0); }
            100% { transform: scale(0.95); box-shadow: 0 0 0 0 rgba(16, 185, 129, 0); }
        }

        .cirak-sub {
            font-size: 0.8rem;
            color: var(--text-muted, #64748b);
            margin: 2px 0 0 0;
            line-height: 1.35;
        }

        .cirak-close {
            background: var(--bg-main, #f8fafc);
            border: 1px solid var(--border-color, #e2e8f0);
            color: var(--text-muted, #64748b);
            width: 34px;
            height: 34px;
            border-radius: 8px;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.15s;
            font-size: 1.2rem;
        }

        .cirak-close:hover {
            background: #FEE2E2;
            color: #DC2626;
            border-color: #FCA5A5;
        }

        .cirak-body {
            padding: 1.25rem 1.4rem;
            display: flex;
            flex-direction: column;
            gap: 1rem;
            max-height: 80vh;
            overflow-y: auto;
            background: var(--bg-card, #ffffff);
        }

        /* Clean Audio Bar */
        .cirak-audio-bar {
            display: flex;
            align-items: center;
            gap: 0.85rem;
            background: var(--bg-main, #f8fafc);
            border: 1.5px solid var(--border-color, #e2e8f0);
            border-radius: 12px;
            padding: 0.75rem 1rem;
            transition: border-color 0.2s;
        }

        .cirak-mic-toggle {
            width: 42px;
            height: 42px;
            border-radius: 50%;
            background: #2563EB;
            border: none;
            color: #ffffff;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.15rem;
            transition: all 0.2s;
            outline: none;
            flex-shrink: 0;
            box-shadow: 0 4px 10px rgba(37, 99, 235, 0.25);
        }

        .cirak-mic-toggle:hover {
            background: #1D4ED8;
            transform: scale(1.04);
        }

        .cirak-mic-toggle.listening {
            background: #DC2626 !important;
            animation: micPulseRed 1.2s infinite;
            box-shadow: 0 0 0 4px rgba(220, 38, 38, 0.3) !important;
        }

        .cirak-mic-info {
            display: flex;
            flex-direction: column;
            gap: 3px;
            flex: 1;
        }

        .cirak-mic-text {
            font-size: 0.84rem;
            color: var(--text-main, #334155);
            font-weight: 500;
            line-height: 1.35;
        }

        .cirak-soundwave {
            display: flex;
            align-items: center;
            gap: 3px;
            height: 16px;
        }

        .cirak-soundwave span {
            display: inline-block;
            width: 3px;
            height: 100%;
            background: #DC2626;
            border-radius: 2px;
            animation: cirakWave 1s ease-in-out infinite;
        }
        .cirak-soundwave span:nth-child(2) { animation-delay: 0.2s; }
        .cirak-soundwave span:nth-child(3) { animation-delay: 0.4s; }
        .cirak-soundwave span:nth-child(4) { animation-delay: 0.1s; }
        .cirak-soundwave span:nth-child(5) { animation-delay: 0.3s; }

        @keyframes cirakWave {
            0%, 100% { height: 4px; }
            50% { height: 16px; }
        }

        /* Input Box */
        .cirak-input-box {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;
        }

        .cirak-textarea {
            width: 100%;
            min-height: 85px;
            background: var(--bg-main, #f8fafc);
            border: 1.5px solid var(--border-color, #cbd5e1);
            border-radius: 10px;
            padding: 0.75rem 0.9rem;
            color: var(--text-main, #0f172a);
            font-size: 0.92rem;
            font-family: inherit;
            line-height: 1.45;
            resize: vertical;
            outline: none;
            box-sizing: border-box;
            transition: all 0.2s;
        }

        .cirak-textarea:focus {
            border-color: #2563EB;
            background: var(--bg-card, #ffffff);
            box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
        }

        .cirak-input-actions {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 8px;
        }

        .cirak-input-tips {
            font-size: 0.75rem;
            color: var(--text-muted, #64748b);
            display: flex;
            align-items: center;
            gap: 5px;
        }

        .btn-cirak-run {
            background: linear-gradient(135deg, #2563EB, #1D4ED8);
            color: #FFFFFF;
            font-weight: 700;
            padding: 0.65rem 1.4rem;
            border-radius: 8px;
            border: none;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
            font-size: 0.9rem;
            transition: all 0.15s;
            box-shadow: 0 2px 8px rgba(37, 99, 235, 0.25);
        }

        .btn-cirak-run:hover {
            background: linear-gradient(135deg, #1D4ED8, #1E40AF);
            transform: translateY(-1px);
        }

        .btn-cirak-clear {
            background: var(--bg-main, #f8fafc);
            color: var(--text-muted, #64748b);
            border: 1px solid var(--border-color, #cbd5e1);
            padding: 0.6rem 0.9rem;
            border-radius: 8px;
            cursor: pointer;
            font-size: 0.82rem;
            font-weight: 600;
            transition: all 0.15s;
        }

        .btn-cirak-clear:hover {
            color: var(--text-main, #0f172a);
            background: #F1F5F9;
        }

        /* Presets */
        .cirak-presets-wrap {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }

        .cirak-presets-label {
            font-size: 0.72rem;
            font-weight: 700;
            color: var(--text-muted, #64748b);
            text-transform: uppercase;
            letter-spacing: 0.4px;
        }

        .cirak-presets-list {
            display: flex;
            flex-wrap: wrap;
            gap: 0.45rem;
        }

        .cirak-preset-chip {
            background: var(--bg-main, #f8fafc);
            border: 1px solid var(--border-color, #e2e8f0);
            color: var(--text-main, #334155);
            padding: 6px 11px;
            border-radius: 8px;
            font-size: 0.78rem;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.15s;
            display: inline-flex;
            align-items: center;
            gap: 6px;
        }

        .cirak-preset-chip:hover {
            background: #EFF6FF;
            border-color: #93C5FD;
            color: #1D4ED8;
            transform: translateY(-1px);
        }

        /* Result Card */
        .cirak-result-box {
            background: var(--bg-main, #f8fafc);
            border: 1.5px solid #93C5FD;
            border-radius: 12px;
            padding: 1.15rem;
            display: none;
            animation: appToastSlideIn 0.2s ease forwards;
        }

        .cirak-result-box.visible {
            display: block !important;
        }

        .cirak-result-header {
            display: flex;
            align-items: center;
            gap: 0.5rem;
            font-size: 0.95rem;
            font-weight: 800;
            color: #1D4ED8;
            margin-bottom: 0.85rem;
            padding-bottom: 0.55rem;
            border-bottom: 1px solid var(--border-color, #e2e8f0);
        }

        .cirak-result-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 0.55rem;
            margin-bottom: 0.75rem;
        }

        @media (max-width: 600px) {
            .cirak-result-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        .cirak-summary-cell {
            background: var(--bg-card, #ffffff);
            padding: 0.5rem 0.75rem;
            border-radius: 8px;
            border: 1px solid var(--border-color, #e2e8f0);
        }

        .cirak-summary-cell label {
            display: block;
            font-size: 0.65rem;
            color: var(--text-muted, #64748b);
            text-transform: uppercase;
            margin-bottom: 2px;
            font-weight: 700;
            letter-spacing: 0.2px;
        }

        .cirak-summary-cell strong {
            color: var(--text-main, #0f172a);
            font-size: 0.88rem;
            font-weight: 700;
        }

        .cirak-items-box, .cirak-recommendations-box, .cirak-notes-box {
            border-radius: 8px;
            padding: 0.75rem 0.95rem;
            margin-bottom: 0.65rem;
            font-size: 0.84rem;
        }

        .cirak-items-box {
            background: rgba(16, 185, 129, 0.07);
            border: 1px solid rgba(16, 185, 129, 0.3);
        }

        .cirak-recommendations-box {
            background: rgba(245, 158, 11, 0.08);
            border: 1px solid rgba(245, 158, 11, 0.35);
        }

        .cirak-notes-box {
            background: rgba(59, 130, 246, 0.07);
            border: 1px solid rgba(59, 130, 246, 0.3);
        }

        .cirak-box-title {
            font-weight: 800;
            font-size: 0.76rem;
            text-transform: uppercase;
            letter-spacing: 0.4px;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .cirak-box-title.success { color: #059669; }
        .cirak-box-title.warning { color: #D97706; }
        .cirak-box-title.info { color: #2563EB; }

        .cirak-items-box ul, .cirak-recommendations-box ul, .cirak-notes-box ul {
            margin: 0.4rem 0 0 0;
            padding-left: 1.2rem;
            line-height: 1.55;
            color: var(--text-main, #334155);
        }

        .cirak-recommendations-box ul { color: #B45309; }
        .cirak-notes-box ul { color: #1E40AF; }

        .cirak-result-footer {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-top: 0.85rem;
            border-top: 1px solid var(--border-color, #e2e8f0);
            gap: 0.75rem;
            flex-wrap: wrap;
        }

        .cirak-total-label {
            font-size: 0.75rem;
            color: var(--text-muted, #64748b);
            display: block;
            font-weight: 600;
        }

        .cirak-total-amount {
            font-size: 1.28rem;
            font-weight: 800;
            color: #059669;
        }

        .cirak-footer-actions {
            display: flex;
            gap: 8px;
            flex-wrap: wrap;
        }

        .btn-action-outline {
            background: var(--bg-card, #ffffff);
            color: var(--text-main, #0f172a);
            border: 1.5px solid var(--border-color, #cbd5e1);
            font-weight: 700;
            padding: 0.6rem 1.1rem;
            border-radius: 8px;
            cursor: pointer;
            font-size: 0.86rem;
            transition: all 0.15s;
            display: inline-flex;
            align-items: center;
            gap: 6px;
        }

        .btn-action-outline:hover {
            background: #F1F5F9;
            border-color: #94A3B8;
        }

        .btn-action-solid {
            background: linear-gradient(135deg, #059669, #047857);
            color: #FFFFFF;
            border: none;
            font-weight: 700;
            padding: 0.6rem 1.25rem;
            border-radius: 8px;
            cursor: pointer;
            font-size: 0.86rem;
            transition: all 0.15s;
            display: inline-flex;
            align-items: center;
            gap: 6px;
            box-shadow: 0 2px 8px rgba(5, 150, 105, 0.3);
        }

        .btn-action-solid:hover {
            background: linear-gradient(135deg, #047857, #065F46);
            transform: translateY(-1px);
        }

        .btn-action-solid.btn-action-full {
            width: 100%;
            justify-content: center;
            padding: 0.78rem 1.4rem;
            font-size: 0.95rem;
            border-radius: 10px;
            box-shadow: 0 4px 14px rgba(5, 150, 105, 0.35);
        }

        /* Generic Action Cards (Kasa, Borç, Stok, Tamamlandı) */
        .cirak-kasa-grid {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 8px;
            margin-bottom: 12px;
        }

        .cirak-kasa-card {
            background: var(--bg-card, #ffffff);
            border: 1px solid var(--border-color, #e2e8f0);
            border-radius: 10px;
            padding: 10px 12px;
            display: flex;
            flex-direction: column;
        }

        .cirak-kasa-card .k-label {
            font-size: 0.72rem;
            font-weight: 700;
            color: var(--text-muted, #64748b);
            text-transform: uppercase;
        }

        .cirak-kasa-card .k-val {
            font-size: 1.1rem;
            font-weight: 800;
            color: var(--text-main, #0f172a);
            margin-top: 3px;
        }

        .cirak-kasa-card.highlight {
            background: rgba(16, 185, 129, 0.08);
            border-color: rgba(16, 185, 129, 0.4);
        }
        .cirak-kasa-card.highlight .k-val {
            color: #059669;
        }

        .cirak-action-success-banner {
            background: rgba(16, 185, 129, 0.1);
            border: 1.5px solid #10B981;
            border-radius: 10px;
            padding: 12px 14px;
            display: flex;
            align-items: center;
            gap: 12px;
            margin-bottom: 12px;
        }

        .cirak-action-success-icon {
            font-size: 1.8rem;
            color: #059669;
            flex-shrink: 0;
        }

        .cirak-action-success-title {
            font-size: 1rem;
            font-weight: 800;
            color: #065F46;
            margin: 0;
        }

        .cirak-action-success-sub {
            font-size: 0.82rem;
            color: #047857;
            margin: 2px 0 0 0;
        }

    
        /* ================= KAPORTA HASAR ŞEMASI STİLLERİ ================= */

/* --- SECTION: KAPORTA HASAR SEMASI --- */
        /* ================= KAPORTA HASAR ŞEMASI STİLLERİ ================= */
        .car-damage-scheme-grid {
            display: grid;
            grid-template-columns: 1fr 1.3fr 1fr;
            gap: 0.75rem;
            align-items: stretch;
            margin-top: 0.5rem;
        }

        @media (max-width: 768px) {
            .car-damage-scheme-grid {
                grid-template-columns: 1fr;
            }
        }

        .damage-col, .damage-center-col {
            display: flex;
            flex-direction: column;
            gap: 0.45rem;
        }

        .damage-part-btn {
            background: #F8FAFC;
            border: 1.5px solid #E2E8F0;
            border-radius: 8px;
            padding: 0.6rem 0.85rem;
            font-size: 0.84rem;
            font-weight: 700;
            color: #334155;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: space-between;
            transition: all 0.2s ease;
        }

        .damage-part-btn i {
            color: #CBD5E1;
            transition: all 0.2s;
        }

        .damage-part-btn:hover {
            border-color: #94A3B8;
            background: #F1F5F9;
        }

        .damage-part-btn.damaged {
            background: #FEF2F2 !important;
            border-color: #DC2626 !important;
            color: #DC2626 !important;
            box-shadow: 0 0 0 1px #DC2626;
        }

        .damage-part-btn.damaged i {
            color: #DC2626 !important;
        }

        .center-btn {
            background: #F1F5F9;
            border-color: #CBD5E1;
            text-align: center;
            justify-content: center;
            gap: 8px;
        }

        .hood-btn {
            padding: 1rem 0.85rem;
            background: #F8FAFC;
        }

        .roof-btn {
            padding: 1.4rem 0.85rem;
            background: #F8FAFC;
        }

        .trunk-btn {
            padding: 0.9rem 0.85rem;
            background: #F8FAFC;
        }

        /* ================= BARCODE SCANNER STİLLERİ ================= */

/* --- SECTION: BARCODE SCANNER --- */
        /* ================= BARCODE SCANNER STİLLERİ ================= */
        .barcode-scan-bar {
            display: flex;
            gap: 0.5rem;
            align-items: center;
            background: #F8FAFC;
            border: 2px solid #0F172A;
            border-radius: 10px;
            padding: 0.5rem 0.85rem;
            box-shadow: 0 2px 10px rgba(0,0,0,0.06);
            margin-bottom: 1rem;
        }

        .barcode-scan-bar input {
            flex: 1;
            border: none;
            background: transparent;
            font-family: 'JetBrains Mono', monospace;
            font-size: 1rem;
            font-weight: 600;
            letter-spacing: 1px;
            color: #0F172A;
            outline: none;
        }

        .barcode-scan-bar input::placeholder {
            font-family: 'Inter', var(--sl-font), sans-serif;
            font-weight: 500;
            letter-spacing: 0;
            color: #94A3B8;
        }

                
        /* ================= HIZLI İŞ BİTİRME & FATURA MODAL STİLLERİ ================= */

/* --- SECTION: HIZLI IS BITIRME MODAL --- */
        /* ================= HIZLI İŞ BİTİRME & FATURA MODAL STİLLERİ ================= */
        .btn-qc-chip {
            background: #FFFFFF;
            border: 1.5px solid #CBD5E1;
            color: #1E293B;
            border-radius: 8px;
            padding: 6px 12px;
            font-size: 0.82rem;
            font-weight: 700;
            cursor: pointer;
            transition: all 0.15s ease;
            box-shadow: 0 1px 3px rgba(0,0,0,0.05);
            display: inline-flex;
            align-items: center;
            gap: 4px;
        }
        .btn-qc-chip:hover {
            background: #FEF08A;
            border-color: #EAB308;
            color: #854D0E;
            transform: translateY(-1px);
            box-shadow: 0 3px 8px rgba(234, 179, 8, 0.25);
        }
        .btn-qc-chip:active {
            transform: translateY(0);
        }
        .qc-item-row td {
            padding: 8px 10px;
            border-bottom: 1px solid #E2E8F0;
            vertical-align: middle;
        }
        .qc-item-row:last-child td {
            border-bottom: none;
        }

        
        
        /* ================= ATTENTION PULSE FOR MISSING RUHSAT KM & PHONE ================= */

/* --- SECTION: INTAKE WIZARD & FUEL GAUGE --- */
        /* ================= ATTENTION PULSE FOR MISSING RUHSAT KM & PHONE ================= */
        @keyframes attentionPulse {
            0% { border-color: #EF4444; box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); background-color: #FEF2F2; }
            50% { border-color: #F59E0B; box-shadow: 0 0 0 6px rgba(245, 158, 11, 0.3); background-color: #FFFBEB; }
            100% { border-color: #EF4444; box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.7); background-color: #FEF2F2; }
        }

        .input-attention-pulse {
            animation: attentionPulse 1.2s infinite ease-in-out !important;
            border-width: 2px !important;
        }

        /* ================= COMPACT SINGLE-SCREEN WIZARD STYLES ================= */
        .intake-compact-stepper {
            display: flex;
            align-items: center;
            justify-content: center;
            background: #FFFFFF;
            border: 1px solid #CBD5E1;
            border-radius: 8px;
            padding: 8px 16px;
            margin-bottom: 12px;
            gap: 12px;
        }

        .intake-compact-step-node {
            display: flex;
            align-items: center;
            gap: 8px;
            cursor: pointer;
            opacity: 0.6;
            transition: all 0.15s;
        }

        .intake-compact-step-node.active {
            opacity: 1;
        }

        .intake-compact-step-node .step-circle {
            width: 28px;
            height: 28px;
            border-radius: 50%;
            background: #F1F5F9;
            border: 1.5px solid #94A3B8;
            color: #475569;
            font-weight: 600;
            font-size: 0.85rem;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .intake-compact-step-node.active .step-circle {
            background: #0F172A;
            color: #FFF;
            border-color: #0F172A;
        }

        .intake-compact-step-node.completed .step-circle {
            background: #10B981;
            color: #FFF;
            border-color: #059669;
        }

        .intake-compact-step-node .step-text {
            font-size: 0.86rem;
            font-weight: 600;
            color: #334155;
        }

        .intake-compact-step-line {
            flex: 1;
            max-width: 50px;
            height: 2px;
            background: #CBD5E1;
        }

        .intake-compact-step-line.active {
            background: #0F172A;
        }

        /* ================= AUTOMOTIVE INSTRUMENT CLUSTER FUEL GAUGE ================= */
        .visual-fuel-gauge {
            background: #0F172A;
            border: 1px solid #334155;
            border-radius: 8px;
            padding: 10px 14px;
            color: #FFF;
        }

        .fuel-gauge-ticks {
            display: grid;
            grid-template-columns: repeat(5, 1fr);
            gap: 4px;
            margin-top: 6px;
        }

        .fuel-gauge-seg {
            cursor: pointer;
            text-align: center;
            padding: 4px 2px;
            background: #1E293B;
            border: 1px solid #334155;
            border-radius: 6px;
            transition: all 0.15s;
        }

        .fuel-gauge-seg:hover {
            border-color: #94A3B8;
        }

        .fuel-gauge-seg.active-empty {
            background: #EF4444 !important;
            border-color: #DC2626 !important;
            color: #FFF !important;
        }

        .fuel-gauge-seg.active-mid {
            background: #F59E0B !important;
            border-color: #D97706 !important;
            color: #0F172A !important;
            font-weight: 700;
        }

        .fuel-gauge-seg.active-full {
            background: #10B981 !important;
            border-color: #059669 !important;
            color: #FFF !important;
        }

        .fuel-gauge-seg .seg-tick {
            font-family: monospace;
            font-size: 0.78rem;
            font-weight: 700;
            display: block;
        }

        .fuel-gauge-seg .seg-name {
            font-size: 0.68rem;
            font-weight: 700;
            display: block;
            margin-top: 2px;
        }

        /* ================= STEP 3 STACKED CHOICE BUTTONS ================= */
        .step3-stacked-container {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
            margin-bottom: 1.25rem;
        }

        .step3-stacked-btn {
            display: flex;
            align-items: center;
            justify-content: space-between;
            width: 100%;
            padding: 1.1rem 1.4rem;
            border-radius: 12px;
            border: 2px solid #E2E8F0;
            background: #F8FAFC;
            cursor: pointer;
            transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
            text-align: left;
        }

        .step3-stacked-btn:hover {
            border-color: #94A3B8;
            background: #F1F5F9;
            transform: translateY(-1px);
        }

        .step3-stacked-btn.active.mode-lift {
            border-color: #2563EB;
            background: #EFF6FF;
            box-shadow: 0 4px 14px rgba(37, 99, 235, 0.15);
        }

        .step3-stacked-btn.active.mode-complete {
            border-color: #059669;
            background: #ECFDF5;
            box-shadow: 0 4px 14px rgba(5, 150, 105, 0.15);
        }

        .step3-stacked-btn .choice-indicator {
            width: 26px;
            height: 26px;
            border-radius: 50%;
            border: 2px solid #CBD5E1;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 0.8rem;
            color: transparent;
            background: #FFFFFF;
            transition: all 0.2s ease;
            flex-shrink: 0;
        }

        .step3-stacked-btn.active.mode-lift .choice-indicator {
            border-color: #2563EB;
            background: #2563EB;
            color: #FFFFFF;
        }

        .step3-stacked-btn.active.mode-complete .choice-indicator {
            border-color: #059669;
            background: #059669;
            color: #FFFFFF;
        }

        /* ================= INTAKE WIZARD STEPPER STİLLERİ ================= */
        .intake-wizard-stepper {
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 2rem;
            padding: 0 1rem;
            background: #F8FAFC;
            border: 1px solid #E2E8F0;
            border-radius: 12px;
            padding: 1rem;
        }

        .wizard-step-node {
            display: flex;
            align-items: center;
            gap: 10px;
            cursor: pointer;
            opacity: 0.5;
            transition: all 0.2s ease;
        }

        .wizard-step-node.active {
            opacity: 1;
        }

        .wizard-step-node .step-num {
            width: 38px;
            height: 38px;
            border-radius: 50%;
            background: #E2E8F0;
            color: #475569;
            font-weight: 700;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1rem;
            border: 2px solid #CBD5E1;
            transition: all 0.2s;
        }

        .wizard-step-node.active .step-num {
            background: var(--accent);
            color: #0F172A;
            border-color: #CA8A04;
            box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4);
            transform: scale(1.08);
        }

        .wizard-step-node.completed .step-num {
            background: #10B981;
            color: #FFF;
            border-color: #059669;
        }

        .wizard-step-node .step-label {
            font-weight: 600;
            font-size: 0.92rem;
            color: #475569;
        }

        .wizard-step-node.active .step-label {
            color: #0F172A;
        }

        .wizard-step-line {
            flex: 1;
            max-width: 80px;
            height: 3px;
            background: #CBD5E1;
            margin: 0 15px;
            border-radius: 2px;
            transition: all 0.2s;
        }

        .wizard-step-line.active {
            background: var(--accent);
        }

        @media (max-width: 640px) {
            .intake-wizard-stepper {
                flex-direction: column;
                gap: 10px;
                align-items: flex-start;
            }
            .wizard-step-line {
                display: none;
            }
        }

        /* ================= SVG BLUEPRINT HOTSPOT STİLLERİ ================= */
        .svg-damage-hotspot {
            fill: transparent;
            stroke: rgba(59, 130, 246, 0.35);
            stroke-width: 1.5;
            cursor: pointer;
            transition: all 0.15s ease;
        }

        .svg-damage-hotspot:hover {
            fill: rgba(254, 240, 138, 0.45);
            stroke: #EAB308;
            stroke-width: 2.5;
        }

        .svg-damage-hotspot.damaged {
            fill: rgba(239, 68, 68, 0.6) !important;
            stroke: #DC2626 !important;
            stroke-width: 3 !important;
            filter: drop-shadow(0 0 8px rgba(220, 38, 38, 0.8));
        }

        .damage-badge-chip {
            background: #FEF2F2;
            border: 1.5px solid #F87171;
            color: #991B1B;
            padding: 4px 10px;
            border-radius: 8px;
            font-size: 0.82rem;
            font-weight: 600;
            display: inline-flex;
            align-items: center;
            gap: 6px;
            box-shadow: 0 1px 3px rgba(0,0,0,0.05);
        }

        .damage-badge-chip .remove-chip-btn {
            background: none;
            border: none;
            color: #DC2626;
            cursor: pointer;
            font-size: 1rem;
            line-height: 1;
            padding: 0 2px;
            font-weight: 700;
        }

        /* ================= KANBAN ATÖLYE PANOSU STİLLERİ ================= */

/* --- SECTION: KANBAN ATOLYE PANOSU --- */
        /* ================= KANBAN ATÖLYE PANOSU STİLLERİ ================= */
        .workshop-kanban-board {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 1.25rem;
            align-items: flex-start;
            margin-top: 1.5rem;
        }

        @media (max-width: 1200px) {
            .workshop-kanban-board {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 768px) {
            .workshop-kanban-board {
                grid-template-columns: 1fr;
            }
        }

        .kanban-col {
            background: #F8FAFC;
            border: 1px solid #E2E8F0;
            border-radius: 12px;
            padding: 1rem;
            display: flex;
            flex-direction: column;
            gap: 0.85rem;
            min-height: 480px;
        }

        .kanban-col-header {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-bottom: 0.75rem;
            border-bottom: 2px solid;
            font-size: 0.92rem;
            font-weight: 600;
        }

        .kanban-col-header.in-progress {
            border-color: #F59E0B;
            color: #B45309;
        }

        .kanban-col-header.waiting-parts {
            border-color: #3B82F6;
            color: #1D4ED8;
        }

        .kanban-col-header.ready {
            border-color: #10B981;
            color: #047857;
        }

        .kanban-col-header.completed {
            border-color: #94A3B8;
            color: #475569;
        }

        .kanban-count-pill {
            background: #FFFFFF;
            border: 1px solid currentColor;
            border-radius: 12px;
            padding: 1px 8px;
            font-size: 0.75rem;
            font-weight: 700;
        }

        .kanban-cards-wrap {
            display: flex;
            flex-direction: column;
            gap: 0.85rem;
            flex: 1;
        }

        .workshop-card {
            background: #FFFFFF;
            border: 1px solid #E2E8F0;
            border-radius: 10px;
            padding: 1rem;
            display: flex;
            flex-direction: column;
            gap: 0.65rem;
            box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04);
            transition: all 0.2s ease;
        }

        .workshop-card:hover {
            border-color: #CBD5E1;
            box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
            transform: translateY(-2px);
        }

        .workshop-card-top {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 0.5rem;
        }

        .plate-box {
            background: #0F172A;
            color: #FFFFFF;
            font-weight: 700;
            font-size: 0.88rem;
            padding: 3px 8px;
            border-radius: 5px;
            letter-spacing: 0.5px;
            border: 1px solid #334155;
            display: inline-flex;
            align-items: center;
            gap: 4px;
        }

        .plate-flag {
            background: #003399;
            color: #FFFFFF;
            font-size: 0.6rem;
            padding: 1px 3px;
            border-radius: 2px;
            font-weight: 600;
        }

        .workshop-car-desc {
            font-size: 0.95rem;
            font-weight: 600;
            color: #0F172A;
            line-height: 1.25;
        }

        .workshop-cust-info {
            font-size: 0.8rem;
            color: #64748B;
            display: flex;
            align-items: center;
            gap: 6px;
        }

        .workshop-items-snip {
            font-size: 0.82rem;
            color: #334155;
            background: #F8FAFC;
            border: 1px dashed #CBD5E1;
            border-radius: 6px;
            padding: 0.45rem 0.6rem;
            line-height: 1.35;
        }

        .workshop-card-bottom {
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding-top: 0.5rem;
            border-top: 1px solid #F1F5F9;
            gap: 0.5rem;
            flex-wrap: wrap;
        }

        .workshop-card-price {
            font-size: 1.05rem;
            font-weight: 700;
            color: #0F172A;
        }

        .workshop-action-group {
            display: flex;
            align-items: center;
            gap: 0.4rem;
            flex-wrap: wrap;
        }

        .btn-status-pill {
            padding: 4px 8px;
            font-size: 0.74rem;
            font-weight: 700;
            border-radius: 6px;
            border: 1px solid;
            cursor: pointer;
            transition: all 0.15s ease;
            display: inline-flex;
            align-items: center;
            gap: 4px;
            background: #FFFFFF;
            white-space: nowrap;
        }

        .btn-status-pill:hover {
            transform: scale(1.03);
        }

        .btn-status-pill.to-waiting {
            border-color: #93C5FD;
            color: #1D4ED8;
            background: #EFF6FF;
        }

        .btn-status-pill.to-ready {
            border-color: #86EFAC;
            color: #047857;
            background: #F0FDF4;
        }

        .btn-status-pill.to-in-progress {
            border-color: #FDE68A;
            color: #B45309;
            background: #FEFCE8;
        }

        .btn-status-pill.to-complete {
            border-color: #CBD5E1;
            color: #475569;
            background: #F8FAFC;
        }

        .btn-whatsapp-ready-direct {
            background: #10B981 !important;
            color: #FFFFFF !important;
            border: 1px solid #059669 !important;
            font-size: 0.76rem !important;
            font-weight: 600 !important;
            padding: 4px 9px !important;
            border-radius: 6px !important;
            cursor: pointer;
            display: inline-flex;
            align-items: center;
            gap: 5px;
            text-decoration: none;
            transition: all 0.2s ease;
        }
        .btn-whatsapp-ready-direct:hover {
            background: #059669 !important;
            transform: translateY(-1px);
        }

        /* ================= STOK & KASA ORTAK KARTLARI ================= */

/* --- SECTION: STOK & KASA KARTLARI --- */
        /* ================= STOK & KASA ORTAK KARTLARI ================= */
        .stat-cards-grid-4 {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 1.25rem;
            margin-bottom: 2rem;
        }

        @media (max-width: 1024px) {
            .stat-cards-grid-4 {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 640px) {
            .stat-cards-grid-4 {
                grid-template-columns: 1fr;
            }
        }

        .module-summary-card {
            background: #FFFFFF;
            border: 1px solid #E2E8F0;
            border-radius: 12px;
            padding: 1.25rem;
            display: flex;
            align-items: center;
            gap: 1rem;
            box-shadow: 0 2px 8px rgba(15, 23, 42, 0.03);
        }

        .module-summary-icon {
            width: 48px;
            height: 48px;
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 1.35rem;
            flex-shrink: 0;
        }

        .module-summary-info {
            display: flex;
            flex-direction: column;
        }

        .module-summary-label {
            font-size: 0.75rem;
            font-weight: 700;
            color: #64748B;
            text-transform: uppercase;
            letter-spacing: 0.04em;
        }

        .module-summary-val {
            font-size: 1.45rem;
            font-weight: 700;
            color: #0F172A;
            line-height: 1.2;
            margin-top: 2px;
        }

        /* Fuel & Damage Pill Selector */

/* --- SECTION: DATE FILTER PILL --- */
/* Date Filter Pill */
.date-filter-pill {
    border: 1px solid #CBD5E1;
    background: #FFFFFF;
    color: #475569;
    padding: 0.4rem 0.85rem;
    font-size: 0.8rem;
    font-weight: 700;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
}
.date-filter-pill.active {
    background: #0F172A;
    color: #FFFFFF;
    border-color: #0F172A;
}

/* ==========================================================================
   SERVİSLOC V3.5 LUXURY OBSIDIAN GLASSMORPHISM AUTHENTICATION SUITE
   High-end B2B SaaS Aesthetic (Linear/Stripe/Vercel Obsidian Glass)
   ========================================================================== */
.sl-auth-page {
    width: 100vw;
    min-height: 100vh;
    background-color: #090D16 !important;
    background-image: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 30px 20px;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
}

.sl-auth-page::before {
    content: '';
    position: fixed;
    inset: -28px;
    background-image: url('../img/workshop-bg.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    filter: blur(14px) brightness(0.42);
    -webkit-filter: blur(14px) brightness(0.42);
    transform: scale(1.06);
    z-index: 1;
    pointer-events: none;
}

.sl-auth-page::after {
    content: '';
    position: fixed;
    inset: 0;
    background: radial-gradient(circle at 50% 40%, rgba(15, 23, 42, 0.42) 0%, rgba(9, 13, 22, 0.78) 100%);
    z-index: 2;
    pointer-events: none;
}

.sl-auth-shell {
    width: 100%;
    max-width: 1060px;
    background: #FFFFFF;
    border-radius: 28px;
    padding: 10px;
    gap: 6px;
    box-shadow: 
        0 30px 75px -10px rgba(0, 0, 0, 0.58),
        0 0 0 1px rgba(255, 255, 255, 0.18);
    display: grid;
    grid-template-columns: 440px 1fr;
    align-items: stretch;
    overflow: hidden;
    position: relative;
    z-index: 20;
    box-sizing: border-box;
}

@media (max-width: 960px) {
    html:has(body:not(.authenticated)),
    body:not(.authenticated) {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        max-height: 100dvh !important;
        overflow: hidden !important;
        overscroll-behavior: none !important;
        touch-action: none !important;
        margin: 0 !important;
        padding: 0 !important;
        background: #090D16 !important;
        background-image: none !important;
    }

    body:not(.authenticated)::before,
    body:not(.authenticated)::after {
        display: none !important;
        content: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
    }

    body:not(.authenticated) #panelSection {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        padding: 0 !important;
        margin: 0 !important;
        background: #090D16 !important;
        z-index: 100 !important;
    }

    body:not(.authenticated) #loginContainer,
    body:not(.authenticated) .sl-auth-page {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        max-height: 100dvh !important;
        padding: 16px !important;
        margin: 0 !important;
        overflow: hidden !important;
        overscroll-behavior: none !important;
        touch-action: none !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        background-color: #090D16 !important;
        background-image: none !important;
        z-index: 101 !important;
        opacity: 1 !important;
        filter: none !important;
    }

    .sl-auth-shell {
        grid-template-columns: 1fr !important;
        padding: 0 !important;
        gap: 0 !important;
        max-width: 420px !important;
        width: 100% !important;
        min-height: auto !important;
        max-height: calc(100dvh - 32px) !important;
        border-radius: 22px !important;
        overflow: hidden !important;
        background: #FFFFFF !important;
        z-index: 102 !important;
        opacity: 1 !important;
        filter: none !important;
        backdrop-filter: none !important;
        box-shadow: 0 25px 60px rgba(0, 0, 0, 0.55), 0 0 0 1px rgba(255, 255, 255, 0.2) !important;
    }

    .sl-auth-brand-col,
    .sl-auth-brand-img-frame,
    .sl-auth-brand-img,
    #loginBrandVideo {
        display: none !important;
        visibility: hidden !important;
        width: 0 !important;
        height: 0 !important;
        pointer-events: none !important;
    }

    .grecaptcha-badge {
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* Sol Kolon: Temiz & Profesyonel Beyaz Giriş Kartı */
.sl-auth-card-col {
    background: #FFFFFF;
    padding: 38px 36px;
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-sizing: border-box;
}

@media (max-width: 480px) {
    .sl-auth-card-col {
        padding: 28px 22px !important;
    }
}

.sl-auth-logo-header {
    display: flex;
    align-items: center;
    gap: 3px;
    margin-bottom: 24px;
}

.sl-auth-logo-brand {
    font-size: 1.85rem;
    font-weight: 900;
    color: #0F172A;
    letter-spacing: -0.03em;
    line-height: 1;
}

.sl-auth-logo-brand span.brand-accent {
    color: #2563EB;
}

.sl-auth-logo-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #2563EB;
    margin-left: 2px;
    margin-top: 14px;
}

.sl-auth-form-title {
    font-size: 1.45rem;
    font-weight: 800;
    color: #0F172A;
    margin: 0 0 6px 0;
    letter-spacing: -0.025em;
}

.sl-auth-form-sub {
    font-size: 0.88rem;
    color: #64748B;
    margin: 0 0 28px 0;
    line-height: 1.45;
}

.sl-auth-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.sl-auth-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.sl-auth-field label {
    font-size: 0.8125rem;
    font-weight: 700;
    color: #1E293B;
}

.sl-auth-input-wrap {
    position: relative;
    display: flex;
    align-items: center;
}

.sl-auth-input-wrap > i:first-child {
    position: absolute;
    left: 14px;
    color: #94A3B8;
    font-size: 0.92rem;
    pointer-events: none;
    transition: color 0.2s ease;
}

.sl-auth-input {
    width: 100%;
    height: 46px;
    padding: 0 14px 0 42px;
    background: #FFFFFF;
    border: 1.5px solid #E2E8F0;
    border-radius: 10px;
    font-size: 16px !important;
    color: #0F172A;
    box-sizing: border-box;
    transition: all 0.2s ease;
    outline: none;
}

#loginUsername {
    text-transform: lowercase !important;
    font-size: 16px !important;
}

#loginPassword {
    font-size: 16px !important;
}

.sl-auth-input::placeholder {
    color: #94A3B8;
}

.sl-auth-input:focus {
    background: #FFFFFF;
    border-color: #2563EB;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
}

.sl-auth-input-wrap:focus-within > i:first-child {
    color: #2563EB;
}

.sl-auth-eye-btn {
    position: absolute;
    right: 12px;
    background: none;
    border: none;
    color: #94A3B8;
    cursor: pointer;
    padding: 6px;
    font-size: 0.9rem;
    transition: color 0.15s ease;
}

.sl-auth-eye-btn:hover {
    color: #0F172A;
}

.sl-auth-meta-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.8125rem;
    margin-top: 2px;
}

.sl-auth-checkbox-label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    color: #475569;
    font-weight: 600;
    cursor: pointer;
    user-select: none;
}

.sl-auth-checkbox-label input[type="checkbox"] {
    accent-color: #2563EB;
    width: 15px;
    height: 15px;
    cursor: pointer;
}

.sl-auth-link {
    color: #2563EB;
    text-decoration: none;
    font-weight: 700;
    transition: color 0.15s ease;
}

.sl-auth-link:hover {
    color: #1D4ED8;
    text-decoration: underline;
}

.sl-auth-submit {
    width: 100%;
    height: 48px;
    background: #2563EB;
    color: #FFFFFF;
    border: none;
    border-radius: 10px;
    font-size: 0.95rem;
    font-weight: 800;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    box-shadow: 0 4px 14px rgba(37, 99, 235, 0.28);
    transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
    margin-top: 8px;
}

.sl-auth-submit:hover {
    background: #1D4ED8;
    box-shadow: 0 6px 18px rgba(37, 99, 235, 0.38);
    transform: translateY(-1px);
}

.sl-auth-submit:active {
    transform: translateY(0);
    box-shadow: 0 2px 8px rgba(37, 99, 235, 0.28);
}

.sl-auth-error {
    background: #FEF2F2;
    color: #DC2626;
    border: 1px solid #FCA5A5;
    font-size: 0.8125rem;
    padding: 10px 14px;
    border-radius: 8px;
    margin-top: 12px;
    text-align: center;
    font-weight: 600;
}

.sl-auth-card-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 28px;
    font-size: 0.775rem;
    color: #94A3B8;
    font-weight: 600;
}

/* Sağ Kolon: ServisLOC Kurumsal Atölye Görseli (Kart İçinde 10px İçeride & Yuvarlatılmış) */
.sl-auth-brand-col {
    background: transparent !important;
    background-image: none !important;
    padding: 0 !important;
    display: flex;
    align-items: stretch;
    justify-content: center;
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}

.sl-auth-brand-img-frame {
    width: 100%;
    height: 100%;
    min-height: 520px;
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    background: #0B1120;
    box-shadow: 0 8px 25px rgba(15, 23, 42, 0.12);
    display: flex;
    align-items: stretch;
}

.sl-auth-brand-img {
    width: 100%;
    height: 100%;
    min-height: 520px;
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: 20px;
}

@media (max-width: 960px) {
    .sl-auth-brand-col,
    .sl-auth-brand-img-frame,
    .sl-auth-brand-img {
        display: none !important;
    }
}

.sl-auth-brand-info {
    position: relative;
    z-index: 2;
}

.sl-auth-lead {
    font-size: 1.7rem;
    font-weight: 900;
    color: #FFFFFF;
    line-height: 1.25;
    letter-spacing: -0.025em;
    margin-bottom: 8px;
}

.sl-auth-copy {
    font-size: 0.9rem;
    color: #CBD5E1;
    line-height: 1.5;
    margin: 0 0 20px 0;
}

/* 2'li İstatistik Kartları */
.sl-auth-metric-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-bottom: 22px;
}

.sl-auth-metric-box {
    background: rgba(30, 41, 59, 0.65);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, 0.09);
    border-radius: 12px;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    gap: 12px;
}

.sl-auth-metric-icon {
    width: 38px;
    height: 38px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.05rem;
    flex-shrink: 0;
}

.sl-auth-metric-icon.blue {
    background: rgba(37, 99, 235, 0.25);
    color: #60A5FA;
}

.sl-auth-metric-icon.amber {
    background: rgba(245, 158, 11, 0.25);
    color: #FBBF24;
}

.sl-auth-metric-text {
    display: flex;
    flex-direction: column;
}

.sl-auth-metric-label {
    font-size: 0.68rem;
    color: #94A3B8;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.sl-auth-metric-val {
    font-size: 1.05rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1.2;
}

/* Perspektifli Tablet / Panel Mockup'ı */
.sl-auth-mockup-frame {
    background: #0F172A;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 
        0 25px 50px -10px rgba(0, 0, 0, 0.6),
        0 0 0 1px rgba(255, 255, 255, 0.08);
    transform: perspective(1000px) rotateX(3deg) rotateY(-1deg);
    transition: transform 0.3s ease;
    margin-top: auto;
}

.sl-auth-mockup-frame:hover {
    transform: perspective(1000px) rotateX(0deg) rotateY(0deg);
}

.sl-auth-mockup-topbar {
    background: #090D16;
    padding: 8px 12px;
    display: flex;
    align-items: center;
    gap: 6px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.sl-auth-mockup-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
}

.sl-auth-mockup-body {
    display: grid;
    grid-template-columns: 105px 1fr;
    min-height: 160px;
    background: #F8FAFC;
}

.sl-auth-mockup-nav {
    background: #0F172A;
    padding: 10px 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.sl-auth-mockup-nav-brand {
    font-size: 0.72rem;
    font-weight: 900;
    color: #FFFFFF;
    padding: 2px 6px 8px 6px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    margin-bottom: 4px;
}

.sl-auth-mockup-nav-item {
    font-size: 0.65rem;
    font-weight: 700;
    color: #94A3B8;
    padding: 4px 6px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    gap: 5px;
}

.sl-auth-mockup-nav-item.active {
    background: #2563EB;
    color: #FFFFFF;
}

.sl-auth-mockup-main {
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.sl-auth-mockup-main-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 6px;
    border-bottom: 1px solid #E2E8F0;
}

.sl-auth-mockup-row {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    padding: 6px 8px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.68rem;
    font-weight: 700;
    color: #1E293B;
}

.sl-auth-mockup-pill {
    font-size: 0.62rem;
    font-weight: 800;
    padding: 2px 6px;
    border-radius: 4px;
}

.sl-auth-mockup-pill.blue { background: #EFF6FF; color: #1D4ED8; }
.sl-auth-mockup-pill.amber { background: #FFFBEB; color: #B45309; }
.sl-auth-mockup-pill.green { background: #ECFDF5; color: #047857; }

.sl-auth-card-footer {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: 24px;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    font-size: 0.75rem;
    color: #64748B;
    text-align: center;
}

/* Operation Mode Visibility Helpers */
body.mode-simple .mode-advanced-only {
    display: none !important;
}
body.mode-advanced .mode-simple-only {
    display: none !important;
}

/* ==========================================================================
   SETTINGS SEGMENTED SUBTABS & DASHBOARD GRID
   ========================================================================== */
.settings-subtabs {
    display: flex;
    align-items: center;
    gap: 4px;
    background: #F1F5F9;
    padding: 4px;
    border-radius: 8px;
    border: 1px solid #E2E8F0;
    overflow-x: auto;
    margin-bottom: 20px;
}

.settings-subtab-btn {
    height: 36px;
    padding: 0 14px;
    border-radius: 6px;
    border: 1px solid transparent;
    background: transparent;
    color: #475569;
    font-size: 0.8125rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s;
}

.settings-subtab-btn:hover {
    color: #0F172A;
    background: rgba(255, 255, 255, 0.6);
}

.settings-subtab-btn.active {
    background: #FFFFFF !important;
    color: #2563EB !important;
    border-color: #E2E8F0 !important;
    box-shadow: 0 1px 3px rgba(15, 23, 42, 0.08);
}

.settings-dash-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 16px;
}

@media (max-width: 1200px) {
    .settings-dash-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .settings-dash-grid {
        grid-template-columns: 1fr;
    }
}

.settings-dash-card {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    cursor: pointer;
    transition: all 0.15s ease;
    text-decoration: none;
    color: inherit;
}

.settings-dash-card:hover {
    border-color: #CBD5E1;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05);
    transform: translateY(-1px);
}

.settings-dash-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 12px;
}

.settings-dash-card-icon {
    width: 36px;
    height: 36px;
    border-radius: 6px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    color: #2563EB;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.settings-dash-card-title {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #0F172A;
    margin: 0 0 6px 0;
}

.settings-dash-card-desc {
    font-size: 0.8125rem;
    color: #64748B;
    line-height: 1.45;
    margin: 0;
}

.settings-dash-card-footer {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: 16px;
    padding-top: 12px;
    border-top: 1px solid #F8FAFC;
    font-size: 0.78125rem;
    font-weight: 600;
    color: #2563EB;
    gap: 4px;
}

/* Back to settings dashboard button */
.settings-back-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    color: #475569;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
    margin-bottom: 16px;
}

.settings-back-btn:hover {
    background: #F8FAFC;
    color: #0F172A;
    border-color: #CBD5E1;
}

/* ==========================================================================
   PERMISSION MATRIX UI
   ========================================================================== */
.sl-perm-container {
    max-height: 55vh;
    overflow-y: auto;
    padding-right: 6px;
}

.sl-perm-module-card {
    background: #FFFFFF;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    margin-bottom: 12px;
    overflow: hidden;
}

.sl-perm-module-header {
    background: #F8FAFC;
    border-bottom: 1px solid #E2E8F0;
    padding: 8px 12px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sl-perm-module-title {
    font-size: 0.84375rem;
    font-weight: 700;
    color: #0F172A;
    display: flex;
    align-items: center;
    gap: 8px;
}

.sl-perm-module-actions {
    display: flex;
    gap: 6px;
}

.sl-perm-quick-btn {
    background: none;
    border: none;
    padding: 2px 6px;
    font-size: 0.71875rem;
    color: #2563EB;
    cursor: pointer;
    font-weight: 600;
    border-radius: 4px;
}

.sl-perm-quick-btn:hover {
    background: #EFF6FF;
}

.sl-perm-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 10px;
    padding: 12px 14px;
}

.sl-perm-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8125rem;
    color: #334155;
    cursor: pointer;
    user-select: none;
}

.sl-perm-item input[type="checkbox"] {
    width: 15px;
    height: 15px;
    accent-color: #2563EB;
    border-radius: 4px;
    cursor: pointer;
}

/* ==========================================================================
   SERVISLOC DASHBOARD & ERP KPI CARDS, FILTER PILLS & METRIC TILES
   ========================================================================== */
.sl-kpi-card {
    background: #FFFFFF !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 8px !important;
    padding: 14px 16px !important;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
    display: flex !important;
    flex-direction: column !important;
}
.sl-kpi-card:hover {
    border-color: #CBD5E1 !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.08), 0 2px 4px -2px rgba(0, 0, 0, 0.05);
}
.sl-kpi-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}
.sl-kpi-indicator {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
    flex-shrink: 0;
}
.sl-kpi-label {
    font-size: 0.78rem;
    font-weight: 700;
    color: #64748B;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}
.sl-kpi-val {
    font-size: 1.65rem;
    font-weight: 800;
    color: #0F172A;
    line-height: 1.2;
    margin-bottom: 4px;
    letter-spacing: -0.02em;
}
.sl-kpi-sub {
    font-size: 0.75rem;
    color: #94A3B8;
}

/* Operational Table Filter Pills */
.sl-filter-pill-group {
    display: inline-flex;
    background: #F1F5F9;
    border-radius: 6px;
    padding: 3px;
    gap: 2px;
}
.sl-pill-btn {
    border: none;
    background: transparent;
    padding: 5px 12px;
    font-size: 0.78rem;
    font-weight: 600;
    color: #64748B;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}
.sl-pill-btn:hover {
    color: #0F172A;
    background: rgba(255, 255, 255, 0.6);
}
.sl-pill-btn.active {
    background: #FFFFFF !important;
    color: #0F172A !important;
    font-weight: 700;
    box-shadow: 0 1px 2px rgba(0,0,0,0.08);
}

/* Workshop & Dashboard Metric Tiles */
.sl-metric-tile {
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    padding: 10px 12px;
    display: flex;
    flex-direction: column;
}
.sl-tile-lbl {
    font-size: 0.72rem;
    font-weight: 700;
    color: #64748B;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    margin-bottom: 4px;
}
.sl-tile-num {
    font-size: 1.15rem;
    font-weight: 800;
    color: #0F172A;
    line-height: 1.2;
    margin-bottom: 2px;
}
.sl-tile-desc {
    font-size: 0.7rem;
    color: #94A3B8;
}

/* Universal Vehicle Picker Modal Styling */
.vp-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(15, 23, 42, 0.65);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10090;
}
.vp-content {
    background: #FFFFFF;
    border-radius: 12px;
    width: 95%;
    max-width: 640px;
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 20px 40px rgba(0,0,0,0.25);
    overflow: hidden;
    border: 1px solid #CBD5E1;
}
.vp-header {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid #E2E8F0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.vp-body {
    padding: 1rem 1.25rem;
    overflow-y: auto;
    flex: 1;
}
.vp-steps-bar {
    display: flex;
    gap: 8px;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid #F1F5F9;
}
.vp-step-badge {
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 700;
    background: #F1F5F9;
    color: #64748B;
}
.vp-step-badge.active {
    background: #EFF6FF;
    color: #2563EB;
    border: 1px solid #BFDBFE;
}
.vp-step-badge.completed {
    background: #ECFDF5;
    color: #059669;
}
.vp-grid-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
    gap: 6px;
    max-height: 340px;
    overflow-y: auto;
}
.vp-item-btn {
    padding: 8px 10px;
    background: #F8FAFC;
    border: 1px solid #E2E8F0;
    border-radius: 6px;
    text-align: left;
    font-size: 0.82rem;
    font-weight: 600;
    color: #1E293B;
    cursor: pointer;
    transition: all 0.12s ease;
    display: flex;
    align-items: center;
    gap: 6px;
}
.vp-item-btn:hover {
    background: #EFF6FF;
    border-color: #93C5FD;
    color: #1D4ED8;
}

/* Hide Floating Çırak Assistant Button when Unauthenticated */
body:not(.authenticated) #btnFloatingAiAssistant,
body:not(.authenticated) .floating-cirak-fab,
body:not(.authenticated) #modalServislocAssistant {
    display: none !important;
}

/* ==========================================================================
   OPERATION MODES (Basit Mod vs Gelişmiş Mod)
   ========================================================================== */
body.mode-simple .mode-advanced-only {
    display: none !important;
}

body.mode-advanced .mode-simple-only {
    display: none !important;
}

body.mode-simple .nav-group-advanced {
    display: none !important;
}

/* ==========================================================================
   WORK ORDER TIMER QUICK BUTTONS & STEPPER CONTROLS
   ========================================================================== */
.btn-timer-quick {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 6px 13px !important;
    border-radius: 8px !important;
    font-size: 0.8rem !important;
    font-weight: 700 !important;
    color: #334155 !important;
    background: #FFFFFF !important;
    border: 1.5px solid #CBD5E1 !important;
    cursor: pointer !important;
    transition: all 0.16s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
    user-select: none !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
}

.btn-timer-quick:hover {
    background: #F8FAFC !important;
    border-color: #94A3B8 !important;
    color: #0F172A !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08) !important;
}

.btn-timer-quick.active {
    background: #EFF6FF !important;
    border-color: #2563EB !important;
    color: #1D4ED8 !important;
    font-weight: 800 !important;
    box-shadow: 0 0 0 2.5px rgba(37, 99, 235, 0.22), 0 1px 3px rgba(37, 99, 235, 0.15) !important;
}

.sl-timer-inputs-wrap {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: #FFFFFF !important;
    border: 1.5px solid #CBD5E1 !important;
    border-radius: 8px !important;
    padding: 3px 8px !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
}

.sl-timer-inputs-wrap input[type="number"] {
    width: 44px !important;
    border: 1px solid #E2E8F0 !important;
    border-radius: 6px !important;
    outline: none !important;
    text-align: center !important;
    font-weight: 800 !important;
    font-size: 0.88rem !important;
    color: #0F172A !important;
    background: #F8FAFC !important;
    padding: 3px 2px !important;
    transition: all 0.15s !important;
}

.sl-timer-inputs-wrap input[type="number"]:focus {
    border-color: #3B82F6 !important;
    background: #FFFFFF !important;
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15) !important;
}

/* Mobile Quick Pills */
.m-timer-quick-btn {
    padding: 10px 6px !important;
    border-radius: 10px !important;
    border: 1.5px solid #CBD5E1 !important;
    background: #FFFFFF !important;
    font-weight: 800 !important;
    font-size: 0.82rem !important;
    color: #334155 !important;
    cursor: pointer !important;
    text-align: center !important;
    transition: all 0.15s ease !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04) !important;
}

.m-timer-quick-btn:hover, .m-timer-quick-btn:active {
    background: #F8FAFC !important;
    border-color: #94A3B8 !important;
}

.m-timer-quick-btn.active-quick-timer {
    border-color: #2563EB !important;
    background: #EFF6FF !important;
    color: #1D4ED8 !important;
    box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.2) !important;
}



