:root{--bg-void:#090b0d;--bg-surface:#111418;--bg-surface-elevated:#181c22;--bg-inset:#0c0e11;--bg-glass:#111418d9;--text-main:#f0f4f8;--text-dim:#8b98a9;--text-faint:#485464;--signal-amber:#ff9e0b;--signal-amber-glow:#ff9e0b26;--signal-green:#0f6;--signal-green-glow:#00ff6626;--signal-blue:#00d4ff;--signal-red:#ff334b;--border-chassis:1px solid #202732;--border-bright:1px solid #313b4a;--border-subtle:1px solid #ffffff12;--font-display:"Instrument Serif", Georgia, serif;--font-body:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", monospace;--ease-snappy:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s}*{box-sizing:border-box;margin:0;padding:0}::selection{background:var(--signal-amber);color:#000}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-void)}::-webkit-scrollbar-thumb{background:#252d3a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3b4659}:focus-visible{outline:2px solid var(--signal-amber);outline-offset:2px}input,textarea,select{caret-color:var(--signal-amber)}body{background-color:var(--bg-void);color:var(--text-main);font-family:var(--font-body);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:.9375rem;line-height:1.6;position:relative}body:before{content:"";pointer-events:none;opacity:.025;z-index:999;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:fixed;inset:0}.app-container{max-width:1400px;margin:0 auto;padding:1.5rem clamp(1rem,3vw,2.5rem) 4rem}.masthead{border-bottom:var(--border-chassis);justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:1.25rem;display:flex}.brand-badge{align-items:center;gap:.75rem;display:flex}.led{background:var(--signal-green);width:8px;height:8px;box-shadow:0 0 8px var(--signal-green);border-radius:50%;animation:2.2s ease-in-out infinite pulseLed;display:inline-block}.led.amber{background:var(--signal-amber);box-shadow:0 0 8px var(--signal-amber)}@keyframes pulseLed{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.85)}}.brand-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text-main);font-size:1.75rem;font-weight:400;text-decoration:none}.brand-sub{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);border-left:var(--border-chassis);margin-left:.25rem;padding-left:.75rem;font-size:.7rem}.masthead-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.btn-tactile{font-family:var(--font-mono);background:var(--bg-surface-elevated);color:var(--text-main);border:var(--border-bright);cursor:pointer;-webkit-user-select:none;user-select:none;transition:transform var(--duration-fast) var(--ease-snappy), box-shadow var(--duration-fast) var(--ease-snappy), background var(--duration-fast) ease, border-color var(--duration-fast) ease;border-radius:2px;justify-content:center;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.8125rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-tactile:hover{background:#222730;border-color:#434f62;transform:translateY(-1px)}.btn-tactile:active{transform:translateY(1px);box-shadow:inset 0 2px 4px #0006}.btn-primary{background:var(--signal-amber);color:#000;border:1px solid #d98200;box-shadow:0 1px 3px #0000004d,inset 0 1px #ffffff4d}.btn-primary:hover{color:#000;background:#ffaf2e;border-color:#ffaf2e}.btn-success{background:var(--signal-green);color:#000;border:1px solid #00d154}.btn-success:hover{color:#000;background:#33ff85}.split-viewport{grid-template-columns:1fr 1.15fr;align-items:start;gap:2rem;display:grid}@media (max-width:1024px){.split-viewport{grid-template-columns:1fr}}.chassis-card{background:var(--bg-surface);border:var(--border-chassis);border-radius:2px;position:relative;overflow:hidden}.chassis-header{border-bottom:var(--border-chassis);font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);background:#00000040;justify-content:space-between;align-items:center;padding:.85rem 1.25rem;font-size:.75rem;display:flex}.chassis-body{padding:1.5rem}.mode-segmented{background:var(--bg-inset);border:var(--border-chassis);border-radius:2px;grid-template-columns:repeat(3,1fr);gap:3px;margin-bottom:1.5rem;padding:3px;display:grid}.mode-tab{color:var(--text-dim);font-family:var(--font-mono);cursor:pointer;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;gap:6px;padding:.5rem .25rem;font-size:.75rem;font-weight:500;transition:all .15s;display:flex}.mode-tab:hover{color:var(--text-main)}.mode-tab.active{background:var(--bg-surface-elevated);color:var(--text-main);border:var(--border-bright);font-weight:600}.chassis-dropzone{background:var(--bg-inset);text-align:center;cursor:pointer;border:1.5px dashed #2a3342;border-radius:2px;padding:3rem 1.5rem;transition:all .2s;position:relative}.chassis-dropzone:hover,.chassis-dropzone.dragover{border-color:var(--signal-amber);background:#ff9e0b08}.dropzone-icon{margin-bottom:.75rem;font-size:2.25rem;display:block}.dropzone-title{color:var(--text-main);margin-bottom:.25rem;font-size:.95rem;font-weight:600}.dropzone-sub{font-family:var(--font-mono);color:var(--text-dim);font-size:.75rem}.file-selected-box{background:var(--bg-inset);border:var(--border-bright);border-radius:2px;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.file-meta-name{font-family:var(--font-mono);color:var(--signal-amber);word-break:break-all;font-size:.85rem;font-weight:600}.file-meta-sub{font-family:var(--font-mono);color:var(--text-dim);font-size:.75rem}.form-field{margin-bottom:1.25rem}.field-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--text-dim);justify-content:space-between;align-items:center;margin-bottom:.45rem;font-size:.75rem;display:flex}.chassis-input,.chassis-textarea,.chassis-select{background:var(--bg-inset);border:var(--border-chassis);width:100%;color:var(--text-main);font-family:var(--font-body);border-radius:2px;padding:.65rem .85rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.chassis-input.mono,.chassis-textarea.mono{font-family:var(--font-mono);font-size:.8125rem}.chassis-input:focus,.chassis-textarea:focus,.chassis-select:focus{border-color:var(--signal-amber);box-shadow:0 0 0 2px var(--signal-amber-glow);outline:none}.event-hero-title{font-family:var(--font-display);color:var(--text-main);margin-bottom:1.25rem;font-size:1.85rem;font-weight:400;line-height:1.15}.time-matrix-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.25rem;display:grid}.matrix-cell{background:var(--bg-inset);border:var(--border-chassis);border-radius:2px;padding:.85rem 1rem}.matrix-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:.35rem;font-size:.7rem}.matrix-value{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--text-main);font-size:1.05rem;font-weight:600}.status-badge-tag{font-family:var(--font-mono);border:var(--border-chassis);border-radius:2px;align-items:center;gap:6px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.badge-online{color:var(--signal-blue);background:#00d4ff1a;border-color:#00d4ff4d}.badge-offline{color:var(--signal-amber);background:#ff9e0b1a;border-color:#ff9e0b4d}.modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000c;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--bg-surface);border:var(--border-bright);border-radius:2px;width:100%;max-width:620px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 50px #0009}.modal-header{border-bottom:var(--border-chassis);font-family:var(--font-mono);justify-content:space-between;align-items:center;padding:1rem 1.5rem;font-size:.85rem;font-weight:600;display:flex}.modal-body{padding:1.5rem}.modal-footer{border-top:var(--border-chassis);background:#0003;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;display:flex}.spinner-chassis{border:2px solid #0003;border-top-color:#000;border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}
