:root{--cyan:#3eeaff;--cyan-dim:#3eeaff73;--cyan-glow:#3eeaff1f;--bg-deep:#030508;--bg-panel:#080c14b8;--bg-elevated:#0e1420d9;--line:#3eeaff24;--line-strong:#3eeaff47;--text:#e8eaef;--text-muted:#8a96a5d9;--text-dim:#8a96a58c;--danger:#f87171;--success:#34d399;--warning:#fbbf24;--radius:0;--font-mono:ui-monospace, "SF Mono", Menlo, monospace}*,:before,:after{box-sizing:border-box}body{background:var(--bg-deep);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}a{color:inherit;text-decoration:none}button{cursor:pointer;font:inherit}.page-card{background:var(--bg-panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(12px);padding:24px;position:relative}.page-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.page-header h2{letter-spacing:.04em;margin:0;font-size:16px;font-weight:600}.btn-primary{color:var(--cyan);border:1px solid var(--cyan-dim);letter-spacing:.06em;background:#3eeaff1a;padding:8px 18px;font-size:13px;transition:background .2s,box-shadow .2s}.btn-primary:hover:not(:disabled){box-shadow:0 0 20px var(--cyan-glow);background:#3eeaff2e}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-link{color:var(--cyan-dim);background:0 0;border:none;padding:0 8px;font-size:13px;transition:color .15s}.btn-link:hover{color:var(--cyan)}.btn-danger{color:#f87171bf;background:0 0;border:none;padding:0 8px;font-size:13px}.btn-danger:hover{color:var(--danger)}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;border-bottom:1px solid #ffffff0d;padding:14px 12px;font-size:13px}.data-table th{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;background:#00000040;font-size:11px;font-weight:500}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:#3eeaff08}.status-on{color:var(--success)}.status-off{color:var(--text-dim)}.dialog-mask{z-index:2000;pointer-events:none;background:0 0;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog-box{pointer-events:auto;background:var(--bg-elevated);border:1px solid var(--line-strong);width:480px;max-width:92vw;max-height:90vh;padding:28px;overflow-y:auto;box-shadow:0 12px 40px #0000008c}.dialog-box h3{letter-spacing:.06em;margin:0 0 20px;font-size:15px;font-weight:600}.form-item{margin-bottom:16px}.form-item label{color:var(--text-muted);letter-spacing:.04em;margin-bottom:8px;font-size:12px;display:block}.form-item input,.form-item select,.form-item textarea{width:100%;color:var(--text);background:#0006;border:1px solid #ffffff14;border-radius:0;outline:none;padding:10px 12px;font-size:14px;transition:border-color .2s}.form-item input:focus,.form-item select:focus,.form-item textarea:focus{border-color:var(--cyan-dim)}.form-item input[type=checkbox]{width:auto;margin-right:6px}.dialog-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin-top:20px;padding-top:16px;display:flex}.dialog-actions button:not(.btn-primary){color:var(--text-muted);background:0 0;border:1px solid #ffffff1a;padding:8px 16px;font-size:13px}.empty-tip{text-align:center;color:var(--text-dim);letter-spacing:.06em;padding:48px 0;font-size:13px}.pagination{color:var(--text-muted);justify-content:flex-end;align-items:center;gap:8px;margin-top:16px;font-size:13px;display:flex}
