*{box-sizing:border-box}:root{--bg:#0f1420;--panel:#161d2e;--panel-border:#263049;--text:#e6ebf5;--text-dim:#8b95ab;--accent:#4f8dfd;--ok:#22c55e;--bad:#ef4444;--pending:#9ca3af;--warn:#f59e0b;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}body,html{margin:0;padding:0;background:var(--bg);color:var(--text)}button{font-family:inherit;cursor:pointer;background:var(--accent);color:#fff;border:none;border-radius:6px;padding:6px 10px;font-size:.85rem}button.secondary{background:transparent;border:1px solid var(--panel-border);color:var(--text-dim)}button:disabled{opacity:.4;cursor:not-allowed}select{background:var(--bg);color:var(--text);border:1px solid var(--panel-border);border-radius:6px;padding:4px 6px}h1,h2{margin:0 0 8px}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;color:var(--text-dim);font-size:1.1rem}.dashboard{min-height:100vh;padding:16px}.dashboard-header p{color:var(--text-dim);margin:0 0 16px;font-size:.9rem}.dashboard-grid{display:grid;grid-template-columns:1fr 280px;grid-gap:16px;gap:16px;align-items:start}@media (max-width:860px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-main{display:flex;flex-direction:column;gap:16px}section.admin-panel,section.belt-panel,section.exits-panel,section.stations-row{background:var(--panel);border:1px solid var(--panel-border);border-radius:10px;padding:14px}.hint{font-weight:400;font-size:.75rem;color:var(--text-dim)}.belt-track{position:relative;display:flex;gap:10px;align-items:center;min-height:64px;padding:10px;border-radius:999px;overflow-x:auto;background-image:repeating-linear-gradient(90deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,.05) 12px,transparent 0,transparent 24px);background-size:200% 100%;animation:belt-scroll 6s linear infinite}.belt-track--conv{border:2px dashed var(--panel-border)}.belt-track--cross{border:2px dashed var(--accent);min-height:90px}@keyframes belt-scroll{0%{background-position:0 0}to{background-position:-48px 0}}.belt-empty-hint{color:var(--text-dim);font-size:.85rem;padding-left:8px}.package-token{display:flex;align-items:center;gap:6px;background:#1f2740;border:1px solid var(--panel-border);border-radius:999px;padding:6px 10px;font-size:.8rem;white-space:nowrap;flex:none}.package-token-dot{width:8px;height:8px;border-radius:999px;flex:none}.stations-row{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:10px;gap:10px}.station-box{border:1px solid var(--panel-border);border-radius:8px;padding:10px;background:#131a2b;display:flex;flex-direction:column;gap:8px}.station-box--inactive{opacity:.5}.station-header{justify-content:space-between;font-size:.85rem}.station-header,.toggle{display:flex;align-items:center}.toggle{gap:4px;font-size:.75rem;color:var(--text-dim)}.station-slot{min-height:32px;display:flex;align-items:center}.station-slot-empty{color:var(--text-dim);font-size:.75rem}.station-actions{display:flex;gap:6px}.exits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-gap:10px;gap:10px}.exit-box{border:1px solid var(--panel-border);border-radius:8px;padding:10px;background:#131a2b;display:flex;flex-direction:column;gap:6px}.exit-box--closed,.exit-box--full{opacity:.55}.exit-box--review{border-color:var(--warn)}.exit-header{display:flex;justify-content:space-between;font-size:.85rem}.exit-count{font-weight:600;color:var(--accent)}.admin-panel{display:flex;flex-direction:column;gap:12px;position:-webkit-sticky;position:sticky;top:16px}.conn-status{font-size:.75rem;padding:4px 8px;border-radius:6px;width:-moz-fit-content;width:fit-content}.conn-status--up{background:rgba(34,197,94,.15);color:var(--ok)}.conn-status--down{background:rgba(239,68,68,.15);color:var(--bad)}.admin-belts{display:flex;flex-direction:column;gap:6px}.admin-belt-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.spawn-btn{width:100%}.admin-stats{font-size:.8rem;color:var(--text-dim)}.admin-stats,.context-menu{display:flex;flex-direction:column;gap:4px}.context-menu{position:fixed;background:var(--panel);border:1px solid var(--panel-border);border-radius:8px;padding:6px;z-index:50;box-shadow:0 8px 24px rgba(0,0,0,.4);min-width:160px}.context-menu-title{font-size:.7rem;color:var(--text-dim);padding:2px 6px}.context-menu button{background:transparent;color:var(--text);text-align:left;border-radius:4px}.context-menu button:hover:not(:disabled){background:hsla(0,0%,100%,.06)}