:root,:root[data-theme=dark]{--bg:#121212;--surface:#1c1c1c;--surface2:#222;--border:#2e2e2e;--accent:#3ecf8e;--accent-hover:#30b97a;--accent-fg:#121212;--accent2:#f5c542;--accent3:#60a5fa;--accent4:#a78bfa;--accent5:#818cf8;--accent6:#fb923c;--danger:#f56565;--text:#ededed;--muted:#707070;--row-group-bg:#33290a;--row-group-text:#f5c542;--row-transport-bg:#211505;--row-transport-text:#d99c2b;--row-assembly-bg:#191223;--row-assembly-text:#a78bfa;--mono:"Fira Code", monospace;--sans:"Inter", sans-serif;--display:"Inter", sans-serif}:root[data-theme=light]{--bg:#f8f9fa;--surface:#fff;--surface2:#f1f3f5;--border:#e2e5e9;--accent:#059669;--accent-hover:#047857;--accent-fg:#fff;--accent2:#b45309;--accent3:#1d4ed8;--accent4:#7c3aed;--accent5:#4f46e5;--accent6:#c2410c;--danger:#dc2626;--text:#1c1c1c;--muted:#6b7280;--row-group-bg:#fef3c7;--row-group-text:#92400e;--row-transport-bg:#fff7ed;--row-transport-text:#9a3412;--row-assembly-bg:#f5f3ff;--row-assembly-text:#5b21b6}:root{--mobile-nav-h:0px}*{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--sans);height:100%;font-size:14px;overflow:hidden}#root{flex-direction:column;height:100%;display:flex}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{-moz-appearance:textfield}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}button,input,select,textarea{touch-action:manipulation}.scope-display ul,.scope-display ol{margin:2px 0;padding-left:1.4em}.scope-display li{margin:1px 0}.scope-display b,.scope-display strong{font-weight:700}.scope-display i,.scope-display em{font-style:italic}.scope-display u{text-decoration:underline}.scope-display div{min-height:1em}[contenteditable] ul,[contenteditable] ol{margin:2px 0;padding-left:1.4em;list-style-position:outside}[contenteditable] li{margin:1px 0}@media (max-width:767px){html,body,#root{height:100dvh}table{-webkit-overflow-scrolling:touch;width:max-content;min-width:100%;display:block;overflow-x:auto}input,select{min-height:36px}}
