.kratio{--ink:#173d3a;--muted:#60756e;--line:#d8e4df;color:var(--ink)}.kratio *{box-sizing:border-box;min-width:0}.kratio [hidden]{display:none!important}.kratio input,.kratio select,.kratio button{font:inherit}.kratio input,.kratio select{width:100%;min-height:48px;margin:0;border:1px solid #c4d7cd;border-radius:8px;background:#fff;padding:10px;color:var(--ink)}.kratio input[aria-invalid=true],.kratio select[aria-invalid=true]{border-color:#aa3535}.kratio :focus-visible{outline:3px solid #b88219;outline-offset:3px}.kratio button{min-height:44px;border:1px solid #aac3b8;border-radius:7px;background:white;padding:10px;color:var(--ink);cursor:pointer}.kratio button[aria-pressed=true]{border:2px solid #216b62;background:#eff7f1}.r-box{padding:18px;background:#f6f7ef;border-radius:14px}.r-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,9em),1fr));gap:10px 14px;margin:14px 0}.r-field{display:grid;grid-row:span 4;grid-template-rows:subgrid;gap:5px;font-weight:700;overflow-wrap:anywhere}.r-field small{font-size:.85em;font-weight:400;color:var(--muted)}.r-error{color:#a33333;font-size:.85em;min-height:0}.r-answer{margin:20px 0}.r-value{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:850;line-height:1.25;overflow-wrap:anywhere;margin:6px 0}.r-values{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr));gap:8px;margin:16px 0}.r-values>div{padding:12px;background:#f1f7f3;border-radius:8px;overflow-wrap:anywhere}.r-values strong{display:block;font-size:1.25em}.r-note{color:var(--muted);line-height:1.55;overflow-wrap:anywhere}.r-visual{margin:16px 0;background:#f8f9f4;padding:14px;border-radius:12px}.r-visual svg{display:block;width:100%;height:auto}.r-legend{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.95em;margin-bottom:10px}.kratio details{border-top:1px solid var(--line);padding:14px 0;margin-top:8px}.kratio summary{font-weight:750;cursor:pointer}.r-presets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.r-presets button{text-align:left}.r-presets span{display:block;margin-top:8px;font-size:.9em}.r-copy-status{display:block;min-height:1.5em}.kratio ol{padding-left:22px;overflow-wrap:anywhere}.kratio p{overflow-wrap:anywhere}@media(max-width:349px){.r-grid,.r-presets{grid-template-columns:1fr}.r-box{padding:12px}}
