*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#f5f5f7;--color-surface:#fff;--color-surface-secondary:#f0f0f2;--color-text-primary:#1d1d1f;--color-text-secondary:#6e6e73;--color-border:#0000001a;--color-border-strong:#0000002e;--color-accent:#0071e3;--color-accent-hover:#0077ed;--color-tab-active-bg:#0071e31a;--color-success-bg:#34c7591f;--color-success-text:#1a7f37;--color-warning-bg:#ff9f0a1f;--color-warning-text:#b45309;--color-danger:#ff3b30;--color-danger-bg:#ff3b301a;--color-danger-text:#c0392b;--color-info-bg:#0071e31a;--color-info-text:#0071e3;--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", sans-serif;--radius-card:12px;--radius-sm:6px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px}@media (prefers-color-scheme:dark){:root{--color-bg:#1c1c1e;--color-surface:#2c2c2e;--color-surface-secondary:#3a3a3c;--color-text-primary:#f5f5f7;--color-text-secondary:#98989d;--color-border:#ffffff1a;--color-border-strong:#ffffff2e;--color-tab-active-bg:#0071e32e;--color-success-bg:#34c75926;--color-success-text:#34c759;--color-warning-bg:#ff9f0a26;--color-warning-text:#ff9f0a;--color-danger:#ff453a;--color-danger-bg:#ff453a26;--color-danger-text:#ff453a;--color-info-bg:#0a84ff26;--color-info-text:#0a84ff}}html,body,#root{background-color:var(--color-bg);height:100%;color:var(--color-text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}.app{flex-direction:column;height:100%;display:flex}.app-header{align-items:center;gap:var(--spacing-lg);min-height:52px;padding:0 var(--spacing-lg);background-color:var(--color-surface);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.app-wordmark{letter-spacing:-.01em;color:var(--color-text-primary);white-space:nowrap;font-size:14px;font-weight:600}.app-nav{align-items:center;gap:var(--spacing-xs);display:flex}.nav-tab{min-height:44px;padding:0 var(--spacing-md);border-radius:var(--radius-sm);color:var(--color-text-secondary);font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;align-items:center;font-size:13px;font-weight:500;transition:background .12s,color .12s;display:inline-flex}.nav-tab:hover{background-color:var(--color-surface-secondary);color:var(--color-text-primary)}.nav-tab.active{background-color:var(--color-tab-active-bg);color:var(--color-accent)}.app-user{align-items:center;gap:var(--spacing-sm);margin-left:auto;display:flex}.app-user-email{color:var(--color-text-secondary);font-size:12px}.app-signout{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);height:28px;color:var(--color-text-secondary);font-size:12px;font-family:var(--font-sans);cursor:pointer;background:0 0;padding:0 10px}.app-signout:hover{color:var(--color-danger);border-color:var(--color-danger)}.app-main{flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.screen-stub{max-width:480px;padding:var(--spacing-xl)}.screen-stub h1{letter-spacing:-.02em;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-size:22px;font-weight:600}.screen-stub p{color:var(--color-text-secondary);font-size:14px;line-height:1.5}*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a1a;background:#f5f4f0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.page-wrap{background:#fff;max-width:1024px;margin:0 auto;padding:48px 32px}.page-divider{background:#f5f4f0;border-top:2px solid #e0ddd6;border-bottom:2px solid #e0ddd6;align-items:center;gap:16px;max-width:1024px;margin:0 auto;padding:20px 32px;display:flex}.page-marker{letter-spacing:.1em;text-transform:uppercase;color:#888680;font-size:11px;font-weight:600}.page-title{color:#444441;font-size:13px;font-weight:500}.rule-tag{letter-spacing:.08em;color:#8a8680;text-transform:uppercase;margin-bottom:40px;font-size:11px;font-weight:500}.prose{color:#1a1a1a;max-width:680px;margin:0 auto 20px;font-size:15px;line-height:1.75}.prose-bold{color:#1a1a1a;max-width:680px;margin:0 auto 20px;font-size:15px;font-weight:500;line-height:1.75}.section-hed{color:#1a1a1a;max-width:680px;margin:0 auto 8px;font-size:18px;font-weight:500}.pull-quote{border-left:2px solid #0003;max-width:680px;margin:0 auto 36px;padding:0 0 0 24px}.pull-quote-text{color:#1a1a1a;margin-bottom:10px;font-size:18px;font-style:italic;line-height:1.65}.pull-quote-attr{color:#8a8680;letter-spacing:.04em;font-size:12px}.week-q{color:#1a1a1a;background:#f8f7f4;border-radius:12px;max-width:680px;margin:0 auto 36px;padding:20px 24px;font-size:15px;font-weight:500;line-height:1.65}.highlight-block{color:#1a1a1a;background:#f8f7f4;border-radius:10px;max-width:680px;margin:0 auto 20px;padding:16px 20px;font-size:14px;line-height:1.7}.divider{background:#0000001a;max-width:680px;height:.5px;margin:32px auto}.zone-label{letter-spacing:.1em;text-transform:uppercase;color:#8a8680;border-bottom:.5px solid #0000001a;max-width:680px;margin:36px auto 20px;padding-bottom:8px;font-size:10px;font-weight:500}.zone-label:first-of-type{margin-top:0}.zone-divider{background:#0000001a;max-width:680px;height:.5px;margin:36px auto}.zone-label+.qa-stack .qa-row:first-child,.zone-label+.seq-stack .seq-row:first-child,.zone-label+.adv-stack .adv-row:first-child,.zone-label+.mag-wrap .mag:first-child{border-top:none}.glossary{border:.5px solid #0000001f;border-radius:12px;max-width:680px;margin:8px auto 24px;overflow:hidden}.glossary-header{background:#f8f7f4;border-bottom:.5px solid #0000001a;padding:12px 18px}.glossary-label{letter-spacing:.1em;text-transform:uppercase;color:#8a8680;font-size:11px;font-weight:500}.glossary-row{border-top:.5px solid #00000014;grid-template-columns:220px 1fr;display:grid}.glossary-term{color:#1a1a1a;background:#f8f7f4;border-right:.5px solid #00000014;padding:12px 16px;font-size:13px;font-weight:500}.glossary-def{color:#444441;padding:12px 16px;font-size:13px;line-height:1.65}.glossary-signal{color:#8a8680;margin-top:4px;font-size:12px;font-style:italic}.ref{border:.5px solid #0000001f;border-radius:12px;max-width:680px;margin:8px auto 24px;overflow:hidden}.ref-header{background:#f8f7f4;border-bottom:.5px solid #0000001a;padding:12px 18px}.ref-label{letter-spacing:.1em;text-transform:uppercase;color:#8a8680;font-size:11px;font-weight:500}.ref-row{border-top:.5px solid #00000014;grid-template-columns:200px 1fr;display:grid}.ref-row-sm{border-top:.5px solid #00000014;grid-template-columns:160px 1fr;display:grid}.ref-row-eq{border-top:.5px solid #00000014;grid-template-columns:1fr 1fr;display:grid}.ref-field{color:#1a1a1a;background:#f8f7f4;border-right:.5px solid #00000014;padding:12px 16px;font-size:13px;font-weight:500}.ref-val{color:#444441;padding:12px 16px;font-size:13px;line-height:1.6}.dat{border:.5px solid #0000001f;border-radius:12px;max-width:680px;margin:8px auto 24px;overflow:hidden}.dat-wide{border:.5px solid #0000001f;border-radius:12px;max-width:960px;margin:8px auto 24px;overflow:hidden}.dat-head{background:#f8f7f4;border-bottom:.5px solid #0000001a;display:grid}.dat-th{letter-spacing:.08em;text-transform:uppercase;color:#8a8680;padding:10px 16px;font-size:11px;font-weight:500}.dat-th:not(:last-child){border-right:.5px solid #00000014}.dat-row{border-top:.5px solid #00000014;display:grid}.dat-cell{color:#1a1a1a;padding:12px 16px;font-size:13px;line-height:1.6}.dat-cell:not(:last-child){border-right:.5px solid #00000014}.dat-cell.muted{color:#8a8680;font-style:italic}.dat-cell.label{background:#f8f7f4;font-weight:500}.mag-wrap{max-width:680px;margin:0 auto}.mag{grid-template-columns:1fr 1fr;gap:32px;padding:20px 0;display:grid}.mag+.mag{border-top:.5px solid #00000014}.mag-title{color:#1a1a1a;margin-bottom:6px;font-size:15px;font-weight:500}.mag-body{color:#1a1a1a;font-size:14px;line-height:1.7}.sb-label{letter-spacing:.1em;text-transform:uppercase;color:#8a8680;margin-bottom:8px;font-size:10px;font-weight:500}.sb-item{color:#5f5e5a;border-left:2px solid #00000026;margin-bottom:4px;padding:5px 10px;font-size:12px;line-height:1.55}.sb-item strong{color:#1a1a1a;font-weight:500}.seq-stack{max-width:680px;margin:8px auto 24px}.seq-row{border-top:.5px solid #0000001a;align-items:flex-start;padding:18px 0;display:flex}.seq-row:last-child{border-bottom:.5px solid #0000001a}.seq-num{color:#8a8680;flex-shrink:0;min-width:20px;font-size:15px;font-weight:500}.seq-vdiv{background:#0000001a;flex-shrink:0;align-self:stretch;width:1px;min-height:18px;margin:2px 12px 0}.seq-label{color:#1a1a1a;margin-bottom:4px;font-size:14px;font-weight:500}.seq-quote{color:#8a8680;margin-bottom:6px;font-size:13px;font-style:italic}.seq-arrow{color:#1a1a1a;font-size:13px;line-height:1.55}.seq-body{color:#1a1a1a;font-size:14px;line-height:1.65}.milestone{max-width:680px;margin:8px auto 24px}.ms-row{border-top:.5px solid #0000001a;grid-template-columns:140px 1fr;display:grid}.ms-row:last-child{border-bottom:.5px solid #0000001a}.ms-tier{border-right:.5px solid #0000001a;flex-direction:column;gap:4px;padding:20px 16px 20px 0;display:flex}.ms-step{letter-spacing:.08em;text-transform:uppercase;color:#8a8680;font-size:10px;font-weight:500}.ms-name{color:#1a1a1a;font-size:14px;font-weight:500}.ms-body{color:#1a1a1a;padding:20px 0 20px 20px;font-size:14px;line-height:1.65}.ms-goal{color:#8a8680;margin-top:6px;font-size:12px;font-style:italic}.hero-band{border:.5px solid #0000001f;border-radius:12px;max-width:680px;margin:8px auto 24px;display:grid;overflow:hidden}.band-cell{border-right:.5px solid #0000001a;padding:22px}.band-cell:last-child{border-right:none}.band-num{color:#8a8680;margin-bottom:8px;font-size:22px;font-weight:500}.band-name{color:#1a1a1a;margin-bottom:8px;font-size:13px;font-weight:500}.band-body{color:#5f5e5a;font-size:13px;line-height:1.6}.band-signal{color:#8a8680;border-top:.5px solid #00000014;margin-top:8px;padding-top:8px;font-size:12px;font-style:italic}.card-grid{gap:8px;max-width:680px;margin:8px auto 24px;display:grid}.card-grid.c2{grid-template-columns:repeat(2,1fr)}.card-grid.c3{grid-template-columns:repeat(3,1fr)}.card-grid.c4{grid-template-columns:repeat(4,1fr)}.card{background:#fff;border:.5px solid #0000001f;border-radius:12px;padding:18px}.card-top{align-items:center;margin-bottom:10px;display:flex}.card-num{color:#8a8680;flex-shrink:0;width:26px;font-size:20px;font-weight:500}.card-vdiv{background:#0000001a;width:1px;height:20px;margin:0 10px}.card-title{color:#1a1a1a;font-size:13px;font-weight:500;line-height:1.3}.card-body{color:#5f5e5a;font-size:12px;line-height:1.55}.card-dep{color:#8a8680;border-top:.5px solid #00000014;margin-top:8px;padding-top:8px;font-size:11px}.versus{border:.5px solid #0000001f;border-radius:12px;grid-template-columns:1fr 1fr;max-width:680px;margin:20px auto 24px;display:grid;overflow:hidden}.versus-col{padding:22px}.versus-col.a{background:#f8f7f4}.versus-col.b{background:#fff;border-left:.5px solid #0000001f}.versus-tag{letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:10px;font-weight:500}.versus-tag.z1{color:#0f6e56}.versus-tag.z2{color:#993c1d}.versus-title{color:#1a1a1a;margin-bottom:6px;font-size:14px;font-weight:500}.versus-body{color:#5f5e5a;font-size:13px;line-height:1.6}.versus-kw{border-radius:4px;margin-top:10px;padding:3px 8px;font-size:11px;font-weight:500;display:inline-block}.versus-kw.z1{color:#085041;background:#e1f5ee}.versus-kw.z2{color:#712b13;background:#faece7}.trust-table{border:.5px solid #0000001f;border-radius:12px;max-width:680px;margin:8px auto 24px;overflow:hidden}.trust-header{background:#f8f7f4;border-bottom:.5px solid #0000001a;padding:12px 18px}.trust-label{letter-spacing:.1em;text-transform:uppercase;color:#8a8680;font-size:11px;font-weight:500}.trust-row{border-top:.5px solid #00000014;grid-template-columns:160px 1fr;display:grid}.trust-comp{color:#1a1a1a;background:#f8f7f4;border-right:.5px solid #00000014;padding:14px 16px;font-size:13px;font-weight:500;line-height:1.5}.trust-sub{color:#8a8680;margin-top:2px;font-size:11px;font-weight:400}.trust-val{color:#444441;padding:14px 16px;font-size:13px;line-height:1.6}.pitch-chain{max-width:680px;margin:8px auto 24px}.pitch-row{border-top:.5px solid #0000001a;align-items:flex-start;padding:12px 0;display:flex}.pitch-row:last-child{border-bottom:.5px solid #0000001a}.pitch-sec{color:#1a1a1a;flex-shrink:0;min-width:140px;font-size:13px;font-weight:500}.pitch-arrow{color:#8a8680;flex-shrink:0;margin:2px 12px 0;font-size:12px}.pitch-body{color:#5f5e5a;font-size:13px;line-height:1.6}.del-table{max-width:680px;margin:8px auto 24px}.del-head{border-bottom:.5px solid #0000001a;grid-template-columns:28px 1fr 1fr;padding:0 0 10px;display:grid}.del-col-lbl{letter-spacing:.08em;text-transform:uppercase;color:#8a8680;font-size:10px;font-weight:500}.del-row{border-top:.5px solid #0000001a;grid-template-columns:28px 1fr 1fr;align-items:flex-start;padding:16px 0;display:grid}.del-num{color:#8a8680;padding-top:2px;font-size:18px;font-weight:500}.del-main{padding:0 20px 0 0}.del-title{color:#1a1a1a;margin-bottom:4px;font-size:14px;font-weight:500}.del-desc{color:#5f5e5a;font-size:13px;line-height:1.6}.del-dep{color:#5f5e5a;font-size:12px;line-height:1.55}.tab-bar{border-bottom:.5px solid #0000001f;max-width:680px;margin:0 auto 36px;display:flex}.tab{cursor:default;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 20px;display:flex}.tab.active{border-bottom:2px solid #1a1a1a;margin-bottom:-1px}.tab-letter{letter-spacing:.1em;text-transform:uppercase;color:#8a8680;font-size:10px;font-weight:500}.tab-name{color:#1a1a1a;font-size:13px;font-weight:500}.tab:not(.active) .tab-name{color:#8a8680}.adv-stack{max-width:680px;margin:8px auto}.adv-row{border-top:.5px solid #0000001a;align-items:flex-start;padding:22px 0;display:flex}.adv-row:last-child{border-bottom:.5px solid #0000001a}.adv-num{color:#8a8680;flex-shrink:0;min-width:24px;font-size:20px;font-weight:500}.adv-vdiv{background:#0000001a;flex-shrink:0;align-self:stretch;width:1px;min-height:20px;margin:3px 14px 0}.adv-content{flex:1}.adv-title{color:#1a1a1a;margin-bottom:8px;font-size:15px;font-weight:500}.adv-body{color:#1a1a1a;font-size:14px;line-height:1.7}.adv-signal{color:#5f5e5a;background:#f8f7f4;border-radius:8px;margin-top:10px;padding:10px 14px;font-size:13px;line-height:1.6}.ex-list{max-width:680px;margin:8px auto 24px}.ex-row{border-top:.5px solid #0000001a;align-items:flex-start;padding:16px 0;display:flex}.ex-row:last-child{border-bottom:.5px solid #0000001a}.ex-num{color:#8a8680;flex-shrink:0;min-width:28px;font-size:20px;font-weight:500}.ex-vdiv{background:#0000001a;flex-shrink:0;align-self:stretch;width:1px;min-height:18px;margin:3px 14px 0}.ex-title{color:#1a1a1a;margin-bottom:3px;font-size:14px;font-weight:500}.ex-desc{color:#5f5e5a;font-size:13px;line-height:1.6}.qa-stack{max-width:680px;margin:8px auto 24px}.qa-row{border-top:.5px solid #0000001a;padding:18px 0}.qa-row:last-child{border-bottom:.5px solid #0000001a}.qa-q{color:#1a1a1a;margin-bottom:6px;font-size:14px;font-style:italic;font-weight:500}.qa-a{color:#444441;font-size:13px;line-height:1.65}.folder-list{flex-direction:column;gap:4px;max-width:680px;margin:8px auto 24px;display:flex}.folder-item{background:#f8f7f4;border-radius:8px;align-items:flex-start;gap:12px;padding:10px 14px;display:flex}.folder-name{color:#1a1a1a;flex-shrink:0;min-width:180px;font-size:13px;font-weight:500}.folder-desc{color:#5f5e5a;font-size:13px;line-height:1.6}.cluster-head{align-items:center;gap:12px;max-width:680px;margin:0 auto 12px;display:flex}.cluster-name{letter-spacing:.07em;text-transform:uppercase;color:#8a8680;white-space:nowrap;font-size:11px;font-weight:500}.cluster-line{background:#0000001a;flex:1;height:.5px}.pg-body{grid-template-columns:300px 1fr;height:100%;display:grid;overflow:hidden}.pg-left{border-right:1px solid var(--color-border);flex-direction:column;display:flex;overflow:hidden}.panel-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;justify-content:space-between;align-items:center;min-height:40px;padding:0 12px;display:flex}.panel-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);font-size:10px;font-weight:500}.panel-actions{align-items:center;gap:4px;display:flex}.pg-editor{resize:none;border:none;border-bottom:1px solid var(--color-border);height:180px;color:var(--color-text-primary);background:var(--color-surface-secondary);tab-size:2;border-left:2px solid #0000;outline:none;flex-shrink:0;width:100%;padding:10px 12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px;line-height:1.6;transition:border-left-color .12s}.pg-editor.error{border-left-color:var(--color-danger)}.signals-section{border-bottom:1px solid var(--color-border);flex-direction:column;flex:1;display:flex;overflow-y:auto}.signals-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:7px 12px;display:flex}.signals-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);font-size:10px;font-weight:500}.signals-count{color:var(--color-text-secondary);font-size:11px}.signal-row{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:8px;padding:7px 12px;display:flex}.signal-row:last-child{border-bottom:none}.signal-dot{border-radius:50%;flex-shrink:0;width:6px;height:6px;margin-top:4px}.signal-dot--fired{background:var(--color-success-text)}.signal-dot--not-fired{background:var(--color-border-strong)}.signal-body{flex:1;min-width:0}.signal-name-row{color:var(--color-text-primary);flex-wrap:wrap;align-items:center;gap:5px;font-size:12px;font-weight:500;display:flex}.signal-detail{color:var(--color-text-secondary);margin-top:2px;font-size:11px;line-height:1.4}.signal-badge{border-radius:3px;align-items:center;padding:1px 5px;font-size:10px;font-weight:500;display:inline-flex}.signal-badge--fired{background:var(--color-success-bg);color:var(--color-success-text)}.signal-badge--not-fired{background:var(--color-surface-secondary);color:var(--color-text-secondary)}.signals-empty{color:var(--color-text-secondary);text-align:center;flex:1;justify-content:center;align-items:center;padding:16px;font-size:12px;display:flex}.signals-error{padding:12px}.signals-error__title{color:var(--color-danger-text);margin-bottom:4px;font-size:12px;font-weight:600}.signals-error__detail{color:var(--color-text-secondary);word-break:break-all;font-family:ui-monospace,monospace;font-size:11px;line-height:1.4}.signals-error__pos{color:var(--color-text-secondary);margin-top:6px;font-size:10px}@keyframes shimmer{0%{opacity:.4}50%{opacity:.8}to{opacity:.4}}.signal-row--skeleton{animation:1.4s ease-in-out infinite shimmer}.skeleton-block{background:var(--color-surface-secondary);border-radius:3px;display:block}.route-bar{background:var(--color-surface-secondary);border-bottom:1px solid var(--color-border);flex-wrap:wrap;flex-shrink:0;align-items:center;gap:5px;min-height:30px;padding:5px 12px;display:flex}.route-step{color:var(--color-text-secondary);font-size:11px;font-weight:500}.route-arrow{color:var(--color-text-secondary);opacity:.4;font-size:11px}.route-pattern-badge{background:var(--color-info-bg);color:var(--color-info-text);border-radius:3px;align-items:center;padding:2px 7px;font-family:ui-monospace,monospace;font-size:11px;font-weight:500;display:inline-flex}.run-bar{background:var(--color-surface);flex-shrink:0;align-items:center;gap:10px;min-height:48px;padding:0 12px;display:flex}.status-pill{border-radius:20px;align-items:center;gap:5px;padding:3px 8px;font-size:11px;font-weight:500;display:inline-flex}.status-pill:before{content:"";opacity:.7;background:currentColor;border-radius:50%;width:6px;height:6px}.status-pill--ok{background:var(--color-success-bg);color:var(--color-success-text)}.status-pill--running{background:var(--color-warning-bg);color:var(--color-warning-text)}.status-pill--error{background:var(--color-danger-bg);color:var(--color-danger-text)}.pg-right{flex-direction:column;display:flex;overflow:hidden}.render-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;justify-content:space-between;align-items:center;min-height:40px;padding:0 20px;display:flex}.render-pattern-badge{background:var(--color-success-bg);color:var(--color-success-text);border-radius:4px;align-items:center;padding:2px 8px;font-family:ui-monospace,monospace;font-size:11px;font-weight:500;display:inline-flex}.render-canvas{background:var(--color-bg);flex:1;padding:24px;overflow-y:auto}.render-card{background:var(--color-surface);border-radius:var(--radius-card);min-height:200px;padding:24px}.render-placeholder{min-height:200px;color:var(--color-text-secondary);text-align:center;justify-content:center;align-items:center;font-size:13px;display:flex}.render-placeholder--error{color:var(--color-danger-text)}.save-bar{border-top:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;align-items:center;gap:8px;min-height:48px;padding:0 20px;display:flex}.save-bar__input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-secondary);height:32px;color:var(--color-text-primary);font-family:var(--font-sans);outline:none;flex:1;padding:0 10px;font-size:12px;transition:border-color .1s}.save-bar__input:focus{border-color:var(--color-accent)}.save-bar__input::placeholder{color:var(--color-text-secondary)}.btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-height:32px;color:var(--color-text-primary);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:0 0;justify-content:center;align-items:center;padding:6px 14px;font-size:12px;font-weight:500;transition:background .1s,border-color .1s;display:inline-flex}.btn:hover:not(:disabled){background:var(--color-surface-secondary)}.btn:disabled{opacity:.4;cursor:default}.btn--primary{background:var(--color-accent);border-color:var(--color-accent);color:#fff}.btn--primary:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.btn--ghost{color:var(--color-text-secondary);border-color:#0000;min-height:26px;padding:3px 8px;font-size:11px}.btn--ghost:hover{background:var(--color-surface-secondary);color:var(--color-text-primary)}.save-toast{background:var(--color-text-primary);color:var(--color-surface);pointer-events:none;z-index:100;border-radius:8px;padding:8px 18px;font-size:12px;font-weight:500;animation:.2s toast-in,.2s 1.8s forwards toast-out;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@keyframes toast-out{0%{opacity:1}to{opacity:0}}.pl-body{flex:1;grid-template-columns:220px 1fr;height:100%;min-height:0;display:grid;overflow:hidden}.pl-sidebar{border-right:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;overflow-y:auto}.pl-group{padding-bottom:4px}.pl-group-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);padding:10px 16px 4px;font-size:10px;font-weight:500;display:block}.pl-item{min-height:36px;color:var(--color-text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;width:100%;padding:0 16px;font-size:12px;font-weight:400;transition:background 80ms,color 80ms;display:flex}.pl-item:hover{background:var(--color-surface-secondary);color:var(--color-text-primary)}.pl-item.active{background:var(--color-surface-secondary);color:var(--color-text-primary);font-weight:500}.pl-item-id{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px}.pl-item-code{color:var(--color-text-secondary);opacity:.6;font-size:10px}.pl-main{background:var(--color-bg);padding:24px 28px;overflow-y:auto}.pl-detail-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.pl-detail-title{color:var(--color-text-primary);margin-bottom:4px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:15px;font-weight:500}.pl-detail-rule{color:var(--color-text-secondary);margin-bottom:4px;font-size:13px}.pl-detail-description{color:var(--color-text-secondary);font-size:13px;line-height:1.5}.pl-stats{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.pl-stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);min-width:100px;padding:10px 14px}.pl-stat-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:4px;font-size:10px;font-weight:500}.pl-stat-value{color:var(--color-text-primary);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;font-weight:500}.pl-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);margin-bottom:14px;padding:18px 20px}.pl-card-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:10px;font-size:10px;font-weight:500}.pl-signals{flex-wrap:wrap;gap:4px;display:flex}.signal-pill{border-radius:var(--radius-sm);background:var(--color-surface-secondary);border:1px solid var(--color-border);color:var(--color-text-primary);padding:4px 9px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;display:inline-block}.pl-code{color:var(--color-text-primary);background:var(--color-surface-secondary);border-radius:var(--radius-sm);word-break:break-all;padding:12px 14px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;line-height:1.6}.pl-render-output{background:var(--color-bg);border-radius:var(--radius-sm);padding:8px;overflow-x:auto}.pl-render-loading{color:var(--color-text-secondary);padding:16px 0;font-size:13px}.pl-render-error{color:var(--color-danger-text);padding:8px 0;font-family:ui-monospace,monospace;font-size:12px;line-height:1.5}.btn-try{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-height:32px;color:var(--color-text-primary);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:6px 14px;font-size:12px;font-weight:500;transition:background .1s;display:inline-flex}.btn-try:hover{background:var(--color-surface-secondary)}.fb-body{flex-direction:column;flex:1;height:100%;display:flex;overflow:hidden}.fb-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex-shrink:0;align-items:center;gap:8px;min-height:52px;padding:0 20px;display:flex}.fb-search{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-secondary);height:34px;color:var(--color-text-primary);font-family:var(--font-sans);outline:none;flex:1;padding:0 10px;font-size:12px;transition:border-color .1s}.fb-search:focus{border-color:var(--color-accent)}.fb-search::placeholder{color:var(--color-text-secondary)}.fb-filter{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-secondary);height:34px;color:var(--color-text-primary);font-family:var(--font-sans);cursor:pointer;outline:none;min-width:120px;padding:0 8px;font-size:12px}.fb-count{color:var(--color-text-secondary);white-space:nowrap;flex-shrink:0;font-size:11px}.fb-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-content:start;gap:16px;padding:20px;display:grid;overflow-y:auto}.fb-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);flex-direction:column;gap:0;padding:16px;transition:border-color .1s;display:flex}.fb-card:hover{border-color:var(--color-border-strong)}.fb-card-top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:6px;display:flex}.fb-card-name{color:var(--color-text-primary);flex:1;min-width:0;font-size:13px;font-weight:500;line-height:1.4}.fb-card-meta{color:var(--color-text-secondary);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;font-size:12px;display:flex}.fb-card-pattern{background:var(--color-info-bg);color:var(--color-info-text);border-radius:3px;padding:1px 6px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11px}.fb-card-sep{opacity:.4}.fb-decision{background:var(--color-surface-secondary);border-radius:var(--radius-sm);flex:1;margin-bottom:10px;padding:8px 10px}.fb-decision-label{letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:4px;font-size:10px;font-weight:500}.fb-decision-text{color:var(--color-text-primary);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12px;line-height:1.5}.fb-decision-text--muted{color:var(--color-text-secondary)}.fb-decision-edit{border:1px solid var(--color-accent);background:var(--color-surface);width:100%;min-height:60px;color:var(--color-text-primary);font-family:var(--font-sans);resize:vertical;border-radius:4px;outline:none;padding:4px 6px;font-size:12px;line-height:1.5}.fb-card-actions{flex-wrap:wrap;gap:6px;display:flex}.fb-tag{white-space:nowrap;border-radius:4px;flex-shrink:0;align-items:center;padding:2px 7px;font-size:11px;font-weight:500;display:inline-flex}.fb-tag-confirmed{background:var(--color-success-bg);color:var(--color-success-text)}.fb-tag-flagged{background:var(--color-danger-bg);color:var(--color-danger-text)}.fb-tag-caller-contract{background:var(--color-surface-secondary);color:var(--color-text-secondary)}.fb-btn{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-height:32px;color:var(--color-text-primary);font-family:var(--font-sans);cursor:pointer;white-space:nowrap;background:0 0;justify-content:center;align-items:center;padding:6px 12px;font-size:12px;font-weight:500;transition:background .1s;display:inline-flex}.fb-btn:hover{background:var(--color-surface-secondary)}.fb-btn--danger{color:var(--color-danger-text);border-color:#0000}.fb-btn--danger:hover{background:var(--color-danger-bg)}.fb-btn--ghost{color:var(--color-text-secondary);border-color:#0000}.fb-btn--ghost:hover{background:var(--color-surface-secondary);color:var(--color-text-primary)}.fb-empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;padding:40px 20px;display:flex}.fb-empty-icon{border:1px solid var(--color-border-strong);background:var(--color-surface-secondary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;display:flex}.fb-empty-title{color:var(--color-text-primary);font-size:14px;font-weight:500}.fb-empty-body{color:var(--color-text-secondary);max-width:280px;font-size:13px;line-height:1.5}.fb-empty-cta{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);min-height:32px;color:var(--color-text-primary);font-family:var(--font-sans);cursor:pointer;background:0 0;justify-content:center;align-items:center;margin-top:4px;padding:6px 16px;font-size:12px;font-weight:500;transition:background .1s;display:inline-flex}.fb-empty-cta:hover{background:var(--color-surface-secondary)}.login-screen{background:var(--color-bg);min-height:100vh;font-family:var(--font-sans);justify-content:center;align-items:center;display:flex}.login-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);width:100%;max-width:380px;padding:40px 36px;box-shadow:0 4px 24px #00000014}.login-wordmark{color:var(--color-text-primary);letter-spacing:-.4px;margin-bottom:4px;font-size:22px;font-weight:700}.login-subtitle{color:var(--color-text-secondary);margin-bottom:28px;font-size:13px}.login-form{flex-direction:column;gap:16px;display:flex}.login-field{flex-direction:column;gap:6px;display:flex}.login-field label{color:var(--color-text-secondary);font-size:13px;font-weight:500}.login-field input{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-secondary);height:40px;color:var(--color-text-primary);font-size:15px;font-family:var(--font-sans);outline:none;padding:0 12px;transition:border-color .15s}.login-field input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #0071e326}.login-error{color:var(--color-danger);background:var(--color-danger-bg);border-radius:var(--radius-sm);padding:8px 12px;font-size:13px}.login-btn{background:var(--color-accent);color:#fff;border-radius:var(--radius-sm);height:40px;font-size:15px;font-weight:500;font-family:var(--font-sans);cursor:pointer;border:none;margin-top:4px;transition:background .15s}.login-btn:hover:not(:disabled){background:var(--color-accent-hover)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.lp-root{background:var(--color-bg);min-height:100vh;color:var(--color-text-primary);font-family:var(--font-sans);flex-direction:column;display:flex}.lp-nav{border-bottom:1px solid var(--color-border);background:var(--color-bg);z-index:10;justify-content:space-between;align-items:center;height:56px;padding:0 32px;display:flex;position:sticky;top:0}.lp-nav-wordmark{letter-spacing:-.3px;color:var(--color-text-primary);font-size:15px;font-weight:600}.lp-nav-cta{border:1px solid var(--color-border);color:var(--color-text-primary);cursor:pointer;background:0 0;border-radius:6px;padding:7px 16px;font-size:13px;font-weight:500;transition:background .15s}.lp-nav-cta:hover{background:var(--color-bg-secondary)}.lp-hero{align-items:center;gap:64px;width:100%;max-width:1100px;margin:0 auto;padding:80px 32px 96px;display:flex}.lp-hero-inner{flex:1;animation:.6s both lp-fade-up}@keyframes lp-fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.lp-hero-badge{letter-spacing:.06em;text-transform:uppercase;color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:20px;margin-bottom:24px;padding:4px 12px;font-size:11px;font-weight:500;display:inline-block}.lp-hero-headline{letter-spacing:-1px;color:var(--color-text-primary);margin:0 0 24px;font-size:clamp(32px,4vw,52px);font-weight:700;line-height:1.12}.lp-hero-accent{color:var(--color-accent,#06f)}.lp-hero-sub{color:var(--color-text-secondary);max-width:480px;margin:0 0 36px;font-size:16px;line-height:1.65}.lp-hero-demo{flex:0 0 420px;align-items:center;gap:16px;animation:.6s .15s both lp-fade-up;display:flex}.lp-demo-card{border:1px solid var(--color-border);background:var(--color-bg-secondary);border-radius:10px;flex:1;padding:16px}.lp-demo-label{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:10px;font-size:10px;font-weight:600}.lp-demo-code{color:var(--color-text-secondary);white-space:pre-wrap;margin:0;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px;line-height:1.6}.lp-demo-arrow{color:var(--color-text-secondary);flex:none;font-size:20px}.lp-demo-pattern-badge{letter-spacing:-.2px;background:var(--color-accent-subtle,#0066ff1f);color:var(--color-accent,#06f);border-radius:6px;margin-bottom:10px;padding:4px 10px;font-size:13px;font-weight:700;display:inline-block}.lp-demo-signal{color:var(--color-success,#22c55e);margin-bottom:8px;font-size:11px}.lp-demo-route{color:var(--color-text-secondary);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:10px}.lp-section{border-top:1px solid var(--color-border)}.lp-section-inner{width:100%;max-width:1100px;margin:0 auto;padding:80px 32px}.lp-section-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-secondary);margin-bottom:16px;font-size:11px;font-weight:600}.lp-section-title{letter-spacing:-.5px;color:var(--color-text-primary);margin:0 0 48px;font-size:clamp(24px,3vw,38px);font-weight:700;line-height:1.18}.lp-problem-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.lp-problem-item{align-items:flex-start;gap:16px;display:flex}.lp-problem-icon{color:#ef4444;background:#ef44441f;border-radius:50%;flex:0 0 28px;justify-content:center;align-items:center;height:28px;font-size:14px;font-weight:700;display:flex}.lp-problem-text{color:var(--color-text-secondary);padding-top:4px;font-size:14px;line-height:1.6}.lp-how-steps{flex-wrap:wrap;align-items:flex-start;gap:0;margin-bottom:48px;display:flex}.lp-step{flex:1;min-width:180px}.lp-step-connector{background:var(--color-border);flex:0 0 48px;align-self:flex-start;height:2px;margin-top:20px}.lp-step-num{border:2px solid var(--color-accent,#06f);width:36px;height:36px;color:var(--color-accent,#06f);border-radius:50%;justify-content:center;align-items:center;margin-bottom:16px;font-size:14px;font-weight:700;display:flex}.lp-step-title{color:var(--color-text-primary);margin-bottom:8px;font-size:15px;font-weight:600}.lp-step-body{color:var(--color-text-secondary);max-width:240px;font-size:13px;line-height:1.6}.lp-patterns-row{flex-wrap:wrap;gap:8px;display:flex}.lp-pattern-chip{letter-spacing:.04em;border:1px solid var(--color-border);color:var(--color-text-secondary);background:var(--color-bg-secondary);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:600}.lp-science{background:var(--color-bg-secondary)}.lp-science-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;display:grid}.lp-science-card{border:1px solid var(--color-border);background:var(--color-bg);border-radius:10px;padding:24px}.lp-science-card-name{color:var(--color-text-primary);margin-bottom:10px;font-size:13px;font-weight:600}.lp-science-card-body{color:var(--color-text-secondary);font-size:13px;line-height:1.65}.lp-proof-stats{flex-wrap:wrap;gap:48px;margin-bottom:40px;display:flex}.lp-proof-stat-num{letter-spacing:-1px;color:var(--color-text-primary);margin-bottom:6px;font-size:40px;font-weight:700;line-height:1}.lp-proof-stat-label{color:var(--color-text-secondary);font-size:13px}.lp-proof-brands{gap:12px;display:flex}.lp-brand-pill{border:1px solid var(--color-border);color:var(--color-text-secondary);background:var(--color-bg-secondary);border-radius:6px;padding:7px 18px;font-size:13px;font-weight:500}.lp-cta{background:var(--color-bg-secondary)}.lp-cta-inner{text-align:center}.lp-cta-title{letter-spacing:-.5px;margin:0 0 16px;font-size:clamp(24px,3vw,36px);font-weight:700}.lp-cta-sub{color:var(--color-text-secondary);margin:0 0 32px;font-size:15px}.lp-btn-primary{background:var(--color-accent,#06f);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;padding:11px 28px;font-size:14px;font-weight:600;transition:opacity .15s;display:inline-flex}.lp-btn-primary:hover{opacity:.88}.lp-footer{border-top:1px solid var(--color-border);text-align:center;color:var(--color-text-secondary);padding:24px 32px;font-size:12px}@media (width<=768px){.lp-hero{flex-direction:column;gap:40px;padding:48px 20px 64px}.lp-hero-demo{flex:none;width:100%}.lp-section-inner{padding:56px 20px}.lp-nav{padding:0 20px}.lp-how-steps{flex-direction:column;gap:24px}.lp-step-connector{display:none}}
