:root{font-family:Inter,Arial,sans-serif;color:#172033;background:#f3f5f9}
*{box-sizing:border-box}body{margin:0}.admin-body{background:#f3f5f9;min-height:100vh}
a{color:#283483}.admin-header{background:#283483;color:#fff}.admin-header .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 22px}
.admin-header a{color:#fff;text-decoration:none}.brand{font-weight:800;font-size:19px}.nav{display:flex;flex-wrap:wrap;gap:14px;font-size:14px}
.wrap{max-width:1180px;margin:0 auto}.content{padding:26px 22px 50px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}
h1,h2,h3{color:#1d2440}.card,.auth-card{background:#fff;border-radius:12px;box-shadow:0 6px 22px rgba(30,45,70,.08);padding:22px;margin-bottom:20px}
.auth-card{max-width:520px;margin:60px auto}.grid{display:grid;gap:18px}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.stat strong{font-size:34px;display:block;color:#283483}.stat span{color:#677188}
label{display:block;font-weight:650;margin:0 0 14px}input,select,textarea{width:100%;margin-top:7px;padding:11px 12px;border:1px solid #cfd5df;border-radius:7px;font:inherit;background:#fff}
textarea{min-height:280px;resize:vertical}.button,button{display:inline-block;border:0;border-radius:7px;padding:11px 16px;background:#283483;color:#fff;text-decoration:none;font:inherit;font-weight:750;cursor:pointer}
.button.secondary{background:#647086}.button.danger{background:#a63636}.button.success{background:#1f8a55}.button.small{padding:7px 10px;font-size:13px}
.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.alert{padding:13px 15px;border-radius:8px;margin-bottom:16px}.alert.success{background:#e6f6ed;color:#196c43}.alert.error{background:#fdeaea;color:#8a2525}.alert.info{background:#eaf0ff;color:#283483}
.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:11px;border-bottom:1px solid #e7eaf0;vertical-align:top}th{background:#f7f8fb;color:#49536a}
.badge{display:inline-block;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:800}.badge.yes{background:#dcf5e8;color:#197047}.badge.no{background:#fde6e6;color:#982c2c}.badge.undecided{background:#e9edf4;color:#596277}
.filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.filters label{margin:0;min-width:170px}.muted{color:#6d7689;font-size:14px}.code{font-family:ui-monospace,monospace;background:#f1f3f7;padding:2px 5px;border-radius:4px}
.pagination{display:flex;gap:8px;margin-top:18px;flex-wrap:wrap}.pagination a{padding:7px 10px;border:1px solid #d6dae2;border-radius:6px;text-decoration:none;background:#fff}
@media(max-width:760px){.grid.cols-3,.grid.cols-2{grid-template-columns:1fr}.admin-header .wrap,.page-head{align-items:flex-start;flex-direction:column}.content{padding:18px 12px}.card{padding:16px}}
.contact-picker{max-height:330px;overflow:auto;border:1px solid #d7dce5;border-radius:9px;background:#fff;margin:8px 0 10px}
.contact-option{display:flex;align-items:flex-start;gap:12px;margin:0;padding:11px 13px;border-bottom:1px solid #edf0f4;cursor:pointer;font-weight:400}
.contact-option:last-child{border-bottom:0}.contact-option:hover{background:#f7f8fb}.contact-option[hidden]{display:none}
.contact-option input{width:auto;margin:3px 0 0;flex:0 0 auto}.contact-option span{display:block}.contact-option strong{display:block;color:#1d2440}.contact-option small{display:block;margin-top:3px;color:#6d7689;font-size:13px}
.list-fieldset{border:1px solid #d7dce5;border-radius:9px;padding:14px;margin:0 0 16px}.list-fieldset legend{font-weight:750;color:#1d2440;padding:0 6px}
.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.check-card,.radio-card{display:flex;align-items:flex-start;gap:10px;border:1px solid #d9dee8;border-radius:8px;padding:11px 12px;margin:0;background:#fff;font-weight:500;cursor:pointer}.check-card:hover,.radio-card:hover{background:#f7f8fb}.check-card input,.radio-card input{width:auto;margin:3px 0 0;flex:0 0 auto}.check-card span,.radio-card span{display:block}.check-card small,.radio-card small{display:block;color:#6d7689;margin-top:3px;font-size:12px}.target-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}.tag{display:inline-block;background:#eaf0ff;color:#283483;border-radius:999px;padding:4px 8px;margin:2px 3px 2px 0;font-size:12px;font-weight:750}
[hidden]{display:none!important}
@media(max-width:760px){.checkbox-grid,.target-options{grid-template-columns:1fr}}
.badge.changed{background:#fff0cc;color:#875800}.history-arrow{font-weight:800;color:#647086}
button:disabled,.button.disabled{opacity:.48;cursor:not-allowed;pointer-events:none}
.preview-table{max-height:650px;border:1px solid #e2e6ed;border-radius:8px}.preview-row.invalid{background:#fff7f7}.preview-row.duplicate,.preview-row.duplicate_file{background:#fafbfc}.preview-note{margin-top:6px;color:#6d7689;font-size:12px;line-height:1.4}.preview-row.invalid .preview-note{color:#8a2525}.preview-stats{margin-bottom:18px}
.review-summary{border-top:5px solid #283483}.summary-list{display:grid;grid-template-columns:minmax(190px,260px) 1fr;margin:0}.summary-list dt,.summary-list dd{margin:0;padding:11px 10px;border-bottom:1px solid #e7eaf0}.summary-list dt{font-weight:800;color:#49536a;background:#f7f8fb}.summary-list dd{overflow-wrap:anywhere}.confirm-panel{max-width:760px}.confirm-panel>.check-card{margin-bottom:12px}
@media(max-width:760px){.summary-list{grid-template-columns:1fr}.summary-list dt{border-bottom:0;padding-bottom:3px}.summary-list dd{padding-top:3px}}
