:root{--bg:#f7f7f9;--card:#fff;--ink:#252333;--muted:#797586;--line:#e9e7ed;--primary:#e33658;--side:#fff;--radius:16px;--shadow:0 4px 18px #28203306}
body{font-family:'Segoe UI',system-ui,sans-serif;font-size:14px;letter-spacing:.05px}
.layout{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;width:auto;height:100dvh;padding:26px 16px 16px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;overflow:auto;color:var(--ink)}
.brand{padding:0 8px 22px;gap:12px;border:0;color:var(--ink)}.brand-mark,.login-logo{background:#e33658;color:#fff;border-radius:14px;box-shadow:none;font-weight:800}
.brand strong{font-size:18px;letter-spacing:-.5px}.brand small{display:block;color:var(--muted);font-size:10px;max-width:160px;overflow:hidden;text-overflow:ellipsis}
.side-search{padding:0 3px 20px}.side-search input{border:1px solid var(--line);background:#f8f7fa;color:var(--ink);border-radius:10px;padding:10px 12px;width:100%;font-size:13px}
.nav{display:flex;flex-direction:column;gap:5px;overflow:visible}.nav-btn{display:flex;align-items:center;gap:12px;width:100%;min-height:43px;text-align:left;color:#666170;background:transparent;border:1px solid transparent;border-radius:10px;padding:11px 13px;font-size:13px;font-weight:500;cursor:pointer}.nav-btn svg{flex-shrink:0}.nav-btn:hover{background:#f8f6f9;color:var(--ink)}.nav-btn.active{background:#fff0f3;color:#d32c4d;border-color:#fbe1e7;font-weight:650;box-shadow:none}.nav-group{color:#aaa2b2;font-size:10px;letter-spacing:1.3px;padding:12px}.sidebar .logout{margin-top:auto;color:#878090;border:0;text-align:left;justify-content:flex-start;padding:20px 14px 3px}
.main,.main.gs-wide{margin:0;min-width:0;padding:28px 36px 50px;max-width:none;width:100%}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 18px;padding:0 0 22px;border-bottom:1px solid var(--line);background:transparent;box-shadow:none;position:static}.topbar h1{font-size:27px;font-weight:680;letter-spacing:-.9px;margin:0 0 4px}.sub{color:var(--muted);font-size:12px}.top-actions{display:flex;align-items:center;gap:10px}.pill{border:1px solid #d9ece1;background:#f2faf5;color:#328660;font-size:11px;border-radius:20px;padding:7px 12px}
.workspace-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px}.workspace-tab{border:1px solid var(--line);background:#fff;color:#76707e;padding:9px 15px;border-radius:9px;font-size:12px;cursor:pointer}.workspace-tab.active{color:#c92d4b;background:#fff1f4;border-color:#f3cbd5;font-weight:650}.workspace-tab.danger{margin-left:auto;color:#a05866}
.card{border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);background:white;padding:22px}.card h2,.card h3{letter-spacing:-.4px}.card h3{margin:0;font-size:16px}.btn{border:1px solid #e7e3eb;border-radius:9px;font-weight:600;font-size:12px;padding:10px 14px;min-height:36px;cursor:pointer;box-shadow:none}.btn-primary{color:#fff;background:#df3658;border-color:#df3658}.btn-primary:hover{background:#c72b4b}.btn-ghost{background:transparent;color:#777082;border-color:transparent}.btn-danger{background:#fff1f3;color:#c82e4d;border:1px solid #f4ced6}.btn:disabled{opacity:.45;cursor:not-allowed}.btn:focus-visible,.nav-btn:focus-visible,.workspace-tab:focus-visible{outline:3px solid #f4a6b6;outline-offset:3px}
input,select,textarea{background:#fff;border:1px solid #e3dfe8;border-radius:9px;padding:10px 12px;color:var(--ink);min-height:40px}input:focus,select:focus,textarea:focus{outline:2px solid #f6c1ce;border-color:#e56b84}table{width:100%;border-collapse:collapse;font-size:12px}th{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#918898;background:#faf9fc;padding:13px 12px;border-bottom:1px solid var(--line);text-align:left}td{padding:14px 12px;border-bottom:1px solid #f1eef4}td small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.table-wrap{overflow-x:auto}.modal-card{border-radius:20px;border:1px solid var(--line);box-shadow:0 25px 100px #24132e30}.modal-head,.modal-foot{border-color:var(--line)}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:20px}.muted{color:var(--muted)}
.bulk-page{max-width:1400px;margin:auto}.bulk-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #f4dbe2;border-radius:20px;padding:30px 34px;background:linear-gradient(110deg,#fff3ed,#ffeef3 65%,#f8f2ff)}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#c9697a}.bulk-hero h2{font-size:28px;font-weight:650;letter-spacing:-1px;margin:10px 0}.bulk-hero p{font-size:13px;color:#937480;margin:0}.bulk-art{position:relative;font-size:74px;line-height:1.2;padding:0 18px;transform:rotate(-9deg)}.bulk-art span{position:absolute;right:0;top:0;font-size:30px;color:#ee587b;transform:rotate(20deg)}.bulk-steps{display:flex;gap:28px;margin:24px 0;font-size:12px;color:#8e8594}.bulk-steps span{display:flex;align-items:center;gap:8px}.bulk-steps b{display:inline-grid;place-items:center;background:#f2eaf0;color:#a96b81;border-radius:50%;width:24px;height:24px;font-size:11px}.bulk-columns{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:22px}.bulk-page form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;margin-bottom:18px}.bulk-page form input,.bulk-page form select{width:100%;font-weight:400}.bulk-fields{display:grid;grid-template-columns:.7fr 1fr;gap:18px}.bulk-gift-preview{display:flex;align-items:center;gap:13px;border:1px dashed #eed1db;background:#fff9fa;border-radius:12px;padding:14px;margin:-3px 0 20px;min-height:84px}.bulk-gift-preview img,.bulk-gift-preview>span{width:54px;height:54px;object-fit:contain;font-size:40px}.bulk-gift-preview small{display:block;color:#a28a99;margin-top:5px;font-size:11px}.bulk-page form p{font-size:12px;line-height:1.7;margin:0 0 20px}.bulk-page form>.btn-primary{width:100%;padding:13px}.bulk-empty{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#998c9c;padding:30px}.bulk-empty>span{font-size:50px;color:#eca5b9;margin-bottom:15px}.bulk-empty p{font-size:12px;max-width:280px;line-height:1.7}.bulk-review h2{font-size:22px;letter-spacing:-.6px;margin:18px 0 12px}.bulk-review p{font-size:12px;color:#7d7086;line-height:1.7}.bulk-review .btn{margin:5px 4px 5px 0}.bulk-state{display:inline-block;font-size:10px;font-weight:600;padding:5px 10px;border-radius:6px;background:#f3eef8;color:#846b9d}.state-complete,.state-done{background:#e8f6ee;color:#35875e}.state-running{background:#fff0d7;color:#a7782d}.state-partial,.state-failed{background:#ffeef1;color:#ce4d69}.state-cancelled{background:#f0f0f3;color:#8b8793}.bulk-metrics{display:flex;border:1px solid var(--line);border-radius:12px;margin:20px 0;padding:17px 0}.bulk-metrics>div{flex:1;text-align:center;border-right:1px solid var(--line)}.bulk-metrics>div:last-child{border:0}.bulk-metrics b{display:block;font-size:25px;font-weight:650;color:#c84a67;letter-spacing:-.8px}.bulk-metrics small{display:block;font-size:10px;color:#a08f9b;margin-top:6px}.bulk-note{padding:12px;background:#fff9e9;border-radius:9px;color:#9c854c!important}.bulk-status{font-size:12px;min-height:20px;margin:17px 2px;color:#448667}.bulk-status.is-error{color:#c93754}.bulk-page>section.card{margin-top:20px}.bulk-page progress{width:100%;height:9px;accent-color:#e44a6b}.bulk-page #bulk-more{margin:0}.bulk-page #bulk-history strong{font-weight:600}
.login{background:#faf5f7}.login-bg{background:radial-gradient(ellipse at 15% 15%,#fce2e9,transparent 45%),radial-gradient(ellipse at 85% 85%,#eee9ff,transparent 40%)}.login-orb{display:none}.login-card{background:#fff;border:1px solid #eee4eb;box-shadow:0 20px 70px #5831440d;backdrop-filter:none}.login-title{color:var(--ink);letter-spacing:-.8px}.login-logo{margin:auto auto 22px}
@media(min-width:1600px){.main,.main.gs-wide{padding-left:48px;padding-right:48px}}
@media(max-width:1050px){.layout{grid-template-columns:204px minmax(0,1fr)}.sidebar{padding:22px 10px}.nav-btn{font-size:12px;padding:10px;gap:8px}.main,.main.gs-wide{padding:24px 20px}.bulk-columns{grid-template-columns:1fr}.bulk-hero{padding:24px}.bulk-hero h2{font-size:24px}}
@media(max-width:700px){.layout{display:block}.sidebar{height:auto;position:relative;padding:16px;border-bottom:1px solid var(--line)}.brand{padding-bottom:12px}.sidebar .logout{position:absolute;right:15px;top:8px;margin:0}.side-search{padding-bottom:12px}.nav{flex-direction:row;overflow-x:auto;gap:7px}.nav-group{display:none}.nav-btn{width:auto;flex-shrink:0;padding:10px}.nav-btn svg{width:16px}.main,.main.gs-wide{padding:22px 14px}.topbar{gap:8px}.topbar h1{font-size:23px}.top-actions{flex-direction:column;align-items:flex-end}.workspace-tabs{gap:6px}.workspace-tab{font-size:11px;padding:8px 10px}.bulk-hero{padding:20px}.bulk-hero h2{font-size:22px}.bulk-art{font-size:50px;padding:0}.bulk-hero p{font-size:12px}.bulk-steps{gap:12px;font-size:10px;flex-wrap:wrap}.bulk-fields{gap:12px}.card{padding:18px}.bulk-metrics b{font-size:22px}}
