.ac-wrap { max-width: 720px; margin: 0 auto; }
.ac-form { border: 1px solid #e2e8f0; border-radius: 12px; padding: 1.5rem; background: #f8fafc; display: grid; gap: 1rem; }
.ac-field { display: grid; gap: .35rem; font-weight: 600; }
.ac-opt { font-weight: 400; color: #94a3b8; font-size: .85rem; }
.ac-field input { padding: .65rem .8rem; font-size: 1rem; border: 1px solid #cbd5e1; border-radius: 8px; font-weight: 400; }
.ac-btn { background: #2563eb; color: #fff; border: none; padding: .75rem 1.6rem; border-radius: 8px; font-weight: 600; font-size: 1rem; cursor: pointer; justify-self: start; }
.ac-btn:hover { background: #1d4ed8; }
.ac-err { color: #b91c1c; background: #fef2f2; border: 1px solid #fecaca; border-radius: 8px; padding: .6rem .9rem; margin: 0; }
.ac-out { margin-top: 1.5rem; }
.ac-big { font-size: clamp(1.6rem, 4vw, 2.4rem); font-weight: 800; color: #0f172a; margin-bottom: 1.25rem; font-variant-numeric: tabular-nums; }
.ac-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: .75rem; margin-bottom: 1.25rem; }
.ac-stat { border: 1px solid #e2e8f0; border-radius: 10px; padding: .9rem .8rem; background: #fff; display: grid; gap: .15rem; }
.ac-num { font-size: 1.25rem; font-weight: 700; color: #0f172a; font-variant-numeric: tabular-nums; }
.ac-lbl { font-size: .85rem; color: #64748b; }
.ac-facts { list-style: none; padding: 0; display: grid; gap: .5rem; color: #334155; }
.ac-facts li { background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 8px; padding: .6rem .9rem; }
