/* RSC toolbox — scoped to .rk */
.rk{--fire:#C2410C;--fire-bg:#FFF1EA;--elec:#9A6400;--elec-bg:#FFF6DF;--str:#2A5DB0;--str-bg:#EDF3FC;--ok:#047857;--ok-bg:#E7F6EF;--no:#B91C1C;--no-bg:#FDECEC;--wn:#9A5B00;--wn-bg:#FFF5E1;--na:var(--text-3);--na-bg:var(--sunken)}
:root[data-theme="dark"] .rk{--fire:#FF9A6B;--fire-bg:#3A1F14;--elec:#F2C35B;--elec-bg:#33270E;--str:#8DB4F0;--str-bg:#152338;--ok:#4ADE9F;--ok-bg:#0F2E22;--no:#FF8A8A;--no-bg:#3A1A1C;--wn:#F5C26B;--wn-bg:#2E2412}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .rk{--fire:#FF9A6B;--fire-bg:#3A1F14;--elec:#F2C35B;--elec-bg:#33270E;--str:#8DB4F0;--str-bg:#152338;--ok:#4ADE9F;--ok-bg:#0F2E22;--no:#FF8A8A;--no-bg:#3A1A1C;--wn:#F5C26B;--wn-bg:#2E2412}}
.rk{color:var(--text-1)}
.rk *{box-sizing:border-box}
.rk .ic{width:20px;height:20px;flex:none}
.rk button{font:inherit;color:inherit}
.rk-prof{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 20px;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px 16px;margin:6px 0 16px}
.rk-prof h2{font-size:.95rem;margin:0;display:flex;align-items:center;gap:8px;width:100%}
.rk-prof h2 small{font-weight:400;color:var(--text-2);font-size:.8rem}
.rk-pg{display:flex;flex-direction:column;gap:6px;min-width:0}
.rk-pg>span{font-size:.78rem;color:var(--text-2)}
.rk-seg{display:inline-flex;flex-wrap:wrap;gap:4px;background:var(--sunken);border-radius:10px;padding:3px}
.rk-seg button{border:0;background:transparent;border-radius:8px;padding:6px 11px;font-size:.86rem;cursor:pointer;min-height:34px;line-height:1.25}
.rk-seg button[aria-pressed="true"]{background:var(--surface);box-shadow:0 1px 2px rgba(0,0,0,.12);font-weight:600;color:var(--primary)}
.rk-seg button small{display:block;font-size:.7rem;color:var(--text-2);font-weight:400}
.rk-tg{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:6px 12px;cursor:pointer;min-height:40px;font-size:.88rem}
.rk-tg i{width:34px;height:20px;border-radius:99px;background:var(--border-strong);position:relative;transition:background .15s;flex:none}
.rk-tg i:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}
.rk-tg[aria-pressed="true"]{border-color:var(--primary)}
.rk-tg[aria-pressed="true"] i{background:var(--primary)}
.rk-tg[aria-pressed="true"] i:after{transform:translateX(14px)}
.rk-num{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow:hidden;height:40px}
.rk-num button{width:36px;height:100%;border:0;background:transparent;cursor:pointer;font-size:1.1rem}
.rk-num input{width:44px;border:0;text-align:center;background:transparent;font:inherit;font-weight:600;color:var(--text-1)}
.rk-date{border:1px solid var(--border);border-radius:10px;padding:6px 10px;background:var(--surface);color:var(--text-1);font:inherit;height:40px}

.rk-disc{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 14px}
.rk-disc button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border);background:var(--surface);border-radius:999px;padding:7px 14px;cursor:pointer;font-size:.9rem;min-height:40px}
.rk-disc button[aria-pressed="true"]{background:var(--text-1);color:var(--surface);border-color:var(--text-1)}
.rk-disc .dot{width:9px;height:9px;border-radius:50%}
.rk-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.rk-sec{grid-column:1/-1;display:flex;align-items:center;gap:8px;font-weight:700;font-size:.95rem;margin:10px 0 0}
.rk-sec:first-child{margin-top:0}
.rk-sec small{font-weight:400;color:var(--text-2)}
.rk-tile{display:flex;gap:12px;align-items:flex-start;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:14px;cursor:pointer;transition:border-color .15s,transform .15s,box-shadow .15s;text-decoration:none;color:inherit;min-height:92px}
.rk-tile:hover{border-color:var(--c);box-shadow:var(--e2);transform:translateY(-1px)}
.rk-tile:focus-visible,.rk button:focus-visible,.rk input:focus-visible,.rk select:focus-visible{outline:0;box-shadow:var(--focus)}
.rk-ti{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:var(--cb);color:var(--c);flex:none}
.rk-ti .ic{width:22px;height:22px}
.rk-tt{display:block;min-width:0}
.rk-tt b{display:block;font-size:.95rem;line-height:1.35}
.rk-tt small{display:block;font-size:.8rem;color:var(--text-2);margin-top:3px;line-height:1.45}
.rk-kind{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-size:.7rem;font-style:normal;font-weight:600;border-radius:99px;padding:2px 8px;background:var(--sunken);color:var(--text-2)}
.rk-kind .ic{width:12px;height:12px}
.d-fire{--c:var(--fire);--cb:var(--fire-bg)}.d-elec{--c:var(--elec);--cb:var(--elec-bg)}.d-str{--c:var(--str);--cb:var(--str-bg)}

/* tool view */
.rk-tool[hidden],.rk-home[hidden]{display:none}
.rk-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}
.rk-back{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:6px 12px;cursor:pointer;min-height:40px}
.rk-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;flex:1;min-width:0;padding:2px}
.rk-chips::-webkit-scrollbar{display:none}
.rk-chips a{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border:1px solid var(--border);border-radius:99px;padding:5px 11px;font-size:.82rem;color:var(--text-2);text-decoration:none;background:var(--surface)}
.rk-chips a .ic{width:15px;height:15px;color:var(--c)}
.rk-chips a[aria-current="page"]{border-color:var(--c);color:var(--text-1);font-weight:600;background:var(--cb)}
.rk-th{display:flex;gap:14px;align-items:flex-start;margin:4px 0 14px}
.rk-th h2{margin:0;font-size:1.3rem;line-height:1.35}
.rk-th p{margin:4px 0 0;color:var(--text-2);font-size:.92rem;max-width:72ch}
.rk-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:14px;align-items:start}
@media (max-width:899px){.rk-body{grid-template-columns:1fr}}
.rk-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:16px}
.rk-out{position:sticky;top:calc(var(--hdr,56px) + 12px)}
@media (max-width:899px){.rk-out{position:static}}
.rk-card h3{font-size:.92rem;margin:0 0 10px;display:flex;align-items:center;gap:8px}
.rk-card h3 .ic{width:17px;height:17px;color:var(--text-2)}
.rk-fs{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
.rk-f{display:flex;flex-direction:column;gap:5px;font-size:.84rem;color:var(--text-2);min-width:0}
.rk-f.w{grid-column:1/-1}
.rk-in{display:flex;align-items:center;border:1px solid var(--border-strong);border-radius:10px;background:var(--surface);overflow:hidden;min-height:42px}
.rk-in:focus-within{border-color:var(--primary);box-shadow:var(--focus)}
.rk-in input,.rk-in select{flex:1;min-width:0;border:0;background:transparent;font:inherit;font-size:1rem;color:var(--text-1);padding:8px 10px;font-weight:600}
.rk-in select{font-weight:500;font-size:.92rem;cursor:pointer}
.rk-in input:focus,.rk-in select:focus{outline:0}
.rk-in em{font-style:normal;font-size:.8rem;color:var(--text-3);padding:0 10px 0 2px;white-space:nowrap}
.rk-f small{font-size:.74rem;color:var(--text-3);line-height:1.4}
.rk-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.rk-row>span{font-size:.84rem;color:var(--text-2)}
.rk-sub{font-size:.8rem;font-weight:600;color:var(--text-2);margin:16px 0 8px;text-transform:none}
.rk-ex{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr) 36px;gap:6px;align-items:center;margin-bottom:6px}
.rk-ex .rk-in{min-height:38px}
.rk-ex .rk-in input{font-size:.92rem;padding:6px 8px}
.rk-exh{font-size:.72rem;color:var(--text-3)}
.rk-x{width:34px;height:34px;border:1px solid var(--border);border-radius:9px;background:transparent;cursor:pointer;display:grid;place-items:center;color:var(--text-3)}
.rk-x .ic{width:15px;height:15px}
.rk-add{display:inline-flex;align-items:center;gap:6px;border:1px dashed var(--border-strong);border-radius:10px;background:transparent;padding:7px 12px;cursor:pointer;font-size:.86rem;color:var(--primary);font-weight:600}
.rk-add .ic{width:16px;height:16px}
.rk-pick{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.rk-pick button{display:flex;align-items:center;gap:9px;text-align:left;border:1px solid var(--border);border-radius:12px;background:var(--surface);padding:10px;cursor:pointer;font-size:.86rem;line-height:1.35;min-height:52px}
.rk-pick button .ic{color:var(--c,var(--text-2))}
.rk-pick button[aria-pressed="true"]{border-color:var(--primary);background:var(--green-50);font-weight:600}
.rk-cbx{display:flex;flex-direction:column;gap:6px}
.rk-cbx label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--border);border-radius:10px;padding:10px 12px;cursor:pointer;font-size:.9rem;line-height:1.45}
.rk-cbx label:has(input:checked){border-color:var(--primary);background:var(--green-50)}
.rk-cbx input{margin-top:3px;accent-color:var(--primary);width:16px;height:16px;flex:none}
.rk-cbx small{display:block;color:var(--text-2);font-size:.78rem}

/* results */
.rk-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;color:var(--text-3);padding:28px 10px;font-size:.9rem}
.rk-empty .ic{width:30px;height:30px}
.rk-big{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:12px}
.rk-big div{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:10px 12px;min-width:0}
.rk-big span{display:block;font-size:.75rem;color:var(--text-2);line-height:1.35}
.rk-big b{display:block;font-size:1.3rem;line-height:1.3;margin-top:3px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.rk-big small{display:block;font-size:.72rem;color:var(--text-3);margin-top:2px;line-height:1.35}
.rk-big .hl{background:var(--green-50);border-color:transparent}
.rk-big .hl b{color:var(--primary)}
.rk-big .bad{background:var(--no-bg)}
.rk-big .bad b{color:var(--no)}
.rk-verdict{display:flex;gap:12px;align-items:center;border-radius:12px;padding:12px 14px;margin-bottom:12px;font-weight:600;line-height:1.45}
.rk-verdict .ic{width:24px;height:24px}
.rk-verdict small{display:block;font-weight:400;font-size:.82rem;opacity:.9}
.v-ok{background:var(--ok-bg);color:var(--ok)}.v-no{background:var(--no-bg);color:var(--no)}.v-wn{background:var(--wn-bg);color:var(--wn)}.v-na{background:var(--na-bg);color:var(--text-2)}
.rk-chk{display:flex;flex-direction:column;gap:6px}
.rk-c{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;border:1px solid var(--border);border-radius:10px;padding:9px 11px;font-size:.88rem;line-height:1.45}
.rk-c b{font-weight:600}
.rk-c small{display:block;color:var(--text-2);font-size:.78rem}
.rk-st{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;border-radius:99px;padding:3px 8px;white-space:nowrap;margin-top:1px}
.rk-st .ic{width:13px;height:13px}
.s-ok{background:var(--ok-bg);color:var(--ok)}.s-no{background:var(--no-bg);color:var(--no)}.s-wn{background:var(--wn-bg);color:var(--wn)}.s-na{background:var(--na-bg);color:var(--text-2)}
.rk-meter{margin:4px 0 14px}
.rk-meter .lb{display:flex;justify-content:space-between;gap:10px;font-size:.8rem;color:var(--text-2);margin-bottom:6px}
.rk-meter .lb b{color:var(--text-1);font-variant-numeric:tabular-nums}
.rk-meter .tr{position:relative;height:12px;border-radius:99px;background:var(--sunken);overflow:visible}
.rk-meter .fl{height:100%;border-radius:99px;max-width:100%}
.rk-meter .mk{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--text-1);border-radius:2px}
.rk-meter .mk:after{content:attr(data-l);position:absolute;top:18px;left:50%;transform:translateX(-50%);font-size:.66rem;color:var(--text-2);white-space:nowrap}
.f-ok{background:var(--ok)}.f-no{background:var(--no)}.f-wn{background:var(--wn)}
.rk-steps{margin:0;padding:0;list-style:none;counter-reset:s;display:flex;flex-direction:column;gap:8px}
.rk-steps li{counter-increment:s;display:grid;grid-template-columns:26px 1fr;gap:10px;font-size:.9rem;line-height:1.5}
.rk-steps li:before{content:counter(s);width:24px;height:24px;border-radius:50%;background:var(--green-50);color:var(--primary);font-weight:700;font-size:.78rem;display:grid;place-items:center}
.rk-steps small{display:block;color:var(--text-2);font-size:.78rem}
.rk-note{display:flex;gap:10px;font-size:.84rem;line-height:1.5;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-top:12px}
.rk-note .ic{width:17px;height:17px;flex:none;margin-top:2px}
.rk-note.w{background:var(--wn-bg);border-color:transparent;color:var(--wn)}
.rk-ref{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}
.rk-ref summary{cursor:pointer;font-size:.84rem;font-weight:600;color:var(--text-2);display:flex;align-items:center;gap:6px;list-style:none;min-height:32px}
.rk-ref summary::-webkit-details-marker{display:none}
.rk-ref summary .ic{width:16px;height:16px}
.rk-ref ul{margin:8px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.rk-ref li{font-size:.8rem;line-height:1.5;color:var(--text-2);border-left:3px solid var(--border-strong);padding-left:10px}
.rk-ref li b{color:var(--text-1);font-weight:600}
.rk-ref q{display:block;font-style:italic;quotes:none;margin-top:2px}
.rk-acts{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.rk-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--primary);color:var(--primary);background:var(--surface);border-radius:10px;padding:7px 13px;cursor:pointer;font-weight:600;font-size:.88rem;min-height:40px}
.rk-btn.p{background:var(--primary);color:var(--primary-ink)}
.rk-btn .ic{width:17px;height:17px}
.rk-tbl{width:100%;border-collapse:collapse;font-size:.84rem}
.rk-tbl th,.rk-tbl td{text-align:left;padding:7px 8px;border-bottom:1px solid var(--border);vertical-align:top}
.rk-tbl th{font-size:.74rem;color:var(--text-2);font-weight:600}
.rk-tbl td.n{font-variant-numeric:tabular-nums;white-space:nowrap}
.rk-tbl tr.on td{background:var(--green-50);font-weight:600}
.rk-scroll{overflow-x:auto}
.rk-disc-note{font-size:.78rem;color:var(--text-3);margin:18px 0 0;line-height:1.55}

/* printable sign */
#rk-print{display:none}
@media print{
  html.rk-printing body>*:not(#rk-print){display:none!important}
  html.rk-printing #rk-print{display:block!important}
  html.rk-printing body{background:#fff!important}
  .rk-out{position:static}
}
.rk-sign{font-family:var(--f-ui);color:#000;border:6px solid #006A4E;border-radius:18px;padding:36px 40px;text-align:center;page-break-inside:avoid;margin:0 auto;max-width:180mm}
.rk-sign .t1{font-size:22pt;font-weight:700;margin:0}
.rk-sign .t2{font-size:13pt;color:#333;margin:2px 0 18px}
.rk-sign .n{font-size:84pt;font-weight:800;line-height:1;color:#006A4E;margin:10px 0}
.rk-sign .u{font-size:18pt;font-weight:600}
.rk-sign .m{font-size:12pt;color:#333;margin-top:18px;line-height:1.6}
.rk-sign .f{font-size:9pt;color:#666;margin-top:22px;border-top:1px solid #ccc;padding-top:8px}

.rk-prof.mini{padding:0;border:0;background:transparent}
.rk-pmini{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:9px 12px;cursor:pointer;font-size:.86rem;color:var(--text-2);min-height:44px}
.rk-pmini b{color:var(--text-1);margin-right:6px}
.rk-pmini span{flex:1;min-width:0}
.rk-pmini em{font-style:normal;font-weight:600;color:var(--primary);white-space:nowrap}
.rk-pclose{margin-left:auto;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--primary);color:var(--primary);background:transparent;border-radius:9px;padding:4px 10px;cursor:pointer;font-size:.82rem;font-weight:600}
.rk-pclose .ic{width:15px;height:15px}
@media (max-width:640px){.rk-prof:not(.mini){padding:12px}.rk-tile{min-height:0;padding:12px}.rk-th h2{font-size:1.12rem}.rk-card{padding:13px}}
@media (max-width:560px){.rk-tile[style*="span 2"]{grid-column:auto!important}}
#rk:not(:has(.rk-prof)){min-height:1500px}
@media (max-width:640px){#rk:not(:has(.rk-prof)){min-height:2600px}}
