.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow)}.card.flat{box-shadow:none}.card.dark{background:var(--ink);color:white;border-color:var(--ink)}.tool-card{text-decoration:none;display:block;transition:transform .18s ease,border .18s ease}.tool-card:hover{transform:translateY(-2px);border-color:#c5b48f}.badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:var(--soft);font-size:.73rem;font-weight:700}.badge.ok{background:#e4efe8;color:var(--ok)}.badge.warn{background:#f4ebd8;color:var(--warn)}.badge.bad{background:#f4e2df;color:var(--bad)}.button{border:1px solid var(--ink);background:var(--ink);color:white;border-radius:999px;padding:11px 17px;font:600 .9rem var(--sans);cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button.secondary{background:white;color:var(--ink)}.button.gold{background:var(--gold);border-color:var(--gold);color:#fff}.button.ghost{background:transparent;color:inherit;border-color:var(--line)}.button.small{padding:7px 11px;font-size:.8rem}.button-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:15px}.field{display:grid;gap:7px;margin-bottom:14px}.field label,.field .label{font-weight:700;font-size:.88rem}.field small{color:var(--muted)}input,select,textarea{width:100%;border:1px solid #cfc8bb;background:white;border-radius:12px;padding:11px 12px;font:inherit;color:var(--ink)}input[type=range]{padding:0}.check-row{display:flex;align-items:center;gap:8px;margin:8px 0}.check-row input{width:auto}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 13px}.metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:14px 0}.metric{background:#f5f2eb;border:1px solid var(--line);border-radius:14px;padding:14px}.metric strong{display:block;font:500 clamp(1.1rem,2.3vw,1.6rem) var(--serif)}.metric span{font-size:.75rem;color:var(--muted);text-transform:uppercase;letter-spacing:.07em}.notice{border-left:4px solid var(--gold);background:#f5f0e6;border-radius:10px;padding:12px 14px;margin:14px 0}.notice.warn{border-color:var(--warn);background:#fbf4e7}.notice.bad{border-color:var(--bad);background:#faeae7}.notice.ok{border-color:var(--ok);background:#eaf4ed}.result-list{display:grid;gap:12px}.result-card{border:1px solid var(--line);border-radius:15px;padding:15px;background:white}.result-head{display:flex;justify-content:space-between;gap:12px}.score{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--gold) var(--score,75%),var(--soft) 0);position:relative;flex:none}.score:after{content:'';position:absolute;inset:6px;background:white;border-radius:50%}.score strong{position:relative;z-index:1;font-size:.75rem}.progress{height:9px;background:var(--soft);border-radius:999px;overflow:hidden}.progress i{display:block;height:100%;background:var(--gold);width:var(--w,50%)}.timeline{border-left:2px solid var(--gold);margin:18px 0 18px 9px;padding-left:20px}.timeline-item{position:relative;margin:0 0 20px}.timeline-item:before{content:'';position:absolute;left:-27px;top:5px;width:12px;height:12px;border:2px solid white;background:var(--gold);border-radius:50%;box-shadow:0 0 0 1px var(--gold)}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px}.compare-table{width:100%;border-collapse:collapse;min-width:700px;background:white}.compare-table caption{text-align:left;padding:12px;font-weight:700}.compare-table th,.compare-table td{padding:11px 12px;border-bottom:1px solid var(--line);vertical-align:top}.compare-table th:first-child,.compare-table td:first-child{position:sticky;left:0;background:#faf8f3;z-index:1}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.tab{border:1px solid var(--line);background:white;padding:8px 12px;border-radius:999px;cursor:pointer}.tab[aria-selected=true]{background:var(--ink);color:white;border-color:var(--ink)}.pill-list{display:flex;flex-wrap:wrap;gap:7px}.pill{border:1px solid var(--line);border-radius:999px;padding:5px 9px;font-size:.78rem}.bar-stack{display:flex;height:26px;border-radius:8px;overflow:hidden;background:var(--soft);margin:10px 0}.bar-stack span:nth-child(1){background:#b89965}.bar-stack span:nth-child(2){background:#776952}.bar-stack span:nth-child(3){background:#c9c0b0}.error{color:var(--bad);font-size:.82rem}.empty{padding:28px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:15px}@media(max-width:650px){.field-grid,.metrics{grid-template-columns:1fr}.result-head{align-items:flex-start}}
/* Production CTA alignment */
a.button,.button,button{box-sizing:border-box}a.button,.button{display:inline-flex;align-items:center;justify-content:center;text-align:center}
