:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;font-weight:400;color:var(--color-text);background-color:var(--color-bg);color-scheme:light;--color-bg: #f1f5f9;--color-surface: #ffffff;--color-surface-alt: #f8fafc;--color-text: #0f172a;--color-muted: #64748b;--color-border: #e2e8f0;--color-primary: #2563eb;--color-primary-soft: rgba(37, 99, 235, .12);--color-sidebar-bg: #111827;--color-sidebar-text: #f8fafc;--color-sidebar-muted: #94a3b8;--color-focus: #f59e0b;--color-danger-bg: #fee2e2;--color-danger-text: #b91c1c;--color-info-bg: #e0f2fe;--color-info-text: #0369a1;--color-card-shadow: 0 2px 8px rgba(15, 23, 42, .1);--color-overlay: rgba(15, 23, 42, .6);--color-success-bg: #dcfce7;--color-success-text: #166534;--color-success: #22c55e;--color-warning-bg: #fef9c3;--color-warning-text: #92400e;--color-warning: #f59e0b}[data-theme=dark]{color-scheme:dark;--color-bg: #050505;--color-surface: #121212;--color-surface-alt: #1d1d1d;--color-text: #f5f5f5;--color-muted: #aaaaaa;--color-border: #2f2f2f;--color-primary: #3b82f6;--color-primary-soft: rgba(59, 130, 246, .18);--color-sidebar-bg: #0b0b0b;--color-sidebar-text: #f5f5f5;--color-sidebar-muted: #a1a1a1;--color-focus: #facc15;--color-danger-bg: #431313;--color-danger-text: #fca5a5;--color-info-bg: #1e3a8a;--color-info-text: #bfdbfe;--color-success-bg: #064e3b;--color-success-text: #86efac;--color-success: #4ade80;--color-warning-bg: #422006;--color-warning-text: #fde68a;--color-warning: #fbbf24;--color-card-shadow: 0 8px 28px rgba(0, 0, 0, .6);--color-overlay: rgba(3, 7, 18, .8)}*{box-sizing:border-box}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}body{margin:0;background:var(--color-bg);color:var(--color-text)}.skip-link{position:absolute;left:-999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus-visible{left:1rem;top:1rem;width:auto;height:auto;padding:.5rem 1rem;background:var(--color-primary);color:#fff;border-radius:.4rem;z-index:200}button,input,select,textarea{font:inherit;color:inherit}[type=date],[type=datetime-local]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:.6rem;padding:.4rem .65rem;min-height:36px;box-shadow:none;transition:border-color .2s ease,box-shadow .2s ease}[type=date]:focus-visible,[type=datetime-local]:focus-visible{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-soft);outline:none}[type=date]::-webkit-calendar-picker-indicator,[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.2)}#root{min-height:100vh}.app-shell{display:flex;min-height:100vh}.app-content{flex:1;display:flex;flex-direction:column;min-height:100vh;background:var(--color-bg)}.sidebar{width:240px;background:var(--color-sidebar-bg);color:var(--color-sidebar-text);display:flex;flex-direction:column;padding:0;transition:width .25s cubic-bezier(.4,0,.2,1);position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden;box-shadow:1px 0 #ffffff0d}.sidebar.collapsed{width:72px}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1rem .75rem;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-header-actions{display:flex;gap:.25rem;align-items:center}.brand{font-weight:700;font-size:1.1rem;padding:.35rem .65rem;border-radius:.5rem;background:#ffffff1a;letter-spacing:-.02em}.sidebar.collapsed .brand{padding:.35rem .5rem;font-size:.95rem}.sidebar.collapsed .sidebar-header{justify-content:center;padding:1rem .5rem .75rem}.sidebar-header-actions .ghost-button{width:32px;height:32px;min-width:32px;min-height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:.5rem;padding:0;border:none;background:#ffffff0d}.sidebar-header-actions .ghost-button:hover{background:#ffffff1f}.sidebar-header-actions .ghost-button svg{width:16px;height:16px;pointer-events:none}.theme-toggle{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0}.sidebar-toggle{display:flex;justify-content:center;padding:.5rem}.sidebar-toggle .ghost-button{width:36px;height:36px;border-radius:.5rem;background:#ffffff0d;border:none}.sidebar-toggle .ghost-button:hover{background:#ffffff1f}.sidebar-nav{flex:1;display:flex;flex-direction:column;gap:.5rem;padding:1rem;overflow-y:auto;min-height:0;-webkit-overflow-scrolling:touch}.sidebar.collapsed .sidebar-nav{padding:.75rem .5rem}.sidebar-section{display:flex;flex-direction:column;gap:.2rem}.sidebar-section+.sidebar-section{margin-top:.5rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.06)}.sidebar-section-heading{font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-sidebar-muted);padding:.5rem .75rem .35rem;opacity:.7}.sidebar-links{display:flex;flex-direction:column;gap:.15rem}.sidebar.collapsed .sidebar-section-heading{display:none}.sidebar.collapsed .sidebar-section+.sidebar-section{border-top:none;padding-top:.5rem}.nav-item{display:flex;gap:.75rem;align-items:center;padding:.6rem .75rem;color:var(--color-sidebar-muted);text-decoration:none;border-radius:.5rem;font-size:.9rem;font-weight:500;transition:all .15s ease}.sidebar.collapsed .nav-item{justify-content:center;padding:.65rem}.nav-icon-wrapper{position:relative;display:inline-flex}.nav-badge{position:absolute;top:-.35rem;right:-.35rem;display:inline-flex;align-items:center;justify-content:center;background:#ef4444;color:#fff;border-radius:999px;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.65rem;font-weight:600}.nav-item:hover{background:#ffffff14;color:var(--color-sidebar-text)}.nav-item.active{background:#ffffff1f;color:var(--color-sidebar-text);position:relative}.nav-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;background:var(--color-primary);border-radius:0 2px 2px 0}.sidebar.collapsed .nav-item.active:before{left:50%;top:auto;bottom:0;transform:translate(-50%);width:60%;height:3px;border-radius:2px 2px 0 0}.nav-icon{display:flex;align-items:center;flex-shrink:0}.sidebar-footer{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem;border-top:1px solid rgba(255,255,255,.08);background:#00000026}.sidebar.collapsed .sidebar-footer{justify-content:center;padding:.75rem}.user-info{display:flex;flex-direction:column;min-width:0}.user-name{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.75rem;color:var(--color-sidebar-muted);text-transform:capitalize}.sidebar-footer .ghost-button{width:36px;height:36px;min-width:36px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;background:#ffffff0d;border:none;flex-shrink:0}.sidebar-footer .ghost-button:hover{background:#ef444433;color:#fca5a5}.ghost-button{border:1px solid var(--color-border);background:transparent;color:inherit;padding:.35rem .65rem;border-radius:.5rem;cursor:pointer;font-weight:500;font-size:.85rem;display:inline-flex;align-items:center;gap:.35rem;transition:all .15s ease}.ghost-button:hover{background:var(--color-surface-alt)}.sidebar .ghost-button{border-color:#ffffff26;color:var(--color-sidebar-text)}.ghost-button:disabled{opacity:.5;cursor:not-allowed}.primary-button{background:var(--color-primary);border:none;color:#fff;padding:.4rem .9rem;border-radius:.4rem;cursor:pointer}.button-row{display:flex;gap:.5rem}.loading-state{display:inline-flex;align-items:center;gap:.5rem;color:var(--color-muted)}.loading-state.inline{margin-top:.5rem}.spinner{width:1rem;height:1rem;border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.list{display:flex;flex-direction:column;gap:.25rem}.list-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface)}.list-item.with-actions{gap:1rem}.list-item.active{border-color:var(--color-primary);background:var(--color-primary-soft)}.active-row{background:#eef2ff}.card{background:var(--color-surface);border-radius:.75rem;padding:1rem;box-shadow:var(--color-card-shadow);margin-bottom:1rem}.page-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.page-stack{display:flex;flex-direction:column;gap:1rem}.section-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.section-actions{display:flex;gap:.5rem;flex-wrap:wrap}.tab-row{display:flex;gap:.5rem;border-bottom:1px solid var(--color-border);margin-bottom:1rem}.sub-tab-row{display:flex;gap:.25rem;margin-bottom:.75rem}.tab{border:none;background:transparent;padding:.4rem .8rem;cursor:pointer;color:var(--color-muted)}.tab.active{color:var(--color-text);border-bottom:2px solid var(--color-primary)}.table-grid{width:100%;border-collapse:collapse;margin-top:1rem}.table-grid th,.table-grid td{border:1px solid var(--color-border);padding:.5rem;text-align:left}.table-grid.compact th,.table-grid.compact td{padding:.35rem .4rem;font-size:.9rem}.employees-card{overflow-x:auto}.employees-card .table-grid{margin-top:.75rem;min-width:760px}.filter-row{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:.75rem}.filter-row label{display:flex;flex-direction:column;gap:.2rem;min-width:160px}.notifications-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.notifications-header-bar h2{margin:0}.status-strip{display:flex;gap:.5rem;flex-wrap:wrap;border-bottom:1px solid var(--color-border);padding:.75rem 0}.status-chip{border:1px solid var(--color-border);background:transparent;padding:.25rem .75rem;border-radius:999px;font-size:.85rem;cursor:pointer}.status-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.notification-message{font-size:.95rem}.notifications-empty{text-align:center;color:var(--color-muted);padding:3rem 0;font-size:1rem}.notifications-page{display:flex;flex-direction:column;gap:1rem}.notifications-card{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.notification-options-menu button{border:none;background:transparent;padding:.35rem .6rem;width:100%;text-align:left;cursor:pointer}.notification-options-menu button:hover{background:var(--color-primary-soft)}@media (max-width: 640px){.notifications-card .table-grid,.notifications-card .table-grid tbody,.notifications-card .table-grid tr,.notifications-card .table-grid td{display:block;width:100%}.notifications-card .table-grid thead{display:none}.notifications-card .table-grid tbody{border:none}.notifications-card .table-grid tr{border:1px solid var(--color-border);border-radius:.6rem;padding:.75rem;margin-bottom:.75rem;background:var(--color-surface-alt)}.notifications-card .table-grid td{border:none;padding:.15rem 0}.notifications-card .table-grid td:first-child{font-size:.8rem;text-transform:uppercase}.notifications-card .table-grid td:last-child{text-align:right}.notification-message{font-size:.9rem}.notification-details{list-style:none;padding-left:0;margin:.25rem 0 0;color:var(--color-muted);font-size:.85rem}.notification-details li{margin:.1rem 0}.notification-details .change-added{color:var(--color-success-text)}.notification-details .change-removed{color:var(--color-danger-text)}.notification-details .change-updated{color:var(--color-warning-text)}.profile-page{gap:1rem}.profile-page .profile-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media (min-width: 768px){.profile-page .profile-grid{grid-template-columns:repeat(2,1fr)}}.profile-page .profile-header-card{display:flex!important;flex-direction:row!important;align-items:center!important;gap:1rem!important}.profile-page .profile-avatar{width:64px;height:64px;color:var(--color-primary);background-color:var(--color-primary-soft);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-page .profile-header-info{flex:1;min-width:0}.profile-page .profile-header-info h1{margin:0;font-size:1.25rem;font-weight:600}.profile-page .profile-meta{display:flex;gap:1rem;margin-top:.35rem;flex-wrap:wrap}.profile-page .profile-meta-item{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:var(--color-muted)}.profile-page .profile-logout-btn{padding:.6rem 1rem;border:none;background-color:var(--color-danger-bg);color:var(--color-danger-text);border-radius:.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;font-weight:500;font-size:.85rem;flex-shrink:0}.profile-page .profile-logout-btn:hover{opacity:.85}.profile-page .logout-text{display:none}@media (min-width: 768px){.profile-page .logout-text{display:inline}}.profile-page .profile-section-card{display:flex;flex-direction:column}.profile-page .profile-section-card h3{margin:0 0 1rem;font-size:.8rem;font-weight:600;color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em}.profile-page .profile-actions-list{display:flex;flex-direction:column;gap:.75rem}.profile-page .profile-action-btn{display:flex;flex-direction:row;align-items:center;gap:1rem;padding:1rem;background-color:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem;cursor:pointer;text-align:left;width:100%}.profile-page .profile-action-btn:hover{border-color:var(--color-primary);background-color:var(--color-primary-soft)}.profile-page .profile-action-btn:disabled{opacity:.5;cursor:not-allowed}.profile-page .profile-action-btn svg{color:var(--color-primary);flex-shrink:0}.profile-page .profile-action-text{display:flex;flex-direction:column;gap:.2rem}.profile-page .profile-action-title{font-size:.95rem;font-weight:600;color:var(--color-text)}.profile-page .profile-action-desc{font-size:.8rem;color:var(--color-muted)}.profile-page .login-methods-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.profile-page .login-method-item{display:flex;flex-direction:row;align-items:center;gap:.75rem;padding:.75rem;background-color:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.5rem}.profile-page .login-method-icon{color:var(--color-primary);flex-shrink:0}.profile-page .login-method-info{flex:1;display:flex;flex-direction:column;min-width:0}.profile-page .login-method-name{font-size:.9rem;font-weight:600;color:var(--color-text)}.profile-page .login-method-detail{font-size:.8rem;color:var(--color-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-page .login-method-status{font-size:.7rem;font-weight:600;padding:.25rem .6rem;border-radius:1rem;background-color:var(--color-success-bg);color:var(--color-success-text);flex-shrink:0}.profile-page .sessions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.profile-page .session-row{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:.75rem;background-color:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.5rem}.profile-page .session-details{display:flex;flex-direction:row;gap:.75rem;align-items:center}.profile-page .session-ip{font-size:.9rem;font-weight:600;color:var(--color-text)}.profile-page .session-date{font-size:.8rem;color:var(--color-muted)}.profile-page .session-revoke-btn{font-size:.8rem;font-weight:500;padding:.35rem .75rem;border:1px solid var(--color-danger-text);background-color:transparent;color:var(--color-danger-text);cursor:pointer;border-radius:.4rem}.profile-page .session-revoke-btn:hover{background-color:var(--color-danger-bg)}.profile-page .session-revoke-btn:disabled{opacity:.5;cursor:not-allowed}.profile-page .calendar-section h3{display:flex;align-items:center;gap:.5rem}.profile-page .calendar-section .muted.small{font-size:.75rem;margin-bottom:1rem}.profile-page .calendar-link-box{display:flex;gap:.5rem;margin-bottom:.75rem}.profile-page .calendar-url-input{flex:1;font-size:.75rem;padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background-color:var(--color-surface-alt);color:var(--color-text);font-family:monospace;min-width:0}.profile-page .calendar-url-input:focus{outline:none;border-color:var(--color-primary)}.profile-page .icon-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid var(--color-border);border-radius:.5rem;background:transparent;color:var(--color-muted);cursor:pointer;transition:all .15s}.profile-page .icon-button:hover{color:var(--color-primary);border-color:var(--color-primary);background-color:var(--color-primary-soft)}.profile-page .calendar-add-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.profile-page .calendar-add-btn{display:inline-flex;align-items:center;gap:.35rem;padding:.5rem .75rem;font-size:.8rem;font-weight:500;text-decoration:none;border-radius:.5rem;transition:all .15s}.profile-page .calendar-add-btn.apple{background-color:#333;color:#fff}.profile-page .calendar-add-btn.apple:hover{background-color:#000}.profile-page .calendar-add-btn.google{background-color:#4285f4;color:#fff}.profile-page .calendar-add-btn.google:hover{background-color:#3367d6}.profile-page .calendar-hint{font-size:.7rem;color:var(--color-muted);font-style:italic;margin-bottom:.75rem}.profile-page .calendar-actions{display:flex;gap:.5rem;flex-wrap:wrap}.profile-page .calendar-actions .ghost-button{display:inline-flex;align-items:center;gap:.35rem}.profile-page .calendar-actions .ghost-button.danger{color:var(--color-danger-text);border-color:var(--color-danger-text)}.profile-page .calendar-actions .ghost-button.danger:hover{background-color:var(--color-danger-bg)}.profile-page .calendar-disabled{display:flex;justify-content:center}.profile-page .calendar-disabled .primary-button{display:inline-flex;align-items:center;gap:.5rem}.profile-page .hours-grid{display:flex;flex-direction:column;gap:.75rem}@media (min-width: 480px){.profile-page .hours-grid{flex-direction:row}}.profile-page .hours-item{flex:1;display:flex;flex-direction:row;align-items:center;gap:.75rem;padding:1rem;background-color:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem}.profile-page .hours-icon{width:44px;height:44px;color:var(--color-primary);background-color:var(--color-primary-soft);padding:.6rem;border-radius:.6rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.profile-page .hours-info{display:flex;flex-direction:column;gap:.2rem}.profile-page .hours-label{font-size:.75rem;font-weight:600;color:var(--color-muted);text-transform:uppercase;letter-spacing:.03em}.profile-page .hours-value{font-size:1.1rem;font-weight:700;color:var(--color-text)}.profile-page .hours-value.placeholder{color:var(--color-muted)}.profile-page .hours-hint{margin:1rem 0 0;padding-top:.75rem;border-top:1px solid var(--color-border);font-size:.8rem;color:var(--color-muted);text-align:center;font-style:italic}.profile-page .hours-hint.small{margin:0;padding:0;border:none;text-align:left;font-size:.7rem}.profile-page .hours-nav{display:flex;align-items:center;gap:.25rem}.profile-page .hours-nav .hours-label{min-width:7rem;text-align:center}.profile-page .hours-nav-btn{background:none;border:none;padding:.2rem;cursor:pointer;color:var(--color-muted);border-radius:.25rem;display:flex;align-items:center;justify-content:center;transition:color .15s,background-color .15s}.profile-page .hours-nav-btn:hover{color:var(--color-primary);background-color:var(--color-primary-soft)}.profile-page .hours-nav-btn:active{transform:scale(.95)}.profile-page .time-tracking-section{gap:.5rem}.profile-page .time-tracking-section h3{margin-bottom:.25rem!important}.profile-page .time-tracking-section .muted.small{font-size:.75rem;margin-bottom:.5rem}.profile-page .time-tracking-section .actual-shifts-list{margin-top:.5rem}.theme-toggle-row{display:flex;flex-wrap:wrap;gap:.75rem}.theme-toggle-btn{border:1px solid var(--color-border);border-radius:999px;padding:.4rem .85rem;display:inline-flex;align-items:center;gap:.35rem;background:var(--color-surface);font-weight:600}.theme-toggle-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.identity-section{margin-top:1.5rem;display:flex;flex-direction:column;gap:.75rem}.section-header-row{display:flex;justify-content:space-between;align-items:flex-start}.identity-list{list-style:none;padding:0;margin:.5rem 0 0;display:flex;flex-direction:column;gap:.75rem}.identity-list-item{border:1px solid var(--color-border);border-radius:.75rem;padding:.85rem;background:var(--color-surface-alt)}.identity-list-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.5rem}.identity-title{display:flex;gap:.5rem;align-items:center}.identity-meta{font-size:.8rem;color:var(--color-muted)}.identity-detail{font-size:.9rem;margin-top:.35rem}.password-requirements{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.4rem}.password-requirements li{display:flex;gap:.4rem;align-items:center;color:var(--color-muted)}.password-requirements li.met{color:var(--color-success-text)}.segmented-nav{display:grid;grid-template-columns:repeat(2,minmax(140px,1fr));border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border);margin:0 auto 1.25rem;overflow:hidden;box-shadow:inset 0 1px 4px #0f172a14;max-width:320px}.segmented-nav button{background:transparent;border:none;padding:.55rem .5rem;font-weight:600;color:var(--color-muted)}.segmented-nav button.active{background:var(--color-primary);color:#fff}.settings-placeholder{padding:1rem 0;color:var(--color-muted)}.settings-section{display:flex;flex-direction:column;gap:1.5rem;padding:.5rem 0 1.5rem}.settings-option{margin-top:.5rem;display:flex;flex-direction:column;gap:.4rem}.settings-option select{padding:.6rem .75rem;border-radius:.75rem;border:1px solid var(--color-border);background:var(--color-surface-alt)}.pill-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.pill-buttons button{border-radius:999px;padding:.4rem .5rem;border:1px solid var(--color-border);background:var(--color-surface);display:flex;gap:.25rem;align-items:center;justify-content:center;font-weight:600}.pill-buttons button.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.settings-divider{height:1px;background:var(--color-border)}.session-list{list-style:none;padding:0;margin:.75rem 0 0;display:flex;flex-direction:column;gap:.75rem}.session-item{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;border:1px solid var(--color-border);border-radius:.75rem;padding:.75rem;background:var(--color-surface-alt)}.notifications-card{padding:.5rem}.notifications-empty{padding:2rem 0}}.cell-disabled{opacity:.55;pointer-events:none;background:var(--color-surface-alt)}.station-heading-row td{background:var(--color-surface-alt)}.station-heading,.row-label{display:flex;justify-content:space-between;align-items:center}.pill{display:inline-flex;padding:.2rem .6rem;border-radius:999px;background:var(--color-border);margin-right:.5rem;margin-bottom:.5rem}.placeholder-box{margin-top:1rem;padding:1rem;border-radius:.5rem;background:var(--color-surface-alt);color:var(--color-muted)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem;margin-bottom:1rem}.checkbox-item{display:flex;gap:.5rem;align-items:center}.checkbox-item.compact{font-size:.9rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.stat-card{background:var(--color-surface-alt);border-radius:.5rem;padding:1rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);display:flex;justify-content:center;align-items:center;z-index:100}.modal{width:min(480px,90vw);background:var(--color-surface);border-radius:.75rem;padding:1.25rem;box-shadow:0 20px 60px #0f172a4d}.modal-large{width:min(960px,95vw);max-height:90vh;overflow-y:auto}.modal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.modal-section{margin-bottom:.75rem}.create-user-body{display:flex;flex-direction:column;gap:1.25rem}.create-user-section{border:1px solid var(--color-border);border-radius:.75rem;padding:1rem;background:var(--color-surface-alt)}.create-user-section h4{margin:0 0 .5rem}.create-user-section .muted{margin-top:-.25rem}.create-user-grid,.stations-checkbox-grid{margin-top:.75rem}.modal-row{display:flex;gap:.5rem;flex-wrap:wrap}.modal-form label{display:flex;flex-direction:column;gap:.25rem}.password-form{display:flex;gap:.5rem;align-items:center}.app-main{flex:1;padding:1.5rem}.mobile-nav{display:none;justify-content:space-around;align-items:center;background:var(--color-surface);border-top:1px solid var(--color-border);padding:.35rem .5rem;padding-bottom:calc(.35rem + env(safe-area-inset-bottom,0px));gap:.25rem}.mobile-nav-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.15rem;background:none;border:none;color:var(--color-muted);text-decoration:none;font-size:.6rem;font-weight:500;padding:.35rem .25rem;border-radius:.5rem;transition:color .15s ease;position:relative;max-width:72px}.mobile-nav-item .nav-icon{margin:0;display:flex;align-items:center;justify-content:center}.mobile-nav-item .nav-icon-wrapper{display:inline-flex;position:relative}.mobile-nav-item .nav-badge{position:absolute;top:-.25rem;right:-.35rem;min-width:.9rem;height:.9rem;font-size:.55rem;background:#ef4444;color:#fff;border-radius:999px;display:flex;align-items:center;justify-content:center;font-weight:600}.mobile-nav-item svg{width:20px;height:20px}.mobile-nav-item.active{color:var(--color-primary)}.mobile-nav-item.active:after{content:"";position:absolute;bottom:.1rem;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--color-primary);border-radius:50%}.mobile-nav-item.core{color:var(--color-primary);font-weight:600}.mobile-nav-item.core svg{width:22px;height:22px}.mobile-nav-item.core.active{color:var(--color-primary)}.mobile-nav-item.core.active:after{background:var(--color-primary)}.mobile-nav-item:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.mobile-nav-label{font-size:.55rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.1;letter-spacing:-.01em}.mobile-nav-item.active .mobile-nav-label,.mobile-nav-item.core .mobile-nav-label{font-weight:600}.muted{color:var(--color-muted);font-size:.9rem}.list button.list-item{border:none;width:100%;text-align:left;background:transparent;cursor:pointer}.list button.list-item.active{background:var(--color-primary-soft)}.filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.5rem;margin-bottom:1rem}.filter-actions{display:flex;align-items:flex-end;justify-content:flex-end}.audit-filter-grid .filter-actions{display:flex;align-items:flex-end}.audit-page{gap:1.5rem}.audit-header-actions{display:flex;gap:.6rem;margin-left:auto;flex-wrap:wrap;justify-content:flex-end}.audit-filter-card{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.audit-filter-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.audit-filter-toolbar{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;justify-content:flex-end}.audit-presets{display:flex;flex-wrap:wrap;gap:.5rem}.audit-preset{border:1px solid var(--color-border);background:transparent;border-radius:999px;padding:.25rem .75rem;font-size:.85rem;cursor:pointer;transition:background .15s ease,color .15s ease,border .15s ease}.audit-preset.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.audit-preset-indicator{font-size:.8rem;color:var(--color-muted);align-self:center}.audit-filter-card .filter-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem;margin-bottom:0}.audit-filter-card label input,.audit-filter-card label select{width:100%}.audit-input-field{position:relative;display:flex;align-items:center;border:1px solid var(--color-border);border-radius:.65rem;padding:.35rem .75rem .35rem 2.25rem;background:var(--color-surface);gap:.35rem}.audit-input-field input,.audit-input-field select{border:none;background:transparent;padding:0;font:inherit;color:inherit;width:100%;min-height:32px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.audit-input-field input:focus,.audit-input-field select:focus{outline:none;box-shadow:none}.audit-input-field .field-icon{position:absolute;left:.75rem;color:var(--color-muted)}.audit-input-field .field-caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--color-muted);position:absolute;right:.75rem;pointer-events:none}.audit-input-field:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-soft)}[data-theme=dark] .audit-input-field{background:var(--color-surface-alt);border-color:#3a3a3a}[data-theme=dark] .audit-input-field input,[data-theme=dark] .audit-input-field select{background:transparent}.audit-table-card{padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.audit-table-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.table-scroll{width:100%;overflow-x:auto}.table-scroll .table-grid{margin-top:0;min-width:780px}.audit-table .audit-meta{max-width:320px}.audit-empty{text-align:center;padding:2rem 0;color:var(--color-muted)}.audit-action-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.1rem .55rem;border-radius:999px;background:var(--color-surface-alt);border:1px solid var(--color-border);font-size:.8rem;font-weight:600}[data-theme=dark] .audit-action-chip{background:#ffffff0f;border-color:#3a3a3a}.audit-meta{max-width:260px;max-height:160px;overflow:auto;background:var(--color-surface-alt);border-radius:.5rem;padding:.35rem;border:1px solid var(--color-border);font-size:.85rem}.audit-table-card .table-grid th:first-child,.audit-table-card .table-grid td:first-child{min-width:180px}.audit-table-card .table-grid th:last-child,.audit-table-card .table-grid td:last-child{width:30%}.audit-table-card .alert-error.inline{margin:0}@media (max-width: 640px){.audit-header-actions{width:100%;justify-content:flex-start}.table-scroll .table-grid{min-width:640px}}@media (max-width: 960px){.page-grid{grid-template-columns:1fr}}@media (max-width: 768px){.sidebar{display:none}.app-shell{flex-direction:column}.app-main{padding:1rem 1rem 5rem}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:90}}.alert-error{background:var(--color-danger-bg);color:var(--color-danger-text);border-radius:.4rem;padding:.5rem;margin-bottom:.75rem}.info-banner{background:var(--color-info-bg);color:var(--color-info-text);border-radius:.4rem;padding:.5rem .75rem;margin-bottom:.75rem;font-size:.9rem}.planner-top-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.5rem;align-items:stretch;background:var(--color-surface);padding:.35rem .75rem;border-radius:.75rem;box-shadow:var(--color-card-shadow)}.planner-top-row.minimal .card,.slim-card{padding:1rem;display:flex;justify-content:space-between;align-items:center;border-radius:1rem;min-height:120px}.slim-info{display:flex;flex-direction:column;gap:.2rem}.slim-info strong{font-size:1.1rem}.slim-controls{display:flex;align-items:center;gap:.4rem}.planner-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.planner-header.combined{gap:1rem}.planner-header-left,.planner-header-right{display:flex;flex-direction:column;gap:.5rem}.planner-header-right{align-items:flex-end}.planner-actions{display:flex;flex-direction:column;gap:.75rem}.planner-actions h2{margin:0}.planner-actions .button-row{display:flex;flex-wrap:wrap;gap:.5rem}.week-picker{display:flex;flex-direction:column;gap:.4rem}.week-input{display:flex;align-items:center;gap:.2rem}.week-input input[type=date]{min-width:150px}.version-info{font-weight:600}.employee-view{display:flex;flex-direction:column;gap:1rem}.timeoff-page{display:flex;flex-direction:column;gap:1.5rem}.timeoff-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem;align-items:stretch}.timeoff-card{gap:1.25rem;min-height:100%}.timeoff-card .form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.timeoff-card .form-grid .full-width{grid-column:1 / -1}.timeoff-form-actions{grid-column:1 / -1;display:flex;justify-content:flex-end}.timeoff-card textarea{min-height:120px}.form-card{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.form-card-header{display:flex;flex-direction:column;gap:.4rem}.form-card-header small{color:var(--color-muted)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;color:var(--color-muted);margin:0}.form-grid{display:grid;gap:.75rem}.form-grid label{display:flex;flex-direction:column;gap:.3rem;font-size:.9rem}.form-grid input,.form-grid textarea{border:1px solid var(--color-border);border-radius:.65rem;padding:.55rem .8rem;font-size:1rem}.form-grid textarea{resize:vertical;min-height:90px}.form-grid .full-width{grid-column:span 2}.form-message{text-align:center;color:var(--color-primary);font-weight:600}.timeoff-history-card{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.timeoff-history-head{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1rem}.history-item{position:relative;border:1px solid var(--color-border);border-radius:.85rem;padding:.75rem 1rem .75rem 1.75rem;background:var(--color-surface);display:flex;flex-direction:column;gap:.45rem;box-shadow:var(--color-card-shadow)}.history-item:before{content:"";position:absolute;left:.75rem;top:.75rem;bottom:.75rem;width:2px;background:var(--color-border);border-radius:999px}.history-item:first-child:before{top:.5rem}.history-item:last-child:before{bottom:.5rem}.history-item-main{display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem;font-weight:600}.history-item-period{color:var(--color-muted)}.history-item-status{display:flex;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.history-item-status small{color:var(--color-muted)}.history-item-reason{margin:0;background:var(--color-surface-alt);border-radius:.6rem;padding:.6rem}.status-badge{display:inline-flex;align-items:center;justify-content:center;padding:.2rem .75rem;border-radius:999px;font-size:.85rem;font-weight:600;letter-spacing:.01em;text-transform:capitalize}.status-pending{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-approved{background:var(--color-success-bg);color:var(--color-success-text)}.status-open{background:var(--color-primary-soft);color:var(--color-primary)}.status-waiting{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-rejected{background:var(--color-danger-bg);color:var(--color-danger-text)}.status-expired{background:var(--color-border);color:var(--color-muted)}.status-cancelled,.status-unknown{background:var(--color-border);color:var(--color-text)}@media (max-width: 640px){.timeoff-grid{grid-template-columns:1fr}.timeoff-form-actions{justify-content:stretch}.timeoff-form-actions .primary-button{width:100%}}.range-controls{display:flex;flex-direction:column;gap:1rem}.range-controls-header{text-align:center;display:flex;flex-direction:column;gap:.4rem;position:relative}.range-controls-header h2{margin:0}.range-quick-button{position:absolute;top:0;right:0;border:none;background:transparent;color:var(--color-muted);padding:.2rem;border-radius:.4rem;cursor:pointer}.range-quick-button:hover,.range-quick-button:focus-visible{background:var(--color-primary-soft);outline:none}.range-inputs{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:.75rem;align-items:end;justify-items:center}.range-inputs label{display:flex;flex-direction:column;font-size:.9rem;gap:.2rem}.range-inputs input[type=date]{width:100%}.range-actions{display:flex;align-items:center;justify-content:center}.icon-button{min-width:72px;height:36px;border-radius:.6rem;border:none;background:var(--color-primary);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;gap:.4rem;padding:0 1rem}.icon-button:disabled{opacity:.6;cursor:not-allowed}.toast-container{position:fixed;bottom:1rem;right:1rem;display:flex;flex-direction:column;gap:.5rem;z-index:120}.toast{min-width:220px;padding:.75rem 1rem;border-radius:.6rem;color:#fff;box-shadow:0 10px 30px #0f172a33;font-size:.95rem}.toast.error{background:#dc2626}.toast.success,.toast.info{background:#0ea5e9}.shift-list{display:flex;flex-direction:column;gap:1rem}.shift-card-compact{display:flex;flex-direction:column;gap:.5rem;padding:1rem}.shift-card-top{display:flex;justify-content:space-between;align-items:center;gap:1rem}.shift-card-date{font-size:1.1rem;font-weight:700}.shift-card-station{font-size:.85rem;font-weight:600;color:var(--color-primary);background:var(--color-primary-soft);padding:.25rem .6rem;border-radius:.4rem}.shift-card-time{font-size:1rem;color:var(--color-text)}.shift-card-notes{display:flex;flex-direction:column;gap:.25rem;padding-top:.5rem;border-top:1px solid var(--color-border);margin-top:.25rem}.shift-note-private{margin:0;font-size:.875rem;color:var(--color-text)}.shift-note-private:before{content:"📝 "}.shift-note-day{margin:0;font-size:.875rem;color:var(--color-muted)}.shift-note-day:before{content:"📢 "}.shift-card-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;margin-top:.25rem;border-top:1px solid var(--color-border)}.shift-team-count{font-size:.85rem;color:var(--color-muted)}.shift-card{display:flex;flex-direction:column;gap:.75rem}.shift-card-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.shift-header-left{display:flex;flex-direction:column;gap:.3rem}.shift-station-title{font-size:1rem;font-weight:700;color:var(--color-text)}.shift-date{font-size:1.1rem;font-weight:600}.shift-station{color:var(--color-muted)}.shift-detail-row{display:flex;justify-content:space-between;gap:1rem;font-size:.95rem}.shift-time-label{font-weight:500;color:var(--color-muted)}.shift-actions-row{margin-top:.5rem}.shift-empty-state{padding:2rem 1rem;text-align:center}.shift-empty-state p{margin:0}.outline-button{border:1px solid var(--color-border);background:var(--color-surface-alt);color:var(--color-primary);padding:.35rem .75rem;border-radius:.5rem;font-weight:600;cursor:pointer}.outline-button:hover{background:var(--color-primary-soft)}.outline-button:focus-visible{outline:2px solid var(--color-focus)}.text-button{border:none;background:none;color:var(--color-primary);font-weight:600;cursor:pointer;padding:0}.text-button:focus-visible{outline:2px solid var(--color-focus);border-radius:.25rem}.modal-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.team-day-table{width:100%;border-collapse:collapse}.team-day-table th,.team-day-table td{text-align:left;padding:.4rem .2rem;border-bottom:1px solid var(--color-border)}.team-day-station td{font-weight:600;background:var(--color-surface-alt);border-bottom:1px solid var(--color-border)}.swap-offer-list{display:flex;flex-direction:column;gap:.75rem}.swap-offer-card{border:1px solid var(--color-border);border-radius:.8rem;padding:1rem;background:var(--color-surface-alt);box-shadow:var(--color-card-shadow)}.swap-offer-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem;gap:.5rem;font-weight:600}.swap-offer-card__date{font-size:1rem}.swap-offer-card__details{display:flex;flex-direction:column;gap:.2rem}.swap-offer-card__note{margin-top:.4rem;padding:.5rem .75rem;border-radius:.5rem;background:var(--color-surface);color:var(--color-muted)}.swap-offer-card__meta{margin-top:.5rem;display:flex;gap:.75rem;flex-wrap:wrap;font-size:.85rem;color:var(--color-muted)}.swap-offer-card__actions{margin-top:.75rem;display:flex;justify-content:flex-end}.swap-market-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1rem}.swap-market-section{display:flex;flex-direction:column;gap:.75rem}.swap-shift-picker{display:flex;flex-direction:column;gap:.5rem;max-height:260px;overflow-y:auto;margin-bottom:.75rem}.swap-shift-picker__item{border:1px solid var(--color-border);border-radius:.75rem;padding:.6rem .85rem;background:transparent;display:flex;gap:.75rem;align-items:center;text-align:left;cursor:pointer}.swap-shift-picker__item.is-active{border-color:var(--color-primary);background:var(--color-primary-soft)}.swap-shift-picker__date{font-weight:600;min-width:72px}.swap-shift-picker__info{display:flex;flex-direction:column;gap:.2rem}.swap-admin-header{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:flex-start;margin-bottom:1rem}.swap-admin-filters{display:flex;gap:.5rem;flex-wrap:wrap}.swap-admin-table{width:100%;border-collapse:collapse}.swap-admin-table th,.swap-admin-table td{padding:.65rem .5rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.swap-candidate-list{display:flex;flex-wrap:wrap;gap:.35rem}.swap-candidate-pill{padding:.2rem .6rem;border-radius:999px;background:var(--color-surface);border:1px solid var(--color-border);font-size:.85rem}.swap-candidate-pill.is-selected{background:var(--color-success-bg);color:var(--color-success-text);border-color:var(--color-success-bg)}.swap-candidate-pill.is-rejected{color:var(--color-muted);opacity:.6;text-decoration:line-through}.swap-candidate-radio-list{display:flex;flex-direction:column;gap:.6rem;margin-top:.75rem}.swap-candidate-radio{display:flex;gap:.75rem;align-items:flex-start;border:1px solid var(--color-border);padding:.6rem;border-radius:.75rem}.swap-candidate-radio input[type=radio]{margin-top:.3rem}.settings-page{display:flex;flex-direction:column;gap:1.5rem}.settings-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:1.25rem}.settings-card{display:flex;flex-direction:column;gap:1.25rem}.settings-card-header{display:flex;align-items:flex-start;gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.settings-card-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--color-primary-soft);color:var(--color-primary);border-radius:.65rem;flex-shrink:0}.settings-card-header h2{font-size:1.1rem;margin:0 0 .25rem}.settings-card-header .muted{font-size:.8rem}.settings-form{display:flex;flex-direction:column;gap:1.25rem}.settings-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media (max-width: 480px){.settings-form-grid{grid-template-columns:1fr}}.settings-form label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600;color:var(--color-text)}.settings-form fieldset legend{font-weight:600;font-size:.85rem;padding:0 .5rem;margin-left:-.5rem}.settings-form input[type=number]{width:100%;padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface-alt);font-size:.95rem;transition:border-color .15s ease,box-shadow .15s ease}.settings-form input[type=number]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.settings-form fieldset{border:1px solid var(--color-border);border-radius:.75rem;padding:1rem 1.25rem;background:var(--color-surface-alt)}.day-checkboxes{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.5rem;margin-top:.75rem}.checkbox-row{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;cursor:pointer;transition:all .15s ease}.checkbox-row:hover{border-color:var(--color-primary)}.checkbox-row:has(input:checked){background:var(--color-primary-soft);border-color:var(--color-primary)}.checkbox-row input[type=checkbox]{accent-color:var(--color-primary)}.form-actions{display:flex;justify-content:flex-end;padding-top:.5rem}.session-card{display:flex;flex-direction:column;gap:1.25rem}.session-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.session-card-head-content{display:flex;align-items:flex-start;gap:.75rem}.session-card-head h2{font-size:1.1rem;margin:0 0 .25rem}.session-table-wrapper{overflow-x:auto;border:1px solid var(--color-border);border-radius:.75rem}.session-table{border-collapse:collapse;width:100%}.session-table th{background:var(--color-surface-alt);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-muted);text-align:left;padding:.75rem 1rem;border-bottom:1px solid var(--color-border)}.session-table td{padding:.85rem 1rem;border-bottom:1px solid var(--color-border);font-size:.9rem}.session-table tr:last-child td{border-bottom:none}.session-table tr:hover td{background:var(--color-surface-alt)}.session-table tr.active-row td{background:var(--color-primary-soft)}.session-table td strong{display:block;font-weight:600}.session-table td .muted{font-size:.75rem}.session-row-actions{display:flex;gap:.5rem}.session-row-actions .ghost-button{padding:.35rem .65rem;font-size:.8rem}.session-detail-card{border:1px solid var(--color-border);border-radius:.9rem;padding:1.25rem;background:var(--color-surface-alt);margin-top:.5rem}.session-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.session-detail-head h3{margin:0 0 .25rem;font-size:1rem}.session-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.25rem}.session-detail-grid>div{padding:.75rem;background:var(--color-surface);border-radius:.5rem;border:1px solid var(--color-border)}.session-detail-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);font-weight:600}.session-detail-value{display:block;margin-top:.35rem;font-weight:600;font-size:.9rem;word-break:break-all}code.session-detail-value{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.75rem;background:var(--color-surface-alt);padding:.15rem .35rem;border-radius:.25rem}.session-detail-actions{display:flex;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem;border-top:1px solid var(--color-border)}.mobile-shifts-page{gap:1rem}.time-tracking-card{overflow:hidden}.time-tracking-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;padding:.75rem 1rem;background:none;border:none;cursor:pointer;text-align:left}.time-tracking-header:hover{background:var(--color-surface-alt)}.time-tracking-header-content{display:flex;align-items:center;gap:.65rem}.time-tracking-header-content svg{color:var(--color-primary);flex-shrink:0}.time-tracking-title{display:block;font-weight:600;font-size:.9rem}.time-tracking-subtitle{display:block;font-size:.75rem;color:var(--color-muted)}.time-tracking-header-right{display:flex;align-items:center;gap:.5rem;color:var(--color-muted)}.time-tracking-badge{font-size:.7rem;font-weight:600;padding:.2rem .5rem;background:var(--color-warning);color:#fff;border-radius:999px}.time-tracking-content{padding:0 .75rem .75rem;border-top:1px solid var(--color-border)}.time-tracking-content .actual-shifts-list{margin-top:.5rem}.time-tracking-content .muted{padding:.5rem .25rem;font-size:.85rem}.live-hint{background:var(--color-info-bg);color:var(--color-info-text);padding:.5rem .75rem;border-radius:.65rem;font-size:.9rem;margin-bottom:.75rem}.shifts-filter-card{padding:.75rem 1rem}.shifts-filter-row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between}.shifts-date-inputs{display:flex;gap:.5rem;align-items:center}.shifts-date-field{display:flex;align-items:center;gap:.35rem}.shifts-date-field span{font-size:.75rem;font-weight:500;color:var(--color-muted)}.shifts-date-field input[type=date]{padding:.3rem .5rem;font-size:.85rem;min-width:115px}.shifts-quick-actions{display:flex;gap:.35rem;align-items:center}.chip-button{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;padding:.35rem .65rem;font-size:.8rem;font-weight:500;border:1px solid var(--color-border);border-radius:1rem;background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:all .15s ease;white-space:nowrap}.chip-button:hover{background:var(--color-surface-alt);border-color:var(--color-muted)}.chip-button.primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.chip-button.primary:hover{opacity:.9}.chip-button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 480px){.shifts-filter-row{flex-direction:column;align-items:stretch;gap:.6rem}.shifts-date-inputs{width:100%;justify-content:space-between}.shifts-date-field{flex:1}.shifts-date-field input[type=date]{width:100%;min-width:unset}.shifts-quick-actions{justify-content:flex-end}}.session-section{display:flex;flex-direction:column;gap:.75rem}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.table-wrapper{overflow-x:auto}.simple-table{width:100%;border-collapse:collapse}.simple-table th,.simple-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--color-border)}.simple-table tbody tr:hover{background:var(--color-surface-alt)}.oidc-providers-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--color-border)}.oidc-provider-list{display:flex;flex-direction:column;gap:1rem}.oidc-provider-card{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem;padding:1rem}.oidc-provider-card.disabled{opacity:.7}.oidc-provider-card.new-provider{border:2px dashed var(--color-primary);background:var(--color-primary-soft)}.oidc-provider-card h4{margin:0 0 1rem;color:var(--color-primary)}.provider-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.provider-info{display:flex;flex-direction:column;gap:.25rem}.provider-info strong{font-size:1.1rem}.provider-id{font-size:.85rem;color:var(--color-muted);background:var(--color-surface);padding:.15rem .4rem;border-radius:.25rem}.provider-status .status-badge{font-size:.8rem;padding:.2rem .6rem;border-radius:1rem;font-weight:500}.status-badge.active{background:var(--color-success-bg);color:var(--color-success-text)}.status-badge.inactive{background:var(--color-surface);color:var(--color-muted);border:1px solid var(--color-border)}.provider-details{font-size:.9rem;display:flex;flex-direction:column;gap:.3rem;margin-bottom:1rem}.provider-details .label{color:var(--color-muted);margin-right:.4rem}.provider-details code{background:var(--color-surface);padding:.1rem .3rem;border-radius:.2rem;font-size:.85em}.provider-actions{display:flex;gap:.5rem;flex-wrap:wrap;padding-top:.75rem;border-top:1px solid var(--color-border)}.provider-actions .danger{color:var(--color-danger-text)}.provider-form{display:flex;flex-direction:column;gap:1rem}.provider-form .form-row{display:flex;flex-direction:column;gap:.25rem}.provider-form .form-row label{display:flex;flex-direction:column;gap:.35rem;font-weight:500}.provider-form .form-row.checkbox-row label{flex-direction:row;align-items:center;gap:.5rem;font-weight:400}.provider-form .form-row input[type=text],.provider-form .form-row input[type=url]{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface)}.provider-form .form-row input:focus{border-color:var(--color-primary);outline:none}.provider-form .hint{font-size:.8rem;color:var(--color-muted)}.provider-form .form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.5rem}.provider-form .env-hint{margin-top:1rem;padding:.75rem;background:var(--color-info-bg);color:var(--color-info-text);border-radius:.5rem;font-size:.9rem}.provider-form .env-hint pre{margin:.5rem 0 0;padding:.5rem;background:var(--color-surface);border-radius:.3rem;overflow-x:auto;font-size:.85rem}.secret-configured{color:var(--color-success-text);font-weight:500}.secret-missing{color:var(--color-warning-text);font-weight:500}.login-page{min-height:100vh;background:linear-gradient(135deg,#2563eb14,#0ea5e926);display:flex;align-items:center;justify-content:center;padding:2rem}.login-card{width:min(960px,100%);background:var(--color-surface);border-radius:1.25rem;box-shadow:0 25px 60px #0f172a2e;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));overflow:hidden}.login-card__intro{padding:2rem;background:linear-gradient(180deg,#2563eb2e,#0f766e2e);color:#0f172a;display:flex;flex-direction:column;gap:1rem}.login-intro-desktop{display:flex}.login-card__intro .muted{color:#0f172ab3}.login-card__form{padding:2.5rem;display:flex;flex-direction:column;gap:1rem}.login-card__form label{display:flex;flex-direction:column;gap:.35rem;font-weight:600}.login-card__form input{padding:.75rem .9rem;border-radius:.75rem;border:1px solid var(--color-border);background:var(--color-surface-alt)}.login-card__form button{width:100%;justify-content:center}.login-brand{display:flex;gap:.75rem;align-items:center}.login-brand h1{margin:0;font-size:1.75rem}.login-highlight{display:flex;gap:.5rem;align-items:center;padding:.75rem 1rem;border-radius:.85rem;background:#ffffffb3}.login-highlight code{background:#0f172a14;padding:.15rem .4rem;border-radius:.35rem;font-size:.9rem}.login-perks{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.4rem;list-style:none;padding:0;margin:0}.login-perks li{display:flex;gap:.4rem;align-items:center;font-size:.9rem}.login-alert{background:var(--color-danger-bg);color:var(--color-danger-text);padding:.75rem;border-radius:.75rem;font-size:.95rem}.login-alert.info{background:var(--color-info-bg);color:var(--color-info-text)}.login-note{font-size:.85rem;color:var(--color-muted);margin:0}.oidc-section{display:flex;flex-direction:column;gap:1rem}.oidc-divider{display:flex;align-items:center;gap:1rem;color:var(--color-muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.05em}.oidc-divider:before,.oidc-divider:after{content:"";flex:1;height:1px;background:var(--color-border)}.oidc-buttons{display:flex;flex-direction:column;gap:.75rem}.oidc-provider-button{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 1.25rem;border:1px solid var(--color-border);border-radius:.6rem;background:var(--color-surface);color:var(--color-text);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .15s ease}.oidc-provider-button:hover:not(:disabled){border-color:var(--color-primary);background:var(--color-primary-soft)}.oidc-provider-button:disabled{opacity:.6;cursor:not-allowed}.oidc-provider-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px}.oidc-provider-icon svg{width:20px;height:20px}.oidc-provider-text{flex:1;text-align:left}.oidc-provider-button[data-provider=google]:hover:not(:disabled){border-color:#4285f4;background:#4285f41a}.oidc-provider-button[data-provider=microsoft]:hover:not(:disabled){border-color:#00a4ef;background:#00a4ef1a}.oidc-provider-button[data-provider=apple]:hover:not(:disabled){border-color:#000;background:#0000000d}@media (max-width: 720px){.login-card__form,.login-card__intro{padding:1.75rem}.login-intro-desktop{display:none}}[data-theme=dark] .login-page{background:linear-gradient(135deg,#3b82f60d,#0ea5e914)}[data-theme=dark] .login-card{box-shadow:0 25px 60px #0006;border:1px solid var(--color-border)}[data-theme=dark] .login-card__intro{background:linear-gradient(180deg,#3b82f61f,#14b8a61a);color:var(--color-text)}[data-theme=dark] .login-card__intro .muted{color:var(--color-muted)}[data-theme=dark] .login-highlight{background:#ffffff14}[data-theme=dark] .login-highlight code{background:#ffffff1f}[data-theme=dark] .login-card__form input{background:var(--color-bg);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .login-card__form input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f633}[data-theme=dark] .card{border:1px solid var(--color-border)}[data-theme=dark] .modal-content{border:1px solid var(--color-border);box-shadow:0 20px 50px #00000080}[data-theme=dark] .simple-table th{background:var(--color-surface-alt)}[data-theme=dark] .simple-table tbody tr:hover{background:#ffffff08}[data-theme=dark] .primary-button{background:var(--color-primary);color:#fff}[data-theme=dark] .primary-button:hover:not(:disabled){background:#2563eb}[data-theme=dark] .ghost-button{border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .ghost-button:hover:not(:disabled){background:var(--color-surface-alt);border-color:var(--color-muted)}[data-theme=dark] .oidc-provider-button{background:var(--color-surface-alt);border-color:var(--color-border)}[data-theme=dark] .oidc-provider-button:hover:not(:disabled){background:var(--color-surface);border-color:var(--color-primary)}[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background:var(--color-bg);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] input:focus,[data-theme=dark] select:focus,[data-theme=dark] textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f626}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:var(--color-muted)}[data-theme=dark] .sidebar-nav a.active{background:#3b82f626}[data-theme=dark] select option{background:var(--color-surface);color:var(--color-text)}[data-theme=dark] input[type=date],[data-theme=dark] input[type=datetime-local]{background:var(--color-surface-alt);border-color:#3a3a3a;color-scheme:dark}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.9)}[data-theme=dark] code{background:#ffffff14;color:#e879f9}[data-theme=dark] pre{background:var(--color-bg);border:1px solid var(--color-border)}[data-theme=dark] ::-webkit-scrollbar{width:10px;height:10px}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--color-bg)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:5px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}[data-theme=dark] .planner-cell{border-color:var(--color-border)}[data-theme=dark] .planner-cell:hover{background:#ffffff08}[data-theme=dark] .status-badge.active{background:#22c55e26;color:#4ade80}[data-theme=dark] .status-badge.inactive{background:var(--color-surface-alt);color:var(--color-muted)}[data-theme=dark] .oidc-provider-card{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .oidc-provider-card.new-provider{background:#3b82f614;border-color:var(--color-primary)}[data-theme=dark] .provider-id,[data-theme=dark] .provider-details code,[data-theme=dark] .provider-form input{background:var(--color-bg)}[data-theme=dark] .env-hint{background:#3b82f61a;border:1px solid rgba(59,130,246,.2)}[data-theme=dark] .env-hint pre{background:var(--color-bg)}[data-theme=dark] .segmented-nav{box-shadow:inset 0 1px 4px #0000004d}[data-theme=dark] .modal{box-shadow:0 20px 60px #0009;border:1px solid var(--color-border)}[data-theme=dark] .toast{box-shadow:0 10px 30px #00000080}[data-theme=dark] .toast.success{background:#16a34a}[data-theme=dark] .toast.error{background:#dc2626}[data-theme=dark] input[type=checkbox]{accent-color:var(--color-primary)}[data-theme=dark] :focus-visible{outline-color:var(--color-focus)}.page-header-card{background:var(--color-surface);border-radius:1rem;padding:1.5rem;box-shadow:var(--color-card-shadow);display:flex;flex-wrap:wrap;align-items:center;gap:1.5rem}.page-header-card.page-header-card--compact{padding:1rem 1.25rem;gap:1rem}.page-header-card.page-header-card--compact .page-header-icon{width:48px;height:48px;border-radius:.75rem}.page-header-card.page-header-card--compact .page-header-text h1{font-size:1.35rem}.page-header-card.page-header-card--compact .page-header-text .muted{max-width:420px}.page-header-card.page-header-card--compact .page-header-stats{gap:.5rem}.page-header-card.page-header-card--compact .stat-pill{padding:.3rem .65rem;font-size:.8rem}@media (max-width: 720px){.page-header-card.page-header-card--compact{flex-direction:column;align-items:stretch;gap:.85rem}.page-header-card.page-header-card--compact .page-header-content{width:100%;gap:.75rem}.page-header-card.page-header-card--compact .page-header-icon{width:44px;height:44px}.page-header-card.page-header-card--compact .page-header-text h1{font-size:1.15rem}.page-header-card.page-header-card--compact .page-header-text .muted{display:none}.page-header-card.page-header-card--compact .page-header-stats{width:100%;order:3;overflow-x:auto;padding-bottom:.25rem}.page-header-card.page-header-card--compact .stat-pill{flex-shrink:0}.page-header-card.page-header-card--compact .primary-button,.page-header-card.page-header-card--compact .ghost-button,.page-header-card.page-header-card--compact .secondary-button{width:100%;justify-content:center}}.page-header-content{display:flex;align-items:center;gap:1rem;flex:1;min-width:240px}.page-header-icon{width:56px;height:56px;border-radius:.875rem;background:linear-gradient(135deg,var(--color-primary),#0ea5e9);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.page-header-text h1{margin:0;font-size:1.5rem;font-weight:700}.page-header-text .muted{margin:.25rem 0 0}.page-header-stats{display:flex;gap:.75rem;flex-wrap:wrap}.stat-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.4rem .75rem;border-radius:999px;background:var(--color-success-bg);color:var(--color-success-text);font-size:.85rem;font-weight:500}.stat-pill.muted{background:var(--color-surface-alt);color:var(--color-muted)}.page-header-card .primary-button{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-weight:600}.stations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.station-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:.875rem;padding:1.25rem;transition:all .15s ease;box-shadow:var(--color-card-shadow)}.station-card:hover{border-color:var(--color-primary);box-shadow:0 4px 20px #2563eb1a}.station-card.inactive{opacity:.65;background:var(--color-surface-alt)}.station-card-header{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem}.station-card-icon{width:40px;height:40px;border-radius:.6rem;background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.station-card-title{flex:1;min-width:0}.station-card-title h3{margin:0;font-size:1.1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.station-card-meta{display:flex;align-items:center;gap:.3rem;color:var(--color-muted);font-size:.85rem;margin-top:.25rem}.station-card-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.station-card-actions .ghost-button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:.5rem;font-size:.85rem}.ghost-button.success{color:var(--color-success-text)}.ghost-button.success:hover{background:var(--color-success-bg)}.ghost-button.danger{color:var(--color-danger-text)}.ghost-button.danger:hover{background:var(--color-danger-bg)}.empty-state-card{background:var(--color-surface);border:2px dashed var(--color-border);border-radius:1rem;padding:3rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem}.empty-state-icon{width:80px;height:80px;border-radius:50%;background:var(--color-surface-alt);display:flex;align-items:center;justify-content:center;color:var(--color-muted)}.empty-state-card h3{margin:0;font-size:1.2rem}.empty-state-card .muted{max-width:320px}.empty-state-card .primary-button{margin-top:.5rem;display:inline-flex;align-items:center;gap:.5rem}.modal-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem}.modal-header-icon{width:44px;height:44px;border-radius:.6rem;background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.modal-header h3{margin:0;font-size:1.25rem}.modal-body{display:flex;flex-direction:column;gap:1rem}.modal-body label{display:flex;flex-direction:column;gap:.35rem}.modal-body label span{font-weight:600;font-size:.9rem}.modal-body input{padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface-alt)}.modal-body input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-primary-soft)}.modal-body .hint{font-size:.8rem;color:var(--color-muted);margin-top:.25rem}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--color-border)}.employees-filter-bar{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.search-input-wrapper{position:relative;flex:1;min-width:200px;max-width:320px}.search-input-wrapper .search-icon{position:absolute;left:.75rem;top:50%;transform:translateY(-50%);color:var(--color-muted);pointer-events:none}.search-input-wrapper input{width:100%;padding:.6rem .75rem .6rem 2.5rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface-alt)}.search-input-wrapper input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px var(--color-primary-soft)}.filter-select-group{display:flex;gap:.5rem;flex-wrap:wrap}.filter-select{position:relative;display:inline-flex;align-items:center}.filter-select svg{position:absolute;left:.6rem;pointer-events:none;color:var(--color-muted)}.filter-select select{padding:.5rem 1.5rem .5rem 2rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface-alt);font-size:.9rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.filter-select:after{content:"";position:absolute;right:.5rem;top:50%;transform:translateY(-50%);width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--color-muted);pointer-events:none}.clear-filters{display:inline-flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--color-muted)}.employees-result-info{display:flex;align-items:center;gap:.5rem;padding:.75rem 0;font-size:.9rem}.result-count{font-weight:600}.employees-table{width:100%;border-collapse:collapse}.employees-table th{text-align:left;padding:.75rem .5rem;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-muted);border-bottom:2px solid var(--color-border)}.employees-table td{padding:.75rem .5rem;border-bottom:1px solid var(--color-border);vertical-align:middle}.employees-table tbody tr:hover{background:var(--color-surface-alt)}.employees-table .active-row{background:var(--color-primary-soft)}.user-cell{display:flex;align-items:center;gap:.75rem}.user-avatar,.detail-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),#0ea5e9);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;flex-shrink:0}.detail-avatar{width:52px;height:52px;font-size:1.2rem}.user-name{font-weight:500}.role-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:999px;font-size:.8rem;font-weight:500}.role-badge.role-admin{background:#fef3c7;color:#92400e}.role-badge.role-planner{background:#dbeafe;color:#1e40af}.role-badge.role-employee{background:var(--color-surface-alt);color:var(--color-text)}[data-theme=dark] .role-badge.role-admin{background:#fbbf2426;color:#fbbf24}[data-theme=dark] .role-badge.role-planner{background:#3b82f626;color:#60a5fa}[data-theme=dark] .role-badge.role-employee{background:var(--color-surface-alt);color:var(--color-muted)}.station-pills{display:flex;flex-wrap:wrap;gap:.3rem}.station-pill{padding:.2rem .5rem;border-radius:.35rem;background:var(--color-surface-alt);font-size:.8rem;white-space:nowrap}.station-pill.more{background:var(--color-primary-soft);color:var(--color-primary);font-weight:500}.numeric-cell{font-variant-numeric:tabular-nums;text-align:right;color:var(--color-muted)}.empty-table-cell{padding:3rem 1rem!important}.empty-table-message{display:flex;flex-direction:column;align-items:center;gap:.75rem;color:var(--color-muted)}.empty-table-message p{margin:0}.detail-modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap;padding-bottom:1rem;border-bottom:1px solid var(--color-border);margin-bottom:1rem}.detail-modal-user{display:flex;align-items:center;gap:1rem}.detail-user-info h2{margin:0 0 .35rem;font-size:1.35rem}.detail-user-meta{display:flex;align-items:center;gap:.5rem}.status-badge.small{font-size:.75rem;padding:.15rem .5rem}.detail-modal-actions{display:flex;align-items:center;gap:.5rem}.detail-modal-actions select{padding:.4rem .6rem;border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface-alt);font-size:.9rem}.detail-tabs{display:flex;gap:.25rem;border-bottom:1px solid var(--color-border);margin-bottom:1.25rem;overflow-x:auto;padding-bottom:2px}.detail-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.6rem 1rem;border:none;background:transparent;color:var(--color-muted);font-size:.9rem;font-weight:500;cursor:pointer;border-radius:.5rem .5rem 0 0;white-space:nowrap;transition:all .15s ease}.detail-tab:hover{color:var(--color-text);background:var(--color-surface-alt)}.detail-tab.active{color:var(--color-primary);background:var(--color-primary-soft);border-bottom:2px solid var(--color-primary);margin-bottom:-2px}[data-theme=dark] .page-header-card{border:1px solid var(--color-border)}[data-theme=dark] .station-card{background:var(--color-surface)}[data-theme=dark] .station-card:hover{border-color:var(--color-primary);box-shadow:0 4px 20px #3b82f626}[data-theme=dark] .station-card.inactive{background:var(--color-bg)}[data-theme=dark] .empty-state-card{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .empty-state-icon{background:var(--color-bg)}[data-theme=dark] .employees-table tbody tr:hover{background:#ffffff08}[data-theme=dark] .user-avatar,[data-theme=dark] .detail-avatar{background:linear-gradient(135deg,#3b82f6,#0ea5e9)}[data-theme=dark] .station-pill{background:var(--color-bg)}[data-theme=dark] .station-pill.more{background:#3b82f633}[data-theme=dark] .detail-tab:hover{background:#ffffff0d}[data-theme=dark] .detail-tab.active{background:#3b82f626}[data-theme=dark] .search-input-wrapper input,[data-theme=dark] .filter-select select,[data-theme=dark] .modal-body input{background:var(--color-bg)}.form-row-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.form-section{padding-top:.75rem}.form-section .section-label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.5rem}.local-account-section{background:var(--color-surface-alt);padding:1rem;border-radius:.5rem;border:1px solid var(--color-border)}.stations-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.5rem}.modal-body .checkbox-item{display:flex;align-items:center;gap:.5rem}.modal-body .checkbox-item span{font-weight:400}.modal-body select{padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface-alt);width:100%}.modal-footer .primary-button{display:inline-flex;align-items:center;gap:.4rem}[data-theme=dark] .local-account-section,[data-theme=dark] .modal-body select{background:var(--color-bg)}.planner-week-card,.planner-version-card{border:1px solid var(--color-border);background:var(--color-surface);min-height:auto;padding:1rem 1.25rem}.slim-label{display:inline-flex;align-items:center;gap:.35rem;color:var(--color-muted);font-size:.85rem}.slim-info strong{font-size:1.25rem}.version-active{color:var(--color-success-text)}.version-draft{color:var(--color-muted)}.planner-nav-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface-alt);color:var(--color-text);cursor:pointer;transition:all .15s ease}.planner-nav-btn:hover{background:var(--color-primary-soft);border-color:var(--color-primary);color:var(--color-primary)}.planner-action-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem}[data-theme=dark] .planner-week-card,[data-theme=dark] .planner-version-card{background:var(--color-surface);border-color:var(--color-border)}[data-theme=dark] .planner-nav-btn{background:var(--color-bg);border-color:var(--color-border)}[data-theme=dark] .planner-nav-btn:hover{background:#3b82f626;border-color:var(--color-primary);color:var(--color-primary)}[data-theme=dark] .version-active{color:#4ade80}.tab-content-profil{display:flex;flex-direction:column;gap:1.5rem}.profil-grid{display:grid;grid-template-columns:1fr 280px;gap:1.5rem}@media (max-width: 720px){.profil-grid{grid-template-columns:1fr}}.profil-section{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem;padding:1.25rem}.section-title{display:flex;align-items:center;gap:.5rem;margin:0 0 1rem;font-size:.95rem;font-weight:600;color:var(--color-text)}.profil-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.form-field{display:flex;flex-direction:column;gap:.35rem}.field-label{font-size:.85rem;font-weight:500;color:var(--color-muted)}.form-field input,.form-field select{padding:.6rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);font-size:.95rem}.input-with-suffix{display:flex;align-items:center}.input-with-suffix input{border-radius:.5rem 0 0 .5rem;flex:1}.input-suffix{padding:.6rem .75rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-left:none;border-radius:0 .5rem .5rem 0;color:var(--color-muted);font-size:.9rem}.profil-actions{margin-top:.5rem}.profil-sidebar{display:flex;flex-direction:column;gap:1rem}.profil-quick-stats{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem;padding:1rem}.hours-progress{margin-top:.75rem}.hours-progress-header{display:flex;justify-content:space-between;font-size:.9rem;margin-bottom:.5rem}.hours-progress-bar{height:8px;background:var(--color-border);border-radius:4px;overflow:hidden}.hours-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),#0ea5e9);border-radius:4px;transition:width .3s ease}.profil-info-cards{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.info-card{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.6rem}.info-card svg{color:var(--color-primary)}.info-card div{display:flex;flex-direction:column}.info-value{font-size:1.25rem;font-weight:700;line-height:1.2}.info-label{font-size:.75rem;color:var(--color-muted);text-transform:uppercase;letter-spacing:.03em}.tab-content-stationen{display:flex;flex-direction:column;gap:1.25rem}.tab-intro{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:.75rem}.station-summary{display:flex;align-items:center;gap:.5rem}.summary-count{font-size:1.5rem;font-weight:700;color:var(--color-primary)}.station-selection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.75rem}.station-select-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--color-border);border-radius:.75rem;background:var(--color-surface);cursor:pointer;transition:all .15s ease;position:relative}.station-select-card:hover,.station-select-card.selected{border-color:var(--color-primary);background:var(--color-primary-soft)}.station-select-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--color-surface-alt);color:var(--color-muted);transition:all .15s ease}.station-select-card.selected .station-select-icon{background:var(--color-primary);color:#fff}.station-select-name{font-weight:500;text-align:center}.station-select-check{position:absolute;top:.5rem;right:.5rem;width:22px;height:22px;border-radius:50%;border:2px solid var(--color-border);background:var(--color-surface);display:flex;align-items:center;justify-content:center}.station-select-check.checked{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.inactive-stations-note{text-align:center;padding:.5rem}.tab-actions{display:flex;justify-content:flex-end;padding-top:.75rem;border-top:1px solid var(--color-border)}.tab-content-stunden{display:flex;flex-direction:column;gap:1.5rem}.stunden-header{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem;padding:1rem}.stunden-filter-row{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end}.stunden-filter{display:flex;flex-direction:column;gap:.35rem}.stunden-filter span{display:flex;align-items:center;gap:.35rem;font-size:.85rem;color:var(--color-muted)}.stunden-filter input{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface)}.stunden-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}.stunden-card{background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.875rem;overflow:hidden}.stunden-card-header{display:flex;align-items:center;gap:.75rem;padding:1rem;border-bottom:1px solid var(--color-border)}.stunden-card-icon{width:40px;height:40px;border-radius:.5rem;display:flex;align-items:center;justify-content:center;color:#fff}.stunden-card-icon.week{background:linear-gradient(135deg,var(--color-primary),#0ea5e9)}.stunden-card-icon.month{background:linear-gradient(135deg,#8b5cf6,#a855f7)}.stunden-card-title{display:flex;flex-direction:column}.stunden-card-title strong{font-size:1rem}.stunden-card-body{padding:1rem}.stunden-value{font-size:2rem;font-weight:700;margin-bottom:.75rem}.stunden-progress{margin-bottom:.5rem}.stunden-progress-bar{height:8px;background:var(--color-border);border-radius:4px;overflow:hidden}.stunden-progress-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),#0ea5e9);border-radius:4px}.stunden-progress-labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--color-muted);margin-top:.35rem}.stunden-comparison{font-size:.85rem}.stunden-unknown{margin-top:.5rem;padding:.5rem;background:var(--color-warning-bg);color:var(--color-warning-text);border-radius:.35rem;font-size:.85rem}.tab-content-abwesenheit{display:flex;flex-direction:column;gap:1.25rem}.absence-stats-row{display:flex;gap:1rem;flex-wrap:wrap}.absence-stat{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.6rem}.absence-stat svg{color:var(--color-primary)}.absence-stat.pending svg{color:var(--color-warning-text)}.absence-stat div{display:flex;flex-direction:column}.absence-stat .stat-value{font-size:1.25rem;font-weight:700;line-height:1.2}.absence-stat .stat-label{font-size:.75rem;color:var(--color-muted)}.absence-tabs{display:flex;gap:.5rem;background:var(--color-surface-alt);padding:.35rem;border-radius:.6rem;width:fit-content}.absence-tab{display:inline-flex;align-items:center;gap:.4rem;padding:.5rem 1rem;border:none;background:transparent;border-radius:.4rem;font-size:.9rem;font-weight:500;color:var(--color-muted);cursor:pointer;transition:all .15s ease}.absence-tab:hover{color:var(--color-text)}.absence-tab.active{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--color-card-shadow)}.absence-content{display:flex;flex-direction:column;gap:1rem}.absence-filter select{padding:.5rem .75rem;border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface-alt);font-size:.9rem}.absence-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;color:var(--color-muted)}.absence-list{display:flex;flex-direction:column;gap:.75rem}.absence-card{display:flex;align-items:center;gap:1rem;padding:.875rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.6rem;transition:all .15s ease}.absence-card:hover{border-color:var(--color-primary)}.absence-card.cancelled{opacity:.6}.absence-card-date{display:flex;flex-direction:column;align-items:center;min-width:50px;padding-right:1rem;border-right:1px solid var(--color-border)}.absence-card-date .date-day{font-size:1.25rem;font-weight:700;line-height:1.2}.absence-card-date .date-month{font-size:.75rem;color:var(--color-muted);text-transform:uppercase}.absence-card-date.range{flex-direction:row;align-items:center;gap:.35rem;min-width:auto;flex-wrap:wrap}.absence-card-date.range .date-range-start,.absence-card-date.range .date-range-end{font-weight:600}.absence-card-date.range .date-days{font-size:.75rem;color:var(--color-muted);background:var(--color-surface);padding:.15rem .4rem;border-radius:.25rem}.absence-card-content{flex:1;display:flex;flex-direction:column;gap:.35rem;min-width:0}.absence-card-reason{font-weight:500}.absence-card-actions{display:flex;gap:.5rem}.ghost-button.icon-only{padding:.4rem}.ghost-button.small,.primary-button.small{padding:.35rem .65rem;font-size:.85rem}.ghost-button.small,.primary-button.small{display:inline-flex;align-items:center;gap:.35rem}.tab-content-schichten{display:flex;flex-direction:column;gap:1.5rem}.schichten-stats{display:flex;gap:1rem}.schicht-stat{display:flex;align-items:center;gap:.6rem;padding:.75rem 1rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.6rem}.schicht-stat.upcoming svg{color:var(--color-primary)}.schicht-stat.past svg{color:var(--color-muted)}.schicht-stat .stat-value{font-size:1.25rem;font-weight:700}.schicht-stat .stat-label{font-size:.85rem;color:var(--color-muted)}.schichten-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem}.schichten-column{display:flex;flex-direction:column;gap:.75rem}.schichten-column-header{display:flex;align-items:center;gap:.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--color-border)}.schichten-column-header h4{margin:0;font-size:.95rem}.schichten-column-header svg{color:var(--color-primary)}.schichten-column.past .schichten-column-header svg{color:var(--color-muted)}.schichten-empty{padding:1.5rem;text-align:center;background:var(--color-surface-alt);border-radius:.5rem}.schichten-list{display:flex;flex-direction:column;gap:.5rem}.schicht-card{display:flex;align-items:center;gap:.875rem;padding:.75rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.5rem;transition:all .15s ease}.schicht-card:hover{border-color:var(--color-primary)}.schicht-card.today{border-color:var(--color-primary);background:var(--color-primary-soft)}.schicht-card.past{opacity:.7}.schicht-date{display:flex;flex-direction:column;align-items:center;min-width:48px}.schicht-date .date-weekday{font-size:.7rem;text-transform:uppercase;color:var(--color-muted)}.schicht-date .date-full{font-weight:600}.schicht-date .today-badge{font-size:.65rem;padding:.1rem .3rem;background:var(--color-primary);color:#fff;border-radius:.2rem;margin-top:.2rem}.schicht-details{flex:1;display:flex;flex-direction:column;gap:.2rem}.schicht-station,.schicht-time{display:flex;align-items:center;gap:.35rem;font-size:.9rem}.schicht-station{font-weight:500}.schicht-time{color:var(--color-muted)}.schichten-more{text-align:center;padding:.5rem;color:var(--color-muted);font-size:.85rem}.schichten-override-card{margin-top:1rem}.schichten-override-card .schichten-column-header{display:flex;align-items:flex-start;gap:.75rem;padding-bottom:.75rem;margin-bottom:.75rem;border-bottom:1px solid var(--color-border)}.schichten-override-card .schichten-column-header svg{color:var(--color-primary);flex-shrink:0;margin-top:.15rem}.schichten-override-card .schichten-column-header h4{margin:0 0 .15rem;font-size:.95rem}.schichten-override-card .schichten-column-header .muted{font-size:.75rem}.actual-shifts-list{display:flex;flex-direction:column;gap:.35rem}.actual-shift-row{border:1px solid var(--color-border);border-radius:.5rem;background:var(--color-surface);overflow:hidden;transition:all .15s ease}.actual-shift-row.recorded{border-left:3px solid var(--color-success)}.actual-shift-row.pending{border-left:3px solid var(--color-warning)}.actual-shift-row.expanded{background:var(--color-surface-alt)}.actual-shift-header{display:flex;align-items:center;gap:.5rem;padding:.5rem .65rem;cursor:pointer;-webkit-user-select:none;user-select:none}.actual-shift-header:hover{background:var(--color-surface-alt)}.actual-shift-status{flex-shrink:0;display:flex;align-items:center}.actual-shift-status .status-done{color:var(--color-success)}.actual-shift-status .status-pending{color:var(--color-warning)}.actual-shift-info{flex:1;display:flex;align-items:center;gap:.5rem;min-width:0;font-size:.8rem}.actual-shift-date{font-weight:600;color:var(--color-text);white-space:nowrap}.actual-shift-station{color:var(--color-muted);padding:.1rem .4rem;background:var(--color-surface-alt);border-radius:.25rem;font-size:.7rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.actual-shift-planned{color:var(--color-muted);white-space:nowrap}.actual-shift-recorded{color:var(--color-success);font-weight:600;white-space:nowrap}.actual-shift-toggle{flex-shrink:0;color:var(--color-muted);display:flex;align-items:center}.actual-shift-edit{display:flex;align-items:center;gap:.75rem;padding:.5rem .65rem .65rem;padding-left:calc(1.15rem + 16px);border-top:1px solid var(--color-border);background:var(--color-surface-alt)}.actual-time-inputs{display:flex;align-items:center;gap:.35rem;flex:1}.actual-time-inputs input[type=time]{width:100%;max-width:110px;padding:.4rem .5rem;border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface);font-size:.85rem;font-weight:500;color:var(--color-text)}.actual-time-inputs input[type=time]:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #2563eb1a}.time-separator{color:var(--color-muted);font-size:.85rem}.actual-shift-actions{display:flex;gap:.35rem;flex-shrink:0}.actual-shift-actions .primary-button.compact,.actual-shift-actions .ghost-button.compact{padding:.35rem .6rem;font-size:.75rem;border-radius:.35rem}@media (max-width: 480px){.actual-shift-info{flex-wrap:wrap;gap:.25rem .5rem}.actual-shift-station{max-width:60px}.actual-shift-edit{flex-direction:column;align-items:stretch;gap:.5rem;padding-left:.65rem}.actual-time-inputs{justify-content:center}.actual-time-inputs input[type=time]{max-width:none;flex:1}.actual-shift-actions{justify-content:flex-end}}.all-shifts-card{margin-top:1rem;display:flex;flex-direction:column;gap:1rem}.all-shifts-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.all-shifts-title{display:flex;align-items:flex-start;gap:.75rem}.all-shifts-title svg{color:var(--color-primary);flex-shrink:0;margin-top:.15rem}.all-shifts-title h4{margin:0 0 .15rem;font-size:.95rem}.all-shifts-title .muted{font-size:.75rem}.all-shifts-controls{display:flex;flex-direction:column;gap:.75rem}.all-shifts-quick-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.all-shifts-date-range{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap}.all-shifts-date-range label{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem;font-weight:600;color:var(--color-muted)}.all-shifts-date-range input[type=date]{padding:.4rem .5rem;border:1px solid var(--color-border);border-radius:.4rem;background:var(--color-surface-alt);font-size:.85rem}.all-shifts-date-range input[type=date]:focus{outline:none;border-color:var(--color-primary)}.all-shifts-summary{display:flex;gap:1rem;padding:.5rem .75rem;background:var(--color-surface-alt);border-radius:.5rem;font-size:.8rem}.all-shifts-count{font-weight:600;color:var(--color-text)}.all-shifts-recorded{color:var(--color-success)}.all-shifts-pending{color:var(--color-warning)}.actual-shift-row.future{border-left:3px solid var(--color-muted);opacity:.7}.actual-shift-row.future .actual-shift-status .status-future{color:var(--color-muted)}@media (max-width: 600px){.all-shifts-date-range{flex-direction:column;align-items:stretch}.all-shifts-date-range label{flex:1}.all-shifts-date-range input[type=date]{width:100%}}.tab-content-account{display:flex;flex-direction:column;gap:2rem}.account-section{display:flex;flex-direction:column;gap:1rem}.account-section.danger{border:1px solid var(--color-danger-bg);border-radius:.75rem;padding:1rem;background:#f8717114}.account-section-header{display:flex;align-items:flex-start;gap:.75rem}.account-section-icon{width:40px;height:40px;border-radius:.6rem;background:var(--color-primary-soft);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.account-section-icon.add{background:var(--color-success-bg);color:var(--color-success-text)}.account-section-icon.danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.account-section-header h4{margin:0 0 .15rem}.account-section-header .muted{margin:0}.account-empty{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:2rem;background:var(--color-surface-alt);border:1px dashed var(--color-border);border-radius:.75rem;color:var(--color-muted);text-align:center}.account-empty.small{padding:1.25rem}.account-empty p{margin:0;font-weight:500;color:var(--color-text)}.danger-note{font-size:.9rem;color:var(--color-danger-text);margin:0}.danger-actions{display:flex;justify-content:flex-end}.identity-list{display:flex;flex-direction:column;gap:.75rem}.identity-card{display:flex;gap:1rem;padding:1rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem;transition:all .15s ease}.identity-card:hover{border-color:var(--color-primary)}.identity-card-icon{width:44px;height:44px;border-radius:.6rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.identity-card.local .identity-card-icon{background:linear-gradient(135deg,#64748b,#475569);color:#fff}.identity-card.oidc .identity-card-icon{background:linear-gradient(135deg,var(--color-primary),#0ea5e9);color:#fff}.identity-card-content{flex:1;min-width:0}.identity-card-header{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.identity-card-header strong{font-size:1rem}.provider-badge{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;padding:.15rem .4rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.25rem;color:var(--color-muted)}.identity-card-details{display:flex;flex-direction:column;gap:.25rem;margin-top:.5rem}.identity-detail{display:flex;align-items:center;gap:.4rem;font-size:.85rem;color:var(--color-muted)}.identity-detail code{font-size:.8rem;padding:.1rem .3rem;background:var(--color-surface);border-radius:.2rem}.identity-card-meta{margin-top:.5rem;font-size:.8rem;color:var(--color-muted)}.identity-card-actions{display:flex;flex-direction:column;justify-content:center;gap:.5rem}.link-identity-form{display:flex;flex-direction:column;gap:1rem;padding:1.25rem;background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:.75rem}.form-grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem}.form-hint{display:flex;align-items:flex-start;gap:.5rem;padding:.75rem;background:var(--color-info-bg);color:var(--color-info-text);border-radius:.5rem;font-size:.85rem}.form-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:var(--color-danger-bg);color:var(--color-danger-text);border-radius:.5rem;font-size:.9rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem}.form-actions .primary-button{display:inline-flex;align-items:center;gap:.4rem}.password-reset-form{display:flex;flex-direction:column;gap:.5rem;padding:.75rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:.5rem;min-width:200px}.password-reset-form input[type=password]{padding:.4rem .6rem;border:1px solid var(--color-border);border-radius:.35rem;font-size:.9rem}.checkbox-compact{display:flex;align-items:center;gap:.4rem;font-size:.85rem}.checkbox-compact span{color:var(--color-muted)}.password-reset-actions{display:flex;gap:.5rem;margin-top:.25rem}[data-theme=dark] .profil-section,[data-theme=dark] .stunden-header,[data-theme=dark] .stunden-card,[data-theme=dark] .absence-stat,[data-theme=dark] .schicht-stat,[data-theme=dark] .absence-card,[data-theme=dark] .schicht-card,[data-theme=dark] .identity-card,[data-theme=dark] .link-identity-form,[data-theme=dark] .station-select-card{background:var(--color-surface)}[data-theme=dark] .station-select-card:hover,[data-theme=dark] .station-select-card.selected{background:#3b82f61a}[data-theme=dark] .absence-tabs{background:var(--color-bg)}[data-theme=dark] .absence-tab.active{background:var(--color-surface)}[data-theme=dark] .schichten-empty,[data-theme=dark] .account-empty,[data-theme=dark] .provider-badge,[data-theme=dark] .password-reset-form{background:var(--color-bg)}[data-theme=dark] .info-card,[data-theme=dark] .profil-quick-stats{background:var(--color-surface)}.pdf-export-modal{width:min(440px,90vw)}.pdf-export-modal .modal-header{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border)}.pdf-export-modal .modal-header h3{display:flex;align-items:center;gap:.5rem}.pdf-export-description{margin:0 0 1rem;color:var(--color-muted);font-size:.95rem}.pdf-export-options{display:flex;flex-direction:column;gap:.75rem}.pdf-export-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem;background:var(--color-surface-alt);border:2px solid var(--color-border);border-radius:.75rem;cursor:pointer;transition:all .15s ease;text-align:center}.pdf-export-option:hover{border-color:var(--color-primary);background:var(--color-primary-soft)}.pdf-export-option:hover svg{color:var(--color-primary)}.pdf-export-option svg{color:var(--color-muted);transition:color .15s ease}.pdf-option-title{font-weight:600;font-size:1rem;color:var(--color-text)}.pdf-option-desc{font-size:.85rem;color:var(--color-muted);line-height:1.4}[data-theme=dark] .pdf-export-option{background:var(--color-bg)}[data-theme=dark] .pdf-export-option:hover{background:#3b82f61a}
