*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial;background:#07111e;color:#eaf2ff}body{--bg:#07111e;--side:#06101b;--card:#0b1928;--card2:#0d1d2f;--line:#1b3047;--muted:#8ca4bf;--text:#eaf2ff;--blue:#1685ff;--green:#29e38e;--red:#ff4f62;--purple:#9b6cff}body.light{--bg:#f3f7fb;--side:#fff;--card:#fff;--card2:#f7faff;--line:#dbe5ef;--muted:#64788e;--text:#102237;color:#102237;background:var(--bg)}.app{min-height:100vh;background:var(--bg)}aside{position:fixed;left:0;top:0;bottom:0;width:232px;background:var(--side);border-right:1px solid var(--line);padding:18px 11px;z-index:20;overflow:auto}.logo{display:flex;gap:11px;align-items:center;padding:4px 10px 22px}.vmark{font-weight:1000;font-size:38px;line-height:1;color:#1887ff;transform:skew(-10deg)}.logo b{display:block;font-size:20px;letter-spacing:.5px}.logo small{color:var(--muted)}nav{display:grid;gap:3px}nav label{font-size:11px;color:#68829e;margin:16px 10px 6px}nav a{padding:10px 12px;border-radius:8px;color:#a9bfd6;cursor:pointer;display:flex;gap:11px;align-items:center;text-decoration:none}nav a:hover,nav a.active{background:linear-gradient(90deg,#0c376a,#0d4d94);color:white}.sidecard{margin-top:30px;border:1px solid var(--line);border-radius:10px;padding:17px;text-align:center;background:linear-gradient(160deg,var(--card),#081421)}.sidecard b{font-size:18px}.sidecard small{display:block;color:#3ba0ff}.sidecard p{font-size:11px;color:#a5bad0}main{margin-left:232px;min-height:100vh}header{height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 22px;gap:15px;position:sticky;top:0;background:color-mix(in srgb,var(--bg) 94%,transparent);backdrop-filter:blur(12px);z-index:10}.hamb,.icon{border:0;background:transparent;color:var(--muted);font-size:21px;cursor:pointer}.search{height:40px;display:flex;align-items:center;gap:8px;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:0 13px;max-width:755px;flex:1}.search input{border:0;outline:0;background:transparent;color:var(--text);width:100%}.headright{margin-left:auto;display:flex;align-items:center;gap:13px}.bell{position:relative}.bell i{position:absolute;top:-9px;right:-10px;background:#f23e55;color:#fff;border-radius:50%;font-size:9px;padding:2px 5px}.avatar{width:39px;height:39px;border-radius:50%;border:2px solid #1f78cc;display:grid;place-items:center;font-weight:800}.admin small{display:block;color:var(--muted);font-size:11px}.page{padding:24px;max-width:1700px;margin:auto}.titlebar{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.titlebar h1{margin:0;font-size:25px}.muted{color:var(--muted)}.btn{border:1px solid #147ae8;background:#127df4;color:white;border-radius:7px;padding:10px 14px;cursor:pointer}.btn.ghost{background:transparent;color:#52a7ff}.btn.danger{background:#3a1720;border-color:#7d2737;color:#ff8793}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:22px 0}.card{background:linear-gradient(145deg,var(--card),var(--card2));border:1px solid var(--line);border-radius:11px;padding:15px}.stat{display:flex;gap:14px;align-items:center;min-height:105px}.stat .ico{width:62px;height:62px;border-radius:10px;display:grid;place-items:center;background:#0d3768;color:#32a0ff;font-size:28px}.stat strong{display:block;font-size:28px;margin:3px 0}.ok{color:var(--green)}.bad{color:var(--red)}.grid{display:grid;grid-template-columns:1.45fr .75fr .85fr;gap:13px}.span2{grid-column:span 2}.span3{grid-column:span 3}.card h2{font-size:16px;margin:0 0 13px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:650px}th,td{padding:10px 8px;border-bottom:1px solid var(--line);text-align:left;font-size:12px}th{color:#9bb1c9;font-weight:500}.pill{display:inline-flex;align-items:center;gap:6px}.dot{width:8px;height:8px;border-radius:50%;background:var(--green)}.dot.red{background:var(--red)}.gauges{display:flex;justify-content:space-around;gap:10px}.gauge{--p:50;width:91px;height:91px;border-radius:50%;background:conic-gradient(var(--blue) calc(var(--p)*1%),#193149 0);display:grid;place-items:center;position:relative}.gauge:after{content:"";position:absolute;inset:9px;background:var(--card);border-radius:50%}.gauge b,.gauge small{z-index:1;position:absolute}.gauge b{font-size:17px}.gauge small{top:98px;color:var(--muted)}.chart{height:190px;position:relative;border-left:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 8px 4px;background:repeating-linear-gradient(0deg,transparent,transparent 36px,color-mix(in srgb,var(--line) 50%,transparent) 37px)}svg{width:100%;height:100%;overflow:visible}.service{display:flex;justify-content:space-between;padding:8px 2px;border-bottom:1px solid var(--line)}.info .row{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:7px 0}.quick{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.quick button{background:#10233a;border:1px solid var(--line);color:#c8d8e9;padding:14px 8px;border-radius:8px;cursor:pointer}.sectiongrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.servercard h3{margin:0}.servercard .metric{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:grid;gap:6px}.field label{color:var(--muted);font-size:12px}.field input,.field select,.field textarea{background:var(--card2);border:1px solid var(--line);border-radius:7px;padding:11px;color:var(--text);outline:none}.field.full{grid-column:1/-1}.modal{position:fixed;inset:0;background:#0009;z-index:100;display:none;place-items:center;padding:20px}.modal.show{display:grid}.modalbox{width:min(620px,96vw);background:var(--card);border:1px solid var(--line);border-radius:12px;padding:22px;position:relative}.close{position:absolute;right:13px;top:10px;border:0;background:transparent;color:var(--muted);font-size:26px;cursor:pointer}#toast{position:fixed;right:20px;bottom:20px;background:#12304a;border:1px solid #28618d;color:white;padding:12px 16px;border-radius:8px;opacity:0;transform:translateY(10px);transition:.2s;z-index:200}#toast.show{opacity:1;transform:none}.empty{padding:40px;text-align:center;color:var(--muted)}@media(max-width:1200px){.grid{grid-template-columns:1fr 1fr}.span3{grid-column:span 2}.stats{grid-template-columns:1fr 1fr}.sectiongrid{grid-template-columns:1fr 1fr}}@media(max-width:780px){aside{transform:translateX(-100%);transition:.2s}aside.open{transform:none}main{margin-left:0}.admin{display:none}.page{padding:14px}.grid,.sectiongrid{grid-template-columns:1fr}.span2,.span3{grid-column:span 1}.stats{grid-template-columns:1fr 1fr}.titlebar{align-items:center}.titlebar h1{font-size:21px}}@media(max-width:480px){.stats{grid-template-columns:1fr}.headright{gap:7px}.search{max-width:none}.page{padding:10px}.formgrid{grid-template-columns:1fr}.field.full{grid-column:auto}.gauges{transform:scale(.9)}}/* v1.2: preserve v1.0 layout; only make right-side account controls interactive */
.headbtn{font:inherit;color:inherit;cursor:pointer}.bell.headbtn{border:0;background:transparent;position:relative;font-size:18px;padding:8px}.avatar.headbtn{background:transparent;color:var(--text)}
/* v1.3 mobile hotfix: keep v1.0 visual design, fix iPhone sizing only */
@media (max-width:780px){
  html,body,.app,main{width:100%;max-width:100%;overflow-x:hidden}
  header{width:100%;height:64px;padding:0 12px;gap:8px}
  .hamb{min-width:44px;min-height:44px;padding:0;font-size:22px}
  .search{min-width:0;height:42px;padding:0 10px;flex:1 1 auto}
  .search input{min-width:0;font-size:16px}
  .headright{flex:0 0 auto;gap:4px}
  .headright .icon,.bell.headbtn,.avatar.headbtn{min-width:44px;min-height:44px;padding:0;display:grid;place-items:center}
  .bell.headbtn{font-size:18px}.avatar.headbtn{width:44px;height:44px}
  .page{width:100%;max-width:none;margin:0;padding:14px 12px}
  .titlebar{width:100%;gap:10px}.titlebar>div{min-width:0;flex:1}.titlebar .btn{flex:0 0 auto}
  .card{min-width:0}.tablewrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
}
@media (max-width:520px){
  header{padding:0 8px}.search{max-width:none}.headright{gap:2px}
  #theme{display:none}
  .titlebar{align-items:flex-start}.titlebar h1{font-size:21px;line-height:1.2}.titlebar .muted{font-size:14px}
  .titlebar .btn{padding:9px 10px;max-width:108px;white-space:normal}
  .stats{grid-template-columns:1fr}.stat{min-height:96px}
  .gauges{transform:none;gap:4px}.gauge{width:82px;height:82px}.gauge small{top:88px}
}
