:root{color-scheme:dark;--bg:#070816;--panel:rgba(17,20,41,0.82);--panel-strong:#111529;--line:rgba(157,171,255,0.18);--text:#f7f8ff;--muted:#9ba5cf;--cyan:#00e8ff;--pink:#d544ff;--green:#35f2a2;--red:#ff657f;--amber:#ffc857}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at top left,rgba(213,68,255,.22),transparent 34rem),radial-gradient(circle at top right,rgba(0,232,255,.18),transparent 32rem),var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex;flex-direction:column}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{flex:1 1;padding:32px 0 48px}.app-footer,.shell{width:min(1180px,calc(100% - 32px));margin:0 auto}.app-footer{padding:0 0 28px;color:var(--muted);font-size:12px;text-align:right}.topbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:28px}.topbar-operations{display:grid;grid-gap:16px;gap:16px;margin-bottom:18px;padding:20px;position:relative;border:1px solid var(--line);border-radius:18px;background:radial-gradient(circle at top right,rgba(0,232,255,.08),transparent 15rem),radial-gradient(circle at top left,rgba(213,68,255,.08),transparent 15rem),var(--panel);box-shadow:0 18px 60px rgba(0,0,0,.24)}.topbar-main{display:block;align-items:flex-start;padding-right:130px}.brand-compact{min-width:0}.topbar-subtitle{margin-top:6px;font-size:14px;line-height:1.5}.topbar-actions{position:absolute;top:20px;right:20px}.topbar-button{min-height:42px;padding-inline:16px;border-color:rgba(0,232,255,.24);background:rgba(255,255,255,.08)}.topbar-strip{width:100%}.topbar-chips{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:10px;gap:10px;min-width:0}.strip-chip{display:inline-flex;align-items:center;justify-content:space-between;grid-column:span 3;gap:10px;min-height:42px;width:100%;min-width:0;padding:0 14px;border:1px solid rgba(157,171,255,.16);border-radius:999px;background:rgba(255,255,255,.04);white-space:nowrap;overflow:hidden}.strip-chip-label{min-width:0;color:var(--muted);font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis}.strip-chip-value{flex:0 0 auto;font-size:14px;font-weight:800}.signal-pill{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border:1px solid transparent;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap;align-self:stretch;grid-column:span 3;margin:0}.signal-pill.healthy{border-color:rgba(53,242,162,.24);background:rgba(53,242,162,.1);color:#d8ffef}.signal-pill.warning{border-color:rgba(255,200,87,.28);background:rgba(255,200,87,.12);color:#ffe9b1}.signal-pill.error{border-color:rgba(255,101,127,.3);background:rgba(255,101,127,.12);color:#ffd4db}.brand{display:flex;align-items:center;gap:12px}.brand-logo{width:clamp(156px,18vw,230px);height:auto;flex:0 0 auto;filter:drop-shadow(0 0 24px rgba(0,232,255,.18))}.brand-symbol{width:58px;height:58px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 0 24px rgba(0,232,255,.22))}.login-logo{display:block;width:min(220px,70%);height:auto;margin-bottom:24px;filter:drop-shadow(0 0 24px rgba(0,232,255,.2))}.eyebrow{margin:0 0 4px;color:var(--cyan);font-size:12px;font-weight:700;letter-spacing:0;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{margin-bottom:0;font-size:clamp(28px,4vw,44px);letter-spacing:0}h2{font-size:20px}.muted{color:var(--muted)}.nav{display:flex}.button,.nav,button{align-items:center;gap:8px}.button,button{display:inline-flex;justify-content:center;min-height:38px;padding:0 14px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.06);color:var(--text);cursor:pointer}.button.primary,button.primary{border-color:transparent;background:linear-gradient(135deg,var(--pink),var(--cyan));color:#050714;font-weight:800}.button.is-disabled{cursor:default;opacity:.42}button:disabled{cursor:wait;opacity:.72}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.grid{display:grid;grid-gap:14px;gap:14px}.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.topbar-operations .summary-grid{margin-bottom:0}.card,.panel{border:1px solid var(--line);border-radius:8px;background:var(--panel);box-shadow:0 18px 60px rgba(0,0,0,.24)}.card{padding:18px}.metric-label{color:var(--muted);font-size:12px}.metric-value{margin-top:8px;font-size:26px;font-weight:800}.panel{overflow:hidden}.map-panel{margin-bottom:16px}.map-panel-header{align-items:flex-start}.map-legend{display:flex;align-items:center;justify-content:flex-end;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:12px;font-weight:800}.map-legend span{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.map-dot{width:9px;height:9px;border-radius:50%}.map-dot.online{background:var(--green);box-shadow:0 0 14px rgba(53,242,162,.64)}.map-dot.syncing{background:#aab1c5;box-shadow:0 0 12px rgba(170,177,197,.42)}.map-dot.offline{background:var(--red);box-shadow:0 0 14px rgba(255,101,127,.48)}.map-dot.pending{background:#7681a8}.map-stage{position:relative;aspect-ratio:2/1;min-height:260px;overflow:hidden;background:#141722}.map-stage:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 50% 38%,rgba(255,255,255,.04),transparent 42%),linear-gradient(180deg,rgba(12,15,30,.12),rgba(6,8,18,.34))}.world-map{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:fill}.map-marker{position:absolute;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;z-index:3}.map-marker:before{content:"";width:9px;height:9px;border:2px solid rgba(255,255,255,.64);border-radius:50%;background:currentColor;box-shadow:0 0 18px currentColor}.map-marker.online{color:var(--green)}.map-marker.syncing{color:#aab1c5}.map-marker.offline{color:var(--red)}.map-marker-pulse{position:absolute;inset:3px;border:1px solid;border-radius:50%;opacity:.52;animation:map-pulse 1.7s ease-out infinite}@keyframes map-pulse{to{inset:-6px;opacity:0}}.map-empty{position:absolute;inset:0;z-index:4;display:grid;place-items:center;color:var(--muted);font-weight:800}.map-pending{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid rgba(157,171,255,.1);color:var(--muted);font-size:12px}.map-pending span:first-child{color:var(--text);font-weight:800}.map-pending a,.map-pending span:not(:first-child){display:inline-flex;align-items:center;min-height:26px;padding:0 9px;border:1px solid rgba(157,171,255,.16);border-radius:999px;background:rgba(255,255,255,.04)}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;border-bottom:1px solid var(--line)}.samples-header{align-items:flex-start}.samples-summary{margin-bottom:0}.samples-toolbar{display:flex;align-items:flex-start;justify-content:flex-end;gap:14px;flex-wrap:wrap}.detail-node-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.samples-page-size-picker{display:grid;grid-gap:6px;gap:6px;justify-items:end}.samples-pagination{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.samples-page-indicator{color:var(--muted);font-size:13px;font-weight:800}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:900px}td,th{padding:14px 16px;border-bottom:1px solid rgba(157,171,255,.1);text-align:left;vertical-align:middle}th{color:var(--muted);font-size:12px;font-weight:700}.sort-link{display:inline-flex;align-items:center;gap:6px}.sort-link.active{color:var(--text)}.sort-indicator{min-width:1em;text-align:center}.status{display:inline-flex;align-items:center;gap:8px;font-weight:800}.dot{width:9px;height:9px;border-radius:50%;background:var(--red)}.dot.online{background:var(--green);box-shadow:0 0 18px rgba(53,242,162,.8)}.dot.syncing{background:#aab1c5;box-shadow:0 0 14px rgba(170,177,197,.42)}.pill{display:inline-flex;max-width:280px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.forms{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);grid-gap:16px;gap:16px}.form-grid{display:grid;grid-gap:12px;gap:12px}label{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:13px}input,select{min-height:42px;width:100%;border:1px solid var(--line);border-radius:8px;background:rgba(4,6,18,.78);color:var(--text);padding:0 12px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notice{position:relative;display:flex;align-items:flex-start;gap:10px;margin-bottom:16px;padding:14px 16px;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.06)}.notice.success{border-color:rgba(53,242,162,.38);background:rgba(53,242,162,.1);box-shadow:0 0 34px rgba(53,242,162,.1)}.notice.success:before{content:"";position:absolute;inset:10px auto 10px 0;width:3px;border-radius:0 999px 999px 0;background:var(--green);box-shadow:0 0 18px rgba(53,242,162,.58)}.notice-icon{flex:0 0 auto;margin-top:1px}.notice.success .notice-icon{color:var(--green);filter:drop-shadow(0 0 10px rgba(53,242,162,.38))}.notice.admin-action-notice{max-height:120px;overflow:hidden;border-color:rgba(53,242,162,.54);background:linear-gradient(135deg,rgba(53,242,162,.16),rgba(0,232,255,.08));animation:admin-notice-fade-out 3s ease forwards}@keyframes admin-notice-fade-out{0%,65%{max-height:120px;margin-bottom:16px;padding-block:14px;border-width:1px;opacity:1}90%{max-height:120px;margin-bottom:16px;padding-block:14px;border-width:1px;opacity:0}to{max-height:0;margin-bottom:0;padding-block:0;border-width:0;opacity:0}}.notice.error{border-color:rgba(255,101,127,.44);background:rgba(255,101,127,.1)}.notice.warning{border-color:rgba(255,200,87,.44);background:linear-gradient(135deg,rgba(255,200,87,.12),rgba(0,232,255,.08))}button.clicked{border-color:rgba(0,232,255,.46);background:rgba(0,232,255,.12)}.run-check-active{display:flex;align-items:center;gap:12px;min-height:70px;padding:14px;border:1px solid rgba(0,232,255,.45);border-radius:8px;background:linear-gradient(135deg,rgba(0,232,255,.16),rgba(213,68,255,.12));box-shadow:0 0 34px rgba(0,232,255,.14)}.run-check-active p{margin:4px 0 0;color:var(--muted)}.run-check-pulse{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(0,232,255,.14);color:var(--cyan);box-shadow:0 0 0 0 rgba(0,232,255,.42);animation:pulse 1.2s ease-out infinite}@keyframes pulse{70%{box-shadow:0 0 0 14px rgba(0,232,255,0)}to{box-shadow:0 0 0 0 rgba(0,232,255,0)}}.spark{display:grid;grid-template-columns:repeat(24,1fr);grid-gap:3px;gap:3px;width:180px}.spark span{height:18px;border-radius:3px;background:rgba(255,101,127,.55)}.spark span.online{background:rgba(53,242,162,.9)}.trend-card,.trend-header{margin-bottom:16px}.trend-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.segmented{display:inline-grid;grid-template-columns:repeat(3,minmax(58px,1fr));gap:4px;padding:4px;border:1px solid var(--line);border-radius:8px;background:rgba(4,6,18,.62)}.segmented a{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:0 10px;border-radius:6px;color:var(--muted);font-size:13px;font-weight:800}.segmented a.active{background:linear-gradient(135deg,rgba(213,68,255,.85),rgba(0,232,255,.85));color:#050714}.segmented-compact{grid-template-columns:repeat(5,minmax(48px,1fr))}.trend-scroll{overflow:hidden}.trend-bars{display:grid;grid-gap:4px;gap:4px;width:100%;align-items:end;padding:12px;border:1px solid rgba(157,171,255,.1);border-radius:8px;background:rgba(4,6,18,.46)}.trend-bars span{display:block;height:86px;border-radius:4px;background:rgba(112,119,151,.34)}.trend-bars span.online{background:linear-gradient(180deg,rgba(53,242,162,.98),rgba(32,164,118,.82));box-shadow:0 0 14px rgba(53,242,162,.24)}.trend-bars span.syncing{background:linear-gradient(180deg,rgba(170,177,197,.94),rgba(111,119,143,.76));box-shadow:0 0 12px rgba(170,177,197,.16)}.trend-bars span.offline{background:linear-gradient(180deg,rgba(255,101,127,.92),rgba(153,55,77,.74))}.trend-legend{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:12px}.trend-legend span{display:inline-flex;align-items:center;gap:6px}.trend-legend i{width:10px;height:10px;border-radius:3px}.legend-online{background:var(--green)}.legend-syncing{background:#aab1c5}.legend-offline{background:var(--red)}.empty-trend{display:grid;place-items:center;min-height:118px;border:1px dashed var(--line);border-radius:8px;color:var(--muted);background:rgba(4,6,18,.32)}@media (max-width:900px){.forms,.topbar{grid-template-columns:1fr;align-items:stretch}.topbar{display:grid}.topbar-main,.topbar-strip{grid-template-columns:1fr}.topbar-main{display:grid;padding-right:0}.topbar-actions{position:static;justify-content:flex-start}.topbar-chips{grid-template-columns:repeat(6,minmax(0,1fr))}.signal-pill,.strip-chip{grid-column:span 3}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.trend-header{display:grid}.detail-node-nav{justify-content:flex-start}.samples-page-size-picker,.samples-pagination,.samples-toolbar{justify-content:flex-start;justify-items:start}.map-panel-header{display:grid}.map-legend{justify-content:flex-start}}@media (max-width:560px){.topbar-operations{padding:16px}.signal-pill,.topbar-actions,.topbar-button{width:100%}.topbar-chips{grid-template-columns:1fr}.signal-pill,.strip-chip{grid-column:auto}.strip-chip{width:100%;justify-content:space-between}.summary-grid{grid-template-columns:1fr}.shell{width:min(100% - 20px,1180px);padding-top:20px}.map-stage{min-height:210px}.map-panel-header,.map-pending{padding-inline:14px}.detail-node-nav,.samples-pagination{width:100%}.detail-node-nav .button,.samples-pagination .button{flex:1 1}.samples-page-indicator{width:100%;text-align:center}}