:root { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; }
body { margin: 0; background: #0b0f14; color: #e8eef6; }
.container { max-width: 1100px; margin: 0 auto; padding: 16px; }
.header { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.card { background: #121a24; border: 1px solid #1f2a38; border-radius: 14px; padding: 16px; margin-top: 14px; }
.hidden { display: none; }
label { display: block; margin: 10px 0; }
input, textarea { width: 100%; padding: 10px; border-radius: 10px; border: 1px solid #263447; background: #0e1520; color: #e8eef6; }
button { padding: 10px 14px; border-radius: 12px; border: 1px solid #2c3b52; background: #162132; color: #e8eef6; cursor: pointer; }
button:hover { filter: brightness(1.08); }
.hint { opacity: .8; }
.error { color: #ff7a7a; margin-top: 8px; white-space: pre-wrap; }
.toolbar { display: flex; gap: 10px; align-items: center; margin-bottom: 12px; }
.tablewrap { overflow: auto; border-radius: 12px; border: 1px solid #1f2a38; }
table { width: 100%; border-collapse: collapse; min-width: 900px; }
th, td { padding: 10px; border-bottom: 1px solid #1f2a38; vertical-align: top; }
th { text-align: left; background: #0e1520; position: sticky; top: 0; }
.userbox { display: flex; gap: 8px; align-items: center; opacity: .9; }
dialog::backdrop { background: rgba(0,0,0,.65); }
.dialog { min-width: 520px; }
.dialog-actions { display: flex; justify-content: flex-end; gap: 10px; padding: 0; }
