*{box-sizing:border-box}
body{margin:0;font-family:Arial,sans-serif;background:#f3f6f8;color:#173042}
.app-header{background:#0f4c75;color:#fff;padding:14px 24px;box-shadow:0 2px 7px #0002}
.brand-area{display:flex;align-items:center;gap:16px;max-width:1200px;margin:auto}
.brand-area img{width:190px;max-height:78px;object-fit:contain;background:transparent;border-radius:0}
.title{font-size:28px;font-weight:700}
.container{max-width:1200px;margin:24px auto;padding:0 16px}
.card{background:#fff;border-radius:12px;padding:22px;margin-bottom:20px;box-shadow:0 2px 12px #00000012}
.card h2{margin-top:0;color:#0f4c75}
.grid,.output-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px}
label{display:flex;flex-direction:column;gap:7px;font-weight:600}
input,select,button{font:inherit;padding:10px;border:1px solid #b8c7d0;border-radius:7px;background:#fff;color:#173042}
button{background:#0f4c75;color:#fff;border:0;cursor:pointer;padding:12px 26px;font-weight:700;margin-top:20px}
.hint,footer{font-size:12px;color:#526b79;line-height:1.6}
.metric{border:1px solid #d8e1e6;border-radius:8px;padding:12px;background:#f8fbfc}
.metric span{display:block;font-size:13px;color:#526b79}
.metric strong{display:block;font-size:20px;margin-top:7px}
.message{padding:12px;border-radius:7px;background:#eef5f8;margin-bottom:16px}
.pass{background:#e5f6e9!important}.warning{background:#fff4d6!important}.fail{background:#fde7e7!important}
.detail{margin-top:18px;line-height:1.6}
footer{padding:10px 4px 30px}
@media(max-width:600px){.title{font-size:20px}.brand-area img{width:140px}}
