:root{--brand-primary: #256f67;--brand-secondary: #d68b26;--brand-tertiary: #4f5f9f;--brand-primary-soft: #e8f3f1;--brand-secondary-soft: #fff3df;--brand-tertiary-soft: #eef1fb;--rock-bg-primary: #f7f8f6;--rock-bg-secondary: #ffffff;--rock-bg-card: #ffffff;--rock-bg-elevated: #eef3f1;--rock-bg-hover: #e5edea;--rock-bg-input: #ffffff;--rock-border: #dfe6e3;--rock-border-hover: #c8d7d2;--rock-border-active: rgba(37, 111, 103, .42);--rock-text-primary: #1e2c2a;--rock-text-secondary: #4f635f;--rock-text-muted: #778985;--rock-text-inverse: #ffffff;--rock-brand-50: #e8f3f1;--rock-brand-100: #cfe4df;--rock-brand-200: #9fcac2;--rock-brand-300: #6faaa2;--rock-brand-400: #3d877f;--rock-brand-500: #256f67;--rock-brand-600: #1d5b55;--rock-brand-700: #174944;--rock-brand-800: #123a36;--rock-brand-900: #0c2724;--rock-gradient-brand: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-tertiary) 100%);--rock-gradient-warm: linear-gradient(135deg, var(--brand-secondary) 0%, #e7a84a 100%);--rock-gradient-teal: linear-gradient(135deg, var(--brand-primary) 0%, #42a394 100%);--rock-success: #26834f;--rock-success-bg: rgba(38, 131, 79, .1);--rock-warning: #b87516;--rock-warning-bg: rgba(214, 139, 38, .14);--rock-danger: #c94a3b;--rock-danger-bg: rgba(201, 74, 59, .1);--rock-info: #3e67ad;--rock-info-bg: rgba(79, 95, 159, .1);--rock-shadow-sm: 0 1px 2px rgba(30, 44, 42, .08);--rock-shadow-md: 0 6px 18px rgba(30, 44, 42, .1);--rock-shadow-lg: 0 16px 40px rgba(30, 44, 42, .14);--rock-shadow-glow: 0 0 20px rgba(37, 111, 103, .16);--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: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 8px;--radius-full: 9999px;--ease-out: cubic-bezier(.16, 1, .3, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s;--sidebar-width: 260px;--sidebar-collapsed: 72px;--header-height: 64px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--rock-bg-primary);color:var(--rock-text-primary);line-height:1.6;overflow-x:hidden}a{color:var(--rock-brand-400);text-decoration:none;transition:color var(--duration-fast) var(--ease-out)}a:hover{color:var(--rock-brand-300)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--rock-bg-elevated);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--rock-bg-hover)}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semi{font-weight:600}.font-bold{font-weight:700}.text-muted{color:var(--rock-text-muted)}.text-secondary{color:var(--rock-text-secondary)}.rock-card,.stat-card{background:var(--rock-bg-card);border:1px solid var(--rock-border);border-radius:var(--radius-lg);padding:var(--space-6);box-shadow:var(--rock-shadow-sm);transition:border-color var(--duration-normal) var(--ease-out)}.rock-card-glass{background:#ffffffd1;backdrop-filter:blur(16px) saturate(180%);-webkit-backdrop-filter:blur(16px) saturate(180%);border:1px solid var(--rock-border);border-radius:var(--radius-lg);padding:var(--space-6)}.btn,.btn-danger,.btn-ghost,.btn-secondary,.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);font-family:inherit;font-size:.875rem;font-weight:500;line-height:1;padding:var(--space-2) var(--space-5);border:1px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);white-space:nowrap;height:38px}.btn:disabled,.btn-danger:disabled,.btn-ghost:disabled,.btn-secondary:disabled,.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible,.btn-danger:focus-visible,.btn-ghost:focus-visible,.btn-secondary:focus-visible,.btn-primary:focus-visible{outline:2px solid var(--rock-brand-400);outline-offset:2px}.btn-primary{background:var(--rock-brand-500);color:#fff;box-shadow:0 2px 8px #256f672e}.btn-primary:hover:not(:disabled){background:var(--rock-brand-600);box-shadow:0 4px 12px #256f6733}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--rock-bg-elevated);color:var(--rock-text-primary);border-color:var(--rock-border)}.btn-secondary:hover:not(:disabled){background:var(--rock-bg-hover);border-color:var(--rock-border-hover)}.btn-ghost{background:transparent;color:var(--rock-text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--rock-bg-elevated);color:var(--rock-text-primary)}.btn-danger{background:var(--rock-danger);color:#fff}.btn-danger:hover:not(:disabled){background:#dc2626;box-shadow:0 4px 12px #ef444459}.btn-sm{height:32px;padding:var(--space-1) var(--space-3);font-size:.8125rem}.btn-lg{height:44px;padding:var(--space-3) var(--space-8);font-size:1rem}.btn-icon{width:38px;padding:0}.btn-icon.btn-sm{width:32px}.rock-input,.rock-select{width:100%;height:40px;padding:var(--space-2) var(--space-3);font-family:inherit;font-size:.875rem;color:var(--rock-text-primary);background:var(--rock-bg-input);border:1px solid var(--rock-border);border-radius:var(--radius-md);transition:all var(--duration-fast) var(--ease-out)}.rock-input::placeholder,.rock-select::placeholder{color:var(--rock-text-muted)}.rock-input:hover,.rock-select:hover{border-color:var(--rock-border-hover)}.rock-input:focus,.rock-select:focus{outline:none;border-color:var(--rock-brand-400);box-shadow:0 0 0 3px #256f6729}.rock-input:disabled,.rock-select:disabled{opacity:.5;cursor:not-allowed}textarea.rock-input,textarea.rock-select{height:auto;min-height:80px;resize:vertical}.rock-label{display:block;font-size:.8125rem;font-weight:500;color:var(--rock-text-secondary);margin-bottom:var(--space-1)}.rock-field{margin-bottom:var(--space-4)}.rock-select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23778985' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.rock-table{width:100%;border-collapse:separate;border-spacing:0}.rock-table th{position:sticky;top:0;background:var(--rock-bg-secondary);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0;color:var(--rock-text-muted);padding:var(--space-3) var(--space-4);text-align:left;border-bottom:1px solid var(--rock-border);white-space:nowrap}.rock-table td{padding:var(--space-3) var(--space-4);font-size:.875rem;color:var(--rock-text-secondary);border-bottom:1px solid var(--rock-border);vertical-align:middle}.rock-table tbody tr{transition:background var(--duration-fast) var(--ease-out)}.rock-table tbody tr:hover{background:var(--rock-bg-elevated)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;padding:2px 8px;border-radius:var(--radius-full);line-height:1.5}.badge-success{background:var(--rock-success-bg);color:var(--rock-success)}.badge-warning{background:var(--rock-warning-bg);color:var(--rock-warning)}.badge-danger{background:var(--rock-danger-bg);color:var(--rock-danger)}.badge-info{background:var(--rock-info-bg);color:var(--rock-info)}.badge-brand{background:var(--brand-primary-soft);color:var(--rock-brand-600)}.stat-card{position:relative;overflow:hidden}.stat-card .stat-value{font-size:1.85rem;font-weight:700;line-height:1.2;color:var(--rock-brand-600)}.stat-card .stat-label{font-size:.8125rem;color:var(--rock-text-muted);margin-top:var(--space-1)}.stat-card .stat-change{font-size:.75rem;font-weight:600;margin-top:var(--space-2)}.stat-card .stat-change.positive{color:var(--rock-success)}.stat-card .stat-change.negative{color:var(--rock-danger)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #256f672e}50%{box-shadow:0 0 0 8px #256f6700}}.animate-fade-in,.animate-slide-up,.animate-slide-right{animation:fadeIn var(--duration-normal) var(--ease-out)}.skeleton{background:linear-gradient(90deg,var(--rock-bg-elevated) 25%,var(--rock-bg-hover) 50%,var(--rock-bg-elevated) 75%);background-size:400% 100%;animation:shimmer 1.8s ease infinite;border-radius:var(--radius-sm)}.flex{display:flex}.flex-col{flex-direction:column}.flex-1{flex:1}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.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)}@media(max-width:768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);gap:var(--space-4)}.page-header h1{font-size:1.5rem;font-weight:700;color:var(--rock-text-primary)}.page-header .page-subtitle{font-size:.875rem;color:var(--rock-text-muted);margin-top:var(--space-1)}.page-content{animation:fadeIn var(--duration-normal) var(--ease-out)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-16) var(--space-8);text-align:center}.empty-state .empty-icon{font-size:3rem;color:var(--rock-text-muted);margin-bottom:var(--space-4)}.empty-state h3{font-size:1.125rem;font-weight:600;color:var(--rock-text-secondary);margin-bottom:var(--space-2)}.empty-state p{font-size:.875rem;color:var(--rock-text-muted);max-width:360px}
