:root{--bg: #141414;--side: #1c1c1b;--surface: #1f1f1e;--raised: #262624;--line: #3a3a37;--text: #f1efe8;--muted: #b4b2a9;--faint: #888780;--accent: #d85a30;--ok: #3fa66b;--bad: #e0574f;color-scheme:dark;font-family:Segoe UI,Tahoma,Noto Sans Arabic,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:15px}h1{font-size:22px;font-weight:600;margin:0 0 18px}h2{font-size:16px;font-weight:600;margin:0}code{background:var(--raised);padding:2px 6px;border-radius:4px;font-size:13px}code.block{display:block;padding:10px 12px;margin:8px 0;white-space:pre-wrap;word-break:break-all}.ltr{direction:ltr;unicode-bidi:isolate;text-align:start}.muted{color:var(--muted)}.danger{color:var(--bad)}.center{min-height:100vh;display:grid;place-items:center;padding:16px}.logo{font-size:22px;font-weight:600;margin:0 0 20px}.logo b{color:var(--accent);font-weight:600}.login{width:min(380px,100%)}.shell{display:flex;min-height:100vh}aside{width:250px;background:var(--side);padding:22px 14px;display:flex;flex-direction:column;gap:4px;flex-shrink:0}aside .spacer{flex:1}aside .who{padding:8px 12px;word-break:break-all}.nav{background:transparent;border:0;color:var(--muted);text-align:start;padding:10px 12px;border-radius:8px;cursor:pointer;font:inherit}.nav:hover{background:var(--raised);color:var(--text)}.nav.active{background:var(--raised);color:var(--text);box-shadow:inset -3px 0 var(--accent)}.scope{margin:6px 0 12px}main{flex:1;padding:28px 32px;max-width:1200px;min-width:0}.card{background:var(--surface);border-radius:12px;padding:18px 20px;margin-bottom:18px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:0 18px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:18px}.stat{background:var(--surface);border-radius:12px;padding:16px 18px;display:flex;flex-direction:column;gap:4px}.stat b{font-size:26px;font-weight:600}.stat span{color:var(--muted);font-size:13px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field span{font-size:13px;color:var(--muted)}.field small{color:var(--faint);font-size:12px}.check{display:flex;align-items:center;gap:8px;margin:6px 0 12px}input,select,textarea{background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:9px 11px;font:inherit;width:100%}input[type=checkbox]{width:auto;accent-color:var(--accent)}input[type=color]{padding:2px;height:40px}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}textarea{min-height:80px;resize:vertical}button{background:var(--raised);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:8px 14px;font:inherit;cursor:pointer}button:hover:not(:disabled){border-color:var(--muted)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.danger{color:var(--bad)}.inline{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.inline .field{flex:1;min-width:180px;margin-bottom:0}.inline input{min-width:160px}table{width:100%;border-collapse:collapse;margin:12px 0;font-size:14px}th{text-align:start;color:var(--faint);font-weight:500;padding:8px;border-bottom:1px solid var(--line)}td{padding:9px 8px;border-bottom:1px solid #2a2a28;vertical-align:middle}td.actions{text-align:end;white-space:nowrap}td.actions button{margin-inline-start:6px;padding:5px 10px;font-size:13px}tr.blocked td{opacity:.6}.row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #2a2a28}.row>:first-child{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.badge{font-size:12px;padding:2px 9px;border-radius:99px;background:var(--raised);color:var(--muted);white-space:nowrap}.badge-up,.badge-active{background:#3fa66b26;color:var(--ok)}.badge-down,.badge-suspended{background:#e0574f26;color:var(--bad)}.note{padding:10px 12px;border-radius:8px;margin:10px 0;font-size:14px}.note.ok{background:#3fa66b1f;color:#9fdcb9}.note.err{background:#e0574f1f;color:#f2aaa4}.preview{margin-top:6px;padding:20px;border-radius:10px;background:#0e0e0e;border:2px solid var(--accent);display:flex;align-items:center;justify-content:space-between;gap:12px}.preview span:first-child{font-size:22px;font-weight:600}.preview-btn{color:#fff;padding:8px 14px;border-radius:8px;font-size:14px}details{margin-top:10px}summary{cursor:pointer;color:var(--muted)}details ol{line-height:1.9}@media (max-width: 760px){.shell{flex-direction:column}aside{width:100%}main{padding:18px 16px}}aside{width:210px;padding:18px 10px;gap:2px}aside .logo{font-size:18px;padding:0 10px 14px;margin:0}.nav{display:flex;align-items:center;gap:9px;padding:8px 10px;font-size:14px}.nav .icon{flex-shrink:0;opacity:.85}.nav.active{box-shadow:none}.nav.active .icon{color:var(--accent);opacity:1}main{padding:22px 26px}.small{font-size:13px}.ok{color:var(--ok)}.bad{color:var(--bad)}.dash-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.dash-head h1{margin:0;font-size:20px}.dash-head>span{font-size:13px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.metric{background:var(--surface);border-radius:10px;padding:12px 14px}.metric p{margin:0 0 4px;font-size:13px;color:var(--muted)}.metric div{font-size:24px;font-weight:600}.dash-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.panel-card{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-bottom:12px;min-width:0}.dash-grid .panel-card{margin-bottom:0}.panel-card h3{font-size:14px;font-weight:600;margin:0 0 8px}.tr{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;padding:7px 0;border-top:1px solid var(--line)}.tr-label{min-width:0;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:45%}.tr-num{white-space:nowrap}.bar{height:6px;background:var(--raised);border-radius:3px;flex:1;margin:0 4px;min-width:40px}.bar div{height:6px;border-radius:3px;background:var(--accent)}.seg{display:inline-flex;gap:0;border:1px solid var(--line);border-radius:8px;overflow:hidden}.seg button{border:0;border-radius:0;background:transparent;color:var(--muted);padding:6px 12px}.seg button.active{background:var(--raised);color:var(--text)}.chart{display:flex;align-items:flex-end;gap:3px;height:180px;padding-top:8px;direction:ltr}.chart .col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}.chart .col-bars{flex:1;width:100%;display:flex;align-items:flex-end;gap:1px}.chart .col-bars div{flex:1;border-radius:2px 2px 0 0;min-height:1px}.chart small{font-size:10px;color:var(--faint);height:14px;white-space:nowrap}.b-dev,.dot.dev{background:#5b5a55}.b-view,.dot.view{background:var(--accent)}.legend{color:var(--muted);display:flex;gap:6px;align-items:center;margin:8px 0 0}.dot{display:inline-block;width:10px;height:10px;border-radius:2px;margin-inline-start:8px}@media (max-width: 900px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.dash-grid{grid-template-columns:minmax(0,1fr)}}@media (max-width: 760px){aside{width:100%;flex-direction:row;flex-wrap:wrap}aside .spacer,aside .who{display:none}}.relay-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:12px;margin-bottom:18px}.relay-grid .card{margin-bottom:0}.relay-card h2{margin:0 0 2px;font-size:16px}.relay-status{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.relay-figures{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px}.relay-figures div{background:var(--raised);border-radius:8px;padding:8px 10px;display:flex;flex-direction:column;gap:2px}.relay-figures b{font-size:18px;font-weight:600}.relay-figures span{font-size:12px;color:var(--muted)}.uptime{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:10px;direction:ltr}.uptime div{height:22px;border-radius:4px;background:var(--raised)}.uptime .u-ok{background:var(--ok)}.uptime .u-warn{background:#d9a43b}.uptime .u-bad{background:var(--bad)}.relay-actions{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}.steps{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-direction:column;gap:8px}.step{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--faint)}.step-dot{width:20px;height:20px;border-radius:50%;border:2px solid var(--line);display:grid;place-items:center;font-size:11px;flex-shrink:0}.step-running{color:var(--text)}.step-running .step-dot{border-color:var(--accent);border-top-color:transparent;animation:spin .9s linear infinite}.step-done{color:var(--muted)}.step-done .step-dot{background:var(--ok);border-color:var(--ok);color:#fff}.step-failed{color:var(--bad)}.step-failed .step-dot{background:var(--bad);border-color:var(--bad);color:#fff}@keyframes spin{to{transform:rotate(360deg)}}.ltr-num{direction:ltr;unicode-bidi:isolate}.console div{text-align:start}.console{background:#0b0b0a;border-radius:8px;padding:10px 12px;font-size:12px;line-height:1.5;max-height:220px;overflow:auto;white-space:pre-wrap;word-break:break-all;color:#c9c7bf;margin:8px 0}@media (max-width: 600px){.relay-grid{grid-template-columns:1fr}}
