:root{color-scheme:dark;--ink:#e3f4ff;--dim:#93aecb;--line:#173c62;--blue:#03c7ff;--violet:#7a65ff;--green:#25f5b8}*{box-sizing:border-box}body{margin:0;background:#020817;color:var(--ink);font-family:Tahoma,Arial,sans-serif;min-height:100vh}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:linear-gradient(90deg,transparent 95%,#0b254113 96%),linear-gradient(0deg,transparent 95%,#0b254113 96%);background-size:38px 38px}.aura{position:fixed;inset:0;background:radial-gradient(ellipse at 70% -20%,#1157a04a,transparent 43%),radial-gradient(ellipse at 10% 100%,#592ee51e,transparent 50%);pointer-events:none}.shell{display:grid;grid-template-columns:250px minmax(0,1fr);max-width:1540px;margin:auto;min-height:100vh;position:relative}.side{background:linear-gradient(155deg,#0a1a32,#061225);border-left:1px solid #195484;box-shadow:-20px 0 80px #04182b99;display:flex;flex-direction:column;padding:27px 17px}.brand{display:flex;gap:12px;align-items:center}.logo{height:54px;width:54px;display:grid;place-items:center;border:1px solid #56eaff8f;border-radius:17px;background:linear-gradient(140deg,#043d80,#0a1036);font-size:28px;font-weight:900;box-shadow:0 0 24px #008dff55}.logo span{font-size:13px;color:#7df8ff;transform:translate(-3px,-8px)}.brand strong{font:800 19px Arial;letter-spacing:.4px}.brand small{display:block;font-size:8px;letter-spacing:1.7px;color:#60dfff;margin-top:7px}.slabel{font-size:11px;color:var(--dim);margin:46px 8px 15px}.side nav a{display:block;padding:16px 14px;color:#afc9e9;text-decoration:none;border-radius:13px;margin:5px 0}.side nav a.selected,.side nav a:hover{background:linear-gradient(100deg,#1268cc88,#15345966);color:#fff;border:1px solid #2685e466;box-shadow:inset 0 1px #78d6ff33}.foot{margin-top:auto;background:#071c31;border:1px solid #163e65;border-radius:14px;padding:13px;color:#91bbdc;font-size:12px}.foot small{color:#6d89ac}.pulse{display:inline-block;background:var(--green);width:8px;height:8px;border-radius:50%;box-shadow:0 0 10px var(--green)}main{padding:37px clamp(16px,4vw,55px);min-width:0}header{min-height:220px;display:flex;justify-content:space-between;align-items:center;border:1px solid #1364ab;border-radius:25px;padding:28px 35px;background:radial-gradient(circle at 80% 40%,#08549b77,transparent 42%),linear-gradient(120deg,#061529,#092343);box-shadow:0 20px 60px #0009,inset 0 1px #37caff44;margin-bottom:28px;overflow:hidden}header h1{direction:ltr;text-align:right;font:bold clamp(24px,4vw,44px) Arial;margin:15px 0;color:#e9faff;text-shadow:0 0 20px #198fffa8}header h1 em{font-style:normal;color:#4de6ff;font-weight:300}p{line-height:1.9;color:var(--dim);font-size:13px}.eyebrow{color:#48dbff;font:700 10px Arial;letter-spacing:3px}.orb{width:155px;height:155px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#1676ef88,transparent 64%);position:relative;flex-shrink:0}.ring{position:absolute;inset:8px;border:3px solid #19d7ff;box-shadow:0 0 20px #16a9ff, inset 0 0 25px #0167ff;border-radius:50%;transform:rotate(-25deg) scaleY(.82)}.core{font:900 55px Arial;color:#c6f6ff;text-shadow:0 0 25px #00c5ff}.glass{background:linear-gradient(135deg,#10233d,#0a182c);border:1px solid #1e4b74;box-shadow:0 13px 33px #0005,inset 0 1px #42b9ff25;border-radius:20px}.login,.formcard,.note{padding:28px;max-width:900px}.login{max-width:510px;margin:auto}h2{font-size:20px;margin:0 0 6px}.titleline{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:17px}.statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:20px 0 24px}.stat{min-height:116px;padding:18px}.stat span{font-size:12px;color:var(--dim)}.stat b{display:block;font:800 33px Arial;margin-top:12px;text-shadow:0 0 18px #00aeff80}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:13px}.node{padding:22px}.node strong{display:block;margin:5px 0 12px}.node p{margin:3px 0}.status{font-size:11px;color:var(--green)}.formcard{margin-top:28px}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.fields .wide{grid-column:1/-1}label{display:block;font-size:12px;color:#b7d5f2}input{margin-top:8px;display:block;width:100%;font:inherit;padding:14px 12px;background:#061426;border:1px solid #29567f;border-radius:11px;color:#fff;outline:none;direction:ltr;text-align:left}input:focus{border-color:#10d5ff;box-shadow:0 0 0 2px #0ccfff22}input[type=checkbox]{display:inline;width:auto;margin:0 0 0 8px;accent-color:#05cfff}button{font:700 13px Tahoma,Arial;cursor:pointer;padding:13px 20px;color:#05172c;border:0;border-radius:11px;background:linear-gradient(110deg,#1de0ff,#3985ff);box-shadow:0 5px 20px #008eff33}button:hover{filter:brightness(1.1)}button:disabled{opacity:.45;cursor:wait}.subtle{color:#b9e6fa;border:1px solid #2c648e;background:#152b47;box-shadow:none}.primary{width:100%;margin-top:18px;font-size:15px;padding:17px}.fingerprint{margin-top:22px;border:1px solid #225275;padding:17px;border-radius:15px;background:#09182d}.fingerprint code{display:block;word-break:break-all;direction:ltr;text-align:left;margin:12px 0;font:12px monospace;color:#56dbff}.check{padding:10px 0}.miniicon{height:50px;width:50px;border-radius:15px;display:grid;place-items:center;font-size:25px;border:1px solid #19bfff75;background:#095791}.note{margin-top:22px}.logout{margin-top:18px}.error,#result{color:#ff9c9c}.login form{display:flex;gap:10px}.login form input{margin:0}@media(max-width:850px){.shell{display:block}.side{min-height:unset;padding:15px;flex-direction:row;align-items:center;flex-wrap:wrap}.brand{width:100%}.slabel,.foot{display:none}.side nav{display:flex;gap:8px;width:100%;overflow:auto}.side nav a{font-size:12px;padding:10px;white-space:nowrap}main{padding:15px}header{min-height:160px;padding:18px;align-items:center}.orb{height:90px;width:90px}.core{font-size:30px}.fields{grid-template-columns:1fr}.fields .wide{grid-column:1}.statrow{gap:7px}.stat{padding:13px;min-height:95px}.stat b{font-size:22px}.login form{display:block}.login button{width:100%;margin-top:10px}}

.ssl-state{border:1px solid #285c86;background:#071b2d;border-radius:15px;padding:8px 16px;margin:14px 0 17px;overflow-wrap:anywhere}
.ssl-state a{color:#54dfff;font-family:Arial,sans-serif}
.ssl-state b{color:#d8f7ff}
.ssl-help{border-right:3px solid #23bfe7;background:#0d2941;padding:14px 16px;border-radius:12px;color:#b7dbf2;font-size:12px;line-height:2;margin:13px 0 18px}
#sslResult{overflow-wrap:anywhere;min-height:2em}

/* Large, reliable mobile target for manual SSH host-key approval. */
.check{display:flex;align-items:center;gap:12px;cursor:pointer;line-height:2;touch-action:manipulation;user-select:none;padding:14px 0}
.check input[type=checkbox]{appearance:auto;display:block;flex:0 0 23px;width:23px;height:23px;min-width:23px;margin:0;cursor:pointer;accent-color:#05cfff}
