:root{--bg-main: #0a0a0c;--bg-card: #141417;--bg-sidebar: #0f0f12;--accent: #6366f1;--accent-hover: #4f46e5;--text-main: #f9fafb;--text-muted: #9ca3af;--border: rgba(255, 255, 255, .08);--radius-lg: 16px;--radius-md: 12px;--radius-sm: 8px;--shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05)}*{box-sizing:border-box;margin:0;padding:0;-webkit-font-smoothing:antialiased}body{font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-main);color:var(--text-main);min-height:100vh}#root{width:100%}.app-container{display:flex;width:100%;min-height:100vh;position:relative}.sidebar{width:260px;background-color:var(--bg-sidebar);border-right:1px solid var(--border);padding:24px 16px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;z-index:50}.main-content{flex:1;padding:40px;max-width:1200px;margin:0 auto;width:100%}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px}.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px}.chart-card{height:350px;padding:24px 16px 12px}.toast-container{position:fixed;top:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:12px;pointer-events:none}.toast{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;background:#1c1c21;border:1px solid var(--border);box-shadow:0 8px 32px #0006;color:#fff;font-size:14px;min-width:300px;max-width:450px;position:relative;pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.toast-close{background:none;border:none;padding:4px;cursor:pointer;color:var(--text-muted);display:flex;align-items:center;justify-content:center;opacity:.6}.toast-close:hover{opacity:1}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(20px)}}.mobile-menu-toggle{display:none;position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:var(--accent);color:#fff;border:none;cursor:pointer;z-index:100;box-shadow:0 4px 20px #6366f166;align-items:center;justify-content:center}@media(max-width:768px){.mobile-menu-toggle{display:flex}.app-container{flex-direction:column}.sidebar{position:fixed;top:0;left:0;width:280px;height:100vh;transform:translate(-100%);transition:transform .3s ease;border-right:1px solid var(--border);border-bottom:none;z-index:200}.sidebar.open{transform:translate(0)}.sidebar-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:150}.sidebar-overlay.open{display:block}.main-content{padding:24px 16px;margin-left:0}.dashboard-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.detail-grid{grid-template-columns:1fr;gap:24px}.chart-card{height:280px;padding:16px 12px 8px}.toast-container{top:16px;right:16px}.toast{min-width:auto;width:min(480px,100%)}}@media(max-width:450px){.main-content{padding:16px 12px}.card{padding:16px}.btn{padding:10px 16px;font-size:13px}.mobile-menu-toggle{bottom:16px;right:16px;width:48px;height:48px}.toast-container{left:50%;right:auto;transform:translate(-50%);width:calc(100% - 28px);align-items:center}.toast{width:100%;max-width:420px}}.card{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow);transition:transform .2s ease,border-color .2s ease}.card:hover{border-color:#ffffff26}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 20px;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;border:1px solid transparent;gap:8px}.btn-primary{background-color:var(--accent);color:#fff}.btn-primary:hover{background-color:var(--accent-hover)}.btn-secondary{background-color:#ffffff0d;color:var(--text-main);border-color:var(--border)}.btn-secondary:hover{background-color:#ffffff1a}input{width:100%;padding:12px 16px;background-color:#0003;border:1px solid var(--border);border-radius:var(--radius-sm);color:#fff;font-size:14px;margin-bottom:16px;transition:border-color .2s ease}input:focus{outline:none;border-color:var(--accent)}.badge{padding:4px 12px;border-radius:9999px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:10px}::-webkit-scrollbar-thumb:hover{background:#fff3}
