:root{color-scheme:light;--bg:#f5f7f9;--ink:#172b37;--muted:#7c8c96;--line:#e5ebee;--green:#168b74;--teal:#177c72}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:14px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button{border:0;border-radius:7px;padding:12px 18px;background:var(--teal);color:white;font-weight:600;cursor:pointer}button:hover{filter:brightness(.93)}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #75c5b7;outline-offset:3px}header{height:84px;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5vw}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-weight:750;font-size:23px;letter-spacing:-1px}.brand-icon{display:inline-flex;align-items:center;justify-content:center;background:var(--teal);color:white;width:36px;height:36px;border-radius:10px;font-size:32px}.brand-tag{font-size:9px;letter-spacing:1.5px;color:var(--muted);border-left:1px solid var(--line);padding-left:15px;margin-left:5px}.quiet{background:transparent;color:var(--muted);padding:9px}.dashboard{max-width:1440px;margin:auto;padding:46px 5vw 20px}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:32px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;color:var(--teal);margin:0 0 13px}h1{font-size:36px;letter-spacing:-1.5px;line-height:1.18;margin:0 0 10px}h2{font-size:18px;letter-spacing:-.4px;margin:0}.accent{color:var(--teal)}.muted{color:var(--muted);line-height:1.6;margin:0}.small{font-size:12px;margin-top:6px}.live{font-size:11px;color:var(--green);background:#e6f3ed;border:1px solid #d3e9df;border-radius:30px;padding:10px 14px;white-space:nowrap}.live i{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:6px}.summary{background:white;border:1px solid var(--line);border-radius:10px;display:grid;grid-template-columns:repeat(4,1fr);padding:24px 0;margin-bottom:38px}.summary>div{padding:0 26px;border-right:1px solid var(--line)}.summary>div:last-child{border:0}.summary span{font-size:9px;letter-spacing:1.4px;color:var(--muted);font-weight:650}.summary strong{display:block;font-size:31px;font-weight:600;margin-top:12px;letter-spacing:-1px}.green{color:var(--green)}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}.toolbar h2 span{font-size:10px;background:#e9eef0;color:var(--muted);border-radius:4px;padding:4px 7px;margin-left:8px;letter-spacing:0}.controls{display:flex;gap:12px}select{border:1px solid #dce3e7;background:white;border-radius:7px;padding:10px 12px;color:#526570}.cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.card{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.card-top{display:flex;justify-content:space-between;align-items:flex-start;padding:23px 23px 0}.host-title{display:flex;align-items:center;gap:10px}.host-title h3{font-size:15px;margin:0;overflow-wrap:anywhere}.dot{display:inline-block;flex-shrink:0;width:8px;height:8px;border-radius:50%;background:#a4aeb6}.dot.up{background:#23a184;box-shadow:0 0 0 4px #e9f7f1}.dot.down{background:#df6874;box-shadow:0 0 0 4px #fceef0}.host-address{font:11px ui-monospace,monospace;color:var(--muted);margin:8px 0 0 18px;overflow-wrap:anywhere}.card-actions{display:flex;gap:6px;align-items:center}.status{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;background:#edf1f4;color:#7c8c96;padding:6px 8px;border-radius:4px;white-space:nowrap}.status.up{background:#e8f5ef;color:var(--green)}.status.down{background:#fceef0;color:#c35163}.remove{font-size:16px;padding:2px 6px}.chart{padding:12px 15px 0;position:relative}.chart canvas{width:100%;height:160px;display:block}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid #f0f3f5;padding:17px 23px}.stats span{font-size:9px;color:var(--muted);letter-spacing:1px}.stats strong{display:block;font-size:17px;font-weight:600;margin-top:7px}.stats small{font-size:10px;font-weight:400;color:var(--muted)}footer{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#94a2aa;margin-top:32px;padding-top:20px;border-top:1px solid var(--line)}.empty{text-align:center;padding:65px 15px;background:white;border:1px dashed #ccd8dc;border-radius:10px}.empty .muted{margin:12px 0 24px}.empty-icon{font-size:55px;color:var(--teal)}dialog{border:1px solid var(--line);border-radius:14px;padding:28px;width:min(440px,calc(100vw - 32px));box-shadow:0 25px 100px #172b3733}dialog::backdrop{background:#172b3766;backdrop-filter:blur(3px)}.dialog-title{display:flex;align-items:center;justify-content:space-between}label{display:block;font-size:12px;font-weight:600;margin:22px 0 8px}input{display:block;width:100%;border:1px solid #d8e1e5;border-radius:7px;padding:12px;background:white;color:var(--ink)}dialog button[type=submit],.login-box button{width:100%;margin-top:12px}.error{color:#bd4356;font-size:12px;line-height:1.5}.login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(ellipse at 15% 15%,#e1efeb,transparent 55%),var(--bg)}.login-box{width:min(410px,calc(100vw - 40px));padding:36px;background:white;border:1px solid var(--line);border-radius:16px;box-shadow:0 20px 70px #12342a08}.login-box .brand-icon{margin-bottom:28px;width:44px;height:44px}.login-box h1{font-size:38px}.login-box .eyebrow{font-size:9px}.login-box button span{float:right}.login-foot{font-size:10px;color:var(--muted);text-align:center;margin:26px 0 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}@media(min-width:1500px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){header{height:68px}.brand-tag{display:none}.dashboard{padding-top:28px}.page-heading{display:block}h1{font-size:30px}.live{display:inline-block;margin-top:20px}.summary{grid-template-columns:repeat(2,1fr);gap:24px;padding:22px 0}.summary>div:nth-child(2){border:0}.summary strong{font-size:26px}.toolbar{align-items:flex-start;gap:18px;flex-direction:column}.controls{width:100%}.controls select{flex:1}.cards{grid-template-columns:1fr}.card-top{padding:20px 18px 0}.stats{padding:17px 18px}footer{gap:15px;font-size:8px}}
