:root{--app-zoom: 1.1}html{zoom:var(--app-zoom)}:root{--green: #1f4c94;--green-dark: #163a75;--green-soft: #e7f2fb;--text: #1f2937;--text-soft: #6b7280;--text-faint: #9ca3af;--border: #e5e7eb;--border-soft: #f0f1f3;--bg: #ffffff;--bg-soft: #f9fafb;--bg-hover: #f3f4f6;--red: #dc2626;--purple: #2f8fd0;--radius: 8px;--shadow: 0 4px 24px rgba(0, 0, 0, .1);--bg-card: #ffffff;--surface: #ffffff;--surface-2: #f7f8fa;--purple-soft: rgba(47, 143, 208, .1);--ok: #16a34a;--ok-soft: rgba(22, 163, 74, .1);--ok-border: rgba(22, 163, 74, .28);--warn: #b45309;--warn-soft: rgba(217, 119, 6, .1);--warn-border: rgba(217, 119, 6, .28);--danger-soft: rgba(220, 38, 38, .08);--danger-border: rgba(220, 38, 38, .26);--shadow-1: 0 1px 2px rgba(16, 24, 40, .05);--shadow-2: 0 4px 12px -2px rgba(16, 24, 40, .08), 0 2px 4px -2px rgba(16, 24, 40, .05);--shadow-3: 0 12px 32px -8px rgba(16, 24, 40, .16), 0 4px 12px -4px rgba(16, 24, 40, .08)}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);font-size:14px}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:13px;color:var(--text)}.app{display:flex;height:calc(100vh / var(--app-zoom));overflow:hidden}.sidebar{width:260px;min-width:260px;border-right:1px solid var(--border);padding:16px 12px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;background:var(--bg)}.sidebar .brand{display:flex;align-items:center;gap:10px;padding:6px 8px 16px}.sidebar .brand .logo{width:34px;height:34px;border-radius:9px;background:var(--purple);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px}.sidebar .brand .name{font-weight:600;font-size:15px}.sidebar .section-label{font-size:11.5px;color:var(--text-faint);font-weight:500;padding:14px 10px 4px;letter-spacing:.02em}.sidebar .acct-select{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);font-size:13px}.nav-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--radius);color:var(--text);text-decoration:none;border:none;background:transparent;width:100%;text-align:left;font-size:13.5px}.nav-item:hover{background:var(--bg-hover)}.nav-item.active{background:var(--bg-hover);font-weight:600}.nav-item .icon{width:18px;text-align:center;opacity:.75}.sidebar .spacer{flex:1}.main{flex:1;overflow:auto;display:flex;flex-direction:column}.page{padding:20px 28px 60px;flex:1}.page-head{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}.page-head h1{font-size:21px;margin:0;font-weight:700}.page-head>.sub{color:var(--text-soft);font-size:13px;width:100%;margin-top:-10px}.msel-option .sub{margin-top:0}.page-head .grow{flex:1}.btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);font-size:13px;font-weight:500;color:var(--text);white-space:nowrap}.btn:hover{background:var(--bg-soft)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--green);border-color:var(--green);color:#fff}.btn.primary:hover:not(:disabled){background:var(--green-dark)}.btn.danger{color:var(--red)}.btn.small{padding:5px 10px;font-size:12.5px}.btn.ghost{border:none;background:transparent}.btn.ghost:hover{background:var(--bg-hover)}.icon-btn{border:none;background:transparent;border-radius:6px;padding:5px 7px;color:var(--text-soft);font-size:14px}.icon-btn:hover{background:var(--bg-hover);color:var(--text)}.icon-btn.danger:hover{color:var(--red)}.search-box{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--radius);padding:8px 12px;min-width:280px;background:var(--bg)}.search-box input{border:none;outline:none;flex:1;background:transparent}.field-label{font-size:12px;font-weight:600;color:var(--text-soft);margin-bottom:5px;display:block}.text-input,.select-input{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);outline:none;background:var(--bg)}.text-input:focus,.grid-textarea:focus{border-color:var(--green)}textarea.text-input{resize:vertical;min-height:70px}.grid-wrap{overflow-x:auto;border-top:1px solid var(--border)}.launch-table{border-collapse:collapse;width:100%;min-width:1350px}.launch-table th{text-align:center;font-size:13px;font-weight:600;padding:12px 10px;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:2}.launch-table td{padding:14px 10px;border-bottom:1px solid var(--border-soft);vertical-align:top}.launch-table .check-col{width:46px;text-align:center}.launch-table th:nth-child(1),.launch-table td:nth-child(1){position:sticky;left:0;background:var(--bg);z-index:3}.launch-table th:nth-child(2),.launch-table td:nth-child(2){position:sticky;left:46px;background:var(--bg);z-index:3;box-shadow:2px 0 4px -2px #0000001f}.launch-table thead th:nth-child(1),.launch-table thead th:nth-child(2){z-index:4}.launch-table input[type=checkbox]{width:16px;height:16px;accent-color:var(--green);cursor:pointer}.creative-cell{width:120px;text-align:center}.creative-thumb{width:74px;height:128px;border-radius:10px;object-fit:cover;background:#111;display:block;margin:0 auto}.creative-cell .tag{display:inline-block;margin-bottom:6px;background:#111827;color:#fff;font-size:10.5px;padding:2.5px 8px;border-radius:20px}.grid-textarea{width:100%;min-height:96px;padding:9px 10px;border:1px solid var(--border);border-radius:var(--radius);resize:vertical;outline:none;font-size:13px;line-height:1.4;background:var(--bg)}.grid-textarea.small{min-height:40px}.add-variation{border:none;background:none;color:var(--text-soft);font-size:12.5px;padding:6px 2px 0;display:inline-flex;gap:5px;align-items:center}.add-variation:hover{color:var(--green)}.variation-row{display:flex;gap:6px;margin-top:6px;align-items:flex-start}.variation-row .grid-textarea{min-height:58px}.actions-cell{width:110px;white-space:nowrap;text-align:center;position:sticky;right:0;background:var(--bg);z-index:3;box-shadow:-6px 0 8px -6px #00000026}thead .actions-cell{z-index:4}.msel{position:relative;min-width:240px}.msel-control{border:1px solid var(--border);border-radius:var(--radius);padding:7px 10px;display:flex;align-items:center;gap:8px;background:var(--bg);cursor:pointer;font-size:13px;justify-content:space-between}.msel-control .placeholder{color:var(--text-faint)}.msel-chips{display:flex;flex-direction:column;gap:6px}.msel-chip{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:var(--radius);padding:6px 9px;font-size:12.5px;background:var(--bg);justify-content:space-between}.msel-chip .x{color:var(--text-faint);cursor:pointer;border:none;background:none}.msel-chip .x:hover{color:var(--red)}.msel-menu{position:absolute;z-index:30;top:calc(100% + 4px);left:0;min-width:320px;max-width:430px;max-height:340px;overflow-y:auto;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);padding:6px}.msel-menu .msel-search{width:calc(100% - 12px);margin:4px 6px 6px;padding:7px 9px;border:1px solid var(--border);border-radius:7px;outline:none}.msel-option{display:flex;align-items:center;gap:9px;padding:8px 9px;border-radius:7px;cursor:pointer;font-size:13px}.msel-option:hover{background:var(--bg-hover)}.msel-option .sub{color:var(--text-faint);font-size:11.5px}.msel-option img{width:24px;height:24px;border-radius:50%}.msel-group{font-size:11px;color:var(--text-faint);font-weight:600;padding:8px 9px 3px;text-transform:uppercase;letter-spacing:.03em}.dropdown{position:relative;display:inline-block}.menu{position:absolute;right:0;top:calc(100% + 6px);z-index:40;background:var(--bg);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow);min-width:230px;padding:6px}.menu .menu-title{font-size:12px;color:var(--text-faint);padding:8px 10px 4px}.menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border:none;background:none;border-radius:7px;font-size:13px;text-align:left;color:var(--text)}.menu-item:hover{background:var(--bg-hover)}.menu-item.danger{color:var(--red)}.menu-sep{height:1px;background:var(--border-soft);margin:5px 4px}.panel{position:absolute;right:0;top:calc(100% + 6px);z-index:40;background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);width:440px;padding:16px;max-height:calc(78vh / var(--app-zoom));overflow-y:auto}.panel h3{margin:0 0 12px;font-size:15px}.field-pill-list{display:flex;flex-direction:column;gap:7px;margin:10px 0}.field-pill{display:flex;align-items:center;justify-content:space-between;background:var(--green-soft);color:var(--green-dark);border-radius:8px;padding:9px 12px;font-size:13px;font-weight:500}.field-pill.off{background:var(--bg-soft);color:var(--text-faint)}.field-pill input{accent-color:var(--green);width:16px;height:16px}.radio-row{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:8px;font-size:13px}.radio-row.sel{background:var(--bg-soft)}.radio-row input{accent-color:var(--green)}.panel-foot{display:flex;justify-content:flex-end;gap:10px;margin-top:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:100;padding:30px}.modal{background:var(--bg);border-radius:14px;box-shadow:var(--shadow);width:min(1500px,96vw);max-height:calc(92vh / var(--app-zoom));display:flex;flex-direction:column;overflow:hidden}.modal.narrow{width:min(560px,94vw)}.modal.medium{width:min(860px,94vw)}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;border-bottom:1px solid var(--border)}.modal-head h2{margin:0;font-size:17px}.modal-body{flex:1;overflow:auto;display:flex}.modal-foot{padding:13px 22px;border-top:1px solid var(--border);display:flex;align-items:center;gap:12px}.modal-foot .grow{flex:1;color:var(--text-soft);font-size:13px}.lc-sources{width:200px;min-width:200px;border-right:1px solid var(--border);padding:14px 10px;display:flex;flex-direction:column;gap:4px}.lc-main{flex:1;overflow:auto;padding:14px 20px}.lc-table{width:100%;border-collapse:collapse}.lc-table th{font-size:12.5px;font-weight:600;text-align:left;padding:9px 10px;border-bottom:1px solid var(--border);background:var(--bg-soft)}.lc-table td{padding:9px 10px;border-bottom:1px solid var(--border-soft);font-size:13px}.lc-table .thumb{width:46px;height:80px;object-fit:cover;border-radius:7px;background:#111}.status-pill{display:inline-block;font-size:12px;padding:3px 10px;border-radius:6px;background:var(--bg-hover);color:var(--text-soft);white-space:nowrap}.status-pill.launched{background:var(--green-soft);color:var(--green-dark);border:1px solid #b9d8f2}.status-pill.error{background:#fee2e2;color:var(--red)}.status-pill.processing{background:#fef3c7;color:#b45309}.data-table{width:100%;border-collapse:collapse}.data-table th{text-align:left;font-size:12.5px;font-weight:600;color:var(--text);padding:11px 12px;border-bottom:1px solid var(--border);background:var(--bg-soft)}.data-table td{padding:11px 12px;border-bottom:1px solid var(--border-soft);font-size:13.5px}.data-table .thumb{width:48px;height:84px;object-fit:cover;border-radius:8px;background:#111}.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:90px 20px;gap:8px;text-align:center}.empty .rows{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.empty .fake-row{width:330px;height:42px;border:1px solid var(--border-soft);border-radius:9px;background:var(--bg);display:flex;align-items:center;gap:10px;padding:0 12px}.empty .fake-row .bar{height:9px;border-radius:5px;background:var(--border-soft)}.empty h2{margin:6px 0 0;font-size:16px}.empty p{margin:0 0 10px;color:var(--text-soft);font-size:13px}.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.footer-bar{position:sticky;bottom:0;background:var(--bg);border-top:1px solid var(--border);padding:12px 28px;display:flex;justify-content:space-between;align-items:center;gap:12px}.upload-drop{border:2px dashed var(--border);border-radius:12px;padding:40px;text-align:center;color:var(--text-soft);background:var(--bg-soft);transition:border-color .15s}.upload-drop.over{border-color:var(--green);background:var(--green-soft)}.progress-outer{height:7px;border-radius:4px;background:var(--border-soft);overflow:hidden;width:130px}.progress-inner{height:100%;background:var(--green);transition:width .3s}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%);background:#111827;color:#fff;padding:11px 20px;border-radius:10px;font-size:13.5px;z-index:300;box-shadow:var(--shadow);max-width:80vw}.toast.error{background:var(--red)}.settings-card{max-width:620px;border:1px solid var(--border);border-radius:12px;padding:22px;margin-bottom:18px}.settings-card h3{margin:0 0 6px;font-size:15px}.settings-card .hint{color:var(--text-soft);font-size:13px;margin:0 0 14px;line-height:1.5}.launch-results{width:100%;border-collapse:collapse;font-size:13px}.launch-results td,.launch-results th{padding:8px 10px;border-bottom:1px solid var(--border-soft);text-align:left}.help-steps{line-height:1.65;font-size:13.5px;color:var(--text)}.help-steps code{background:var(--bg-hover);padding:1px 6px;border-radius:5px;font-size:12.5px}.pagination{display:flex;gap:6px;justify-content:center;padding:16px;align-items:center}.pagination button{min-width:30px;height:30px;border-radius:7px;border:1px solid var(--border);background:var(--bg);font-size:13px}.pagination button.cur{border-color:var(--text);font-weight:600}.share-wrap{max-width:1240px;margin:0 auto;padding:28px 20px;background:var(--bg-soft);min-height:100vh}.share-head{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:22px}.share-head h1{margin:0 0 4px;font-size:22px}.share-head p{margin:0;color:var(--text-soft);font-size:13.5px}.share-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px}.share-card{background:var(--bg);border:1px solid var(--border);border-radius:14px;overflow:hidden}.share-media{width:100%;aspect-ratio:4 / 5;object-fit:contain;background:#0b0f19;display:block}.board-tree{width:235px;min-width:235px;border:1px solid var(--border);border-radius:12px;padding:12px 10px;position:sticky;top:20px}.board-tree-account{font-weight:700;font-size:13.5px;padding:4px 8px 10px;border-bottom:1px solid var(--border-soft);margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-item,.board-item-name{display:flex;justify-content:space-between;align-items:center;gap:6px;width:100%;border:none;background:none;text-align:left;padding:7px 8px;border-radius:8px;font-size:13px;color:var(--text);overflow:hidden}.board-item:hover,.board-row:hover .board-item-name{background:var(--bg-hover)}.board-item.active,.board-row.active .board-item-name{background:var(--green-soft);font-weight:600}.board-item .count,.board-item-name .count{color:var(--text-faint);font-size:11.5px;font-weight:400}.board-row{display:flex;align-items:center}.board-row .board-item-name{flex:1;min-width:0}.board-row .board-item-name>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-actions{display:none;white-space:nowrap}.board-row:hover .board-actions{display:inline-flex}.board-actions .icon-btn{padding:3px 4px;font-size:12px}:root{--border: #e3e8f0;--border-soft: #edf1f7;--bg-soft: #f7f9fc;--bg-hover: #f1f5fa;--radius: 10px;--shadow: 0 12px 40px rgba(15, 34, 70, .14);--shadow-sm: 0 1px 2px rgba(15, 34, 70, .05), 0 4px 14px rgba(15, 34, 70, .05);--ring: 0 0 0 3px rgba(47, 143, 208, .22);--bg-card: #ffffff;--surface: #ffffff;--surface-2: #ffffff;--purple-soft: #e7f2fb;--ok: #0a7d43;--ok-soft: #eefaf3;--ok-border: #cdeede;--warn: #b45309;--warn-soft: #fef3c7;--warn-border: #f7d79a;--danger-soft: #fee2e2;--danger-border: #f3c2c2}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;letter-spacing:-.006em}button,input,select,textarea{transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease}.sidebar{background:linear-gradient(180deg,#fbfcfe,#f6f9fc)}.sidebar .section-label{text-transform:uppercase;font-size:10.5px;letter-spacing:.09em;font-weight:700;color:#a6b2c5}.nav-item{color:#3d4a61;font-weight:500}.nav-item.active{background:var(--green-soft);color:var(--green);font-weight:700;box-shadow:inset 3px 0 0 var(--green)}.page-head h1{font-weight:800;letter-spacing:-.02em}.btn{box-shadow:var(--shadow-sm)}.btn:hover{border-color:#d3dbe8}.btn.primary{background:linear-gradient(180deg,#2a5cad 0%,var(--green) 100%);border-color:var(--green-dark);box-shadow:0 1px 2px #163a7559,0 6px 16px #1f4c9438}.btn.primary:hover:not(:disabled){background:linear-gradient(180deg,#24509a 0%,var(--green-dark) 100%);transform:translateY(-1px);box-shadow:0 2px 4px #163a7559,0 10px 22px #1f4c9447}.btn.primary:active:not(:disabled){transform:translateY(0)}.btn.ghost,.icon-btn{box-shadow:none}.text-input:focus,.select-input:focus,.grid-textarea:focus,.search-box:focus-within,.msel-menu .msel-search:focus{border-color:var(--purple);box-shadow:var(--ring)}.search-box{transition:border-color .15s ease,box-shadow .15s ease}.data-table th,.lc-table th{text-transform:uppercase;font-size:11px;letter-spacing:.07em;color:#7a879c;background:var(--bg-soft)}.data-table tbody tr,.lc-table tbody tr,.launch-table tbody tr{transition:background .12s ease}.data-table tbody tr:hover,.lc-table tbody tr:hover{background:#fafcff}.data-table .thumb,.lc-table .thumb,.creative-thumb{box-shadow:var(--shadow-sm)}.status-pill{border-radius:999px;font-weight:600;font-size:11.5px;padding:3.5px 11px}.creative-cell .tag{background:#12233f;letter-spacing:.03em}.settings-card,.board-tree,.share-card{box-shadow:var(--shadow-sm);border-color:var(--border);background:#fff}.settings-card h3{font-weight:700;letter-spacing:-.01em}.modal{border-radius:18px;box-shadow:0 24px 80px #0a193747}.modal-backdrop{background:#0d193073;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.menu,.panel,.msel-menu{border-radius:12px;box-shadow:0 10px 36px #0f224629}.field-pill{font-weight:600}.board-tree{background:#fff}.board-tree-account{color:var(--green)}.board-item.active,.board-row.active .board-item-name{box-shadow:inset 3px 0 0 var(--green)}.launch-table th{font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:#7a879c}.grid-textarea,.msel-control{box-shadow:inset 0 1px 2px #0f224608}.footer-bar{box-shadow:0 -8px 24px #0f22460f}.share-wrap{background:linear-gradient(180deg,#f4f8fc,#eef3f9)}.share-card{border-radius:16px;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}.share-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0f22461f}.share-head h1{font-weight:800;letter-spacing:-.02em}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#d4dce8;border-radius:8px;border:2px solid #fff}::-webkit-scrollbar-thumb:hover{background:#bfcadb}.toast{border-radius:12px;background:#12233f;box-shadow:0 12px 32px #0a193759;font-weight:500}.hover-preview{position:fixed;z-index:600;width:400px;background:#0b0f19;border-radius:14px;overflow:hidden;box-shadow:0 24px 70px #050f2380;pointer-events:none;animation:hoverPreviewIn .14s ease-out}.hover-preview video,.hover-preview img{display:block;width:100%;object-fit:contain;background:#0b0f19}.hover-preview-name{color:#e8edf5;font-size:12.5px;font-weight:600;padding:10px 14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:#ffffff0a}.hover-preview-hint{color:#7a879c;font-weight:400}@keyframes hoverPreviewIn{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.kanban{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:14px;align-items:start;overflow-x:auto;padding-bottom:10px}.kanban-col{background:var(--bg-soft);border:1px solid var(--border);border-radius:12px;padding:10px;min-height:200px;transition:background .12s,border-color .12s}.kanban-col.over{border-color:var(--green);background:var(--green-soft)}.kanban-col-head{display:flex;align-items:center;gap:8px;font-size:13.5px}.kanban-col-head strong{flex:1}.kanban-count{background:var(--bg-hover);color:var(--text-soft);font-size:11.5px;font-weight:600;border-radius:999px;padding:1px 8px}.kanban-col-hint{font-size:11px;color:var(--text-faint);margin:2px 0 10px 16px}.kanban-dot{width:9px;height:9px;border-radius:50%;background:var(--text-faint)}.kanban-dot.draft{background:#9aa6b8}.kanban-dot.to_review{background:#d99a2b}.kanban-dot.revision{background:var(--red)}.kanban-dot.approved{background:var(--green)}.kanban-dot.launched{background:var(--purple)}.kanban-cards{display:flex;flex-direction:column;gap:9px}.kanban-card{display:flex;gap:10px;background:var(--bg);border:1px solid var(--border);border-radius:10px;padding:9px;box-shadow:var(--shadow-sm);cursor:grab}.kanban-card:active{cursor:grabbing}.kanban-thumb{width:46px;height:62px;object-fit:cover;border-radius:7px;background:#0b0f19;flex-shrink:0}.kanban-card-body{min-width:0;flex:1}.kanban-card-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanban-card-board{font-size:11px;color:var(--text-faint);margin-top:1px}.kanban-card-comment{font-size:11px;color:var(--text-soft);margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:var(--bg-soft);border-radius:6px;padding:3px 7px}.kanban-empty{color:var(--text-faint);font-size:12px;text-align:center;padding:16px 0}.stage-badge{display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:999px;background:var(--bg-hover);color:var(--text-soft)}.stage-badge .kanban-dot{width:7px;height:7px}.user-box{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 10px;margin:4px 2px;border:1px solid var(--border);border-radius:10px;background:var(--bg-soft)}.user-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:11px;color:var(--text-faint)}.notif{position:relative}.notif-bell{position:relative;background:none;border:none;cursor:pointer;font-size:18px;line-height:1;padding:4px;border-radius:8px}.notif-bell:hover{background:var(--bg-hover)}.notif-badge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;background:var(--red);color:#fff;font-size:10px;font-weight:700;line-height:16px;text-align:center;border-radius:999px}.notif-panel{position:fixed;top:60px;left:272px;z-index:100;width:340px;max-height:calc(70vh / var(--app-zoom));display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg, 0 12px 44px rgba(0,0,0,.28));overflow:hidden}@media (max-width: 640px){.notif-panel{left:12px;right:12px;width:auto}}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--border);font-size:14px}.notif-clear{background:none;border:none;color:var(--purple);cursor:pointer;font-size:12px}.notif-list{overflow-y:auto}.notif-item{display:flex;gap:10px;align-items:flex-start;width:100%;text-align:left;background:none;border:none;border-bottom:1px solid var(--border-soft);padding:11px 14px;cursor:pointer}.notif-item:hover{background:var(--bg-hover)}.notif-item.unread{background:var(--purple-soft)}.notif-icon{font-size:15px;flex-shrink:0;margin-top:1px}.notif-body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.notif-text{font-size:13px;color:var(--text)}.notif-comment{font-size:12px;color:var(--text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.notif-meta{font-size:11px;color:var(--text-faint)}.notif-dot{width:8px;height:8px;border-radius:50%;background:var(--purple);flex-shrink:0;margin-top:5px}.notif-empty{padding:28px 18px;text-align:center;color:var(--text-faint);font-size:12.5px}.seg{display:inline-flex;border:1px solid var(--border);border-radius:8px;overflow:hidden}.seg-btn{background:var(--bg);border:none;padding:6px 12px;font-size:12.5px;cursor:pointer;color:var(--text-soft);border-right:1px solid var(--border)}.seg-btn:last-child{border-right:none}.seg-btn.on{background:var(--purple);color:#fff}.pl-selbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:10px;background:var(--purple-soft, var(--bg-hover));border:1px solid var(--purple);border-radius:10px;padding:8px 12px;margin-bottom:12px;font-size:13px}.pl-sections{display:flex;flex-direction:column;gap:12px}.pl-section{border:1px solid var(--border);border-radius:12px;background:var(--bg-soft);overflow:hidden}.pl-section-head{display:flex;align-items:center;gap:9px;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:12px 14px;font-size:14px;color:var(--text)}.pl-section-head strong{font-weight:600}.pl-section-hint{color:var(--text-faint);font-size:11.5px;margin-left:auto}.pl-caret{display:inline-block;transition:transform .12s;color:var(--text-faint);font-size:11px}.pl-caret.open{transform:rotate(90deg)}.pl-groups{display:flex;flex-direction:column;gap:8px;padding:0 12px 12px}.pl-group{border:1px solid var(--border);border-radius:10px;background:var(--bg)}.pl-group-head{display:flex;align-items:center;gap:8px;padding:8px 10px}.pl-group-toggle{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;color:var(--text);font-size:13px;padding:0;min-width:0}.pl-group-name{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:320px}.pl-check{width:15px;height:15px;accent-color:var(--green);cursor:pointer;flex-shrink:0}.pl-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:6px;padding:4px 10px 10px}.pl-item{display:flex;align-items:center;gap:8px;padding:5px 7px;border-radius:8px;cursor:pointer;border:1px solid transparent}.pl-item:hover{background:var(--bg-hover)}.pl-item.sel{background:var(--green-soft);border-color:var(--green)}.data-table tr.row-sel td{background:var(--green-soft)}.batch-row{cursor:pointer}.batch-row:hover td{background:var(--bg-hover)}.batch-thumbs{display:flex;gap:4px;align-items:center}.batch-thumb{width:42px;height:56px;object-fit:cover;border-radius:6px;background:#0b0f19;flex-shrink:0}.batch-more{font-size:12px;color:var(--text-soft);background:var(--bg-hover);border-radius:6px;padding:4px 7px;font-weight:600}.share-bulkbar{position:sticky;top:10px;z-index:5;display:flex;align-items:center;gap:12px;background:var(--bg);border:1px solid var(--border);border-radius:12px;padding:10px 16px;margin-bottom:20px;box-shadow:var(--shadow-sm);font-size:13.5px}.share-group-head{display:flex;align-items:center;gap:10px;margin:0 0 12px}.share-card{position:relative}.share-card.sel{outline:2px solid var(--green);outline-offset:1px}.share-check{position:absolute;top:10px;left:10px;z-index:3;width:20px;height:20px;accent-color:var(--green);cursor:pointer;background:#ffffffe6;border-radius:4px}.pl-thumb{width:30px;height:40px;object-fit:cover;border-radius:5px;background:#0b0f19;flex-shrink:0}.pl-item-name{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.pl-item-comment{font-size:11px;color:var(--text-soft);flex-shrink:0}.queue-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.queue-card{position:relative;display:flex;flex-direction:column;gap:6px;border:1px solid var(--border);border-radius:10px;padding:8px;background:var(--bg);cursor:pointer;transition:border-color .12s,opacity .12s}.queue-card:hover{border-color:var(--purple)}.queue-card.off{opacity:.45}.queue-check{position:absolute;top:10px;left:10px;width:16px;height:16px;accent-color:var(--green);z-index:2;cursor:pointer}.queue-thumb{width:100%;aspect-ratio:4 / 5;object-fit:cover;border-radius:7px;background:#0b0f19}.queue-card-name{font-size:12px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.queue-card-board{font-size:10.5px;color:var(--text-faint)}.chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;border-radius:999px;font-size:12px;background:var(--bg-soft, #f4f4f7);border:1px solid var(--border);color:var(--text-soft)}.spinner{width:24px;height:24px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--purple, #6b4eff);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}[data-theme=dark]{--bg: #0a0e1a;--bg-soft: #111726;--bg-hover: #1b2438;--bg-card: #151d2e;--surface: #141b2b;--surface-2: #1b2340;--border: #26324c;--border-soft: #1a2236;--text: #e8edf7;--text-soft: #a4b2ce;--text-faint: #6f80a4;--green: #3d7bff;--green-dark: #2f63e6;--green-soft: rgba(61, 123, 255, .16);--purple: #38bdf8;--purple-soft: rgba(56, 189, 248, .14);--red: #f87171;--ok: #34d399;--ok-soft: rgba(52, 211, 153, .13);--ok-border: rgba(52, 211, 153, .32);--warn: #fbbf24;--warn-soft: rgba(251, 191, 36, .12);--warn-border: rgba(251, 191, 36, .3);--danger-soft: rgba(248, 113, 113, .13);--danger-border: rgba(248, 113, 113, .34);--radius: 11px;--shadow: 0 24px 64px rgba(0, 0, 0, .62);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .45), 0 8px 22px rgba(0, 0, 0, .38);--ring: 0 0 0 3px rgba(56, 189, 248, .28)}[data-theme=dark] body{background:#0a0e1a;background:radial-gradient(1100px 620px at 100% -8%,rgba(56,120,255,.1),transparent 60%),radial-gradient(900px 560px at -6% 8%,rgba(56,189,248,.06),transparent 55%),#0a0e1a;color:var(--text)}[data-theme=dark] ::selection{background:#3d7bff52}[data-theme=dark] .sidebar{background:linear-gradient(180deg,#0e1426,#090d17);border-right:1px solid var(--border)}[data-theme=dark] .sidebar .brand .logo{box-shadow:0 0 22px #3d7bff73}[data-theme=dark] .sidebar .section-label{color:#5f6f92}[data-theme=dark] .nav-item{color:#b7c3dc}[data-theme=dark] .nav-item:hover{background:#141c2e}[data-theme=dark] .nav-item.active{background:var(--green-soft);color:#cfe0ff;box-shadow:inset 3px 0 0 var(--green),0 0 0 1px #3d7bff1f}[data-theme=dark] .user-box{background:#101728;border-color:var(--border)}[data-theme=dark] .btn{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme=dark] .btn:hover{background:#1b2440;border-color:#33415f}[data-theme=dark] .btn.primary{background:linear-gradient(180deg,#4a86ff,#2f63e6);border-color:#2b57cc;color:#fff;box-shadow:0 1px 2px #0006,0 8px 22px #2f63e659,0 0 22px #3d7bff40}[data-theme=dark] .btn.primary:hover:not(:disabled){background:linear-gradient(180deg,#3d78f5,#274fd0);box-shadow:0 2px 4px #00000073,0 12px 28px #2f63e66b,0 0 28px #3d7bff52}[data-theme=dark] .text-input,[data-theme=dark] .select-input,[data-theme=dark] .grid-textarea,[data-theme=dark] .acct-select,[data-theme=dark] .msel-control,[data-theme=dark] .search-box{background:#0f1626;border-color:var(--border);color:var(--text);box-shadow:inset 0 1px 2px #00000047}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#61729a}[data-theme=dark] select option{background:#141b2b;color:var(--text)}[data-theme=dark] .settings-card,[data-theme=dark] .board-tree{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow-sm)}[data-theme=dark] .modal,[data-theme=dark] .menu,[data-theme=dark] .panel,[data-theme=dark] .msel-menu,[data-theme=dark] .notif-panel{background:var(--surface-2);border-color:var(--border)}[data-theme=dark] .modal-backdrop{background:#030710a8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}[data-theme=dark] .kanban-col{background:#0f1626;border-color:var(--border)}[data-theme=dark] .kanban-card,[data-theme=dark] .queue-card,[data-theme=dark] .pl-group,[data-theme=dark] .pl-section{background:var(--surface);border-color:var(--border)}[data-theme=dark] .pl-section{background:#0f1626}[data-theme=dark] .seg-btn,[data-theme=dark] .pagination button{background:var(--surface);color:var(--text-soft)}[data-theme=dark] .seg-btn.on{background:var(--green);color:#fff}[data-theme=dark] .footer-bar{background:#0a0e1aeb;border-top-color:var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 -10px 30px #0006}[data-theme=dark] .data-table th,[data-theme=dark] .lc-table th,[data-theme=dark] .launch-table th{background:#0f1626;color:#8091b3;border-bottom-color:var(--border)}[data-theme=dark] .data-table td,[data-theme=dark] .lc-table td,[data-theme=dark] .launch-table td{border-bottom-color:var(--border-soft)}[data-theme=dark] .data-table tbody tr:hover,[data-theme=dark] .lc-table tbody tr:hover{background:#121a2b}[data-theme=dark] .status-pill{background:#1b2440;color:var(--text-soft)}[data-theme=dark] .status-pill.launched{background:var(--green-soft);color:#9dc0ff;border-color:#3d7bff66}[data-theme=dark] .status-pill.error{background:var(--danger-soft);color:#fca5a5}[data-theme=dark] .status-pill.processing{background:var(--warn-soft);color:#fcd34d}[data-theme=dark] .stage-badge,[data-theme=dark] .kanban-count,[data-theme=dark] .kanban-card-comment{background-color:#1b2440}[data-theme=dark] .field-pill{background:var(--green-soft);color:#bcd3ff}[data-theme=dark] .field-pill.off{background:#121a2b;color:var(--text-faint)}[data-theme=dark] .creative-thumb,[data-theme=dark] .data-table .thumb,[data-theme=dark] .lc-table .thumb,[data-theme=dark] .kanban-thumb,[data-theme=dark] .batch-thumb,[data-theme=dark] .queue-thumb,[data-theme=dark] .pl-thumb,[data-theme=dark] .share-media{background:#05070e}[data-theme=dark] .menu,[data-theme=dark] .panel,[data-theme=dark] .msel-menu,[data-theme=dark] .notif-panel,[data-theme=dark] .modal{box-shadow:0 24px 70px #0009}[data-theme=dark] .menu-item:hover,[data-theme=dark] .msel-option:hover,[data-theme=dark] .notif-item:hover,[data-theme=dark] .board-item:hover,[data-theme=dark] .board-row:hover .board-item-name{background:#182236}[data-theme=dark] .board-item.active,[data-theme=dark] .board-row.active .board-item-name{background:var(--green-soft)}[data-theme=dark] .notif-item.unread{background:var(--purple-soft)}[data-theme=dark] .notif-clear{color:var(--purple)}[data-theme=dark] .text-input:focus,[data-theme=dark] .select-input:focus,[data-theme=dark] .grid-textarea:focus,[data-theme=dark] .search-box:focus-within,[data-theme=dark] .msel-menu .msel-search:focus,[data-theme=dark] .acct-select:focus{border-color:var(--purple);box-shadow:var(--ring)}[data-theme=dark] .toast{background:#141d33;border:1px solid var(--border);box-shadow:0 18px 44px #0009}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#2a3652;border:2px solid #0a0e1a}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#384766}[data-theme=dark] .empty .fake-row{background:#0f1626;border-color:var(--border)}[data-theme=dark] .empty .fake-row .bar{background:#1c2740}[data-theme=dark] .upload-drop{background:#0f1626;border-color:var(--border)}.theme-toggle{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:8px 10px;margin:2px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text-soft);font-size:12.5px;font-weight:600;cursor:pointer}.theme-toggle:hover{background:var(--bg-hover);color:var(--text)}.share-wrap{--bg: #ffffff;--bg-soft: #f7f9fc;--bg-hover: #f1f5fa;--bg-card: #ffffff;--surface: #ffffff;--surface-2: #ffffff;--border: #e3e8f0;--border-soft: #edf1f7;--text: #1f2937;--text-soft: #6b7280;--text-faint: #9ca3af;--green: #1f4c94;--green-dark: #163a75;--green-soft: #e7f2fb;--purple: #2f8fd0;--purple-soft: #e7f2fb;--red: #dc2626;--ok: #0a7d43;--ok-soft: #eefaf3;--ok-border: #cdeede;--warn: #b45309;--warn-soft: #fef3c7;--warn-border: #f7d79a;--danger-soft: #fee2e2;--danger-border: #f3c2c2;--shadow-sm: 0 1px 2px rgba(15,34,70,.05), 0 8px 24px rgba(15,34,70,.05);background:linear-gradient(180deg,#f4f8fc,#eef3f9);color:var(--text)}.share-wrap .btn{background:#fff;box-shadow:var(--shadow-sm)}.share-wrap .btn.primary{background:linear-gradient(180deg,#2a5cad,#1f4c94);color:#fff}.share-wrap .share-card,.share-wrap .settings-card{background:#fff}.share-wrap ::selection{background:#2f8fd03d}body{font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;letter-spacing:-.011em}.page-head h1,.modal-head h2,.settings-card h3,.share-head h1,h1,h2,h3{letter-spacing:-.022em}:root,[data-theme=dark]{--radius: 14px}.btn{border-radius:999px;padding:8px 16px;font-weight:600}.btn.small{border-radius:999px;padding:6px 13px}.icon-btn{border-radius:10px}.seg{border-radius:999px}.acct-select,.text-input,.select-input,.grid-textarea,.msel-control{border-radius:13px}.search-box,.msel-menu .msel-search,.chip,.status-pill,.stage-badge,.kanban-count,.field-pill,.notif-badge{border-radius:999px}.pagination button{border-radius:12px}.settings-card,.board-tree,.share-card,.kanban-col,.kanban-card,.queue-card,.pl-section,.pl-group,.upload-drop,.share-bulkbar,.pl-selbar,.user-box,.empty .fake-row,.hover-preview{border-radius:18px}.menu,.panel,.msel-menu,.notif-panel{border-radius:16px}.modal{border-radius:24px}.nav-item,.menu-item,.msel-option,.board-item,.board-item-name,.radio-row,.field-pill,.pl-item,.notif-item,.creative-thumb,.data-table .thumb,.lc-table .thumb{border-radius:12px}.settings-card{padding:26px}.page-head h1{font-weight:800}.nav-item{padding:10px 12px}.btn{gap:8px}.chat-composer-wrap{display:flex;justify-content:center;padding:12px 8px 16px}.chat-composer{width:100%;max-width:720px;background:var(--surface, #fff);border:1px solid var(--border);border-radius:22px;padding:12px 14px 10px;box-shadow:0 6px 24px #0000001a;display:flex;flex-direction:column;gap:8px;transition:border-color .15s,box-shadow .15s}.chat-composer:focus-within{border-color:var(--accent, #7c6cff);box-shadow:0 6px 28px #7c6cff29}.chat-composer textarea{border:none;outline:none;background:transparent;resize:none;width:100%;font:inherit;font-size:15.5px;line-height:1.55;color:var(--text);padding:2px 4px;min-height:24px;max-height:180px}.chat-composer textarea::placeholder{color:var(--text-faint)}.composer-row{display:flex;align-items:center;gap:6px}.composer-icon-btn{border:none;background:transparent;border-radius:10px;width:34px;height:34px;cursor:pointer;color:var(--text-soft, #666);font-size:16px;display:flex;align-items:center;justify-content:center}.composer-icon-btn:hover:not(:disabled){background:var(--bg-soft, rgba(0,0,0,.05))}.composer-icon-btn:disabled{opacity:.4;cursor:default}.composer-send{margin-left:auto;border:none;border-radius:999px;width:34px;height:34px;background:var(--accent, #7c6cff);color:#fff;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .15s,transform .1s}.composer-send:hover:not(:disabled){transform:scale(1.06)}.composer-send:disabled{opacity:.35;cursor:default}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-feature-settings:"cv05" 1,"ss01" 1}h1,h2,h3{letter-spacing:-.015em}.page-head h1{font-size:20px;letter-spacing:-.02em}.page-head>.sub{font-size:13px;line-height:1.55;max-width:860px}.sidebar .section-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-faint)}.launch-table td,.data-table td,.lc-table td,.launch-results td{font-variant-numeric:tabular-nums}.data-table th,.lc-table th,.launch-results th{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--text-faint)}.data-table tbody tr,.lc-table tbody tr{transition:background .12s ease}.data-table tbody tr:hover,.lc-table tbody tr:hover{background:var(--bg-soft)}.btn,.icon-btn,.nav-item,.menu-item,.msel-option,.status-pill,.add-variation,.text-input,.select-input,.grid-textarea,.msel-control,.search-box{transition:background-color .13s ease,border-color .13s ease,color .13s ease,box-shadow .13s ease,transform .08s ease}.btn:active:not(:disabled){transform:translateY(.5px)}.btn.primary{box-shadow:var(--shadow-1)}.btn.primary:hover:not(:disabled){box-shadow:var(--shadow-2)}:focus{outline:none}.btn:focus-visible,.icon-btn:focus-visible,.nav-item:focus-visible,.menu-item:focus-visible,.composer-send:focus-visible,.composer-icon-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--green-soft),0 0 0 1.5px var(--green)}.text-input:focus,.select-input:focus,.grid-textarea:focus,.msel-search:focus,.search-box:focus-within{border-color:var(--green);box-shadow:0 0 0 3px var(--green-soft)}.nav-item{position:relative}.nav-item.active{background:var(--green-soft);color:var(--green-dark, var(--green))}.nav-item.active:before{content:"";position:absolute;left:-2px;top:7px;bottom:7px;width:3px;border-radius:4px;background:var(--green)}[data-theme=dark] .nav-item.active{color:var(--text)}.menu,.msel-menu,.panel{box-shadow:var(--shadow-3)}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a0e1a70}.modal{box-shadow:var(--shadow-3);animation:modal-in .16s ease}@keyframes modal-in{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:none}}.menu,.msel-menu,.panel{animation:pop-in .12s ease}@keyframes pop-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}.status-pill{display:inline-flex;align-items:center;gap:5px;font-weight:600;letter-spacing:.01em;line-height:1.6}.status-pill.launched{background:var(--ok-soft);color:var(--ok);border:1px solid var(--ok-border)}.status-pill.processing{background:var(--warn-soft);color:var(--warn);border:1px solid var(--warn-border)}.status-pill.error{background:var(--danger-soft);color:var(--red);border:1px solid var(--danger-border)}.toast{box-shadow:var(--shadow-3);border-radius:10px;font-weight:500}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--text-faint);border:2px solid transparent;background-clip:padding-box}*{scrollbar-width:thin;scrollbar-color:var(--border) transparent}.settings-card{box-shadow:var(--shadow-1);border-radius:12px}.empty h2{font-size:16px;letter-spacing:-.01em}.empty .fake-row{opacity:.7}.footer-bar{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}::selection{background:var(--green-soft)}.btn:disabled,.composer-send:disabled{filter:saturate(.6)}.shimmer{position:relative;overflow:hidden;background:var(--bg-soft);border-radius:8px}.shimmer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent);animation:shimmer 1.3s infinite}[data-theme=dark] .shimmer:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.06),transparent)}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}
