:root{--primary: #9B8B7F;--primary-hover: #8A7969;--primary-light: rgba(155, 139, 127, .12);--accent: #B5A894;--accent-hover: #A39882;--sage: #A8B39C;--sage-light: rgba(168, 179, 156, .15);--sage-hover: #96A18A;--terracotta: #C4876D;--cream: #F8F6F1;--ivory: #FAF8F3;--success: #8FA878;--danger: #D8857D;--warning: #E8C85A;--info: #9DAFC1;--bg-primary: #FFFBF6;--bg-secondary: #FAF8F3;--bg-tertiary: #F5F0EA;--bg-elevated: #EDE6DE;--bg-overlay: rgba(255, 251, 246, .93);--text-primary: #3D3530;--text-secondary: #6B6057;--text-muted: #A89F98;--text-inverse: #FFFBF6;--border: #E5DBCE;--border-strong: #D9CFC2;--border-accent: rgba(155, 139, 127, .25);--border-sage: rgba(168, 179, 156, .3);--gradient-brand: linear-gradient(135deg, #9B8B7F 0%, #B5A894 100%);--gradient-sage: linear-gradient(135deg, #A8B39C 0%, #96A18A 100%);--gradient-light: linear-gradient(180deg, #FFFBF6 0%, #FAF8F3 100%);--sidebar-width: 260px;--sidebar-collapsed: 70px;--font-size-xs: 12px;--font-size-sm: 13px;--font-size-base: 15px;--font-size-lg: 16px;--font-size-xl: 18px;--font-size-2xl: 20px;--font-size-3xl: 24px;--font-size-4xl: 28px;--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.3;--line-height-normal: 1.5;--line-height-relaxed: 1.6;--line-height-loose: 1.8;--dark-bg-primary: #2D2925;--dark-bg-secondary: #3E3936;--dark-bg-tertiary: #4A423C;--dark-bg-elevated: #574F48;--dark-text-primary: #F5F1EB;--dark-text-secondary: #D8CFC0;--dark-text-muted: #B3AAA1;--dark-border: #4A423C;--dark-border-strong: #574F48;--dark-sage: #7A8B78}*{box-sizing:border-box}html,body,#root{width:100%;min-height:100%;margin:0;padding:0;background-color:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Inter,sans-serif;font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.dark,html[data-theme=dark]{--bg-primary: var(--dark-bg-primary);--bg-secondary: var(--dark-bg-secondary);--bg-tertiary: var(--dark-bg-tertiary);--bg-elevated: var(--dark-bg-elevated);--text-primary: var(--dark-text-primary);--text-secondary: var(--dark-text-secondary);--text-muted: var(--dark-text-muted);--border: var(--dark-border);--border-strong: var(--dark-border-strong)}@media (prefers-color-scheme: dark){html:not([data-theme=light]){--bg-primary: var(--dark-bg-primary);--bg-secondary: var(--dark-bg-secondary);--bg-tertiary: var(--dark-bg-tertiary);--bg-elevated: var(--dark-bg-elevated);--text-primary: var(--dark-text-primary);--text-secondary: var(--dark-text-secondary);--text-muted: var(--dark-text-muted);--border: var(--dark-border);--border-strong: var(--dark-border-strong)}}.bg-primary{background-color:var(--bg-primary)!important}.bg-secondary{background-color:var(--bg-secondary)!important}.bg-tertiary{background-color:var(--bg-tertiary)!important}.bg-elevated{background-color:var(--bg-elevated)!important}.text-primary{color:var(--text-primary)!important}.text-secondary{color:var(--text-secondary)!important}.text-muted{color:var(--text-muted)!important}.text-xs{font-size:var(--font-size-xs)!important;line-height:1.3}.text-sm{font-size:var(--font-size-sm)!important;line-height:1.4}.text-base{font-size:var(--font-size-base)!important;line-height:1.5}.text-lg{font-size:var(--font-size-lg)!important;line-height:1.5}.text-xl{font-size:var(--font-size-xl)!important;line-height:1.6}.text-2xl{font-size:var(--font-size-2xl)!important;line-height:1.6}.text-3xl{font-size:var(--font-size-3xl)!important;line-height:1.7}.text-4xl{font-size:var(--font-size-4xl)!important;line-height:1.8}.font-light{font-weight:300!important}.font-normal{font-weight:400!important}.font-medium{font-weight:500!important}.font-semibold{font-weight:600!important}.font-bold{font-weight:700!important}.leading-tight{line-height:1.3!important}.leading-normal{line-height:1.5!important}.leading-relaxed{line-height:1.6!important}.leading-loose{line-height:1.8!important}.bg-brand{background-color:var(--primary)!important}.bg-brand-light{background-color:var(--primary-light)!important}.text-brand{color:var(--primary)!important}.text-accent{color:var(--accent)!important}.border-brand{border-color:var(--border-accent)!important}.bg-sage{background-color:var(--sage)!important}.bg-sage-light{background-color:var(--sage-light)!important}.text-sage{color:var(--sage)!important}.border-sage{border-color:var(--border-sage)!important}.bg-terracotta{background-color:var(--terracotta)!important}.text-terracotta{color:var(--terracotta)!important}.bg-success{background-color:var(--success)!important}.bg-danger{background-color:var(--danger)!important}.bg-warning{background-color:var(--warning)!important}.text-success{color:var(--success)!important}.text-danger{color:var(--danger)!important}.text-warning{color:var(--warning)!important}.bg-blue{background-color:var(--primary)!important}.bg-blue-hover{background-color:var(--primary-hover)!important}.text-blue{color:var(--primary)!important}.border-primary{border-color:var(--border)!important}.hover\:bg-blue:hover{background-color:var(--primary)!important}.hover\:bg-blue-hover:hover{background-color:var(--primary-hover)!important}.hover\:bg-secondary:hover{background-color:var(--bg-secondary)!important}.hover\:text-blue:hover{color:var(--primary)!important}.shadow-sm{box-shadow:0 1px 2px #0000000a,0 1px 4px #00000014!important}.shadow{box-shadow:0 4px 12px #00000014,0 2px 4px #0000000a!important}.shadow-lg{box-shadow:0 10px 32px #0000001f,0 4px 8px #0000000f!important}.shadow-xl{box-shadow:0 16px 48px #00000026!important}.shadow-brand{box-shadow:0 4px 16px #9b8b7f33!important}.shadow-sage{box-shadow:0 4px 16px #a8b39c33!important}.shadow-none{box-shadow:none!important}.p-xs{padding:6px!important}.p-sm{padding:10px!important}.p-md{padding:14px!important}.p-lg{padding:18px!important}.p-xl{padding:24px!important}.p-2xl{padding:32px!important}.p-3xl{padding:40px!important}.px-xs{padding-left:6px!important;padding-right:6px!important}.px-sm{padding-left:10px!important;padding-right:10px!important}.px-md{padding-left:14px!important;padding-right:14px!important}.px-lg{padding-left:18px!important;padding-right:18px!important}.px-xl{padding-left:24px!important;padding-right:24px!important}.px-2xl{padding-left:32px!important;padding-right:32px!important}.py-xs{padding-top:6px!important;padding-bottom:6px!important}.py-sm{padding-top:10px!important;padding-bottom:10px!important}.py-md{padding-top:14px!important;padding-bottom:14px!important}.py-lg{padding-top:18px!important;padding-bottom:18px!important}.py-xl{padding-top:24px!important;padding-bottom:24px!important}.py-2xl{padding-top:32px!important;padding-bottom:32px!important}.gap-xs{gap:6px!important}.gap-sm{gap:10px!important}.gap-md{gap:14px!important}.gap-lg{gap:18px!important}.gap-xl{gap:24px!important}.gap-2xl{gap:32px!important}.space-y-xs>*+*{margin-top:6px!important}.space-y-sm>*+*{margin-top:10px!important}.space-y-md>*+*{margin-top:14px!important}.space-y-lg>*+*{margin-top:18px!important}.space-y-xl>*+*{margin-top:24px!important}.space-y-2xl>*+*{margin-top:32px!important}.mb-xs{margin-bottom:6px!important}.mb-sm{margin-bottom:10px!important}.mb-md{margin-bottom:14px!important}.mb-lg{margin-bottom:18px!important}.mb-xl{margin-bottom:24px!important}.mb-2xl{margin-bottom:32px!important}.mt-xs{margin-top:6px!important}.mt-sm{margin-top:10px!important}.mt-md{margin-top:14px!important}.mt-lg{margin-top:18px!important}.mt-xl{margin-top:24px!important}.mt-2xl{margin-top:32px!important}.rounded-xs{border-radius:3px!important}.rounded-sm{border-radius:6px!important}.rounded-md{border-radius:9px!important}.rounded-lg{border-radius:12px!important}.rounded-xl{border-radius:16px!important}.rounded-2xl{border-radius:20px!important}.rounded-full{border-radius:9999px!important}.btn{padding:11px 20px;border-radius:9px;font-weight:500;font-size:15px;transition:all .2s ease-out;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap;border:none;letter-spacing:.3px}.btn-primary{background:var(--gradient-brand);color:#fff;font-weight:600;box-shadow:0 2px 8px #9b8b7f40}.btn-primary:hover{opacity:.92;box-shadow:0 4px 16px #9b8b7f59;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0);box-shadow:0 1px 4px #9b8b7f33}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-sage{background:var(--gradient-sage);color:#fff;font-weight:600;box-shadow:0 2px 8px #a8b39c40}.btn-sage:hover{opacity:.92;box-shadow:0 4px 16px #a8b39c59;transform:translateY(-1px)}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background-color:var(--bg-elevated);border-color:var(--border-strong)}.btn-secondary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background-color:transparent;color:var(--text-secondary);border:1px solid transparent}.btn-ghost:hover{background-color:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border)}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-outline{background-color:transparent;color:var(--primary);border:1px solid var(--border-accent)}.btn-outline:hover{background-color:var(--primary-light);border-color:var(--primary)}.btn-sm{padding:8px 14px;font-size:13px;border-radius:7px}.btn-lg{padding:13px 24px;font-size:16px;border-radius:10px}.card{background-color:var(--bg-secondary);border-radius:12px;padding:18px;border:1px solid var(--border);transition:all .2s ease-out}.card-interactive{background-color:var(--bg-secondary);border-radius:12px;padding:18px;border:1px solid var(--border);cursor:pointer;transition:all .2s ease-out}.card-interactive:hover{background-color:var(--bg-tertiary);border-color:var(--border-strong);transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.card-elevated{background:var(--bg-secondary);border-radius:12px;padding:18px;border:1px solid var(--border);box-shadow:0 2px 8px #0000000d}.input{padding:11px 14px;border-radius:9px;background-color:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border);font-size:15px;width:100%;transition:all .2s ease-out;font-family:inherit;line-height:1.5}.input:hover{border-color:var(--border-strong)}.input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #9b8b7f1a;background-color:var(--bg-secondary)}.input:disabled{background-color:var(--bg-primary);color:var(--text-muted);cursor:not-allowed}.input::placeholder{color:var(--text-muted);font-weight:400}textarea.input{min-height:80px;resize:vertical;padding:12px 14px;line-height:1.6}select.input{color:var(--text-primary);cursor:pointer}select.input option{background-color:var(--bg-tertiary);color:var(--text-primary);padding:8px}.badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:9999px;font-size:11px;font-weight:600;letter-spacing:.03em}.badge-success{background-color:#10b98126;color:var(--success)}.badge-info{background-color:var(--primary-light);color:var(--accent)}.badge-warning{background-color:#f59e0b26;color:var(--warning)}.badge-danger{background-color:#ef444426;color:var(--danger)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-in{animation:slideIn .3s ease-out}.animate-slide-in-right{animation:slideInRight .3s ease-out}.animate-slide-in-up{animation:slideInUp .3s ease-out}.animate-pulse{animation:pulse 2.5s ease-in-out infinite}@media (max-width: 1024px){.hide-lg{display:none!important}--sidebar-width: 220px}@media (max-width: 768px){.hide-md{display:none!important}html,body,#root{font-size:14px}.text-2xl{font-size:18px}.text-3xl{font-size:22px}.text-4xl{font-size:26px}}@media (max-width: 640px){.hide-sm{display:none!important}html,body,#root{font-size:13px}.p-xl{padding:16px!important}.p-2xl{padding:20px!important}}
