/* codes.css - Cummins fault code reference, additions on top of vault.css */
.cp{max-width:980px;margin:0 auto;padding:22px 20px 60px}
.cp h1.pgh{text-wrap:balance}
.cp h1.pgh small{display:block;font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--yel);margin-bottom:6px;font-weight:700}
.cp h2{font-size:19px;margin:30px 0 10px;letter-spacing:-.01em;font-weight:800;text-wrap:balance}
.cp h2 span{background:none;-webkit-text-fill-color:inherit;color:var(--yel)}
.cp h3{font-size:15px;margin:18px 0 6px;font-weight:700}
.cp p{max-width:74ch;margin:8px 0}
.cp .lede{margin:8px 0 18px;max-width:74ch}
.cbar{margin:0 0 18px;gap:8px}
.cbar .btn{font-size:12.5px;padding:7px 13px;text-decoration:none}
.cbar .btn.on{border-color:var(--yel);color:var(--yel)}
.cp .kv{margin:14px 0 22px;grid-template-columns:max-content 1fr;align-items:start}
.cp .kv span{word-break:break-word}
.cp .kv code{font-size:14px;color:var(--yel);background:color-mix(in srgb,var(--yel) 10%,transparent);padding:1px 7px;border-radius:6px}
.cp .kv a{color:var(--yel)}
.lamp{display:inline-flex;align-items:center;gap:8px;font-weight:600}
.lamp i{width:12px;height:12px;border-radius:50%;display:inline-block;flex:none}
.lamp.red i{background:#E4002B;box-shadow:0 0 10px #E4002B}
.lamp.amber i{background:#FFB000;box-shadow:0 0 10px #FFB000}
.lamp.maintenance i{background:#3B9CFF;box-shadow:0 0 8px #3B9CFF}
.lamp.warning i{background:#E8E8E0;box-shadow:0 0 8px #E8E8E0}
.lamp.no i{background:var(--off)}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 4px}
.chips a{display:inline-block;font-family:var(--mono);font-size:12px;line-height:1.3;padding:6px 10px;border:1px solid var(--line2);border-radius:999px;color:var(--ink);text-decoration:none;background:var(--panel);max-width:100%}
.chips a:hover{border-color:var(--yel)}
.chips a b{color:var(--yel);font-weight:700}
.chips a span{color:var(--muted)}
.cp .list{margin:10px 0 6px}
.cp .list a{padding:9px 11px}
.cp .list a b{color:var(--yel)}
.cp .list a span{white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.ctas{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:12px;margin:28px 0 8px}
.ctabox{border:1px solid var(--line);border-radius:12px;padding:18px 20px;background:linear-gradient(180deg,var(--panel2),var(--panel))}
.ctabox.hot{border-color:color-mix(in srgb,var(--yel) 55%,var(--line))}
.ctabox b{display:block;font-size:16.5px;letter-spacing:-.01em}
.ctabox p{color:var(--muted);font-size:13.5px;margin:6px 0 14px;max-width:none}
.ctabox .price{font-family:var(--mono);font-size:22px;font-weight:700;color:var(--yel);letter-spacing:-.02em;margin:4px 0 2px}
.ctabox .cta{margin-top:0}
.tw{overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--panel);margin:10px 0 6px}
table.fmit{width:100%;border-collapse:collapse;font-size:13px;min-width:420px}
table.fmit th,table.fmit td{padding:6px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;line-height:1.35}
table.fmit th{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);background:var(--panel2)}
table.fmit td:first-child{font-family:var(--mono);color:var(--muted);width:60px}
table.fmit tr.cur td{background:color-mix(in srgb,var(--yel) 14%,transparent);color:var(--ink);font-weight:600}
table.fmit tr.cur td:first-child{color:var(--yel)}
.faq details{border-bottom:1px solid var(--line);padding:10px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:15px;list-style:none;display:flex;gap:10px;align-items:baseline}
.faq summary::before{content:"+";font-family:var(--mono);color:var(--yel);font-weight:700}
.faq details[open] summary::before{content:"\2212"}
.faq p{color:var(--muted);font-size:14px;margin:8px 0 2px 22px}
.cfoot{margin:40px 0 0;color:var(--faint);font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;line-height:1.7;border-top:1px solid var(--line);padding-top:16px}
.cfoot a{color:var(--muted)}
.srch{position:relative;margin:4px 0 14px;max-width:680px}
.srch input{width:100%;background:var(--panel);border:1px solid var(--line2);border-radius:999px;color:var(--ink);font:inherit;font-size:15px;padding:12px 18px 12px 42px}
.srch input:focus{outline:2px solid var(--yel);outline-offset:1px;border-color:transparent}
.srch svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);width:17px;height:17px;stroke:var(--muted);fill:none;stroke-width:2}
.srch .hint{font-family:var(--mono);font-size:11px;color:var(--faint);margin:6px 0 0 16px}
#res{margin:0 0 16px}
#res .n{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.grp{border:1px solid var(--line);border-radius:12px;background:var(--panel);margin:8px 0;overflow:hidden}
.grp summary{cursor:pointer;padding:11px 16px;font-weight:700;display:flex;gap:12px;align-items:baseline;list-style:none}
.grp summary::-webkit-details-marker{display:none}
.grp summary span{font-family:var(--mono);font-size:11px;color:var(--muted);font-weight:400;letter-spacing:.06em}
.grp summary::after{content:"+";margin-left:auto;font-family:var(--mono);color:var(--yel);font-weight:700}
.grp[open] summary::after{content:"\2212"}
.grp .list{border:0;border-radius:0;border-top:1px solid var(--line);margin:0}
.spn h2{scroll-margin-top:16px;display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-size:16px;margin:22px 0 6px}
.spn h2 code{font-family:var(--mono);font-size:12px;color:var(--yel);background:color-mix(in srgb,var(--yel) 10%,transparent);padding:2px 8px;border-radius:6px}
.spn h2 a{color:inherit;text-decoration:none}
.spn section[hidden]{display:none}
.jump{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 18px}
.jump a{font-family:var(--mono);font-size:11.5px;padding:4px 9px;border:1px solid var(--line);border-radius:999px;color:var(--muted);text-decoration:none}
.jump a:hover{border-color:var(--yel);color:var(--ink)}
.stats.cstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:14px 0 20px}
.cstats .stat b{display:block;font-family:var(--mono);font-size:22px;font-weight:700;letter-spacing:-.02em}
.cstats .stat span{color:var(--muted);font-size:12.5px}
@media (max-width:640px){.cp{padding:16px 16px 50px}.cp .kv{grid-template-columns:1fr;gap:2px 0}.cp .kv b{margin-top:8px}.ctas{grid-template-columns:1fr}table.fmit{min-width:360px}}
