.tool-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-5)}@media (width>=48rem){.tool-card{padding:var(--space-6)}}.tool-form{gap:var(--space-4);display:grid}.tool-form fieldset{border:0;min-width:0;margin:0;padding:0}.tool-form legend{font-weight:600;font-size:var(--text-sm);margin-bottom:var(--space-2);padding:0}.tool-form .hint{font-size:var(--text-xs);color:var(--color-ink-muted)}.optional{color:var(--color-ink-muted);font-weight:400}.dims{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.with-unit{position:relative}.with-unit .input{padding-right:2.6rem}.with-unit .unit{right:var(--space-3);color:var(--color-ink-muted);font-size:var(--text-sm);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.two-col{gap:var(--space-4);display:grid}@media (width>=40rem){.two-col{grid-template-columns:repeat(2,minmax(0,1fr))}}.input[aria-invalid=true],.select[aria-invalid=true]{border-color:var(--color-denied);box-shadow:0 0 0 1px var(--color-denied)}.quick{gap:var(--space-2);flex-wrap:wrap;display:flex}.quick button{min-height:36px;padding:0 var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border-strong);background:var(--color-surface);font-size:var(--text-sm);cursor:pointer}.quick button[aria-pressed=true]{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent-hover);font-weight:600}.radio-list{gap:var(--space-2);display:grid}.radio{gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);align-items:flex-start;display:flex}.radio:has(input:checked){border-color:var(--color-accent);background:var(--color-accent-soft)}.radio input{width:1.1rem;height:1.1rem;accent-color:var(--color-accent);flex:none;margin-top:.1rem}.tool-actions{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.tool-actions .btn{flex:auto}@media (width>=40rem){.tool-actions .btn{flex:none}}details.more summary{cursor:pointer;font-weight:600;font-size:var(--text-sm);color:var(--color-accent);align-items:center;min-height:44px;display:flex}details.more[open] summary{margin-bottom:var(--space-3)}.error-summary{border:2px solid var(--color-denied);border-radius:var(--radius);padding:var(--space-4);background:var(--color-denied-soft)}.error-summary h2{font-size:var(--text-md);color:var(--color-denied);margin-bottom:var(--space-2)}.error-summary ul{font-size:var(--text-sm);padding-left:1.1rem}.result{margin-top:var(--space-5);gap:var(--space-4);display:grid}.result:empty{display:none}.verdict{border-radius:var(--radius);padding:var(--space-4) var(--space-5);gap:var(--space-2);border:1px solid;display:grid}.verdict-badge{align-items:center;gap:var(--space-2);font-weight:800;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.06em;display:inline-flex}.verdict-headline{font-size:var(--text-lg);line-height:var(--leading-snug);color:var(--color-ink)}.verdict-headline:focus{outline:none}.verdict.is-allowed{background:var(--color-allowed-soft);color:var(--color-allowed);border-color:#b5dcc4}.verdict.is-denied{background:var(--color-denied-soft);color:var(--color-denied);border-color:#f2c1bc}.verdict.is-conditional{background:var(--color-conditional-soft);color:var(--color-conditional);border-color:#f1d39d}.verdict.is-unknown{background:var(--color-unknown-soft);border-color:var(--color-border-strong);color:var(--color-unknown)}.vchip{align-items:center;gap:var(--space-1);padding:2px var(--space-3) 2px var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);white-space:nowrap;font-weight:700;display:inline-flex}.vchip.is-allowed{color:var(--color-allowed);background:var(--color-allowed-soft)}.vchip.is-denied{color:var(--color-denied);background:var(--color-denied-soft)}.vchip.is-conditional{color:var(--color-conditional);background:var(--color-conditional-soft)}.vchip.is-unknown{color:var(--color-unknown);background:var(--color-unknown-soft)}.rule-card{border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4);gap:var(--space-3);background:var(--color-surface);display:grid}.rule-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.rule-card-head h3{font-size:var(--text-md)}.rule-card .perf{border:0;border-top:2px dashed var(--color-border-strong);margin:0}.reasons{gap:var(--space-1);font-size:var(--text-sm);padding-left:1.1rem;display:grid}.compare{font-size:var(--text-sm)}.compare th,.compare td{padding:var(--space-2) var(--space-3)}.compare td.ok{color:var(--color-allowed);font-weight:600}.compare td.bad{color:var(--color-denied);font-weight:600}.facts{border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--text-sm);gap:0;display:grid;overflow:hidden}.facts>div{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.facts>div:last-child{border-bottom:0}.facts dt{color:var(--color-ink-muted)}.facts dd{margin:0;font-weight:600}.split-results{gap:var(--space-3);display:grid}@media (width>=40rem){.split-results{grid-template-columns:repeat(2,minmax(0,1fr))}}.source-line{align-items:center;gap:var(--space-1) var(--space-3);font-size:var(--text-xs);color:var(--color-ink-muted);flex-wrap:wrap;display:flex}.note-box{border-left:4px solid var(--color-accent);background:var(--color-accent-soft);padding:var(--space-3) var(--space-4);border-radius:0 var(--radius-sm) var(--radius-sm) 0;font-size:var(--text-sm)}.note-box.warn{border-left-color:var(--color-amber);background:var(--color-amber-soft)}.note-box p+p{margin-top:var(--space-2)}.verdict.is-neutral{background:var(--color-bg-alt);border-color:var(--color-border);color:var(--color-ink-muted)}.meta-row{gap:var(--space-1) var(--space-2);margin-top:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;align-items:baseline;display:flex}.compare th,.compare td{white-space:nowrap}.compare td[colspan]{white-space:normal}@media (width<=30rem){.compare{font-size:var(--text-xs)}.compare th,.compare td{padding:var(--space-2)}}.ad-slot[data-astro-cid-k64xso53]{min-height:280px;margin-block:var(--space-6);contain:layout}.ad-label[data-astro-cid-k64xso53]{font-size:var(--text-xs);color:var(--color-ink-subtle);text-transform:uppercase;letter-spacing:.06em;margin-bottom:var(--space-1)}
