.csr-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:20px;align-items:start}@media(max-width:780px){.csr-grid{grid-template-columns:1fr}}.csr-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:var(--shadow)}.csr-h{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin:0 0 16px;font-weight:700}.csr-lb{display:block;font-size:13px;font-weight:600;color:var(--soft);margin:14px 0 6px}.csr-lb em{font-weight:500;color:var(--muted);font-style:normal}.csr-card .csr-lb:first-of-type{margin-top:0}.csr-in{width:100%;font-family:inherit;font-size:15.5px;padding:11px 13px;border-radius:10px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);font-weight:600}.csr-in:focus{outline:none;border-color:var(--brand)}.csr-row{display:flex;gap:12px}.csr-row>div{flex:1}.csr-check{display:flex;align-items:center;gap:9px;margin-top:16px;font-size:14px;font-weight:600;color:var(--soft);cursor:pointer}.csr-check input{width:18px;height:18px;flex:none;accent-color:var(--brand);cursor:pointer}.csr-check small{font-weight:500;color:var(--muted)}.csr-note{margin-top:8px;border:1px solid var(--line);border-radius:10px;background:var(--bg);overflow:hidden}.csr-note>summary{cursor:pointer;list-style:none;padding:9px 13px;font-size:12.5px;font-weight:700;color:var(--brand-dark)}html[data-theme=dark] .csr-note>summary{color:#93c5fd}.csr-note>summary::-webkit-details-marker{display:none}.csr-note>summary:before{content:"▸ ";color:var(--brand)}.csr-note[open]>summary:before{content:"▾ "}.csr-note p{padding:0 13px 12px;margin:0;font-size:12.5px;color:var(--soft);line-height:1.6}.csr-note b{color:var(--ink)}.csr-hint{font-size:11.5px;color:var(--muted);font-weight:500;margin-top:4px}.csr-hide{display:none!important}.csr-card .l{display:flex;justify-content:space-between;gap:10px;font-size:14px;padding:7px 0;border-bottom:1px dashed var(--line)}.csr-card .l .v{font-variant-numeric:tabular-nums;font-weight:700;white-space:nowrap}.csr-card .l.plus .v{color:var(--brand-dark)}.csr-card .l.minus,.csr-card .l.minus .v{color:var(--red)}.csr-subt{display:flex;justify-content:space-between;font-size:13.5px;color:var(--soft);padding:8px 0 0}.csr-subt .v{font-weight:700}.csr-total{margin-top:14px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 12%,transparent),color-mix(in srgb,var(--accent) 9%,transparent));border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center}.csr-total .lbl{font-size:14px;font-weight:700}.csr-total .val{font-size:25px;font-weight:800;color:var(--brand);font-variant-numeric:tabular-nums}.csr-info{margin-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.csr-box{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px 12px}.csr-box .k{font-size:11px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.03em}.csr-box .v{font-size:14.5px;font-weight:700;margin-top:2px}.csr-box .v.yes{color:var(--brand)}.csr-box .v.no{color:var(--red)}.csr-method{margin-top:14px;border:1px solid var(--line);border-radius:12px;background:var(--bg);overflow:hidden}.csr-method>summary{cursor:pointer;list-style:none;padding:13px 16px;font-size:13.5px;font-weight:700;color:var(--brand-dark);display:flex;align-items:center;gap:8px}html[data-theme=dark] .csr-method>summary{color:#93c5fd}.csr-method>summary::-webkit-details-marker{display:none}.csr-method>summary:before{content:"▸";transition:transform .2s;color:var(--brand)}.csr-method[open]>summary:before{transform:rotate(90deg)}.csr-method-body{padding:0 16px 16px;font-size:12.8px;color:var(--soft);line-height:1.6}.csr-method-body b{color:var(--ink)}.csr-method-body pre{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:12px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px;color:var(--ink);overflow-x:auto;line-height:1.55;margin:10px 0;white-space:pre}.csr-method-body .src{font-size:11.5px;color:var(--muted);margin-top:10px}
