.loading-skeleton{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);overflow:hidden;padding:var(--space-3) 0}.loading-skeleton .skeleton-row:last-child{border-bottom:none}.errorbox{display:flex;align-items:center;gap:var(--space-5)}.errorbox-icon{width:22px;height:22px;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--color-danger) 26%,var(--color-surface));color:var(--status-burned-text);display:inline-flex;align-items:center;justify-content:center;font-weight:var(--fw-extrabold);font-size:var(--fs-12);flex-shrink:0}.account-email{display:flex;align-items:center;height:38px;padding:0 11px;background:var(--color-surface-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-xl);font-family:var(--font-mono);font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-text-secondary);cursor:default;-webkit-user-select:text;user-select:text}.account-label-hint{color:var(--color-text-disabled);font-weight:var(--fw-semibold)}.factory-ui{--color-bg:#eef0f3;--color-surface:#fff;--color-surface-2:#f7f8fa;--color-surface-3:#fafbfc;--color-zebra:#fbfcfd;--color-thead:#f4f5f8;--color-segment-bg:#f0f1f4;--color-border:#e4e7ec;--color-border-2:#d7dbe2;--color-border-input:#e0e3e9;--color-border-soft:#eceef1;--color-row-divider:#f0f1f4;--color-text:#1e2330;--color-text-strong:#161c2b;--color-text-body:#3a4152;--color-text-secondary:#5b6373;--color-text-muted:#8a909c;--color-text-faint:#9aa0ab;--color-text-label:#4a5160;--color-icon:#a6acb8;--color-primary:#16b357;--color-primary-hover:#14a350;--color-accent:#2563eb;--color-accent-hover:#1d4ed8;--color-accent-soft:#eef3ff;--color-brand-grad-a:#2f6df6;--color-brand-grad-b:#6d4aff;--color-brand-light:#7c93ff;--color-header-grad-a:#222a3d;--color-header-grad-b:#1d2333;--color-nav-bg:#283149;--color-nav-tab-active:#3b466a;--color-nav-text:#9aa3ba;--color-nav-border:#39415a;--color-nav-control:#2a3147;--status-active:#16a34a;--status-active-text:#15803d;--status-active-bg:#dcfce7;--status-burned:#dc2626;--status-burned-text:#b42318;--status-burned-bg:#fee2e2;--status-disabled:#94a3b8;--status-disabled-text:#64748b;--status-disabled-bg:#eef0f3;--cloak-on:#6d4aff;--cloak-on-bg:#efeaff;--cloak-heading:#5733d6;--color-danger:#dc2626;--color-danger-text:#b91c1c;--color-danger-soft:#fee2e2;--color-warning-bg:#fffbe6;--color-warning-border:#f5e08a;--color-warning-text:#8a6d1a;--color-success-bg:#f1fbf4;--color-success-border:#c4ebcf;--color-highlight:#fde047;--role-superadmin:#7c3aed;--role-head:#2563eb;--role-team-lead:#0891b2;--role-buyer:#16a34a;--role-assistant:#64748b;--avatar-1:#2563eb;--avatar-2:#7c3aed;--avatar-3:#0891b2;--avatar-4:#059669;--avatar-5:#d97706;--avatar-6:#db2777;--avatar-7:#dc2626;--avatar-8:#0d9488;--font-sans:"Manrope",system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono",ui-monospace,"SFMono-Regular",Menlo,monospace;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;--fs-9:9.5px;--fs-10:10px;--fs-10-5:10.5px;--fs-11:11px;--fs-11-5:11.5px;--fs-12:12px;--fs-12-5:12.5px;--fs-13:13px;--fs-13-5:13.5px;--fs-14:14px;--fs-15:15px;--fs-16:16px;--fs-19:19px;--fs-30:30px;--lh-tight:1.25;--lh-snug:1.3;--lh-normal:1.5;--lh-relaxed:1.6;--ls-caps:.5px;--ls-heading:-.3px;--ls-tight:-1px;--space-1:2px;--space-2:4px;--space-3:6px;--space-4:8px;--space-5:10px;--space-6:12px;--space-7:14px;--space-8:16px;--space-10:20px;--space-12:24px;--space-14:32px;--space-16:40px;--radius-xs:5px;--radius-sm:6px;--radius-md:7px;--radius-lg:8px;--radius-xl:9px;--radius-2xl:10px;--radius-3xl:11px;--radius-modal:14px;--radius-full:50%;--shadow-focus:0 0 0 3px rgba(37,99,235,.12);--shadow-toast:0 12px 30px rgba(15,20,30,.16);--shadow-modal:0 24px 60px rgba(8,12,22,.4);--overlay-modal:rgba(17,21,31,.5);--transition-fast:.14s ease;--transition-base:.2s ease;--node-draft:#8a909c;--node-draft-bg:#f4f5f8;--node-approved:#2563eb;--node-approved-bg:#eef3ff;--node-progress:#d97706;--node-progress-bg:#fef3c7;--node-done:#16a34a;--node-done-bg:#dcfce7;--node-superseded:#94a3b8;--node-superseded-bg:#eef0f3;--node-orphan:#dc2626;--node-orphan-bg:#fee2e2;--edge:#c9cfd9;--edge-hot:#2563eb;--color-on-dark:#fff;--ring-live:0 0 0 3px rgba(22,163,74,.22);--color-accent-soft-2:#e0eaff;--shadow-node-hover:0 4px 14px rgba(15,20,30,.08);--shadow-seg-active:0 1px 2px rgba(15,20,30,.08);--color-nav-count-bg:rgba(255,255,255,.12);--color-text-disabled:#aab0bb}.factory-ui,.factory-ui *{box-sizing:border-box}.factory-ui{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--fs-12-5);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased}.factory-ui button,.factory-ui input,.factory-ui select,.factory-ui textarea{font-family:inherit;font-size:inherit;color:inherit}.factory-ui button{cursor:pointer;border:none;background:none}.factory-ui :focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (prefers-reduced-motion:reduce){.factory-ui *{animation:none!important;transition:none!important}}.factory-ui .topbar{height:48px;display:flex;align-items:center;gap:var(--space-10);padding:0 var(--space-10);background:linear-gradient(180deg,var(--color-header-grad-a),var(--color-header-grad-b));position:sticky;top:0;z-index:30}.factory-ui .logo{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.factory-ui .logo-box{width:26px;height:26px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-brand-grad-a),var(--color-brand-grad-b));display:grid;place-items:center;color:var(--color-on-dark);font-weight:var(--fw-extrabold);font-size:var(--fs-13)}.factory-ui .logo-txt{color:var(--color-on-dark);font-size:var(--fs-15);font-weight:var(--fw-bold);letter-spacing:var(--ls-heading)}.factory-ui .logo-txt em{color:var(--color-brand-light);font-style:normal}.factory-ui .topbar-spacer{flex:1}.factory-ui .chip-dark{display:inline-flex;align-items:center;gap:var(--space-3);background:var(--color-nav-control);border:1px solid var(--color-nav-border);color:var(--color-nav-text);border-radius:var(--radius-xs);padding:var(--space-2) var(--space-5);font-size:var(--fs-11);font-weight:var(--fw-medium);white-space:nowrap}.factory-ui .chip-dark b{color:var(--color-on-dark);font-weight:var(--fw-semibold)}.factory-ui .dot{width:6px;height:6px;border-radius:var(--radius-full);flex-shrink:0}.factory-ui .dot-live{background:var(--status-active);box-shadow:var(--ring-live)}.factory-ui .avatar{width:26px;height:26px;border-radius:var(--radius-full);background:var(--avatar-2);color:var(--color-on-dark);display:grid;place-items:center;font-size:var(--fs-10);font-weight:var(--fw-bold);flex-shrink:0}.factory-ui .nav{display:flex;align-items:center;gap:var(--space-2);height:38px;padding:0 var(--space-10);background:var(--color-nav-bg);box-shadow:inset 0 -1px 0 var(--color-header-grad-b);position:sticky;top:52px;z-index:29;overflow-x:auto}.factory-ui .nav-tab{color:var(--color-nav-text);font-size:var(--fs-13);font-weight:var(--fw-semibold);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);white-space:nowrap;text-decoration:none;transition:background var(--transition-fast),color var(--transition-fast)}.factory-ui .nav-tab:hover{color:var(--color-on-dark)}.factory-ui .nav-tab[aria-selected=true],.factory-ui .nav-tab[aria-current=page]{background:var(--color-nav-tab-active);color:var(--color-on-dark)}.factory-ui .nav-tab[aria-pressed]{background:none;color:var(--color-nav-text)}.factory-ui .nav-tab[aria-pressed=true]{color:var(--color-on-dark)}.factory-ui .nav-sep{width:1px;height:18px;background:var(--color-nav-border);margin:0 var(--space-3);flex-shrink:0}.factory-ui .shell{display:grid;grid-template-columns:250px minmax(0,1fr);gap:var(--space-8);padding:var(--space-8);align-items:stretch;min-height:calc(100vh - 90px)}.factory-ui main{display:flex;flex-direction:column;min-width:0}.factory-ui main>div{flex:1;min-height:0}@media (max-width:900px){.factory-ui .shell{grid-template-columns:1fr;min-height:0}.factory-ui .factory-sidebar{order:2}}.factory-ui .shell.fixed-h{height:calc(100vh - 90px);min-height:0;overflow:hidden}.factory-ui .shell.no-side{grid-template-columns:minmax(0,1fr)}.factory-ui .shell.fixed-h .factory-sidebar{position:static;top:auto}.factory-ui .shell.fixed-h .factory-sidebar{overflow-y:auto;max-height:100%}@media (max-width:900px){.factory-ui .shell.fixed-h{height:auto;overflow:visible}}.factory-ui .factory-sidebar{align-self:start;position:sticky;top:102px;display:flex;flex-direction:column;gap:var(--space-8)}.factory-ui .card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);overflow:hidden;display:flex;flex-direction:column;min-width:0}.factory-ui .card-head{padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--color-border-soft);display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap}.factory-ui .card-title{font-size:var(--fs-13-5);font-weight:var(--fw-bold);letter-spacing:var(--ls-heading);margin:0}.factory-ui .card-sub{font-size:var(--fs-11);color:var(--color-text-muted)}.factory-ui .card-body{padding:var(--space-6) var(--space-8)}.factory-ui .pending{display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;padding:var(--space-16) var(--space-12);text-align:center;color:var(--color-text-muted)}.factory-ui .pending-what{font-size:var(--fs-14);font-weight:var(--fw-semibold);color:var(--color-text-body)}.factory-ui .pending-epic{font-family:var(--font-mono);font-size:var(--fs-11);color:var(--color-text-faint)}.factory-ui .mock-link{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-5) var(--space-6);border-radius:var(--radius-xl);border:1px dashed var(--color-border-2);background:var(--color-surface-3);color:var(--color-text-secondary);text-decoration:none;font-size:var(--fs-11-5);font-weight:var(--fw-semibold);transition:background var(--transition-fast),color var(--transition-fast)}.factory-ui .mock-link:hover{background:var(--color-surface-2);color:var(--color-accent-hover)}.factory-ui .mock-link span{margin-left:auto;color:var(--color-text-faint);font-weight:var(--fw-regular)}.factory-ui .proj-list{display:flex;flex-direction:column;padding:var(--space-4)}.factory-ui .proj{display:flex;align-items:center;gap:var(--space-5);width:100%;text-align:left;padding:var(--space-5) var(--space-6);border-radius:var(--radius-xl);text-decoration:none;transition:background var(--transition-fast)}.factory-ui .proj:hover{background:var(--color-surface-2)}.factory-ui .proj[aria-current=true]{background:var(--color-accent-soft)}.factory-ui .proj-mark{width:8px;height:22px;border-radius:var(--radius-xs);flex-shrink:0;background:var(--color-border-2)}.factory-ui .proj[aria-current=true] .proj-mark{background:var(--color-accent)}.factory-ui .proj-name{font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-text-body);display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.factory-ui .proj[aria-current=true] .proj-name{color:var(--color-accent-hover)}.factory-ui .btn{font-size:var(--fs-13);font-weight:var(--fw-bold);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-10);transition:filter var(--transition-fast)}.factory-ui .btn:hover{filter:brightness(.94)}.factory-ui .btn-primary{background:var(--color-primary);color:var(--color-on-dark)}.factory-ui .btn-ghost{background:var(--color-surface-2);color:var(--color-text-body);border:1px solid var(--color-border-2)}.factory-ui .toolbar{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap;padding:var(--space-6) var(--space-8);background:var(--color-surface-3);border-bottom:1px solid var(--color-border-soft)}.factory-ui .search{display:flex;align-items:center;gap:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-xl);padding:var(--space-4) var(--space-6);min-width:210px;flex:1;max-width:300px}.factory-ui .search input{border:none;outline:none;background:none;width:100%;font-size:var(--fs-12-5)}.factory-ui .search input::placeholder{color:var(--color-text-disabled)}.factory-ui .seg{display:flex;background:var(--color-segment-bg);border-radius:var(--radius-lg);padding:2px;gap:2px;flex-wrap:wrap}.factory-ui .seg button{font-size:var(--fs-11-5);font-weight:var(--fw-semibold);color:var(--color-text-secondary);padding:var(--space-3) var(--space-6);border-radius:var(--radius-sm);white-space:nowrap}.factory-ui .seg button[aria-pressed=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-seg-active)}.factory-ui .saved{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap}.factory-ui .saved-chip{font-size:var(--fs-11);font-weight:var(--fw-semibold);color:var(--color-text-secondary);border:1px dashed var(--color-border-2);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-6)}.factory-ui .saved-chip:hover{border-style:solid;color:var(--color-accent);border-color:var(--color-accent)}.factory-ui .badge{display:inline-flex;align-items:center;gap:var(--space-3);padding:2px var(--space-5);border-radius:var(--radius-sm);font-size:var(--fs-10-5);font-weight:var(--fw-bold);white-space:nowrap;line-height:1.6}.factory-ui .b-draft{background:var(--node-draft-bg);color:var(--node-draft)}.factory-ui .b-approved{background:var(--node-approved-bg);color:var(--node-approved)}.factory-ui .b-progress{background:var(--node-progress-bg);color:var(--node-progress)}.factory-ui .b-done{background:var(--node-done-bg);color:var(--node-done)}.factory-ui .b-superseded{background:var(--node-superseded-bg);color:var(--node-superseded)}.factory-ui .b-orphan{background:var(--node-orphan-bg);color:var(--node-orphan)}.factory-ui .b-quota{background:var(--cloak-on-bg);color:var(--cloak-on)}.factory-ui .b-blocked{background:var(--color-danger-soft);color:var(--color-danger-text)}.factory-ui .tbl-scroll{overflow:auto;flex:1;min-height:0}.factory-ui table{border-collapse:collapse;width:100%;min-width:870px}.factory-ui thead th:last-child,.factory-ui tbody td:last-child{white-space:normal;min-width:190px;line-height:var(--lh-snug)}.factory-ui thead th{background:var(--color-thead);text-align:left;font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-body);padding:var(--space-5) var(--space-6);white-space:nowrap;border-bottom:1px solid var(--color-border)}.factory-ui tbody td{padding:var(--space-6);font-size:var(--fs-12-5);color:var(--color-text-body);border-bottom:1px solid var(--color-row-divider);vertical-align:middle;white-space:nowrap}.factory-ui .col-n{width:44px;text-align:center}.factory-ui .col-r{width:62px;text-align:center}.factory-ui .ok{color:var(--status-active-text);font-weight:var(--fw-bold)}.factory-ui tbody tr:nth-child(2n){background:var(--color-zebra)}.factory-ui tbody tr:hover{background:var(--color-accent-soft)}.factory-ui .tbl-foot{padding:var(--space-6) var(--space-8);background:var(--color-surface-3);font-size:var(--fs-11);color:var(--color-text-muted);display:flex;gap:var(--space-8);flex-wrap:wrap}.factory-ui .mono{font-family:var(--font-mono);font-size:var(--fs-12);font-weight:var(--fw-semibold);color:var(--color-text)}.factory-ui .num{font-variant-numeric:tabular-nums;color:var(--color-text-secondary)}.factory-ui .muted{color:var(--color-text-disabled)}.factory-ui .who{display:flex;align-items:center;gap:var(--space-4)}.factory-ui .who .avatar{width:20px;height:20px;font-size:var(--fs-9)}.factory-ui .label-caps{font-size:var(--fs-10);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--color-text-faint)}.factory-ui .kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--space-6);padding:var(--space-8);flex-shrink:0}.factory-ui .kpi{background:var(--color-surface-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-2xl);padding:var(--space-7)}.factory-ui .kpi-n{font-size:var(--fs-30);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-tight);font-variant-numeric:tabular-nums;line-height:1}.factory-ui .kpi-l{font-size:var(--fs-10);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--color-text-faint);font-weight:var(--fw-bold);margin-top:var(--space-4)}.factory-ui .stage-row{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--color-row-divider)}.factory-ui .stage-id{font-family:var(--font-mono);font-weight:var(--fw-bold);font-size:var(--fs-12);color:var(--color-text);width:34px;flex-shrink:0}.factory-ui .stage-t{font-size:var(--fs-12-5);color:var(--color-text-body);flex:1;min-width:120px}.factory-ui .stage-bar{width:120px;flex-shrink:0}.factory-ui .stage-n{color:var(--color-text-faint);font-size:var(--fs-10-5)}.factory-ui .bar{height:6px;border-radius:99px;background:var(--color-segment-bg);overflow:hidden;display:flex}.factory-ui .bar span{display:block;height:100%}.factory-ui .dec{display:flex;align-items:baseline;gap:var(--space-6);padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--color-row-divider)}.factory-ui .dec-id{font-size:var(--fs-11-5);color:var(--color-accent);font-weight:var(--fw-bold);width:44px;flex-shrink:0}.factory-ui .dec-t{font-size:var(--fs-12);color:var(--color-text-body);flex:1;min-width:0}.factory-ui .dec-d{font-size:var(--fs-10);color:var(--color-text-faint);white-space:nowrap}.factory-ui .mini{padding:var(--space-6) var(--space-8);display:flex;flex-direction:column;gap:var(--space-6)}.factory-ui .mini-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-5)}.factory-ui .mini-k{font-size:var(--fs-11);color:var(--color-text-muted)}.factory-ui .mini-v{font-size:var(--fs-13);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums}.factory-ui .proj-meta{font-size:var(--fs-10);color:var(--color-text-faint);display:block;margin-top:1px}.factory-ui .proj-n{margin-left:auto;font-size:var(--fs-10-5);font-weight:var(--fw-bold);color:var(--color-text-faint);font-variant-numeric:tabular-nums}.factory-ui .feed{padding:var(--space-4) 0;flex:1;min-height:0;overflow-y:auto}.factory-ui .ev{display:flex;gap:var(--space-5);padding:var(--space-5) var(--space-8);align-items:flex-start}.factory-ui .ev+.ev{border-top:1px solid var(--color-row-divider)}.factory-ui .ev-t{font-family:var(--font-mono);font-size:var(--fs-10);color:var(--color-text-faint);padding-top:1px;flex-shrink:0}.factory-ui .ev-b{font-size:var(--fs-11-5);color:var(--color-text-body);line-height:var(--lh-snug)}.factory-ui .ev-b b{font-family:var(--font-mono);font-weight:var(--fw-bold);color:var(--color-text)}.factory-ui .ev.fresh{animation:factory-ui-evIn .22s ease}@keyframes factory-ui-evIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.factory-ui .map-wrap{position:relative;flex:1;min-height:0}.factory-ui .map-wrap:has(>.map){overflow:auto;padding:var(--space-10) var(--space-12) var(--space-12)}.factory-ui .map{position:relative;display:grid;grid-template-columns:minmax(215px,.8fr) minmax(230px,1fr) minmax(300px,1.35fr);gap:var(--space-16);min-width:740px}.factory-ui .map-col{display:flex;flex-direction:column;gap:var(--space-5);position:relative;z-index:1}.factory-ui .map-col-head{font-size:var(--fs-10);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--color-text-faint);padding-bottom:var(--space-4);border-bottom:1px dashed var(--color-border-2);margin-bottom:var(--space-2)}.factory-ui .node{position:relative;text-align:left;width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--node-draft);border-radius:var(--radius-2xl);padding:var(--space-5) var(--space-6);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.factory-ui .node:hover{box-shadow:var(--shadow-node-hover);transform:translateY(-1px)}.factory-ui .node[aria-current=true]{border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.factory-ui .node.s-approved{border-left-color:var(--node-approved)}.factory-ui .node.s-progress{border-left-color:var(--node-progress)}.factory-ui .node.s-done{border-left-color:var(--node-done)}.factory-ui .node.s-superseded{border-left-color:var(--node-superseded);opacity:.72}.factory-ui .node.s-orphan{border-left-color:var(--node-orphan);border-style:dashed}.factory-ui .node-top{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-2)}.factory-ui .node-name{font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.factory-ui .node-meta{font-size:var(--fs-10);color:var(--color-text-faint);font-family:var(--font-mono)}.factory-ui .node-actions{display:flex;gap:var(--space-3);margin-top:var(--space-4)}.factory-ui .node-edit{font-size:var(--fs-10-5);font-weight:var(--fw-bold);color:var(--color-accent);background:var(--color-accent-soft);padding:var(--space-2) var(--space-5);border-radius:var(--radius-sm)}.factory-ui .node-edit:hover{background:var(--color-accent-soft-2)}.factory-ui .node-open{font-size:var(--fs-10-5);font-weight:var(--fw-semibold);color:var(--color-text-secondary);background:var(--color-surface-2);padding:var(--space-2) var(--space-5);border-radius:var(--radius-sm)}.factory-ui .edges{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:visible}.factory-ui .edges path{fill:none;stroke:var(--edge);stroke-width:1.5}.factory-ui .edges path.hot{stroke:var(--edge-hot);stroke-width:2}.factory-ui .edges path.dashed{stroke-dasharray:4 4}.factory-ui .split{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:var(--space-8);align-items:stretch}.factory-ui .stack{display:flex;flex-direction:column;gap:var(--space-8);min-width:0}.factory-ui .card-grow{flex:1;min-height:0}.factory-ui .g-map{flex:1.35}.factory-ui .g-pipe{flex:.85}.factory-ui .g-road{flex:1.4}.factory-ui .g-dec{flex:.6}.factory-ui .panel-body{padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-7);flex:1;overflow-y:auto}.factory-ui .fm{background:var(--color-surface-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-6)}.factory-ui .fm-row{display:flex;gap:var(--space-5);font-size:var(--fs-11);padding:var(--space-2) 0}.factory-ui .fm-k{color:var(--color-text-faint);min-width:74px;font-family:var(--font-mono)}.factory-ui .fm-v{color:var(--color-text-body);font-weight:var(--fw-medium);word-break:break-word}.factory-ui .excerpt{font-size:var(--fs-12);color:var(--color-text-secondary);line-height:var(--lh-relaxed);max-width:62ch}.factory-ui .excerpt strong{color:var(--color-text-body)}.factory-ui .pane-sep{height:1px;background:var(--color-border-soft)}.factory-ui .hist{display:flex;gap:var(--space-5);align-items:baseline;padding:var(--space-4) 0;font-size:var(--fs-11)}.factory-ui .hist+.hist{border-top:1px solid var(--color-row-divider)}.factory-ui .hist-h{color:var(--color-accent);font-size:var(--fs-10-5);font-weight:var(--fw-bold)}.factory-ui .hist-w{color:var(--color-text-body);font-weight:var(--fw-semibold)}.factory-ui .hist-t{color:var(--color-text-faint);margin-left:auto;white-space:nowrap;font-size:var(--fs-10)}@media (max-width:1400px){.factory-ui .split{grid-template-columns:1fr}.factory-ui .g-map,.factory-ui .g-pipe,.factory-ui .g-road,.factory-ui .g-dec{flex:none}.factory-ui .map-wrap{overflow-y:visible}.factory-ui .feed{max-height:340px}.factory-ui .panel-body{overflow:visible}}.factory-ui .ed-head{display:flex;align-items:center;gap:var(--space-6);flex-wrap:wrap;padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--color-border-soft)}.factory-ui .crumb{font-family:var(--font-mono);font-size:var(--fs-11-5);color:var(--color-text-secondary)}.factory-ui .crumb b{color:var(--color-text);font-weight:var(--fw-bold)}.factory-ui .ed-body{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:0;align-items:stretch;flex:1;min-height:0}@media (max-width:1080px){.factory-ui .ed-body{grid-template-columns:1fr}}.factory-ui .ed-area{padding:var(--space-8);display:flex;min-height:0}.factory-ui .ed{flex:1;min-height:0;overflow:auto;border:1px solid var(--color-border-input);border-radius:var(--radius-lg);background:var(--color-surface);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.factory-ui .ed:focus-within{border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.factory-ui textarea.ed{width:100%;height:100%;min-height:420px;padding:var(--space-8);font-family:var(--font-mono);font-size:var(--fs-12-5);line-height:var(--lh-relaxed);color:var(--color-text-body);resize:vertical;outline:none}.factory-ui .ed-side{border-left:1px solid var(--color-border-soft);background:var(--color-surface-3);padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-7)}.factory-ui .guard{background:var(--color-warning-bg);border:1px solid var(--color-warning-border);color:var(--color-warning-text);border-radius:var(--radius-lg);padding:var(--space-6);font-size:var(--fs-11);line-height:var(--lh-snug)}.factory-ui .guard b{font-weight:var(--fw-bold)}.factory-ui .ghost-note{background:var(--color-surface-2);border:1px dashed var(--color-border-2);border-radius:var(--radius-lg);padding:var(--space-6);font-size:var(--fs-11);color:var(--color-text-muted);line-height:var(--lh-snug)}.factory-ui .ghost-note b{color:var(--color-text-secondary)}.factory-ui .toast{position:fixed;right:var(--space-10);bottom:var(--space-10);z-index:200;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-toast);padding:var(--space-6) var(--space-8);display:flex;gap:var(--space-5);align-items:center;font-size:var(--fs-12-5);font-weight:var(--fw-semibold);animation:factory-ui-toastIn .22s ease;max-width:340px}@keyframes factory-ui-toastIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:none}}.factory-ui .toast .glyph{width:24px;height:24px;border-radius:var(--radius-lg);display:grid;place-items:center;background:var(--status-active-bg);color:var(--status-active-text);font-weight:var(--fw-bold);flex-shrink:0}.factory-ui .legend{display:flex;gap:var(--space-8);flex-wrap:wrap;padding:var(--space-6) var(--space-8);border-top:1px solid var(--color-border-soft);background:var(--color-surface-3);font-size:var(--fs-11);color:var(--color-text-muted)}.factory-ui .legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:var(--space-3);vertical-align:-1px}.factory-ui .hidden{display:none!important}.factory-ui .offline{min-height:100vh;display:grid;place-items:center;padding:var(--space-12);background:var(--color-bg)}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}.factory-ui .logs-notices{display:flex;flex-direction:column;gap:var(--space-5);padding:var(--space-6) var(--space-8)}.factory-ui .logs-notice{display:flex;gap:var(--space-5);align-items:baseline}.factory-ui .logs-notice-code{font-family:var(--font-mono);font-size:var(--fs-10-5);font-weight:var(--fw-bold);letter-spacing:var(--ls-caps);flex-shrink:0}.factory-ui .logs-notice-uk{line-height:var(--lh-snug);min-width:0}.factory-ui .logs-fields{display:flex;gap:var(--space-5);flex-wrap:wrap;flex:1;min-width:0}.factory-ui .logs-field{display:flex;flex-direction:column;gap:var(--space-2);min-width:116px}.factory-ui .logs-field-label{font-size:var(--fs-10);letter-spacing:var(--ls-caps);text-transform:uppercase;color:var(--color-text-faint);font-weight:var(--fw-bold);display:flex;gap:var(--space-3);align-items:baseline}.factory-ui .logs-field-code{font-family:var(--font-mono);color:var(--color-text-disabled);text-transform:none;letter-spacing:normal;font-weight:var(--fw-medium)}.factory-ui .logs-field-input{font-family:inherit;font-size:var(--fs-11-5);color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-input);border-radius:var(--radius-lg);padding:var(--space-3) var(--space-5);width:100%;min-width:0}.factory-ui .logs-draft-note{font-size:var(--fs-10);color:var(--color-text-faint);align-self:center;max-width:260px;line-height:var(--lh-snug)}.factory-ui .logs-kpi-code{font-family:var(--font-mono);font-size:var(--fs-9);color:var(--color-text-disabled);margin-top:var(--space-2);text-transform:none;letter-spacing:normal;word-break:break-all}.factory-ui .logs-ev{font-family:inherit;font-size:inherit;color:inherit;width:100%;text-align:left;display:flex;gap:var(--space-5);align-items:flex-start;padding:var(--space-5) var(--space-8)}.factory-ui .logs-ev[aria-current=true]{background:var(--color-accent-soft)}.factory-ui .logs-ev-main{flex:1;min-width:0}.factory-ui .logs-ev-meta{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:center;margin-top:var(--space-3);font-family:var(--font-mono);font-size:var(--fs-9);color:var(--color-text-faint)}.factory-ui .logs-ev-nouk{color:var(--color-text-disabled);font-style:italic}.factory-ui .logs-raw{font-family:var(--font-mono);font-size:var(--fs-10);line-height:var(--lh-snug);color:var(--color-text-secondary);background:var(--color-surface-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-5);margin:0;white-space:pre-wrap;word-break:break-word;max-height:220px;overflow:auto}.factory-ui .logs-refs{display:flex;flex-direction:column;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--fs-10);color:var(--color-text-secondary);word-break:break-all}.factory-ui .logs-kaizen{display:flex;flex-direction:column;gap:var(--space-7);padding:var(--space-6) var(--space-8)}.factory-ui .logs-kaizen-item{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.factory-ui .logs-kaizen-head{display:flex;gap:var(--space-5);align-items:baseline;flex-wrap:wrap}.factory-ui .logs-inline{display:flex;gap:var(--space-4);align-items:center;flex-wrap:wrap;min-width:0}.factory-ui .logs-code{font-family:var(--font-mono);font-size:var(--fs-10);color:var(--color-text-faint);word-break:break-all}.app-main{flex:1;min-width:0;display:flex;flex-direction:column}.sidebar .brand{display:flex;align-items:center;gap:var(--space-5)}.brand-logo{width:30px;height:30px;flex-shrink:0;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--color-brand-grad-a),var(--color-brand-grad-b));color:var(--color-surface);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-13);font-weight:var(--fw-extrabold)}.brand-accent{color:var(--color-brand-light)}.nav-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.7}.sidebar nav a.active .nav-icon{opacity:1}.sidebar nav .nav-group-toggle{display:flex;align-items:center;gap:var(--space-4);height:32px;padding:0 var(--space-7);width:100%;border:none;background:none;cursor:pointer;text-align:left;border-radius:var(--radius-md);color:var(--color-nav-text);font-size:var(--fs-13);font-weight:var(--fw-bold);font-family:inherit;transition:color var(--transition-fast),background var(--transition-fast)}.sidebar nav .nav-group-toggle:hover{color:var(--color-surface)}.sidebar nav .nav-group-caret{margin-left:auto;font-size:10px;opacity:.7}.sidebar nav .nav-group-children{display:flex;flex-direction:column;gap:var(--space-2)}.sidebar nav .nav-group-children a{padding-left:calc(var(--space-7) + 24px)}.topbar{height:52px;flex-shrink:0;display:flex;align-items:center;gap:var(--space-8);padding:0 var(--space-9);background:linear-gradient(180deg,var(--color-header-grad-a),var(--color-header-grad-b));color:var(--color-surface);position:sticky;top:0;z-index:var(--z-nav)}.topbar-spacer{flex:1}.topbar-divider{width:1px;height:24px;background:var(--color-nav-border);flex-shrink:0}.balance-pill{display:flex;align-items:center;gap:7px;background:color-mix(in srgb,var(--color-primary) 16%,transparent);border:1px solid color-mix(in srgb,var(--status-active) 35%,transparent);padding:5px 11px;border-radius:var(--radius-lg);white-space:nowrap}.balance-label{font-size:var(--fs-10-5);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.4px;color:color-mix(in srgb,var(--color-primary) 50%,var(--color-surface))}.balance-value{font-family:var(--font-mono);font-size:var(--fs-13);font-weight:var(--fw-bold);color:color-mix(in srgb,var(--color-primary) 32%,var(--color-surface))}.user-menu{display:flex;align-items:center;gap:9px;min-width:0}.user-menu-meta{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);line-height:var(--lh-tight);min-width:0}.user-menu-email{font-family:var(--font-mono);font-size:var(--fs-11-5);font-weight:var(--fw-semibold);color:color-mix(in srgb,var(--color-surface) 88%,var(--color-nav-text));max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-menu .badge-role{font-size:var(--fs-9);padding:1px 7px}.topbar-btn{height:30px;padding:0 var(--space-6);background:var(--color-nav-control);border:1px solid var(--color-nav-border);color:color-mix(in srgb,var(--color-surface) 78%,var(--color-nav-text));border-radius:var(--radius-md);font-family:var(--font-sans);font-size:var(--fs-11-5);font-weight:var(--fw-bold);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.topbar-btn:hover{color:var(--color-surface);background:var(--color-nav-tab-active)}.topbar-iconbtn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;border-radius:var(--radius-lg);color:var(--color-nav-text);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.topbar-iconbtn:hover{color:var(--color-surface);background:var(--color-nav-control)}@media (max-width: 880px){.topbar{height:auto;min-height:52px;flex-wrap:wrap;gap:var(--space-5);padding:var(--space-4) var(--space-6);position:static}.user-menu-email{max-width:140px}}.login-brand{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-7)}.login-logo{width:34px;height:34px;border-radius:var(--radius-xl);background:linear-gradient(135deg,var(--color-brand-grad-a),var(--color-brand-grad-b));color:var(--color-surface);font-weight:var(--fw-extrabold);font-size:var(--fs-15);display:flex;align-items:center;justify-content:center;flex-shrink:0}.login-wordmark{font-weight:var(--fw-extrabold);font-size:var(--fs-17);color:var(--color-text-strong);letter-spacing:var(--ls-heading)}.login-wordmark span{color:var(--color-brand-grad-a)}.login-card .login-head h2{margin:0 0 var(--space-2)}.login-sub{margin:0;font-size:var(--fs-13);color:var(--color-text-muted)}.login-head{margin-bottom:var(--space-5)}.login-error{display:flex;align-items:center;gap:var(--space-4)}.login-error-dot{width:6px;height:6px;border-radius:var(--radius-full);background:var(--color-danger-text);flex-shrink:0}.login-card input{height:40px;font-family:var(--font-mono);font-size:var(--fs-13)}.login-card label{margin-bottom:var(--space-2)}.btn.login-btn{width:100%;height:42px;border-radius:var(--radius-2xl);font-size:var(--fs-14);margin-top:var(--space-5)}.daterange{display:inline-flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.daterange-select{height:32px;padding:0 var(--space-6);border:1px solid var(--color-border-input);border-radius:var(--radius-lg, 8px);background:var(--color-surface);color:var(--color-text);font-size:var(--fs-12-5);cursor:pointer}.daterange-custom{display:inline-flex;align-items:center;gap:var(--space-3)}.daterange-date{height:32px;padding:0 var(--space-5);border:1px solid var(--color-border-input);border-radius:var(--radius-lg, 8px);background:var(--color-surface);color:var(--color-text);font-size:var(--fs-12)}.daterange-dash{color:var(--color-text-faint);font-size:var(--fs-12)}.daterange-hint{font-size:var(--fs-11);color:var(--color-danger-text)}.dash{display:flex;flex-direction:column;gap:var(--space-7)}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-7)}.kpi-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);padding:var(--space-8) var(--space-9)}.kpi-card-target{background:linear-gradient(180deg,var(--color-success-bg),var(--color-surface));border-color:var(--click-target-border)}.kpi-label{font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:var(--ls-caps)}.kpi-label-target{color:var(--click-target-strong)}.kpi-num{font-size:var(--fs-30);font-weight:var(--fw-extrabold);color:var(--color-text);margin-top:var(--space-3);letter-spacing:var(--ls-tight);line-height:var(--lh-tight)}.kpi-num-target{color:var(--click-target)}.kpi-num-bot{color:var(--click-bot-muted)}.kpi-sub{font-size:var(--fs-11-5);color:var(--color-text-muted);margin-top:var(--space-2)}.kpi-sub-target{color:color-mix(in srgb,var(--click-target) 72%,var(--color-text-faint));font-weight:var(--fw-semibold)}.kpi-sub-bot{color:var(--color-text-disabled)}.dash-panel{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);overflow:hidden}.dash-panel-head{padding:var(--space-6) var(--space-8);border-bottom:1px solid var(--color-border-soft);font-size:var(--fs-13);font-weight:var(--fw-extrabold);color:var(--color-text)}.dash-panel-head .dash-head-meta{font-weight:var(--fw-semibold);color:var(--color-text-disabled);font-size:var(--fs-11)}.dash-chart-card{padding:var(--space-8) var(--space-9)}.dash-chart-head{display:flex;align-items:center;gap:var(--space-9);margin-bottom:var(--space-5)}.dash-chart-title{font-size:var(--fs-13-5);font-weight:var(--fw-extrabold);color:var(--color-text)}.dash-chart-head .spacer{flex:1}.chart-legend{display:flex;align-items:center;gap:var(--space-3);font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-secondary)}.chart-legend-target{color:var(--click-target)}.chart-swatch{width:14px;height:3px;border-radius:2px;display:inline-block}.chart-swatch-total{background:var(--click-line-total)}.chart-swatch-target{background:var(--click-target-strong)}.dash-chart .recharts-cartesian-grid line{stroke:var(--color-bg)}.dash-chart .recharts-cartesian-axis-tick text{fill:var(--color-icon);font-family:var(--font-mono);font-size:var(--fs-9)}.dash-chart .line-total .recharts-line-curve{stroke:var(--click-line-total)}.dash-chart .line-target .recharts-line-curve{stroke:var(--click-target-strong)}.dash-chart .area-target .recharts-area-area{fill:var(--click-target-strong);fill-opacity:.08}.dash-chart .area-target .recharts-area-curve{stroke:none}.dash-chart .recharts-active-dot circle{fill:var(--click-target-strong);stroke:var(--color-surface)}.dash-bottom{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:var(--space-7);align-items:start}.dash-list{width:100%;border-collapse:collapse}.dash-list td{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-row-divider-2);vertical-align:middle}.dash-list tr:nth-child(2n){background:var(--color-zebra)}.dash-list tr:last-child td{border-bottom:none}.dash-list td:first-child{padding-left:var(--space-8)}.dash-list td:last-child{padding-right:var(--space-8);text-align:right}.dash-rank{width:22px;font-size:var(--fs-11);color:var(--color-text-disabled)}.dash-code{font-size:var(--fs-12);font-weight:var(--fw-semibold);color:var(--color-text)}.dash-clicks{font-size:var(--fs-12-5);font-weight:var(--fw-bold);color:var(--click-total)}.dash-flag{width:26px;font-size:var(--fs-15)}.dash-iso{font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--click-total)}.dash-cname{font-size:var(--fs-11);color:var(--color-text-faint)}.dash-bars{padding:var(--space-4) var(--space-8) var(--space-6)}.dash-bar-row{margin-top:var(--space-5)}.dash-bar-meta{display:flex;justify-content:space-between;margin-bottom:var(--space-2)}.dash-bar-domain{font-size:var(--fs-11-5);font-weight:var(--fw-semibold);color:var(--click-total)}.dash-bar-num{font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-secondary)}.dash-bar-track{height:7px;background:var(--color-segment-bg);border-radius:4px;overflow:hidden}.dash-bar-fill{height:100%;border-radius:4px;background:linear-gradient(90deg,var(--color-brand-grad-a),var(--color-brand-grad-b))}.dash-empty{padding:var(--space-9) var(--space-8);font-size:var(--fs-12);color:var(--color-text-muted);text-align:center}@media (max-width: 880px){.kpi-grid,.dash-bottom{grid-template-columns:1fr}}.kpi-card-leaked{background:linear-gradient(180deg,var(--color-danger-soft),var(--color-surface));border-color:var(--color-danger-soft)}.kpi-label-leaked,.kpi-num-leaked,.kpi-sub-leaked{color:var(--color-danger-text)}.dash-split{display:flex;align-items:baseline;justify-content:flex-end;gap:var(--space-5);white-space:nowrap}.dash-bar-split{display:inline-flex;align-items:baseline;gap:var(--space-4)}.dash-clicks-target{color:var(--click-target);font-weight:var(--fw-extrabold, 800)}.dash-clicks-bot{color:var(--click-bot);font-size:var(--fs-11-5)}.dash-clicks-leaked{color:var(--color-danger-text);font-size:var(--fs-11-5);font-weight:var(--fw-bold)}.chip .chip-flag{font-size:var(--fs-13);line-height:1}.geo-dropdown .geo-opt{display:flex;align-items:center;gap:var(--space-4)}.geo-opt .geo-opt-flag{font-size:var(--fs-13-5);line-height:1;width:20px;text-align:center;flex:none}.geo-opt .geo-opt-code{font-family:var(--font-mono);font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--color-text-body);flex:none}.geo-opt .geo-opt-name{font-size:var(--fs-12);color:var(--color-text-muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.geo-opt:hover .geo-opt-code{color:var(--color-accent)}.links-table-wrap{overflow-x:auto}.links-table-wrap .table{min-width:920px}.th-sub{font-size:var(--fs-10);font-weight:var(--fw-semibold);color:var(--color-text-disabled)}.th-sub .th-sub-target{color:var(--click-target-strong)}.cell-center{text-align:center!important}.cell-right{text-align:right!important}.th-click{min-width:64px}.th-click-target{color:var(--click-target-strong)}.th-click-bot{color:var(--click-bot)}.cell-click .click-box{display:inline-block;min-width:52px;padding:4px var(--space-3)}.links-search{max-width:300px;flex:1}.links-user-filter{max-width:230px}.links-sort{max-width:150px}.leaked-badge{display:inline-block;margin-left:var(--space-4);padding:1px var(--space-3);border-radius:var(--radius-md, 6px);background:var(--color-danger-soft);color:var(--color-danger-text);font-family:var(--font-mono);font-size:var(--fs-10-5);font-weight:var(--fw-bold);white-space:nowrap;vertical-align:middle}.shorturl-cell{display:flex;align-items:center;gap:var(--space-4)}.shorturl-text{min-width:0}.shorturl-code{font-family:var(--font-mono);font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-text);white-space:nowrap}.shorturl-domain{font-family:var(--font-mono);font-size:var(--fs-10-5);color:var(--color-text-faint)}.iconbtn-copied,.iconbtn-copied:hover{color:var(--status-active)}.target-cell{max-width:260px}.target-url{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--color-text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skeleton-spacer{flex:1}.links-pager{display:flex;align-items:center;gap:var(--space-3)}.modal:has(.link-form){width:620px}.form-section-label{margin-top:var(--space-3)}.form-grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.link-short-line{font-family:var(--font-mono);font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-text-secondary);background:var(--color-surface-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-6)}.status-row{display:flex;align-items:center;gap:var(--space-5);font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--color-text-label)}.segment-item.seg-on.active{color:var(--status-active-text)}.segment-item.seg-off.active{color:var(--status-disabled-text)}.toggle-row{display:flex;flex-direction:row;align-items:flex-start;gap:var(--space-5);cursor:pointer}.toggle-input{position:absolute;opacity:0;width:0;height:0}.toggle-track{width:36px;height:20px;flex-shrink:0;border-radius:var(--radius-pill);background:var(--color-border-2);position:relative;transition:background var(--transition-fast);margin-top:1px}.toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:var(--radius-full);background:var(--color-surface);transition:left var(--transition-fast)}.toggle-input:checked+.toggle-track{background:var(--cloak-on)}.toggle-input:checked+.toggle-track .toggle-knob{left:18px}.toggle-input:focus-visible+.toggle-track{box-shadow:var(--shadow-focus)}.toggle-text{display:flex;flex-direction:column;gap:1px;font-size:var(--fs-12-5);font-weight:var(--fw-bold);color:var(--color-text-body)}.toggle-text-cloak{color:var(--cloak-heading);font-weight:var(--fw-extrabold)}.toggle-sub{font-size:var(--fs-11);font-weight:var(--fw-medium);color:var(--color-text-faint)}.cloak-device{display:flex;align-items:center;gap:var(--space-5);font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--color-text-label)}.cloak-device .segment-item.active{background:var(--color-accent);color:var(--color-surface)}.cloak-info{background:var(--color-surface);border:1px solid var(--cloak-panel-border);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-6);font-size:var(--fs-11);font-weight:var(--fw-medium);color:color-mix(in srgb,var(--cloak-heading) 55%,var(--color-text-muted));line-height:var(--lh-relaxed)}.cloak-info b{color:var(--color-text-secondary)}.og-grid{display:grid;grid-template-columns:1fr 200px;gap:var(--space-7);align-items:start}.og-fields{display:flex;flex-direction:column;gap:var(--space-6);min-width:0}.file-drop{position:relative;display:flex;align-items:center;gap:var(--space-4);height:38px;border:1px dashed var(--scrollbar-thumb);border-radius:var(--radius-xl);padding:0 var(--space-6);color:var(--color-text-faint);font-size:var(--fs-12);font-weight:var(--fw-medium);cursor:pointer}.file-drop input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.og-uploaded{display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--fs-11);color:var(--status-active-text)}.fb-preview-label{font-size:var(--fs-11);font-weight:var(--fw-bold);color:var(--color-text-faint);margin-bottom:5px}.fb-preview{display:flex;align-items:stretch;border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden}.fb-preview-img{display:block;width:112px;aspect-ratio:1 / 1;flex:none;object-fit:cover}.fb-preview-placeholder{width:112px;aspect-ratio:1 / 1;flex:none;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,var(--color-bg),var(--color-bg) 8px,var(--color-border-soft) 8px,var(--color-border-soft) 16px)}.fb-preview-placeholder span{font-family:var(--font-mono);font-size:var(--fs-10);color:var(--color-icon)}.fb-preview-body{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:var(--space-4) var(--space-5);background:var(--color-surface-2)}.fb-preview-domain{font-family:var(--font-mono);font-size:var(--fs-9);color:var(--color-text-faint);text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fb-preview-title{font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text);line-height:var(--lh-tight);margin-top:2px;word-break:break-word}.fb-preview-desc{font-size:var(--fs-10);color:var(--color-text-muted);line-height:var(--lh-snug);margin-top:2px;word-break:break-word}.tag-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--color-border)}.tag-filter-label{font-size:var(--fs-11);color:var(--color-text-muted);font-weight:var(--fw-medium)}.tag-filter-clear{font-size:var(--fs-10-5);color:var(--color-text-muted);background:none;border:none;cursor:pointer;text-decoration:underline}.tag-filter-clear:hover{color:var(--color-accent)}.tag-pill{display:inline-flex;align-items:center;gap:4px;padding:3px var(--space-4);font-size:var(--fs-11);font-weight:var(--fw-medium);color:var(--color-text-body);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s}.tag-pill:hover{border-color:var(--color-accent)}.tag-pill.active{color:#fff;background:var(--color-accent);border-color:var(--color-accent)}.tag-pill-inherited{border-style:dashed}.tag-pill-sm{padding:2px var(--space-3);font-size:var(--fs-10)}.tags-cell-chips{display:flex;flex-wrap:wrap;gap:4px;max-width:220px}.tag-picker{position:relative}.tag-control{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg)}.tag-input{flex:1;min-width:120px;border:none;outline:none;background:none;font-size:var(--fs-12);padding:2px 0}.tag-chip{display:inline-flex;align-items:center;gap:4px;padding:2px var(--space-3);font-size:var(--fs-11);font-weight:var(--fw-medium);color:var(--color-text-body);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-pill)}.tag-chip-inherited{border-style:dashed}.tag-chip button{border:none;background:none;cursor:pointer;color:var(--color-text-muted);font-size:var(--fs-12-5);line-height:1}.tag-chip button:hover{color:var(--color-accent)}.tag-dropdown{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 4px);display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 8px 24px #0000001f;overflow:hidden;max-height:240px;overflow-y:auto}.tag-opt{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border:none;background:none;cursor:pointer;text-align:left;font-size:var(--fs-12);color:var(--color-text-body)}.tag-opt:hover{background:var(--color-surface-2)}.tag-opt-meta{font-size:var(--fs-10);color:var(--color-text-faint)}.tag-opt-add{color:var(--color-accent);font-weight:var(--fw-semibold)}.tag-opt-row{display:flex;align-items:center}.tag-opt-row:hover{background:var(--color-surface-2)}.tag-opt-row .tag-opt{flex:1}.tag-opt-row:hover .tag-opt{background:none}.tag-opt-actions{display:flex;align-items:center;gap:var(--space-2);padding-right:var(--space-4)}.tag-opt-act{border:none;background:none;cursor:pointer;line-height:1;padding:var(--space-2);border-radius:var(--radius-sm);font-size:var(--fs-12);opacity:.65}.tag-opt-act:hover{opacity:1;background:var(--color-surface)}.tag-opt-editing{gap:var(--space-3)}.tag-rename-input{flex:1;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--fs-12);background:var(--color-surface);color:var(--color-text-body)}@media (max-width: 620px){.og-grid,.form-grid2{grid-template-columns:1fr}}@media (max-width: 700px){.links-table-wrap{overflow-x:visible}.links-table-wrap .table{min-width:0}.links-table-wrap thead{display:none}.links-table-wrap tbody,.links-table-wrap tr{display:block}.links-table-wrap tr{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-6);margin-bottom:var(--space-5);background:var(--color-surface)}.links-table-wrap td{display:block;border:none!important;padding:var(--space-2) 0;text-align:left!important}.links-table-wrap td.cell-center{text-align:left!important}.links-table-wrap td:nth-child(4),.links-table-wrap td:nth-child(5),.links-table-wrap td:nth-child(6),.links-table-wrap td:nth-child(7),.links-table-wrap td:nth-child(8){display:none}}.domains-table-wrap{overflow-x:auto}.domains-table-wrap .table{min-width:560px}.domains-table-wrap .cell-center{text-align:center!important}.domains-table-wrap .cell-right{text-align:right!important}@media (max-width: 700px){.domains-table-wrap{overflow-x:visible}.domains-table-wrap .table{min-width:0}.domains-table-wrap thead{display:none}.domains-table-wrap tbody,.domains-table-wrap tr{display:block}.domains-table-wrap tr{border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-6);margin-bottom:var(--space-5);background:var(--color-surface)}.domains-table-wrap td{display:block;border:none!important;padding:var(--space-2) 0;text-align:left!important}.domains-table-wrap .cell-center,.domains-table-wrap .cell-right{text-align:left!important}}.domains-th-sub{font-size:var(--fs-10);font-weight:var(--fw-semibold);color:var(--color-text-disabled)}.domain-name{font-family:var(--font-mono);font-size:var(--fs-13);font-weight:var(--fw-semibold);color:var(--color-text)}.row-burned .domain-name{color:var(--color-danger-text);text-decoration:line-through}.domain-date{font-family:var(--font-mono);font-size:var(--fs-11-5);color:var(--color-text-faint)}.domains-add-form{display:flex;align-items:center;gap:var(--space-3);margin:0}.domains-add-form input{height:36px;width:200px;background:var(--color-surface-2);border-color:var(--color-border-input);font-family:var(--font-mono)}.domains-error{margin-bottom:var(--space-7)}.domains-skel-spacer{flex:1}.buy-steps{display:flex;gap:var(--space-3);margin-bottom:var(--space-7)}.buy-step{flex:1;height:4px;border-radius:2px;background:var(--color-border-soft);transition:background var(--transition-fast)}.buy-step.reached{background:var(--color-accent)}.buy-step.done{background:var(--color-primary)}.buy-step-label{font-size:var(--fs-12-5);font-weight:var(--fw-bold);color:var(--color-text-secondary);margin-bottom:var(--space-5)}.buy-check-row{display:flex;gap:var(--space-4)}.buy-check-row input{flex:1;font-family:var(--font-mono)}.buy-balance{margin-top:var(--space-5);font-size:var(--fs-11-5);color:var(--color-text-muted)}.buy-balance b{font-family:var(--font-mono);color:var(--status-active-text)}.buy-available{margin-top:var(--space-7);display:flex;align-items:center;gap:var(--space-5);background:var(--color-success-bg);border:1px solid var(--color-success-border);border-radius:var(--radius-xl);padding:var(--space-6) var(--space-7)}.buy-available-icon{font-size:var(--fs-19);color:var(--status-active-text)}.buy-available-title{font-size:var(--fs-13);font-weight:var(--fw-extrabold);color:var(--status-active-text)}.buy-available-sub{font-size:var(--fs-11-5);color:color-mix(in srgb,var(--status-active-text) 70%,var(--color-text-muted))}.buy-available-sub b{font-family:var(--font-mono)}.buy-error{margin-top:var(--space-7)}.buy-summary{border:1px solid var(--color-border);border-radius:var(--radius-2xl);overflow:hidden}.buy-summary-row{display:flex;justify-content:space-between;align-items:center;padding:11px var(--space-7);border-bottom:1px solid var(--color-row-divider);font-size:var(--fs-12-5)}.buy-summary-row:last-child{border-bottom:none}.buy-summary-row>span:first-child{color:var(--color-text-secondary)}.buy-summary-val{font-family:var(--font-mono);font-weight:var(--fw-bold);color:var(--color-text)}.buy-summary-debit{color:var(--color-danger);font-weight:var(--fw-extrabold)}.buy-remainder{margin-top:var(--space-6);font-size:var(--fs-11-5);color:var(--color-text-faint)}.buy-remainder b{font-family:var(--font-mono);color:var(--status-active-text)}.buy-success{text-align:center;padding:var(--space-7) 0}.buy-success-icon{width:54px;height:54px;border-radius:var(--radius-full);background:var(--status-active-bg);color:var(--status-active-text);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-7);font-size:26px}.buy-success-title{font-size:var(--fs-15);font-weight:var(--fw-extrabold);color:var(--color-text)}.buy-success-desc{font-size:var(--fs-12-5);color:var(--color-text-muted);margin-top:var(--space-2)}.buy-success-desc b{font-family:var(--font-mono);color:var(--color-text)}.subdomain-row td{background:var(--color-surface-2)}.subdomain-name{padding-left:var(--space-7)}.subdomain-arrow{color:var(--color-text-faint);font-weight:var(--fw-regular)}.sub-delete-btn{color:var(--color-danger-text)}.sub-delete-btn:hover{background:var(--color-danger-soft);border-color:var(--color-danger-text)}.subdomain-form-row td{background:var(--color-surface-2);border-bottom:1px solid var(--color-border-soft)}.sub-add-form{display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin:0;padding-left:var(--space-7)}.sub-add-form input{height:30px;width:160px;background:var(--color-surface);border-color:var(--color-border-input);font-family:var(--font-mono);font-size:var(--fs-12)}.sub-add-preview{font-family:var(--font-mono);font-size:var(--fs-11-5);color:var(--color-text-muted);white-space:nowrap}.sub-add-error{white-space:nowrap}.domains-owner-filter{max-width:230px}.domain-owner{font-family:var(--font-mono);font-size:var(--fs-11-5);color:var(--color-text-secondary)}.domain-owner-pool{color:var(--color-text-faint);font-style:italic}.burn-eta{margin-top:2px;font-size:var(--fs-10);font-weight:var(--fw-semibold);color:var(--color-danger);white-space:nowrap}.bulk-bar{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);background:var(--color-surface-2);border-bottom:1px solid var(--color-border-soft)}.bulk-count{font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--color-text-secondary)}.th-checkbox{width:36px}.bulk-preview{display:flex;flex-direction:column;gap:var(--space-5)}.bulk-preview-row{font-size:var(--fs-12-5);color:var(--color-text-body)}.bulk-skipped{max-height:180px;overflow-y:auto;border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--space-4) var(--space-5)}.bulk-skipped-title{font-size:var(--fs-11);font-weight:var(--fw-bold);color:var(--color-text-label);margin-bottom:var(--space-2)}.bulk-skipped-row{font-size:var(--fs-11);color:var(--color-text-muted);line-height:var(--lh-relaxed)}.users-search{position:relative;width:260px;flex-shrink:0}.users-search svg{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--color-icon);pointer-events:none}.toolbar-spacer{flex:1}.users-user-cell{display:flex;align-items:center;gap:var(--space-4)}.users-email{font-family:var(--font-mono);font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-text)}.users-card .table select,.users-card .tree-row select{height:28px;font-size:var(--fs-11-5);border-radius:var(--radius-md);padding:0 var(--space-3)}.users-balance{font-family:var(--font-mono);font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--status-active-text)}.users-date{font-family:var(--font-mono);font-size:var(--fs-11-5);color:var(--color-text-muted);white-space:nowrap}.users-lastseen{display:inline-flex;align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--fs-11-5);color:var(--color-text-muted);white-space:nowrap}.online-dot{display:inline-block;width:8px;height:8px;border-radius:var(--radius-full);background:var(--status-disabled);flex-shrink:0}.online-dot.is-online{background:var(--status-online)}.users-actions-cell{text-align:right;white-space:nowrap}.users-card .tree{border:none;border-radius:0}.users-pager{display:inline-flex;align-items:center;gap:var(--space-3)}.users-pager .page-badge{font-family:var(--font-mono)}.users-pager .iconbtn:disabled{opacity:.45;cursor:default}.users-pagesize{display:inline-flex;align-items:center;gap:var(--space-3);font-weight:var(--fw-semibold);color:var(--color-text-faint)}.users-pagesize select{height:28px;font-size:var(--fs-11-5);font-family:var(--font-mono);border-radius:var(--radius-md);padding:0 var(--space-3)}.users-total{font-family:var(--font-mono)}.ts-section{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-6);border-bottom:1px solid var(--color-border-soft)}.ts-cols-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.ts-actions{display:flex;justify-content:space-between;align-items:center;padding-top:var(--space-2)}.btn-reset{background:var(--color-danger-soft);color:var(--color-danger-text);border-color:transparent}.btn-reset:hover{background:var(--color-danger-soft);filter:brightness(.96)}.positions-th-sub{display:block;font-size:var(--fs-10);font-weight:var(--fw-semibold);color:var(--color-text-disabled);letter-spacing:.2px}.positions-identity{display:flex;align-items:center;gap:var(--space-4);min-width:180px}.positions-dot{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.positions-label{font-weight:var(--fw-bold);font-size:var(--fs-12-5);color:var(--color-text);white-space:nowrap}.positions-rank{font-family:var(--font-mono);font-size:var(--fs-11);font-weight:var(--fw-semibold);color:var(--color-text-faint)}.positions-desc{font-size:var(--fs-12);color:var(--color-text-secondary)}.positions-stack{display:flex;align-items:center;padding-left:var(--space-4)}.positions-avatar-wrap{display:inline-flex;margin-left:-8px}.positions-stack .avatar{width:26px;height:26px;font-size:var(--fs-9);border:2px solid var(--color-surface)}.positions-overflow{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 var(--space-3);border-radius:var(--radius-full);background:var(--color-segment-bg);color:var(--color-text-secondary);font-family:var(--font-mono);font-size:var(--fs-9);font-weight:var(--fw-bold);border:2px solid var(--color-surface);margin-left:-8px;flex-shrink:0}.positions-empty{font-size:var(--fs-11-5);font-weight:var(--fw-semibold);color:var(--color-text-disabled)}.positions-count-cell{text-align:right;white-space:nowrap}.positions-count{font-family:var(--font-mono);font-size:var(--fs-15);font-weight:var(--fw-extrabold);color:var(--color-text);line-height:var(--lh-tight)}.positions-count-sub{font-size:var(--fs-10);font-weight:var(--fw-semibold);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:var(--ls-caps)}.positions-perms-cell{text-align:right;white-space:nowrap}.perm-matrix{width:100%;border-collapse:collapse;margin-top:var(--space-3)}.perm-matrix th,.perm-matrix td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);text-align:left;font-size:var(--fs-13)}.perm-matrix th{font-size:var(--fs-11);font-weight:var(--fw-semibold);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:var(--ls-caps)}.perm-matrix .perm-axis-col{text-align:center;width:72px}.perm-matrix input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.perm-matrix input[type=checkbox]:disabled{cursor:default;opacity:.5}.qa-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-5);margin-top:var(--space-6, 12px)}.qa-card{position:relative;text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:14px 16px;cursor:pointer;transition:border-color .12s,box-shadow .12s}.qa-card:hover{border-color:var(--color-accent);box-shadow:0 1px 6px #2563eb14}.qa-card-head{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3)}.qa-card-title{font-size:var(--fs-13-5);font-weight:600;color:var(--color-text)}.qa-card-meta{font-size:var(--fs-11-5);color:var(--color-text-muted);display:flex;gap:var(--space-3)}.qa-card-del{position:absolute;top:8px;right:10px;color:var(--color-text-faint);font-size:var(--fs-12);cursor:pointer}.qa-card-del:hover{color:var(--status-burned-text)}.qa-epic-tag{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--fs-11);background:var(--color-accent-soft);color:var(--color-accent);border-radius:var(--radius-md);padding:1px 6px}.qa-items{display:flex;flex-direction:column;gap:var(--space-4);margin-top:var(--space-5)}.qa-item{background:var(--color-surface);border:1px solid var(--color-border);border-left:3px solid var(--color-border-2);border-radius:var(--radius-md);padding:12px 14px}.qa-item-ok{border-left-color:var(--status-active)}.qa-item-fail{border-left-color:var(--status-burned-text)}.qa-item-main{margin-bottom:var(--space-4)}.qa-item-text{font-size:var(--fs-13);color:var(--color-text)}.qa-item-expected{font-size:var(--fs-11-5);color:var(--color-text-muted);margin-top:2px}.qa-item-actions{display:flex;align-items:center;gap:var(--space-4)}.qa-btn{height:30px;padding:0 14px;border-radius:var(--radius-md);border:1px solid var(--color-border-2);background:var(--color-surface);font-size:var(--fs-12-5);font-weight:600;cursor:pointer}.qa-btn:disabled{opacity:.6;cursor:default}.qa-btn-ok.is-active{background:var(--status-active-bg);border-color:var(--status-active);color:var(--status-active-text)}.qa-btn-fail.is-active{background:var(--status-burned-bg);border-color:var(--status-burned-text);color:var(--status-burned-text)}.qa-saved{font-size:var(--fs-11);color:var(--color-text-muted)}.qa-saved-ok{color:var(--status-active-text)}.qa-saved-fail{color:var(--status-burned-text)}.qa-item-fail-box{margin-top:var(--space-4)}.qa-note{width:100%;border:1px solid var(--color-border-2);border-radius:var(--radius-md);padding:8px 10px;font-size:var(--fs-12-5);font-family:inherit;resize:vertical}.qa-fail-actions{display:flex;gap:var(--space-4);margin-top:var(--space-3)}.qa-bug-draft{display:flex;flex-direction:column;gap:var(--space-3);min-width:420px}.qa-bug-label{font-size:var(--fs-11-5);color:var(--color-text-label);font-weight:600}.qa-bug-input,.qa-bug-body{width:100%;border:1px solid var(--color-border-2);border-radius:var(--radius-md);padding:8px 10px;font-size:var(--fs-12-5);font-family:var(--font-mono, ui-monospace, monospace);background:var(--color-surface-2)}.qa-bug-actions{display:flex;gap:var(--space-4);margin-top:var(--space-3)}.qa-bug-hint{font-size:var(--fs-11);color:var(--color-text-muted)}.qa-tabs{display:flex;gap:var(--space-3);margin-bottom:var(--space-5)}.qa-tab{height:32px;padding:0 14px;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);font-size:var(--fs-12-5);cursor:pointer}.qa-tab.is-active{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent);font-weight:600}.qa-summary-head{display:flex;align-items:center;gap:var(--space-5)}.qa-summary-sub{font-size:var(--fs-12);color:var(--color-text-muted);margin:var(--space-3) 0 var(--space-5)}.qa-badge{font-size:var(--fs-11-5);font-weight:600;border-radius:999px;padding:2px 10px}.qa-badge-pass{background:var(--status-active-bg);color:var(--status-active-text)}.qa-badge-pending{background:var(--color-surface-2);color:var(--color-text-muted)}.qa-badge-group{display:inline-flex;gap:var(--space-2);flex-wrap:wrap}.qa-ai-tag{display:inline-block;font-size:var(--fs-10);font-weight:700;border-radius:var(--radius-sm);padding:1px 6px;margin-right:var(--space-3);vertical-align:middle}.qa-ai-ok{background:var(--status-active-bg);color:var(--status-active-text)}.qa-ai-fail{background:#fde8e8;color:#b42318}.qa-split-head{display:flex;gap:var(--space-3);margin:var(--space-4) 0;flex-wrap:wrap}.qa-split-badge{font-size:var(--fs-12);font-weight:600;border-radius:999px;padding:3px 12px}.qa-split-you{background:#fff4e5;color:#b54708}.qa-split-ai{background:var(--color-surface-2);color:var(--color-text-muted)}.qa-section{margin-bottom:var(--space-6)}.qa-section-title{font-size:var(--fs-14);font-weight:600;margin:0 0 var(--space-3)}.qa-section-needs .qa-section-title{color:#b54708}.qa-section-ai>summary{cursor:pointer;color:var(--color-text-muted);list-style:revert;padding:var(--space-3) 0}.qa-items-dim{opacity:.6}.qa-table .qa-num{text-align:center;font-variant-numeric:tabular-nums}.qa-num-ok{color:var(--status-active-text)}.qa-num-fail{color:var(--status-burned-text)}.qa-failed{margin-top:var(--space-6, 14px)}.qa-failed-item{border:1px solid var(--color-border);border-left:3px solid var(--status-burned-text);border-radius:var(--radius-md);padding:10px 12px;margin-top:var(--space-4)}.qa-failed-text{font-size:var(--fs-13);color:var(--color-text)}.qa-failed-by{margin:var(--space-3) 0 0;padding-left:18px;font-size:var(--fs-12);color:var(--color-text-secondary)}.add-lander .al-form{display:flex;flex-direction:column;gap:18px;max-width:880px}.al-section{background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:12px;padding:18px 20px}.al-section h2{margin:0 0 14px;font-size:15px;font-weight:600;color:var(--text, #111827)}.al-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.al-section-head h2{margin:0}.al-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.al-grid label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-muted, #6b7280);position:relative}.al-input{width:100%;box-sizing:border-box;padding:8px 11px;border:1px solid var(--border, #d1d5db);border-radius:8px;font-size:14px;color:var(--text, #111827);background:var(--surface, #fff)}.al-input:focus{outline:none;border-color:var(--accent, #6366f1)}.al-textarea{min-height:64px;resize:vertical}.al-drop{border:2px dashed var(--border, #d1d5db);border-radius:10px;padding:28px;text-align:center;color:var(--text-muted, #6b7280);cursor:pointer;transition:border-color .15s,background .15s}.al-drop:hover{border-color:var(--accent, #6366f1)}.al-drop-done{border-style:solid;border-color:var(--ok, #16a34a);color:var(--ok, #16a34a)}.al-autocomplete,.al-country{position:relative}.al-dropdown{position:absolute;top:100%;left:0;right:0;z-index:20;margin-top:4px;background:var(--surface, #fff);border:1px solid var(--border, #e5e7eb);border-radius:8px;box-shadow:0 8px 24px #0000001f;max-height:260px;overflow-y:auto}.al-opt{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 11px;border:none;background:none;cursor:pointer;font-size:14px}.al-opt:hover{background:var(--surface-2, #f3f4f6)}.al-opt-name{color:var(--text-muted, #9ca3af);font-size:12px}.al-country-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border:1px solid var(--border, #d1d5db);border-radius:8px;background:var(--surface, #fff);cursor:pointer;font-size:14px}.al-country-x{color:var(--accent, #6366f1);font-size:12px;margin-left:4px}.al-warn{margin:10px 0 0;font-size:12px;color:var(--warn, #b45309)}.al-hint{margin:10px 0 0;font-size:12px;color:var(--color-text-muted, #6b7280)}.al-actions{display:flex;justify-content:flex-end}.relander-card-clickable{cursor:pointer}.rlc{display:flex;flex-direction:column;gap:var(--space-5)}.rlc-head{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-4)}.rlc-meta{font-size:12px;color:var(--color-text-muted)}.rlc-meta b{color:var(--color-text-body);font-weight:600}.rlc-meta-preset{text-transform:uppercase;letter-spacing:.04em}.rlc-badge{padding:2px var(--space-3);border-radius:var(--radius-pill);font-size:12px;font-weight:600;white-space:nowrap}.rlc-badge-processing{background:var(--color-accent-soft);color:var(--color-accent)}.rlc-badge-attention{background:var(--color-warning-bg);color:var(--color-warning-text)}.rlc-badge-ready{background:var(--status-active-bg);color:var(--status-active-text)}.rlc-badge-failed{background:var(--status-burned-bg);color:var(--status-burned-text)}.rlc-badge-published{background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary)}.rlc-badge-unknown{background:var(--status-disabled-bg);color:var(--status-disabled-text)}.rlc-checklist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.rlc-item{display:flex;align-items:flex-start;gap:var(--space-3);font-size:13px;color:var(--color-text-body);line-height:1.4}.rlc-mark{flex:none;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);font-size:11px;font-weight:700}.rlc-item-ok .rlc-mark{background:var(--status-active-bg);color:var(--status-active-text)}.rlc-item-warn .rlc-mark{background:var(--color-warning-bg);color:var(--color-warning-text)}.rlc-item-text{padding-top:1px}.rlc-empty{font-size:13px;color:var(--color-text-muted)}.rlc-human{border:1px solid var(--color-warning-border);background:var(--color-warning-bg);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.rlc-human-title{font-size:13px;font-weight:600;color:var(--color-warning-text)}.rlc-human-list{margin:0;padding-left:var(--space-5);font-size:13px;color:var(--color-text-body);display:flex;flex-direction:column;gap:var(--space-1)}.rlc-assets{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.rlc-assets-title{font-size:13px;font-weight:600;color:var(--color-text-body)}.rlc-assets-hint{font-size:12px;color:var(--color-text-muted);line-height:1.4}.rlc-assets-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.rlc-asset{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3);font-size:12px}.rlc-asset-path{font-family:var(--font-mono, monospace);font-size:12px;color:var(--color-text-body);word-break:break-all}.rlc-asset-file{font:inherit;color:var(--color-text-muted);max-width:100%}.rlc-asset-file:disabled{opacity:.6}.rlc-asset-blocked{color:var(--color-text-muted)}.rlc-asset-done{color:var(--status-active-text)}.rlc-assets-actions{display:flex;gap:var(--space-3)}.rlc-foot{display:flex;flex-direction:column;gap:var(--space-4);border-top:1px solid var(--color-border);padding-top:var(--space-4)}.rlc-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-3)}.rlc-field{display:flex;flex-direction:column;gap:var(--space-1);font-size:12px;color:var(--color-text-label)}.rlc-input{font:inherit;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-body)}.rlc-input:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.rlc-form-err{grid-column:1 / -1;font-size:12px;color:var(--color-danger-text)}.rlc-actions{display:flex;gap:var(--space-3)}.rlc-published{border-top:1px solid var(--color-border);padding-top:var(--space-4);font-size:13px;color:var(--status-active-text)}.rlc-uuid{font-family:var(--font-mono, monospace);font-size:12px;color:var(--color-text-body)}.relander-toolbar{align-items:center;gap:var(--space-4)}.relander-file-input{display:none}.relander-preset{display:inline-flex;align-items:center;gap:var(--space-2);font-size:13px;color:var(--color-text-label)}.relander-preset select{font:inherit}.relander-hint{padding:var(--space-6);color:var(--color-text-muted);font-size:14px}.relander-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-4);padding:var(--space-5)}.relander-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-left-width:3px;border-radius:var(--radius-lg);transition:box-shadow .12s var(--easing-standard)}.relander-card:hover{box-shadow:var(--shadow-focus)}.relander-card-processing{border-left-color:var(--color-accent)}.relander-card-attention{border-left-color:var(--color-warning-border)}.relander-card-ready{border-left-color:var(--status-active)}.relander-card-failed{border-left-color:var(--status-burned)}.relander-card-published{border-left-color:var(--color-primary)}.relander-card-unknown{border-left-color:var(--status-disabled)}.relander-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.relander-card-name{font-weight:600;font-size:14px;color:var(--color-text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.relander-badge{flex:none;padding:2px var(--space-3);border-radius:var(--radius-pill);font-size:12px;font-weight:600;white-space:nowrap}.relander-badge-processing{background:var(--color-accent-soft);color:var(--color-accent)}.relander-badge-attention{background:var(--color-warning-bg);color:var(--color-warning-text)}.relander-badge-ready{background:var(--status-active-bg);color:var(--status-active-text)}.relander-badge-failed{background:var(--status-burned-bg);color:var(--status-burned-text)}.relander-badge-published{background:color-mix(in srgb,var(--color-primary) 14%,transparent);color:var(--color-primary)}.relander-badge-unknown{background:var(--status-disabled-bg);color:var(--status-disabled-text)}.relander-card-meta{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:12px;color:var(--color-text-muted)}.relander-meta-item b{color:var(--color-text-body);font-weight:600}.relander-meta-preset{text-transform:uppercase;letter-spacing:.04em}.relander-card-error{font-size:12px;color:var(--color-danger-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.creatives-banner{padding:8px 12px;margin-bottom:12px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);color:var(--color-text-secondary);font-size:12px}.creatives-toolbar{flex-wrap:wrap;row-gap:8px}.creatives-select{max-width:260px}.creatives-search-input{width:260px;max-width:100%}.cr-ms{position:relative}.cr-ms-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}.cr-ms-btn:hover{background:var(--color-surface-2)}.cr-ms-btn.is-set{border-color:var(--color-accent);color:var(--color-accent)}.cr-ms-caret{font-size:10px;opacity:.7}.cr-ms-panel{position:absolute;z-index:30;top:calc(100% + 4px);left:0;min-width:220px;max-height:280px;overflow-y:auto;padding:6px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-toast)}.cr-ms-opt{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:5px 6px;border-radius:var(--radius-sm);font-size:13px;cursor:pointer}.cr-ms-opt:hover{background:var(--color-surface-2)}.cr-ms-opt-count{font-family:var(--font-mono);font-size:11px;color:var(--color-text-secondary)}.cr-ms-empty{padding:8px;font-size:12px;color:var(--color-text-secondary)}.cr-ms-clear{width:100%;margin-top:4px;padding:6px;border:none;border-top:1px solid var(--color-border);background:none;color:var(--color-text-secondary);font:inherit;font-size:12px;cursor:pointer}.cr-ms-clear:hover{color:var(--color-accent)}.creatives-total{font-family:var(--font-mono);font-size:12px;color:var(--color-text-secondary);margin-right:8px}.creatives-table-wrap{overflow-x:auto}.table-card.creatives-card{overflow:visible}.creatives-approach-name{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--color-accent);cursor:pointer;text-align:left}.creatives-approach-msg{font-size:12px;color:var(--color-text-secondary);margin-top:2px}.creatives-tag{font-family:var(--font-mono);font-size:12px}.creatives-geos{font-family:var(--font-mono);font-size:12px;white-space:nowrap}.creatives-domain{font-family:var(--font-mono);font-size:12px}.creatives-pct{color:var(--color-text-secondary);font-size:11px;margin-top:2px}.creatives-media-col{width:140px}.creatives-thumbs{display:flex;gap:4px}.creatives-thumb{position:relative;display:block;width:40px;height:40px;border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface-2);border:1px solid var(--color-border)}.creatives-thumb img{width:100%;height:100%;object-fit:cover;display:block}.creatives-thumb-ph{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary);font-size:14px}.creatives-play{position:absolute;right:2px;bottom:1px;font-size:9px;line-height:1;padding:2px 3px;border-radius:3px;background:#0009;color:#fff}.creatives-passport{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}.creatives-passport .span2{grid-column:span 3}.creatives-passport>div>div{font-size:13px;margin-top:2px}.creatives-detail-wrap{overflow-x:auto}.creatives-detail-table{table-layout:fixed;width:100%;min-width:480px}.creatives-detail-table td{vertical-align:top}.creatives-detail-table col.c-text{width:52%}.creatives-detail-table col.c-weight{width:10%}.creatives-detail-table col.c-geo{width:18%}.creatives-detail-table col.c-watch{width:20%}.creatives-detail-table .creatives-domain{overflow-wrap:anywhere;color:var(--color-text-secondary);margin-top:4px}.creatives-detail-table .btn-sm{white-space:nowrap}@media (max-width: 900px){.creatives-passport{grid-template-columns:1fr 1fr}.creatives-passport .span2{grid-column:span 2}}@media (max-width: 700px){.creatives-search-input{width:100%}.creatives-select{max-width:100%;flex:1 1 160px}.creatives-passport{grid-template-columns:1fr}.creatives-passport .span2{grid-column:span 1}}.creatives-toolbar-right{display:flex;align-items:center;gap:8px;margin-left:auto;white-space:nowrap}.creatives-geo-col{width:84px;white-space:nowrap}.creatives-geo-code{font-family:var(--font-mono);font-weight:600;font-size:13px}.cr-drill{padding:0 0 8px}.cr-drill-head{display:flex;align-items:center;gap:12px;padding:10px 12px;border-bottom:1px solid var(--color-border-soft);background:var(--color-surface-3)}.cr-back{padding:5px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:inherit;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}.cr-back:hover{background:var(--color-surface-2)}.cr-crumbs{display:flex;align-items:center;gap:6px;font-size:13px;flex-wrap:wrap}.cr-crumb{border:none;background:none;padding:0;font:inherit;color:var(--color-accent);cursor:pointer}.cr-crumb.is-current{color:var(--color-text);font-weight:600;cursor:default}.cr-crumb-sep{color:var(--color-text-faint)}.cr-drill-filter{margin-left:auto;padding:3px 9px;border:1px solid var(--color-accent);border-radius:var(--radius-sm);color:var(--color-accent);font-family:var(--font-mono);font-size:12px;white-space:nowrap}.cr-drill .creatives-passport{padding:14px 12px 0}.cr-drill-section{padding:14px 12px 6px}.cr-drill-table{width:100%}.cr-drill-row{cursor:pointer}.cr-drill-row:hover{background:var(--color-surface-2)}.cr-drill-open{width:32px;text-align:right;color:var(--color-text-secondary)}.cr-ads-text{padding:14px 12px 0}.cr-ads-text p{margin:4px 0 8px;font-size:13px}.cr-ads-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--color-text-secondary)}.cr-ads-scroll{overflow-x:auto}.cr-ads-table{min-width:1100px;font-size:12px}.cr-ads-table th{white-space:nowrap}.cr-ads-table td{vertical-align:top}.cr-ads-hash{cursor:help}.cr-ads-watch{white-space:nowrap}.cr-ads-lib{display:block;margin-top:4px}.cr-ads-empty{padding:14px 12px;color:var(--color-text-secondary);font-size:12px}@media (max-width: 700px){.cr-drill-head{flex-wrap:wrap}.cr-drill-filter{margin-left:0}}.cr-media-col{width:64px}.cr-media{position:relative}.cr-media-thumb{position:relative;display:block;width:48px;height:48px;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;background:var(--color-surface-2);cursor:pointer}.cr-media-thumb img{width:100%;height:100%;object-fit:cover;display:block}.cr-media-ph{display:flex;align-items:center;justify-content:center;height:100%;color:var(--color-text-secondary)}.cr-media-none{color:var(--color-text-faint)}.cr-media-pop{position:fixed;z-index:65;width:280px;padding:6px;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-toast)}.cr-media-pop video,.cr-media-pop img{width:100%;max-height:330px;object-fit:contain;border-radius:var(--radius-sm);background:#000;display:block}.cr-media-pop-foot{margin-top:4px;font-size:11px;color:var(--color-text-secondary);text-align:center}.cr-player{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:flex;align-items:center;justify-content:center;padding:24px;background:#080c16b8}.cr-player-box{width:min(880px,100%);max-height:92vh;display:flex;flex-direction:column;border-radius:var(--radius-modal);background:var(--color-surface);overflow:hidden}.cr-player-head{display:flex;align-items:center;gap:12px;padding:10px 14px;border-bottom:1px solid var(--color-border-soft);font-size:12px}.cr-player-head .iconbtn{margin-left:auto}.cr-player-media{background:#000;display:flex;justify-content:center}.cr-player-media video,.cr-player-media img{max-height:62vh;max-width:100%;display:block}.cr-player-foot{padding:12px 14px;overflow-y:auto}.cr-player-text{margin:0 0 10px;font-size:13px}.cr-player-links{display:flex;gap:8px;flex-wrap:wrap}.cr-ads-utm{max-width:180px;font-size:11px;overflow-wrap:anywhere}.ts-cols-wide{grid-template-columns:1fr 1fr}.ts-hint-inline{color:var(--color-text-faint);font-size:11px}.cr-ads-landing{max-width:300px}.cr-ads-landing a{white-space:nowrap}.cr-pager{display:flex;align-items:center;gap:12px;padding:10px 12px;border-top:1px solid var(--color-border-soft);font-size:12px;flex-wrap:wrap}.cr-pager-info{font-family:var(--font-mono);color:var(--color-text-secondary)}.cr-pager-size{font-size:12px;padding:4px 6px}.cr-pager-nav{margin-left:auto;display:flex;align-items:center;gap:6px}.cr-pager-page{font-family:var(--font-mono);color:var(--color-text-secondary)}.cr-pager .iconbtn:disabled{opacity:.4;cursor:default}.creatives-filter-mark{color:var(--color-accent)}.creatives-apply{white-space:nowrap}.creatives-filter-dirty{color:var(--color-primary);font-weight:600}.team-avstack{display:inline-flex;align-items:center}.team-avstack-item{margin-left:-8px}.team-avstack-item:first-child{margin-left:0}.team-avstack-item .avatar{border:2px solid var(--color-surface);box-shadow:0 0 0 .5px var(--color-border)}.team-avstack-more{margin-left:4px;font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-muted)}.team-members-cell{display:inline-flex;align-items:center;gap:var(--space-4)}.team-sort{flex-direction:row;align-items:center;gap:var(--space-3);font-weight:var(--fw-semibold)}.modal:has(.team-form){max-width:760px;width:92vw}.team-form-top{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.team-err{color:var(--color-danger, #dc2626);font-size:var(--fs-11-5);font-weight:600;margin-top:4px}.team-transfer{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-top:var(--space-5)}.team-panel{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface-2);overflow:hidden}.team-panel-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);font-size:var(--fs-12);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-muted)}.team-panel-head select{font-size:var(--fs-11-5);padding:2px 6px}.team-panel-body{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);min-height:220px;max-height:320px;overflow-y:auto}.team-panel-empty{padding:var(--space-6);text-align:center}.team-user-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg)}.team-user-row:hover{background:var(--color-surface)}.team-user-email{flex:1;font-size:var(--fs-12-5);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-pos-select{font-size:var(--fs-11-5);padding:2px 6px}.team-pos-select.is-override{border-color:var(--color-accent);color:var(--color-accent);font-weight:700}.team-pm{min-width:30px;padding-left:8px;padding-right:8px}.team-actions{display:flex;justify-content:flex-end;gap:var(--space-4);margin-top:var(--space-5)}.mock-banner{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-7);padding:var(--space-5) var(--space-7);background:repeating-linear-gradient(45deg,#fde68a,#fde68a 14px,#fcd34d 14px,#fcd34d 28px);border:2px solid #d97706;border-radius:var(--radius-xl);color:#713f12}.mock-banner-tag{flex-shrink:0;background:#b45309;color:#fff;font-weight:800;font-size:var(--fs-12);letter-spacing:1px;padding:3px 10px;border-radius:var(--radius-md)}.mock-banner-text{font-size:var(--fs-12-5);font-weight:600}.mock-nav-item{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-nav-text);cursor:default}.mock-nav-item.active{background:var(--color-nav-tab-active);color:var(--color-surface)}.mock-nav-item.active .nav-icon{opacity:1}.mock-geo{display:inline-flex;gap:var(--space-2);flex-wrap:wrap}.mock-field-label{font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--color-text-label);margin-bottom:5px}.mock-geo-pick{display:inline-flex;gap:var(--space-2);flex-wrap:wrap}.mock-check{flex-direction:row;align-items:center;gap:var(--space-4);font-weight:var(--fw-semibold)}.mock-actions{display:flex;justify-content:flex-end;gap:var(--space-4);margin-top:var(--space-4)}.mock-prefill{display:grid;gap:var(--space-4);padding:var(--space-6);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-xl)}.mock-prefill>div{display:flex;align-items:center;gap:var(--space-5)}.mock-prefill-k{width:70px;flex-shrink:0;font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px}.mock-prefill-v{font-family:var(--font-mono);font-size:var(--fs-12-5)}.mock-shorturl{font-family:var(--font-mono);font-size:var(--fs-12-5);padding:var(--space-4) var(--space-5);background:var(--color-accent-soft);color:var(--color-accent);border-radius:var(--radius-md);word-break:break-all}.mock-avstack{display:inline-flex;align-items:center}.mock-avstack-item{margin-left:-8px}.mock-avstack-item:first-child{margin-left:0}.mock-avstack-item .avatar{border:2px solid var(--color-surface);box-shadow:0 0 0 .5px var(--color-border)}.mock-avstack-more{margin-left:4px;font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-muted)}.mock-members-cell{display:inline-flex;align-items:center;gap:var(--space-4)}.mock-sort{flex-direction:row;align-items:center;gap:var(--space-3);font-weight:var(--fw-semibold)}.modal:has(.mock-team-form){max-width:760px;width:92vw}.mock-team-top{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.mock-err{color:var(--color-danger, #dc2626);font-size:var(--fs-11-5);font-weight:600;margin-top:4px}.mock-transfer{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-top:var(--space-5)}.mock-panel{display:flex;flex-direction:column;border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface-2);overflow:hidden}.mock-panel-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);font-size:var(--fs-12);font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.4px;color:var(--color-text-muted)}.mock-panel-head select{font-size:var(--fs-11-5);padding:2px 6px}.mock-panel-body{display:flex;flex-direction:column;gap:2px;padding:var(--space-3);min-height:220px;max-height:320px;overflow-y:auto}.mock-panel-empty{padding:var(--space-6);text-align:center}.mock-user-row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-lg)}.mock-user-row:hover{background:var(--color-surface)}.mock-user-email{flex:1;font-size:var(--fs-12-5);font-family:var(--font-mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mock-pos-select{font-size:var(--fs-11-5);padding:2px 6px}.mock-pos-select.is-override{border-color:var(--color-accent);color:var(--color-accent);font-weight:700}.mock-pm{min-width:30px;padding-left:8px;padding-right:8px}.fb-comment-node{display:flex;flex-direction:column;margin-bottom:12px;position:relative}.fb-comment-avatar,.fb-comment-avatar-reply{flex:0 0 auto;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px;overflow:hidden;-webkit-user-select:none;user-select:none}.fb-comment-avatar-reply{width:28px;height:28px;font-size:12px}.fb-comment-avatar img,.fb-comment-avatar-reply img{width:100%;height:100%;object-fit:cover}.fb-comment-bubble{display:inline-block;background:var(--color-bg-subtle, #f0f2f5);border-radius:18px;padding:8px 12px;max-width:100%;line-height:1.34}.fb-comment-author-name{display:inline-flex;align-items:center;font-weight:700;font-size:13px;color:var(--color-text, #050505)}.fb-comment-text{font-size:13.5px;color:var(--color-text, #050505);white-space:pre-wrap;word-break:break-word}.fb-comment-image{margin-top:6px;max-width:220px;max-height:220px;border-radius:14px;border:1px solid var(--color-border, #e4e6eb);object-fit:cover}.fb-comment-reaction-pill{position:absolute;right:6px;bottom:-10px;display:flex;align-items:center;gap:4px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e4e6eb);border-radius:999px;padding:1px 6px;box-shadow:0 1px 3px #0000001f;cursor:pointer;z-index:2}.fb-comment-actions-line{display:flex;align-items:center;gap:12px;margin:3px 0 0 12px;font-size:12px;font-weight:600;color:var(--color-text-muted, #65676b);position:relative}.fb-comment-action-link{cursor:pointer;color:var(--color-text-muted, #65676b)}.fb-comment-action-link:hover{text-decoration:underline}.fb-like-action-container{position:relative;display:inline-flex}.fb-reactions-floating-panel{position:absolute;bottom:100%;left:0;margin-bottom:6px;display:flex;gap:4px;padding:5px 8px;background:var(--color-surface, #fff);border:1px solid var(--color-border, #e4e6eb);border-radius:999px;box-shadow:0 4px 14px #0000002e;z-index:10;animation:fb-pop-up .14s ease-out}.fb-react-icon-hover{font-size:20px;cursor:pointer;transition:transform .1s ease-out}.fb-react-icon-hover:hover{transform:scale(1.35) translateY(-2px)}.fb-comment-replies{margin-left:28px;padding-left:14px;border-left:2px solid var(--color-border, #e4e6eb);margin-top:4px}@keyframes fb-pop-up{0%{opacity:0;transform:translateY(6px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.flow-segment .segment-item.active{background:var(--color-primary, #16b357);color:#fff;font-weight:var(--fw-bold, 700)}.flow-segment .segment-item.active:hover{background:var(--color-primary-hover, #14a350)}.flow-segment.segment{padding:4px}.flow-segment .segment-item{font-size:var(--fs-13);padding:7px 16px}.flow-page .card-title{font-size:var(--fs-14)}.flow-subtitle{font-size:var(--fs-13);color:var(--color-text-muted);margin-top:3px}:root{--color-bg: #eef0f3;--color-surface: #ffffff;--color-surface-2: #f7f8fa;--color-surface-3: #fafbfc;--color-zebra: #fbfcfd;--color-thead: #f4f5f8;--color-segment-bg: #f0f1f4;--color-border: #e4e7ec;--color-border-2: #d7dbe2;--color-border-input: #e0e3e9;--color-border-soft: #eceef1;--color-row-divider: #f0f1f4;--color-row-divider-2: #f3f4f6;--color-text: #1e2330;--color-text-strong: #161c2b;--color-text-body: #3a4152;--color-text-secondary:#5b6373;--color-text-muted: #8a909c;--color-text-faint: #9aa0ab;--color-text-disabled: #aab0bb;--color-text-label: #4a5160;--color-icon: #a6acb8;--color-primary: #16b357;--color-primary-hover: #14a350;--color-accent: #2563eb;--color-accent-hover: #1d4ed8;--color-accent-soft: #eef3ff;--color-brand-grad-a: #2f6df6;--color-brand-grad-b: #6d4aff;--color-brand-light: #7c93ff;--color-header-grad-a: #222a3d;--color-header-grad-b: #1d2333;--color-nav-bg: #283149;--color-nav-tab-active:#3b466a;--color-nav-text: #9aa3ba;--color-nav-border: #39415a;--color-nav-control: #2a3147;--color-login-grad-a: #20283c;--color-login-grad-b: #161c2b;--color-login-grad-c: #11151f;--status-active: #16a34a;--status-active-text: #15803d;--status-active-bg: #dcfce7;--status-burned: #dc2626;--status-burned-text: #b42318;--status-burned-bg: #fee2e2;--status-disabled: #94a3b8;--status-disabled-text:#64748b;--status-disabled-bg: #eef0f3;--status-online: #16a34a;--click-total: #3a4152;--click-total-bg: #f4f5f8;--click-target: #15803d;--click-target-strong: #16a34a;--click-target-bg: #e9f9ef;--click-target-border: #c4ebcf;--click-bot: #b1b6c0;--click-bot-muted: #aab0bb;--click-bot-bg: #f7f8fa;--click-line-total: #b6bccb;--cloak-on: #6d4aff;--cloak-on-bg: #efeaff;--cloak-off: #9aa0ab;--cloak-off-bg: #f1f3f6;--cloak-panel-bg: #faf9ff;--cloak-panel-border: #e7e3ff;--cloak-heading: #5733d6;--role-superadmin: #7c3aed;--role-head: #2563eb;--role-team-lead: #0891b2;--role-buyer: #16a34a;--role-assistant: #64748b;--role-superadmin-proto: #7c3aed;--role-superadmin-bg: #ede9fe;--role-head-proto: #2563eb;--role-head-bg: #dbeafe;--role-team-lead-proto: #0891b2;--role-team-lead-bg: #cffafe;--role-buyer-proto: #059669;--role-buyer-bg: #d1fae5;--role-assistant-proto: #d97706;--role-assistant-bg: #fef3c7;--avatar-1: #2563eb;--avatar-2: #7c3aed;--avatar-3: #0891b2;--avatar-4: #059669;--avatar-5: #d97706;--avatar-6: #db2777;--avatar-7: #dc2626;--avatar-8: #0d9488;--color-danger: #dc2626;--color-danger-text: #b91c1c;--color-danger-soft: #fee2e2;--color-danger-icon: #cf6b6b;--color-warning-bg: #fffbe6;--color-warning-border:#f5e08a;--color-warning-text: #8a6d1a;--color-error-panel-bg:#fef2f2;--color-error-panel-border:#fbcaca;--color-success-bg: #f1fbf4;--color-success-border:#c4ebcf;--color-highlight: #fde047;--font-sans: "Manrope", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SFMono-Regular", monospace;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--fw-extrabold: 800;--fs-8: 8.5px;--fs-9: 9.5px;--fs-10: 10px;--fs-10-5: 10.5px;--fs-11: 11px;--fs-11-5: 11.5px;--fs-12: 12px;--fs-12-5: 12.5px;--fs-13: 13px;--fs-13-5: 13.5px;--fs-14: 14px;--fs-15: 15px;--fs-16: 16px;--fs-17: 17px;--fs-19: 19px;--fs-30: 30px;--lh-tight: 1.25;--lh-snug: 1.3;--lh-normal: 1.5;--lh-relaxed:1.6;--ls-tight: -1px;--ls-heading:-.3px;--ls-caps: .5px;--space-1: 2px;--space-2: 4px;--space-3: 6px;--space-4: 8px;--space-5: 10px;--space-6: 12px;--space-7: 14px;--space-8: 16px;--space-9: 18px;--space-10: 20px;--space-12: 24px;--space-14: 32px;--space-16: 40px;--radius-xs: 5px;--radius-sm: 6px;--radius-md: 7px;--radius-lg: 8px;--radius-xl: 9px;--radius-2xl: 10px;--radius-3xl: 11px;--radius-modal:14px;--radius-pill: 11px;--radius-full: 50%;--shadow-focus: 0 0 0 3px rgba(37,99,235,.12);--shadow-toast: 0 12px 30px rgba(15,20,30,.16);--shadow-modal: 0 24px 60px rgba(8,12,22,.4);--shadow-login: 0 24px 60px rgba(8,12,22,.5);--shadow-nav-inset: inset 0 -1px 0 #1d2333;--overlay-modal: rgba(17,21,31,.5);--transition-fast: .14s ease;--transition-base: .2s ease;--transition-toast: .22s ease;--transition-shimmer:1.4s linear;--easing-standard: ease;--z-header: 30;--z-nav: 29;--z-modal: 120;--z-toast: 200;--scrollbar-thumb: #cdd2da;--scrollbar-size: 10px}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes toastIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes modalIn{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--fs-13);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased}a{color:var(--color-accent)}b,strong{font-weight:var(--fw-bold)}code{font-family:var(--font-mono);background:var(--color-surface-2);border:1px solid var(--color-border-soft);padding:1px 5px;border-radius:var(--radius-xs);font-size:var(--fs-11-5)}::-webkit-scrollbar{width:var(--scrollbar-size);height:var(--scrollbar-size)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm);border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-track{background:transparent}.mono{font-family:var(--font-mono)}.muted{color:var(--color-text-muted)}.small{font-size:var(--fs-12)}.center{text-align:center;padding:var(--space-12)}.truncate{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.danger{color:var(--color-danger-text)}.ok-fg{color:var(--status-active-text);font-weight:var(--fw-bold)}.uppercase-label{font-size:var(--fs-11);font-weight:var(--fw-extrabold);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:var(--ls-caps)}.app{display:flex;min-height:100vh}.sidebar{width:220px;background:linear-gradient(180deg,var(--color-header-grad-a),var(--color-header-grad-b));border-right:1px solid var(--color-nav-border);color:var(--color-surface);display:flex;flex-direction:column;padding:var(--space-8);position:sticky;top:0;height:100vh;z-index:var(--z-header)}.brand{font-weight:var(--fw-extrabold);font-size:var(--fs-15);letter-spacing:var(--ls-heading);color:var(--color-surface);margin-bottom:var(--space-12)}.sidebar nav{display:flex;flex-direction:column;gap:var(--space-2);flex:1}.sidebar nav a{display:flex;align-items:center;gap:var(--space-4);height:32px;padding:0 var(--space-7);border-radius:var(--radius-md);color:var(--color-nav-text);font-size:var(--fs-13);font-weight:var(--fw-bold);text-decoration:none;transition:color var(--transition-fast),background var(--transition-fast)}.sidebar nav a:hover{color:var(--color-surface)}.sidebar nav a.active{background:var(--color-nav-tab-active);color:var(--color-surface)}.nav-disabled{display:flex;align-items:center;height:32px;padding:0 var(--space-7);border-radius:var(--radius-md);color:var(--color-nav-text);font-size:var(--fs-13);font-weight:var(--fw-bold);opacity:.45;cursor:not-allowed}.sidebar-foot{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-6);border-top:1px solid var(--color-nav-border)}.sidebar .muted{color:var(--color-nav-text)}.sidebar .small{font-family:var(--font-mono);font-size:var(--fs-11-5)}.sidebar .btn-ghost{color:var(--color-brand-light)}.sidebar .btn-ghost:hover{background:var(--color-nav-control);color:var(--color-surface)}.content{flex:1;padding:var(--space-8) var(--space-9) var(--space-16);max-width:1760px;min-width:0}.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-7);gap:var(--space-8)}h1{font-size:var(--fs-17);font-weight:var(--fw-extrabold);letter-spacing:var(--ls-heading);color:var(--color-text);margin:0}.filters{display:flex;gap:var(--space-6);align-items:center}.filters label,.inline-form{display:inline-flex;flex-direction:row;align-items:center;gap:var(--space-3);font-size:var(--fs-12-5);font-weight:var(--fw-semibold);color:var(--color-text-label)}.kpi{font-size:var(--fs-14);font-weight:var(--fw-bold);margin-bottom:var(--space-8)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-7)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);padding:var(--space-8) var(--space-9)}.card-title{font-size:var(--fs-13-5);font-weight:var(--fw-extrabold);color:var(--color-text);margin-bottom:var(--space-5)}.table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);overflow:hidden}.table th,.table td{text-align:left;padding:var(--space-5) var(--space-7);border-bottom:1px solid var(--color-row-divider);vertical-align:middle}.table th{background:var(--color-thead);border-bottom:1px solid var(--color-border);font-size:var(--fs-11-5);font-weight:var(--fw-bold);color:var(--color-text-body);text-transform:none;letter-spacing:0}.table td{font-size:var(--fs-12-5)}.table tbody tr:nth-child(2n){background:var(--color-zebra)}.table tbody tr:hover{background:var(--color-accent-soft)}.table tr:last-child td{border-bottom:none}.row-hover:hover{background:var(--color-accent-soft)}.row-burned{background:color-mix(in srgb,var(--color-danger) 4%,var(--color-surface))}.row-burned:hover,.table tbody tr.row-burned:hover{background:color-mix(in srgb,var(--color-danger) 7%,var(--color-surface))}.row-actions{display:inline-flex;gap:var(--space-2);align-items:center}.table-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);overflow:hidden}.table-card .table{border:none;border-radius:0}.toolbar{display:flex;align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-7);border-bottom:1px solid var(--color-border-soft)}.table-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5) var(--space-7);border-top:1px solid var(--color-border-soft);background:var(--color-surface-3);font-size:var(--fs-11-5);font-weight:var(--fw-semibold);color:var(--color-text-faint)}.page-badge{font-size:var(--fs-11);font-weight:var(--fw-bold);color:var(--color-text-body);background:var(--color-highlight);padding:3px var(--space-4);border-radius:var(--radius-sm)}.click-cell{display:flex;align-items:stretch;gap:var(--space-3)}.click-box{flex:1;text-align:center;background:var(--click-total-bg);border-radius:var(--radius-md);padding:5px var(--space-2)}.click-box .click-num{font-family:var(--font-mono);font-size:var(--fs-13);font-weight:var(--fw-bold);color:var(--click-total)}.click-box .click-label{font-size:var(--fs-8);font-weight:var(--fw-bold);letter-spacing:.4px;text-transform:uppercase;color:var(--color-text-faint)}.click-box-target{background:var(--click-target-bg);border:1px solid var(--click-target-border)}.click-box-target .click-num{color:var(--click-target);font-weight:var(--fw-extrabold)}.click-box-target .click-label{color:var(--click-target-strong)}.click-box-bot{background:var(--click-bot-bg)}.click-box-bot .click-num{color:var(--click-bot);font-weight:var(--fw-semibold)}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:var(--radius-sm);font-size:var(--fs-10-5);font-weight:var(--fw-bold);background:var(--color-segment-bg);color:var(--color-text-body);white-space:nowrap}.badge-ok{background:var(--status-active-bg);color:var(--status-active-text)}.badge-bad{background:var(--status-burned-bg);color:var(--status-burned-text)}.badge-disabled{background:var(--status-disabled-bg);color:var(--status-disabled-text)}.dot{width:5px;height:5px;border-radius:var(--radius-full);background:currentColor;flex-shrink:0;display:inline-block}.badge-role{background:color-mix(in srgb,var(--role-superadmin) 12%,var(--color-surface));color:var(--role-superadmin);width:fit-content;text-transform:uppercase;letter-spacing:.3px;font-size:var(--fs-10);border-radius:var(--radius-xs)}.badge-role-superadmin{background:color-mix(in srgb,var(--role-superadmin) 12%,var(--color-surface));color:var(--role-superadmin)}.badge-role-head{background:color-mix(in srgb,var(--role-head) 12%,var(--color-surface));color:var(--role-head)}.badge-role-team_lead{background:color-mix(in srgb,var(--role-team-lead) 12%,var(--color-surface));color:var(--role-team-lead)}.badge-role-buyer{background:color-mix(in srgb,var(--role-buyer) 12%,var(--color-surface));color:var(--role-buyer)}.badge-role-assistant{background:color-mix(in srgb,var(--role-assistant) 14%,var(--color-surface));color:var(--role-assistant)}.badge-cloak-on{background:var(--cloak-on-bg);color:var(--cloak-on)}.badge-cloak-off{background:var(--cloak-off-bg);color:var(--cloak-off)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);height:36px;padding:0 var(--space-7);border:1px solid var(--color-border-2);background:var(--color-surface);color:var(--color-text-body);border-radius:var(--radius-xl);font-family:var(--font-sans);font-size:var(--fs-13);font-weight:var(--fw-bold);line-height:1;cursor:pointer;transition:filter var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.btn:hover{background:var(--color-surface-2)}.btn:disabled{opacity:.6;cursor:default}.btn-primary{background:var(--color-primary);color:var(--color-surface);border-color:transparent}.btn-primary:hover{background:var(--color-primary);filter:brightness(.94)}.btn-primary:disabled{opacity:.6;cursor:default;filter:none}.btn-accent{background:var(--color-accent);color:var(--color-surface);border-color:transparent}.btn-accent:hover{background:var(--color-accent);filter:brightness(.94)}.btn-ghost{border-color:transparent;background:transparent;color:var(--color-accent)}.btn-ghost:hover{background:var(--color-accent-soft)}.btn-soft{background:var(--color-accent-soft);color:var(--color-accent);border-color:transparent}.btn-soft:hover{background:var(--color-accent-soft);filter:brightness(.97)}.btn-sm{height:30px;padding:0 var(--space-5);font-size:var(--fs-12-5);border-radius:var(--radius-lg)}.btn-xs{height:26px;padding:0 var(--space-4);font-size:var(--fs-11-5);border-radius:var(--radius-md)}.iconbtn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);color:var(--color-text-faint);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.iconbtn:hover{background:var(--color-border-soft);color:var(--color-text)}.iconbtn-danger{color:var(--color-danger-icon)}.iconbtn-danger:hover{color:var(--color-danger)}.form{display:flex;flex-direction:column;gap:var(--space-6)}label{display:flex;flex-direction:column;gap:5px;font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--color-text-label)}input,select,textarea{font-family:inherit;font-size:var(--fs-12-5);height:38px;padding:0 11px;border:1px solid var(--color-border-2);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text)}textarea{height:auto;min-height:58px;padding:9px 11px;resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:var(--shadow-focus)}input::placeholder,textarea::placeholder{color:var(--color-text-disabled)}input[type=checkbox],input[type=radio]{width:auto;height:auto;accent-color:var(--color-primary)}.inline-form{margin-bottom:var(--space-8)}.search-input{width:100%;height:36px;background:var(--color-surface-2);border:1px solid var(--color-border-input);padding:0 var(--space-6) 0 34px;font-family:var(--font-mono)}.segment{display:inline-flex;gap:var(--space-2);background:var(--color-segment-bg);padding:3px;border-radius:var(--radius-xl)}.segment-item{font-size:var(--fs-11-5);font-weight:var(--fw-bold);padding:5px var(--space-6);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;border:none;background:transparent;font-family:var(--font-sans)}.segment-item.active{background:var(--color-surface);color:var(--color-text-body)}.geo-select{position:relative}.geo-control{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;border:1px solid var(--color-border-2);border-radius:var(--radius-xl);padding:var(--space-3) var(--space-4);background:var(--color-surface)}.geo-control:focus-within{border-color:var(--color-accent);box-shadow:var(--shadow-focus)}.geo-input{border:none;outline:none;box-shadow:none;height:auto;padding:var(--space-1);flex:1;min-width:120px;font-family:var(--font-mono);font-size:var(--fs-12-5);background:transparent}.geo-input:focus{border:none;box-shadow:none}.chip{display:inline-flex;align-items:center;gap:var(--space-2);background:var(--color-surface);border:1px solid var(--cloak-panel-border);color:var(--color-text-body);border-radius:var(--radius-md);padding:3px var(--space-4);font-family:var(--font-mono);font-size:var(--fs-11-5);font-weight:var(--fw-bold)}.chip button{border:none;background:transparent;color:color-mix(in srgb,var(--cloak-on) 55%,var(--color-surface));cursor:pointer;font-size:var(--fs-13);line-height:1;padding:0;height:auto}.chip button:hover{color:var(--cloak-heading)}.geo-dropdown{position:absolute;z-index:20;top:100%;left:0;right:0;margin-top:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-toast);overflow:hidden;max-height:240px;overflow-y:auto}.geo-opt{display:block;width:100%;height:auto;text-align:left;border:none;border-radius:0;background:var(--color-surface);padding:var(--space-4) var(--space-6);cursor:pointer;font-family:inherit;font-size:var(--fs-12-5);color:var(--color-text)}.geo-opt:hover{background:var(--color-accent-soft)}.cloak-box{border:1px solid var(--cloak-panel-border);background:var(--cloak-panel-bg);border-radius:var(--radius-3xl);padding:var(--space-6) var(--space-7);display:flex;flex-direction:column;gap:var(--space-5)}.cloak-box legend{font-size:var(--fs-11);font-weight:var(--fw-extrabold);text-transform:uppercase;letter-spacing:var(--ls-caps);color:var(--cloak-heading);padding:0 var(--space-3)}.row-check{flex-direction:row;align-items:center;gap:var(--space-4);color:var(--color-text-body);font-size:var(--fs-12-5);font-weight:var(--fw-bold)}.row-check input{width:auto}.og-preview{display:flex;flex-direction:column;gap:var(--space-2)}.og-preview img{max-width:100%;max-height:140px;border:1px solid var(--color-border);border-radius:var(--radius-xl);object-fit:cover}.notice{background:var(--color-accent-soft);border:1px solid color-mix(in srgb,var(--color-accent) 25%,var(--color-surface));color:var(--color-accent-hover);padding:var(--space-5) var(--space-6);border-radius:var(--radius-xl);margin-bottom:var(--space-8);font-size:var(--fs-12-5);font-weight:var(--fw-semibold)}.errorbox{background:var(--color-danger-soft);color:var(--color-danger-text);padding:var(--space-4) var(--space-6);border-radius:var(--radius-lg);font-size:var(--fs-12-5);font-weight:var(--fw-semibold)}.error-panel{display:flex;gap:13px;align-items:flex-start;background:var(--color-error-panel-bg);border:1px solid var(--color-error-panel-border);border-radius:var(--radius-3xl);padding:var(--space-8) var(--space-9)}.error-panel-icon{width:32px;height:32px;border-radius:var(--radius-lg);flex-shrink:0;background:var(--color-danger-soft);color:var(--status-burned-text);display:flex;align-items:center;justify-content:center;font-weight:var(--fw-extrabold)}.error-panel-title{font-size:var(--fs-14);font-weight:var(--fw-extrabold);color:var(--status-burned-text)}.warning-box{display:flex;gap:9px;align-items:flex-start;background:var(--color-warning-bg);border:1px solid var(--color-warning-border);border-radius:var(--radius-xl);padding:var(--space-5) var(--space-6);font-size:var(--fs-11-5);color:var(--color-warning-text);line-height:var(--lh-normal)}.empty-state{padding:56px var(--space-10);text-align:center}.empty-state-icon{width:54px;height:54px;border-radius:var(--radius-modal);background:var(--color-segment-bg);color:var(--color-text-disabled);display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-7);font-size:var(--fs-19)}.empty-state-title{font-size:var(--fs-15);font-weight:var(--fw-extrabold);color:var(--color-text);margin-bottom:5px}.empty-state-desc{font-size:var(--fs-12-5);color:var(--color-text-muted);margin-bottom:var(--space-9)}.skeleton{background:linear-gradient(90deg,var(--color-bg) 25%,var(--color-border) 37%,var(--color-bg) 63%);background-size:800px 100%;animation:shimmer var(--transition-shimmer) infinite;border-radius:var(--radius-xs)}.skeleton-icon{width:26px;height:26px;border-radius:var(--radius-md);flex-shrink:0}.skeleton-bar{width:200px;height:13px}.skeleton-bar-lg{width:200px;height:30px;border-radius:var(--radius-md)}.skeleton-badge{width:60px;height:20px;border-radius:var(--radius-sm)}.skeleton-row{display:flex;align-items:center;gap:var(--space-8);padding:13px var(--space-8);border-bottom:1px solid var(--color-row-divider-2)}.avatar{width:30px;height:30px;border-radius:var(--radius-full);flex-shrink:0;background:var(--avatar-1);color:var(--color-surface);display:inline-flex;align-items:center;justify-content:center;font-size:var(--fs-11);font-weight:var(--fw-bold);text-transform:uppercase}.avatar-sm{width:24px;height:24px;font-size:var(--fs-9)}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:var(--space-8);background:radial-gradient(120% 120% at 50% 0%,var(--color-login-grad-a) 0%,var(--color-login-grad-b) 60%,var(--color-login-grad-c) 100%)}.login-card{background:var(--color-surface);border:none;border-radius:var(--radius-modal);box-shadow:var(--shadow-login);padding:var(--space-14) 30px;width:380px;max-width:94vw;display:flex;flex-direction:column;gap:var(--space-6)}.login-card h2{margin:0;font-size:var(--fs-19);font-weight:var(--fw-extrabold);color:var(--color-text)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-modal);display:grid;place-items:center;padding:var(--space-8);z-index:var(--z-modal);overflow:auto}.modal{background:var(--color-surface);border-radius:var(--radius-modal);box-shadow:var(--shadow-modal);width:460px;max-width:92vw;max-height:90vh;overflow:auto;animation:modalIn var(--transition-base)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:var(--space-8) var(--space-10);border-bottom:1px solid var(--color-border-soft)}.modal-head h3{margin:0;font-size:var(--fs-16);font-weight:var(--fw-extrabold);color:var(--color-text)}.modal-body{padding:var(--space-9) var(--space-10)}.modal-actions{display:flex;justify-content:flex-end;gap:9px;padding-top:var(--space-7);margin-top:var(--space-2);border-top:1px solid var(--color-border-soft)}.toast-wrap{position:fixed;bottom:var(--space-9);right:var(--space-9);display:flex;flex-direction:column;gap:9px;z-index:var(--z-toast)}.toast{display:flex;align-items:center;gap:var(--space-4);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-left:3px solid var(--color-text-faint);border-radius:var(--radius-2xl);box-shadow:var(--shadow-toast);padding:var(--space-5) var(--space-8);font-size:var(--fs-12-5);font-weight:var(--fw-semibold);max-width:360px;animation:toastIn var(--transition-toast)}.toast-success{border-left-color:var(--color-primary)}.toast-error{border-left-color:var(--color-danger)}.tree{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);overflow:hidden;padding:var(--space-3) 0}.tree-row{display:flex;align-items:center;gap:var(--space-6);padding:9px var(--space-8);border-bottom:1px solid var(--color-row-divider)}.tree-row:hover{background:var(--color-accent-soft)}.tree-node:last-child>.tree-row:last-child{border-bottom:none}.tree-toggle{width:18px;text-align:center;flex-shrink:0;color:var(--color-text-disabled);font-size:var(--fs-11);cursor:pointer;-webkit-user-select:none;user-select:none}.tree-email{font-family:var(--font-mono);font-size:var(--fs-13);font-weight:var(--fw-semibold);color:var(--color-text);min-width:200px}.tree-role,.tree-status{flex-shrink:0}.tree-balance{font-family:var(--font-mono);font-size:var(--fs-12);font-weight:var(--fw-bold);color:var(--status-active-text);background:var(--color-success-bg);padding:var(--space-1) 9px;border-radius:var(--radius-sm)}.tree-actions{margin-left:auto;display:inline-flex;gap:var(--space-3)}.topbar-hamburger{display:none;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid var(--color-nav-border);background:var(--color-nav-control);color:var(--color-surface);border-radius:var(--radius-md);cursor:pointer;flex-shrink:0}.topbar-hamburger:hover{background:var(--color-nav-tab-active)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:90}@media (max-width: 1024px){.topbar-hamburger{display:inline-flex}.sidebar{position:fixed;top:0;left:0;width:264px;height:100vh;transform:translate(-100%);transition:transform .22s ease;z-index:95}.sidebar.open{transform:translate(0);box-shadow:0 0 40px #00000073}.grid2{grid-template-columns:1fr}.content{padding:var(--space-8) var(--space-6) var(--space-16)}.page-head{flex-wrap:wrap}}
