:root{--bg: #fafaf8;--surface: rgba(255, 255, 255, .88);--surface-strong: #ffffff;--surface-tint: rgba(26, 104, 71, .08);--text: #143126;--muted: #5d6e68;--border: rgba(20, 49, 38, .12);--border-strong: rgba(20, 49, 38, .18);--primary: #1a6847;--primary-strong: #124d34;--shadow: 0 1px 3px rgba(0, 0, 0, .08);--success: #2d7d46;--danger: #bf3c2e;--amber: #d39d2d;--outline: rgba(26, 104, 71, .18)}:root[data-theme=dark]{--bg: #1a1a1a;--surface: rgba(32, 35, 34, .94);--surface-strong: #242826;--surface-tint: rgba(107, 171, 141, .12);--text: #f3f2ec;--muted: #c4c9c4;--border: rgba(243, 242, 236, .08);--border-strong: rgba(243, 242, 236, .14);--primary: #55a37c;--primary-strong: #6fb38d;--shadow: 0 1px 3px rgba(0, 0, 0, .32);--success: #58b36f;--danger: #e06b5c;--amber: #f0b856;--outline: rgba(111, 179, 141, .18)}*{box-sizing:border-box}html{font-size:16px;background:var(--bg)}body{margin:0;min-height:100vh;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit}button,input{font:inherit}button{min-height:44px}#root{min-height:100vh}.app-shell{width:min(100%,960px);margin:0 auto;padding:max(.75rem,env(safe-area-inset-top)) 1rem calc(1rem + env(safe-area-inset-bottom))}.app-header{position:sticky;top:0;z-index:30;display:grid;gap:.45rem;padding:.25rem 0 .75rem;background:var(--bg)}.app-header__top{display:grid;grid-template-columns:auto 1fr auto;gap:.75rem;align-items:center;min-height:48px}.brand-block{min-width:0}.brand-block h1{margin:.1rem 0 0;font-size:clamp(1.2rem,4vw,1.7rem)}.eyebrow{display:inline-block;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}.step-dots{display:flex;justify-content:center;gap:.45rem;padding:.1rem 0}.step-dots__dot{width:.55rem;height:.55rem;border-radius:50%;background:#1a684733}.step-dots__dot--active{background:var(--primary)}.install-banner,.card{border:1px solid var(--border);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.install-banner{display:grid;gap:.85rem;padding:1rem;margin-bottom:1rem}.install-banner__actions,.action-row{display:flex;flex-direction:column;gap:.75rem}.app-main,.screen,.result-stack{display:grid;gap:1rem}.screen{animation:screen-slide .24s ease}.card{padding:1rem}.summary-card,.nomogram-card{overflow:hidden}.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem}.section-heading h2,.section-heading h3,.summary-card__headline h2,.condition-card h4,.timeline__content h4{margin:0}.section-heading p,.lead-text,.muted-text,.llm-copy,.note-card p,.inline-error p,.condition-card__meta,.timeline__content p,.source-link span,.empty-state p{margin:.35rem 0 0;color:var(--muted);line-height:1.5}.lead-text{font-size:1rem}.search-field input,.choice-card,.condition-card,.nav-button,.primary-button,.ghost-button{border:1px solid var(--border);border-radius:14px;background:var(--surface-strong);color:var(--text);transition:transform .16s ease,border-color .16s ease,background .16s ease}.search-field input,.choice-card,.condition-card,.primary-button{width:100%}.search-field input{padding:.95rem 1rem;min-height:48px}.search-field input:focus,.choice-card:focus-visible,.condition-card:focus-visible,.nav-button:focus-visible,.primary-button:focus-visible,.ghost-button:focus-visible,.impact-table tr:focus-visible,.accordion__summary:focus-visible{outline:3px solid var(--outline);outline-offset:2px}.choice-card,.condition-card,.nav-button,.primary-button,.ghost-button{cursor:pointer}.choice-card:hover,.condition-card:hover,.nav-button:hover,.primary-button:hover,.ghost-button:hover,.impact-table tr:hover{transform:translateY(-1px);border-color:var(--border-strong)}.nav-button,.ghost-button{width:auto;padding:.7rem 1rem}.nav-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.primary-button{padding:.9rem 1.1rem;border-color:var(--primary);border-radius:12px;background:linear-gradient(135deg,var(--primary),var(--primary-strong));color:#f7f5ef}.ghost-button{background:transparent}.action-row>*{width:100%}.condition-grid{display:grid;grid-template-columns:1fr;gap:.9rem;margin-top:1rem}.condition-card{display:grid;gap:.75rem;padding:1rem;text-align:left}.condition-card__header{display:grid;gap:.35rem}.condition-card__header span{font-size:.9rem;color:var(--muted)}.condition-card__tags{display:flex;flex-wrap:wrap;gap:.55rem}.condition-card__tags span,.summary-chip,.llm-badge,.impact-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;border:1px solid var(--border);background:var(--surface-tint);padding:.42rem .7rem;font-size:.88rem}.stack-list{display:grid;gap:.85rem}.accordion{margin:1rem 0 1.2rem;border:1px solid var(--border);border-radius:16px;background:var(--surface-strong)}.accordion__summary{list-style:none;padding:.9rem 1rem;font-weight:600}.accordion__summary::-webkit-details-marker{display:none}.accordion__content{padding:0 1rem 1rem}.accordion__copy{white-space:pre-line}.choice-card{display:flex;justify-content:space-between;padding:1rem;text-align:left}.choice-card--selected{border-color:var(--primary);background:linear-gradient(180deg,var(--surface-tint),var(--surface-strong))}.impact-table{overflow:auto;margin:0 -1rem -1rem}.impact-table table{width:100%;border-collapse:collapse;table-layout:fixed}.impact-table thead th{position:sticky;top:0;z-index:1;text-align:left;background:var(--surface-strong);padding:.9rem 1rem;border-bottom:1px solid var(--border);font-size:.9rem}.impact-table tbody td{padding:.95rem 1rem;border-bottom:1px solid var(--border);vertical-align:top;word-break:break-word}.impact-table tr{cursor:pointer}.impact-table__row--rule-out td:first-child{border-left:4px solid var(--success)}.impact-table__row--rule-in td:first-child{border-left:4px solid var(--danger)}.impact-table__test-cell{display:grid;gap:.5rem}.impact-table__test-cell strong{display:block}.impact-pill{width:fit-content}.impact-pill--mobile{display:none}.impact-pill--success,.impact-pill--down{color:var(--success)}.impact-pill--danger,.impact-pill--up{color:var(--danger)}.summary-card__headline{display:grid;gap:.85rem}.metric-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:1rem 0 .8rem}.metric-strip__item{border-radius:18px;padding:.85rem .95rem;background:var(--surface-strong);border:1px solid var(--border)}.metric-strip__item span{color:var(--muted);font-size:.9rem}.metric-strip__item strong{display:block;font-size:1.45rem;margin-top:.3rem}.threshold-bar{margin-top:1rem}.threshold-bar__zones{position:relative;display:flex;overflow:hidden;min-height:40px;border-radius:999px;border:1px solid var(--border)}.threshold-bar--compact .threshold-bar__zones{min-height:24px}.threshold-bar__zone{display:flex;align-items:center;justify-content:center;color:#fff;padding-inline:.3rem;min-width:0}.threshold-bar__zone-label{display:grid;text-align:center;font-size:.72rem;line-height:1.1}.threshold-bar__zone-label small{opacity:.85}.threshold-bar__boundary{position:absolute;top:-.15rem;bottom:-.15rem;border-left:1px dashed rgba(255,255,255,.75)}.threshold-bar__boundary span{position:absolute;top:-1.15rem;left:.2rem;font-size:.74rem;color:var(--muted)}.threshold-bar__marker,.threshold-bar__marker--secondary{position:absolute;top:50%;width:18px;height:18px;border-radius:50%;transform:translate(-50%,-50%)}.threshold-bar__marker{background:var(--surface-strong);border:4px solid var(--primary);box-shadow:0 0 0 4px #ffffff38}.threshold-bar__marker--secondary{width:14px;height:14px;border:3px solid rgba(255,255,255,.85);background:transparent}.threshold-bar__arrow{position:absolute;top:calc(50% - 2px);height:4px;border-radius:999px;background:#143126b3}.nomogram{width:100%;height:auto}.nomogram__axis{stroke:var(--border-strong);stroke-width:2}.nomogram__axis-label,.nomogram__tick-label,.nomogram__value,.nomogram__lr-text{fill:var(--text);font-size:12px}.nomogram__tick{stroke:var(--border-strong);stroke-width:1.2}.nomogram__tap-target{fill:transparent;cursor:pointer}.nomogram__line{fill:none;stroke:var(--line-color);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1000;stroke-dashoffset:1000;animation:line-draw .9s ease forwards}.nomogram__marker{stroke:#ffffffe0;stroke-width:3}.nomogram__marker--pre{fill:#2d6cdf}.nomogram__marker--lr{fill:var(--amber)}.nomogram__lr-pill{fill:#143126e6}:root[data-theme=dark] .nomogram__lr-pill{fill:#f3f2ec29}.timeline{display:grid;gap:1rem}.timeline__item{display:grid;grid-template-columns:1.4rem 1fr;gap:.85rem}.timeline__rail{display:grid;justify-items:center}.timeline__dot{width:.85rem;height:.85rem;border-radius:50%;background:var(--primary)}.timeline__line{width:2px;min-height:100%;background:var(--border-strong);margin-top:.25rem}.timeline__content{display:grid;gap:.7rem;padding-bottom:1rem}.llm-card,.note-card{background:var(--surface-strong)}.llm-copy{font-size:.98rem;white-space:pre-line}.skeleton{border-radius:18px;background:linear-gradient(90deg,#ffffff14,#ffffff4d,#ffffff14);background-size:220% 100%;animation:skeleton-shimmer 1.2s ease-in-out infinite}.skeleton--text-block{min-height:96px}.note-card{border-radius:18px;padding:1rem;border:1px solid var(--border)}.note-grid{display:grid;gap:.8rem}.source-list{display:grid;gap:.75rem}.source-link{display:grid;gap:.2rem;text-decoration:none;padding:.95rem 1rem;border-radius:16px;border:1px solid var(--border);background:var(--surface-strong)}.source-link--static{cursor:default}.inline-message,.inline-error{border-radius:16px;padding:.95rem 1rem;border:1px solid var(--border);background:var(--surface-tint)}.inline-error,.empty-state{display:grid;gap:.55rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.app-footer{position:sticky;bottom:0;z-index:20;margin-top:1rem;padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom));background:#143126eb;color:#f8f4ec;text-align:center;font-size:.75rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}@keyframes line-draw{to{stroke-dashoffset:0}}@keyframes screen-slide{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-20% 0}}@media (max-width: 479px){.eyebrow{display:none}.brand-block h1{margin:0;font-size:1.15rem}.impact-table{overflow:hidden}.impact-table__impact-header,.impact-table__impact-cell{display:none}.impact-pill--mobile{display:inline-flex}.impact-table thead th,.impact-table tbody td{padding:.8rem}}@media (min-width: 480px){.condition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.install-banner{grid-template-columns:1fr auto;align-items:center}}@media (min-width: 640px){.summary-card__headline,.action-row{display:flex;flex-direction:row}.action-row>*{flex:1}}@media (min-width: 768px){.condition-grid,.note-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
