.cmp{display:flex;flex-direction:column;gap:1.5rem}.cmp-controls{display:flex;gap:.75rem;flex-wrap:wrap}.cmp-btn{padding:.6rem 1.1rem;border-radius:10px;border:1px solid var(--accent);background:var(--accent);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s,box-shadow .15s}.cmp-btn:hover{box-shadow:0 2px 8px #0f766e4d}.cmp-btn-ghost{background:transparent;color:var(--accent)}.cmp-btn-ghost:hover{background:var(--accent-soft)}.cmp-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.cmp-props{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:start}.cmp-props.three{grid-template-columns:1fr 1fr 1fr}.prop-card{border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem;background:var(--surface);display:flex;flex-direction:column;gap:1rem}.prop-card h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--accent)}.prop-name{width:100%;padding:.5rem .7rem;border:1px solid var(--border);border-radius:8px;font-size:.95rem;font-weight:600;background:var(--bg);color:var(--fg);font-family:inherit;min-height:40px}.prop-name:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.prop-remove{align-self:flex-end;background:none;border:none;color:var(--muted);font-size:.8rem;cursor:pointer;text-decoration:underline;padding:0;font-family:inherit}.prop-remove:hover{color:var(--error)}.prop-fields{display:grid;grid-template-columns:1fr 1fr;gap:.75rem .85rem}.field{display:flex;flex-direction:column;gap:.3rem}.field label{font-size:.8rem;font-weight:500;color:var(--muted)}.field input{width:100%;padding:.55rem .65rem;border:1px solid var(--border);border-radius:8px;font-size:.95rem;font-family:inherit;background:var(--bg);color:var(--fg);min-height:42px}.field input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field-full{grid-column:1 / -1}.cmp-verdict{background:var(--accent-soft);border:1px solid var(--accent);border-radius:12px;padding:1rem 1.25rem;font-size:.95rem;color:var(--fg);line-height:1.5}.cmp-verdict strong{color:var(--accent)}.cmp-desktop{display:block;overflow-x:auto}.cmp-mobile{display:none}.cmp-table{width:100%;border-collapse:collapse;font-size:.92rem;font-variant-numeric:tabular-nums}.cmp-table th,.cmp-table td{padding:.65rem .8rem;border-bottom:1px solid var(--border);text-align:right;white-space:nowrap}.cmp-table th:first-child,.cmp-table td:first-child{text-align:left;font-weight:600;color:var(--muted);font-size:.85rem}.cmp-table thead th{font-size:.85rem;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.03em;border-bottom:2px solid var(--accent)}.cmp-table .winner{background:var(--accent-soft);border-radius:8px}.cmp-table .winner .cell-val{color:var(--accent);font-weight:700}.winner-badge{display:inline-block;margin-left:.5rem;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#fff;background:var(--accent);border-radius:999px;padding:.12rem .45rem;vertical-align:middle;white-space:nowrap;line-height:1}.cmp-metric-list{display:flex;flex-direction:column;gap:.75rem}.cmp-metric-card{border:1px solid var(--border);border-radius:var(--radius);padding:.85rem 1rem;background:var(--surface)}.cmp-metric-card h4{margin:0 0 .5rem;font-size:.8rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.03em}.cmp-metric-row{display:flex;align-items:center;gap:.5rem;padding:.45rem .4rem;border-top:1px solid var(--border);border-radius:6px}.cmp-metric-row:first-of-type{border-top:none}.cmp-mprop{font-size:.88rem;font-weight:500;color:var(--fg);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.cmp-mval{font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.cmp-metric-row.winner{background:var(--accent-soft)}.cmp-metric-row.winner .cmp-mprop,.cmp-metric-row.winner .cmp-mval{color:var(--accent);font-weight:700}@media (max-width: 860px){.cmp-props,.cmp-props.three{grid-template-columns:1fr}}@media (max-width: 640px){.cmp-desktop{display:none}.cmp-mobile{display:flex;flex-direction:column;gap:.75rem}}@media (max-width: 480px){.prop-fields{grid-template-columns:1fr}}
