:root{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.45;color:#1a1a1a;background:#f4f5f7}*{box-sizing:border-box}body{margin:0}a{color:#0b5fff}button,input,select,textarea{font:inherit}.app-shell{max-width:1100px;margin:0 auto;padding:1rem 1.25rem 2rem}.card{background:#fff;border-radius:8px;padding:1rem 1.25rem;box-shadow:0 1px 2px #0000000f;margin-bottom:1rem}h1{font-size:1.35rem;margin:0 0 .75rem}h2{font-size:1.1rem;margin:0 0 .5rem}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{text-align:left;padding:.4rem .5rem;border-bottom:1px solid #e8e8e8}.row{display:flex;flex-wrap:wrap;gap:.5rem 1rem;align-items:center}.nav{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.badge{display:inline-block;padding:.15rem .45rem;border-radius:4px;font-size:.8rem;background:#e8ecf4}.badge.warn{background:#fff3cd}.badge.bad{background:#f8d7da}.badge.ok{background:#d4edda}.field{margin-bottom:.75rem}.field label{display:block;font-size:.85rem;margin-bottom:.2rem}.field input,.field textarea,.field select{width:100%;max-width:32rem;padding:.35rem .5rem}button.btn{padding:.4rem .75rem;border-radius:6px;border:1px solid #ccc;background:#fff;cursor:pointer}button.btn.primary{background:#0b5fff;border-color:#0b5fff;color:#fff}.error{color:#b00020;font-size:.9rem}
