:root{--color-primary: #1D4E89;--color-primary-light: #2c5f9e;--color-primary-dark: #153a66;--color-accent: #00B4D8;--color-accent-light: #33c3e0;--color-accent-dark: #0090ad;--gradient-main: linear-gradient(135deg, #f0f7f9 0%, #e0f2f7 50%, #f0f7f9 100%);--gradient-header: linear-gradient(135deg, #e0f2f7 0%, #ffffff 100%);--gradient-card: linear-gradient(135deg, rgba(255,255,255,.9) 0%, rgba(248,254,255,.95) 100%);--gradient-sidebar: linear-gradient(180deg, #1D4E89 0%, #153a66 100%);--gradient-accent: linear-gradient(135deg, #00B4D8 0%, #33c3e0 100%);--color-success: #22c55e;--color-success-bg: #dcfce7;--color-warning: #f59e0b;--color-warning-bg: #fef3c7;--color-error: #ef4444;--color-error-bg: #fee2e2;--color-info: #3b82f6;--color-info-bg: #dbeafe;--color-white: #ffffff;--color-bg: #f0f5f2;--color-surface: #ffffff;--color-surface-trans: rgba(255, 255, 255, .7);--color-surface-hover: #f8faf9;--color-border: #e2e8e4;--color-border-light: #f0f3f1;--color-text: #1a2e26;--color-text-secondary: #5a7a6e;--color-text-tertiary: #8aa098;--color-text-inverse: #ffffff;--color-star: #f59e0b;--color-star-empty: #d1d5db;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .6875rem;--font-size-sm: .8125rem;--font-size-base: .9375rem;--font-size-md: 1.0625rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 1.875rem;--font-size-3xl: 2.25rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: .375rem;--radius-md: .625rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .08);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .12);--shadow-card: 0 2px 8px rgba(0, 40, 20, .06);--shadow-card-hover: 0 8px 24px rgba(0, 40, 20, .1);--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--topbar-height: 64px;--content-max-width: 1200px;--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px)}[data-theme=dark]{--color-primary: #38bdf8;--color-primary-light: #7dd3fc;--color-primary-dark: #0284c7;--color-accent: #22d3ee;--gradient-main: linear-gradient(135deg, #020617 0%, #0f172a 100%);--gradient-header: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);--gradient-card: linear-gradient(135deg, rgba(30,41,59,.9) 0%, rgba(15,23,42,.95) 100%);--gradient-sidebar: linear-gradient(180deg, #0f172a 0%, #020617 100%);--color-bg: #0f172a;--color-surface-trans: rgba(30, 41, 59, .7);--color-surface: #1e293b;--color-surface-hover: #334155;--color-border: #334155;--color-border-light: #1e293b;--color-text: #f8fafc;--color-text-secondary: #94a3b8;--color-text-tertiary: #64748b;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 12px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .5);--shadow-xl: 0 12px 40px rgba(0, 0, 0, .6);--shadow-card: 0 2px 8px rgba(0, 0, 0, .3);--shadow-card-hover: 0 8px 24px rgba(0, 0, 0, .5)}.app-logo{border-radius:16px;overflow:hidden;background-color:var(--color-white);padding:4px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-family);font-size:var(--font-size-base);color:var(--color-text);background:var(--color-bg);line-height:1.6;overflow-x:hidden;min-height:100vh}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--gradient-main);display:flex;align-items:center;justify-content:center;padding-top:var(--safe-area-top)}.loading-content{text-align:center}.loading-logo{width:72px;height:72px;border-radius:var(--radius-xl);background:var(--gradient-accent);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-4);box-shadow:var(--shadow-lg)}.loading-logo .material-icons-round{font-size:36px;color:#fff}.loading-content h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-primary);margin-bottom:var(--space-6)}.loading-spinner{width:36px;height:36px;border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.auth-container{min-height:100vh;background:var(--gradient-main);display:flex;align-items:center;justify-content:center;padding:var(--space-4);padding-top:calc(var(--space-4) + var(--safe-area-top))}.auth-card{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:440px;padding:var(--space-10);animation:slideUp .4s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.auth-logo{text-align:center;margin-bottom:var(--space-8)}.auth-logo .material-icons-round{font-size:48px;color:var(--color-accent)}.auth-logo h1{font-size:var(--font-size-xl);font-weight:700;color:var(--color-primary);margin-top:var(--space-2)}.auth-logo p{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.auth-tabs{display:flex;gap:var(--space-1);background:var(--color-bg);border-radius:var(--radius-lg);padding:4px;margin-bottom:var(--space-6)}.auth-tab{flex:1;padding:var(--space-2) var(--space-3);border:none;background:transparent;cursor:pointer;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);transition:all var(--transition-fast);font-family:var(--font-family)}.auth-tab.active{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm);font-weight:600}.auth-tab:hover:not(.active){color:var(--color-text)}.auth-footer{text-align:center;margin-top:var(--space-6);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.auth-footer a{font-weight:600}.app-shell{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);height:100vh;background:var(--gradient-sidebar);color:var(--color-text-inverse);display:flex;flex-direction:column;position:fixed;left:0;top:0;z-index:100;transition:transform var(--transition-base),width var(--transition-base);padding-top:var(--safe-area-top);padding-bottom:var(--safe-area-bottom)}.sidebar.collapsed{width:var(--sidebar-collapsed-width)!important}.sidebar.collapsed .sidebar-header h2,.sidebar.collapsed .nav-section-title,.sidebar.collapsed .user-name,.sidebar.collapsed .user-role{display:none}.sidebar.collapsed .nav-link span:not(.material-icons-round),.sidebar.collapsed .sidebar-btn-compact span:not(.material-icons-round){display:none}.sidebar.collapsed .nav-link:hover span:not(.material-icons-round),.sidebar.collapsed .sidebar-btn-compact:hover span:not(.material-icons-round){display:flex!important;position:absolute;left:calc(var(--sidebar-collapsed-width) + 8px);background:var(--color-accent);color:#fff;padding:6px 16px;border-radius:8px;font-size:13px;font-weight:600;white-space:nowrap;z-index:1000;box-shadow:0 4px 20px #0000004d;pointer-events:none;align-items:center;animation:tooltipFadeIn .2s ease forwards}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}.sidebar.collapsed .nav-link,.sidebar.collapsed .sidebar-btn-compact{justify-content:center;padding:var(--space-3) 0;gap:0}.sidebar.collapsed .sidebar-header{justify-content:center;padding:var(--space-6) 0}.sidebar.collapsed .sidebar-top-actions{padding:0 var(--space-2) var(--space-4)!important}.sidebar-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-5);border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-logo{font-size:28px;color:var(--color-accent)}.sidebar-header h2{font-size:var(--font-size-md);font-weight:700;letter-spacing:-.01em}.nav-menu{list-style:none;flex:1;padding:var(--space-4) var(--space-2);display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none}.nav-menu::-webkit-scrollbar{display:none}.sidebar-btn-compact{display:flex;align-items:center;gap:10px;padding:8px 12px;width:100%;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:#ffffff08;color:#ffffffb3;cursor:pointer;transition:all .2s;font-size:12px;font-weight:600;font-family:inherit}.sidebar-btn-compact:hover{background:#e8643a1a;border-color:var(--color-accent);color:#fff}.sidebar-btn-compact .material-icons-round{font-size:18px}.nav-groups-wrapper{display:flex;flex-direction:column;gap:var(--space-2);padding-bottom:var(--space-8)}.nav-group-items{display:flex;flex-direction:column;gap:6px}.nav-item{margin-bottom:0}.nav-link{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-md);color:#ffffffb3;background:#ffffff05;border:1px solid rgba(255,255,255,.06);transition:all var(--transition-base);cursor:pointer;font-size:13px;font-weight:500;text-decoration:none;width:100%;font-family:var(--font-family)}.nav-link:hover{color:#fff;background:#ffffff14;border-color:#ffffff26}.nav-link.active{color:#fff;background:var(--color-accent);border-color:var(--color-accent);font-weight:600;box-shadow:0 4px 15px #e8643a4d}.nav-link.active .material-icons-round{color:#fff;transform:scale(1.1)}.nav-link .material-icons-round{font-size:20px;opacity:.9;transition:transform .2s}.nav-section-title{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#ffffff40;padding:var(--space-4) var(--space-4) 4px;margin-top:4px}.sidebar-notices-container{margin-bottom:var(--space-6);border-bottom:1px solid rgba(255,255,255,.05);padding-bottom:var(--space-4)}.sidebar-notice-list{display:flex;flex-direction:column;gap:var(--space-2);padding:0 var(--space-2)}.sidebar-notice-item{display:flex;gap:var(--space-3);padding:var(--space-3);background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:var(--radius-lg);transition:all .3s ease;animation:slideIn .3s ease forwards}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.s-notice-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.s-notice-icon .material-icons-round{font-size:18px}.s-blue{background:#00b4d81a;color:#00b4d8}.s-purple{background:#9b59b61a;color:#9b59b6}.s-orange{background:#e8643a1a;color:var(--color-accent)}.s-notice-info{flex:1;min-width:0}.s-notice-title{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.s-notice-meta{font-size:11px;color:#fff6;margin-bottom:var(--space-2)}.s-notice-actions{display:flex;gap:var(--space-2)}.s-notice-btn{padding:4px 10px;border-radius:4px;border:none;font-size:10px;font-weight:600;cursor:pointer;transition:all .2s}.s-notice-btn.view{background:var(--color-accent);color:#fff}.s-notice-btn.dismiss{background:#ffffff0d;color:#fff6}.s-notice-btn:hover{filter:brightness(1.2)}.s-notice-more{text-align:center;font-size:11px;color:var(--color-accent);padding:var(--space-2);cursor:pointer;text-decoration:underline}.sidebar-footer{padding:var(--space-4) var(--space-3);border-top:1px solid rgba(255,255,255,.08)}.user-info{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-2)}.user-avatar{width:36px;height:36px;border-radius:var(--radius-full);background:var(--gradient-accent);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:700;color:#fff;flex-shrink:0}.user-name{font-size:var(--font-size-sm);font-weight:600}.user-role{font-size:var(--font-size-xs);color:#ffffff80;text-transform:capitalize}.btn-logout{width:100%;justify-content:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);color:#ffffff80}.btn-logout:hover{color:#fff;background:#ffffff0f}.main-content{flex:1;margin-left:var(--sidebar-width);min-height:100vh;background:var(--color-bg);transition:margin-left var(--transition-base);padding-bottom:var(--safe-area-bottom)}.main-content.expanded{margin-left:var(--sidebar-collapsed-width)}.top-bar{height:calc(var(--topbar-height) + var(--safe-area-top));display:flex;align-items:center;gap:var(--space-4);padding:var(--safe-area-top) var(--space-8) 0;background:var(--color-surface-trans);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border-light);position:sticky;top:0;z-index:50}.menu-toggle{display:flex}.page-title{font-size:var(--font-size-lg);font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding-right:var(--space-2)}.top-bar-actions{display:flex;gap:var(--space-2);align-items:center;margin-left:auto}.view-container{padding:var(--space-8);padding-bottom:calc(var(--space-8) + var(--safe-area-bottom));max-width:var(--content-max-width);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.card{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--space-6);transition:box-shadow var(--transition-fast);border:1px solid var(--color-border-light)}.card:hover{box-shadow:var(--shadow-card-hover)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.card-title{font-size:var(--font-size-md);font-weight:700;color:var(--color-primary)}.card-subtitle{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,320px));justify-content:center;gap:var(--space-6);margin-bottom:var(--space-8)}.practice-stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.stat-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-card);display:flex;align-items:center;gap:var(--space-4);border:1px solid var(--color-border-light);transition:all var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon .material-icons-round{font-size:24px}.stat-icon.green{background:var(--color-success-bg);color:var(--color-success)}.stat-icon.orange{background:#fff3e0;color:var(--color-accent)}.stat-icon.blue{background:var(--color-info-bg);color:var(--color-info)}.stat-icon.red{background:var(--color-error-bg);color:var(--color-error)}.stat-icon.purple{background:#f3e8ff;color:#8b5cf6}.stat-value{font-size:var(--font-size-2xl);font-weight:800;color:var(--color-primary);line-height:1}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-1)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:var(--radius-md);border:none;cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-sm);font-weight:600;transition:all var(--transition-fast);text-decoration:none;line-height:1.4}.btn:hover{text-decoration:none}.btn .material-icons-round{font-size:18px}.btn-primary{background:var(--gradient-accent);color:#fff;box-shadow:0 2px 8px #e8643a4d}.btn-primary:hover{box-shadow:0 4px 16px #e8643a66;transform:translateY(-1px)}.btn-secondary{background:var(--color-bg);color:var(--color-primary);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-surface-hover);border-color:var(--color-primary)}.btn-ghost{background:transparent;color:var(--color-text-secondary)}.btn-ghost:hover{background:var(--color-bg);color:var(--color-text)}.btn-danger{background:var(--color-error);color:#fff}.btn-danger:hover{background:#dc2626}.btn-success{background:var(--color-success);color:#fff}.btn-lg{padding:var(--space-4) var(--space-8);font-size:var(--font-size-base)}.btn-sm{padding:var(--space-2) var(--space-3);font-size:var(--font-size-xs)}.btn-xs{padding:4px 6px;font-size:10px;min-height:24px}.btn-icon{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast)}.btn-icon:hover{background:var(--color-bg);color:var(--color-text)}.btn-block{width:100%}.clock-btn{padding:var(--space-4) var(--space-8);border-radius:var(--radius-full);border:none;cursor:pointer;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:700;color:#fff;transition:all var(--transition-base);box-shadow:var(--shadow-lg)}.clock-btn.clock-in{background:var(--gradient-accent);box-shadow:0 4px 20px #e8643a59}.clock-btn.clock-in:hover{transform:scale(1.05);box-shadow:0 6px 28px #e8643a73}.clock-btn.clock-out{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 20px #ef444459}.clock-btn.clock-out:hover{transform:scale(1.05);box-shadow:0 6px 28px #ef444473}.form-group{margin-bottom:var(--space-5)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--color-primary);margin-bottom:var(--space-2)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-family:var(--font-family);color:var(--color-text);background:var(--color-surface);transition:all var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e8643a1a}.form-input::placeholder{color:var(--color-text-tertiary)}.form-textarea{min-height:100px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.form-error{font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-1)}.form-help{font-size:var(--font-size-xs);color:var(--color-text-tertiary);margin-top:var(--space-1)}.table-container{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--color-border-light)}.table-responsive{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:var(--space-4);border-radius:var(--radius-md)}.data-table{width:100%;border-collapse:collapse;text-align:left;min-width:900px;font-size:var(--font-size-sm)}@media(max-width:1024px){.data-table{min-width:auto}}.data-table thead{background:var(--color-bg)}.data-table th{padding:var(--space-3) var(--space-4);text-align:left;font-weight:600;color:var(--color-text-secondary);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border)}.data-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border-light);color:var(--color-text);white-space:nowrap}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--color-surface-hover)}.data-table tbody tr:last-child td{border-bottom:none}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:2px var(--space-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600}.badge-success{background:var(--color-success-bg);color:#16a34a}.badge-warning{background:var(--color-warning-bg);color:#d97706}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-info{background:var(--color-info-bg);color:var(--color-info)}.badge-neutral{background:var(--color-bg);color:var(--color-text-secondary)}.badge-dot{width:6px;height:6px;border-radius:50%;display:inline-block}.badge-dot.green{background:var(--color-success)}.dashboard-header-flex{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-8);flex-wrap:wrap;gap:var(--space-4)}.greeting-text{font-size:var(--font-size-xl);font-weight:800;color:var(--color-primary);margin:0}.header-filters{background:var(--color-surface);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:var(--space-3);border:1px solid var(--color-border-light)}.filter-label{font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.filter-group-row{display:flex;align-items:center;gap:var(--space-2)}.form-input-sm{border:none;background:transparent;padding:4px 8px;font-size:var(--font-size-sm);color:var(--color-text);font-weight:600;outline:none;border-radius:var(--radius-sm)}.form-input-sm:focus{background:var(--color-bg)}.filter-separator{color:var(--color-text-tertiary);font-size:var(--font-size-xs);font-weight:600}.quick-filters{display:flex;gap:var(--space-1);margin-left:var(--space-2)}.quick-filter-btn{padding:4px 10px;font-size:11px;font-weight:700;color:var(--color-text-secondary);background:var(--color-bg);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-transform:uppercase;letter-spacing:.02em}.quick-filter-btn:hover{background:var(--color-surface);color:var(--color-accent);border-color:var(--color-accent)}.quick-filter-btn.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent);box-shadow:0 2px 4px #e8643a33}.stat-card.premium{background:linear-gradient(135deg,var(--color-primary),#2c5282);color:#fff}.stat-card.premium .stat-icon{background:#ffffff26;color:#fff}.stat-card.premium .stat-value{color:#fff}.stat-card.premium .stat-label{color:#ffffffb3}@media(max-width:600px){.dashboard-header-flex{flex-direction:column;align-items:flex-start}}.badge-dot.red{background:var(--color-error)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-start;justify-content:center;padding:var(--space-4);overflow-y:auto;animation:fadeIn .2s ease}.modal-content{background:var(--color-surface);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);width:100%;max-width:520px;margin:var(--space-8) auto calc(var(--space-8) + var(--safe-area-bottom));padding:var(--space-8);animation:slideUp .3s ease}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.modal-title{font-size:var(--font-size-lg);font-weight:700}.modal-close{width:32px;height:32px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;background:var(--color-bg);border:none;cursor:pointer;color:var(--color-text-secondary);transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-border);color:var(--color-text)}.modal-footer{display:flex;gap:var(--space-3);justify-content:flex-end;margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border-light)}.toast-container{position:fixed;top:var(--space-4);right:var(--space-4);z-index:300;display:flex;flex-direction:column;gap:var(--space-2)}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-lg);min-width:300px;max-width:420px;animation:slideInRight .3s ease;border-left:4px solid}@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}.toast.success{border-left-color:var(--color-success)}.toast.error{border-left-color:var(--color-error)}.toast.warning{border-left-color:var(--color-warning)}.toast.info{border-left-color:var(--color-info)}.toast-message{flex:1;font-size:var(--font-size-sm);font-weight:500}.toast-close{background:none;border:none;cursor:pointer;color:var(--color-text-tertiary);padding:0;font-size:18px;line-height:1}.stars{display:flex;gap:2px}.stars .material-icons-round{font-size:18px;cursor:pointer}.stars .material-icons-round.filled{color:var(--color-star)}.stars .material-icons-round.empty{color:var(--color-star-empty)}.rating-display{display:flex;align-items:center;gap:var(--space-2)}.rating-value{font-weight:700;font-size:var(--font-size-sm)}.empty-state{text-align:center;padding:var(--space-12) var(--space-8)}.empty-state .material-icons-round{font-size:64px;color:var(--color-text-tertiary);margin-bottom:var(--space-4)}.empty-state h3{font-size:var(--font-size-lg);color:var(--color-primary);margin-bottom:var(--space-2)}.empty-state p{font-size:var(--font-size-sm);color:var(--color-text-secondary);max-width:360px;margin:0 auto}.empty-state-sm{text-align:center;padding:var(--space-4);color:var(--color-text-tertiary);font-size:var(--font-size-sm);font-style:italic}.clock-section{background:var(--gradient-card);border-radius:var(--radius-2xl);padding:var(--space-8);text-align:center;border:1px solid var(--color-border-light);box-shadow:var(--shadow-card)}.clock-time{font-size:3.5rem;font-weight:800;color:var(--color-primary);font-variant-numeric:tabular-nums;line-height:1}.clock-date{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-2)}.clock-status{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--font-size-sm);font-weight:600;margin-top:var(--space-4)}.clock-status.active{background:var(--color-success-bg);color:#16a34a}.clock-status.inactive{background:var(--color-bg);color:var(--color-text-secondary)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:var(--space-5)}.upload-area{border:2px dashed var(--color-border);border-radius:var(--radius-xl);padding:var(--space-10);text-align:center;cursor:pointer;transition:all var(--transition-fast)}.upload-area:hover{border-color:var(--color-accent);background:#e8643a08}.upload-area .material-icons-round{font-size:48px;color:var(--color-text-tertiary);margin-bottom:var(--space-3)}.upload-area p{color:var(--color-text-secondary);font-size:var(--font-size-sm)}.filter-bar{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5);flex-wrap:wrap}.filter-bar .form-input,.filter-bar .form-select{max-width:220px}.search-input-wrapper{position:relative;flex:1;max-width:320px}.search-input-wrapper .material-icons-round{position:absolute;left:var(--space-3);top:50%;transform:translateY(-50%);font-size:20px;color:var(--color-text-tertiary)}.search-input-wrapper .form-input{padding-left:40px}.recent-list{list-style:none}.recent-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);transition:background var(--transition-fast);border-bottom:1px solid var(--color-border-light)}.recent-item:last-child{border-bottom:none}.recent-item:hover{background:var(--color-surface-hover)}.recent-icon{width:44px;height:44px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0}.recent-details{flex:1}.recent-title{font-weight:600;font-size:var(--font-size-sm)}.recent-subtitle{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.recent-meta{text-align:right}.shift-cards-container{display:flex;flex-direction:column;gap:var(--space-3)}.shift-card{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-fast);margin-bottom:var(--space-2)}.shift-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-sm)}.shift-card-header{padding:var(--space-4);display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--color-surface)}.shift-card-header:hover{background:var(--color-surface-hover)}.shift-card-summary{display:flex;align-items:center;gap:var(--space-4);flex:1}.shift-card-date{min-width:100px;font-weight:700;color:var(--color-primary)}.shift-card-practice{font-weight:600;flex:1}.shift-card-hours{font-size:var(--font-size-sm);color:var(--color-text-secondary);background:var(--color-bg);padding:4px 12px;border-radius:var(--radius-full)}.shift-card-toggle{color:var(--color-text-tertiary);transition:transform var(--transition-fast);margin-left:var(--space-3)}.shift-card.expanded .shift-card-toggle{transform:rotate(180deg)}.shift-card-body{padding:0 var(--space-4);max-height:0;overflow:hidden;transition:all .3s ease;background:var(--color-bg);border-top:1px solid transparent}.shift-card.expanded .shift-card-body{padding:var(--space-6) var(--space-4);max-height:800px;border-top-color:var(--color-border-light)}.shift-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-6)}.shift-detail-item{display:flex;flex-direction:column;gap:4px}.shift-detail-label{font-size:var(--font-size-xs);color:var(--color-text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.shift-detail-value{font-size:var(--font-size-base);font-weight:600;color:var(--color-primary)}.shift-card-actions{display:flex;justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border-light)}.report-card{transition:transform .2s ease,box-shadow .2s ease}.report-card:hover{transform:translateY(-4px)}.estimate-builder-table th{background:var(--color-primary)!important;color:#fff!important}.tab-bar{display:flex;gap:var(--space-1);background:var(--color-bg);border-radius:var(--radius-lg);padding:4px;margin-bottom:var(--space-6);width:fit-content}.tab-item{padding:var(--space-2) var(--space-5);border:none;background:transparent;cursor:pointer;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;color:var(--color-text-secondary);transition:all var(--transition-fast);font-family:var(--font-family)}.tab-item.active{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm);font-weight:600}@media(max-width:1024px){.sidebar{transform:translate(-100%);box-shadow:var(--shadow-xl)}.sidebar.open{transform:translate(0)}.main-content{margin-left:0}.menu-toggle{display:flex}.view-container{padding:var(--space-5)}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid-2,.grid-3,.form-row{grid-template-columns:1fr}}@media(max-width:768px){.top-bar{padding:0 var(--space-3);gap:var(--space-2)}.page-title{font-size:var(--font-size-base);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.header-user-role{display:none}.header-profile-box{gap:8px}}@media(max-width:480px){.page-title{font-size:15px;max-width:140px}.header-profile-text{display:none}.top-bar{height:56px;padding:0 var(--space-3)}.top-bar-actions{gap:4px}}@media(max-width:380px){.page-title{max-width:110px}.header-profile-box{padding:2px}}@media(max-width:768px){.data-table,.data-table thead,.data-table tbody,.data-table th,.data-table td,.data-table tr{display:block}.data-table thead tr{position:absolute;top:-9999px;left:-9999px}.data-table tr{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);margin-bottom:var(--space-4);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:var(--space-2)}.data-table td{border:none;border-bottom:1px solid var(--color-bg);position:relative;padding:var(--space-1) var(--space-2);min-height:28px;display:flex;align-items:center;text-align:left;justify-content:flex-start;white-space:normal;word-break:break-all;font-size:11px}.data-table td:last-child{border-bottom:none;padding-top:4px;padding-bottom:8px}.data-table td:before{content:attr(data-label);display:inline-block;width:60px;flex-shrink:0;margin-right:8px;font-weight:700;font-size:9px;color:var(--color-text-tertiary);text-transform:uppercase}.data-table td[data-label=User]:before,.data-table td[data-label=Email]:before,.data-table td[data-label=Actions]:before{display:none}.data-table td[data-label=User]{font-weight:700;font-size:13px;padding-top:8px;border-bottom:none}.data-table td[data-label=Email]{color:var(--color-text-secondary);font-size:10px;margin-top:-4px;width:100%;border-bottom:none}.mobile-dense-meta{display:inline-flex!important;width:auto!important;border-bottom:none!important;padding-right:var(--space-4)!important}.data-table td[data-label=Actions]{display:block;padding-top:8px;border-top:1px solid var(--color-bg);margin-top:4px;width:100%}.horizontal-actions{display:none}.user-drawer{margin-top:var(--space-2);display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.4,0,.2,1)}.user-drawer.open{grid-template-rows:1fr}}.user-card-list{display:flex;flex-direction:column;gap:var(--space-4)}.user-card{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border-light);padding:var(--space-4) var(--space-6);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.user-card:hover{border-color:var(--color-accent-light);box-shadow:var(--shadow-md);transform:translateY(-2px)}.user-card-main{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4)}.user-card-info{display:flex;align-items:center;gap:var(--space-4);flex:1}.user-card-details{display:flex;flex-direction:column}.user-card-name{font-weight:700;font-size:var(--font-size-md);color:var(--color-text);display:flex;align-items:center;gap:var(--space-2)}.user-card-email{font-size:var(--font-size-xs);color:var(--color-text-tertiary)}.user-card-meta{display:flex;align-items:center;gap:var(--space-6)}.user-meta-item{display:flex;flex-direction:column;align-items:flex-end}.user-meta-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-tertiary);font-weight:700}.user-meta-value{font-weight:600;font-size:var(--font-size-sm)}.top-bar-actions{display:flex;align-items:center;gap:var(--space-4)}.header-profile-box{display:flex;align-items:center;gap:12px;padding:4px 8px;border-radius:12px;transition:all .2s cubic-bezier(.4,0,.2,1)}.header-profile-box:hover{background:#00000008}[data-theme=dark] .header-profile-box:hover{background:#ffffff0d}.header-profile-text{text-align:right;line-height:1.2}.header-user-name{font-size:14px;font-weight:700;color:var(--color-text-primary)}.header-user-role{font-size:11px;font-weight:500;color:var(--color-text-tertiary);text-transform:capitalize}.top-bar-avatar{width:38px;height:38px;border-radius:12px;object-fit:cover;border:2px solid rgba(232,100,58,.1)}.top-bar-avatar-initials{width:38px;height:38px;border-radius:12px;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:15px}.user-card-header{padding:var(--space-3) var(--space-5);display:flex;align-items:center;justify-content:space-between;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--color-surface);transition:background var(--transition-fast)}.user-card-header:hover{background:var(--color-surface-hover)}.user-card-summary{display:flex;align-items:center;gap:var(--space-4);flex:1}.user-card-identity{display:flex;align-items:center;gap:var(--space-3);min-width:250px}.user-card-meta-inline{display:flex;align-items:center;gap:var(--space-4)}.user-card-toggle{color:var(--color-text-tertiary);transition:transform var(--transition-fast);font-size:20px}.user-card.expanded .user-card-toggle{transform:rotate(180deg)}.user-card-body{padding:0 var(--space-5);max-height:0;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);background:var(--color-bg);border-top:1px solid transparent}.user-card.expanded .user-card-body{padding:var(--space-6) var(--space-5);max-height:1000px;border-top-color:var(--color-border-light)}.performance-card{background:#fff;border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-border-light);box-shadow:var(--shadow-md);margin-bottom:var(--space-6)}.performance-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-bg)}.rating-display{display:flex;flex-direction:column;align-items:center;gap:4px}.rating-stars{display:flex;gap:2px;color:gold}.rating-number{font-size:2rem;font-weight:800;color:var(--color-primary);line-height:1}.rating-label{font-size:10px;text-transform:uppercase;color:var(--color-text-tertiary);font-weight:700}.feedback-list{display:flex;flex-direction:column;gap:var(--space-3)}.feedback-item{background:var(--color-bg);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);border-left:3px solid var(--color-accent)}.feedback-comment{font-style:italic;color:var(--color-text-secondary);line-height:1.4}.performance-excellence-card{background:linear-gradient(135deg,var(--color-surface) 0%,var(--color-bg) 100%);border-radius:var(--radius-xl);padding:var(--space-6);border:1px solid var(--color-border-light);box-shadow:var(--shadow-md);position:relative;overflow:hidden;margin-bottom:var(--space-6)}.excellence-badge{position:absolute;top:0;right:0;background:var(--color-accent);color:#fff;padding:4px 12px;border-bottom-left-radius:var(--radius-lg);font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em;box-shadow:var(--shadow-sm)}.star-rating-large{display:flex;align-items:center;gap:2px;margin:var(--space-2) 0}.star-rating-large .material-icons-round{font-size:24px;color:gold}.impact-quote{background:#fff;padding:var(--space-4);border-radius:var(--radius-lg);border-left:4px solid var(--color-success);font-style:italic;font-size:var(--font-size-sm);color:var(--color-primary);line-height:1.5;margin-top:var(--space-4);box-shadow:var(--shadow-sm)}.performance-meta-row{display:flex;justify-content:space-between;align-items:flex-end;margin-top:var(--space-4)}.excellence-stats{display:flex;gap:var(--space-4)}.exc-stat-item{display:flex;flex-direction:column}.exc-stat-label{font-size:9px;text-transform:uppercase;font-weight:700;color:var(--color-text-tertiary)}.exc-stat-value{font-size:18px;font-weight:800;color:var(--color-primary)}.feedback-meta{font-size:10px;margin-top:4px;font-weight:700;color:var(--color-text-tertiary)}@media(min-width:769px){.user-card{padding:var(--space-3) var(--space-6);margin-bottom:var(--space-2)}.user-card-email{font-size:11px}.user-card-name{font-size:15px}.user-meta-item{padding:2px 12px;border-right:1px solid var(--color-border-light)}.user-meta-item:last-of-type{border-right:none}.user-meta-label{font-size:9px;margin-bottom:1px}.user-meta-value{font-size:12px}.user-card-main{gap:var(--space-8)}}.user-card{margin-bottom:var(--space-2);border-radius:var(--radius-lg);overflow:hidden}.user-card-header{padding:10px 12px}.user-card-identity{min-width:0;flex:1}.user-card-meta-inline{gap:var(--space-2)}.user-card-meta-inline .badge{padding:2px 6px;font-size:9px}.user-rates-summary{display:none}@media(max-width:640px){.top-bar{padding:0 var(--space-4)}.view-container{padding:var(--space-4)}.auth-card{padding:var(--space-6)}.filter-bar{flex-direction:column;align-items:stretch}.filter-bar .form-input,.filter-bar .form-select,.search-input-wrapper{max-width:100%}.clock-time{font-size:2.5rem}.stat-card{padding:var(--space-4)}.btn{width:100%}.clock-controls{flex-direction:column;width:100%}}@media(max-width:480px){.view-container{padding:var(--space-3)}.stats-grid{grid-template-columns:1fr!important}.dashboard-header-flex{flex-direction:column;align-items:stretch}.greeting-text{font-size:var(--font-size-lg)}.shift-card{margin-bottom:var(--space-1);border-radius:var(--radius-md)}.shift-card-header{padding:6px 10px;gap:var(--space-1)}.shift-card-summary{display:grid;grid-template-columns:auto 1fr auto;gap:4px 8px;width:100%;align-items:center}.shift-card-date{min-width:0;font-size:11px;font-weight:800;color:var(--color-accent)}.shift-card-hours{background:var(--color-surface-hover);font-size:10px;padding:1px 6px;border-radius:4px;color:var(--color-text);font-weight:700}.shift-card-practice{font-size:12px;grid-column:1 / span 2;font-weight:700;line-height:1.1;margin-top:-2px}.shift-card-summary .badge{grid-row:1 / span 2;grid-column:3;font-size:9px;padding:2px 6px}.shift-card-toggle{font-size:18px;margin-left:2px}.shift-card.expanded .shift-card-body{padding:var(--space-3) var(--space-2)}.shift-details-grid{gap:var(--space-2)}.shift-detail-item{flex-direction:row;justify-content:space-between;gap:8px;border-bottom:1px dashed var(--color-border);padding-bottom:2px}.shift-detail-label{font-size:9px}.shift-detail-value{font-size:11px}.shift-card-actions{margin-top:var(--space-2);padding-top:var(--space-2);gap:var(--space-2)}.user-card-header{padding:8px 10px}.user-card-summary{display:grid;grid-template-columns:auto 1fr auto;gap:4px 8px;width:100%;align-items:center}.user-card-identity{grid-column:1 / span 2;min-width:0;gap:8px}.user-card-meta-inline{grid-row:2;grid-column:1 / span 2;gap:4px;margin-left:40px!important}.user-rates-summary{display:inline-block;font-size:10px}.user-card-toggle{grid-column:3;grid-row:1 / span 2;margin-left:4px}.user-card-body{padding:0 var(--space-2)}.user-card.expanded .user-card-body{padding:var(--space-4) var(--space-2)}.drawer-actions-grid{grid-template-columns:1fr 1fr!important}.header-filters{flex-direction:column;align-items:stretch;padding:var(--space-2)}.filter-group-row{width:100%;justify-content:space-between;gap:var(--space-1)}.quick-filters{margin-left:0;justify-content:flex-start;flex-wrap:wrap;margin-top:var(--space-2);gap:4px}.quick-filter-btn{padding:4px 6px;font-size:10px}.practice-stats-grid{display:grid;grid-template-columns:repeat(3,1fr)!important;gap:4px!important}.practice-stats-grid>div{text-align:center;padding:6px 2px;background:var(--color-bg);border-radius:var(--radius-sm);display:flex;flex-direction:column;align-items:center;gap:2px}.stat-icon-sm{color:var(--color-text-tertiary);line-height:1}.stat-icon-sm .material-icons-round{font-size:14px}.practice-stats-grid div .font-bold{font-size:10px}.card{padding:var(--space-3)!important;margin-bottom:var(--space-2)!important}}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:99;background:#0000004d}.sidebar-overlay.open{display:block}.text-center{text-align:center}.text-right{text-align:right}.text-sm{font-size:var(--font-size-sm)}.text-xs{font-size:var(--font-size-xs)}.text-secondary{color:var(--color-text-secondary)}.text-accent{color:var(--color-accent)}.font-bold{font-weight:700}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.flex{display:flex}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.gap-2{gap:var(--space-2)}.hidden{display:none!important}.clock-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--space-8);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid var(--color-border-light);transition:transform .3s ease}.clock-display{margin-bottom:var(--space-6)}.clock-time{font-size:3.5rem;font-weight:800;color:var(--color-primary);letter-spacing:-.02em;line-height:1}.clock-date{font-size:var(--font-size-sm);color:var(--color-text-tertiary);font-weight:600;margin-top:var(--space-2);text-transform:uppercase;letter-spacing:.1em}.clock-status-bar{width:100%;margin-bottom:var(--space-8)}.clock-status{padding:var(--space-2) var(--space-4);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:700;display:inline-flex;align-items:center;gap:var(--space-2);text-transform:uppercase;letter-spacing:.05em}.clock-status.inactive{background:var(--color-error-light);color:var(--color-error)}.clock-status.active{background:var(--color-success-light);color:var(--color-success)}.clock-action-area{width:100%;max-width:320px}.form-label-center{display:block;font-size:var(--font-size-xs);font-weight:700;color:var(--color-text-tertiary);margin-bottom:var(--space-2);text-transform:uppercase}@keyframes pulse-primary{0%{box-shadow:0 0 #1d4e8966}70%{box-shadow:0 0 0 10px #1d4e8900}to{box-shadow:0 0 #1d4e8900}}@keyframes pulse-error{0%{box-shadow:0 0 #ef444466}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}@keyframes pulse-warning{0%{box-shadow:0 0 #f59e0b66}70%{box-shadow:0 0 0 10px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}@keyframes slide-in-up{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.form-select-modern{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg);border:2px solid var(--color-bg-dark);font-size:var(--font-size-md);font-weight:600;color:var(--color-text);background-color:var(--color-bg);cursor:pointer;outline:none;transition:all .2s ease}.form-select-modern:focus{border-color:var(--color-primary);background-color:var(--color-surface);box-shadow:0 0 0 4px var(--color-primary-light)}.clock-controls-modern{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-6);width:100%;animation:slide-in-up .5s ease-out}.clock-btn-container{display:flex;gap:var(--space-3);width:100%}.clock-btn-main{flex:1;padding:var(--space-4) var(--space-2);border-radius:var(--radius-xl);font-weight:800;font-size:var(--font-size-lg);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-2);transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.02em;text-transform:uppercase;color:#fff}.clock-btn-main .material-icons-round{font-size:24px}.clock-btn-main.clock-in{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-light) 100%);box-shadow:0 8px 16px #1d4e8933,inset 0 2px 4px #fff3}.clock-btn-main.clock-in:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 24px #1d4e894d,inset 0 2px 4px #ffffff4d;background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--color-primary) 100%)}.clock-btn-main.clock-in:active{transform:translateY(0) scale(.98)}.clock-btn-main.clock-out{background:linear-gradient(135deg,var(--color-error) 0%,#ff6b6b 100%);box-shadow:0 8px 16px #ef444433,inset 0 2px 4px #fff3}.clock-btn-main.clock-out:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 24px #ef44444d,inset 0 2px 4px #ffffff4d}.broadcast-banner{background:var(--color-primary);color:#fff;padding:var(--space-4) var(--space-6);display:flex;align-items:center;gap:var(--space-4);position:sticky;top:0;z-index:1000;box-shadow:0 4px 12px #0000001a;animation:slideDown .4s cubic-bezier(.16,1,.3,1)}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.broadcast-badge{background:#fff3;padding:4px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase}.broadcast-content{flex:1;font-size:14px;font-weight:500}.broadcast-actions{display:flex;gap:var(--space-2)}.btn-broadcast-dismiss{background:#fff;color:var(--color-primary);border:none;padding:6px 12px;border-radius:var(--radius-md);font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-broadcast-dismiss:hover{background:var(--color-surface-hover);transform:scale(1.05)}.clock-btn-main.pulse{animation:pulse-primary 2s infinite}.clock-btn-main.clock-out.pulse{animation:pulse-error 2s infinite}.btn-break-modern{flex:1;padding:var(--space-4);border-radius:var(--radius-xl);font-weight:800;font-size:var(--font-size-base);border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:var(--space-2);transition:all .3s cubic-bezier(.4,0,.2,1);letter-spacing:.02em;text-transform:uppercase;box-shadow:0 4px 12px #0000001a}.btn-break-modern.start-break{background:linear-gradient(135deg,var(--color-warning) 0%,#fbbf24 100%);color:#fff;box-shadow:0 8px 16px #f59e0b33}.btn-break-modern.start-break:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 24px #f59e0b4d}.btn-break-modern.end-break{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-light) 100%);color:#fff;box-shadow:0 8px 16px #00b4d833;animation:pulse-warning 2s infinite}.btn-break-modern.end-break:hover{transform:translateY(-3px) scale(1.02);box-shadow:0 12px 24px #00b4d84d}.btn-break-modern:hover{background:var(--color-border)}.btn-navigate-modern{display:flex;align-items:center;justify-content:center;gap:var(--space-2);margin-top:var(--space-6);padding:var(--space-3);background:#ebf8ff;color:#2b6cb0;text-decoration:none;border-radius:var(--radius-lg);font-weight:700;font-size:var(--font-size-sm);transition:all .2s ease}.btn-navigate-modern:hover{background:#bee3f8}.session-info-modern{margin-top:var(--space-8);font-size:var(--font-size-xs);color:var(--color-text-tertiary);font-weight:600}.switch{position:relative;display:inline-block;width:48px;height:24px}.switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--color-border);transition:.4s}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s}input:checked+.slider{background-color:var(--color-accent)}input:focus+.slider{box-shadow:0 0 1px var(--color-accent)}input:checked+.slider:before{transform:translate(24px)}.slider.round{border-radius:34px}.slider.round:before{border-radius:50%}.motivation-card{background:var(--gradient-card);border:1px solid rgba(232,100,58,.1);border-radius:var(--radius-xl);padding:var(--space-6);margin-bottom:var(--space-8);display:flex;align-items:center;gap:var(--space-6);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.motivation-card:after{content:"spirit";font-family:Material Icons Round;position:absolute;right:-20px;bottom:-20px;font-size:120px;color:#e8643a08;transform:rotate(-15deg)}.motivation-icon{width:56px;height:56px;border-radius:var(--radius-lg);background:var(--gradient-accent);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 8px 16px #e8643a33}.motivation-content{flex:1}.motivation-title{font-size:var(--font-size-xs);font-weight:800;color:var(--color-accent);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--space-1)}.motivation-text{font-size:var(--font-size-md);font-weight:600;color:var(--color-primary);line-height:1.4;font-style:italic}@keyframes highlightPulse{0%{box-shadow:0 0 #e8643a66;border-color:var(--color-accent)}50%{box-shadow:0 0 0 15px #e8643a00;border-color:var(--color-accent);transform:scale(1.02)}to{box-shadow:0 0 #e8643a00}}.highlight-pulse{animation:highlightPulse 1.5s ease-out 2;position:relative;z-index:10;border-color:var(--color-accent)!important}
