:root{--bg: #f4f6fb;--surface: #ffffff;--surface-2: #eef1f7;--text: #182033;--muted: #5b6577;--border: #d9dfeb;--accent: #2a6df4;--accent-contrast: #ffffff;--danger: #d0353a;--ok: #1f9d55;--warn: #c7820a;--shadow: 0 10px 30px rgba(20, 30, 60, .12);--radius: 12px}:root[data-theme=dark]{--bg: #0e1320;--surface: #161d2e;--surface-2: #1d2740;--text: #e7ecf6;--muted: #9aa6bd;--border: #2a3450;--accent: #5b8cff;--accent-contrast: #0e1320;--danger: #ff6b70;--ok: #46c882;--warn: #e7b24a;--shadow: 0 10px 30px rgba(0, 0, 0, .45)}*{box-sizing:border-box}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text)}a{color:var(--accent)}.app{display:flex;min-height:100vh}.sidebar{width:232px;flex-shrink:0;background:var(--surface);border-right:1px solid var(--border);padding:18px 12px;display:flex;flex-direction:column;gap:4px}.brand{font-weight:800;font-size:20px;padding:6px 10px 14px;letter-spacing:-.02em}.brand span{color:var(--accent)}.navitem{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:10px;color:var(--text);text-decoration:none;cursor:pointer;border:none;background:none;width:100%;text-align:left;font-size:14px}.navitem:hover{background:var(--surface-2)}.navitem.active{background:var(--accent);color:var(--accent-contrast)}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-bottom:1px solid var(--border);background:var(--surface)}.topbar h1{font-size:18px;margin:0}.content{padding:24px;overflow:auto}.rowflex{display:flex;align-items:center;gap:10px}.banner{background:color-mix(in srgb,var(--warn) 16%,var(--surface));border:1px solid color-mix(in srgb,var(--warn) 45%,var(--border));color:var(--text);padding:10px 14px;border-radius:10px;font-size:13px;margin-bottom:18px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}table{width:100%;border-collapse:collapse;font-size:14px}thead th{text-align:left;padding:11px 14px;background:var(--surface-2);color:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border)}tbody td{padding:11px 14px;border-bottom:1px solid var(--border)}tbody tr:last-child td{border-bottom:none}tbody tr:hover{background:var(--surface-2)}.col-actions{text-align:right;white-space:nowrap}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.pill.ready,.pill.closed,.pill.done,.pill.sent{background:color-mix(in srgb,var(--ok) 18%,transparent);color:var(--ok)}.pill.in_progress,.pill.conditional{background:color-mix(in srgb,var(--warn) 18%,transparent);color:var(--warn)}.pill.not_ready,.pill.failed{background:color-mix(in srgb,var(--danger) 16%,transparent);color:var(--danger)}.pill.blocked{background:var(--danger);color:#fff;border-color:var(--danger)}.pill.open,.pill.planned,.pill.queued,.pill.in_transit{background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent)}.iconbtn{display:inline-grid;place-items:center;width:32px;height:32px;margin-left:4px;border-radius:9px;border:1px solid var(--border);background:var(--surface);color:var(--muted);cursor:pointer;transition:all .12s}.iconbtn:hover{color:var(--accent);border-color:var(--accent)}.iconbtn.danger:hover{color:var(--danger);border-color:var(--danger)}.iconbtn svg{width:16px;height:16px}.btn{padding:9px 16px;border-radius:10px;border:1px solid var(--accent);background:var(--accent);color:var(--accent-contrast);font-weight:600;font-size:14px;cursor:pointer}.btn.ghost{background:transparent;color:var(--text);border-color:var(--border)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a101e73;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;z-index:50}.dialog{width:100%;max-width:560px;border-radius:16px;border:1px solid var(--border);border-left:4px solid var(--accent);background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 7%,var(--surface)),var(--surface) 55%);box-shadow:var(--shadow);padding:22px}.dialog h2{margin:0 0 4px;font-size:18px}.dialog .sub{color:var(--muted);font-size:13px;margin-bottom:16px}.dialog.danger{border-left-color:var(--danger);background:linear-gradient(160deg,color-mix(in srgb,var(--danger) 8%,var(--surface)),var(--surface) 55%)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1 / -1}.field label{font-size:12px;font-weight:600;color:var(--muted)}.field input,.field select,.field textarea{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;outline:none;width:100%}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent)}.toggle{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.toggle input{display:none}.toggle .track{width:42px;height:24px;border-radius:999px;background:var(--border);position:relative;transition:background .15s}.toggle .track:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s}.toggle input:checked+.track{background:var(--accent)}.toggle input:checked+.track:after{transform:translate(18px)}.pillgroup{display:inline-flex;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:3px;gap:2px}.pillgroup button{border:none;background:none;color:var(--muted);padding:6px 14px;border-radius:999px;cursor:pointer;font-size:13px;font-weight:600}.pillgroup button.active{background:var(--accent);color:var(--accent-contrast)}.login{min-height:100vh;display:grid;place-items:center;padding:20px}.login .card{max-width:380px;width:100%;padding:28px}.login h1{margin:0 0 2px}.login .sub{color:var(--muted);font-size:13px;margin-bottom:20px}.empty{padding:40px;text-align:center;color:var(--muted)}@media (max-width: 760px){.sidebar{position:fixed;z-index:40;height:100%;transform:translate(-100%);transition:transform .2s}.sidebar.open{transform:translate(0)}.formgrid{grid-template-columns:1fr}.hide-sm{display:none}}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px}.stat .n{font-size:30px;font-weight:800;letter-spacing:-.02em}.stat .l{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.bars{display:flex;flex-direction:column;gap:10px}.bar{display:grid;grid-template-columns:120px 1fr 40px;align-items:center;gap:12px;font-size:13px}.bar .track2{display:block;height:10px;border-radius:999px;background:var(--surface-2);overflow:hidden}.bar .fill{display:block;height:100%;min-width:2px;border-radius:999px}@media (max-width: 760px){.stats{grid-template-columns:repeat(2,1fr)}.bar{grid-template-columns:90px 1fr 32px}}.combo{position:relative}.combo input{width:100%}.combo-panel{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:10;margin:0;padding:4px;list-style:none;max-height:240px;overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow)}.combo-opt{padding:8px 10px;border-radius:8px;cursor:pointer;font-size:14px}.combo-opt.active{background:var(--accent);color:var(--accent-contrast)}.combo-add{color:var(--muted);font-style:italic;border-top:1px solid var(--border);margin-top:2px}.combo-add.active{color:var(--accent-contrast);font-style:normal}.pill.unknown,.pill.cancelled{background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted)}.navitem{transition:background .12s}.navicon{width:18px;height:18px;display:inline-flex;flex-shrink:0}.navicon svg{width:18px;height:18px}.sidebar{transition:width .15s ease}.sidebar.collapsed{width:64px}.sidebar.collapsed .brand{text-align:center;padding:6px 0 14px;font-size:18px}.sidebar.collapsed .navlabel{display:none}.sidebar.collapsed .navitem{justify-content:center;padding:10px 0}.site-signature{position:fixed;bottom:1rem;left:1rem;display:inline-flex;gap:4px;padding:.4rem .5rem;background:#0b0b0b;border-radius:.375rem;opacity:.45;z-index:10}.site-signature:hover{opacity:.85}.site-signature__byte{display:grid;grid-template-rows:repeat(8,1fr);gap:2px}.site-signature__dot{width:3px;height:3px;border-radius:50%;border:1px solid #ffffff}.site-signature__dot--one{background:#fff}.hide-sm-inv{display:none!important}@media (max-width: 760px){.hide-sm-inv{display:inline-grid!important}.card{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:520px}.content{padding:16px}.topbar{padding:12px 16px}.topbar h1{font-size:16px}.sidebar.collapsed{width:232px}.sidebar.collapsed .navlabel{display:inline}.sidebar.collapsed .navitem{justify-content:flex-start;padding:9px 12px}.sidebar.collapsed .brand{text-align:left;padding:6px 10px 14px}.dialog{max-width:100%}.pillgroup{flex-wrap:wrap}.login .card{padding:22px}}html,body{max-width:100%;overflow-x:hidden}.celllink{color:var(--accent);cursor:pointer}.celllink:hover{text-decoration:underline}.login{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:20px}.login .card{max-width:400px;width:100%;padding:32px 30px;box-shadow:0 24px 60px #00000073;border:1px solid var(--border);position:relative;overflow:hidden}.login .card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--accent)}.login .brand{font-size:26px;letter-spacing:-.02em}.login .sub{margin-bottom:22px}.login input{padding:12px 14px}.login .btn{padding:12px 16px;font-size:15px}
