:root{--bg: #292929;--panel: #181b22;--text: #e6e8ee;--muted: #a0a4b5;--accent: #5eb1ff;--border: #262a35;--danger: #f97373;--success: #4ade80}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}.app{min-height:100vh;background:var(--bg);color:var(--text)}.app-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#10131a;border-bottom:1px solid var(--border)}.app-brand{font-weight:600}.app-nav{display:flex;gap:8px;align-items:center}.app-nav a{color:var(--muted);text-decoration:none;font-size:14px;padding:4px 8px;border-radius:4px}.app-nav a.active{color:var(--text);background:#5eb1ff26}.app-nav button{margin-left:8px}.page{max-width:960px;margin:0 auto;padding:16px}.page-header{margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:12px}.page-title{font-size:18px;font-weight:600;margin:0}.page-subtitle{font-size:12px;color:var(--muted);margin:4px 0 0}.form{display:flex;flex-direction:column;gap:16px}.form-group{display:flex;flex-direction:column;gap:4px}.label{font-size:14px}.help-text{font-size:12px;color:var(--muted)}.input,.textarea,.select{font-size:14px;padding:6px 8px;border-radius:4px;border:1px solid var(--border);background:var(--panel);color:var(--text)}.textarea{min-height:64px;resize:vertical}.button{font-size:14px;padding:6px 12px;border-radius:4px;border:1px solid var(--border);background:var(--panel);color:var(--text);cursor:pointer}.button-primary{border-color:var(--accent);background:var(--accent);color:#0b1020}.button-ghost{background:transparent}.button-small{font-size:12px;padding:4px 8px}.button[disabled],.button-primary[disabled]{opacity:.6;cursor:default}.notice{font-size:13px;padding:6px 8px;border-radius:4px;border:1px solid var(--border);background:#151822;margin-bottom:8px}.notice-error{border-color:var(--danger);color:var(--danger)}.notice-success{border-color:var(--success);color:var(--success)}.card{border-radius:4px;border:1px solid var(--border);background:var(--panel);padding:12px;margin-bottom:16px}.table-wrapper{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{padding:6px 8px;border-bottom:1px solid var(--border);text-align:left}.table th{font-weight:500;color:var(--muted)}tbody tr:hover{background:#151822}.table-empty{text-align:center;color:var(--muted);padding:12px 8px}.text-muted{color:var(--muted);font-size:13px}
