/* Channel cards inherit the console background; color denotes measured state. */
.lulu-public-quality{--lulu-surface:#fffefd;--lulu-soft:#f7f3ed;--lulu-line:#e9e1d7;--lulu-ink:#34312d;--lulu-muted:#8b8379;--lulu-accent:#119e81;--lulu-good:#0a956f;--lulu-warn:#d08a24;--lulu-bad:#d2645b;--lulu-empty:#ecebe7;letter-spacing:0;color:var(--lulu-ink);font-family:inherit}
html.dark .lulu-public-quality{--lulu-surface:#2c2925;--lulu-soft:#35312b;--lulu-line:#484138;--lulu-ink:#eee8de;--lulu-muted:#b4aa9e;--lulu-accent:#56c4a8;--lulu-good:#65c8a3;--lulu-warn:#e1ad5d;--lulu-bad:#e9958b;--lulu-empty:#45413b}
html .lulu-public-quality,html[data-lulu-page] .lulu-public-quality{padding:4px 0;margin:0 0 24px;border:0;background:transparent;border-radius:0}
.lulu-public-quality h2{font-size:19px;line-height:1.5;font-weight:650;margin:0;letter-spacing:0}
.lulu-public-quality h3{font-size:15px;line-height:1.5;font-weight:650;margin:0 0 2px;letter-spacing:0;overflow-wrap:anywhere}
.lulu-public-quality small,html[data-lulu-page] .lulu-public-quality small{font-size:11px;line-height:1.5;color:var(--lulu-muted)}
.lulu-public-quality-head{display:flex;justify-content:space-between;align-items:center;gap:12px;min-width:0}
.lulu-public-quality-head>div{min-width:0}
.lulu-public-quality>.lulu-public-quality-head{padding-bottom:8px}
.lulu-quality-updated{display:block;font-variant-numeric:tabular-nums}
.lulu-monitor-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.lulu-monitor-actions a{color:#9b682d;font-size:12px;text-decoration:none;white-space:nowrap}
html.dark .lulu-monitor-actions a{color:#dbb47d}
.lulu-public-quality button{font:inherit;font-size:12px;color:var(--lulu-ink);background:var(--lulu-surface);border:1px solid var(--lulu-line);border-radius:6px;cursor:pointer;line-height:1.5}
.lulu-public-quality button:focus-visible,.lulu-public-quality a:focus-visible,.lulu-public-quality [tabindex]:focus-visible,.lulu-public-quality summary:focus-visible{outline:2px solid var(--lulu-accent);outline-offset:3px}
.lulu-public-quality .lulu-refresh{display:grid;place-items:center;width:32px;height:32px;padding:0;font-size:22px;line-height:1;color:var(--lulu-muted)}
.lulu-refresh:hover{background:var(--lulu-soft)}
.lulu-trend-modes{display:flex;align-items:center;padding:3px;background:var(--lulu-soft);border:1px solid var(--lulu-line);border-radius:7px}
.lulu-public-quality .lulu-trend-modes button{padding:3px 10px;border:0;background:transparent;color:var(--lulu-muted);border-radius:4px}
.lulu-public-quality .lulu-trend-modes button[aria-pressed=true]{background:var(--lulu-surface);color:var(--lulu-ink);box-shadow:0 1px 4px #45361e10}
.lulu-quality-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:18px;align-items:stretch}
html[data-lulu-page] .lulu-public-quality .lulu-public-quality-card,.lulu-public-quality-card{display:flex;flex-direction:column;min-width:0;padding:20px 20px 14px;border:1px solid var(--lulu-line);border-radius:8px;background:var(--lulu-surface);box-shadow:0 3px 14px #46382106}
.lulu-group-identity{display:flex;align-items:center;gap:10px}
.lulu-group-identity>div{min-width:0}
.lulu-group-mark{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;background:#f6ecdc;border:1px solid #e8dac4;border-radius:8px;color:#ab7d43;font-size:15px;font-weight:600}
.lulu-public-quality-card[data-private=true] .lulu-group-mark{background:#edf2ef;border-color:#dae4df;color:#6a8b7b}
html.dark .lulu-group-mark{background:#403728;border-color:#60513a;color:#d6b787}
html.dark .lulu-public-quality-card[data-private=true] .lulu-group-mark{background:#303d36;border-color:#46594c;color:#9cc1aa}
.lulu-public-quality-state{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:5px;font-size:11px;font-weight:600;white-space:nowrap;color:var(--lulu-muted);background:var(--lulu-soft)}
.lulu-public-quality-state:before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor}
.lulu-public-quality-state.healthy{color:var(--lulu-good);background:color-mix(in srgb,var(--lulu-good) 9%,var(--lulu-surface))}
.lulu-public-quality-state.warning{color:var(--lulu-warn);background:color-mix(in srgb,var(--lulu-warn) 10%,var(--lulu-surface))}
.lulu-public-quality-state.critical{color:var(--lulu-bad);background:color-mix(in srgb,var(--lulu-bad) 10%,var(--lulu-surface))}
.lulu-group-stats{display:grid;grid-template-columns:1.12fr 1fr 1fr 1fr;gap:12px;margin:16px 0 8px}
.lulu-metric small,.lulu-metric strong{display:block}
.lulu-metric strong{margin-top:4px;font-size:18px;font-weight:600;line-height:1.4;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:0;color:var(--lulu-ink)}
.lulu-metric:first-child strong{font-size:21px;line-height:1.2}
.lulu-metric.healthy strong{color:var(--lulu-good)}
.lulu-metric.warning strong{color:var(--lulu-warn)}
.lulu-metric.critical strong{color:var(--lulu-bad)}
.lulu-metric[tabindex]{cursor:help}
.lulu-trend{height:56px;position:relative;color:var(--lulu-accent);margin:0}
.lulu-trend[data-band=warning]{color:var(--lulu-warn)}
.lulu-trend[data-band=critical]{color:var(--lulu-bad)}
.lulu-trend[data-band=unknown]{color:#a2aaa5}
.lulu-trend svg{display:block;width:100%;height:100%;overflow:visible}
.lulu-cache-history{margin:8px 0 12px}
.lulu-cache-history .lulu-trend{height:70px}
.lulu-cache-history circle[role=button]{cursor:pointer}
.lulu-cache-history circle[role=button]:focus{outline:none;stroke:var(--lulu-accent);stroke-width:2.5}
.lulu-cache-times{display:flex;justify-content:space-between;color:var(--lulu-muted);font-size:10px}
.lulu-trend-empty{position:absolute;inset:24% 0 auto;text-align:center;font-size:12px;color:var(--lulu-muted)}
.lulu-trend-tooltip{position:absolute;bottom:40px;left:0;right:0;z-index:20;max-width:350px;padding:12px 14px;background:var(--lulu-surface);border:1px solid var(--lulu-line);border-radius:8px;box-shadow:0 8px 28px #46382120;color:var(--lulu-ink);font-size:11px;line-height:1.75;pointer-events:none;overflow-wrap:anywhere}
.lulu-trend-tooltip strong{display:block;margin-bottom:4px;font-size:12px}
.lulu-comparison-legend{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 10px;font-size:11px;color:var(--lulu-muted);min-height:16px}
.lulu-comparison-legend small{font-size:10px}
.lulu-checks{margin-top:auto;padding-top:8px;border-top:1px solid var(--lulu-line)}
.lulu-check-axis{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 6px}
.lulu-check-axis:last-child{margin:6px 0 0}
.lulu-check-axis:last-child small{font-size:10px;color:var(--lulu-muted)}
.lulu-check-section{margin-top:8px}
.lulu-check-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:18px;margin-bottom:6px;font-size:11px}
.lulu-check-heading strong{font-weight:500;color:var(--lulu-ink)}
.lulu-check-meta{display:flex;align-items:center;gap:9px;white-space:nowrap}
.lulu-public-quality .lulu-check-meta button{border:0;padding:0;border-radius:0;background:transparent;font-size:11px;color:var(--lulu-muted)}
.lulu-public-quality .lulu-check-meta button:hover{color:var(--lulu-ink);text-decoration:underline}
.lulu-check-strip{display:grid;gap:4px}
.lulu-public-quality .lulu-check-cell{height:13px;min-width:0;padding:0;border:0;border-radius:2px;background:var(--lulu-empty)}
.lulu-public-quality .lulu-check-cell.healthy{background:#19b48a}
.lulu-public-quality .lulu-check-cell.warning{background:#d7a451}
.lulu-public-quality .lulu-check-cell.critical{background:#d77a71}
.lulu-public-quality .lulu-check-cell.partial{opacity:.6}
.lulu-public-quality .lulu-check-cell:hover{outline:2px solid var(--lulu-accent);outline-offset:2px}
.lulu-quality-row-state{font-size:11px;color:var(--lulu-muted)}
.lulu-quality-row-state.normal{color:var(--lulu-good)}
.lulu-quality-row-state.fluctuating{color:var(--lulu-warn)}
.lulu-quality-row-state.attention{color:var(--lulu-bad)}
.lulu-quality-detail{margin-top:14px;padding-top:12px;border-top:1px solid var(--lulu-line);font-size:12px}
.lulu-quality-detail summary{cursor:pointer;color:var(--lulu-ink)}
.lulu-quality-detail p{line-height:1.7;overflow-wrap:anywhere}
.lulu-quality-detail:not([open]){display:none}
.lulu-public-quality [hidden],.lulu-tps-note,.lulu-trend-caption,.lulu-data-time,.lulu-trend-axis{display:none!important}
.lulu-inline-selftest{margin-top:30px;padding-top:24px;border-top:1px solid var(--lulu-line)}
.lulu-inline-selftest>p{font-size:12px;color:var(--lulu-muted);margin:6px 0 16px}
.lulu-selftest-frame{display:block;width:100%;border:0;background:transparent;border-radius:8px}
[data-lulu-old-monitor],html.lulu-monitor-route main>:not(.lulu-public-quality){display:none!important}
html.lulu-monitor-route main:not(:has(>.lulu-public-quality))::before{content:"正在加载渠道状态…";display:block;padding:32px;color:#8b8379}
@media(min-width:1600px){.lulu-quality-content{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:680px){.lulu-quality-content{grid-template-columns:minmax(0,1fr);gap:16px}.lulu-public-quality>.lulu-public-quality-head{align-items:flex-start;flex-wrap:wrap}.lulu-monitor-actions{gap:10px}.lulu-group-stats{gap:8px}.lulu-metric strong{font-size:16px}.lulu-metric:first-child strong{font-size:19px}}
@media(max-width:360px){html[data-lulu-page] .lulu-public-quality .lulu-public-quality-card,.lulu-public-quality-card{padding:16px 12px 12px}.lulu-group-stats{gap:5px}.lulu-metric strong{font-size:14px}.lulu-metric:first-child strong{font-size:17px}.lulu-check-strip{gap:3px}.lulu-check-meta{gap:6px}.lulu-group-mark{width:30px;height:30px;flex-basis:30px}.lulu-public-quality h3{font-size:14px}}

.lulu-public-quality{--lulu-surface:#fffdf8;--lulu-soft:#f4ead3;--lulu-line:#e9e3d7;--lulu-ink:#39342b;--lulu-muted:#807565;--lulu-accent:#b88936;--lulu-good:#419b79;--lulu-warn:#d6a047;--lulu-bad:#cc7770;--lulu-empty:#e5e3dc}
html.dark .lulu-public-quality{--lulu-surface:#2b2722;--lulu-soft:#403323;--lulu-line:#494035;--lulu-ink:#eee7dc;--lulu-muted:#b9af9d;--lulu-accent:#d6aa61;--lulu-good:#7dc5a5;--lulu-warn:#d4ac66;--lulu-bad:#ec9a91;--lulu-empty:#514a40}
.lulu-quality-content{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
html[data-lulu-page] .lulu-public-quality .lulu-public-quality-card{border-radius:14px;padding:22px;background:var(--lulu-surface);box-shadow:0 3px 12px #00000003}
.lulu-group-mark{background:var(--lulu-soft);color:var(--lulu-accent);border:0}
.lulu-group-stats{margin:22px 0 17px}.lulu-group-stats .lulu-metric strong{color:var(--lulu-ink)!important;font-size:22px}.lulu-group-stats .lulu-metric:first-child strong{font-size:22px}
.lulu-cache-history .lulu-trend{height:110px}.lulu-cache-times,.lulu-cache-times small{font-size:11px}
.lulu-comparison-legend small{font-size:11px}.lulu-cache-scale{border:0!important;background:transparent!important;color:var(--lulu-muted)!important;text-decoration:underline;text-underline-offset:3px;padding:0!important;font-size:11px!important}
.lulu-check-section{display:grid;grid-template-columns:78px minmax(0,1fr);gap:8px;align-items:center;margin-top:12px}.lulu-check-heading{margin:0}.lulu-check-meta{display:none}.lulu-check-strip{gap:4px}
.lulu-public-quality .lulu-check-cell{height:17px;border-radius:3px}.lulu-public-quality .lulu-check-cell.healthy{background:var(--lulu-good)}.lulu-public-quality .lulu-check-cell.warning{background:var(--lulu-warn)}.lulu-public-quality .lulu-check-cell.critical{background:var(--lulu-bad)}
.lulu-check-axis:first-child{display:none}.lulu-check-axis:last-child{margin-left:86px;margin-top:9px}.lulu-check-axis:last-child small{font-size:11px}
.lulu-record-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px;font-size:11px;color:var(--lulu-muted)}.lulu-record-footer button{padding:0;border:0;background:none;color:var(--lulu-accent)}
.lulu-check-dialog.lulu-public-quality{width:min(780px,calc(100% - 28px));max-height:86vh;overflow:auto;padding:24px!important;border:1px solid var(--lulu-line)!important;border-radius:15px!important;background:var(--lulu-surface)!important;margin:auto!important;color:var(--lulu-ink)}
.lulu-check-dialog::backdrop{background:#201b1655}.lulu-check-dialog h2{font-size:21px}.lulu-check-dialog button{padding:6px 11px}.lulu-detail-tabs{display:flex;gap:12px;border-bottom:1px solid var(--lulu-line);margin:18px 0}.lulu-detail-tabs button{border:0;border-radius:0;background:transparent;padding:9px 3px;color:var(--lulu-muted)}.lulu-detail-tabs button[aria-pressed=true]{color:var(--lulu-accent);border-bottom:2px solid var(--lulu-accent)}
.lulu-detail-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.lulu-detail-method{margin:20px 0;font-size:12px;color:var(--lulu-muted)}.lulu-detail-method summary{cursor:pointer}.lulu-detail-rounds{display:flex;gap:3px;margin:12px 0}.lulu-detail-rounds button{flex:1;min-width:0!important;height:28px!important;padding:0!important}
.lulu-detail-table-wrap{overflow:auto;margin:16px 0}.lulu-detail-table{width:100%;border-collapse:collapse;font-size:12px}.lulu-detail-table td,.lulu-detail-table th{padding:12px 8px;border-bottom:1px solid var(--lulu-line);text-align:left;white-space:nowrap;font-weight:400}.lulu-detail-table th{color:var(--lulu-muted)}.lulu-detail-table td small{display:block}.lulu-detail-table tr.selected{background:var(--lulu-soft)}
@media(min-width:1700px){.lulu-quality-content:has([data-private=true]){grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.lulu-quality-content{grid-template-columns:1fr}.lulu-group-stats .lulu-metric strong,.lulu-group-stats .lulu-metric:first-child strong{font-size:20px}}
@media(max-width:400px){html[data-lulu-page] .lulu-public-quality .lulu-public-quality-card{padding:18px 14px}.lulu-group-stats .lulu-metric strong,.lulu-group-stats .lulu-metric:first-child strong{font-size:17px}.lulu-check-section{grid-template-columns:70px minmax(0,1fr);gap:6px}.lulu-check-strip{gap:2px}.lulu-check-dialog.lulu-public-quality{padding:15px!important}}

/* Small, readable cards: warm surfaces, one cache trace, semantic check colors. */
.lulu-public-quality{--lulu-surface:#fffefa;--lulu-soft:#f6efe1;--lulu-line:#ebe7df;--lulu-ink:#353630;--lulu-muted:#89867d;--lulu-accent:#b48a40;--lulu-good:#329d79;--lulu-warn:#d9a347;--lulu-bad:#cd7772}
html.dark .lulu-public-quality{--lulu-surface:#292824;--lulu-soft:#39342a;--lulu-line:#444138;--lulu-ink:#edeae1;--lulu-muted:#aba79b;--lulu-accent:#d6b36c;--lulu-good:#69b596}
html[data-lulu-page] .lulu-public-quality .lulu-public-quality-card{padding:22px 22px 17px;border-radius:20px;box-shadow:0 2px 5px #483b2203;background:linear-gradient(160deg,color-mix(in srgb,var(--lulu-soft) 32%,var(--lulu-surface)),var(--lulu-surface) 65%)}
.lulu-quality-content{gap:18px}.lulu-group-mark{width:32px;height:32px;flex-basis:32px;border-radius:10px;font-size:13px}.lulu-group-identity{gap:9px}.lulu-public-quality h3{font-size:15px}
.lulu-public-quality-state{font-weight:500;border-radius:20px;padding:3px 8px}.lulu-group-stats{margin:21px 0 8px;gap:10px}.lulu-group-stats .lulu-metric strong,.lulu-group-stats .lulu-metric:first-child strong{font-size:20px;font-weight:600;letter-spacing:-.4px}
.lulu-cache-history{margin:5px 0 17px}.lulu-cache-history .lulu-trend{height:86px}.lulu-comparison-legend{margin-bottom:0;justify-content:initial;gap:10px}.lulu-comparison-legend>small{margin-left:auto}.lulu-cache-scale{font-size:10px!important;text-decoration:none;border-radius:4px!important;padding:1px 4px!important;background:var(--lulu-soft)!important}.lulu-cache-times{opacity:.7}
.lulu-checks{padding-top:11px;border-top:0}.lulu-check-section{grid-template-columns:70px minmax(0,1fr);margin-top:9px;gap:8px}.lulu-check-strip{gap:4px}.lulu-public-quality .lulu-check-cell{height:20px;border-radius:4px;transition:opacity .12s}.lulu-check-cell:hover{opacity:.75}.lulu-check-axis:last-child{margin-left:78px}.lulu-check-axis:last-child small{font-size:10px}
.lulu-record-footer{border-top:1px solid var(--lulu-line);padding-top:11px;margin-top:8px;font-size:10px}.lulu-record-footer button{font-size:11px}.lulu-inline-selftest{border-top:1px solid var(--lulu-line);margin-top:30px;padding-top:24px}
@media(max-width:500px){html[data-lulu-page] .lulu-public-quality .lulu-public-quality-card{padding:18px 16px;border-radius:16px}.lulu-group-stats{gap:7px}.lulu-group-stats .lulu-metric strong,.lulu-group-stats .lulu-metric:first-child strong{font-size:18px}.lulu-check-strip{gap:3px}}
@media(prefers-reduced-motion:reduce){.lulu-check-cell{transition:none}}

/* 20261011 visual cleanup: calm warm surfaces and explicit missing-data bridges. */
.lulu-public-quality{--lulu-surface:#fffdf8;--lulu-soft:#f7f0e4;--lulu-line:#e8dfd2;--lulu-ink:#34312d;--lulu-muted:#8a8176;--lulu-accent:#b98236;--lulu-gap:#c7bfb4;--lulu-good:#329879;--lulu-warn:#d19a43;--lulu-bad:#c96f69;--lulu-empty:#ebe7df}
html.dark .lulu-public-quality{--lulu-surface:#2b2926;--lulu-soft:#37332e;--lulu-line:#4a443c;--lulu-ink:#eee9e0;--lulu-muted:#b4aa9d;--lulu-accent:#d5a75c;--lulu-gap:#777066;--lulu-good:#72c3a0;--lulu-warn:#dbad61;--lulu-bad:#e28d84;--lulu-empty:#4a4540}
html[data-lulu-page] .lulu-public-quality .lulu-public-quality-card{background:var(--lulu-surface);border-color:var(--lulu-line);box-shadow:0 5px 18px rgba(93,67,35,.06)}
.lulu-public-quality .lulu-group-mark{background:var(--lulu-soft);border-color:var(--lulu-line);color:var(--lulu-accent)}
.lulu-public-quality .lulu-cache-history{padding:10px 12px 8px;border:1px solid var(--lulu-line);border-radius:12px;background:color-mix(in srgb,var(--lulu-soft) 42%,var(--lulu-surface))}
.lulu-public-quality .lulu-cache-history .lulu-trend{height:86px}

.lulu-cache-gap-hit{cursor:help;pointer-events:stroke}
.lulu-cache-gap-hit:focus{outline:none;stroke:color-mix(in srgb,var(--lulu-gap) 18%,transparent)}

/* Cache chart: fixed readout, larger pointer area, labeled axes. */
.lulu-public-quality .lulu-cache-history .lulu-trend{height:126px}
.lulu-cache-readout{min-height:36px;padding:5px 0;color:var(--lulu-muted);font-size:11px;line-height:1.5;pointer-events:none}
.lulu-cache-times{padding-left:8.75%;display:flex;justify-content:space-between}

/* 满血监测 cards (v41c) */
.lulu-fp-intro{grid-column:1/-1;margin:2px 0 6px;font-size:13px;color:var(--lulu-muted)}.lulu-fp-intro p{margin:0 0 4px}
.lulu-fp-intro details summary{cursor:pointer;font-size:12px}
.lulu-fp-card{display:grid;gap:12px;padding:16px 18px;background:var(--lulu-surface);border:1px solid var(--lulu-line);border-radius:18px;min-width:0}
.lulu-fp-head{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center}
.lulu-fp-head h3{margin:0;font-size:17px}.lulu-fp-head h3 small{color:var(--lulu-muted);font-weight:400}
.lulu-fp-sub{display:block;font-size:12px;color:var(--lulu-muted);margin-top:2px}
.lulu-fp-verdict{font-size:12px;padding:3px 10px;border-radius:999px;white-space:nowrap;background:var(--lulu-soft);color:var(--lulu-ink)}
.lulu-fp-verdict.ok{background:color-mix(in srgb,var(--lulu-good) 18%,transparent)}
.lulu-fp-verdict.warn{background:color-mix(in srgb,var(--lulu-warn) 24%,transparent)}
.lulu-fp-verdict.bad{background:color-mix(in srgb,var(--lulu-bad) 24%,transparent);font-weight:600}
.lulu-fp-card[data-level="bad"]{border-color:color-mix(in srgb,var(--lulu-bad) 45%,var(--lulu-line))}
.lulu-fp-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.lulu-fp-rates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lulu-fp-rate{padding:12px;border:1px solid var(--lulu-line);border-radius:12px;background:var(--lulu-surface);min-width:0}.lulu-fp-rate small{display:block;font-size:11px;line-height:1.5;color:var(--lulu-muted);overflow-wrap:anywhere}.lulu-fp-rate strong{display:block;margin:3px 0;font-size:28px;font-weight:650;color:var(--lulu-ink);font-variant-numeric:tabular-nums}
.lulu-fp-stat{background:var(--lulu-soft);border-radius:10px;padding:7px 10px}.lulu-fp-stat small{display:block;font-size:11px;color:var(--lulu-muted)}.lulu-fp-stat strong{font-size:18px;font-variant-numeric:tabular-nums}
.lulu-fp-cache-head{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}.lulu-fp-cache-head small{color:var(--lulu-muted);font-size:11px}
.lulu-fp-scale{margin-left:auto;font-size:11px;border:1px solid var(--lulu-line);background:var(--lulu-surface);border-radius:8px;padding:2px 8px;cursor:pointer;color:var(--lulu-muted)}
.lulu-fp-chart{position:relative}.lulu-fp-chart svg{width:100%;height:120px;display:block}
.lulu-fp-empty{position:absolute;inset:0;display:grid;place-items:center;font-size:12px;color:var(--lulu-muted)}
.lulu-fp-readout{font-size:11px;color:var(--lulu-muted);min-height:15px}
.lulu-fp-checks{display:grid;gap:6px}
.lulu-fp-strip{display:grid;grid-template-columns:78px 1fr;gap:8px;align-items:center}
.lulu-fp-strip-title{font-size:12px;color:var(--lulu-muted)}
.lulu-fp-cells{display:grid;gap:3px}
.lulu-fp-cell{height:20px;border:0;border-radius:4px;padding:0;cursor:pointer;background:var(--lulu-empty);position:relative}
.lulu-fp-cell.ok{background:var(--lulu-good)}.lulu-fp-cell.warn{background:var(--lulu-warn)}.lulu-fp-cell.bad{background:var(--lulu-bad)}
.lulu-fp-cell.undecided{background:repeating-linear-gradient(135deg,var(--lulu-empty) 0 4px,color-mix(in srgb,var(--lulu-warn) 35%,var(--lulu-empty)) 4px 8px)}
.lulu-fp-cell.switch::before{content:"";position:absolute;left:-3px;top:-4px;bottom:-4px;width:2px;background:var(--lulu-accent)}
.lulu-fp-cell:hover,.lulu-fp-cell:focus-visible{outline:2px solid var(--lulu-ink);outline-offset:1px}
.lulu-fp-strip-note{grid-column:1/-1;font-size:12px;color:var(--lulu-muted);background:var(--lulu-soft);border-radius:6px;padding:2px 8px}
.lulu-fp-axis{display:flex;justify-content:space-between;color:var(--lulu-muted);font-size:11px;padding-left:86px}
.lulu-fp-footer{display:flex;gap:10px;align-items:center;flex-wrap:wrap;font-size:12px;color:var(--lulu-muted)}
.lulu-fp-history{margin-left:auto}.lulu-fp-history summary{cursor:pointer}.lulu-fp-history p{margin:2px 0}
.lulu-fp-records{font-size:12px;border:1px solid var(--lulu-line);background:var(--lulu-surface);border-radius:8px;padding:3px 10px;cursor:pointer}
@media (max-width:640px){.lulu-fp-head{grid-template-columns:auto 1fr}.lulu-fp-verdict{grid-column:1/-1;justify-self:start}.lulu-fp-axis{padding-left:0}.lulu-fp-strip{grid-template-columns:1fr}}
