:root { color-scheme: dark; font-family: Inter, "Segoe UI", system-ui, sans-serif; background: #101418; color: #f8fafc; } * { box-sizing: border-box; } body { margin: 0; min-height: 100vh; background: linear-gradient(180deg, rgba(20, 184, 166, 0.13), transparent 280px), #101418; } button, a, textarea { font: inherit; } .shell { width: min(1280px, calc(100vw - 40px)); margin: 0 auto; padding: 28px 0 40px; } .topbar, .panelHead, .syncRow { display: flex; align-items: center; justify-content: space-between; gap: 16px; } .topbar { margin-bottom: 22px; } h1, h2, h3, p { margin: 0; } h1 { font-size: 28px; letter-spacing: 0; } .topbar p { margin-top: 8px; color: #aeb7c2; } .connection { display: inline-flex; align-items: center; gap: 8px; } .dot { width: 10px; height: 10px; border-radius: 999px; background: #ef4444; box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.12); } .dot.ok { background: #22c55e; box-shadow: 0 0 0 4px rgba(34, 197, 94, 0.16); } .grid { display: grid; grid-template-columns: minmax(0, 1.4fr) minmax(360px, 0.8fr); gap: 18px; } .panel { border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 8px; background: rgba(255, 255, 255, 0.055); padding: 18px; } .scenes { grid-row: span 2; } h2 { font-size: 17px; } button, .linkGrid a { border: 1px solid rgba(255, 255, 255, 0.14); border-radius: 6px; background: rgba(255, 255, 255, 0.07); color: #f8fafc; padding: 9px 12px; cursor: pointer; text-decoration: none; } button:hover, .linkGrid a:hover { border-color: rgba(20, 184, 166, 0.8); } .primary { width: 100%; margin-top: 12px; background: #14b8a6; border-color: #14b8a6; color: #071211; font-weight: 760; } .sceneList, .syncStatus, .linkGrid, .actionGrid { display: grid; gap: 10px; } .sceneList, .syncStatus, .linkGrid { margin-top: 14px; } .linkGrid { grid-template-columns: 1fr; } .scene { display: grid; grid-template-columns: 1fr auto; gap: 12px; align-items: center; padding: 14px; border-radius: 8px; border: 1px solid rgba(255, 255, 255, 0.08); background: rgba(255, 255, 255, 0.045); } .scene.active { border-color: rgba(20, 184, 166, 0.85); background: rgba(20, 184, 166, 0.12); } .scene h3 { font-size: 16px; margin-bottom: 6px; } .scene p { color: #aeb7c2; font-size: 13px; overflow-wrap: anywhere; } .syncRow { padding: 9px 10px; border-radius: 6px; background: rgba(0, 0, 0, 0.22); color: #cbd5e1; font-size: 13px; } .syncRow strong { color: #f8fafc; } .actionGrid { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 14px; } .customAction { display: grid; gap: 8px; margin-top: 14px; color: #cbd5e1; } textarea { resize: vertical; width: 100%; border: 1px solid rgba(255, 255, 255, 0.12); border-radius: 6px; background: rgba(0, 0, 0, 0.28); color: #f8fafc; padding: 10px; } @media (max-width: 980px) { .grid, .topbar { grid-template-columns: 1fr; display: grid; } .scenes { grid-row: auto; } }