@import"https://fonts.googleapis.com/css2?family=Figtree:wght@300;400;500;600;700&family=Noto+Sans:wght@300;400;500;700&display=swap";:root{--primary: #0891B2;--primary-hover: #0E7490;--primary-glow: rgba(8, 145, 178, .15);--secondary: #22D3EE;--secondary-hover: #06B6D4;--cta: #22C55E;--cta-hover: #16A34A;--bg: #F0FDFA;--bg-secondary: #CCFBF1;--text: #134E4A;--text-secondary: #4B5563;--surface: #FFFFFF;--surface-hover: #F0FDFA;--border: #99F6E4;--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(8, 145, 178, .15);--glass-shadow: 0 8px 32px rgba(8, 145, 178, .08);--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--sidebar-width: 260px;--sidebar-bg: #0F272A;--sidebar-border: #134E4A;--sidebar-text: #F0FDFA;--sidebar-text-secondary: #5EEAD4;--sidebar-hover-bg: #134E4A;--sidebar-hover-text: #FFFFFF;--sidebar-active-bg: rgba(8, 145, 178, .15);--sidebar-active-border: #0891B2;--sidebar-active-text: #5EEAD4;--header-height: 64px;--shadow-sm: 0 2px 4px rgba(8, 145, 178, .04);--shadow: 0 4px 16px -4px rgba(8, 145, 178, .08);--shadow-lg: 0 12px 28px -6px rgba(8, 145, 178, .12);--transition: .2s cubic-bezier(.4, 0, .2, 1);--font-heading: "Figtree", sans-serif;--font: "Noto Sans", -apple-system, BlinkMacSystemFont, sans-serif;--accent: #7C3AED;--accent-hover: #6D28D9;--accent-secondary: #DB2777;--accent-glow: rgba(124, 58, 237, .15);--accent-gradient: linear-gradient(135deg, #7C3AED, #DB2777);--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--info: #3B82F6}@media(prefers-color-scheme:dark){:root{--primary: #22D3EE;--primary-hover: #06B6D4;--primary-glow: rgba(34, 211, 238, .15);--secondary: #0891B2;--secondary-hover: #0E7490;--cta: #34D399;--cta-hover: #10B981;--bg: #0F172A;--bg-secondary: #1E293B;--text: #F1F5F9;--text-secondary: #94A3B8;--surface: #1E293B;--surface-hover: #334155;--border: #334155;--glass-border: rgba(34, 211, 238, .15);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .3);--sidebar-bg: #0C1222;--sidebar-border: #1E293B;--sidebar-text: #F1F5F9;--sidebar-text-secondary: #67E8F9;--sidebar-active-bg: rgba(34, 211, 238, .1);--sidebar-active-border: #22D3EE;--accent-glow: rgba(124, 58, 237, .25)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translate(0) scale(1)}25%{transform:translate(30px,-30px) scale(1.05)}50%{transform:translate(-20px,20px) scale(.95)}75%{transform:translate(20px,10px) scale(1.02)}}@keyframes loadingSkeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--sidebar-bg);border-right:1px solid var(--sidebar-border);padding:24px 0;display:flex;flex-direction:column;position:fixed;top:0;left:0;height:100vh;z-index:100;transition:width var(--transition);overflow:hidden}.sidebar-collapsed{width:68px}.sidebar-brand{padding:0 20px 20px;border-bottom:1px solid var(--sidebar-border);margin-bottom:12px;display:flex;align-items:center;gap:12px;min-height:56px}.sidebar-collapsed .sidebar-brand{padding:0 12px 16px;justify-content:center}.sidebar-brand-name{font-family:var(--font-heading);font-size:18px;font-weight:700;background:linear-gradient(135deg,#5eead4,#22d3ee);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:.5px;white-space:nowrap}.sidebar-brand-sub{font-size:10px;color:var(--sidebar-text-secondary);text-transform:uppercase;letter-spacing:1px;white-space:nowrap}.sidebar-nav{flex:1;padding:8px 12px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--sidebar-border) transparent}.sidebar-collapsed .sidebar-nav{padding:8px 6px}.sidebar-section-label{font-size:10px;font-weight:600;color:var(--sidebar-text-secondary);text-transform:uppercase;letter-spacing:1px;padding:12px 8px 4px;white-space:nowrap;overflow:hidden}.sidebar-collapsed .sidebar-section-label{display:none}.sidebar-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:var(--radius-sm);color:var(--sidebar-text);text-decoration:none;font-size:14px;font-weight:500;transition:all .2s ease;cursor:pointer;border:none;border-left:3px solid transparent;background:none;width:100%;text-align:left;white-space:nowrap;overflow:hidden;margin-bottom:2px}.sidebar-collapsed .sidebar-item{padding:10px;justify-content:center;gap:0;border-left:none}.sidebar-item:hover{background:var(--sidebar-hover-bg);color:var(--sidebar-hover-text)}.sidebar-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:600;border-left:3px solid var(--sidebar-active-border)}.sidebar-collapsed .sidebar-item.active{border-left:none;outline:2px solid var(--sidebar-active-border)}.sidebar-item svg{width:18px;height:18px;flex-shrink:0}.sidebar-footer{padding:12px 16px;border-top:1px solid var(--sidebar-border);margin-top:auto}.sidebar-collapsed .sidebar-footer{padding:12px 8px}.sidebar-user{display:flex;align-items:center;gap:10px;padding:8px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition)}.sidebar-user:hover{background:var(--sidebar-hover-bg)}.sidebar-user-avatar{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--secondary));display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;color:#fff;flex-shrink:0}.sidebar-user-info{overflow:hidden;flex:1}.sidebar-user-name{font-size:13px;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:11px;color:var(--sidebar-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.main-content{margin-left:var(--sidebar-width);width:calc(100vw - var(--sidebar-width));min-height:100vh;display:flex;flex-direction:column;transition:margin-left var(--transition),width var(--transition)}.main-content-collapsed{margin-left:68px;width:calc(100vw - 68px)}.top-header{height:var(--header-height);background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--glass-border);display:flex;align-items:center;justify-content:space-between;padding:0 32px;position:sticky;top:0;z-index:50;box-shadow:var(--shadow-sm)}.top-header-left{display:flex;align-items:center;gap:16px}.top-header-right{display:flex;align-items:center;gap:8px}.page-container{padding:32px 40px;flex:1;animation:fadeIn .3s ease}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.page-title{font-family:var(--font-heading);font-size:22px;font-weight:700;color:var(--text);letter-spacing:-.3px}.page-subtitle{font-size:14px;color:var(--text-secondary);margin-top:2px}.glass-card{background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--glass-shadow);transition:all .3s ease}.glass-card:hover{box-shadow:0 12px 40px #0891b21f}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:28px}.stat-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius);padding:20px 24px;box-shadow:var(--shadow-sm);transition:all var(--transition)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.stat-card .stat-label{font-size:12px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.stat-card .stat-value{font-family:var(--font-heading);font-size:28px;font-weight:700;color:var(--text);letter-spacing:-.5px}.stat-card .stat-icon{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--primary-glow);display:flex;align-items:center;justify-content:center;color:var(--primary);margin-bottom:12px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;border:none;cursor:pointer;transition:all var(--transition);font-family:var(--font);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);box-shadow:0 4px 14px var(--primary-glow);transform:translateY(-1px)}.btn-secondary{background:var(--secondary);color:#fff}.btn-secondary:hover:not(:disabled){background:var(--secondary-hover);transform:translateY(-1px)}.btn-cta{background:var(--cta);color:#fff}.btn-cta:hover:not(:disabled){background:var(--cta-hover);transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost:hover:not(:disabled){background:var(--surface-hover);color:var(--text);border-color:var(--primary)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){opacity:.9}.btn-sm{padding:6px 14px;font-size:13px}.btn-lg{padding:14px 28px;font-size:16px}.btn-icon{padding:8px;width:36px;height:36px;justify-content:center}.form-group{margin-bottom:20px;position:relative}.label,.form-label{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:8px;letter-spacing:.02em;text-transform:uppercase}.input-field,.select-field,.form-input,select.form-input{width:100%;padding:11px 16px;background:var(--surface);border:1.5px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text);font-size:14px;font-family:var(--font);line-height:1.5;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;appearance:none;-webkit-appearance:none;-moz-appearance:none}.input-field:hover,.select-field:hover,.form-input:hover,select.form-input:hover{border-color:var(--primary);background:var(--surface)}.input-field:focus,.select-field:focus,.form-input:focus,select.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow),0 1px 3px #0000000a;background:var(--surface)}.input-field::placeholder,.form-input::placeholder{color:var(--text-secondary);opacity:.5;font-weight:400}textarea.input-field,textarea.form-input{resize:vertical;min-height:100px}select.form-input,.select-field{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%234B5563' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px;padding-right:40px;cursor:pointer}.table-container{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse}th{text-align:left;padding:12px 16px;font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.8px;background:var(--bg-secondary);border-bottom:1px solid var(--glass-border)}td{padding:12px 16px;font-size:14px;border-bottom:1px solid var(--glass-border);color:var(--text)}tr:last-child td{border-bottom:none}tr:hover td{background:var(--surface-hover)}.badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.badge-success{background:#10b9811f;color:#059669}.badge-warning{background:#f59e0b1f;color:#d97706}.badge-error{background:#ef44441f;color:#dc2626}.badge-info{background:#3b82f61f;color:#2563eb}.badge-primary{background:var(--primary-glow);color:var(--primary)}.badge-secondary{background:#22d3ee1f;color:var(--secondary)}.badge-neutral{background:#4b55631a;color:var(--text-secondary)}.search-bar{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:8px 14px;transition:all var(--transition)}.search-bar:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.search-bar input{border:none;background:transparent;color:var(--text);font-size:14px;font-family:var(--font);flex:1;outline:none}.search-bar input::placeholder{color:var(--text-secondary);opacity:.6}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#f0fdfa,#ccfbf1,#a7f3d0);position:relative;overflow:hidden}.auth-bg-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.35;animation:float 15s ease-in-out infinite}.auth-bg-orb-1{width:500px;height:500px;background:radial-gradient(circle,#0891B2 0%,transparent 70%);top:-100px;right:-100px}.auth-bg-orb-2{width:400px;height:400px;background:radial-gradient(circle,#22D3EE 0%,transparent 70%);bottom:-80px;left:-80px;animation-delay:-5s}.auth-container{position:relative;z-index:1;width:100%;max-width:440px;padding:24px;animation:fadeInUp .5s ease-out}.auth-brand{text-align:center;margin-bottom:28px}.auth-logo{display:inline-flex;margin-bottom:12px}.auth-brand-title{font-family:var(--font-heading);font-size:28px;font-weight:700;color:var(--text);letter-spacing:.5px;background:linear-gradient(135deg,var(--primary),var(--secondary));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.auth-brand-sub{font-size:14px;color:var(--text-secondary);margin-top:4px}.auth-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:36px;box-shadow:var(--glass-shadow)}.auth-card h2{font-family:var(--font-heading);font-size:20px;font-weight:700;color:var(--text);margin-bottom:4px}.auth-card .auth-subtitle{font-size:14px;color:var(--text-secondary);margin-bottom:24px}.auth-link{text-align:center;margin-top:20px;font-size:13px;color:var(--text-secondary)}.auth-link a{color:var(--primary);text-decoration:none;font-weight:600}.auth-link a:hover{text-decoration:underline}.error-banner{background:#ef444414;border:1px solid rgba(239,68,68,.25);color:var(--danger);padding:12px 16px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.loading-container{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-secondary);font-size:14px;gap:12px}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--border) 50%,var(--surface) 75%);background-size:200% 100%;animation:loadingSkeleton 1.5s infinite;border-radius:var(--radius-sm)}.toggle{width:44px;height:24px;border-radius:12px;background:var(--border);border:none;cursor:pointer;position:relative;transition:background var(--transition);flex-shrink:0}.toggle:after{content:"";width:18px;height:18px;border-radius:50%;background:#fff;position:absolute;top:3px;left:3px;transition:left var(--transition);box-shadow:0 1px 4px #0003}.toggle.on{background:var(--primary)}.toggle.on:after{left:23px}.divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--text-secondary);font-size:12px}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--border)}.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:var(--radius);background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);box-shadow:var(--shadow-lg);font-size:14px;font-weight:500;color:var(--text);pointer-events:auto;animation:slideUp .3s ease-out;max-width:360px;min-width:280px}.toast-success{border-left:4px solid var(--success)}.toast-error{border-left:4px solid var(--danger)}.toast-warning{border-left:4px solid var(--warning)}.toast-info{border-left:4px solid var(--info)}.toast-icon-success{color:var(--success)}.toast-icon-error{color:var(--danger)}.toast-icon-warning{color:var(--warning)}.toast-icon-info{color:var(--info)}.toast-close{margin-left:auto;background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:2px;border-radius:4px;display:flex;align-items:center;transition:color var(--transition)}.toast-close:hover{color:var(--text)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#134e4a73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:200;display:flex;align-items:center;justify-content:center;padding:24px;animation:fadeIn .2s ease}.modal,.modal-content{background:var(--surface);border:1.5px solid var(--glass-border);border-radius:var(--radius-lg);padding:32px;width:100%;max-width:500px;box-shadow:0 24px 80px #0891b21f,0 8px 24px #00000014,0 0 0 1px #ffffff0d inset;animation:fadeInScale .25s cubic-bezier(.16,1,.3,1)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--glass-border)}.modal-title{font-family:var(--font-heading);font-size:18px;font-weight:700;color:var(--text);letter-spacing:-.01em}.modal-footer{display:flex;justify-content:flex-end;gap:12px;margin-top:28px;padding-top:20px;border-top:1px solid var(--glass-border)}.empty-state{text-align:center;padding:48px 24px;color:var(--text-secondary)}.empty-state svg{width:48px;height:48px;color:var(--border);margin-bottom:16px}.empty-state h3{font-size:16px;font-weight:600;color:var(--text);margin-bottom:6px}.empty-state p{font-size:14px}.status-scheduled{color:#3b82f6}.status-confirmed{color:#8b5cf6}.status-arrived{color:#f59e0b}.status-in-progress{color:#22d3ee}.status-completed{color:#10b981}.status-cancelled{color:#ef4444}.status-no-show{color:#6b7280}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.w-full{width:100%}.text-sm{font-size:13px}.text-xs{font-size:11px}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-secondary{color:var(--text-secondary)}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.mt-4{margin-top:16px}.p-4{padding:16px}.p-6{padding:24px}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-lg{font-size:16px}.text-2xl{font-size:22px}.font-normal{font-weight:400}.text-muted{color:var(--text-secondary)}.opacity-60{opacity:.6}.mb-1{margin-bottom:4px}.mb-3{margin-bottom:12px}.mb-8{margin-bottom:32px}.mt-2{margin-top:8px}.mt-6{margin-top:24px}.mr-1{margin-right:4px}.ml-1{margin-left:4px}.inline{display:inline}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.badge-green{background:#d1fae5;color:#065f46}.badge-gray{background:#f3f4f6;color:#6b7280}.data-card-label{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);margin-bottom:4px}.data-card-value{font-size:24px;font-weight:700;color:var(--text)}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input-wrapper svg{position:absolute;left:10px;color:var(--text-secondary);pointer-events:none}.search-input{padding:8px 12px 8px 34px;border:1px solid var(--border);border-radius:8px;font-size:14px;background:var(--bg);color:var(--text);width:100%}.search-input:focus{outline:none;border-color:var(--primary)}.skip-link{position:absolute;left:-9999px;top:0;z-index:10000;padding:8px 16px;background:var(--primary);color:#fff;font-weight:600;text-decoration:none}.skip-link:focus{left:8px;top:8px;border-radius:4px}:focus-visible{outline:3px solid var(--primary);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.hamburger-btn,.mobile-overlay{display:none}@media(max-width:768px){.hamburger-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:none;cursor:pointer;color:var(--text)}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(10px);opacity:0}}.toast.removing{animation:slideDown .2s ease-in forwards}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeOutScale{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.modal-overlay{animation:fadeIn .2s ease}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:280px;background:var(--glass-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:300;animation:slideUp .2s ease-out;overflow:hidden}.notification-dropdown-header{padding:14px 16px;font-size:13px;font-weight:700;color:var(--text);border-bottom:1px solid var(--border)}.notification-dropdown-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;color:var(--text-secondary);font-size:13px}.notification-dropdown-empty svg{color:var(--border)}.page-wrapper{padding:32px 40px;max-width:1280px;width:100%;margin:0 auto;box-sizing:border-box;animation:fadeIn .3s ease}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px;gap:16px}.page-head-left{display:flex;align-items:center;gap:12px}.page-head-icon{width:44px;height:44px;border-radius:12px;background:var(--accent-gradient);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.page-head h1{font-family:var(--font-heading);font-size:24px;font-weight:700;color:var(--text);margin:0;letter-spacing:-.3px}.page-head p{font-size:13px;color:var(--text-secondary);margin:2px 0 0}.btn-gradient{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--accent-gradient);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;white-space:nowrap;font-family:var(--font)}.btn-gradient:hover:not(:disabled){opacity:.92;transform:translateY(-1px);box-shadow:0 4px 14px var(--accent-glow)}.btn-gradient:disabled{opacity:.5;cursor:not-allowed}.filter-bar{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap;align-items:center}.filter-search{position:relative;flex:1;min-width:200px;max-width:360px}.filter-search svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-secondary);opacity:.5;pointer-events:none}.filter-search input{width:100%;padding:10px 12px 10px 38px;border:1.5px solid var(--glass-border);border-radius:10px;font-size:14px;color:var(--text);background:var(--surface);font-family:var(--font);outline:none;transition:border-color .2s,box-shadow .2s}.filter-search input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.filter-search input::placeholder{color:var(--text-secondary);opacity:.5}.filter-select-wrap{position:relative}.filter-select-wrap svg{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-secondary);opacity:.5}.filter-select{padding:10px 36px 10px 12px;border:1.5px solid var(--glass-border);border-radius:10px;font-size:14px;color:var(--text);background:var(--surface);font-family:var(--font);outline:none;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;min-width:160px;transition:border-color .2s,box-shadow .2s}.filter-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.filter-date{padding:10px 12px;border:1.5px solid var(--glass-border);border-radius:10px;font-size:14px;color:var(--text);background:var(--surface);font-family:var(--font);outline:none;min-width:140px;transition:border-color .2s,box-shadow .2s}.filter-date:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}.tab-nav{display:flex;gap:4px;margin-bottom:24px;background:var(--surface);border:1px solid var(--glass-border);border-radius:12px;padding:4px;width:fit-content}.tab-nav button{padding:8px 16px;border-radius:9px;border:none;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;background:transparent;color:var(--text-secondary);font-family:var(--font);display:flex;align-items:center;gap:6px}.tab-nav button:hover:not(.active){background:var(--surface-hover);color:var(--text)}.tab-nav button.active{background:var(--accent-gradient);color:#fff}.data-card{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--glass-border);overflow:hidden;box-shadow:var(--shadow-sm)}.data-card table{width:100%;border-collapse:collapse}.data-card th{padding:12px 16px;text-align:left;font-size:11px;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--glass-border);background:var(--bg-secondary)}.data-card td{padding:14px 16px;font-size:14px;color:var(--text);border-bottom:1px solid var(--glass-border);vertical-align:middle}.data-card tr:last-child td{border-bottom:none}.data-card tr:hover td{background:var(--surface-hover)}.data-empty{padding:56px 24px;text-align:center}.data-empty svg{width:48px;height:48px;color:var(--accent);opacity:.3;margin:0 auto 12px;display:block}.data-empty h3{font-size:15px;font-weight:600;color:var(--text);margin:0 0 4px}.data-empty p{font-size:13px;color:var(--text-secondary);margin:0}.data-loading{display:flex;justify-content:center;align-items:center;padding:56px 24px}.data-loading svg{animation:spin .8s linear infinite;color:var(--accent)}.action-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;border:none;transition:opacity .2s}.action-btn:hover{opacity:.8}.action-btn-view{background:var(--accent-glow);color:var(--accent)}.action-btn-print{background:#10b9811a;color:#059669}.action-btn-edit{background:#3b82f61a;color:#2563eb}.action-btn-delete{background:#ef44441a;color:#dc2626}.error-row{display:flex;align-items:center;gap:10px;padding:14px 16px;background:#ef44440f;border:1px solid rgba(239,68,68,.2);border-radius:10px;margin-bottom:20px;color:var(--danger);font-size:14px}.error-row button{background:none;border:none;color:var(--danger);font-weight:600;cursor:pointer;font-size:13px;white-space:nowrap}.modal-std-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0a288c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}.modal-std{background:var(--surface);border-radius:20px;width:100%;max-height:90vh;overflow:auto;box-shadow:0 24px 64px #7c3aed2e}.modal-std-sm{max-width:480px}.modal-std-md{max-width:560px}.modal-std-lg{max-width:680px}.modal-std-xl{max-width:760px}.modal-std-head{padding:24px 28px 0;display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px}.modal-std-head h2{font-family:var(--font-heading);font-size:18px;font-weight:700;color:var(--text);margin:0}.modal-std-head p{margin:4px 0 0;font-size:13px;color:var(--text-secondary)}.modal-std-head button{background:none;border:none;cursor:pointer;color:var(--text-secondary);padding:4px;border-radius:6px;transition:color .2s}.modal-std-head button:hover{color:var(--text)}.modal-std-body{padding:0 28px 28px}.modal-std-footer{display:flex;gap:10px;justify-content:flex-end;margin-top:24px}.form-std-group{margin-bottom:16px}.form-std-label{display:block;font-size:13px;font-weight:600;color:var(--text);margin-bottom:6px}.form-std-label .required{color:var(--accent-secondary)}.form-std-label .optional{color:var(--text-secondary);font-weight:400}.form-std-input{width:100%;padding:10px 12px;border:1.5px solid var(--glass-border);border-radius:10px;font-size:14px;color:var(--text);background:var(--surface);outline:none;box-sizing:border-box;font-family:var(--font);transition:border-color .2s,box-shadow .2s}.form-std-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}textarea.form-std-input{resize:vertical;min-height:80px}select.form-std-input{cursor:pointer}.btn-secondary-std{padding:10px 18px;background:var(--bg-secondary);color:var(--text);border:none;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;font-family:var(--font);transition:background .2s}.btn-secondary-std:hover{background:var(--border)}.pagination-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-top:1px solid var(--glass-border);font-size:13px;color:var(--text-secondary)}@media(max-width:768px){.sidebar{display:none}.sidebar.mobile-open{display:flex;position:fixed;z-index:1000;width:280px;height:100vh}.mobile-overlay{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:999}.main-content{margin-left:0!important}.page-container,.page-wrapper{padding:16px}.stat-grid{grid-template-columns:repeat(2,1fr)!important}.page-header,.page-head{flex-direction:column;gap:12px;align-items:flex-start}.filter-bar{flex-direction:column}.filter-search{max-width:100%}.tab-nav{width:100%;overflow-x:auto}}@media(max-width:480px){.stat-grid{grid-template-columns:1fr!important}.page-container,.page-wrapper{padding:12px}.modal,.modal-std{width:95%;margin:16px;max-height:90vh;overflow-y:auto}.table-container,.data-card{font-size:13px}.btn,.btn-gradient{padding:10px 16px;font-size:14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media print{.sidebar,.top-header,.toast-container{display:none!important}.main-content{margin-left:0!important}}@media(prefers-color-scheme:dark){.glass-card{background:var(--surface);border-color:var(--border)}.stat-card{background:var(--surface)}.modal,.modal-std{background:var(--surface);color:var(--text)}.input-field,.select-field,.form-std-input,.filter-select,.filter-date,.filter-search input{background:var(--bg-secondary);color:var(--text);border-color:var(--border)}table th,.data-card th{background:var(--bg-secondary);color:var(--text)}table td,.data-card td{color:var(--text);border-color:var(--border)}.data-card{background:var(--surface);border-color:var(--border)}.toast{background:var(--surface);color:var(--text);border-color:var(--border)}.badge{color:var(--text)}.btn-secondary-std{background:var(--bg-secondary);color:var(--text)}}
