.rings-card,.rings-finder,[data-ring-category]{min-width:0;color:#17364a}
.rings-card section,.rings-finder{scroll-margin-top:1.5rem}
.rings-card h1,.rings-card h2,.rings-card h3,.rings-finder h2,.rings-finder h3{overflow-wrap:anywhere}
.rings-finder{padding:clamp(1rem,3vw,2rem);margin:1.8rem 0 2.5rem;background:#f3f7fb;border:1px solid #cedde8;border-radius:.5rem}
.rings-card button,.rings-finder button,.rings-card select,.rings-finder select,.rings-finder input{font:inherit;max-width:100%}
.rings-card button,.rings-finder button{cursor:pointer;white-space:normal;line-height:1.4;min-height:2.65rem;padding:.55rem .8rem;border:1px solid #9cb5c8;border-radius:.2rem;background:#fff;color:#174765}
.rings-card button:hover,.rings-finder button:hover{background:#e4eef8}
.rings-card button:disabled,.rings-finder button:disabled{cursor:not-allowed;opacity:.55}
.rings-card button[aria-pressed=true],.rings-finder button[aria-pressed=true]{background:#174765;color:#fff}
.rings-card :focus-visible,.rings-finder :focus-visible{outline:3px solid #1464cb;outline-offset:3px}
.rings-card label,.rings-finder label{display:grid;gap:.4rem;min-width:0;line-height:1.45}
.rings-card input,.rings-card select,.rings-card textarea,.rings-finder input,.rings-finder select,.rings-finder textarea{box-sizing:border-box;width:100%;min-width:0;padding:.7rem;border:1px solid #8fa7b8;border-radius:.2rem;background:#fff;color:#17364a;font:inherit}
.rings-card input[type=checkbox],.rings-finder input[type=checkbox]{width:1.2rem;height:1.2rem;flex:none}
.rings-check{display:flex!important;align-items:flex-start;gap:.65rem!important}
.rings-check input{margin-top:.2rem}
.rings-card fieldset,.rings-finder fieldset{min-width:0;border:0;padding:0;margin:0}
.rings-card legend,.rings-finder legend{font-weight:700;font-size:1.12rem;margin-bottom:1rem}
.rings-controls,.rings-card .field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem;align-items:start}
.rings-shape-examples{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;margin:1.2rem 0}
.rings-shape-examples figure{margin:0;min-width:0;background:#fff;padding:.6rem;border:1px solid #d5e1eb;border-radius:.3rem}
.rings-shape-examples img{display:block;width:100%;height:auto;object-fit:contain}
.rings-shape-examples figcaption{font-weight:600;font-size:.94rem}
.rings-measure-row{display:grid;grid-template-columns:minmax(10rem,.9fr) minmax(14rem,1.7fr) minmax(8rem,.8fr) auto;gap:.8rem;align-items:end;padding:1rem 0;border-bottom:1px solid #d2dfeb}
.rings-measure-row>label[hidden],.rings-card [hidden],.rings-finder [hidden]{display:none!important}
.rings-finder details,.rings-card details{padding:.9rem 0;border-bottom:1px solid #d4e0e9}
.rings-finder summary,.rings-card summary{cursor:pointer;font-weight:600;line-height:1.5}
.rings-finder .fineprint,.rings-card .fineprint{font-size:.9rem;line-height:1.5;color:#476276}
.rings-note{padding:1rem;border-left:3px solid #307bb5;background:#e7f0f8;line-height:1.6}
.rings-error{padding:1rem;border-left:3px solid #a93d30;background:#fff0ed;color:#782c25}
.rings-actions,.rings-tools,.rings-animation,.rings-view-tools,.rings-nav{display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;margin:1rem 0}
.rings-nav{padding:1rem 0;border-block:1px solid #cedce8}
.rings-nav a{padding:.4rem .65rem}
.rings-drawing,.rings-measure-drawing,.rings-result-picture,.rings-comparison-pictures figure>div{min-width:0;background:#fff;border:1px solid #d9e3ec;border-radius:.4rem}
.rings-card svg,.rings-finder svg,.rings-print svg{display:block;width:100%;height:auto;max-width:100%;overflow:visible}
.rings-animation{padding:.65rem;background:#edf3f8}
.rings-animation [data-diagram-state]{flex-basis:100%;font-size:.92rem;padding:.25rem}
.rings-secondary{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0}
.rings-secondary figure{min-width:0;margin:0;padding:.65rem;border:1px solid #d9e3ec;border-radius:.3rem}
.rings-secondary figcaption{font-weight:600}
.rings-scroll{overflow:auto;max-width:100%;overscroll-behavior-inline:contain;border:1px solid #c4d5e2;border-radius:.25rem;margin:1rem 0;background:#fff}
.rings-branch .rings-scroll,.rings-engineering .rings-scroll{max-height:75vh}
.rings-scroll table,.rings-print table{border-collapse:collapse;width:100%;font-size:.94rem;line-height:1.45}
.rings-scroll caption{padding:.75rem;font-size:1rem;font-weight:700;text-align:left}
.rings-scroll th,.rings-scroll td,.rings-print th,.rings-print td{padding:.65rem .75rem;text-align:left;vertical-align:top;border:1px solid #cfdae4}
.rings-scroll thead th{position:sticky;top:0;z-index:1;background:#e7f0f7;color:#17364a}
.rings-scroll tbody th{font-weight:500}
.rings-scroll small{display:block;margin-top:.3rem;color:#496579;font-weight:400}
.rings-scroll td{font-variant-numeric:tabular-nums}
.rings-scroll .is-highlight,.rings-scroll .is-selected{background:#dcecfb}
.rings-card [data-ring-field] button{padding:.2rem .45rem;min-height:2rem;font-style:italic}
.rings-card svg .is-highlight,.rings-finder svg .is-highlight{filter:none}
.rings-legend{display:grid;grid-template-columns:minmax(3rem,auto) 1fr;gap:.6rem 1rem}
.rings-legend dt{font-weight:700}.rings-legend dd{margin:0;min-width:0;overflow-wrap:anywhere}
.rings-result-group{margin:2rem 0}
.rings-candidates{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.rings-candidate{min-width:0;padding:1rem;border:1px solid #c2d4e1;border-radius:.4rem;background:#fff}
.rings-candidate h4{font-size:1.07rem;margin:.2rem 0 .7rem;line-height:1.5}
.rings-candidate .rings-actions a{display:inline-block;padding:.45rem 0}
.rings-candidate .rings-scroll{font-size:.86rem}
.rings-comparison-pictures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.rings-comparison-pictures figure{margin:0;min-width:0}.rings-comparison-pictures figcaption{margin:.5rem 0;font-size:.94rem}
.rings-difference{background:#fff8db}
[data-ring-results][inert],[data-ring-compare][inert]{opacity:.6}
.rings-identify-order,.rings-selected-order{border:1px solid #aac4d8;padding:1.25rem;background:#fff;margin:2rem 0}
.rings-selected-order>fieldset>label,.rings-identify-order>label{margin:1rem 0}
.rings-copy-fallback{display:block;width:100%;min-height:12rem;margin:1rem 0}
.rings-dialog{width:min(96vw,90rem);max-width:96vw;max-height:94vh;box-sizing:border-box;border:1px solid #789bb5;border-radius:.5rem;padding:1rem;background:#fff;color:#17364a;overflow:auto}
.rings-dialog::backdrop{background:rgb(3 21 36 / .65)}
.rings-dialog form{position:sticky;top:0;text-align:right;background:#fff;z-index:2;padding:.3rem}
.rings-dialog [data-ring-dialog-content]{min-width:0;overflow:auto}
.rings-dialog [data-ring-dialog-content]>svg{width:max(100%,60rem);min-width:60rem;max-width:none}
.rings-print{display:none}
@media(min-width:75rem) and (min-height:52rem){
 .rings-engineering{display:grid;grid-template-columns:minmax(22rem,.9fr) minmax(0,1.1fr);column-gap:1.4rem;align-items:start}
 .rings-engineering>[data-ring-diagram]{position:sticky;top:1rem;align-self:start}
 .rings-engineering>[data-ring-fields]{min-width:0}
}
.rings-card [data-ring-full-size]:disabled{opacity:1;color:inherit;background:transparent;border-color:transparent}
@media(max-width:65rem){.rings-measure-row{grid-template-columns:1fr 1fr}.rings-shape-examples{grid-template-columns:repeat(2,minmax(0,1fr))}.rings-candidates{grid-template-columns:1fr}.rings-comparison-pictures{grid-template-columns:1fr 1fr}}
@media(max-width:38rem){.rings-finder{padding:.85rem;margin:1rem 0}.rings-measure-row,.rings-secondary,.rings-comparison-pictures{grid-template-columns:1fr}.rings-shape-examples{gap:.5rem}.rings-shape-examples figure{padding:.35rem}.rings-actions>*{max-width:100%}.rings-scroll th,.rings-scroll td{padding:.45rem}.rings-dialog{padding:.5rem}.rings-legend{grid-template-columns:1fr}.rings-legend dd{margin-bottom:.5rem}}
@media(prefers-reduced-motion:reduce){.rings-card *,.rings-finder *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{
 @page{size:A4;margin:12mm}
 html,body{background:#fff!important;color:#000!important;font-size:9pt!important;margin:0!important;padding:0!important}
 body>.skip-link,body>a[href="#main"],.skip-link,[href="#main"]{display:none!important}
 body>*:not(main){display:none!important}
 main#main>*:not([data-rings-card]):not([data-ring-category]):not(.rings-category-shell){display:none!important}
 .rings-category-shell{display:block!important;width:auto!important;max-width:none!important;padding:0!important;margin:0!important}
 .rings-category-shell>*:not([data-ring-category]){display:none!important}
 [data-rings-card]>*,[data-ring-category]>*{display:none!important}
 [data-rings-card]>section.rings-print,[data-ring-category]>section.rings-print{display:block!important}
 [data-rings-card],[data-ring-category]{display:block!important;max-width:none!important;width:auto!important;margin:0!important;padding:0!important}
 .rings-print{display:block!important}.rings-print h1{font-size:16pt;line-height:1.3}.rings-print h2{font-size:13pt}.rings-print h3{font-size:11pt}
 .rings-print p,.rings-print pre{font-size:9pt;line-height:1.4;white-space:pre-wrap;overflow-wrap:anywhere}
 .rings-print svg{width:100%;max-height:100mm;break-inside:avoid;page-break-inside:avoid}
 .rings-print-views{display:grid;grid-template-columns:1fr 1fr;gap:3mm;break-inside:avoid}
 .rings-print-views svg{max-height:70mm}
 .rings-print .rings-scroll{overflow:visible;border:0;margin:3mm 0;max-height:none}
 .rings-print table{table-layout:auto;font-size:8pt;width:100%}
 .rings-print thead{display:table-header-group}.rings-print thead th{position:static!important;background:#eee!important}
 .rings-print th,.rings-print td{padding:1.5mm;overflow-wrap:anywhere;white-space:normal;border-color:#888}
 .rings-print tr{break-inside:avoid;page-break-inside:avoid}
 .rings-print button{border:0!important;background:transparent!important;padding:0!important;min-height:0!important;color:#000!important;font:inherit}
 .rings-print small{display:block}.rings-print a{color:#000;text-decoration:none}
}
