:root { --bg1:#2a2d4a; --bg2:#915a7b; --bg3:#466d96; --panel:#ffffff14; --panel-border:#ffffff25; --muted:#cbd3ef; --accent:#7fb7ff; }
*{ box-sizing:border-box; }
body{ margin:0; color:#eef2ff; font-family:Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif; background: radial-gradient(1200px 800px at 20% 20%, var(--bg3), transparent), radial-gradient(1200px 800px at 80% 20%, var(--bg2), transparent), radial-gradient(1200px 800px at 50% 80%, var(--bg1), transparent), linear-gradient(135deg, #243044, #1a1f33); }
a{ color:var(--accent); text-decoration:none; }
.container{ max-width:1200px; margin:24px auto; padding:0 16px; }
header .container{ display:flex; align-items:center; justify-content:space-between; gap:12px; padding:12px 16px; }
.card{ background:var(--panel); border:1px solid var(--panel-border); backdrop-filter:blur(8px); border-radius:16px; padding:16px; margin:16px 0; box-shadow:0 8px 30px #0006; }
.muted{ color:#c3cae7; }
a.btn, button.btn, input[type="submit"].btn{ font-size:16px; font-weight:600; line-height:44px; height:44px; padding:0 18px; display:inline-flex; align-items:center; justify-content:center; white-space:nowrap; border-radius:12px; box-shadow:0 6px 18px #00000040; letter-spacing:.2px; background:#2a2f45; color:#e8eaf1; }
a.btn.primary, button.btn.primary, input[type="submit"].btn.primary{ background:var(--accent); color:#0b1224; }
.table-wrap{ overflow:auto; }
table{ width:100%; min-width:1500px; border-collapse:separate; border-spacing:0; }
th,td{ padding:10px 12px; border-bottom:1px solid #ffffff15; text-align:left; vertical-align:top; }
tbody tr:nth-child(even) td{ background:#ffffff08; } tbody tr:nth-child(odd) td{ background:#ffffff05; } tbody tr:hover td{ background:#ffffff12; }
input,select,textarea{ width:100%; background:#0f1225a0; border:1px solid #ffffff22; border-radius:8px; color:#e8eaf1; padding:8px; }
form.inline{ display:inline; }
.pagination{ display:flex; gap:6px; align-items:center; flex-wrap:wrap; }
.truncate{ max-width:540px; display:inline-block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; vertical-align:middle; }
.nowrap{ white-space:nowrap; }
.copy-inline{ font-size:12px; padding:0 6px; line-height:20px; display:inline-block; border:1px solid #ffffff22; background:#0f1323; border-radius:6px; margin-left:6px; cursor:pointer; vertical-align:middle; }
td.date-cell{ white-space:nowrap !important; min-width:260px; }
td.copy-cell{ white-space:nowrap !important; }
textarea.edit-control{ resize:both; min-width:320px; min-height:64px; }
select[data-select-field="status"]{ min-width:160px; }
.toast{ position:fixed; right:18px; bottom:18px; background:#0f1323; border:1px solid #27d07d66; color:#27d07d; padding:10px 14px; border-radius:10px; box-shadow:0 8px 24px #0008; font-size:14px; opacity:0; transform:translateY(8px); transition:opacity .18s ease, transform .18s ease; z-index:9999; }
.toast.show{ opacity:1; transform:translateY(0); }
