:root{color:#172033;background:#f4f7fb;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif;line-height:1.5}*{box-sizing:border-box}body{margin:0}h1,h2,h3,p{margin-top:0}.login{place-items:center;min-height:100vh;padding:24px;display:grid}.login form,.formcard{background:#fff;border-radius:14px;gap:12px;padding:28px;display:grid;box-shadow:0 8px 32px #17203318}.login form{width:min(420px,100%)}input,textarea,select{width:100%;font:inherit;background:#fff;border:1px solid #cbd5e1;border-radius:7px;padding:11px}textarea{resize:vertical;min-height:130px}.shell{grid-template-columns:240px minmax(0,1fr);min-height:100vh;display:grid}aside{color:#fff;background:#111827;flex-direction:column;gap:9px;padding:24px;display:flex}aside h1{margin-bottom:0;font-size:18px}aside button{text-align:left;background:0 0}aside button:hover,aside button:focus-visible{background:#253047}aside details{border-top:1px solid #334155;padding-top:10px}aside summary{cursor:pointer;color:#cbd5e1}.safe{color:#fbbf24;font-size:13px}button{color:#fff;cursor:pointer;font:inherit;background:#253047;border:0;border-radius:7px;padding:10px 14px}button:disabled{opacity:.45;cursor:not-allowed}aside>.danger{margin-top:auto}main{min-width:0;padding:30px;overflow-x:auto}header{justify-content:space-between;align-items:center;gap:16px;display:flex}.grid,.cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}article,table,.hero,.empty,.summary{background:#fff;border-radius:12px;padding:20px;box-shadow:0 3px 18px #17203312}.hero{border-left:5px solid #2563eb;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.hero h2{margin-bottom:6px}.checklist{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;list-style:none;display:grid}.checklist li{color:#475467;background:#e2e8f0;border-radius:9px;padding:12px}.checklist .done{color:#067647;background:#dcfae6}.formcard{max-width:720px;margin-bottom:20px}.formcard label{font-size:14px;font-weight:600}.inline{align-items:end;gap:10px;display:flex}.inline>*{flex:1}.inline button{flex:none}.poolitem{grid-template-columns:1fr 100px 100px auto;align-items:center;gap:8px;display:grid}.status{color:#344054;background:#e2e8f0;border-radius:999px;padding:3px 9px;font-size:13px;display:inline-block}.summary{box-shadow:none;background:#eff6ff;border:1px solid #bfdbfe;margin:6px 0}.empty{text-align:center;color:#475467}.empty h3{color:#172033}table{border-collapse:collapse;width:100%;overflow:hidden}th,td{text-align:left;vertical-align:top;border-bottom:1px solid #e5e7eb;padding:10px}.error{color:#b42318}.alertbox{background:#fef3f2;border-radius:7px;padding:10px}.notice{color:#067647;background:#ecfdf3;border-radius:7px;padding:10px}.hint{color:#475467;font-size:14px;line-height:1.5}details>summary{cursor:pointer;margin:6px 0;font-weight:600}main details{padding:8px 0}@media (width<=900px){.grid,.cards,.checklist{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.shell{grid-template-columns:1fr}aside{grid-template-columns:1fr 1fr;min-height:auto;padding:16px;display:grid}aside h1,aside .safe,aside details,aside>.danger{grid-column:1/-1}aside>.danger{margin-top:8px}main{padding:16px}header,.hero{flex-direction:column;align-items:flex-start}.grid,.cards,.checklist{grid-template-columns:1fr}.inline{flex-direction:column;align-items:stretch}.poolitem{grid-template-columns:1fr 1fr}.poolitem>:first-child{grid-column:1/-1}table{white-space:nowrap;display:block;overflow-x:auto}.formcard{padding:18px}}.account-toolbar,.account-heading{justify-content:space-between;align-items:center;gap:18px;max-width:920px;display:flex}.account-toolbar{margin:18px 0 12px}.account-toolbar h3,.account-heading h3{margin-bottom:2px}.account-toolbar p,.account-heading p{margin-bottom:0}.account-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:920px;margin-bottom:20px;display:grid}.account-choice{text-align:left;color:#172033;background:#fff;border:2px solid #0000;justify-content:space-between;align-items:center;gap:12px;padding:16px;display:flex;box-shadow:0 3px 18px #17203312}.account-choice:hover,.account-choice:focus-visible{background:#fff;border-color:#94a3b8}.account-choice.active{background:#eff6ff;border-color:#2563eb}.account-choice span:first-child{gap:2px;display:grid}.account-choice small{color:#475467}.account-actions{border-top:4px solid #2563eb;max-width:920px}.primary-actions{grid-template-columns:2fr 1fr;gap:10px;display:grid}.danger-zone{border-top:1px solid #e5e7eb;margin-top:8px}.danger-zone button{margin:8px 8px 0 0}@media (width<=760px){.account-toolbar,.account-heading{flex-direction:column;align-items:flex-start}.account-list,.primary-actions{grid-template-columns:1fr}.account-choice{align-items:flex-start}.account-choice .status{white-space:nowrap}}:root{--ink:#182230;--muted:#667085;--line:#e4e7ec;--brand:#3559c7;--brand-soft:#eef2ff;--danger:#b42318;--success:#067647;--warning:#b54708}body{color:var(--ink);background:#f5f7fb}aside{padding:22px 16px}aside nav{gap:4px;display:grid}aside nav button,aside details button{border-left:3px solid #0000;width:100%;padding:11px 12px}aside nav button.active,aside details button.active{color:#fff;background:#26344d;border-left-color:#7aa2ff}aside .safe{color:#fdb022;background:#fdb02214;border-radius:8px;padding:7px 9px}aside .emergency{text-align:center;background:var(--danger);margin-top:auto}main{padding:34px clamp(18px,3vw,44px)}header{border-bottom:1px solid var(--line);margin-bottom:20px;padding-bottom:22px}header h2{margin-bottom:4px}.page-description{color:var(--muted);margin:0;font-size:14px}.header-actions{align-items:center;gap:10px;display:flex}.mode{color:#475467;background:#e9edf5;border-radius:999px;padding:5px 9px;font-size:12px}button{font-weight:600;transition:background .15s,border-color .15s,transform 50ms}button:active{transform:translateY(1px)}button.ghost{color:#344054;background:#fff;border:1px solid #d0d5dd}button.ghost:hover{background:#f9fafb;border-color:#98a2b3}.secondary{background:#667085}.danger{background:var(--danger)}.status.success{color:var(--success);background:#dcfae6}.status.warning{color:var(--warning);background:#fef0c7}.status.muted{color:#475467;background:#f2f4f7}.stat-strip{gap:10px;margin-bottom:14px;display:flex}.stat-strip button{text-align:left;min-width:130px;color:var(--ink);border:1px solid var(--line);background:#fff;padding:12px 16px;display:grid}.stat-strip button b{font-size:22px}.stat-strip button span{color:var(--muted);font-size:12px}.stat-strip button.active{border-color:var(--brand);background:var(--brand-soft);box-shadow:0 0 0 2px #3559c722}.filterbar{border:1px solid var(--line);background:#fff;border-radius:12px;grid-template-columns:minmax(220px,2fr) repeat(3,minmax(130px,1fr)) auto;gap:10px;padding:14px;display:grid}.result-count{color:var(--muted);margin:14px 2px 8px;font-size:13px}.target-list{gap:8px;display:grid}.target-row{border:1px solid var(--line);box-shadow:none;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;padding:16px 18px;display:grid}.target-row h3{margin-bottom:4px;font-size:16px}.target-row p{color:var(--muted);margin:0;font-size:13px}.target-main{min-width:0}.target-main h3{overflow-wrap:anywhere}.row-actions{gap:8px;display:flex}.row-actions button{padding:7px 10px;font-size:13px}.pool-adder{border:1px solid var(--line);background:#f8fafc;border-radius:10px;grid-template-columns:minmax(220px,1fr) auto minmax(90px,120px) auto;align-items:center;gap:10px;padding:14px;display:grid}.pool-adder label,.pool-adder small{color:var(--muted);font-size:12px}.pool-items{gap:8px;display:grid}.poolitem{border:1px solid var(--line);box-shadow:none;grid-template-columns:auto minmax(180px,1fr) auto auto;align-items:center;gap:12px;padding:12px;display:grid}.poolitem .order{color:var(--muted);white-space:nowrap;font-size:12px}.poolitem label{align-items:center;gap:7px;display:flex}.poolitem label input{width:84px}.pool-form>.hint.error{color:var(--danger);background:#fef3f2;border-radius:8px;padding:9px}.cards article{border:1px solid var(--line);box-shadow:0 2px 8px #1018280a}.formcard{border:1px solid var(--line);box-shadow:0 3px 12px #1018280d}@media (width<=980px){.filterbar{grid-template-columns:1fr 1fr}.filterbar input{grid-column:1/-1}.target-row{grid-template-columns:1fr auto}.row-actions{grid-column:1/-1}}@media (width<=760px){main{padding:16px}.header-actions{justify-content:space-between;width:100%}.stat-strip{overflow-x:auto}.stat-strip button{min-width:112px}.filterbar{grid-template-columns:1fr}.filterbar input{grid-column:auto}.target-row{grid-template-columns:1fr}.row-actions{grid-column:auto}.row-actions button{flex:1}.pool-adder,.poolitem{grid-template-columns:1fr}.poolitem .row-actions{grid-template-columns:repeat(3,1fr);display:grid}}.cards article .status+button+button+button{display:none}.dashboard-stats article{cursor:default}.checklist small{color:#8a5b00;margin-top:.45rem;display:block}.batch-toolbar,.batch-progress,.target-picker-actions{background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:.65rem;margin:1rem 0;padding:.9rem 1rem;display:flex}.batch-toolbar label{margin:0}.batch-progress{background:#eef4ff}.target-picker{border:1px solid #d9e0eb;border-radius:10px;max-height:18rem;padding:.5rem .8rem;overflow:auto}.target-picker label{align-items:center;gap:.55rem;margin:0;padding:.45rem 0;display:flex}.target-picker label span{flex:1;min-width:0}.target-picker label small{color:#65738b;white-space:nowrap}.channel-picker{border:1px solid #d9e0eb;border-radius:10px;margin:1rem 0;padding:.8rem}.channel-picker summary{cursor:pointer;color:#46546c;font-weight:700}.target-picker-actions.compact{margin:.7rem 0;padding:.5rem 0}.campaign-readiness{color:#68470d;background:#fff3df;border-radius:10px;margin:.8rem 0;padding:.8rem}.campaign-readiness.ready{color:#235f38;background:#e9f7ee}.campaign-readiness p{margin:.3rem 0}.campaign-readiness small{margin-top:.45rem;display:block}.target-row>input[type=checkbox]{flex:none;width:1.1rem;height:1.1rem}@media (width<=760px){.batch-toolbar,.batch-progress,.target-picker-actions{flex-direction:column;align-items:stretch}.batch-toolbar button,.target-picker-actions button{width:100%}}
