/* Apple-inspired Admin Interface */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    font-family: -apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', system-ui, sans-serif;
    background: #f6f7fb;
    color: #1d1d1f;
    line-height: 1.47;
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Design Tokens */
:root{
    --bg: #f6f7fb;
    --panel: rgba(255,255,255,0.78);
    --panelSolid: #ffffff;
    --text: #0b1220;
    --muted: rgba(11,18,32,0.55);
    --border: rgba(11,18,32,0.10);
    --shadow: 0 10px 30px rgba(15,23,42,0.06);
    --primary: #2563eb;
    --primaryText: #ffffff;
    --sidebarBg: #0b1220;
    --sidebarBg2: #0a172a;
    --sidebarText: rgba(255,255,255,0.74);
    --sidebarTextActive: #ffffff;
    --sidebarActive: rgba(37,99,235,0.18);
    --chipBg: rgba(37,99,235,0.10);
}

/* Dark theme */
.theme-dark body { background: #0b0f18; color: #e5e5ea; }
.theme-dark :root{
    --bg:#0b0f18;
    --panel: rgba(17,24,39,0.68);
    --panelSolid: #111827;
    --text:#e5e7eb;
    --muted: rgba(229,231,235,0.62);
    --border: rgba(255,255,255,0.08);
    --shadow: none;
    --primary:#0a84ff;
    --primaryText:#08101f;
    --sidebarBg:#0a0f18;
    --sidebarBg2:#0b1220;
    --sidebarText: rgba(229,231,235,0.68);
    --sidebarTextActive:#ffffff;
    --sidebarActive: rgba(10,132,255,0.16);
    --chipBg: rgba(10,132,255,0.16);
}

.theme-dark .admin-header { background: rgba(20,20,20,0.8); border-bottom-color: rgba(255,255,255,0.06); box-shadow:none; }
.theme-dark .admin-header { background: rgba(20,20,20,0.8); border-bottom-color: rgba(255,255,255,0.06); box-shadow:none; }
.theme-dark .admin-logo-single-line { color:#e5e5ea; }
.theme-dark .admin-subtitle { color:#a1a1a6; }
.theme-dark .admin-nav { background: rgba(20,20,20,0.8); border-bottom-color: rgba(255,255,255,0.06); }
.theme-dark .nav-btn { color:#a1a1a6; }
.theme-dark .nav-btn:hover { color:#0a84ff; background: rgba(10,132,255,0.06); }
.theme-dark .nav-btn.active { color:#0a84ff; border-bottom-color:#0a84ff; background: rgba(10,132,255,0.06); }
.theme-dark .admin-main { }
.theme-dark .section-subheader h3 { color:#e5e5ea; }
.theme-dark .filters { background: rgba(22,22,24,0.9); border-color: rgba(255,255,255,0.06); }
.theme-dark .filters input,
.theme-dark .filters select { background: rgba(28,28,30,0.9); color:#e5e5ea; border-color: rgba(255,255,255,0.12); }
.theme-dark .filters input:focus,
.theme-dark .filters select:focus { border-color:#0a84ff; box-shadow: 0 0 0 3px rgba(10,132,255,0.15); background: rgba(28,28,30,1); }
.theme-dark .table-container { background: rgba(22,22,24,0.9); border-color: rgba(255,255,255,0.06); box-shadow:none; }
.theme-dark .admin-table th { background: rgba(28,28,30,0.9); color:#a1a1a6; border-bottom-color: rgba(255,255,255,0.06); }
.theme-dark .admin-table td { background: rgba(22,22,24,0.7); border-bottom-color: rgba(255,255,255,0.06); color:#e5e5ea; }
.theme-dark .admin-table tbody tr:hover { background: rgba(255,255,255,0.04); box-shadow:none; }
.theme-dark .status-in-arbeit { background: rgba(255,159,10,0.18); color:#ff9f0a; }
.theme-dark .status-neu { background: rgba(10,132,255,0.18); color:#0a84ff; }
.theme-dark .status-fertig { background: rgba(48,209,88,0.18); color:#30d158; }
.theme-dark .status-versandt { background: rgba(142,142,147,0.18); color:#a1a1a6; }
.theme-dark .units-badge { background: rgba(10,132,255,0.18); color:#0a84ff; border-color: rgba(10,132,255,0.25); }
.theme-dark .tech-progress { background: rgba(142,142,147,0.2); }
.theme-dark .tech-stat-card,
.theme-dark .dentist-card,
.theme-dark .tech-card,
.theme-dark .notes-admin-container,
.theme-dark .setting-card { background: rgba(22,22,24,0.9); border-color: rgba(255,255,255,0.06); box-shadow:none; }
.theme-dark .stat-card { background: rgba(22,22,24,0.9); border-color: rgba(255,255,255,0.06); box-shadow:none; }
.theme-dark .stat-card h4 { color:#a1a1a6; }
.theme-dark .stat-card span { color:#e5e5ea; }
.theme-dark .tech-stat-name { color:#e5e5ea; }
.theme-dark .tech-stat-total { color:#0a84ff; }
.theme-dark .dentist-meta { color:#a1a1a6; }
.theme-dark .btn-primary { background:#e5e5ea; color:#111; }
.theme-dark .btn-secondary { background: rgba(28,28,30,0.9); color:#e5e5ea; border-color: rgba(255,255,255,0.12); }
.theme-dark .btn-danger { background: rgba(28,28,30,0.9); color:#e5e5ea; border-color: rgba(255,255,255,0.12); }
.theme-dark .modal { background-color: rgba(0,0,0,0.5); }
.theme-dark .modal-content { background: rgba(22,22,24,0.97); border-color: rgba(255,255,255,0.06); }
.theme-dark .modal-header { border-bottom-color: rgba(255,255,255,0.06); }
.theme-dark .modal-header h3 { color:#e5e5ea; }
.theme-dark .close { color:#a1a1a6; }
.theme-dark .close:hover { color:#e5e5ea; }
.theme-dark .modal-actions { background: rgba(28,28,30,0.9); border-top-color: rgba(255,255,255,0.06); }
.theme-dark .form-group label { color:#a1a1a6; }
.theme-dark .form-group input,
.theme-dark .form-group select,
.theme-dark .form-group textarea { background: rgba(28,28,30,0.9); color:#e5e5ea; border-color: rgba(255,255,255,0.12); }
.theme-dark .form-group input[readonly] { background: rgba(44,44,46,0.9); color:#a1a1a6; border-color: rgba(255,255,255,0.06); }
.theme-dark .form-hint { color:#a1a1a6; }
.theme-dark .notification-info { background:#0a84ff; }
.theme-dark .notification-success { background:#30d158; }
.theme-dark .notification-warning { background:#ffd60a; color:#111; }
.theme-dark .notification-error { background:#ff3b30; }
.theme-dark .logo-badge { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.12); color:#e5e5ea; }
.theme-dark .logo-badge.sun { background: rgba(255,204,0,0.18); border-color: rgba(255,204,0,0.35); color:#ffd60a; }
.theme-dark .logo-badge.moon { background: rgba(10,132,255,0.18); border-color: rgba(10,132,255,0.35); color:#0a84ff; }

/* --- New Shell Layout (Screenshot Style) --- */
.admin-shell{
    min-height: 100vh;
    display: grid;
    grid-template-columns: 260px 1fr;
    background: var(--bg);
}

.admin-sidebar{
    background: linear-gradient(180deg, var(--sidebarBg) 0%, var(--sidebarBg2) 100%);
    color: var(--sidebarText);
    padding: 18px 16px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.sidebar-brand{
    display:flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 12px 10px 6px 10px;
}

.brand-mark{
    width: 210px;
    height: 68px;
    border-radius: 0;
    background: transparent;
    border: 0;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow: none;
    overflow: hidden;
}
.brand-mark img{
    width: 100%;
    height: 100%;
    padding: 0;
    object-fit: contain;
    display:block;
    filter: none;
}

.brand-text{ width: 100%; text-align: center; }
.brand-title{
    color: #fff;
    font-weight: 900;
    font-size: 18px;
    letter-spacing: -0.4px;
    line-height: 1.1;
}
.brand-subtitle{
    font-size: 14px;
    color: rgba(255,255,255,0.62);
    margin-top: 4px;
    font-weight: 800;
}

.sidebar-nav{
    display:flex;
    flex-direction: column;
    gap: 6px;
    padding: 0 8px;
}

.sidebar-item{
    background: transparent;
    border: 1px solid transparent;
    color: var(--sidebarText);
    padding: 12px 12px;
    border-radius: 12px;
    text-align: left;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all .15s ease;
}
.sidebar-item:hover{
    background: rgba(255,255,255,0.06);
    color: rgba(255,255,255,0.86);
}
.sidebar-item.active{
    background: var(--sidebarActive);
    border-color: rgba(37,99,235,0.22);
    color: var(--sidebarTextActive);
}
.sidebar-item-small{
    font-size: 13px;
    font-weight: 600;
    padding: 10px 12px;
    opacity: 0.92;
}
.sidebar-divider{
    height: 1px;
    background: rgba(255,255,255,0.08);
    margin: 8px 8px;
}
.sidebar-footer{
    margin-top: auto;
    padding: 10px 8px 0 8px;
}
.user-pill{
    display:flex;
    align-items:center;
    gap:10px;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.10);
    border-radius: 14px;
    padding: 10px 10px;
}
.user-avatar{
    width: 34px;
    height: 34px;
    border-radius: 12px;
    background: rgba(255,255,255,0.10);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight: 800;
    color: rgba(255,255,255,0.92);
    font-size: 12px;
}
.user-name{
    color: rgba(255,255,255,0.92);
    font-weight: 700;
    font-size: 13px;
}
.user-role{
    color: rgba(255,255,255,0.58);
    font-size: 12px;
    margin-top: 1px;
}
.logout-btn{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin-top: 12px;
    padding: 10px 14px;
    background: rgba(255,59,48,0.12);
    border: 1px solid rgba(255,59,48,0.25);
    border-radius: 10px;
    color: #ff6b6b;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}
.logout-btn:hover{
    background: rgba(255,59,48,0.22);
    border-color: rgba(255,59,48,0.4);
}
.logout-btn svg{
    flex-shrink: 0;
}

.admin-content{
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.admin-topbar{
    position: sticky;
    top: 0;
    z-index: 50;
    background: var(--panel);
    backdrop-filter: blur(18px) saturate(170%);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    border-bottom: 1px solid var(--border);
    padding: 14px 22px;
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 16px;
}
.topbar-left{
    display:flex;
    align-items:center;
    gap: 18px;
    min-width: 0;
}
.topbar-breadcrumb{
    font-weight: 800;
    color: var(--text);
    letter-spacing: -0.3px;
    white-space: nowrap;
}
.topbar-metrics{
    display:flex;
    align-items:center;
    gap: 14px;
    color: var(--muted);
    flex-wrap: wrap;
}
.metric{
    display:flex;
    align-items: baseline;
    gap: 6px;
    white-space: nowrap;
}
.metric-label{
    font-size: 12px;
    font-weight: 700;
    color: var(--muted);
}
.metric-value{
    font-size: 13px;
    font-weight: 800;
    color: var(--text);
}
.metric-negative{
    color: #ef4444;
}
.topbar-right{
    display:flex;
    align-items:center;
    gap: 10px;
}
.icon-btn{
    width: 40px;
    height: 40px;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: var(--panelSolid);
    color: var(--text);
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transition: all .15s ease;
    box-shadow: 0 6px 18px rgba(15,23,42,0.05);
}
.icon-btn:hover{
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(15,23,42,0.08);
}

/* Header */
/* (Legacy header/nav kept for older markup; new layout uses sidebar/topbar) */

.admin-logo-container {
    display: flex;
    align-items: center;
    gap: 16px;
}

.admin-logo-single-line {
    font-size: 18px;
    font-weight: 600;
    color: #1d1d1f;
    letter-spacing: -0.2px;
    margin: 0;
    white-space: nowrap;
}

.admin-subtitle {
    font-size: 14px;
    font-weight: 500;
    color: #6e6e73;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.header-actions {
    display: flex;
    gap: 12px;
}

/* Technician Statistics */
.technician-stats-section {
    margin-bottom: 32px;
}

.section-subheader {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.section-subheader h3 {
    font-size: 18px;
    font-weight: 600;
    color: #1d1d1f;
    margin: 0;
}

.stats-controls {
    display: flex;
    gap: 12px;
}

.stats-controls select {
    padding: 8px 12px;
    border: 0.5px solid rgba(0, 0, 0, 0.2);
    border-radius: 6px;
    font-size: 13px;
    background: rgba(255, 255, 255, 0.8);
    color: #1d1d1f;
}

.technician-stats-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

.tech-stat-card {
    background: var(--panel);
    backdrop-filter: blur(18px) saturate(170%);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    padding: 20px;
    border-radius: 12px;
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.tech-stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.tech-stat-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 12px;
}

.tech-stat-name {
    font-size: 16px;
    font-weight: 600;
    color: #1d1d1f;
}

.tech-stat-total {
    font-size: 18px;
    font-weight: 700;
    color: #007aff;
}

.tech-stat-details {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    font-size: 13px;
}

.stat-detail {
    display: flex;
    justify-content: space-between;
    padding: 6px 8px;
    background: rgba(248, 249, 250, 0.8);
    border-radius: 6px;
}

.stat-detail-label {
    color: #6e6e73;
    font-weight: 500;
}

.stat-detail-value {
    color: #1d1d1f;
    font-weight: 600;
}

/* Navigation */
.admin-nav {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    padding: 0 40px;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.1);
    display: flex;
    gap: 0;
}

.nav-btn {
    background: none;
    border: none;
    padding: 16px 20px;
    font-size: 15px;
    font-weight: 500;
    color: #6e6e73;
    cursor: pointer;
    border-bottom: 3px solid transparent;
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    letter-spacing: -0.1px;
}

.nav-btn:hover {
    color: #007aff;
    background: rgba(0, 122, 255, 0.04);
}

.nav-btn.active {
    color: #007aff;
    border-bottom-color: #007aff;
    background: rgba(0, 122, 255, 0.04);
}

/* Main Content */
.admin-main {
    flex: 1;
    padding: 26px 28px 40px 28px;
    max-width: 1200px;
    margin: 0 auto;
    width: 100%;
}

.admin-section {
    display: none;
}

.admin-section.active {
    display: block;
}

.section-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24px;
}

.section-header h2 {
    font-size: 24px;
    font-weight: 900;
    letter-spacing: -0.6px;
    color: var(--text);
}

/* Abrechnung (Billing) embed */
.billing-embed{
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    overflow: hidden;
}
.billing-embed > iframe{
    width: 100%;
    border: 0;
    display: block;
    /* height is set dynamically by JS to avoid nested scroll */
    min-height: 640px;
}

/* Buttons */
.btn {
    padding: 10px 20px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    letter-spacing: -0.1px;
}

.btn-primary { background:#111; color:#fff; box-shadow:none; }
.btn-primary:hover { background:#000; transform: translateY(-1px); box-shadow:none; }

.btn-secondary { background:#fff; color:#111; border:1px solid #dcdcdc; }
.btn-secondary:hover { background:#f7f7f7; border-color:#bdbdbd; transform: translateY(-1px); }

.btn-success { background:#0a66ff; color:#fff; border:1px solid #0a66ff; box-shadow:none; }
.btn-success:hover { background:#0957db; border-color:#0957db; transform: translateY(-1px); }

.btn-danger { background:#fff; color:#111; border:1px solid #dcdcdc; }
.btn-danger:hover { background:#f7f7f7; border-color:#bdbdbd; transform: translateY(-1px); }

.btn-sm {
    padding: 6px 12px;
    font-size: 12px;
    border-radius: 6px;
}

/* Filters */
.filters {
    display: flex;
    gap: 16px;
    margin-bottom: 24px;
    padding: 20px;
    background: var(--panel);
    backdrop-filter: blur(18px) saturate(170%);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    border-radius: 12px;
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
}

.filters input,
.filters select {
    padding: 10px 14px;
    border: 0.5px solid rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    font-size: 14px;
    background: rgba(255, 255, 255, 0.8);
    color: #1d1d1f;
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.filters input:focus,
.filters select:focus {
    outline: none;
    border-color: #007aff;
    box-shadow: 0 0 0 3px rgba(0, 122, 255, 0.1);
    background: white;
}

/* Tables */
.table-container {
    background: var(--panel);
    backdrop-filter: blur(18px) saturate(170%);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
}

.admin-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.admin-table th {
    background: rgba(248, 249, 250, 0.8);
    padding: 14px 18px;
    text-align: left;
    font-weight: 600;
    font-size: 12px;
    color: #6e6e73;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.1);
    position: sticky;
    top: 0;
    z-index: 10;
}

.admin-table td {
    padding: 14px 18px;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.05);
    font-size: 14px;
    vertical-align: middle;
    background: rgba(255, 255, 255, 0.6);
}

.admin-table tbody tr {
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.admin-table tbody tr:hover {
    background: rgba(0, 122, 255, 0.04);
    transform: translateY(-1px);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
}

.admin-table tbody tr:last-child td {
    border-bottom: none;
}

/* Status badges */
.status-badge {
    padding: 4px 10px;
    border-radius: 12px;
    font-size: 12px;
    font-weight: 600;
    text-transform: capitalize;
}

.status-in-arbeit {
    background: rgba(255, 149, 0, 0.1);
    color: #ff9500;
}

.status-neu {
    background: rgba(0, 122, 255, 0.1);
    color: #007aff;
}

.status-fertig {
    background: rgba(52, 199, 89, 0.1);
    color: #34c759;
}

.status-versandt {
    background: rgba(142, 142, 147, 0.1);
    color: #8e8e93;
}

/* Units Badge */
.units-badge {
    background: rgba(0, 122, 255, 0.1);
    color: #007aff;
    padding: 6px 10px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 600;
    min-width: 32px;
    text-align: center;
    display: inline-block;
}

/* Archive Statistics */
.archive-stats {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    margin-bottom: 32px;
}

.stat-card {
    background: var(--panel);
    backdrop-filter: blur(18px) saturate(170%);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    padding: 20px;
    border-radius: 12px;
    border: 1px solid var(--border);
    text-align: center;
    box-shadow: var(--shadow);
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.stat-card h4 {
    font-size: 12px;
    font-weight: 600;
    color: #6e6e73;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.stat-card span {
    font-size: 24px;
    font-weight: 700;
    color: #1d1d1f;
    letter-spacing: -0.5px;
}

/* Technician Grid */
.tech-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
}

/* Dentists */
.dentist-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 24px;
}

.dentist-card {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    padding: 24px;
    border-radius: 12px;
    border: 0.5px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.dentist-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.dentist-card h3 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 12px;
    color: #1d1d1f;
}

.dentist-meta {
    font-size: 13px;
    color: #6e6e73;
    margin-bottom: 12px;
}

.dentist-actions {
    display: flex;
    gap: 8px;
}

.tech-card {
    background: var(--panel);
    backdrop-filter: blur(18px) saturate(170%);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    padding: 24px;
    border-radius: 12px;
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.tech-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.tech-card h3 {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 16px;
    color: #1d1d1f;
    letter-spacing: -0.2px;
}

.tech-stats {
    display: flex;
    justify-content: space-between;
    margin-bottom: 12px;
    font-size: 13px;
    color: #6e6e73;
    font-weight: 500;
}

.tech-progress {
    height: 6px;
    background: rgba(142, 142, 147, 0.2);
    border-radius: 3px;
    overflow: hidden;
    margin-bottom: 16px;
}

.tech-progress-fill {
    height: 100%;
    transition: width 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.progress-low {
    background: linear-gradient(90deg, #34c759, #30d158);
}

.progress-medium {
    background: linear-gradient(90deg, #ff9500, #ffb340);
}

.progress-high {
    background: linear-gradient(90deg, #ff9500, #ff8c00);
}

.progress-critical {
    background: linear-gradient(90deg, #ff3b30, #ff6b60);
}

.tech-actions {
    display: flex;
    gap: 8px;
}

/* Notes */
.notes-admin-container {
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    border-radius: 12px;
    padding: 24px;
    border: 0.5px solid rgba(0, 0, 0, 0.1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.notes-admin-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.note-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 16px;
    background: rgba(248, 249, 250, 0.8);
    border-radius: 10px;
    border: 0.5px solid rgba(0, 0, 0, 0.05);
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.note-item:hover {
    background: rgba(0, 122, 255, 0.04);
    transform: translateX(4px);
}

.note-text {
    flex: 1;
    font-size: 14px;
    color: #1d1d1f;
    font-weight: 400;
}

.note-actions {
    display: flex;
    gap: 8px;
}

/* Settings */
.settings-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 24px;
}

.setting-card {
    background: var(--panel);
    backdrop-filter: blur(18px) saturate(170%);
    -webkit-backdrop-filter: blur(18px) saturate(170%);
    padding: 24px;
    border-radius: 12px;
    border: 1px solid var(--border);
    box-shadow: var(--shadow);
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.setting-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.setting-card h3 {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 16px;
    color: #1d1d1f;
    letter-spacing: -0.1px;
}

/* Switch */
.switch {
    position: relative;
    display: inline-block;
    width: 52px;
    height: 32px;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(142, 142, 147, 0.3);
    transition: 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border-radius: 32px;
}

.slider:before {
    position: absolute;
    content: "";
    height: 28px;
    width: 28px;
    left: 2px;
    bottom: 2px;
    background-color: white;
    transition: 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

input:checked + .slider {
    background-color: #34c759;
}

input:checked + .slider:before {
    transform: translateX(20px);
}

/* Settings (Screenshot Design) */
.settings-shell{
    display:grid;
    grid-template-columns: 320px 1fr;
    gap: 18px;
    align-items: start;
}
.settings-nav{
    background: transparent;
    padding: 6px 6px;
}
.settings-nav-title{
    font-size: 24px;
    font-weight: 950;
    letter-spacing: -0.6px;
    color: var(--text);
    padding: 8px 10px 14px 10px;
}
.settings-nav-items{
    display:flex;
    flex-direction: column;
    gap: 10px;
    padding: 0 6px;
}
.settings-nav-item{
    width: 100%;
    display:flex;
    align-items:center;
    gap: 10px;
    background: rgba(255,255,255,0.65);
    border: 1px solid rgba(148,163,184,0.18);
    border-radius: 14px;
    padding: 14px 14px;
    color: rgba(11,18,32,0.78);
    font-weight: 850;
    cursor:pointer;
    transition: all .15s ease;
    text-align:left;
}
.settings-nav-item:hover{
    transform: translateY(-1px);
    box-shadow: 0 10px 28px rgba(15,23,42,0.08);
    border-color: rgba(37,99,235,0.22);
}
.settings-nav-item.active{
    background: rgba(37,99,235,0.10);
    border-color: rgba(37,99,235,0.28);
    color: var(--primary);
}
.settings-ico{
    width: 34px;
    height: 34px;
    border-radius: 12px;
    background: rgba(148,163,184,0.14);
    display:flex;
    align-items:center;
    justify-content:center;
    color: rgba(11,18,32,0.62);
}
.settings-nav-item.active .settings-ico{
    background: rgba(37,99,235,0.14);
    color: var(--primary);
}

.settings-panel{
    background: var(--panelSolid);
    border: 1px solid rgba(148,163,184,0.16);
    border-radius: 20px;
    box-shadow: 0 12px 34px rgba(15,23,42,0.06);
    overflow:hidden;
}
.theme-dark .settings-panel{
    background: rgba(17,24,39,0.72);
    border-color: rgba(255,255,255,0.08);
    box-shadow: none;
}
.settings-panel-head{
    padding: 22px 22px 16px 22px;
    border-bottom: 1px solid rgba(148,163,184,0.14);
}
.settings-panel-title{
    font-size: 20px;
    font-weight: 950;
    letter-spacing: -0.4px;
    color: var(--text);
}
.settings-panel-subtitle{
    margin-top: 6px;
    color: var(--muted);
    font-weight: 750;
    font-size: 13px;
}
.settings-pane{ display:none; }
.settings-pane.active{ display:block; }
.settings-block{
    padding: 18px 22px 22px 22px;
}
.settings-divider{
    height: 1px;
    background: rgba(148,163,184,0.14);
    margin: 14px 0;
}
.settings-block-title{
    font-weight: 950;
    color: var(--text);
    letter-spacing: -0.2px;
    margin-bottom: 10px;
}
/* Settings Notes List */
.settings-notes-list{
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-height: 400px;
    overflow-y: auto;
    padding: 4px;
}
.settings-note-item{
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    background: var(--panelSolid);
    border: 1px solid var(--border);
    border-radius: 12px;
    transition: all 0.15s ease;
}
.settings-note-item:hover{
    border-color: rgba(37,99,235,0.3);
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}
.settings-note-content{
    flex: 1;
    min-width: 0;
}
.settings-note-text{
    font-size: 14px;
    font-weight: 600;
    color: var(--text);
    line-height: 1.5;
    word-wrap: break-word;
    white-space: pre-wrap;
}
.settings-note-meta{
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 8px;
    font-size: 12px;
    color: var(--muted);
}
.settings-note-date{
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.settings-note-badge{
    display: inline-flex;
    align-items: center;
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 700;
}
.settings-note-badge.active{
    background: rgba(52,199,89,0.15);
    color: #16a34a;
}
.settings-note-badge.completed{
    background: rgba(148,163,184,0.15);
    color: #64748b;
}
.settings-notes-archive .settings-note-item{
    opacity: 0.75;
}
.settings-notes-archive .settings-note-text{
    text-decoration: line-through;
    color: var(--muted);
}
.settings-notes-empty{
    padding: 24px;
    text-align: center;
    color: var(--muted);
    font-size: 14px;
    font-style: italic;
}
.settings-two-col{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}
.settings-row{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}
.settings-inline{
    display:flex;
    align-items:center;
    gap: 10px;
    flex-wrap: wrap;
}
.settings-label{
    color: var(--muted);
    font-weight: 900;
    font-size: 12px;
    letter-spacing: 0.7px;
    text-transform: uppercase;
}
.settings-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(37,99,235,0.10);
    border: 1px solid rgba(37,99,235,0.18);
    font-weight: 950;
    color: var(--text);
    min-width: 44px;
}
.settings-card2{
    border: 1px dashed rgba(148,163,184,0.28);
    border-radius: 18px;
    padding: 16px;
    background: rgba(255,255,255,0.6);
}
.theme-dark .settings-card2{ background: rgba(17,24,39,0.55); border-color: rgba(255,255,255,0.12); }
.settings-card2-dark{
    background: radial-gradient(900px 420px at 10% 0%, rgba(37,99,235,0.18), rgba(15,23,42,0.98)),
                linear-gradient(180deg, rgba(15,23,42,0.98), rgba(2,6,23,0.98));
    color: #fff;
    border: 1px dashed rgba(255,255,255,0.18);
}
.settings-card2-title{
    font-weight: 950;
    letter-spacing: -0.2px;
    margin-bottom: 6px;
}
.settings-card2-hint{
    color: var(--muted);
    font-size: 12px;
    font-weight: 750;
}
.settings-card2-dark .settings-card2-hint{ color: rgba(226,232,240,0.72); }
.settings-card2-body{
    margin-top: 12px;
    display:flex;
    gap: 10px;
    align-items:center;
    flex-wrap: wrap;
}
.settings-file{
    background: rgba(255,255,255,0.78);
    border: 1px solid rgba(148,163,184,0.22);
    border-radius: 12px;
    padding: 10px 12px;
}
.theme-dark .settings-file{
    background: rgba(28,28,30,0.9);
    border-color: rgba(255,255,255,0.12);
    color: var(--text);
}
.settings-card3{
    background: rgba(255,255,255,0.70);
    border: 1px solid rgba(148,163,184,0.16);
    border-radius: 18px;
    padding: 16px;
}
.theme-dark .settings-card3{ background: rgba(17,24,39,0.55); border-color: rgba(255,255,255,0.08); }
.settings-card3-title{
    font-weight: 950;
    letter-spacing: -0.2px;
}
.settings-card3-hint{
    margin-top: 6px;
    color: var(--muted);
    font-size: 12px;
    font-weight: 750;
}
.settings-card3-row{
    margin-top: 12px;
    display:flex;
    gap: 10px;
    align-items:center;
    flex-wrap: wrap;
}
.settings-money-input{
    display:flex;
    align-items:center;
    border: 1px solid rgba(148,163,184,0.20);
    border-radius: 14px;
    overflow:hidden;
    background: rgba(255,255,255,0.85);
}
.theme-dark .settings-money-input{ background: rgba(28,28,30,0.9); border-color: rgba(255,255,255,0.12); }
.settings-money-prefix{
    padding: 10px 12px;
    color: var(--muted);
    font-weight: 950;
}
.settings-money-input input{
    border: none;
    background: transparent;
    padding: 10px 12px;
    font-weight: 950;
    min-width: 140px;
    color: var(--text);
}
.settings-money-input input:focus{ outline:none; }
.settings-stack{ display:flex; flex-direction: column; gap: 14px; }
.settings-ship-card{
    background: rgba(255,255,255,0.74);
    border: 1px solid rgba(148,163,184,0.16);
    border-radius: 18px;
    padding: 16px;
}
.theme-dark .settings-ship-card{ background: rgba(17,24,39,0.55); border-color: rgba(255,255,255,0.08); }
.settings-ship-card-top{
    display:flex;
    align-items:center;
    gap: 12px;
    margin-bottom: 10px;
}
.settings-ship-icon{
    width: 42px;
    height: 42px;
    border-radius: 14px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size: 18px;
}
.settings-ship-icon-blue{ background: rgba(37,99,235,0.12); }
.settings-ship-icon-purple{ background: rgba(168,85,247,0.12); }
.settings-ship-icon-amber{ background: rgba(245,158,11,0.14); }
.settings-ship-title{ font-weight: 950; letter-spacing: -0.2px; }
.settings-ship-sub{ color: var(--muted); font-size: 12px; font-weight: 750; margin-top: 2px; }
.settings-ship-fieldlabel{
    color: rgba(148,163,184,0.95);
    font-weight: 950;
    font-size: 11px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.settings-money-wide{
    display:flex;
    align-items:center;
    border: 1px solid rgba(148,163,184,0.20);
    border-radius: 14px;
    overflow:hidden;
    background: rgba(20,20,20,0.06);
}
.theme-dark .settings-money-wide{ background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.12); }
.settings-money-wide input{
    flex: 1 1 auto;
    border:none;
    background: transparent;
    padding: 12px 12px;
    font-weight: 950;
    font-size: 16px;
    color: var(--text);
}
.settings-money-wide input:focus{ outline:none; }
.settings-actions{
    display:flex;
    justify-content:flex-end;
    padding-top: 8px;
}
.btn-big{
    height: 44px !important;
    padding: 0 18px !important;
    border-radius: 14px !important;
    font-weight: 950 !important;
}
.settings-line-card{
    background: rgba(255,255,255,0.74);
    border: 1px solid rgba(148,163,184,0.16);
    border-radius: 18px;
    padding: 16px;
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 12px;
}
.theme-dark .settings-line-card{ background: rgba(17,24,39,0.55); border-color: rgba(255,255,255,0.08); }
.settings-line-title{ font-weight: 950; letter-spacing: -0.2px; }
.settings-line-sub{ margin-top: 4px; color: var(--muted); font-weight: 750; font-size: 12px; }

@media (max-width: 1020px){
    .settings-shell{ grid-template-columns: 1fr; }
    .settings-two-col{ grid-template-columns: 1fr; }
}

/* Modals */
.modal {
    display: none;
    position: fixed;
    z-index: 1000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.modal.show {
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-content {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
    border-radius: 16px;
    max-width: 600px;
    width: 90%;
    max-height: 90vh;
    overflow-y: auto;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
    animation: modalSlideIn 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border: 0.5px solid rgba(255, 255, 255, 0.2);
}

@keyframes modalSlideIn {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 24px 32px;
    border-bottom: 0.5px solid rgba(0, 0, 0, 0.1);
}

.modal-header h3 {
    font-size: 18px;
    font-weight: 600;
    color: #1d1d1f;
    letter-spacing: -0.2px;
}

.close {
    font-size: 24px;
    font-weight: 300;
    color: #6e6e73;
    cursor: pointer;
    line-height: 1;
    transition: color 0.2s ease;
}

.close:hover {
    color: #1d1d1f;
}

/* Forms */
.form-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 20px;
    padding: 32px;
}

.form-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.form-group.full-width {
    grid-column: 1 / -1;
}

.form-group label {
    font-size: 13px;
    font-weight: 600;
    color: #1d1d1f;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.form-group input,
.form-group select,
.form-group textarea {
    padding: 12px 16px;
    border: 0.5px solid rgba(0, 0, 0, 0.2);
    border-radius: 8px;
    font-size: 14px;
    background: rgba(255, 255, 255, 0.8);
    color: #1d1d1f;
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: #007aff;
    box-shadow: 0 0 0 3px rgba(0, 122, 255, 0.1);
    background: white;
}

.form-group input[readonly] {
    background: rgba(248, 249, 250, 0.8);
    color: #6e6e73;
    cursor: not-allowed;
    border-color: rgba(0, 0, 0, 0.1);
}

.form-hint {
    font-size: 11px;
    color: #6e6e73;
    margin-top: 4px;
    font-style: italic;
}

.modal-actions {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    padding: 24px 32px;
    border-top: 0.5px solid rgba(0, 0, 0, 0.1);
    background: rgba(248, 249, 250, 0.8);
    backdrop-filter: blur(20px) saturate(180%);
    -webkit-backdrop-filter: blur(20px) saturate(180%);
}

/* --- Customers / Dentists UI (Screenshot Style) --- */
.km-head{
    display:flex;
    align-items:flex-start;
    justify-content: space-between;
        gap: 16px;
    margin-bottom: 16px;
}
.km-title{
    font-size: 24px;
    font-weight: 900;
    letter-spacing: -0.6px;
    color: var(--text);
    margin: 0;
}
.km-subtitle{
    margin-top: 4px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 600;
}
.km-actions{
    display:flex;
    align-items:center;
    gap: 10px;
    flex-wrap: wrap;
}
.km-toolbar{
    display:flex;
    align-items:center;
    gap: 12px;
    padding: 14px 14px;
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 16px;
    box-shadow: var(--shadow);
    margin-bottom: 18px;
}
.km-search{
    flex: 1;
    min-width: 220px;
    display:flex;
    align-items:center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 14px;
    border: 1px solid var(--border);
    background: var(--panelSolid);
    color: var(--muted);
}
.km-search input{
    border: none;
    outline: none;
    background: transparent;
    width: 100%;
    font-size: 14px;
    color: var(--text);
    font-weight: 600;
}
.km-search input::placeholder{
    color: rgba(11,18,32,0.40);
    font-weight: 600;
}
.theme-dark .km-search input::placeholder{
    color: rgba(229,231,235,0.40);
}
.km-view-toggle{
    display:flex;
    align-items:center;
    gap: 6px;
    padding: 6px;
    border-radius: 14px;
    border: 1px solid var(--border);
    background: var(--panelSolid);
}
.toggle-btn{
    border: none;
    background: transparent;
    padding: 8px 12px;
    border-radius: 12px;
    font-weight: 800;
    font-size: 13px;
    cursor:pointer;
    color: var(--muted);
    transition: all .12s ease;
}
.toggle-btn.active{
    background: rgba(37,99,235,0.12);
    color: var(--text);
}
.theme-dark .toggle-btn.active{
    background: rgba(10,132,255,0.18);
}

.dentist-cards{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 18px;
}
.customer-card{
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    padding: 18px;
}
.customer-top{
    display:flex;
    align-items:flex-start;
    justify-content: space-between;
    gap: 12px;
}
.customer-ident{
    display:flex;
    align-items:center;
    gap: 12px;
    min-width: 0;
}
.cust-avatar{
    width: 38px;
    height: 38px;
    border-radius: 999px;
    background: rgba(148,163,184,0.22);
    border: 1px solid rgba(148,163,184,0.22);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight: 900;
    color: var(--text);
    flex: 0 0 auto;
}
.cust-name{
    font-weight: 900;
    letter-spacing: -0.3px;
    color: var(--text);
    font-size: 16px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.cust-city{
    color: var(--muted);
    font-size: 13px;
    font-weight: 700;
    margin-top: 2px;
}
.cust-badge{
    background: rgba(168,85,247,0.10);
    color: #7c3aed;
    border: 1px solid rgba(168,85,247,0.18);
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 12px;
    white-space: nowrap;
}
.theme-dark .cust-badge{
    background: rgba(168,85,247,0.16);
    border-color: rgba(168,85,247,0.22);
    color: #c4b5fd;
}
.customer-stats{
    margin-top: 14px;
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}
.stat-box{
    background: rgba(148,163,184,0.10);
    border: 1px solid rgba(148,163,184,0.14);
    border-radius: 14px;
    padding: 12px;
}
.stat-label{
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.6px;
}
.stat-value{
    margin-top: 6px;
    font-size: 20px;
    font-weight: 900;
    color: var(--text);
    letter-spacing: -0.4px;
}
.stat-value.kulanz.good{ color: #10b981; }
.stat-value.kulanz.warn{ color: #f59e0b; }
.stat-value.kulanz.bad{ color: #ef4444; }
.customer-address{
    margin-top: 12px;
    display:flex;
    align-items:center;
    gap: 10px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 700;
}
.customer-actions{
    margin-top: 14px;
    display:flex;
    align-items:center;
    gap: 10px;
}
.btn-details{
    flex: 1;
    height: 40px;
    border-radius: 12px;
    border: 1px solid rgba(15,23,42,0.14);
    background: #0b1220;
    color: #fff;
    font-weight: 900;
    cursor:pointer;
}
.theme-dark .btn-details{
    background: rgba(229,231,235,0.92);
    color: #0b1220;
    border-color: rgba(229,231,235,0.22);
}
.btn-mini{
    width: 40px;
    height: 40px;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: var(--panelSolid);
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    color: var(--muted);
}

.dentist-list{
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    overflow: hidden;
}
.customer-table{
    width: 100%;
    border-collapse: collapse;
}
.customer-table thead th{
    background: rgba(148,163,184,0.10);
    color: rgba(11,18,32,0.55);
    font-weight: 900;
    font-size: 11px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    padding: 14px 16px;
}
.customer-table tbody td{
    border-top: 1px solid rgba(148,163,184,0.14);
    padding: 14px 16px;
    vertical-align: middle;
}
.cust-row-main{
    display:flex;
    align-items:center;
    gap: 12px;
    min-width: 0;
}
.cust-row-title{
    font-weight: 900;
    color: var(--text);
}
.cust-row-sub{
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
    margin-top: 2px;
}
.stress-pill{
    display:inline-flex;
    align-items:center;
    gap: 8px;
    padding: 6px 10px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 12px;
    background: rgba(148,163,184,0.14);
    border: 1px solid rgba(148,163,184,0.22);
    color: var(--text);
}
.stress-pill.stress-good{ background: rgba(16,185,129,0.12); border-color: rgba(16,185,129,0.22); color: #059669; }
.stress-pill.stress-warn{ background: rgba(245,158,11,0.14); border-color: rgba(245,158,11,0.22); color: #d97706; }
.stress-pill.stress-bad{ background: rgba(239,68,68,0.12); border-color: rgba(239,68,68,0.22); color: #dc2626; }
.stress-pill.stress-neutral{ background: rgba(148,163,184,0.14); border-color: rgba(148,163,184,0.22); color: var(--muted); }

.cust-badge.cust-badge-stress{
    font-weight: 950;
}
.cust-badge.cust-badge-stress.stress-neutral{ background: rgba(148,163,184,0.14); border-color: rgba(148,163,184,0.22); color: var(--muted); }
.cust-badge.cust-badge-stress.stress-good{ background: rgba(16,185,129,0.12); border-color: rgba(16,185,129,0.22); color: #059669; }
.cust-badge.cust-badge-stress.stress-warn{ background: rgba(245,158,11,0.14); border-color: rgba(245,158,11,0.22); color: #d97706; }
.cust-badge.cust-badge-stress.stress-bad{ background: rgba(239,68,68,0.12); border-color: rgba(239,68,68,0.22); color: #dc2626; }
.hist-box{
    font-weight: 900;
    color: var(--text);
}
.hist-sub{
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
    margin-top: 2px;
}
.kulanz-bar{
    height: 4px;
    background: rgba(148,163,184,0.22);
    border-radius: 999px;
    overflow:hidden;
    margin-top: 6px;
}
.kulanz-bar > div{
    height: 100%;
    border-radius: 999px;
}
.kulanz-green{ background: #10b981; }
.kulanz-orange{ background: #f59e0b; }
.kulanz-red{ background: #ef4444; }
.action-icons{
    display:flex;
    align-items:center;
    gap: 10px;
    justify-content: flex-end;
}
.action-icons button{
    width: 36px;
    height: 36px;
    border-radius: 12px;
    border: 1px solid var(--border);
    background: var(--panelSolid);
    cursor:pointer;
    color: var(--muted);
}

/* Popover (Aktionen) */
.action-popover{
    position: absolute;
    width: 220px;
    background: var(--panelSolid);
    border: 1px solid var(--border);
    border-radius: 14px;
    box-shadow: 0 18px 40px rgba(15,23,42,0.14);
    padding: 8px;
    z-index: 3000;
}
.theme-dark .action-popover{
    box-shadow: 0 18px 40px rgba(0,0,0,0.45);
}
.popover-item{
    width: 100%;
    border: none;
    background: transparent;
    padding: 10px 10px;
    border-radius: 12px;
    font-weight: 800;
    cursor: pointer;
    text-align: left;
    color: var(--text);
    transition: background .12s ease;
}
.popover-item:hover{
    background: rgba(148,163,184,0.14);
}
.popover-item.danger{
    color: #ef4444;
}
.popover-item.danger:hover{
    background: rgba(239,68,68,0.12);
}

/* Overview */
.overview-grid{
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}
.overview-card{
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    padding: 16px;
}
.overview-card .kpi-label{
    color: var(--muted);
    font-weight: 900;
    font-size: 11px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}
.overview-card .kpi-value{
    margin-top: 8px;
    font-size: 26px;
    font-weight: 900;
    color: var(--text);
    letter-spacing: -0.6px;
}
.overview-card .kpi-sub{
    margin-top: 6px;
    color: var(--muted);
    font-size: 13px;
    font-weight: 700;
}
.overview-split{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-top: 14px;
}
.overview-panel{
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    padding: 16px;
    min-width: 0;
}
.overview-panel-head{
    display:flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}
.overview-panel-head h3{
    margin: 0;
    font-size: 15px;
    font-weight: 900;
    color: var(--text);
    letter-spacing: -0.2px;
}
.overview-hint{
    color: var(--muted);
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}
.overview-table{
    width:100%;
    border-collapse: collapse;
}
.overview-table th{
    text-align:left;
    color: var(--muted);
    font-size: 11px;
    font-weight: 900;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    padding: 10px 10px;
}
.overview-table td{
    border-top: 1px solid rgba(148,163,184,0.14);
    padding: 10px 10px;
    font-weight: 800;
    color: var(--text);
}
.overview-badge{
    display:inline-flex;
    align-items:center;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--chipBg);
    border: 1px solid rgba(37,99,235,0.18);
    color: var(--text);
    font-weight: 900;
    font-size: 12px;
}

@media (max-width: 980px){
    .overview-split{ grid-template-columns: 1fr; }
}

/* Versand & Logistik (Screenshot-Stil) */
.ship-head{
    display:flex;
    align-items:flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}
.ship-title{
    margin: 0;
    font-size: 24px;
    font-weight: 900;
    letter-spacing: -0.6px;
    color: var(--text);
}
.ship-subtitle{
    margin-top: 6px;
    color: var(--muted);
    font-weight: 750;
    font-size: 13px;
}
.ship-head-right{
    display:flex;
    align-items:center;
    gap: 10px;
    background: rgba(148,163,184,0.08);
    border: 1px solid rgba(148,163,184,0.18);
    padding: 10px 12px;
    border-radius: 14px;
}
.ship-year-label{
    color: var(--muted);
    font-weight: 950;
    font-size: 11px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}
.ship-year-select{
    appearance: none;
    background: var(--panel);
    color: var(--text);
    border: 1px solid rgba(148,163,184,0.22);
    border-radius: 12px;
    padding: 10px 12px;
    font-weight: 900;
    cursor: pointer;
    min-width: 120px;
}
.ship-year-select:focus{
    outline: none;
    box-shadow: 0 0 0 3px rgba(37,99,235,0.22);
    border-color: rgba(37,99,235,0.5);
}
.ship-kpi-grid{
    display:grid;
    grid-template-columns: 1.1fr 1fr 0.9fr;
    gap: 14px;
    margin-bottom: 18px;
}
.ship-card{
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    padding: 18px;
    min-width: 0;
}
.ship-card-label{
    color: rgba(148,163,184,0.95);
    font-weight: 950;
    font-size: 11px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}
.ship-card-value{
    margin-top: 10px;
    font-size: 34px;
    font-weight: 950;
    letter-spacing: -0.8px;
    color: var(--text);
}
.ship-card-meta{
    margin-top: 8px;
    color: var(--muted);
    font-weight: 750;
    font-size: 12px;
}
.ship-dist{
    margin-top: 10px;
}
.ship-dist-row{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 6px;
}
.ship-dist-name{
    font-weight: 900;
    font-size: 12px;
}
.ship-dist-name-auto{ color: #2563eb; }
.ship-dist-name-courier{ color: #a855f7; }
.ship-dist-name-post{ color: #f59e0b; }
.ship-dist-pct{
    color: var(--muted);
    font-weight: 900;
    font-size: 12px;
}
.ship-bar{
    height: 8px;
    background: rgba(148,163,184,0.16);
    border-radius: 999px;
    overflow:hidden;
    border: 1px solid rgba(148,163,184,0.16);
}
.ship-bar-fill{
    height: 100%;
    border-radius: 999px;
}
.ship-bar-fill-auto{ background: linear-gradient(90deg, rgba(37,99,235,1), rgba(59,130,246,1)); }
.ship-bar-fill-courier{ background: linear-gradient(90deg, rgba(168,85,247,1), rgba(217,70,239,1)); }
.ship-bar-fill-post{ background: linear-gradient(90deg, rgba(245,158,11,1), rgba(251,191,36,1)); }

.ship-card-dark{
    position: relative;
    background: radial-gradient(1200px 420px at 10% 0%, rgba(37,99,235,0.25), rgba(15,23,42,0.98)),
                linear-gradient(180deg, rgba(15,23,42,0.98), rgba(2,6,23,0.98));
    border: 1px solid rgba(148,163,184,0.14);
    color: #fff;
    overflow:hidden;
}
.ship-card-dark-label{
    color: rgba(226,232,240,0.8);
    font-weight: 950;
    font-size: 11px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
}
.ship-card-dark-value{
    margin-top: 10px;
    font-size: 44px;
    font-weight: 950;
    letter-spacing: -1px;
}
.ship-card-dark-meta{
    margin-top: 4px;
    color: rgba(226,232,240,0.75);
    font-weight: 800;
    font-size: 12px;
}
.ship-card-dark-icon{
    position:absolute;
    right: 16px;
    top: 18px;
    width: 44px;
    height: 44px;
    border-radius: 999px;
    display:flex;
    align-items:center;
    justify-content:center;
    background: rgba(37,99,235,0.95);
    box-shadow: 0 12px 30px rgba(37,99,235,0.35);
    font-size: 18px;
}

.ship-panel{
    background: var(--panel);
    border: 1px solid var(--border);
    border-radius: 18px;
    box-shadow: var(--shadow);
    padding: 16px;
}
.ship-panel-head{
    display:flex;
    align-items:center;
    justify-content: space-between;
    gap: 10px;
    padding: 6px 6px 10px 6px;
    border-bottom: 1px solid rgba(148,163,184,0.14);
    margin-bottom: 6px;
}
.ship-panel-head h3{
    margin:0;
    font-size: 16px;
    font-weight: 950;
    letter-spacing: -0.3px;
    color: var(--text);
}
.ship-panel-right{
    color: var(--muted);
    font-weight: 850;
    font-size: 12px;
}
.ship-table{
    width:100%;
    border-collapse: collapse;
}
.ship-table th{
    text-align:left;
    color: rgba(148,163,184,0.95);
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    padding: 12px 10px;
}
.ship-table td{
    border-top: 1px solid rgba(148,163,184,0.12);
    padding: 14px 10px;
    vertical-align: middle;
}
.ship-customer-name{
    font-weight: 950;
    color: var(--text);
    letter-spacing: -0.2px;
}
.ship-customer-city{
    margin-top: 4px;
    color: var(--muted);
    font-weight: 800;
    font-size: 12px;
}
.ship-splitbar{
    height: 10px;
    width: 100%;
    border-radius: 999px;
    background: rgba(148,163,184,0.14);
    overflow:hidden;
    border: 1px solid rgba(148,163,184,0.14);
    display:flex;
}
.ship-splitbar > div{ height:100%; }
.ship-splitbar-auto{ background: rgba(37,99,235,0.95); }
.ship-splitbar-courier{ background: rgba(168,85,247,0.95); }
.ship-splitbar-post{ background: rgba(245,158,11,0.95); }
.ship-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding: 4px 10px;
    border-radius: 999px;
    background: var(--chipBg);
    border: 1px solid rgba(148,163,184,0.18);
    font-weight: 950;
    font-size: 12px;
    color: var(--text);
    min-width: 44px;
}
.ship-pill-auto{ border-color: rgba(37,99,235,0.22); }
.ship-pill-courier{ border-color: rgba(168,85,247,0.22); }
.ship-pill-post{ border-color: rgba(245,158,11,0.22); }
.ship-cost{
    font-weight: 950;
    letter-spacing: -0.2px;
}
.ship-details{
    margin-top: 14px;
    border-radius: 18px;
    border: 1px solid rgba(148,163,184,0.14);
    background: rgba(15,23,42,0.02);
    padding: 10px 12px;
}
.ship-details-summary{
    cursor: pointer;
    font-weight: 950;
    color: var(--text);
    padding: 8px 6px;
}

@media (max-width: 980px){
    .ship-kpi-grid{ grid-template-columns: 1fr; }
}

/* Responsive */
@media (max-width: 768px) {
    .admin-shell{ grid-template-columns: 1fr; }
    .admin-sidebar{ position: sticky; top: 0; z-index: 60; }
    .admin-topbar{ position: relative; }
    .admin-main{ padding: 18px; }
    
    .filters {
        flex-direction: column;
    }
    
    .section-header {
        flex-direction: column;
        gap: 16px;
        align-items: flex-start;
    }
    
    .form-grid {
        grid-template-columns: 1fr;
        padding: 20px;
    }
    
    .modal-content {
        width: 95%;
        margin: 20px;
    }
    
    .tech-grid {
        grid-template-columns: 1fr;
    }
    
    .settings-grid {
        grid-template-columns: 1fr;
    }
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 4px;
}

::-webkit-scrollbar-track {
    background: transparent;
}

::-webkit-scrollbar-thumb {
    background: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
}

::-webkit-scrollbar-thumb:hover {
    background: rgba(0, 0, 0, 0.3);
}

/* Animations */
.fade-in {
    animation: fadeIn 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

@keyframes fadeIn {
    from { 
        opacity: 0; 
        transform: translateY(8px); 
    }
    to { 
        opacity: 1; 
        transform: translateY(0); 
    }
}

/* Focus States */
*:focus {
    outline: 2px solid #007aff;
    outline-offset: 2px;
}

/* Multi-Techniker Anzeige */
.tech-assignments {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 600;
}

.multi-tech {
    display: inline-flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.tech-assignment {
    display: inline-block;
    background: rgba(0, 122, 255, 0.1);
    color: #007aff;
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 600;
    border: 1px solid rgba(0, 122, 255, 0.2);
    white-space: nowrap;
}

.units-small {
    font-size: 13px;
    color: #555;
    font-weight: 500;
    margin-left: 2px;
}

/* Nicht zugewiesene Techniker */
.tech-unassigned {
    color: #ff9500;
    font-style: italic;
    font-weight: 500;
    background: rgba(255, 149, 0, 0.1);
    padding: 2px 6px;
    border-radius: 4px;
    border: 1px solid rgba(255, 149, 0, 0.3);
}

.tech-clickable {
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    user-select: none;
}

.tech-clickable:hover {
    background: rgba(255, 149, 0, 0.2);
    border-color: rgba(255, 149, 0, 0.5);
    transform: scale(1.05);
    box-shadow: 0 2px 8px rgba(255, 149, 0, 0.3);
}

/* No Stats Message */
.no-stats {
    text-align: center;
    padding: 40px 20px;
    color: #6e6e73;
    font-size: 16px;
    font-style: italic;
    background: rgba(248, 249, 250, 0.8);
    border-radius: 12px;
    border: 1px dashed rgba(0, 0, 0, 0.1);
}

/* High Volume Indicator */
.high-volume-indicator {
    font-size: 16px;
    margin-left: 4px;
    animation: pulse 2s infinite;
    filter: drop-shadow(0 0 2px rgba(255, 149, 0, 0.6));
}

@keyframes pulse {
    0%, 100% { 
        transform: scale(1); 
        opacity: 1;
    }
    50% { 
        transform: scale(1.1); 
        opacity: 0.8;
    }
}

/* Techniker-Modal: kompakter, Apple-like */
#techModal .modal-content { max-width: 520px; }
#techModal .modal-header h3 { font-size: 18px; letter-spacing: -0.2px; }
#techModal .modal-header { padding-bottom: 12px; }
#techModal form { padding: 0 8px 12px 8px; }
#techModal .form-group { margin-bottom: 12px; }
#techModal .form-group label { font-size: 12px; font-weight: 700; color: #6e6e73; text-transform: uppercase; letter-spacing: 0.6px; margin-bottom: 6px; display:block; }
#techModal input[type="text"],
#techModal input[type="number"] { width: 100%; padding: 10px 12px; border: 0.5px solid rgba(0,0,0,0.2); border-radius: 10px; background: rgba(255,255,255,0.9); font-size: 14px; }
#techModal .modal-actions { padding-top: 8px; }

/* Zweispaltiges Layout für Zahlenfelder, Name volle Breite */
#techModal #techName { }
#techModal #planned, #techModal #capacity { }
@media (min-width: 560px) {
  #techModal form { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 16px; }
  #techModal .form-group { margin: 0; }
  #techModal .form-group:nth-of-type(1) { grid-column: 1 / -1; }
  #techModal .modal-actions { grid-column: 1 / -1; display:flex; justify-content:flex-end; gap:12px; }
}

.assignments-list { display: grid; grid-template-columns: 1fr 120px 40px; gap: 8px; align-items: center; }
.assignment-row select, .assignment-row input[type="number"] { width: 100%; padding: 8px 10px; border: 0.5px solid rgba(0,0,0,0.2); border-radius: 8px; background: rgba(255,255,255,0.9); font-size: 14px; }
.assignment-row .btn-del { width: 36px; height: 36px; display:inline-flex; align-items: center; justify-content: center; border: 1px solid rgba(0,0,0,0.15); border-radius: 8px; background: rgba(255,255,255,0.8); cursor: pointer; }
.assignment-actions { display:flex; gap:8px; align-items:center; margin-top:8px; }
.assignment-actions .hint { color:#6e6e73; }

/* --- Zalando-inspirierter Stil: Auftrags-Modal (nur Optik) --- */
#orderModal .modal-content {
    max-width: 720px;
    border-radius: 12px;
    border: 1px solid #e6e6e6;
    background: #fff;
    box-shadow: 0 8px 32px rgba(0,0,0,0.08);
    overflow: hidden;
}
#orderModal .modal-header {
    padding: 18px 24px;
    border-bottom: 1px solid #ededed;
}
#orderModal .modal-header h3 {
    font-size: 20px;
    font-weight: 700;
    color: #111;
    letter-spacing: -0.2px;
}
#orderModal .modal-header .close {
    font-size: 22px;
    color: #8e8e93;
}
#orderModal .form-grid {
    padding: 20px 24px 8px 24px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 16px 20px;
}
#orderModal .form-group { display: flex; flex-direction: column; gap: 8px; }
#orderModal .form-group.full-width { grid-column: 1 / -1; }
#orderModal .form-group label {
    font-size: 12px;
    font-weight: 700;
    color: #6e6e73;
    text-transform: uppercase;
    letter-spacing: 0.6px;
}
#orderModal .form-group input,
#orderModal .form-group select,
#orderModal .form-group textarea {
    height: 44px;
    padding: 10px 12px;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    background: #fff;
    font-size: 14px;
    color: #1d1d1f;
}
#orderModal .form-group textarea { height: auto; min-height: 96px; resize: vertical; }
#orderModal .form-group input::placeholder,
#orderModal .form-group textarea::placeholder { color: #9a9a9a; }
#orderModal .form-group input:focus,
#orderModal .form-group select:focus,
#orderModal .form-group textarea:focus {
    outline: none;
    border-color: #111;
    box-shadow: 0 0 0 3px rgba(0,0,0,0.06);
}

/* Mehr-Techniker-Bereich im Modal */
#orderModal .assignments-list { display: grid; grid-template-columns: 1fr 120px 44px; gap: 10px; }
#orderModal .assignment-row select,
#orderModal .assignment-row input[type="number"] {
    height: 40px;
    padding: 8px 10px;
    border: 1px solid #dcdcdc;
    border-radius: 8px;
    background: #fff;
    font-size: 14px;
}
#orderModal .assignment-row .btn-del {
    width: 40px; height: 40px;
    display: inline-flex; align-items: center; justify-content: center;
    border: 1px solid #dcdcdc; border-radius: 8px; background: #fff; color: #1d1d1f;
}
#orderModal .assignment-actions { display:flex; gap:10px; align-items:center; margin-top: 4px; }
#orderModal .assignment-actions .btn { height: 36px; padding: 0 12px; }
#orderModal .assignment-actions .hint { color:#6e6e73; }

#orderModal .modal-actions {
    padding: 16px 24px 20px 24px;
    border-top: 1px solid #ededed;
    background: #fafafa;
    display: flex; justify-content: flex-end; gap: 12px;
}
/* Buttons im Zalando-Stil */
#orderModal .btn { border-radius: 8px; font-weight: 600; letter-spacing: 0; }
#orderModal .btn.btn-secondary {
    background: #fff;
    color: #111;
    border: 1px solid #dcdcdc;
}
#orderModal .btn.btn-secondary:hover { border-color: #bdbdbd; background: #f7f7f7; }
#orderModal .btn.btn-primary {
    background: #0a66ff; /* Zalando-ähnliches Blau für primäre Aktion */
    color: #fff;
    border: 1px solid #0a66ff;
    box-shadow: 0 2px 6px rgba(10,102,255,0.25);
}
#orderModal .btn.btn-primary:hover { background: #0957db; border-color: #0957db; }
#orderModal .btn.btn-primary:active { background: #084cc1; border-color: #084cc1; }
/* --- Ende Zalando-inspirierter Stil fürs Auftrags-Modal --- */

/* --- Logo Manager Fixes --- */
.setting-card h3 { margin-bottom: 10px; }
#logosList { display:flex; gap:12px; flex-wrap: wrap; }
#logosList .logo-card { display:flex; flex-direction:column; align-items:center; gap:10px; border:1px solid #e6e6e6; border-radius:10px; padding:12px; background:#fff; min-width: 260px; }
#logosList .logo-card img { max-width: 100%; height: auto; display:block; object-fit: contain; }
.setting-card .form-hint { color:#6e6e73; font-size: 13px; }
.setting-card .btn { height:36px; padding:0 14px; white-space: nowrap; }
#logosList .logo-card .btn { min-width: 120px; }
#logosList .logo-card .badges { display:flex; gap:6px; align-items:center; }
#logosList .logo-badge { font-size:11px; padding:2px 8px; border-radius:999px; background:#f2f2f7; border:1px solid #e6e6e6; color:#1d1d1f; }
#logosList .logo-badge.sun  { background:#fff8e1; border-color:#ffe08a; }
#logosList .logo-badge.moon { background:#e7ecff; border-color:#b3c4ff; }
/* Range/Label Row */
.setting-card .range-row { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.setting-card .range-row label { min-width: 160px; }
.setting-card .range-row input[type="range"] { flex: 1 1 220px; }
.setting-card .range-row span { min-width: 32px; text-align:right; display:inline-block; }
/* --- Ende Logo Manager Fixes --- */
/* ============================================
   TEAM MANAGEMENT STYLES
   ============================================ */

.team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 12px;
}

.team-member-card {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 8px;
    padding: 12px 16px;
    transition: background 0.2s;
}

.team-member-card:hover {
    background: rgba(255,255,255,0.08);
}

.team-member-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.team-member-name {
    font-weight: 600;
    font-size: 14px;
    color: #fff;
}

.team-member-email {
    font-size: 12px;
    color: rgba(255,255,255,0.6);
}

.team-member-role {
    display: inline-block;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: 11px;
    font-weight: 500;
    margin-top: 4px;
    width: fit-content;
}

.role-chef {
    background: rgba(255, 193, 7, 0.2);
    color: #ffc107;
}

.role-admin {
    background: rgba(33, 150, 243, 0.2);
    color: #2196f3;
}

.role-tech {
    background: rgba(76, 175, 80, 0.2);
    color: #4caf50;
}

.btn-danger-small {
    background: rgba(244, 67, 54, 0.2);
    color: #f44336;
    border: none;
    border-radius: 4px;
    width: 28px;
    height: 28px;
    font-size: 18px;
    cursor: pointer;
    transition: background 0.2s;
}

.btn-danger-small:hover {
    background: rgba(244, 67, 54, 0.4);
}

.settings-input {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 6px;
    padding: 8px 12px;
    color: #fff;
    font-size: 14px;
}

.settings-input:focus {
    outline: none;
    border-color: rgba(255,255,255,0.4);
}

.settings-input::placeholder {
    color: rgba(255,255,255,0.4);
}

.settings-select {
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 6px;
    padding: 8px 12px;
    color: #fff;
    font-size: 14px;
}

.settings-select option {
    background: #1a1a2e;
    color: #fff;
}

/* Fix für Team-Eingabefelder */
.settings-input,
.settings-select {
    background: rgba(30, 30, 50, 0.9) !important;
    border: 1px solid rgba(255,255,255,0.3) !important;
    border-radius: 6px !important;
    padding: 10px 14px !important;
    color: #fff !important;
    font-size: 14px !important;
    min-height: 42px;
}

.settings-input:focus,
.settings-select:focus {
    outline: none !important;
    border-color: #4a9eff !important;
    box-shadow: 0 0 0 2px rgba(74, 158, 255, 0.2) !important;
}

.settings-input::placeholder {
    color: rgba(255,255,255,0.5) !important;
}

.settings-select {
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    padding-right: 36px !important;
}

.settings-select option {
    background: #1a1a2e !important;
    color: #fff !important;
    padding: 8px !important;
}

.settings-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

/* User Avatar mit Initialen */
.user-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, #4a9eff 0%, #2563eb 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.5px;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(74, 158, 255, 0.3);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    margin-left: 8px;
}

.user-avatar:hover {
    transform: scale(1.08);
    box-shadow: 0 4px 12px rgba(74, 158, 255, 0.4);
}

.user-avatar span {
    text-transform: uppercase;
}
