:root{--bg: #0a0d13;--bg-raise: #0f141d;--surface: #131a26;--surface-2: #1a2333;--border: #232e42;--border-hot: #33415c;--text: #e8edf6;--muted: #8b98ad;--faint: #5a6578;--accent: #46d0b0;--accent-dim: #2a8f7b;--price: #ffb020;--danger: #ff5d5d;--ok: #3ecf8e;--lock-veil: rgba(10, 13, 19, .55);--radius: 10px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}button{font-family:var(--font)}.topbar{position:sticky;top:0;z-index:40;display:flex;align-items:center;gap:14px;padding:12px 28px;background:color-mix(in srgb,var(--bg) 82%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:baseline;gap:10px;cursor:pointer}.brandName{font-weight:700;letter-spacing:.16em;font-size:15px}.brandSub{color:var(--muted);font-size:12px;letter-spacing:.06em}.topbarSpacer{flex:1}.sourcePill{font-size:11.5px;color:var(--faint);letter-spacing:.04em}.sourcePill[data-live=true]{color:var(--ok)}.ownedPill{font-size:12px;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:999px;padding:3px 12px;background:color-mix(in srgb,var(--accent) 8%,transparent)}.resetBtn{font-size:12px;color:var(--muted);background:none;border:1px solid var(--border);border-radius:6px;padding:4px 10px;cursor:pointer}.resetBtn:hover{color:var(--text);border-color:var(--border-hot)}.page{max-width:1180px;margin:0 auto;padding:28px}.hero{padding:44px 0 26px}.heroKicker{color:var(--accent);font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}.heroTitle{font-size:34px;font-weight:750;margin:10px 0 8px;letter-spacing:-.01em}.heroBlurb{color:var(--muted);max-width:640px;font-size:15px}.everythingBanner{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:20px 0 30px;padding:18px 22px;border:1px solid color-mix(in srgb,var(--price) 35%,var(--border));border-radius:var(--radius);background:linear-gradient(120deg,color-mix(in srgb,var(--price) 7%,var(--surface)),var(--surface) 60%)}.everythingTitle{font-weight:700;font-size:16px}.everythingNote{color:var(--muted);font-size:13px;max-width:460px}.everythingPrice{margin-left:auto;text-align:right}.bigPrice{font-size:26px;font-weight:750;color:var(--price)}.strikeSum{color:var(--muted);font-size:12px;text-decoration:line-through}.tariffCard{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px 22px;margin-bottom:30px}.tariffHead{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:12px}.tariffTitle{font-weight:700;font-size:15px}.tariffBasis{color:var(--muted);font-size:12px}.tariffGrid{display:flex;flex-direction:column}.tariffRow{display:grid;grid-template-columns:70px 250px 1fr 110px;gap:14px;padding:8px 0;border-top:1px solid var(--border);align-items:baseline;font-size:13px}.tariffCls{font-family:var(--mono);color:var(--accent);font-weight:650}.tariffSub .tariffCls{color:var(--price)}.tariffName{font-weight:650}.tariffScope{color:var(--muted);font-size:12px}.tariffPrice{text-align:right;font-variant-numeric:tabular-nums;font-weight:650;color:var(--price);white-space:nowrap}.tariffFoot{margin-top:12px;padding-top:12px;border-top:1px solid var(--border);color:var(--muted);font-size:12.5px}@media (max-width: 820px){.tariffRow{grid-template-columns:56px 1fr 90px}.tariffScope{display:none}}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:16px}.card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px;cursor:pointer;transition:border-color .15s,transform .15s;display:flex;flex-direction:column;gap:10px}.card:hover{border-color:var(--accent-dim);transform:translateY(-2px)}.cardHead{display:flex;align-items:baseline;gap:8px}.rankChip{font-family:var(--mono);font-size:11px;color:var(--muted);border:1px solid var(--border);border-radius:5px;padding:1px 6px}.cardName{font-weight:700;font-size:16px}.cardMaker{color:var(--muted);font-size:12.5px}.chipRow{display:flex;gap:6px;flex-wrap:wrap}.chip{font-size:11px;padding:2px 9px;border-radius:999px;border:1px solid var(--border);color:var(--muted)}.chipOpen{color:var(--ok);border-color:color-mix(in srgb,var(--ok) 40%,transparent)}.chipGated{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.chipAmber{color:var(--price);border-color:color-mix(in srgb,var(--price) 40%,transparent)}.statRow{display:flex;gap:18px;margin-top:2px}.stat{display:flex;flex-direction:column}.statValue{font-size:19px;font-weight:700;font-variant-numeric:tabular-nums}.statValue.danger{color:var(--danger)}.statLabel{color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.cardFoot{display:flex;align-items:center;margin-top:auto;padding-top:10px;border-top:1px solid var(--border)}.cardPrice{color:var(--price);font-weight:650;font-size:13.5px}.cardOwned{color:var(--ok);font-weight:650;font-size:13px}.cardCta{margin-left:auto;color:var(--accent);font-size:13px}.crumb{color:var(--muted);font-size:13px;margin-bottom:14px;cursor:pointer}.crumb:hover{color:var(--text)}.dossierHead{display:flex;align-items:flex-start;gap:18px;flex-wrap:wrap}.dossierTitle{font-size:28px;font-weight:750;margin:0}.dossierMaker{color:var(--muted);margin-top:2px}.dossierBuy{margin-left:auto;text-align:right;display:flex;flex-direction:column;gap:6px;align-items:flex-end}.statBand{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin:20px 0 26px}.bandCell{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:14px 16px}.bandValue{font-size:24px;font-weight:750;font-variant-numeric:tabular-nums}.bandValue.danger{color:var(--danger)}.bandValue.amber{color:var(--price)}.bandLabel{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em}.sectionTitle{font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:30px 0 12px}.panel{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);padding:18px}.summaryTable{width:100%;border-collapse:collapse}.summaryTable td{padding:7px 10px;border-bottom:1px solid var(--border);vertical-align:top}.summaryTable tr:last-child td{border-bottom:none}.sumLabel{color:var(--muted);width:260px}.sumValue{font-variant-numeric:tabular-nums}.lockedRow td{color:var(--faint)}.lockedValue{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:12.5px;filter:blur(0px)}.lockGlyph{opacity:.8}.blurredBar{display:inline-block;width:130px;height:11px;border-radius:4px;background:repeating-linear-gradient(90deg,var(--surface-2),var(--surface-2) 8px,var(--border) 8px,var(--border) 14px);filter:blur(2.5px)}.tlLegend{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.tlChip{display:inline-flex;align-items:center;gap:7px;font-size:12px;padding:3px 11px;border-radius:999px;cursor:pointer;border:1px solid var(--border);color:var(--muted);background:none}.tlChip[data-on=true]{color:var(--text);border-color:var(--border-hot);background:var(--surface-2)}.tlChip[data-locked=true]{opacity:.6;cursor:pointer}.tlSwatch{width:9px;height:9px;border-radius:3px}.tlHint{color:var(--faint);font-size:12px;margin-top:8px}.tlTip{position:absolute;pointer-events:none;z-index:5;background:var(--bg-raise);border:1px solid var(--border-hot);border-radius:8px;padding:8px 12px;font-size:12px;min-width:130px;box-shadow:0 8px 30px #00000080}.tlTipYear{font-weight:700;margin-bottom:3px}.tlTipRow{display:flex;gap:10px;justify-content:space-between}.moduleGrid{display:flex;flex-direction:column;gap:16px}.module{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.moduleHead{display:flex;align-items:center;gap:12px;padding:14px 18px;border-bottom:1px solid var(--border)}.moduleTitle{font-weight:700;font-size:15px}.moduleTeaserStats{color:var(--muted);font-size:12.5px}.clsChip{font-family:var(--mono);font-size:10.5px;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:5px;padding:1px 7px;white-space:nowrap}.priceChip{margin-left:auto;display:inline-flex;align-items:center;gap:8px;color:var(--price);font-weight:650;font-size:13px;white-space:nowrap}.unlockBtn{background:color-mix(in srgb,var(--price) 14%,transparent);color:var(--price);border:1px solid color-mix(in srgb,var(--price) 45%,transparent);border-radius:7px;padding:5px 14px;font-weight:650;font-size:13px;cursor:pointer}.unlockBtn:hover{background:color-mix(in srgb,var(--price) 22%,transparent)}.unlockedBadge{margin-left:auto;color:var(--ok);font-size:12.5px;font-weight:650}.moduleBody{padding:18px;position:relative}.moduleBody.locked{max-height:300px;overflow:hidden}.teaserBlur{filter:blur(7px);-webkit-user-select:none;user-select:none;pointer-events:none}.lockVeil{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;background:linear-gradient(180deg,transparent,var(--lock-veil) 40%,var(--lock-veil))}.lockVeilText{color:var(--text);font-weight:650;text-shadow:0 2px 12px rgba(0,0,0,.8)}.caveat{margin-top:14px;padding:10px 14px;border-left:3px solid var(--border-hot);color:var(--muted);font-size:12px;background:var(--bg-raise);border-radius:0 8px 8px 0}.sourceLine{color:var(--faint);font-size:11.5px;margin-top:12px}.naBody{color:var(--muted);font-size:13.5px;padding:4px 0}.cluster{padding:12px 0;border-bottom:1px solid var(--border)}.cluster:last-child{border-bottom:none}.clusterHead{display:flex;align-items:baseline;gap:10px}.clusterTerm{font-weight:650}.clusterCount{color:var(--danger);font-size:12.5px;font-variant-numeric:tabular-nums}.clusterText{color:var(--muted);font-size:12.5px;margin-top:6px;font-family:var(--mono);line-height:1.55;border-left:2px solid var(--border);padding-left:12px}.expertGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}.expertCard{border:1px solid var(--border);border-radius:8px;background:var(--bg-raise);padding:13px 15px;display:flex;flex-direction:column;gap:4px}.expertName{font-weight:700}.expertNameLocked{display:inline-block;width:150px;height:13px;border-radius:4px;background:repeating-linear-gradient(90deg,var(--surface-2),var(--surface-2) 10px,var(--border) 10px,var(--border) 18px);filter:blur(3px)}.expertMeta{color:var(--muted);font-size:12px}.expertTotal{color:var(--price);font-weight:750;font-size:18px;font-variant-numeric:tabular-nums}.expertFoot{display:flex;align-items:center;margin-top:6px}.miniUnlock{background:none;border:1px solid var(--border-hot);color:var(--muted);font-size:11.5px;border-radius:6px;padding:3px 9px;cursor:pointer}.miniUnlock:hover{color:var(--price);border-color:color-mix(in srgb,var(--price) 45%,transparent)}.treeWrap{overflow-x:auto}.treeCols{display:flex;gap:34px;align-items:flex-start;min-width:760px}.treeCol{display:flex;flex-direction:column;gap:8px;flex:1}.treeColTitle{color:var(--muted);font-size:11.5px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.treeNode{border:1px solid var(--border);border-radius:7px;background:var(--bg-raise);padding:7px 11px;font-size:12.5px}.treeNode[data-anchor=true]{border-color:var(--accent-dim);background:color-mix(in srgb,var(--accent) 7%,var(--bg-raise))}.treeK{font-family:var(--mono);font-weight:650}.treeName{color:var(--muted);font-size:11.5px}.treeEdgeList{margin-top:16px}.treeEdge{padding:9px 0;border-top:1px solid var(--border);font-size:12.5px}.treeEdgeHead{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.treeQuote{color:var(--muted);font-size:12px;font-style:italic;margin-top:3px}.confChip{font-size:10.5px;border:1px solid var(--border);border-radius:4px;padding:0 5px;color:var(--muted)}.verifyBtn{background:none;border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent);font-size:11.5px;border-radius:6px;padding:2px 10px;cursor:pointer;margin-left:auto;white-space:nowrap}.verifyBtn:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)}.evidenceWrap{margin:12px 0 6px}.evidenceHead{color:var(--muted);font-size:12px;margin-bottom:8px;font-family:var(--mono)}.evidenceMiss{color:var(--price);font-family:var(--font)}.evidenceOpen{margin-left:10px;font-family:var(--font);font-size:11.5px}.evidenceErrDetail{margin-top:6px;font-family:var(--mono);font-size:10.5px;color:var(--faint);word-break:break-all}.evidenceCanvasBox{position:relative;border:1px solid var(--border-hot);border-radius:8px;overflow:hidden;background:#fff;min-height:120px}.evidenceCanvasBox canvas{display:block}.evidenceMarks{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.evHl{fill:color-mix(in srgb,var(--price) 32%,transparent)}.evTerm{fill:none;stroke:var(--accent);stroke-width:1.6}.evEllipse{fill:none;stroke:var(--danger);stroke-width:2.4}.evidenceLoading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#333;font-size:13px;background:#fff}.evidenceNote{margin:10px 0;padding:10px 14px;border:1px dashed var(--border-hot);border-radius:8px;color:var(--muted);font-size:12.5px}.evidenceQuote{margin-top:8px;color:var(--muted);font-size:12px;font-style:italic;border-left:2px solid var(--price);padding-left:12px}.mapRow{display:flex;gap:22px;flex-wrap:wrap}.mapSvgWrap{flex:1.4;min-width:380px}.mapTable{flex:1;min-width:240px}.mapTable table{width:100%;border-collapse:collapse;font-size:12.5px}.mapTable td,.mapTable th{padding:5px 8px;border-bottom:1px solid var(--border);text-align:left}.mapTable th{color:var(--muted);font-weight:600;font-size:11.5px;text-transform:uppercase}.mapTable td.num{text-align:right;font-variant-numeric:tabular-nums}.kvGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.kv{background:var(--bg-raise);border:1px solid var(--border);border-radius:8px;padding:11px 14px}.kvLabel{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.kvValue{font-weight:650;margin-top:2px}.patentRow{padding:8px 0;border-bottom:1px solid var(--border);font-size:13px;display:flex;gap:12px}.patentRow:last-child{border-bottom:none}.patentId{font-family:var(--mono);color:var(--accent);white-space:nowrap}.patentYear{color:var(--muted);margin-left:auto;white-space:nowrap}.recallRow{display:flex;gap:12px;padding:9px 0;border-bottom:1px solid var(--border);font-size:13px}.recallRow:last-child{border-bottom:none}.recallDate{font-family:var(--mono);color:var(--muted);white-space:nowrap}.recallClass{font-weight:700;white-space:nowrap}.recallClass[data-c="Class I"]{color:var(--danger)}.recallClass[data-c="Class II"]{color:var(--price)}.recallReason{color:var(--muted)}.alertsStrip{display:flex;align-items:center;gap:14px;margin-top:16px;border:1px dashed var(--border-hot);border-radius:var(--radius);padding:14px 18px;color:var(--muted);font-size:13px}.alertsBadge{color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);border-radius:999px;padding:2px 11px;font-size:11.5px;white-space:nowrap}.buyBtn{background:var(--accent);color:#06231c;font-weight:750;font-size:14px;border:none;border-radius:8px;padding:9px 20px;cursor:pointer}.buyBtn:hover{filter:brightness(1.1)}.buyBtn.gold{background:var(--price);color:#2a1c00}.ownedTag{color:var(--ok);font-weight:700}.modalVeil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#04060ab8;display:flex;align-items:center;justify-content:center}.modal{width:400px;max-width:calc(100vw - 40px);background:var(--bg-raise);border:1px solid var(--border-hot);border-radius:14px;padding:24px;box-shadow:0 24px 80px #0009}.modalTitle{font-weight:750;font-size:17px;margin:0 0 4px}.modalItem{color:var(--muted);font-size:13.5px}.modalPrice{font-size:30px;font-weight:750;color:var(--price);margin:14px 0 4px}.modalNote{color:var(--faint);font-size:11.5px}.modalBtns{display:flex;gap:10px;margin-top:20px}.modalBtns .buyBtn{flex:1}.cancelBtn{flex:1;background:none;border:1px solid var(--border);color:var(--muted);border-radius:8px;padding:9px 0;cursor:pointer;font-size:14px}.cancelBtn:hover{color:var(--text);border-color:var(--border-hot)}.footer{color:var(--faint);font-size:11.5px;padding:40px 28px 30px;text-align:center}.loading{color:var(--muted);padding:60px;text-align:center}
