*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:#1d2330;background:#f6f8fb}a{color:#2563b6;text-decoration:none}a:hover{text-decoration:underline}.muted{color:#6b7280}.small{font-size:12px}.mono{font-family:ui-monospace,Menlo,monospace;font-size:12px}.cap{text-transform:capitalize}.pos{color:#2e7d32}.neg{color:#b3261e}.pad{padding:18px}.layout{display:flex;min-height:100vh}.content{flex:1;min-width:0}.sidebar{width:232px;flex-shrink:0;background:#1a2b4a;color:#e9eef6;display:flex;flex-direction:column;padding:16px 0}.brand{font-weight:700;font-size:17px;padding:4px 18px 14px}.switcher{padding:8px 14px 14px;border-top:1px solid #2c3e60;border-bottom:1px solid #2c3e60}.switcher-label{font-size:10px;letter-spacing:.08em;color:#8aa0c4;margin-bottom:6px}.switcher select{width:100%;padding:7px 8px;border-radius:7px;border:1px solid #3a4f74;background:#243a5e;color:#fff;font-size:13px}.switcher-list{margin-top:8px;display:flex;flex-direction:column;gap:3px}.acct{display:flex;align-items:center;gap:8px;width:100%;text-align:left;background:transparent;border:0;color:#cdd8ea;padding:6px 8px;border-radius:7px;cursor:pointer}.acct:hover{background:#243a5e}.acct.on{background:#2f4a73;color:#fff}.acct-name{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;font-size:11px;font-weight:700;color:#fff;background:#f90}.badge.ebay{background:#e53238}.badge.walmart{background:#0071dc}.dot{width:8px;height:8px;border-radius:50%}.dot.ok{background:#46c46b}.dot.off{background:#6b7a93}.nav{display:flex;flex-direction:column;padding:12px 10px;gap:2px}.navlink{color:#cdd8ea;padding:9px 12px;border-radius:8px;font-size:14px}.navlink:hover{background:#243a5e;text-decoration:none}.navlink.active{background:#3a6bc4;color:#fff;font-weight:600}.page{padding:20px 24px}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.page-head h1{font-size:20px;margin:0}.head-meta{display:flex;align-items:center;gap:14px}.btn{border:1px solid #cfd6e2;background:#fff;padding:6px 12px;border-radius:8px;font-size:13px;color:#1d2330;cursor:pointer}.btn:hover{background:#f0f3f8;text-decoration:none}.btn.primary{background:#2563b6;color:#fff;border-color:#2563b6}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.card{background:#fff;border:1px solid #e3e6ec;border-radius:10px;padding:14px 16px}.card .n{font-size:24px;font-weight:700}.card .l{font-size:12px;color:#6b7280;margin-top:2px}.toolbar{display:flex;align-items:center;gap:14px;margin-bottom:10px;font-size:13px}.toolbar input[type=text],.toolbar input:not([type]){padding:7px 10px;border:1px solid #cfd6e2;border-radius:8px;font-size:13px;min-width:220px}.table-wrap{overflow-x:auto}.grid{width:100%;border-collapse:collapse;background:#fff;border:1px solid #e3e6ec;border-radius:10px;overflow:hidden}.grid th,.grid td{padding:8px 11px;text-align:left;border-bottom:1px solid #eef1f6;font-size:13px;white-space:nowrap}.grid th{background:#f0f3f8;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em;cursor:pointer;-webkit-user-select:none;user-select:none}.grid td.num,.grid th.num{text-align:right}.grid.clickable tbody tr{cursor:pointer}.grid.clickable tbody tr:hover{background:#f5f9ff}.grid input[type=number]{width:96px;padding:5px 7px;border:1px solid #cfd6e2;border-radius:6px;text-align:right}.pill{font-size:11px;padding:2px 8px;border-radius:9px;font-weight:600}.pill.on{background:#e3f4e7;color:#2e7d32}.pill.off{background:#f0f1f4;color:#88909e}.tag{font-size:10px;color:#fff;background:#2e7d32;border-radius:8px;padding:1px 7px;margin-left:6px}.saved{color:#2e7d32;font-size:12px;margin-left:8px}.banner{padding:10px 14px;border-radius:8px;margin-bottom:12px;font-size:14px}.banner.ok{background:#e3f4e7;color:#1e6b30}.banner.err{background:#fde7e5;color:#9a261c}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f16268c;display:grid;place-items:center;z-index:1000}.modal{width:min(1280px,95vw);height:min(820px,92vh);background:#fff;border-radius:14px;display:flex;flex-direction:column;overflow:hidden}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid #eef1f6}.modal-head h2{font-size:17px;margin:0}.x{border:0;background:transparent;font-size:24px;line-height:1;cursor:pointer;color:#6b7280}.modal-body{flex:1;display:grid;grid-template-columns:1.5fr 1fr;min-height:0}.map-col{position:relative;border-right:1px solid #eef1f6}.leaflet{width:100%;height:100%}.legend{position:absolute;bottom:12px;left:12px;z-index:500;background:#fff;border:1px solid #e3e6ec;border-radius:8px;padding:6px 10px;display:flex;gap:12px;font-size:12px}.legend i.d{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:4px}.legend i.g{background:#2e7d32}.legend i.a{background:#e8a33d}.legend i.n{background:#1a2b4a}.stat-col{padding:18px 20px;overflow-y:auto}.stats>div{display:flex;justify-content:space-between;align-items:baseline;padding:9px 0;border-bottom:1px solid #f0f3f8;font-size:13px;color:#6b7280}.stats>div b{color:#1d2330;font-size:15px;font-weight:600;text-align:right}.stats s{font-size:11px;font-weight:400;color:#6b7280;text-decoration:none}.stats b.bb{font-size:14px}.creative{margin-top:18px}.creative h3{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#6b7280;margin:14px 0 6px}.creative .final{font-size:12px;word-break:break-all}.creative ul{margin:6px 0;padding-left:18px;font-size:13px}.creative ul.ds{color:#4b5563}.kw{display:flex;flex-wrap:wrap;gap:6px}.kw span{background:#eef2f9;border-radius:6px;padding:3px 8px;font-size:12px}.kw span.kw-exact{background:#e3eefb;border:1px solid #b9d2f2}.kw span.kw-phrase{background:#eef2f9}.auth-screen{min-height:100vh;display:grid;place-items:center;background:#1a2b4a}.auth-card{background:#fff;border-radius:14px;padding:40px;width:min(420px,92vw)}.auth-card h1{font-size:22px;margin:0 0 18px;color:#1a2b4a}.auth-card form{display:flex;flex-direction:column;gap:12px}.auth-card input{padding:11px 12px;border:1px solid #cfd6e2;border-radius:8px;font-size:15px}.auth-card .btn{padding:11px;font-size:15px}.nav-sep{height:1px;background:#2c3e60;margin:10px 6px}.userbox{margin-top:auto;padding:12px 16px;border-top:1px solid #2c3e60}.ub-email{color:#aebbd2;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ub-logout{margin-top:6px;background:transparent;border:1px solid #3a4f74;color:#cdd8ea;border-radius:7px;padding:5px 10px;font-size:12px;cursor:pointer}.ub-logout:hover{background:#243a5e}.sidebar{min-height:100vh}.stub{background:#fff;border:1px dashed #cfd6e2;border-radius:12px;padding:48px;text-align:center}.stub-badge{display:inline-block;background:#eef2f9;color:#56657e;border-radius:9px;padding:4px 12px;font-size:12px;font-weight:600;margin-bottom:12px}.addrow,.connect-row{display:flex;gap:10px;margin-bottom:12px;flex-wrap:wrap}.addrow input,.connect-row input{padding:8px 10px;border:1px solid #cfd6e2;border-radius:8px;font-size:13px}.connect-row input{min-width:280px}.addrow select,.grid select{padding:7px 8px;border:1px solid #cfd6e2;border-radius:7px;font-size:13px;background:#fff}.btn.small{padding:4px 10px;font-size:12px}.rename{border:1px solid transparent;border-radius:6px;padding:5px 7px;font-size:13px;width:180px;background:transparent}.rename:hover{border-color:#e3e6ec}.rename:focus{border-color:#2563b6;background:#fff;outline:none}
