/*
 * Conversion Hub structured stylesheet
 * 20260614-project-list-sort: capability-based user permissions plus project creation access.
 * Keep selectors aligned with static JS-rendered classes; no legacy wide side nav selectors.
 */

/* ═══════════════════════════════════════════════
   0. Design Tokens
   ═══════════════════════════════════════════════ */
:root{
  --bg:#f6f9ff;--bg-soft:#eef6ff;--surface:#ffffff;--surface-2:#f8fbff;
  --ink:#0f172a;--muted:#64748b;--muted-2:#94a3b8;--line:#dbeafe;--line-2:#e2e8f0;
  --blue:#2563eb;--blue-2:#1d4ed8;--cyan:#06b6d4;--green:#10b981;--amber:#f59e0b;--red:#ef4444;
  --rail-w:64px;--rail-bg:#0b1220;--rail-bg2:#111827;
  --radius:14px;--radius-lg:18px;--radius-xl:24px;
  --shadow:0 12px 34px rgba(15,23,42,.07);--shadow-soft:0 8px 22px rgba(37,99,235,.06);
  --font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"PingFang SC","Microsoft YaHei",sans-serif;
}

/* ═══════════════════════════════════════════════
   1. Reset & Base Typography
   ═══════════════════════════════════════════════ */
*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:var(--font);font-size:13px;color:var(--ink);background:var(--bg)}body{line-height:1.5}button,input,select,textarea{font:inherit}button{border:0;border-radius:12px;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:900;padding:10px 14px;cursor:pointer;box-shadow:0 10px 24px rgba(37,99,235,.18);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}button:hover{transform:translateY(-1px);box-shadow:0 14px 30px rgba(37,99,235,.24)}button:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}input,select,textarea{width:100%;border:1px solid var(--line-2);border-radius:12px;background:#fff;color:var(--ink);padding:10px 12px;outline:none;transition:border .16s ease,box-shadow .16s ease}input:focus,select:focus,textarea:focus{border-color:#93c5fd;box-shadow:0 0 0 3px rgba(37,99,235,.12)}textarea{min-height:86px;resize:vertical}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:#eff6ff;color:#1d4ed8;border-radius:7px;padding:2px 6px}.muted{color:var(--muted)!important}.toolbar-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--blue);font-size:11px;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* ═══════════════════════════════════════════════
   2. Auth Gate & Login Screen
   ═══════════════════════════════════════════════ */
body.auth-locked{background:radial-gradient(circle at 16% 0,rgba(37,99,235,.16),transparent 28%),linear-gradient(135deg,#f8fbff,#eef6ff)}body.auth-locked .app-shell{display:none}body.auth-ready .login-screen{display:none}.login-screen{min-height:100vh;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 18% 4%,rgba(37,99,235,.14),transparent 28%),linear-gradient(135deg,#f8fbff,#eef6ff)}.login-shell-card{width:min(980px,96vw);border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.9);backdrop-filter:blur(18px);box-shadow:0 28px 80px rgba(37,99,235,.16);padding:28px}.login-brand-row{display:flex;gap:12px;align-items:center;margin-bottom:24px}.brand-mark{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;font-weight:950;box-shadow:0 12px 28px rgba(37,99,235,.25)}.login-brand-row strong{display:block;font-size:18px}.login-brand-row span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.login-hero-copy{max-width:720px}.login-hero-copy h1{margin:0 0 10px;font-size:38px;letter-spacing:-.05em}.login-hero-copy p{margin:0;color:#475569;font-size:16px;line-height:1.7}.login-error{margin-top:16px;border:1px solid #fecaca;border-radius:14px;background:#fef2f2;color:#b91c1c;padding:11px 12px;font-weight:900}.login-error[hidden]{display:none}.login-method-grid{display:grid;grid-template-columns:1fr;gap:16px;margin-top:22px;max-width:520px}.login-method-grid.user-login-only{max-width:520px}.login-method-card{border:1px solid var(--line);border-radius:20px;background:#fff;padding:20px;box-shadow:var(--shadow-soft)}.login-method-card.primary{background:linear-gradient(135deg,#fff,#f0f9ff)}.login-method-card h3{margin:0 0 6px;font-size:20px}.auth-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}

/* ═══════════════════════════════════════════════
   3. App Shell & Numeric Rail
   ═══════════════════════════════════════════════ */
.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--rail-w) minmax(0,1fr);background:linear-gradient(135deg,#f8fbff 0,#eef6ff 100%)}.workspace{min-width:0}.nav-rail{width:var(--rail-w);height:100vh;position:sticky;top:0;z-index:20;background:linear-gradient(180deg,var(--rail-bg),#111a2f);color:#e5e7eb;display:flex;flex-direction:column;align-items:center;padding:10px 8px;gap:12px;box-shadow:16px 0 40px rgba(15,23,42,.16)}.rail-brand{display:grid;place-items:center;gap:8px}.rail-logo{width:38px;height:38px;border-radius:12px;font-size:13px}.rail-toggle{display:none;width:34px;height:32px;padding:0;place-items:center;border-radius:10px}.rail-nav{display:flex;flex-direction:column;gap:8px;width:100%;align-items:center}.rail-item{position:relative;width:52px;min-height:56px;border-radius:14px;background:transparent;color:#94a3b8;padding:5px 0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;box-shadow:none;transform:none}.rail-item:hover{background:#172554;color:#e0f2fe}.rail-item.active{background:linear-gradient(180deg,#1d4ed8,#172554);color:#fff;box-shadow:inset 3px 0 0 #67e8f9,0 10px 22px rgba(37,99,235,.3)}.rail-num{width:32px;height:28px;border-radius:10px;background:rgba(148,163,184,.14);display:grid;place-items:center;font-weight:950;font-size:12px;letter-spacing:-.03em}.rail-item.active .rail-num{background:rgba(255,255,255,.16)}.rail-item small{font-size:10px;font-weight:900;line-height:1;color:currentColor}.rail-item:after{content:attr(title);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);background:#0f172a;color:#fff;border:1px solid rgba(148,163,184,.25);border-radius:10px;padding:8px 10px;white-space:nowrap;font-size:12px;font-weight:900;box-shadow:0 14px 34px rgba(15,23,42,.25);opacity:0;pointer-events:none;transition:opacity .16s ease;z-index:50}.rail-item:hover:after{opacity:1}.rail-account{margin-top:auto;display:grid;gap:8px;place-items:center}.account-chip{display:grid;gap:8px;place-items:center}.rail-avatar,.rail-exit{width:38px;height:38px;border-radius:14px;padding:0;display:grid;place-items:center;background:#fff;color:var(--blue-2);border:1px solid rgba(226,232,240,.7);box-shadow:none;font-weight:950}.rail-exit{height:32px;border-radius:11px;background:#172554;color:#bfdbfe}.rail-avatar:hover,.rail-exit:hover{transform:translateY(-1px)}

/* ═══════════════════════════════════════════════
   4. Compact Topbar & Content Layout
   ═══════════════════════════════════════════════ */
.topbar,.compact-topbar{min-height:56px;margin:0;border:0;border-bottom:1px solid var(--line);background:rgba(255,255,255,.94);padding:10px 18px;box-shadow:0 8px 24px rgba(15,23,42,.04);display:flex;align-items:center;justify-content:space-between;gap:12px}.page-line{display:flex;align-items:baseline;gap:10px;min-width:0}.breadcrumb{margin:0;color:var(--blue);font-size:11px;font-weight:900;white-space:nowrap}.topbar h1{margin:0;font-size:20px;letter-spacing:-.03em}.mobile-rail-btn{display:none;width:34px;height:34px;padding:0;place-items:center;border-radius:10px;margin-right:8px}main{padding:18px 20px 36px}.tab{display:none}.tab.active{display:block}.legacy-tab{display:none}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:12px;box-shadow:var(--shadow-soft)}.sub-panel{background:var(--surface-2);border:1px solid var(--line-2);border-radius:12px;padding:12px}.section-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}.section-head h3,.panel h3{margin:0 0 6px}.empty{border:1px dashed #bfdbfe;background:#f8fbff;border-radius:16px;padding:24px;text-align:center;color:var(--muted)}.warning-card{border-color:#fde68a;background:#fffbeb}.access-grid,.workbench-section-grid,.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:12px}.panel,.sub-panel,.access-grid>*,.workbench-section-grid>*,.form-grid>*,.workbench-stats>*{min-width:0}.form-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end}.field label{display:block;margin:0 0 6px;color:#475569;font-weight:900;font-size:12px}

/* ═══════════════════════════════════════════════
   5. Buttons, Badges, Tables, Shared Components
   ═══════════════════════════════════════════════ */
.ghost-btn,.copy-btn{background:#fff;color:var(--blue-2);border:1px solid var(--line);box-shadow:none}.ghost-btn:hover,.copy-btn:hover{background:#eff6ff}.tiny-btn{padding:7px 10px;border-radius:10px;font-size:12px}.badge,.status-pill,.event-status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;background:#eff6ff;color:var(--blue-2);font-weight:900;font-size:12px}.status-pill{background:#ecfdf5;color:#047857}.ok,.event-dot.ok{color:#047857}.bad,.event-dot.bad{color:#b91c1c}.warn,.event-dot.warn{color:#92400e}.gray,.event-dot.gray{color:#64748b}.info{color:var(--blue)}.copy-line{display:flex;gap:8px;align-items:center;min-width:0;max-width:100%}.copy-line>code,.copy-line>pre,.copy-line>input{flex:1 1 auto;min-width:0;max-width:100%;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.copy-line>code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-line>pre{display:block;overflow:auto;overflow-wrap:anywhere;word-break:break-word;margin:0;white-space:pre-wrap}.copy-line>button,.copy-line>.copy-btn{flex:0 0 auto}.url-copy-line>code,.macro-public>code{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.copy-line input{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:12px;background:#fff}table{width:100%;border-collapse:collapse}th,td{padding:10px 12px;border-bottom:1px solid #eef2f7;text-align:left;vertical-align:top}th{background:#f8fbff;color:#475569;font-size:12px;font-weight:950}tr:last-child td{border-bottom:0}.code-box{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;background:#0f172a;color:#e2e8f0;border-radius:12px;padding:12px;overflow:auto}.manual-copy-card{border:1px solid #bfdbfe;background:#eff6ff;border-radius:14px;padding:12px}.toast{position:fixed;right:18px;bottom:18px;z-index:100;border-radius:14px;background:#0f172a;color:#fff;padding:12px 14px;box-shadow:0 20px 48px rgba(15,23,42,.3)}

/* ═══════════════════════════════════════════════
   6. Project List & Workbench
   ═══════════════════════════════════════════════ */
.projects-hero{display:flex;justify-content:space-between;gap:14px;align-items:center;background:#fff;border:1px solid var(--line);padding:14px 16px}.projects-hero h3{margin:0 0 4px;font-size:22px}.project-list-note{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:var(--muted);font-weight:900}.project-list-note span{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line);background:#f8fbff;border-radius:999px;padding:7px 10px}.project-list-note b{color:var(--ink)}.project-list-searchbar{flex:0 1 360px;min-width:240px}.project-list-searchbar input{border-color:#bfdbfe;background:#f8fbff;font-weight:800}.project-list-tools{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 10px}.project-list-tools strong,.project-list-tools span{display:inline-block}.project-list-tools span{color:var(--muted);font-weight:900}.project-list-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.project-list-sort{display:flex;gap:6px;align-items:center;border:1px solid var(--line);background:#fff;border-radius:12px;padding:6px 8px;color:var(--muted);font-size:12px;font-weight:950}.project-list-sort select{width:auto;min-width:112px;border:0;background:transparent;padding:2px 4px;font-weight:900;color:var(--ink)}.project-list-filterbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.project-filter-chip{background:#fff;color:var(--muted);border:1px solid var(--line);box-shadow:none;padding:8px 10px}.project-filter-chip.active{background:#172554;color:#fff}.project-filter-chip b{margin-left:6px}.project-list-shell{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-soft)}.project-list-head,.project-list-row{display:grid;grid-template-columns:minmax(220px,1.4fr) 110px minmax(150px,.9fr) minmax(120px,.75fr) 120px;gap:12px;align-items:center}.project-list-head{padding:10px 14px;background:#f8fbff;border-bottom:1px solid var(--line);color:#475569;font-size:12px;font-weight:950}.project-list-row{padding:12px 14px;border-bottom:1px solid #eef2f7}.project-list-row:last-child{border-bottom:0}.project-list-row:hover{background:#f8fbff}.project-title-cell b{display:block;font-size:15px}.project-title-cell code{display:inline-block;margin-top:4px}.project-created-at{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:900}.project-status-cell{min-width:0}.project-primary-cell code{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-brief-cell{display:flex;gap:8px;flex-wrap:wrap;align-items:center;color:var(--muted);font-weight:900}.project-row-ok,.project-row-warn{border-radius:999px;padding:4px 8px;font-size:12px}.project-row-ok{background:#ecfdf5;color:#047857}.project-row-warn{background:#fef2f2;color:#b91c1c}.project-row-actions{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}.project-row-actions button{padding:8px 12px;border-radius:10px}.project-empty-shell{max-width:980px}.detail-back{margin-bottom:10px}.workbench-body{min-width:0}.breadcrumb-nav{display:flex;align-items:center;gap:7px;margin:0 0 12px;color:var(--muted);font-size:12px;font-weight:950;min-width:0}.bc-link{background:transparent;color:var(--blue);border:0;box-shadow:none;padding:0;min-height:0;font:inherit}.bc-link:hover{text-decoration:underline;background:transparent;transform:none}.bc-sep{color:#94a3b8}.bc-current{min-width:0;max-width:360px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-detail-home,.project-sub-page{max-width:1080px;display:grid;gap:12px}.project-identity{display:flex;justify-content:space-between;gap:18px;align-items:center}.project-identity h2{margin:4px 0 8px;font-size:26px;letter-spacing:-.04em}.project-identity-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.project-identity-meta span{border:1px solid var(--line);background:#f8fbff;border-radius:999px;padding:5px 9px;color:#475569;font-weight:900}.project-health-line{min-width:220px;border:1px solid var(--line);border-radius:16px;background:#f8fbff;padding:12px;text-align:right}.project-health-line strong,.project-health-line span{display:block}.project-health-line span{margin-top:4px;color:var(--muted);font-size:12px}.project-health-line.ok{border-color:#bbf7d0;background:#ecfdf5;color:#047857}.project-health-line.bad{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.project-health-line.warn{border-color:#fde68a;background:#fffbeb;color:#92400e}.project-nav-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.project-nav-card{min-height:118px;text-align:left;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:16px;box-shadow:var(--shadow-soft);display:grid;align-content:start;gap:8px;transform:none}.project-nav-card:hover{border-color:#bfdbfe;background:#f8fbff;box-shadow:0 12px 30px rgba(37,99,235,.12)}.project-nav-card strong{font-size:16px}.project-nav-card small{color:var(--muted);line-height:1.45}.nav-card-icon{width:36px;height:30px;border-radius:10px;background:#eff6ff;color:var(--blue-2);display:grid;place-items:center;font-weight:950;font-size:12px}.project-group-summary-panel{display:flex;justify-content:space-between;gap:14px;align-items:center}.project-group-summary-panel h3{margin:0 0 4px}.project-group-tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}.project-group-tags span,.project-group-empty{display:inline-flex;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950}.project-group-empty{border-color:#fde68a;background:#fffbeb;color:#92400e}.project-group-settings{display:grid;gap:12px}.project-group-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px}.project-group-tile{display:flex;gap:10px;align-items:flex-start;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;padding:10px;min-width:0}.project-group-tile.is-selected{border-color:#93c5fd;background:#eff6ff;box-shadow:0 8px 18px rgba(37,99,235,.08)}.project-group-tile input{margin-top:3px;flex:0 0 auto;width:auto;min-width:16px;max-width:16px;accent-color:var(--blue)}.project-group-tile span{min-width:0}.project-group-tile b,.project-group-tile small{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-group-tile small{color:var(--muted);margin-top:3px}.project-quick-actions{display:flex;justify-content:space-between;gap:14px;align-items:center}.workbench-copy-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.project-ad-link-panel{display:grid;gap:14px}.project-link-header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.project-link-header h3{margin:0 0 8px;font-size:22px}.project-link-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.project-ad-copy-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:14px;align-items:start}.project-extra-copy{justify-content:flex-start;margin-top:10px}.project-link-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:10px}.project-link-meta div{border:1px solid #eef2f7;border-radius:12px;background:#f8fbff;padding:10px;min-width:0}.project-link-meta span{display:block;color:var(--muted);font-size:12px;font-weight:900}.project-link-meta b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-link{display:flex;justify-content:space-between;align-items:center}.project-sub-head{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;box-shadow:var(--shadow-soft)}.project-sub-head h2{margin:3px 0 0;font-size:22px}.project-sub-stack,.project-config-stack{display:grid;gap:12px}.workbench-link-stack{display:grid;gap:12px}.workbench-section-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:12px}.project-link-picks{display:grid;gap:8px;margin-top:10px}.project-link-pick{display:flex;justify-content:space-between;gap:8px;align-items:center;background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:none;text-align:left}.project-link-pick.active{border-color:#bbf7d0;background:#ecfdf5}.project-link-pick b,.project-link-pick span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-toolbar,.project-toolbar-main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.project-toolbar-actions,.project-toolbar-left{display:flex;gap:8px;flex-wrap:wrap}.project-quickstart,.access-card,.project-example,.logic-card,.config-panel,.mini-link{border:1px solid var(--line);border-radius:14px;background:#fff;padding:14px}.sub-tabs{display:flex;gap:8px;overflow:auto;margin-bottom:12px}.sub-tab{background:#fff;color:var(--muted);border:1px solid var(--line);box-shadow:none}.sub-tab.active{background:#172554;color:#fff}

/* ═══════════════════════════════════════════════
   7. Links, Landing Pages, Macro Link Kits
   ═══════════════════════════════════════════════ */
.link-builder,.preview-card,.macro-preview,.macro-result,.ad-link-kit,.third-monitor-panel,.link-overview-shell,.landing-link-card,.link-funnel-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;box-shadow:var(--shadow-soft)}.preview-phone{border:10px solid #0f172a;border-radius:28px;overflow:hidden;background:#fff;min-height:280px}.preview-link{padding:16px}.preview-img{width:100%;max-height:360px;object-fit:cover;border-radius:12px;background:#e2e8f0}.upload-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.auto-event-grid,.landing-link-grid,.link-funnel-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.monitor-link-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:10px}.monitor-link-grid>*{min-width:0}.landing-link-cards{display:grid;gap:12px}.landing-link-head,.link-health-head,.macro-insight-head,.event-card-main,.delivery-card-main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.landing-link-actions,.monitor-quick-actions,.macro-actions{display:flex;gap:8px;flex-wrap:wrap}.link-meta-row{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-size:12px}.link-health-dot{width:10px;height:10px;border-radius:999px;background:var(--muted-2);display:inline-block}.link-health-dot.ok{background:var(--green)}.link-health-dot.bad{background:var(--red)}.link-health-dot.warn{background:var(--amber)}.link-health-subtle{color:var(--muted);font-size:12px}.link-overview-stats,.link-overview-split,.link-health-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.link-overview-hero{display:flex;justify-content:space-between;gap:12px}.link-overview-failures{margin-top:10px}.link-filter-row,.link-filter-chips{display:flex;gap:8px;flex-wrap:wrap}.link-filter-chip{background:#fff;color:var(--muted);border:1px solid var(--line);box-shadow:none}.link-filter-chip.active{background:#172554;color:#fff}.link-funnel-bars{display:grid;gap:7px}.link-funnel-bars div{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.bar-click,.bar-event,.bar-ok,.bar-fail{display:block;height:100%;border-radius:999px}.bar-click{background:var(--blue)}.bar-event{background:var(--cyan)}.bar-ok{background:var(--green)}.bar-fail{background:var(--red)}.success-rate{font-size:22px;font-weight:950}.monitor-link-row{display:grid;grid-template-columns:minmax(120px,180px) minmax(0,1fr);gap:10px;align-items:center;border:1px solid #eef2f7;border-radius:12px;padding:10px;min-width:0}.monitor-link-meta{min-width:0}.monitor-link-meta b,.monitor-link-meta span,.monitor-link-meta em{display:block}.monitor-link-meta span,.monitor-link-meta em{color:var(--muted);font-size:12px}.monitor-link-meta em{font-style:normal}.monitor-link-note,.macro-tip{color:var(--muted);font-size:12px}.macro-primary{border-color:#bfdbfe;background:#eff6ff}.macro-public{border-color:#bbf7d0;background:#ecfdf5}.macro-pill{display:inline-flex;border-radius:999px;padding:4px 8px;background:#eff6ff;color:var(--blue-2);font-weight:900;font-size:12px}

/* Project page owns the only current link; edit page is the only link subpage. */
.project-link-list-stack,.link-detail-stack,.link-edit-stack{display:grid;grid-template-columns:1fr;gap:12px;max-width:860px;width:100%}.link-edit-stack{max-width:760px}.link-page-header,.link-edit-intro,.link-detail-identity{display:flex;justify-content:space-between;gap:14px;align-items:center}.link-page-header h3,.link-edit-intro h3,.link-detail-identity h3{margin:2px 0 4px;font-size:20px}.project-link-list{display:grid;grid-template-columns:1fr;gap:10px}.project-link-row{display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(170px,.9fr) minmax(170px,.8fr) auto;gap:12px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:13px 14px;box-shadow:var(--shadow-soft);min-width:0}.project-link-main,.project-link-state,.project-link-metrics,.project-link-actions{min-width:0}.project-link-main{display:grid;gap:4px}.project-link-main code,.project-link-main b,.project-link-main span{min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-link-main b{font-size:15px}.project-link-main span{color:var(--muted);font-size:12px}.project-link-state,.project-link-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.project-link-metrics{display:flex;gap:8px;flex-wrap:wrap;color:var(--muted);font-weight:900}.project-link-metrics span{border:1px solid #eef2f7;border-radius:999px;background:#f8fbff;padding:5px 8px}.link-health-pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;background:#f8fbff;padding:5px 9px;font-weight:900;font-size:12px;color:#475569}.link-health-pill.ok{border-color:#bbf7d0;background:#ecfdf5;color:#047857}.link-health-pill.bad{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.link-health-pill.warn{border-color:#fde68a;background:#fffbeb;color:#92400e}.link-detail-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.link-detail-copy,.link-detail-funnel,.link-detail-meta{min-width:0}.link-detail-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:10px}.link-detail-meta div{border:1px solid #eef2f7;border-radius:12px;background:#f8fbff;padding:10px;min-width:0}.link-detail-meta span{display:block;color:var(--muted);font-size:12px;font-weight:900}.link-detail-meta b{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-detail-advice{margin:10px 0 0}.link-edit-stack .link-builder{margin:0;display:block}.link-edit-stack .preview-card{margin-top:12px}.link-edit-stack .form-grid,.link-edit-stack .auto-event-grid{grid-template-columns:1fr}.link-edit-stack .preview-phone{min-height:220px}.project-sub-page .workbench-section-grid.link-edit-col{grid-template-columns:1fr}

/* Link edit workbench: grouped form sections + dedicated preview column. */
.link-edit-stack{max-width:1180px}.link-edit-workbench{display:grid;gap:14px;padding:0;border:0;background:transparent;box-shadow:none}.link-edit-topbar,.link-edit-section,.link-edit-save{border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;box-shadow:var(--shadow-soft);min-width:0}.link-edit-topbar{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.link-edit-topbar h3{margin:3px 0 4px;font-size:22px}.link-edit-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.link-edit-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:14px;align-items:start}.link-edit-main{display:grid;gap:12px;min-width:0}.link-edit-section{display:grid;gap:12px}.link-edit-section-head{display:flex;gap:10px;align-items:flex-start}.link-edit-section-head>span,.link-edit-fold summary>span{width:32px;height:28px;border-radius:10px;background:#eff6ff;color:var(--blue-2);display:grid;place-items:center;font-weight:950;font-size:12px;flex:0 0 auto}.link-edit-section h4{margin:0 0 3px;font-size:17px}.link-edit-section p{margin:0}.link-edit-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.link-edit-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.link-edit-fold summary{display:flex;gap:10px;align-items:flex-start;cursor:pointer;list-style:none}.link-edit-fold summary::-webkit-details-marker{display:none}.link-edit-fold summary b{display:block;font-size:17px}.link-edit-fold summary small{display:block;color:var(--muted);margin-top:3px;line-height:1.45}.link-edit-switches{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.link-edit-switches label{display:flex;gap:8px;align-items:center;border:1px solid #e2e8f0;background:#f8fafc;border-radius:12px;padding:9px;font-weight:900;color:#475569;min-width:0}.link-edit-switches input,.upload-row input[type=file]{width:auto;max-width:100%;min-width:16px;accent-color:var(--blue)}.link-edit-save{display:flex;justify-content:space-between;gap:12px;align-items:center}.link-edit-save b,.link-edit-save span{display:block}.link-edit-save span{color:var(--muted);font-size:12px;margin-top:3px}.link-edit-preview{position:sticky;top:86px;display:grid;gap:10px;max-height:calc(100vh - 110px);overflow:auto}.link-edit-preview .preview-phone{min-height:300px}.link-edit-stack .preview-card{margin-top:0}.link-edit-stack .link-edit-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.link-edit-stack .link-edit-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.link-edit-stack .auto-event-grid.link-edit-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}

.domain-permission-panel{grid-column:1/-1;border:1px solid #dcfce7;background:#f7fee7;border-radius:14px;padding:12px;display:grid;gap:10px}.domain-permission-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.domain-permission-head h4{margin:0 0 3px}.domain-permission-head p{margin:0}.domain-permission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));gap:9px}.domain-permission-tile{display:flex;gap:9px;align-items:flex-start;border:1px solid #bbf7d0;border-radius:12px;background:#fff;padding:9px;min-width:0}.domain-permission-tile.is-selected{border-color:#22c55e;background:#ecfdf5;box-shadow:0 8px 18px rgba(16,185,129,.08)}.domain-permission-tile input{margin-top:3px;flex:0 0 auto;width:auto;min-width:16px;max-width:16px;accent-color:var(--green)}.domain-permission-tile span{min-width:0}.domain-permission-tile b,.domain-permission-tile small{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.domain-permission-tile small{color:var(--muted);margin-top:3px}.domain-group-tags span{border-color:#bbf7d0;background:#f0fdf4;color:#047857}.domain-flow-steps{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.domain-flow-steps span{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.domain-check-summary{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}.domain-check-summary small{width:100%}.domain-dns-grid small{display:block;margin-top:6px;color:#64748b;font-size:12px;line-height:1.45}.link-edit-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.hotspot-editor{display:grid;gap:10px}.hotspot-config-row{border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;padding:12px;display:grid;gap:10px}.hotspot-row-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.hotspot-row-head label,.inline-check{display:flex;gap:8px;align-items:center;font-weight:900;color:#475569}.hotspot-row-head input,.inline-check input{width:auto;min-width:16px;max-width:16px;accent-color:var(--blue)}.hotspot-main-grid{align-items:end}.hotspot-coordinate-strip{display:grid;grid-template-columns:auto repeat(4,minmax(66px,88px)) minmax(150px,1fr);gap:8px;align-items:end;border:1px solid #dbeafe;background:#fff;border-radius:12px;padding:9px}.hotspot-coordinate-strip strong{align-self:center;color:#475569;font-size:12px;white-space:nowrap}.hotspot-coordinate-strip label{display:grid;gap:3px;min-width:0}.hotspot-coordinate-strip label span{color:#64748b;font-size:11px;font-weight:950}.hotspot-coordinate-strip input{height:34px;border-radius:10px;padding:6px 8px;text-align:right;font-weight:900}.hotspot-coordinate-strip small{align-self:center;color:#64748b;font-size:12px;line-height:1.35}.preview-phone{text-align:center}.preview-image-frame{position:relative;display:inline-block;max-width:100%;line-height:0;vertical-align:top;touch-action:none;user-select:none}.preview-image-frame .preview-img{display:block;width:auto;max-width:100%;max-height:min(62vh,420px);object-fit:contain;border-radius:12px}.preview-img-placeholder{width:min(300px,100%);aspect-ratio:9/16;display:grid!important;place-items:center;line-height:1.2;color:#64748b;font-weight:950}.preview-fit-cover:not(.has-preview-hotspots) .preview-img{width:100%;object-fit:cover}.preview-hotspot{position:absolute;border:2px solid rgba(37,99,235,.9);background:rgba(37,99,235,.18);border-radius:9px;box-shadow:0 0 0 1px rgba(255,255,255,.9),0 8px 20px rgba(37,99,235,.18);cursor:move;pointer-events:auto;line-height:1;z-index:3}.preview-hotspot.is-dragging{background:rgba(16,185,129,.22);border-color:#10b981}.preview-hotspot em{position:absolute;left:4px;top:4px;max-width:calc(100% - 8px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:rgba(15,23,42,.72);color:#fff;border-radius:999px;padding:2px 5px;font-style:normal;font-size:11px;font-weight:950}.preview-hotspot-resize{position:absolute;right:-6px;bottom:-6px;width:15px;height:15px;border-radius:50%;background:#fff;border:2px solid #2563eb;cursor:nwse-resize;box-shadow:0 2px 8px rgba(15,23,42,.22)}

/* ═══════════════════════════════════════════════
   8. Business Events, Mapping, Config
   ═══════════════════════════════════════════════ */
.business-event-layout{display:grid;grid-template-columns:minmax(280px,360px) 1fr;gap:14px}.business-event-editor,.mapping-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px}.be-checks{display:grid;gap:8px}.mapping-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.mapping-card-header,.mapping-head{display:flex;justify-content:space-between;gap:8px}.mapping-card-body{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.mapping-arrow,.arrow{color:var(--blue);font-weight:950}.mapping-card-footer,.mapping-actions{display:flex;gap:8px;flex-wrap:wrap}.mapping-note{font-size:12px;color:var(--muted)}.official-events-fold{border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px}.official-events-search{margin:10px 0}.official-events-list{display:grid;gap:6px;max-height:320px;overflow:auto}.official-event-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:8px;border:1px solid #eef2f7;border-radius:10px}.official-more{color:var(--muted);font-size:12px}.config-switches{display:grid;gap:10px}.switch-card{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px}.auto-event-field{border:1px solid var(--line);border-radius:12px;padding:10px;background:#f8fbff}.event-code-hint{font-size:12px;color:var(--muted)}

/* ═══════════════════════════════════════════════
   9. Events, Deliveries & Activity Timeline
   ═══════════════════════════════════════════════ */
.events-human-shell,.delivery-human-shell,.activity-shell{display:grid;gap:12px}.events-hero,.delivery-hero,.activity-command-panel{background:linear-gradient(135deg,#fff,#f8fbff);border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:16px;padding:16px}.events-summary,.activity-metrics,.macro-hero-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}.events-summary div,.activity-metrics div,.macro-hero-metrics div{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px}.events-toolbar,.event-filters,.activity-filters,.activity-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.event-filter{background:#fff;color:var(--muted);border:1px solid var(--line);box-shadow:none}.event-filter.active{background:#172554;color:#fff}.event-filter b{margin-left:6px}.event-search,.link-search-box{max-width:360px}.event-timeline,.delivery-timeline,.activity-timeline{display:grid;gap:12px}.event-card,.delivery-card,.activity-card,.click-card{background:#fff;border:1px solid var(--line);border-left:5px solid #94a3b8;border-radius:16px;padding:14px;box-shadow:var(--shadow-soft)}.event-card.ok,.delivery-card.ok,.activity-card-success{border-left-color:var(--green)}.event-card.bad,.delivery-card.bad,.activity-card-needs{border-left-color:var(--red)}.event-card.warn,.delivery-card.warn,.activity-card-pending{border-left-color:var(--amber)}.event-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.event-dot{width:24px;height:24px;display:grid;place-items:center;border-radius:8px;background:#f1f5f9;font-weight:950}.event-facts,.activity-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px;margin-top:10px}.event-facts div,.activity-facts div{border:1px solid #eef2f7;border-radius:10px;padding:8px;background:#f8fafc}.event-facts span,.activity-facts span{display:block;color:var(--muted);font-size:12px;font-weight:900}.event-tech,.click-tech{margin-top:10px;border-top:1px dashed #dbeafe;padding-top:10px}.event-delivery-mini,.delivery-suggestion,.activity-delivery-line{border:1px solid #eef2f7;background:#f8fafc;border-radius:12px;padding:10px;margin-top:10px}.event-delivery-skipped{background:#f8fafc;color:var(--muted)}.delivery-platform,.activity-source{background:#f1f5f9;color:#475569;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:900}.delivery-actions,.activity-card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.event-amount,.event-next{font-weight:900}.activity-command-head,.activity-card-main{display:flex;justify-content:space-between;gap:12px}.activity-command-status{border:1px solid var(--line);border-radius:14px;padding:10px;background:#fff;text-align:center}.activity-orphans summary{cursor:pointer;font-weight:900;color:#475569}

/* ═══════════════════════════════════════════════
   10. Click Macro Insight & Monitor Funnel
   ═══════════════════════════════════════════════ */
.macro-insight,.macro-diagnostics,.monitor-filter-panel,.monitor-funnel-panel,.monitor-issue-list,.dimension-block,.trace-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;box-shadow:var(--shadow-soft)}.macro-status-row,.macro-grid,.dimension-grid,.trace-list,.trace-chips,.monitor-filter-row,.monitor-stage,.stage-metrics,.monitor-quality-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.macro-field{border:1px solid #eef2f7;border-radius:12px;padding:10px;background:#f8fbff}.macro-field span,.macro-group span{display:block;color:var(--muted);font-size:12px;font-weight:900}.macro-field b,.macro-group b{display:block;margin-top:3px}.macro-group{border:1px solid var(--line);border-radius:14px;padding:12px}.click-card{border-left-color:var(--blue)}.monitor-filter-panel{margin-bottom:12px}.monitor-funnel-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.monitor-stage{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px}.stage-top{display:flex;justify-content:space-between;gap:8px}.funnel-arrow{text-align:center;color:var(--muted);font-weight:950}.monitor-quality{border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px}.monitor-issue{border-left:4px solid var(--amber);background:#fffbeb;border-radius:12px;padding:10px}.trace-chip{display:inline-flex;border:1px solid var(--line);background:#f8fbff;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:900}.trace-card{display:grid;gap:8px}

/* ═══════════════════════════════════════════════
   11. Users & Permissions
   ═══════════════════════════════════════════════ */
.users-shell{display:grid;gap:14px}.permission-shell{max-width:1180px}.login-panel,.role-card,.group-card,.permission-stat,.user-management-panel,.permission-groups-panel,.permission-group-card{border:1px solid var(--line);border-radius:16px;background:#fff;padding:14px;box-shadow:var(--shadow-soft);min-width:0}.login-state{border:1px solid var(--line);background:#f8fbff;border-radius:14px;padding:12px;min-width:170px}.login-state b,.login-state span{display:block}.login-state.ok{border-color:#bbf7d0;background:#ecfdf5}.permission-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.permission-stat span{display:block;color:var(--muted);font-size:12px;font-weight:950}.permission-stat b{display:block;margin-top:4px;font-size:20px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-stat small{display:block;margin-top:4px;color:var(--muted);line-height:1.45}.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px}.role-card b{font-size:18px}.role-card p{color:var(--muted);line-height:1.55}.permission-count{display:inline-flex;align-items:center;border:1px solid var(--line);background:#f8fbff;border-radius:999px;padding:6px 10px;color:var(--muted);font-size:12px;font-weight:950}.user-create-drawer{border:1px dashed #cbd5e1;border-radius:14px;background:#f8fbff;padding:11px;margin:12px 0}.user-create-drawer summary{cursor:pointer;font-weight:950;color:var(--blue);display:flex;justify-content:space-between;gap:12px;align-items:center}.user-create-drawer summary small{color:var(--muted);font-weight:800}.user-create-form{margin-top:12px}.user-directory{margin-top:12px;border:1px solid #e0f2fe;border-radius:14px;overflow:hidden;background:#fff}.user-table-head,.user-row{display:grid;grid-template-columns:minmax(180px,1.2fr) minmax(160px,1fr) 110px 160px;gap:12px;align-items:center}.user-table-head{padding:10px 12px;background:#f8fbff;color:#475569;font-size:12px;font-weight:950;border-bottom:1px solid #e0f2fe}.user-list{display:grid}.user-row{padding:12px;border-bottom:1px solid #eef2f7;background:#fff}.user-row:last-child{border-bottom:0}.user-row b,.user-row span,.user-row small{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-row span,.user-row small{color:var(--muted)}.user-main-cell,.user-team-cell,.user-status-cell,.user-action-cell{min-width:0}.user-action-cell{display:flex;justify-content:flex-end;color:var(--muted);font-size:12px}.user-edit-panel{grid-column:1/-1;margin-top:4px;border-top:1px dashed var(--line);padding-top:10px;min-width:0}.user-edit-panel summary{cursor:pointer;font-weight:900;color:var(--blue)}.user-edit-panel .form-grid{margin-top:10px;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr))}.permission-groups-panel{display:grid;gap:12px}.permission-group-stack{display:grid;grid-template-columns:1fr;gap:12px}.permission-group-card{display:grid;gap:12px}.permission-group-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.permission-group-head h4{margin:2px 0 4px;font-size:18px}.permission-group-count{border:1px solid #dbeafe;background:#eff6ff;border-radius:14px;padding:10px 12px;text-align:right;min-width:110px}.permission-group-count b{font-size:22px;color:var(--blue-2)}.permission-group-count span{display:block;color:var(--muted);font-size:12px;font-weight:900}.permission-project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px}.permission-project-tile{display:flex;gap:10px;align-items:flex-start;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;padding:10px;min-width:0}.permission-project-tile.is-selected{border-color:#93c5fd;background:#eff6ff;box-shadow:0 8px 18px rgba(37,99,235,.08)}.permission-project-tile input{margin-top:3px;flex:0 0 auto;width:auto;min-width:16px;max-width:16px;accent-color:var(--blue)}.permission-project-tile span{min-width:0}.permission-project-tile b,.permission-project-tile small{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-project-tile small{color:var(--muted);margin-top:3px}.permission-group-actions{display:flex;justify-content:flex-end}.permission-access-block{border:1px solid #e5e7eb;border-radius:14px;background:#fff;padding:12px;display:grid;gap:10px}.permission-access-block h4{margin:0 0 2px}.permission-access-block p{margin:0}.permission-domain-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));gap:10px}.permission-domain-tile{display:flex;gap:10px;align-items:flex-start;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;padding:10px;min-width:0}.permission-domain-tile.is-selected{border-color:#86efac;background:#f0fdf4;box-shadow:0 8px 18px rgba(16,185,129,.08)}.permission-domain-tile input{margin-top:3px;flex:0 0 auto;width:auto;min-width:16px;max-width:16px;accent-color:var(--green)}.permission-domain-tile span{min-width:0}.permission-domain-tile b,.permission-domain-tile small{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.permission-domain-tile small{color:var(--muted);margin-top:3px}.groups-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:12px}.group-card{min-width:0}.project-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:8px;margin:10px 0}.project-checks input{width:auto;min-width:16px;max-width:16px;accent-color:var(--blue)}.project-checks label{display:block;border:1px solid #e2e8f0;border-radius:12px;padding:8px;background:#f8fafc;min-width:0}.project-checks small{display:block;color:var(--muted);margin-left:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* ═══════════════════════════════════════════════
   12. Docs & Misc Pages
   ═══════════════════════════════════════════════ */
.doc-layout{display:grid;grid-template-columns:minmax(180px,260px) 1fr;gap:14px}.doc-menu,.doc-content{background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px}.doc-menu{position:sticky;top:72px;align-self:start}.doc-menu a{display:block;border-radius:10px;padding:8px 10px;color:#475569;font-weight:900}.doc-menu a:hover{background:#eff6ff;text-decoration:none}.doc-content h2,.doc-content h3{margin-top:0}.doc-content pre{background:#0f172a;color:#e2e8f0;border-radius:12px;padding:12px;overflow:auto}.macro-result,.macro-preview{display:grid;gap:10px}.success-rate.ok{color:var(--green)}.success-rate.bad{color:var(--red)}.success-rate.warn{color:var(--amber)}.compact{font-size:12px}.link-health-jump{display:flex;gap:8px;flex-wrap:wrap}.preview-card h3,.link-builder h3{margin-top:0}

/* ═══════════════════════════════════════════════
   13. Long Content Safety
   ═══════════════════════════════════════════════ */
.landing-link-card,.landing-link-card>*,.landing-link-head>*,.landing-link-grid>*,.link-overview-shell,.link-overview-shell>*,.ad-link-kit,.macro-result,.macro-preview,.event-card,.delivery-card,.activity-card,.click-card,.trace-card,.trace-card>*,.monitor-funnel-panel,.monitor-quality,.dimension-block{min-width:0;max-width:100%}.landing-link-head>div:first-child,.link-health-head>div:first-child,.macro-insight-head>div:first-child,.activity-card-main>div:first-child,.delivery-card-main>div:first-child,.event-card-main>div:first-child{min-width:0}.landing-link-head .toolbar-kicker,.landing-link-head h3,.landing-link-head p,.project-primary-cell code,.event-title strong,.activity-source,.delivery-platform{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing-link-head .form-row{flex:0 0 auto}.landing-link-grid{grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr))}.link-meta-row{min-width:0}.link-meta-row>*{min-width:0;max-width:100%;flex:1 1 180px}.link-meta-row b{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-facts>*,.activity-facts>*,.event-delivery-mini,.activity-delivery-line,.delivery-suggestion{min-width:0}.event-facts b,.activity-facts b,.event-delivery-mini b,.event-delivery-mini span,.activity-delivery-line b,.activity-delivery-line span,.delivery-suggestion b,.delivery-suggestion span{display:block;min-width:0;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.trace-list{display:grid;grid-template-columns:1fr;gap:10px}.trace-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.trace-card b,.trace-card span{display:block;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trace-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;min-width:0}.trace-chip{max-width:100%;white-space:nowrap}.dimension-block em,.macro-field b,.macro-group b,.monitor-stage p,.monitor-issue span{overflow-wrap:anywhere;word-break:break-word}

/* ═══════════════════════════════════════════════
   14. Responsive Breakpoints
   ═══════════════════════════════════════════════ */
@media(max-width:980px){.project-list-tools{display:grid}.project-list-actions,.project-list-filterbar{justify-content:flex-start}.project-group-summary-panel{display:block}.project-group-summary-panel button{margin-top:10px}.project-ad-copy-grid{grid-template-columns:1fr}.project-link-header,.empty-link{display:block}.project-link-actions{justify-content:flex-start;margin-top:10px}.link-edit-layout{grid-template-columns:1fr}.link-edit-preview{position:static;max-height:none}.link-edit-stack .link-edit-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.link-edit-topbar,.link-edit-save{display:block}.link-edit-actions{justify-content:flex-start;margin-top:10px}.link-edit-save button{margin-top:10px}.permission-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.user-table-head{display:none}.user-row{grid-template-columns:1fr}.user-action-cell{justify-content:flex-start}.permission-group-head{display:block}.permission-group-count{text-align:left;margin-top:10px}.project-link-row{grid-template-columns:1fr}.link-page-header,.link-edit-intro,.link-detail-identity{display:block}.link-detail-actions{justify-content:flex-start;margin-top:10px}.project-link-actions button{flex:1 1 auto}.app-shell{grid-template-columns:1fr}.nav-rail{position:fixed;left:calc(-1 * var(--rail-w));transition:left .2s ease}.nav-rail.open{left:0}.mobile-rail-btn{display:grid}.rail-toggle{display:grid}.compact-topbar{padding-left:12px}.page-line{display:block}.breadcrumb{display:block;margin-bottom:2px}main{padding:14px}.projects-hero{align-items:flex-start}.project-list-head{display:none}.project-list-row{grid-template-columns:1fr;gap:8px}.project-row-actions{justify-content:flex-start}.project-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-identity,.project-quick-actions,.project-sub-head,.project-toolbar,.activity-command-head,.activity-card-main{display:block}.workbench-copy-actions{justify-content:flex-start;margin-top:10px}.business-event-layout,.doc-layout{grid-template-columns:1fr}.doc-menu{position:static}.monitor-link-row{grid-template-columns:1fr}.monitor-link-grid{grid-template-columns:1fr}.user-row{grid-template-columns:1fr}.login-method-grid{grid-template-columns:1fr}.login-shell-card{padding:20px}.login-hero-copy h1{font-size:30px}}
@media(max-width:620px){.project-list-searchbar{min-width:0}.project-list-actions{display:grid}.project-list-sort{justify-content:space-between}.project-list-sort select{min-width:160px}.project-group-summary-panel button{width:100%}.hotspot-coordinate-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.hotspot-coordinate-strip strong,.hotspot-coordinate-strip small{grid-column:1/-1}.link-edit-stack .link-edit-grid-2,.link-edit-stack .link-edit-grid-3,.link-edit-stack .link-edit-grid-4,.link-edit-stack .auto-event-grid.link-edit-grid-2{grid-template-columns:1fr}.link-edit-actions button,.link-edit-save button{width:100%}.link-edit-switches{grid-template-columns:1fr}.link-edit-preview .preview-phone{min-height:240px}.permission-overview{grid-template-columns:1fr}.user-create-drawer summary{display:block}.permission-project-grid,.permission-domain-grid{grid-template-columns:1fr}.permission-group-actions .copy-btn{width:100%}.project-link-list-stack,.link-detail-stack,.link-edit-stack{max-width:none}.project-link-row{padding:12px}.project-link-actions button,.link-detail-actions button,.link-detail-actions .copy-btn,.macro-actions .copy-btn{width:100%}.link-funnel-metrics{grid-template-columns:1fr}.copy-line{display:grid;grid-template-columns:1fr}.copy-line>button,.copy-line>.copy-btn{width:100%}main{padding:12px}.topbar h1{font-size:18px}.projects-hero{display:block}.project-list-note{margin-top:10px;align-items:flex-start}.project-list-note button{width:100%}.project-row-actions button{flex:1 1 calc(50% - 8px)}.project-nav-grid{grid-template-columns:1fr}.project-health-line{text-align:left;margin-top:10px}.events-summary,.activity-metrics,.macro-hero-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-card-actions .copy-btn,.landing-link-actions .copy-btn{width:100%}.form-row{grid-template-columns:1fr}.landing-link-head,.link-health-head,.macro-insight-head,.event-card-main,.delivery-card-main{display:block}}

/* Custom domains */
.domain-management-shell{max-width:1180px;display:grid;gap:12px}.domain-management-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;background:linear-gradient(135deg,#fff,#f8fbff)}.domain-management-hero h3{margin:4px 0 6px;font-size:24px}.domain-metrics{display:grid;grid-template-columns:repeat(3,minmax(96px,1fr));gap:10px;min-width:330px}.domain-metrics div{border:1px solid var(--line);border-radius:14px;background:#fff;padding:10px}.domain-metrics span{display:block;color:var(--muted);font-size:12px;font-weight:950}.domain-metrics b{display:block;margin-top:4px;font-size:22px}.project-domain-selector-panel{display:grid;gap:10px}.domain-selector-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.domain-pill{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;background:#eef2f7;color:var(--muted);display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.domain-pill.ok{background:#dcfce7;color:#166534}.domain-pill.warn{background:#fef3c7;color:#92400e}.domain-pill.bad{background:#fee2e2;color:#991b1b}.domain-bind-panel{display:grid;gap:10px}.domain-bind-row{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:10px;align-items:center}.domain-filter-row{display:grid;grid-template-columns:auto minmax(180px,260px);gap:8px;align-items:center}.domain-filter-row label{color:var(--muted);font-weight:950;font-size:12px}.domain-management-list{display:grid;gap:10px}.domain-management-card{display:grid;grid-template-columns:minmax(220px,1fr) minmax(240px,.9fr) minmax(220px,auto);gap:12px;align-items:start;border:1px solid #e5e7eb;border-radius:14px;background:#fff;padding:12px}.domain-main-cell,.domain-status-cell{min-width:0}.domain-main-cell b{display:block;font-size:16px;overflow-wrap:anywhere}.domain-main-cell code{display:inline-block;margin-top:6px;max-width:100%;overflow-wrap:anywhere}.domain-project-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.domain-project-tags span{background:#eef2ff;color:#3730a3;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:900}.domain-status-cell{display:flex;gap:8px;flex-wrap:wrap}.domain-empty{border:1px dashed #cbd5e1;border-radius:14px;background:#f8fafc;padding:18px;text-align:center}.domain-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;align-items:center}.domain-actions .danger{color:#b91c1c}.domain-dns-help{grid-column:1/-1;border:1px solid #e5e7eb;border-radius:14px;padding:10px;background:#f8fafc}.domain-dns-help summary{cursor:pointer;font-weight:900}.domain-dns-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:10px;margin-top:10px}.domain-dns-grid div{display:grid;gap:5px}.domain-dns-grid span{font-size:12px;color:var(--muted);font-weight:900}.domain-dns-grid code{display:block;background:white;border:1px solid #e5e7eb;border-radius:10px;padding:8px;overflow-wrap:anywhere}.domain-fallback{display:block;margin-top:-6px;margin-bottom:8px;color:var(--muted);overflow-wrap:anywhere}
@media(max-width:980px){.domain-management-hero{display:block}.domain-metrics{min-width:0;margin-top:12px}.domain-management-card{grid-template-columns:1fr}.domain-actions{justify-content:flex-start}.domain-selector-row{grid-template-columns:1fr}.domain-selector-row button{width:100%}}
@media(max-width:720px){.domain-bind-row,.domain-filter-row{grid-template-columns:1fr}.domain-actions{display:grid;justify-content:stretch}.domain-actions button{width:100%}.domain-metrics{grid-template-columns:1fr}}

/* Capability permissions */
.capability-reference .role-card p{margin:6px 0;color:var(--muted);font-size:13px;line-height:1.45}.capability-reference .role-card small{display:block;color:var(--muted);font-weight:800;line-height:1.5}.capability-editor{grid-column:1/-1;border:1px solid #e5e7eb;background:#f8fafc;border-radius:14px;padding:12px;margin:10px 0}.capability-editor h4{margin:0 0 6px}.capability-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));gap:8px;margin-top:10px}.capability-tile{display:flex;gap:10px;align-items:flex-start;border:1px solid #e5e7eb;border-radius:12px;background:white;padding:10px;cursor:pointer;min-width:0}.capability-tile input{margin-top:3px;flex:0 0 auto;width:auto;min-width:16px;max-width:16px;height:16px;padding:0;accent-color:var(--blue)}.capability-tile span{flex:1 1 auto;min-width:0}.capability-tile b{display:block;font-size:13px;min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.capability-tile small{display:block;color:var(--muted);line-height:1.45;margin-top:3px;white-space:normal;overflow-wrap:anywhere}.capability-tile:has(input:checked){border-color:#86efac;background:#f0fdf4}.login-state small{display:block;color:var(--muted);margin-top:4px;max-width:420px;line-height:1.4}.new-project-panel .domain-pill{margin-left:auto}
