*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--dv-ink);background:var(--dv-canvas);font-size:14px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
:focus-visible{outline:3px solid rgba(212,160,23,.25);outline-offset:2px}

.primary-btn,.secondary-btn,.ghost-btn,.danger-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--dv-control-h);padding:0 17px;border-radius:var(--dv-radius-sm);border:1px solid transparent;font-size:12px;font-weight:750;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}
.primary-btn{background:var(--dv-gold-500);color:#15110a;border-color:var(--dv-gold-500);box-shadow:0 8px 18px rgba(212,160,23,.18)}
.primary-btn:hover{background:var(--dv-gold-600);border-color:var(--dv-gold-600);transform:translateY(-1px)}
.secondary-btn{background:var(--dv-surface);color:var(--dv-ink);border-color:var(--dv-border-strong)}
.secondary-btn:hover{background:var(--dv-surface-soft);border-color:#bfc7d2}
.ghost-btn{background:transparent;color:var(--dv-muted);border-color:transparent}.ghost-btn:hover{background:var(--dv-surface-soft);color:var(--dv-ink)}
.danger-btn{background:var(--dv-red-100);color:var(--dv-red-600);border-color:#f0c8cb}

.panel,.card{background:var(--dv-surface);border:1px solid var(--dv-border);border-radius:var(--dv-radius-lg);box-shadow:var(--dv-shadow-xs)}
.panel{padding:var(--dv-space-6)}
.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--dv-space-4);margin-bottom:var(--dv-space-5)}
.panel h3,.card h3{margin:0;letter-spacing:-.025em}
.panel-kicker,.eyebrow{display:block;color:var(--dv-gold-600);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}

input,select,textarea{width:100%;min-height:var(--dv-control-h);border:1px solid var(--dv-border-strong);border-radius:var(--dv-radius-sm);background:#fff;color:var(--dv-ink);padding:10px 12px;transition:border-color .18s ease,box-shadow .18s ease}
textarea{min-height:96px;resize:vertical}
input::placeholder,textarea::placeholder{color:#9aa3af}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--dv-gold-500);box-shadow:0 0 0 3px rgba(212,160,23,.12)}
label{display:grid;gap:7px;color:var(--dv-ink);font-size:11px;font-weight:700}
.form-help{color:var(--dv-muted);font-size:10px;font-weight:500}

.status-pill,.channel-pill,.badge{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:0 10px;border-radius:999px;font-size:9px;font-weight:800;white-space:nowrap}
.status-pill{background:var(--dv-green-100);color:var(--dv-green-600)}
.status-pill.danger{background:var(--dv-red-100);color:var(--dv-red-600)}
.channel-pill{background:var(--dv-blue-100);color:var(--dv-blue-600)}
.badge{background:var(--dv-surface-soft);color:var(--dv-muted);border:1px solid var(--dv-border)}

.table-wrap{width:100%;overflow:auto}
table{width:100%;border-collapse:separate;border-spacing:0}
thead th{position:sticky;top:0;z-index:1;background:#f7f9fb;color:#667184;font-size:9px;letter-spacing:.1em;text-transform:uppercase;text-align:left;font-weight:800;padding:13px 16px;border-bottom:1px solid var(--dv-border)}
tbody td{padding:15px 16px;border-bottom:1px solid var(--dv-border);vertical-align:middle;font-size:11px}
tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfd}
.table-sub{display:block;color:var(--dv-muted);font-size:9px;margin-top:3px}
.row-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.row-actions form{margin:0}.row-actions a,.row-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 10px;border:1px solid var(--dv-border-strong);border-radius:var(--dv-radius-xs);background:#fff;color:#394657;font-size:9px;font-weight:750}.row-actions a:hover,.row-actions button:hover{background:var(--dv-surface-soft)}.row-actions .danger-link{color:var(--dv-red-600);border-color:#efc8cb}
.empty-state{padding:52px!important;text-align:center;color:var(--dv-muted)}

.toast{position:fixed;right:22px;bottom:22px;z-index:120;max-width:360px;padding:14px 16px;border-radius:var(--dv-radius-md);background:var(--dv-navy-900);color:#fff;box-shadow:var(--dv-shadow-md);font-size:11px}
.skeleton{background:#edf1f5;border-radius:8px;animation:dv-pulse 1.5s ease-in-out infinite}@keyframes dv-pulse{50%{opacity:.55}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
