:root{--bg-color: #f1f5f9;--surface-color: #ffffff;--text-primary: #0f172a;--text-secondary: #64748b;--primary-color: #0284c7;--primary-hover: #0369a1;--border-color: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--header-height: 64px;--sidebar-width: 320px;--font-family: "Inter", system-ui, -apple-system, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);overflow:hidden;-webkit-font-smoothing:antialiased}#root{width:100vw;height:100vh;display:flex;flex-direction:column}.simulation-layout{display:flex;flex-direction:column;height:100%}.app-header{height:var(--header-height);background:var(--surface-color);border-bottom:1px solid var(--border-color);display:flex;align-items:center;padding:0 2rem;flex-shrink:0;z-index:10}.app-header h1{font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0}.main-wrapper{display:flex;flex:1;overflow:hidden}.app-controls{width:var(--sidebar-width);background:var(--surface-color);border-right:1px solid var(--border-color);padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:2rem}.controls-container{display:flex;flex-direction:column;gap:2rem}.playback-controls{display:flex;flex-direction:column;gap:1rem}.app-content{flex:1;display:flex;flex-direction:column;overflow-y:auto;padding:1rem;gap:2rem}.canvas-container{display:flex;justify-content:center;background:#fff;padding:1rem;border-radius:8px;box-shadow:var(--shadow-sm);border:1px solid var(--border-color);width:fit-content;margin:0 auto}.btn{background:var(--primary-color);color:#fff;border:none;padding:.75rem 1rem;border-radius:6px;cursor:pointer;transition:background-color .2s;font-weight:500;font-size:.95rem;width:100%}.btn:hover{background:var(--primary-hover)}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);font-weight:600}.input-field{background:#fff;border:1px solid var(--border-color);color:var(--text-primary);padding:.625rem;border-radius:6px;font-family:inherit;width:100%;transition:border-color .2s}.input-field:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 2px #0284c71a}input[type=range]{-webkit-appearance:none;appearance:none;width:100%;background:transparent}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:16px;width:16px;border-radius:50%;background:var(--primary-color);cursor:pointer;margin-top:-6px;border:2px solid white;box-shadow:0 1px 3px #0003}input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;cursor:pointer;background:var(--border-color);border-radius:2px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;width:100%;max-width:900px;margin:0 auto}.stat-box{background:transparent;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.stat-box .input-label{font-size:.7rem}.glass-panel{background:var(--surface-color);border:1px solid var(--border-color);border-radius:8px;box-shadow:var(--shadow-sm)}.dashboard-card{background-color:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);border-radius:16px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.dashboard-stats{border-top:1px solid var(--border-color);padding-top:1.5rem}.dashboard-top-row{display:flex;gap:0;flex-wrap:nowrap}.canvas-wrapper{flex:3 1 0;min-width:0}.graphs-wrapper{flex:2 1 0;display:flex;flex-direction:column;gap:0;min-width:0}@media(max-width:1000px){.dashboard-top-row{flex-direction:column}.canvas-wrapper{width:100%;flex:auto}.graphs-wrapper{width:100%;flex:auto;height:300px;margin-top:2rem;margin-bottom:2rem;padding-bottom:2rem}.app-controls{position:fixed;top:0;left:0;bottom:0;width:280px;z-index:50;transform:translate(-100%);transition:transform .3s ease;box-shadow:var(--shadow-md)}.app-controls.open{transform:translate(0)}.sidebar-overlay,.hamburger-btn{display:block!important}.mobile-only-header{display:flex!important}.dashboard-stats{margin-top:4rem}}.mobile-only-header{display:none}
