.kic{--err:#b42318;--dot:color-mix(in oklab, var(--ink) 40%, var(--paper))}:root[data-theme=dark] .kic{--err:#ff8a80;--dot:color-mix(in oklab, var(--ink) 45%, var(--paper))}.kic [hidden]{display:none!important}.kic .seg.two{grid-template-columns:1fr 1fr}.kic .seg{background:var(--brand-soft);border-radius:14px;grid-template-columns:1fr 1fr;gap:4px;min-width:0;padding:4px;display:grid}.kic .seg label{display:block;position:relative}.kic .seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.kic .seg span{text-align:center;min-height:44px;color:var(--muted);border-radius:10px;justify-content:center;align-items:center;padding:0 4px;font-size:.9375rem;font-weight:600;transition:background .15s,color .15s;display:flex}.kic .seg input:checked+span{background:var(--brand);color:#fff;box-shadow:0 1px 2px #0000002e}.kic .seg input:focus-visible+span{outline:2px solid var(--brand-ink);outline-offset:2px}:root[data-theme=dark] .kic .seg input:checked+span{background:#b27ae2;background:color-mix(in oklab, var(--brand) 60%, white);color:#16161a}.kic .stepper{grid-template-columns:44px minmax(0,1fr) 44px;gap:4px;display:grid}.kic .stepper button{border:1px solid var(--edge);background:var(--paper);min-height:52px;color:var(--ink);cursor:pointer;touch-action:manipulation;border-radius:12px;padding:0;font-size:1.5rem;font-weight:600;line-height:1}.kic .stepper button:hover{border-color:var(--brand)}.kic .stepper button:active{background:var(--brand-soft)}.kic .stepper input{border:1px solid var(--edge);background:var(--paper);text-align:center;width:100%;min-height:52px;font-family:var(--font-mono);color:var(--ink);font-variant-numeric:tabular-nums;border-radius:12px;padding:0;font-size:1.375rem;font-weight:700}.kic .stepper input:focus{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in oklab, var(--brand) 30%, transparent)}.kic .stepper input[aria-invalid=true]{border-color:var(--err)}.kic .btn{background:var(--brand);color:#fff;cursor:pointer;touch-action:manipulation;border:0;border-radius:999px;min-height:44px;padding:0 18px;font-size:.9375rem;font-weight:700}.kic .btn.ghost{color:var(--brand-ink);border:1px solid var(--edge);background:0 0}:root[data-theme=dark] .kic .btn.ghost{color:var(--brand-ink);background:0 0}.kic .map{font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:6px 4px;font-size:.8125rem;display:flex}.kic .mg{border:1px dashed var(--edge);border-radius:10px;align-items:center;gap:4px;padding:3px 6px;display:inline-flex}.kic .mb{background:var(--brand-soft);color:var(--ink);border-radius:6px;padding:3px 8px;font-weight:700;display:inline-block}.kic .mb.c{background:var(--brand);color:#fff}:root[data-theme=dark] .kic .mb.c{background:#b27ae2;background:color-mix(in oklab, var(--brand) 60%, white);color:#16161a}.kic .mx{color:var(--muted);padding:0 2px;font-weight:700}.kic .mx.end{font-weight:500;font-family:var(--font-sans)}@media print{header,footer,.noprint,.inputs,#tool .legend,#dots,.prose-site,aside{display:none!important}#tool{box-shadow:none!important;border:0!important}#tool>div{display:block!important}.kic .result{font-size:1.25rem}}.kic .btn:hover{filter:brightness(1.08)}.kic .btn:disabled{opacity:.45;cursor:not-allowed}:root[data-theme=dark] .kic .btn{background:#b27ae2;background:color-mix(in oklab, var(--brand) 60%, white);color:#16161a}.kic .opt{color:var(--muted);gap:4px;font-size:.8125rem;font-weight:600;display:grid}.kic .opt select{border:1px solid var(--edge);background:var(--paper);min-height:44px;color:var(--ink);border-radius:10px;padding:0 10px;font-size:1rem;font-weight:500}.kic .result{overflow-wrap:anywhere;min-height:4.5rem;color:var(--ink)}.kic .result b{color:var(--brand-ink);font-weight:800}.kic .dots{border:1px solid var(--line);background:var(--paper);border-radius:12px;flex-wrap:wrap;align-content:flex-start;gap:5px 4px;min-height:5.5rem;max-height:15rem;padding:12px;display:flex;overflow:auto}.kic .dot{background:var(--dot);border-radius:50%;flex:none;width:12px;height:12px;display:inline-block}.kic .dot.new{background:var(--brand);border-radius:2px;transform:rotate(45deg)scale(.85)}:root[data-theme=dark] .kic .dot.new{background:#b27ae2;background:color-mix(in oklab, var(--brand) 60%, white)}.kic .dot.new.pill{border-radius:99px;width:22px;transform:none}.kic .dots .gap{margin-right:8px}.kic .explain{min-height:1.25rem}.kic .legend .dot{vertical-align:-2px;margin-right:2px}
