.cn-finder{max-width:1080px;margin:0 auto;padding:clamp(1rem,3vw,2rem)}
.cn-finder-page .page-title,.cn-finder-page .page-description,.cn-finder h2,.cn-finder label,.cn-finder__status{color:#fff}
.cn-finder__form{margin:1.5rem 0}
.cn-finder__form label{display:block;font-weight:700;margin-bottom:.5rem}
.cn-finder__controls{display:flex;gap:.75rem;flex-wrap:wrap}
.cn-finder__controls input{flex:1 1 22rem;min-height:3rem;padding:.7rem 1rem;border:1px solid #777;border-radius:.35rem}
.cn-finder__controls button{min-height:3rem;padding:.7rem 1.2rem;border:0;border-radius:.35rem;background:#222;color:#fff;font-weight:700;cursor:pointer}
.cn-finder__controls button:focus-visible,.cn-finder a:focus-visible,.cn-finder input:focus-visible{outline:3px solid #f0a500;outline-offset:3px}
.cn-finder__notice{padding:1rem;border-left:4px solid #777;background:#f4f4f4;color:#222}
.cn-finder__status{font-weight:700;margin:1.25rem 0}
.cn-finder__list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
.cn-finder__card{padding:1rem;border:1px solid #ddd;border-radius:.5rem;background:#fff}
.cn-finder__card a{text-decoration:none}
.cn-finder__meta{margin:.65rem 0;color:#4a4a4a}
.cn-finder__safety{font-size:.9rem;color:#585858}
@media (prefers-reduced-motion:reduce){.cn-finder *{scroll-behavior:auto!important}}
.cn-shaftfinder>.cn-finder--shaft-overview{max-width:none;margin:24px 0 0;padding:22px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(0,0,0,.18)}
.cn-finder--shaft-overview .cn-finder__eyebrow{margin:0;color:#a8ef27;font-size:.78rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.cn-finder--shaft-overview h2{margin:.2rem 0 .5rem!important}
.cn-finder--shaft-overview .cn-finder__form{margin:1rem 0}
.cn-finder--shaft-overview .cn-finder__controls button{background:#a8ef27;color:#10170d;border-radius:999px}
.cn-finder--shaft-overview .cn-finder__notice{margin:12px 0;background:#f4f8f1;border-left-color:#a8ef27}
.cn-reference-components{margin-top:35px;margin-bottom:35px}
.cn-reference-components__notice{max-width:78ch;color:#d8e0e7}
.cn-reference-components__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:18px}
.cn-reference-components__group{padding:18px;border:1px solid #35414c;border-radius:10px;background:#19232d;color:#fff}
.cn-reference-components__group h3{margin:0 0 10px;color:#fff;font-size:1.05rem}
.cn-reference-components__group ul{margin:0;padding-left:20px}
.cn-reference-components__group li+li{margin-top:7px}
.cn-reference-components__group span{color:#c6d0d7;font-size:.9em}
