:root{--bg-primary: #fafaf8;--bg-secondary: #f0efe9;--bg-card: #ffffff;--bg-elevated: #ffffff;--text-primary: #1a1a1a;--text-secondary: #5c5c5c;--text-tertiary: #8c8c8c;--text-accent: #1a1a1a;--border-light: #e8e6e1;--border-medium: #d4d2cc;--border-focus: #1a1a1a;--success: #16a34a;--success-light: rgba(22, 163, 74, .08);--danger: #ef4444;--danger-light: rgba(239, 68, 68, .08);--accent: #1a1a1a;--accent-light: rgba(0, 0, 0, .03);--accent-card-bg: #1a1a1a;--accent-card-text: #fafaf8;--accent-card-muted: rgba(250, 250, 248, .7);--accent-card-overlay: rgba(255, 255, 255, .12);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .06);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .08);--shadow-float: 0 8px 28px rgba(0, 0, 0, .12), 0 2px 8px rgba(0, 0, 0, .04);--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--radius-full: 9999px;--radius: 16px}[data-theme=dark]{--bg-primary: #0a0a0a;--bg-secondary: #161614;--bg-card: #1c1c1a;--bg-elevated: #252523;--text-primary: #f5f5f3;--text-secondary: #a3a39e;--text-tertiary: #6b6b66;--text-accent: #f5f5f3;--border-light: #2a2a28;--border-medium: #3a3a37;--border-focus: #f5f5f3;--success-light: rgba(22, 163, 74, .15);--danger-light: rgba(239, 68, 68, .15);--accent-light: rgba(255, 255, 255, .05);--accent-card-bg: #f5f5f3;--accent-card-text: #0a0a0a;--accent-card-muted: rgba(10, 10, 10, .7);--accent-card-overlay: rgba(0, 0, 0, .08);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 2px 8px rgba(0, 0, 0, .5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .6);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .7);--shadow-float: 0 8px 28px rgba(0, 0, 0, .8)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"cv02","cv03","cv04","cv11";overscroll-behavior:none}h1,h2,h3,h4,h5,h6{font-weight:600;color:var(--text-primary);letter-spacing:-.02em;line-height:1.2}h1{font-size:2.5rem;font-weight:700}h2{font-size:1.75rem}h3{font-size:1.25rem}h4{font-size:1rem}p{color:var(--text-secondary);line-height:1.6}button,input,select,textarea{font-family:var(--font-sans)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}@media(max-width:768px){.container{padding:0 var(--spacing-md)}}.card{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:border-color .2s ease}.card:hover{border-color:var(--border-medium)}.card-elevated{background:var(--bg-elevated);border:none;box-shadow:var(--shadow-md)}.card-elevated:hover{box-shadow:var(--shadow-lg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--text-primary);cursor:pointer;font-weight:500;font-size:.9375rem;transition:all .15s ease;white-space:nowrap}.btn:hover{background:var(--accent-light)}.btn:active{transform:scale(.98)}.btn-primary{background:var(--text-primary);color:var(--bg-primary);font-weight:600}.btn-primary:hover{opacity:.9}.btn-secondary{background:var(--bg-secondary);border:1px solid var(--border-light)}.btn-secondary:hover{background:var(--bg-card);border-color:var(--border-medium)}.btn-ghost{background:transparent;padding:8px 12px}.btn-ghost:hover{background:var(--accent-light)}.btn-icon{padding:10px;border-radius:var(--radius-full);width:40px;height:40px}input,select,textarea{padding:14px 16px;border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:1rem;transition:all .15s ease;background-color:var(--bg-card);color:var(--text-primary);width:100%}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}select option{background-color:var(--bg-card);color:var(--text-primary)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--text-primary);box-shadow:0 0 0 3px var(--accent-light)}input:hover:not(:focus),select:hover:not(:focus){border-color:var(--border-medium)}label{display:block;font-size:.875rem;font-weight:500;color:var(--text-primary);margin-bottom:8px}input[type=range]{-webkit-appearance:none;appearance:none;background:var(--border-light);border-radius:var(--radius-full);height:4px;cursor:pointer;padding:0;border:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:var(--text-primary);cursor:pointer;border:3px solid var(--bg-card);box-shadow:var(--shadow-md);transition:all .15s ease}input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.1)}input[type=range]::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:var(--text-primary);cursor:pointer;border:3px solid var(--bg-card);box-shadow:var(--shadow-md);transition:all .15s ease}input[type=range]::-moz-range-thumb:hover{transform:scale(1.1)}input[type=checkbox],input[type=radio]{width:20px;height:20px;accent-color:var(--text-primary)}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.badge-success{background:var(--success-light);color:var(--success)}.badge-danger{background:var(--danger-light);color:var(--danger)}.badge-neutral{background:var(--accent-light);color:var(--text-secondary)}.divider{height:1px;background:var(--border-light);margin:var(--spacing-lg) 0}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.stat-value{font-size:2.5rem;font-weight:700;letter-spacing:-.03em;line-height:1.1}.stat-value-sm{font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.stat-label{font-size:.875rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.04em}.progress-bar{height:8px;width:100%;background:var(--bg-secondary);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;background:var(--text-primary);border-radius:var(--radius-full);transition:width .6s cubic-bezier(.4,0,.2,1)}.metric-card{padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-md)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-spin{animation:spin 1s linear infinite}.animate-fade-in{animation:fadeIn .3s ease-out}.animate-slide-up{animation:slideUp .4s ease-out}.animate-pulse{animation:pulse 2s ease-in-out infinite}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}::selection{background:var(--text-primary);color:var(--bg-primary)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:8px 12px;background:var(--text-primary);color:var(--bg-primary);font-size:.75rem;font-weight:500;border-radius:var(--radius-sm);white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;pointer-events:none;margin-bottom:8px}[data-tooltip]:hover:after{opacity:1;visibility:visible}.modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.modal-content{background:var(--bg-card);border-radius:var(--radius-lg);max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.grid{display:grid;gap:var(--spacing-md)}.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}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-xs{gap:var(--spacing-xs)}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.gap-lg{gap:var(--spacing-lg)}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.border{border:1px solid var(--border-light)}.border-t{border-top:1px solid var(--border-light)}.border-b{border-bottom:1px solid var(--border-light)}@media(max-width:768px){.hidden-mobile{display:none!important}}@media(min-width:769px){.hidden-desktop{display:none!important}}@media(max-width:768px){h1{font-size:1.75rem}h2{font-size:1.375rem}h3{font-size:1.125rem}.stat-value{font-size:1.75rem}.stat-value-sm{font-size:1.25rem}.card{padding:var(--spacing-md);border-radius:var(--radius-md)}.modal-overlay{padding:0;align-items:flex-end}.modal-content{max-width:100%!important;width:100%!important;max-height:92vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding-bottom:env(safe-area-inset-bottom,0)}.btn-icon{width:44px;height:44px}input,select,textarea{font-size:1rem}.btn:active,button:active{opacity:.85}button,[role=button]{-webkit-tap-highlight-color:transparent}}@media(max-width:480px){h1,.stat-value{font-size:1.5rem}}
