*{box-sizing:border-box}html,body{margin:0;padding:0}body{color:#e6e6e6;background:#0f1115;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:14px}a{color:#7fd1bd}.wrap{max-width:980px;margin:0 auto;padding:24px 16px}.card{background:#181b22;border:1px solid #262b36;border-radius:10px;margin-bottom:16px;padding:18px}h1{margin:0 0 16px;font-size:20px}h2{color:#cfd3da;margin:0 0 12px;font-size:15px}label{color:#9aa0a6;margin:10px 0 4px;font-size:12px;display:block}input{color:#e6e6e6;background:#0f1115;border:1px solid #2c313c;border-radius:7px;width:100%;padding:9px 11px;font-size:14px}input:focus{border-color:#3b82f6;outline:none}select{color:#e6e6e6;background:#0f1115;border:1px solid #2c313c;border-radius:7px;width:100%;padding:9px 11px;font-size:14px}select:focus{border-color:#3b82f6;outline:none}textarea{color:#e6e6e6;resize:vertical;background:#0f1115;border:1px solid #2c313c;border-radius:7px;width:100%;padding:9px 11px;font-family:inherit;font-size:13px;line-height:1.45}textarea:focus{border-color:#3b82f6;outline:none}hr{border:none;border-top:1px solid #262b36;margin:14px 0}button{color:#fff;cursor:pointer;background:#1f6feb;border:1px solid #2c313c;border-radius:7px;padding:9px 14px;font-size:13px;font-weight:600}button.secondary{background:#232833}button.danger{background:#5b2230;border-color:#7a2d3e}button:disabled{opacity:.5;cursor:default}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid #232833;padding:8px 10px}th{color:#9aa0a6;font-weight:600}.muted{color:#9aa0a6}.err{color:#ff7b72;margin:8px 0;font-size:13px}.ok{color:#7fd1bd;margin:8px 0;font-size:13px}.badge{border-radius:999px;padding:2px 7px;font-size:11px}.badge.on{color:#7ee787;background:#16341f}.badge.off{color:#ff7b72;background:#3a1d22}.badge.warn{color:#f0c674;background:#3a2f15}.badge.due{color:#ff7b72;background:#3a1d22}.badge.trial{color:#9aa0a6;background:#23262d}.nav{border-bottom:1px solid #262b36;gap:2px;margin-bottom:16px;display:flex}.nav button{color:#9aa0a6;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:9px 16px;font-size:13px;font-weight:600}.nav button:hover{color:#e6e6e6}.nav button.active{color:#fff;border-bottom-color:#1f6feb}.nav .count{color:#ff7b72;margin-left:6px;font-size:11px}.row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.row>div{flex:1;min-width:140px}.center{justify-content:center;align-items:center;min-height:100vh;display:flex}.loginbox{width:340px}.linkbtn{color:#e6e6e6;font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0}.linkbtn:hover{color:#fff;text-underline-offset:2px;text-decoration:underline}.iconbtn{color:#cfd3da;cursor:pointer;background:0 0;border:1px solid #2c313c;border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:inline-flex}.iconbtn:hover:not(:disabled){color:#fff;background:#232833;border-color:#3a4150}.iconbtn.danger:hover:not(:disabled){color:#fff;background:#5b2230;border-color:#7a2d3e}.iconbtn:disabled{opacity:.55;cursor:default}.spinner{vertical-align:-2px;border:2px solid #ffffff40;border-top-color:#7fd1bd;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{z-index:50;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{width:420px;max-width:100%;margin:0}.toast-wrap{z-index:100;flex-direction:column;gap:8px;max-width:360px;display:flex;position:fixed;top:16px;right:16px}.toast{color:#e6e6e6;cursor:pointer;word-break:break-word;background:#181b22;border:1px solid #2c313c;border-radius:9px;align-items:flex-start;gap:8px;padding:11px 14px;font-size:13px;animation:.22s cubic-bezier(.2,.7,.2,1) toast-in;display:flex;box-shadow:0 8px 24px -8px #0009}.toast:before{content:"";border-radius:4px;flex-shrink:0;align-self:stretch;width:4px}.toast.success{border-color:#1c4a2b}.toast.success:before{background:#2ea043}.toast.error{border-color:#7a2d3e}.toast.error:before{background:#f85149}.toast.info:before{background:#1f6feb}@keyframes toast-in{0%{opacity:0;transform:translate(12px)}}
