@import "https://fonts.googleapis.com/css2?family=Source+Serif+4:ital,wght@0,300;0,400;0,600;0,700;1,400&family=DM+Sans:wght@300;400;500;600&display=swap";:root{--blue-primary:#213469;--blue-dark:#112046;--green-accent:#75bb43;--gray-dark:#585858;--gray-light:#ddd;--off-white:#f4f4f4;--white:#fff;--blue-primary-rgb:33, 52, 105;--blue-dark-rgb:17, 32, 70;--text-primary:#1a1a2e;--text-secondary:#585858;--text-light:#888;--border:#ddd;--bg-page:#f4f4f4;--bg-card:#fff;--gold:#ffed29;--silver:#8a9bb0;--signal:#213469;--apply:#75bb43;--nav-height:60px;--max-width:1280px;--radius:6px;--radius-lg:10px;--shadow-sm:0 1px 3px rgba(var(--blue-dark-rgb), .08);--shadow-md:0 4px 12px rgba(var(--blue-dark-rgb), .12);--shadow-lg:0 8px 24px rgba(var(--blue-dark-rgb), .16);--transition:.15s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;font-size:16px}body{color:var(--text-primary);background:var(--bg-page);min-height:100vh;font-family:DM Sans,sans-serif;font-weight:400;overflow-x:auto}h1,h2,h3,h4,h5,h6{color:var(--blue-dark);font-family:"Source Serif 4",serif;font-weight:600;line-height:1.2}a{color:var(--blue-primary);transition:color var(--transition);text-decoration:none}a:hover{color:var(--green-accent)}button{cursor:pointer;font-family:DM Sans,sans-serif}input,select,textarea{font-family:DM Sans,sans-serif}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:rgba(var(--blue-primary-rgb), .3);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:rgba(var(--blue-primary-rgb), .5)}.app{flex-direction:column;width:100%;min-width:876px;min-height:100vh;display:flex}.main-content{margin-top:var(--nav-height);box-sizing:border-box;flex:1;width:100%;padding:24px 16px}.page{width:100%}.browse-page{flex-direction:column;gap:0;width:100%;display:flex}.strategy-page{gap:8px;width:100%;height:calc(100vh - 48px);min-height:480px;display:flex}.strategy-utilities{flex-direction:column;flex:0 0 40px;align-items:center;gap:18px;margin-top:-24px;padding-top:24px;display:flex}.strategy-utility-divider{background:var(--border);flex-shrink:0;width:32px;height:1px}.strategy-utility-btn{border:1px solid var(--border);cursor:pointer;width:32px;height:32px;color:var(--text);transition:background var(--transition), border-color var(--transition);background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;font-size:1.1rem;display:inline-flex;position:relative}.strategy-utility-btn:hover{background:rgba(var(--blue-primary-rgb), .06);border-color:var(--blue-primary)}.strategy-utility-btn[data-tooltip]:after{content:attr(data-tooltip);background:rgba(var(--blue-dark-rgb), .96);color:#fff;text-align:left;white-space:nowrap;pointer-events:none;opacity:0;z-index:1100;border-radius:6px;margin-right:8px;padding:6px 10px;font-size:.78rem;font-weight:400;line-height:1.4;transition:opacity .12s;position:absolute;top:50%;right:100%;transform:translateY(-50%);box-shadow:0 4px 12px #00000040}.strategy-utility-btn[data-tooltip]:hover:after{opacity:1;transition-delay:.25s}.strategy-utility-trash{transition:transform .12s,background .12s,border-color .12s}.strategy-utility-trash.is-drag-active{background:#b4231814;border-color:#b423188c}.strategy-utility-trash.is-drag-over{background:#b423182e;border-color:#b42318d9;transform:scale(1.12)}.strategy-columns-area{flex-direction:column;flex:auto;min-width:0;min-height:0;display:flex}.strategy-columns{flex:auto;gap:8px;min-width:0;min-height:0;display:flex}.strategy-eras-cost{text-align:center;color:var(--text-light,#666);letter-spacing:.02em;flex:none;padding:4px 0 6px;font-size:11px;font-weight:500;line-height:1}.strategy-column{background:var(--white);border:1px solid var(--border);border-top:4px solid var(--col-color,var(--border));border-bottom:4px solid var(--col-color,var(--border));border-radius:var(--radius-lg);flex-direction:column;flex:1 1 0;min-width:0;display:flex;overflow:hidden}.strategy-column-frame{flex:auto;min-height:0;position:relative}.strategy-column-track{flex-direction:column;gap:6px;padding:8px;display:flex;position:absolute;inset:0;overflow-y:auto}.strategy-column-track::-webkit-scrollbar{width:0;height:0}.strategy-column-track{scrollbar-width:none;-ms-overflow-style:none}.strategy-column-scroll-up,.strategy-column-scroll-down{z-index:2;position:absolute;left:50%;transform:translate(-50%)}.strategy-column-scroll-up{top:6px}.strategy-column-scroll-down{bottom:6px}.strategy-card{background:rgba(var(--blue-primary-rgb), .04);border:1px solid var(--border);cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:6px;flex:none;align-items:flex-start;min-height:calc(2.6em + 10px);padding:5px;display:flex;position:relative;overflow:hidden}.strategy-card:before{content:attr(data-slot-index);color:var(--blue-primary);opacity:.08;pointer-events:none;z-index:0;font-feature-settings:"tnum" 1;justify-content:center;align-items:center;font-size:36px;font-weight:800;line-height:1;display:flex;position:absolute;inset:0}.strategy-card>.strategy-card-text,.strategy-card>.strategy-card-right{z-index:1;position:relative}.strategy-signal-limit-sep{pointer-events:none;flex:none;height:0;margin:-3px 0;position:relative;overflow:visible}.strategy-signal-limit-sep:before,.strategy-signal-limit-sep:after{content:"";box-sizing:border-box;pointer-events:none;height:6px;position:absolute;left:0;right:0}.strategy-signal-limit-sep:before{border-bottom:1px solid var(--blue-primary);border-radius:0 0 6px 6px;bottom:2px}.strategy-signal-limit-sep:after{border-top:1px solid var(--blue-primary);border-radius:6px 6px 0 0;top:2px}.strategy-signal-limit-sep-label{text-align:center;text-transform:uppercase;letter-spacing:.08em;color:var(--blue-primary);white-space:nowrap;pointer-events:none;font-size:7px;font-weight:600;line-height:1;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.strategy-signal-limit-phantom{pointer-events:none;flex:none;min-height:calc(2.6em + 12px)}.strategy-column:not([data-column-key=maybe]) .strategy-card{background:color-mix(in srgb, var(--col-color) 15%, transparent)}.strategy-card:active{cursor:grabbing}.strategy-card-overlay{transform-origin:50%;transition:transform .18s,opacity .18s,box-shadow .18s}.strategy-card-overlay.is-over-trash{opacity:.6;box-shadow:0 4px 10px #00000026}.strategy-card-overlay{cursor:grabbing;background:var(--white);border-color:var(--blue-primary);transform:rotate(-1.5deg);box-shadow:0 12px 28px #00000040}.strategy-column.is-drag-over{background:rgba(var(--blue-primary-rgb), .05)}.strategy-card-text{flex-direction:column;flex:auto;min-width:0;display:flex}.strategy-card-eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--green-accent);margin-bottom:1px;font-size:8px;font-weight:600;line-height:1.2}.strategy-card-name{color:var(--text);-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;font-size:10px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.strategy-card-right{flex-direction:column;flex:none;justify-content:space-between;align-items:flex-end;gap:4px;display:flex}.strategy-card-p50{text-align:right;color:var(--text-light);font-size:10px;line-height:1.2}.strategy-card-p50-label{letter-spacing:.02em;font-size:8px}.strategy-card-p50-label sup{font-size:.7em}.strategy-card-p50-value{color:var(--text);font-size:10px;font-weight:500}.strategy-card-fits{flex:none;align-items:center;gap:4px;display:flex}.strategy-card-fit{cursor:help;font-size:14px;line-height:1}.fit-popover-trigger{align-items:center;display:inline-flex}.fit-popover{background:rgba(var(--blue-dark-rgb), .96);color:#fff;z-index:1100;pointer-events:none;border-radius:6px;max-width:320px;padding:6px 10px;font-size:.78rem;font-weight:400;line-height:1.4;box-shadow:0 4px 12px #00000040}.fit-popover-arrow{fill:rgba(var(--blue-dark-rgb), .96)}.fit-popover-stub{flex-direction:column;gap:6px;min-width:220px;display:flex}.fit-popover-headline{font-weight:600}.fit-popover-squiggle{opacity:.55;letter-spacing:.5px;flex-direction:column;gap:3px;font-size:.85em;line-height:1;display:flex;overflow:hidden}.fit-popover-squiggle-line{white-space:nowrap;overflow:hidden}.fit-popover-narrative{color:#fff;flex-direction:column;gap:4px;max-width:320px;font-size:.88em;line-height:1.35;display:flex}.strategy-column-empty{text-align:center;color:var(--text-light);flex:auto;justify-content:center;align-items:center;padding:5px;font-size:14px;line-height:1.45;display:flex}.browse-landing{text-align:center;max-width:640px;color:var(--text);margin:80px auto;padding:32px 40px}.browse-landing h2{margin:0 0 16px;font-size:1.5rem;font-weight:600}.browse-landing p{color:var(--text-light);margin:0 0 12px;line-height:1.5}.table-wrapper{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:var(--white);border-radius:var(--radius-lg);overflow:visible}.program-table tbody{transition:opacity .18s}.program-table.is-soft-loading tbody{opacity:0;pointer-events:none}.navbar{z-index:1000;height:var(--nav-height);background:var(--blue-dark);box-shadow:var(--shadow-md);border-top-left-radius:var(--radius-lg);border-top-right-radius:var(--radius-lg);justify-content:space-between;align-items:center;padding:0 32px;display:flex;position:absolute;top:8px;left:16px;right:16px}.navbar-brand a{color:var(--white);letter-spacing:-.02em;font-family:"Source Serif 4",serif;font-size:1.4rem;font-weight:700}.navbar-brand a:hover{color:var(--green-accent)}.navbar-links{align-items:center;gap:8px;display:flex}.navbar-links a{color:#fffc;border-radius:var(--radius);transition:all var(--transition);padding:6px 14px;font-size:.9rem;font-weight:500}.navbar-links a:hover,.navbar-links a.active{color:var(--white);background:#ffffff1a}.navbar-links a.active{color:var(--green-accent)}.navbar-strategy-links{border-right:1px solid #ffffff26;align-items:center;gap:4px;margin-right:8px;padding-right:8px;display:flex}.navbar-strategy-links a{border:1px solid #75bb4366;border-radius:20px;padding:4px 10px;font-size:.8rem;color:var(--green-accent)!important}.navbar-strategy-links a:hover{border-color:var(--green-accent);background:#75bb4326!important}.strategy-bar{top:calc(8px + var(--nav-height));z-index:999;background:var(--blue-primary);height:64px;box-shadow:var(--shadow-md);border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);align-items:center;gap:6px;padding:0 8px;display:flex;position:absolute;left:16px;right:16px}.strategy-bar-empty-cta{text-align:center;color:#ffffff8c;white-space:normal;flex:1;padding:0 24px;font-size:.85rem;font-style:italic;line-height:1.4}.strategy-bar-cta{color:#fff9;white-space:normal;flex-shrink:0;max-width:100px;padding:0 4px 0 2px;font-size:.78rem;line-height:1.3}.strategy-track{scroll-behavior:smooth;-webkit-user-select:none;user-select:none;-webkit-overflow-scrolling:touch;flex:1;align-items:center;gap:8px;padding:4px 0;display:flex;overflow-x:hidden}.strategy-tab{border-radius:var(--radius);width:280px;height:52px;transition:background var(--transition), border-color var(--transition);background:#ffffff1a;border:1px solid #ffffff14;flex-shrink:0;position:relative;overflow:hidden}.strategy-tab:hover{background:#ffffff2e;border-color:#fff3}.strategy-tab-btn{width:100%;height:100%;color:var(--white);text-align:left;cursor:pointer;transition:color var(--transition);background:0 0;border:none;flex-direction:column;justify-content:center;gap:2px;padding:3px 30px 6px 12px;font-family:DM Sans,sans-serif;display:flex}.strategy-tab-btn:hover{color:var(--green-accent)}.strategy-tab-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;height:22px;font-weight:600;line-height:1;display:flex;overflow:hidden}.strategy-tab[data-name-length=short] .strategy-tab-name{font-size:.95rem}.strategy-tab[data-name-length=medium] .strategy-tab-name{font-size:.9rem}.strategy-tab[data-name-length=long] .strategy-tab-name{font-size:.85rem}.strategy-tab[data-name-length=xlong] .strategy-tab-name{font-size:.82rem}.strategy-tab-meta{color:#fff9;text-overflow:ellipsis;white-space:nowrap;height:12px;transition:color var(--transition);align-items:flex-end;font-size:.66rem;font-weight:400;line-height:1;display:flex;overflow:hidden}.strategy-tab-btn:hover .strategy-tab-meta{color:#ffffffbf}.strategy-tab-close{color:#ffffff8c;cursor:pointer;width:20px;height:20px;transition:color var(--transition), background var(--transition);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:0;font-size:1.05rem;line-height:1;display:flex;position:absolute;top:4px;right:4px}.strategy-tab-close:hover{color:var(--white);background:#fff3}.strategy-arrow{background:var(--blue-dark);width:32px;height:32px;color:var(--white);cursor:pointer;transition:all var(--transition);border:2px solid #fff9;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.4rem;line-height:1;display:flex}.strategy-arrow:hover{background:var(--blue-primary);border-color:var(--white)}.strategy-tab.strategy-tab-pending-delete{opacity:.65;background:#00000026;border-color:#ffffff26}.strategy-tab.strategy-tab-pending-delete .strategy-tab-btn{cursor:default}.strategy-tab.strategy-tab-pending-delete .strategy-tab-btn:hover{color:var(--white)}.strategy-tab.strategy-tab-pending-delete .strategy-tab-meta{color:var(--green-accent);font-variant-numeric:tabular-nums}.strategy-tab-close.is-undo{color:var(--green-accent)}.strategy-tab-close.is-undo:hover{color:var(--green-accent);background:#75bb432e}.strategy-delete-overlay{z-index:2000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.strategy-delete-modal{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:420px;max-width:calc(100vw - 32px);overflow:hidden}.strategy-delete-titlebar{background:var(--blue-dark);align-items:center;padding:12px 20px;display:flex}.strategy-delete-caution{color:var(--gold);letter-spacing:.02em;font-size:.95rem;font-weight:700}.strategy-delete-body{padding:24px 20px 20px}.strategy-delete-body p{color:var(--text-primary);margin-bottom:24px;font-size:.95rem;line-height:1.5}.strategy-delete-actions{justify-content:flex-end;gap:12px;display:flex}.btn-logout{color:#ffffffb3;border-radius:var(--radius);transition:all var(--transition);background:0 0;border:1px solid #ffffff4d;padding:5px 14px;font-size:.85rem}.btn-logout:hover{color:var(--white);background:#ffffff0d;border-color:#fff9}.page-header{margin-bottom:24px}.page-header h1{color:var(--blue-dark);font-size:1.8rem}.page-header p{color:var(--text-secondary);margin-top:6px;font-size:.95rem}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);padding:24px}.btn{border-radius:var(--radius);transition:all var(--transition);border:none;align-items:center;gap:6px;padding:8px 18px;font-size:.9rem;font-weight:500;line-height:1;display:inline-flex}.btn-primary{background:var(--blue-primary);color:var(--white)}.btn-primary:hover{background:var(--blue-dark);color:var(--white)}.btn-accent{background:var(--green-accent);color:var(--white)}.btn-accent:hover{color:var(--white);background:#65a835}.btn-outline{color:var(--blue-primary);border:1px solid var(--blue-primary);background:0 0}.btn-outline:hover{background:var(--blue-primary);color:var(--white)}.btn-ghost{color:var(--text-secondary);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--blue-primary);color:var(--blue-primary)}.btn-sm{padding:5px 12px;font-size:.82rem}.btn-lg{padding:12px 28px;font-size:1rem}.form-group{flex-direction:column;gap:6px;margin-bottom:16px;display:flex}.form-label{color:var(--text-secondary);font-size:.85rem;font-weight:500}.form-input,.form-select{border:1px solid var(--border);border-radius:var(--radius);height:40px;color:var(--text-primary);background:var(--white);transition:border-color var(--transition);width:100%;padding:0 12px;font-size:.9rem}.form-input:focus,.form-select:focus{border-color:var(--blue-primary);box-shadow:0 0 0 3px rgba(var(--blue-primary-rgb), .1);outline:none}.form-error{color:#c0392b;margin-top:4px;font-size:.82rem}.badge{white-space:nowrap;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-gold{color:var(--gold);background:#c9a12a1f;border:1px solid #c9a12a4d}.badge-silver{color:var(--silver);background:#8a9bb01f;border:1px solid #8a9bb04d}.badge-signal{background:rgba(var(--blue-primary-rgb), .08);color:var(--signal);border:1px solid rgba(var(--blue-primary-rgb), .2)}.badge-apply{color:#4a8a1e;background:#75bb431a;border:1px solid #75bb434d}.loading{color:var(--text-light);justify-content:center;align-items:center;padding:48px;font-size:.95rem;display:flex}.empty-state{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;padding:64px 32px;display:flex}.empty-state h3{color:var(--text-secondary);margin-bottom:8px;font-size:1.1rem}.empty-state p{color:var(--text-light);max-width:360px;font-size:.9rem}.specialty-picker{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-sm);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;padding:16px 20px;display:flex}.specialty-picker label{color:var(--text-secondary);white-space:nowrap;font-size:.9rem;font-weight:500}.specialty-picker .form-select{width:auto;min-width:240px}.navbar-filter-slot{flex:1;justify-content:flex-start;align-items:center;min-width:0;padding:0 16px;display:flex}.navbar-filter-sentence{color:var(--white);flex-wrap:wrap;align-items:baseline;gap:6px 8px;font-family:"Source Serif 4",serif;font-size:.95rem;line-height:1.3;display:flex}.navbar-filter-text{color:var(--white);white-space:nowrap;font-weight:400}.inline-dropdown{align-items:baseline;display:inline-flex;position:relative}.inline-dropdown-trigger{cursor:pointer;color:var(--green-accent);-webkit-text-decoration:underline dashed;text-decoration:underline dashed;-webkit-text-decoration-color:var(--green-accent);text-decoration-color:var(--green-accent);text-underline-offset:4px;background:0 0;border:none;margin:0;padding:0;font-family:"Source Serif 4",serif;font-size:calc(.95rem + 2px);font-weight:600;line-height:1.1;text-decoration-thickness:1.5px;transition:text-decoration-style .18s}.inline-dropdown-trigger:hover,.inline-dropdown-trigger.is-open{text-decoration-style:solid}.inline-dropdown-menu{z-index:1100;background:var(--blue-primary);border-radius:0 var(--radius) var(--radius) var(--radius);border:1px solid #fff3;min-width:100%;max-height:360px;padding:4px 0;position:absolute;top:calc(100% + 4px);left:0;overflow-y:auto;box-shadow:0 6px 20px #00000059}.inline-dropdown-option{text-align:left;width:100%;color:var(--white);cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:6px 14px;font-family:DM Sans,sans-serif;font-size:.85rem;display:block}.inline-dropdown-option:hover{background:#ffffff1a}.inline-dropdown-option.is-selected{color:var(--green-accent);font-weight:600}.inline-dropdown-menu-input{min-width:110px;padding:8px}.inline-dropdown-menu-input input{width:100%;color:var(--white);background:#0003;border:1px solid #ffffff4d;border-radius:3px;padding:5px 8px;font-family:DM Sans,sans-serif;font-size:.9rem}.inline-dropdown-menu-input input:focus{border-color:var(--green-accent);outline:none}.register-modal{background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:240px;padding:16px}.register-modal-text{color:var(--text-secondary);margin-bottom:12px;font-size:.85rem;line-height:1.4}.register-modal-actions{flex-direction:column;gap:8px;display:flex}.program-table{table-layout:fixed;border-collapse:collapse;background:var(--white);border-radius:var(--radius-lg);width:100%;min-width:876px;font-size:.85rem}.col-marked{min-width:40px}.col-rank{min-width:60px}.col-name{min-width:130px}.col-city{min-width:80px}.col-state{min-width:60px}.col-region{min-width:67px}.col-setting{min-width:80px}.col-curve{min-width:96px}.col-signal{min-width:75px}.col-fit{min-width:50px}.program-table td.col-fit{text-align:center;vertical-align:middle;font-size:1.1em;line-height:1}.program-table td.td-rank{text-align:center;font-variant-numeric:tabular-nums;padding-left:0;padding-right:0;font-size:.9rem;font-weight:600;position:relative}.td-rank sup{margin-left:1px;font-size:.65em;font-weight:500}.td-rank[data-tooltip]{cursor:help}.td-rank[data-tooltip]:after{content:attr(data-tooltip);background:rgba(var(--blue-dark-rgb), .96);color:#fff;text-align:left;white-space:normal;pointer-events:none;opacity:0;z-index:1100;border-radius:6px;width:280px;margin-top:8px;padding:8px 12px;font-size:.78rem;font-weight:400;line-height:1.4;transition:opacity .12s;position:absolute;top:100%;left:100%;box-shadow:0 4px 12px #00000040}.td-rank[data-tooltip]:hover:after{opacity:1;transition-delay:.25s}.program-table th.col-rank .col-label img{transform-origin:50%;will-change:transform;transition:transform .25s;position:absolute;top:50%;left:50%}.program-table th.col-rank:not(.is-sorted) .col-label img{transform:translate(-50%,-50%)scale(1.4)}.program-table th.col-rank.is-sorted .col-label img{transform:translate(calc(-50% - 10px),-50%)scale(1)}.signal-stars{flex-direction:column;justify-content:center;align-items:center;gap:0;width:100%;display:flex}.star-btn{cursor:pointer;opacity:.5;background:0 0;border:none;padding:2px 0;font-size:.9rem;line-height:1;transition:transform .1s,opacity .1s;display:block}.star-btn:hover{opacity:1;transform:scale(1.2)}.star-btn.active{opacity:1}.program-table td.col-signal{white-space:nowrap;text-overflow:ellipsis;max-width:0;overflow:hidden}.program-table td.col-city{vertical-align:middle;max-width:0;overflow:hidden}.col-city-inner{text-overflow:ellipsis;white-space:nowrap;line-height:1.4;display:block;overflow:hidden}.col-city-inner.is-multiword{-webkit-line-clamp:2;white-space:normal;overflow-wrap:normal;word-break:normal;-webkit-box-orient:vertical;display:-webkit-box}.program-table td.col-region{white-space:normal;vertical-align:middle;text-align:center;padding:8px 4px;overflow:hidden}.col-region-inner{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.program-table td.col-setting{white-space:normal;overflow-wrap:normal;word-break:normal;text-align:center;max-width:0;padding:8px 4px;overflow:hidden}.col-setting-inner{display:inline}.program-table td.col-state{text-align:center}.td-name{color:var(--blue-primary);vertical-align:middle;font-weight:500;position:relative}.td-name[data-tooltip]:after{content:attr(data-tooltip);z-index:100;background:rgba(var(--blue-dark-rgb), .96);color:var(--white);white-space:normal;pointer-events:none;opacity:0;border-radius:4px;max-width:320px;padding:6px 10px;font-size:.78rem;font-weight:500;line-height:1.3;transition:opacity .18s;position:absolute;top:calc(100% + 13px);left:7px;box-shadow:0 4px 12px #00000059}.td-name[data-tooltip]:hover:after{opacity:1;transition-delay:.12s}.td-stars{text-align:center;vertical-align:middle;padding:0!important}.program-table thead{background:var(--blue-dark);color:var(--white);z-index:10;position:sticky;top:0}.program-table thead tr:first-child th:first-child{border-top-left-radius:var(--radius-lg)}.program-table thead tr:first-child th:last-child{border-top-right-radius:var(--radius-lg)}.program-table tbody tr:last-child td:first-child{border-bottom-left-radius:var(--radius-lg)}.program-table tbody tr:last-child td:last-child{border-bottom-right-radius:var(--radius-lg)}.col-header{text-align:left;-webkit-user-select:none;user-select:none;border-right:1px solid #ffffff1a;padding:0;font-size:.8rem;font-weight:600;position:relative}.col-header:last-child{border-right:none}.col-header.sortable{cursor:pointer}.col-header.sortable:hover{background:#ffffff0d}.col-header-inner{align-items:stretch;min-width:0;min-height:44px;display:flex;overflow:hidden}.col-header-label-cell{flex:1;justify-content:flex-start;align-items:center;min-width:0;padding:4px 0 4px 8px;display:flex;overflow:hidden}.col-header-inner:not(.has-controls) .col-header-label-cell{justify-content:center;padding-left:0;padding-right:0}.col-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.col-header-controls{flex-direction:column;flex-shrink:0;width:24px;display:flex}.ch-sort,.ch-filter{flex:1;justify-content:center;align-items:center;min-height:20px;padding-right:1px;font-size:.85rem;display:flex}.ch-filter{cursor:pointer;border-radius:3px}.ch-filter:hover{background:#ffffff26}.filter-icon-btn{cursor:pointer;border-radius:3px;align-items:center;padding:2px;display:inline-flex}.filter-icon-btn:hover{background:#ffffff26}.filter-icon-wrap{align-items:center;gap:1px;display:inline-flex;position:relative}.filter-active{color:var(--green-accent)}.filter-inactive{color:#ffffff80}.filter-badge{font-size:.6rem;font-weight:700;line-height:1}.filter-popover{z-index:100;background:var(--white);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:220px;color:var(--text-primary);flex-direction:column;gap:8px;padding:12px;display:flex;position:absolute;top:100%;left:0}.filter-input{height:36px;font-size:.85rem}.filter-hint{color:var(--text-light);font-size:.75rem}.filter-checkboxes{flex-direction:column;gap:6px;max-height:200px;display:flex;overflow-y:auto}.filter-checkbox-label{cursor:pointer;color:var(--text-primary);align-items:center;gap:8px;padding:3px 0;font-size:.85rem;display:flex}.filter-checkbox-label:hover{color:var(--blue-primary)}.filter-radios{border-top:1px solid var(--border);flex-direction:column;gap:6px;margin-top:10px;padding-top:10px;display:flex}.filter-radio-label{cursor:pointer;color:var(--text-primary);align-items:center;gap:8px;padding:3px 0;font-size:.85rem;display:flex}.filter-radio-label:hover{color:var(--blue-primary)}.filter-actions{border-top:1px solid var(--border);gap:8px;margin-top:4px;padding-top:8px;display:flex}.program-row{cursor:pointer;border-bottom:1px solid var(--border);transition:background var(--transition)}.program-row:last-child{border-bottom:none}.program-row:hover{background:rgba(var(--blue-primary-rgb), .04)}.program-table td{color:var(--text-primary);border-right:1px solid var(--border);vertical-align:middle;height:56px;padding:8px 12px}.program-table td:last-child{border-right:none}.td-name-inner{word-break:break-word;width:100%;max-height:2.8em;transition:color var(--transition);-webkit-line-clamp:2;text-overflow:ellipsis;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;position:relative;overflow:hidden}.td-name-inner:after{content:"";background:var(--green-accent);transform-origin:0;width:100%;height:2px;transition:transform .25s;position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.program-row:hover .td-name-inner{color:var(--green-accent)}.program-row:hover .td-name-inner:after{transform:scaleX(1)}.td-curve{text-align:center;vertical-align:middle;max-width:96px;overflow:hidden;padding:0!important}.td-curve>div{width:fit-content;margin:0 auto;position:relative;top:calc(50% - 1px);transform:translateY(-50%)}.td-step2{text-align:center;font-variant-numeric:tabular-nums}.col-label-two-line{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-width:0;display:flex;overflow:hidden}.col-label-two-line .col-label-line1{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:600;overflow:hidden}.col-label-two-line .col-label-line2{opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;font-weight:500;overflow:hidden}.td-signal{text-align:center;font-variant-numeric:tabular-nums;transition:background var(--transition);font-size:.82rem;font-weight:600}.detail-analysis-list{margin:0;padding-left:18px;list-style-type:disc}.detail-analysis-list li{color:var(--text-secondary);margin-bottom:6px;font-size:.88rem;line-height:1.5}.detail-analysis-list li:last-child{margin-bottom:0}.detail-analysis-list sup{vertical-align:super;font-size:.65em;line-height:0}.detail-pippopw-bullet{margin-bottom:10px}.detail-pippopw-headline{margin-bottom:2px}.detail-pippopw-line{margin:2px 0}.detail-page{max-width:var(--max-width);width:100%}.navbar-crumb{color:var(--white);letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:12px;font-family:"Source Serif 4",serif;font-size:1.4rem;font-weight:700;display:inline-flex}.navbar-crumb-sep{color:#ffffff80;font-size:1.4rem;font-weight:400;line-height:1}.detail-header{background:var(--white);border:1px solid var(--border);border-radius:0 0 var(--radius-lg) var(--radius-lg);box-shadow:var(--shadow-sm);border-top:0;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:16px;padding:24px;display:flex}.detail-specialty{text-transform:uppercase;letter-spacing:.08em;color:var(--green-accent);margin-bottom:6px;font-size:.8rem;font-weight:600}.detail-name{color:var(--blue-dark);margin-bottom:8px;font-size:1.6rem;line-height:1.2}.detail-location{color:var(--text-secondary);font-size:.9rem}.detail-header-actions{flex-direction:column;flex-shrink:0;align-self:center;align-items:stretch;gap:10px;display:flex}.detail-actions-group{grid-template-columns:70px 1fr;align-items:center;gap:12px;display:grid}.detail-actions-label{color:var(--text-light);text-transform:uppercase;letter-spacing:.06em;text-align:right;font-size:.78rem;font-weight:700}.detail-actions-buttons{flex-wrap:wrap;gap:8px;display:flex}.detail-actions-buttons .btn{justify-content:center;padding:8px 14px;font-size:.9rem}.detail-track-row{align-items:center;gap:6px;display:flex}.detail-track-star{cursor:pointer;width:32px;height:32px;color:var(--signal-color,var(--text-secondary));transition:transform var(--transition), filter var(--transition);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.detail-track-star svg{fill:#0000;stroke:currentColor;stroke-width:1.6px;stroke-linejoin:round;width:24px;height:24px;transition:fill var(--transition)}.detail-track-star:hover{transform:scale(1.1)}.detail-track-star:hover svg{fill:#0000000a}.detail-track-star.active svg{fill:currentColor;stroke-width:1.2px}.detail-track-star.active{filter:drop-shadow(0 1px 2px #00000026)}.detail-track-star:focus-visible{outline:2px solid var(--blue-primary);outline-offset:2px;border-radius:4px}.detail-track-signin{color:var(--text-secondary);align-items:center;gap:4px;font-size:.85rem;text-decoration:none;display:inline-flex}.detail-track-signin:hover{color:var(--blue-primary)}.detail-track-signin svg{fill:currentColor}.detail-body{grid-template-columns:1fr 1.6fr;align-items:start;gap:16px;display:grid}.detail-left,.detail-right{flex-direction:column;gap:16px;display:flex}.detail-card{padding:15px 20px 20px}.detail-card-title{color:var(--blue-dark);border-bottom:1px solid var(--border);margin-bottom:14px;padding-bottom:10px;font-family:DM Sans,sans-serif;font-size:.95rem;font-weight:600}.detail-card-eyebrow{margin-bottom:2px}.detail-card-sub{color:var(--text-light);margin-top:-8px;margin-bottom:16px;font-size:.82rem}.stat-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.stat-card{background:var(--off-white);border-radius:var(--radius);text-align:center;padding:12px}.stat-card:not(.stat-card--split){flex-direction:column;justify-content:center;display:flex}.stat-card.stat-card--split{text-align:left;align-items:stretch;min-width:220px;padding:12px 0;display:flex}.stat-card-main{text-align:center;flex-direction:column;flex:0 0 45%;justify-content:center;padding:0 8px;display:flex}.stat-breakdown{font-variant-numeric:tabular-nums;flex-direction:column;flex:0 0 55%;justify-content:center;padding:0 8px 0 10px;display:flex;position:relative}.stat-breakdown:before{content:"";border-left:2px groove rgba(var(--blue-primary-rgb), .25);position:absolute;top:10%;bottom:10%;left:0}.stat-breakdown-row{color:var(--text-secondary);white-space:nowrap;border-radius:3px;padding:1px 4px;font-size:.65rem;line-height:1.5}.stat-breakdown-row.is-user-type{background:rgba(var(--blue-primary-rgb), .1);color:var(--blue-dark);font-weight:600}.stat-value{color:var(--blue-dark);font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:1.5rem;font-weight:700;line-height:1}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.stat-sub{color:var(--text-light);margin-top:2px;font-size:.72rem}.rate-table{flex-direction:column;gap:10px;display:flex}.rate-row{align-items:center;gap:10px;display:flex}.rate-label{width:80px;color:var(--text-secondary);flex-shrink:0;font-size:.82rem;font-weight:500}.rate-bar-track{background:var(--gray-light);border-radius:4px;flex:1;height:8px;overflow:hidden}.rate-bar-fill{border-radius:4px;height:100%;transition:width .4s}.rate-pct{text-align:right;width:40px;color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:600}.sigfx-container{flex-direction:column;gap:14px;display:flex}.sigfx-pies{justify-content:center;align-items:flex-start;gap:24px;display:flex}.sigfx-pie{flex-direction:column;flex:1 1 0;align-items:center;gap:6px;min-width:0;display:flex}.sigfx-pie-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.sigfx-pie-canvas{aspect-ratio:1;width:100%;max-width:200px}.sigfx-legend{flex-direction:column;gap:4px;display:flex}.sigfx-legend-row{cursor:default;border-radius:6px;align-items:center;gap:8px;padding:4px 8px;font-size:.82rem;transition:background .12s;display:flex}.sigfx-legend-row.is-hovered{background:var(--gray-light)}.sigfx-swatch{border-radius:3px;flex-shrink:0;width:12px;height:12px}.sigfx-legend-label{color:var(--text-primary);flex-shrink:0;width:110px;font-weight:600}.sigfx-legend-numbers{font-variant-numeric:tabular-nums;flex:1;justify-content:flex-end;align-items:center;gap:8px;display:flex}.sigfx-legend-side{flex-direction:column;align-items:center;line-height:1.15;display:flex}.sigfx-legend-side-name{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:.7rem}.sigfx-legend-count{color:var(--text-primary);font-weight:600}.sigfx-legend-arrow{color:var(--text-secondary);font-size:.9rem}.sigfx-delta-summary{color:var(--text-secondary);background:var(--gray-light);border-radius:6px;padding:8px 10px;font-size:.82rem;line-height:1.4}.sigfx-delta-up{color:#1f883d;font-weight:600}.sigfx-delta-down{color:#b42318;font-weight:600}.curve-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.curve-item{background:var(--off-white);border-radius:var(--radius);flex-direction:column;align-items:center;gap:6px;padding:8px;display:flex}.curve-item .curve-item-label{align-self:flex-start}.curve-bottom{background:var(--off-white);border-radius:var(--radius);align-items:center;gap:16px;margin-top:16px;padding:8px;display:flex}.curve-bottom-curve{flex-direction:column;flex:0 0 180px;align-items:center;gap:4px;display:flex}.curve-item-label--below{color:var(--text-secondary);align-self:center}.curve-grid-table{flex-direction:column;flex:1 1 0;gap:6px;min-width:0;display:flex}.curve-item-highlight{border-left:3px solid var(--blue-primary);padding-left:5px}.curve-item-highlight .curve-item-label{color:var(--text-primary)}.curve-item-estimated{text-transform:none;letter-spacing:normal;color:var(--text-light);margin-left:4px;font-size:.72rem;font-style:italic;font-weight:400}.curve-item-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;font-size:.78rem;font-weight:600;display:flex}.percentile-table{border-collapse:collapse;width:100%;color:var(--text-secondary);font-variant-numeric:tabular-nums;table-layout:fixed;font-size:.7rem;line-height:1.5}.percentile-table col.col-type{width:52px}.percentile-table th{text-align:center;background:var(--blue-dark);color:var(--white);padding:4px 2px;font-size:.68rem;font-weight:600}.percentile-table th:first-child{text-align:left;padding-left:6px}.percentile-table td{text-align:center;border-bottom:1px solid var(--border);padding:4px 2px;position:relative}.percentile-table td .est-mark{color:var(--text-light);pointer-events:none;font-size:.85em;line-height:1;position:absolute;top:1px;left:50%;transform:translate(-50%)}.percentile-table td:first-child{text-align:left;white-space:nowrap;padding-left:6px;font-weight:500}.percentile-table tr:last-child td{border-bottom:none}.percentile-row-highlight td{background:#1120460a;font-weight:600}.percentile-row-highlight td:first-child{border-left:3px solid var(--blue-primary);padding-left:11px}.account-page{max-width:480px;margin:0 auto}.auth-container{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-md);overflow:hidden}.auth-tabs{border-bottom:1px solid var(--border);display:flex}.auth-tab{background:var(--off-white);color:var(--text-secondary);transition:all var(--transition);cursor:pointer;border:none;flex:1;padding:14px;font-size:.9rem;font-weight:500}.auth-tab:first-child{border-right:1px solid var(--border)}.auth-tab.active{background:var(--white);color:var(--blue-primary);font-weight:600}.auth-tab:hover:not(.active){background:var(--gray-light)}.auth-form{flex-direction:column;gap:4px;padding:28px;display:flex}.auth-form h2{margin-bottom:4px;font-size:1.4rem}.auth-form h3{color:var(--text-primary);font-family:DM Sans,sans-serif}.auth-subtitle{color:var(--text-secondary);margin-bottom:20px;font-size:.9rem}.form-error-box{color:#8b1a1a;border-radius:var(--radius);background:#fde8e8;border:1px solid #f5c6c6;margin-bottom:8px;padding:10px 14px;font-size:.85rem}.form-success-box{color:#2a5c14;border-radius:var(--radius);background:#e8f5e0;border:1px solid #b8dda0;margin-bottom:8px;padding:10px 14px;font-size:.85rem}.auth-switch{text-align:center;color:var(--text-secondary);margin-top:12px;font-size:.85rem}.link-btn{color:var(--blue-primary);font-size:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline}.link-btn:hover{color:var(--green-accent)}.text-muted{color:var(--text-light)}.loading-caduceus{display:inline-block;position:relative}.loading-caduceus .scale{animation:4.5s linear infinite caduceus-scale}@keyframes caduceus-scale{0%,30%{fill:var(--green-accent)}33%,63%{fill:var(--silver)}66%,96%{fill:var(--gold)}to{fill:var(--green-accent)}}.strategy-print{display:none}@media print{body *{visibility:hidden!important}.strategy-print,.strategy-print *{visibility:visible!important}.strategy-print{color:#000;background:#fff;font-family:system-ui,-apple-system,sans-serif;display:block;position:absolute;inset:0}@page{margin:.5in}.print-page{page-break-after:always;page-break-inside:avoid;break-after:page}.print-page:last-child{page-break-after:auto;break-after:auto}.print-page-header{border-bottom:1px solid #000;justify-content:space-between;align-items:baseline;margin-bottom:12px;padding-bottom:4px;display:flex}.print-page-header-title{color:#000;font-size:12pt;font-weight:700}.print-page-header-pages{color:#444;font-size:9pt}.print-columns{align-items:flex-start;gap:24px;display:flex}.print-column{flex:1 1 0;min-width:0}.print-section-header{color:#000;margin:8px 0 2px;font-size:11pt;font-weight:700}.print-section-header:first-child{margin-top:0}.print-section-separator{border-top:1px solid #000;margin:6px 0}.print-row{color:#000;-webkit-print-color-adjust:exact;print-color-adjust:exact;align-items:stretch;padding:2px 6px;font-size:10pt;line-height:1.4;display:flex}.print-row-even{background:#fff}.print-row-odd{background:#ececec}.print-row-name{white-space:nowrap;text-overflow:ellipsis;flex:auto;min-width:0;margin-right:8px;overflow:hidden}.print-row-divider{background:#888;flex:0 0 1px;margin:0 6px}.print-row-code{font-variant-numeric:tabular-nums;letter-spacing:.01em;flex:none;font-family:JetBrains Mono,Cascadia Code,Cascadia Mono,Menlo,Roboto Mono,DejaVu Sans Mono,SFMono-Regular,Consolas,ui-monospace,monospace}}.strategy-screenshot-container{pointer-events:none;z-index:-1;position:absolute;top:0;left:-10000px}.strategy-screenshot-page{box-sizing:border-box;width:1920px;height:1080px;color:var(--text);background:#fff;flex-direction:column;gap:12px;padding:16px 24px;font-family:system-ui,-apple-system,sans-serif;display:flex}.strategy-screenshot-header-row{flex:none;align-items:center;gap:16px;height:64px;display:flex}.strategy-screenshot-wordmark,.strategy-screenshot-spacer{flex:0 0 220px}.strategy-screenshot-wordmark{color:var(--blue-dark);letter-spacing:-.02em;font-family:"Source Serif 4",serif;font-size:32px;font-weight:700}.strategy-screenshot-header{text-align:center;min-width:0;color:var(--blue-dark);flex:auto;justify-content:center;align-items:center;font-size:26px;font-weight:600;line-height:1.2;display:flex}.strategy-screenshot-columns{flex:auto;gap:16px;min-height:0;display:flex}.strategy-screenshot-column{flex-direction:column;flex:1 1 0;gap:6px;min-width:0;display:flex}.strategy-screenshot-page .strategy-card{box-sizing:border-box;height:52px;padding-top:1px}.strategy-screenshot-page .strategy-card-name{padding-bottom:1px;line-height:1.5}.strategy-screenshot-page .strategy-card-name.strategy-card-name-big{font-size:13px;line-height:1.4}.strategy-screenshot-page .strategy-card[data-screenshot-tier=gold]{background:#ffed2938}.strategy-screenshot-page .strategy-card[data-screenshot-tier=silver]{background:#b2b2b738}.strategy-screenshot-page .strategy-card[data-screenshot-tier=signal]{background:#ffed2938}.strategy-screenshot-page .strategy-card[data-screenshot-tier=apply]{background:#75bb4338}.strategy-card-screenshot:before{content:none!important}.strategy-card-screenshot{position:relative;overflow:hidden}.strategy-card-slot-bg{color:var(--blue-primary);opacity:.08;pointer-events:none;z-index:0;font-feature-settings:"tnum" 1;justify-content:center;align-items:center;font-family:DM Sans,sans-serif;font-size:36px;font-weight:800;line-height:1;display:flex;position:absolute;inset:0}.strategy-card-screenshot>.strategy-card-text,.strategy-card-screenshot>.strategy-card-right{z-index:1;position:relative}
