.cc-tool{gap:var(--s5);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;display:grid}.cc-counter,.cc-ticket,.cc-check{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface-1);padding:var(--s5)}.cc-check{grid-column:1/-1}.cc-heading-row,.cc-count,.cc-stub{justify-content:space-between;gap:var(--s3);align-items:baseline;display:flex}.cc-heading-row h2{font-size:var(--step-0);margin:0}.cc-heading-row>span,.cc-count small,.cc-stub{color:var(--ink-2);font:var(--step--1)/1.2 var(--font-mono)}.cc-networks{gap:var(--s2);margin:0 0 var(--s4);border:0;grid-template-columns:1fr 1fr;padding:0;display:grid}.cc-networks legend{width:100%;margin-bottom:var(--s2);color:var(--ink-1);font-size:var(--step--1)}.cc-networks label{gap:var(--s2);min-height:56px;padding:var(--s3);border:1px solid var(--line-firm);border-radius:var(--r-md);background:var(--surface-0);cursor:pointer;align-items:center;display:flex}.cc-networks label.selected{border-color:var(--brass)}.cc-networks input{block-size:20px;inline-size:20px;accent-color:var(--brass)}.cc-networks span{gap:3px;display:grid}.cc-networks small{color:var(--ink-2)}.cc-range{margin:0 0 var(--s4);padding:var(--s3);border-left:2px solid var(--brass-lo);background:var(--surface-0);color:var(--ink-1);font-size:var(--step--1);line-height:1.6}.cc-range strong{font-family:var(--font-mono);color:var(--ink-0)}.cc-count span{font-weight:600}#cc-count,#cc-check-input{width:100%;min-height:48px;margin-top:var(--s2);padding:10px var(--s3);border:1px solid var(--line-firm);border-radius:var(--r-md);background:var(--surface-0);color:var(--ink-0);font:var(--step-0)/1.2 var(--font-mono)}#cc-count:focus,#cc-check-input:focus,#cc-output:focus,.cc-networks label:focus-within{outline:2px solid var(--focus);outline-offset:2px}#cc-count[aria-invalid=true]{border-color:var(--error)}.cc-note,.cc-result-note{margin-top:var(--s3);color:var(--ink-1);font-size:var(--step--1);line-height:1.6}.cc-error{margin-top:var(--s2);color:var(--error);font-size:var(--step--1)}.cc-error:empty{display:none}.cc-actions button{border:1px solid var(--line-firm);border-radius:var(--r-md);background:var(--surface-0);width:100%;min-height:46px;color:var(--ink-0);font-weight:600}.cc-actions .primary{border-color:var(--brass);background:var(--brass);color:var(--on-brass)}.cc-actions button:hover{border-color:var(--brass)}.cc-actions .primary:hover{background:var(--brass-hi)}.cc-ticket{min-height:392px;box-shadow:var(--shadow-1);transition:box-shadow .22s var(--ease), border-color .22s var(--ease)}.cc-ticket.has-result{border-color:var(--line-firm);box-shadow:var(--shadow-2)}.cc-stub span:first-child{color:var(--brass-lo)}.cc-perf{height:1px;margin:var(--s4) calc(-1 * var(--s5));background:repeating-linear-gradient(90deg, var(--line-firm) 0 5px, transparent 5px 9px)}.cc-empty{text-align:center;min-height:290px;color:var(--ink-2);place-content:center;justify-items:center;display:grid}.cc-empty span{font:var(--step-2)/1 var(--font-mono);opacity:.35;letter-spacing:.08em}.cc-empty p{max-width:36ch;margin-top:var(--s4);font-size:var(--step--1)}.cc-output-label{margin-bottom:var(--s2);font-weight:600;display:block}#cc-output{resize:vertical;width:100%;min-height:194px;padding:var(--s3);border:1px solid var(--line-firm);border-radius:var(--r-md);background:var(--surface-0);color:var(--ink-0);font:16px/1.6 var(--font-mono);white-space:pre;display:block;overflow:auto}.cc-actions{gap:var(--s2);margin-top:var(--s4);grid-template-columns:1.3fr 1fr 1fr;display:grid}.cc-check-label{margin-top:var(--s4);font-weight:600;display:block}.cc-verdict{min-height:3em;margin-top:var(--s3);padding:var(--s3);border:1px dashed var(--line-firm);border-radius:var(--r-md);color:var(--ink-1);font-size:var(--step--1);line-height:1.6}.cc-verdict[data-luhn=pass]{border-style:solid;border-color:var(--ok);color:var(--ink-0)}.cc-verdict[data-luhn=fail]{border-style:solid;border-color:var(--error);color:var(--ink-0)}@media (width<=820px){.cc-tool{grid-template-columns:1fr}}@media (width<=520px){.cc-networks{gap:var(--s1);grid-template-columns:1fr}.cc-networks label{min-height:44px;padding:0 var(--s3)}.cc-networks span{justify-content:space-between;gap:0 var(--s2);flex:1;align-items:baseline;display:flex}.cc-networks strong{font-size:var(--step--1)}.cc-networks small{font-size:.75rem}.cc-actions button{font-size:var(--step--1);padding-inline:var(--s1)}}@media (prefers-reduced-motion:reduce){.cc-ticket{transition:none}}
