*{box-sizing:border-box}body{margin:0;background:#f5f5f5;color:#222;font-family:Arial,Helvetica,sans-serif}header{background:#222;color:white;padding:14px 22px;display:flex;align-items:flex-start;justify-content:space-between;gap:18px}header h1{margin:0;font-size:20px}header p{margin:3px 0 0;font-size:12px}nav{display:flex;flex-wrap:wrap;gap:10px}nav a{color:white;text-decoration:none;font-weight:bold}main{max-width:1320px;margin:0 auto;padding:18px}.card{background:white;border:1px solid #bbb;border-radius:8px;padding:18px;margin-bottom:16px;box-shadow:0 2px 8px rgba(0,0,0,.06)}table{width:100%;border-collapse:collapse}th,td{border:1px solid #ccc;padding:8px;text-align:left;vertical-align:top}th{background:#555;color:white}.button,button{display:inline-block;background:#990000;color:white;border:0;border-radius:5px;padding:8px 12px;text-decoration:none;font-weight:bold;cursor:pointer}.secondary{background:#555}.small{font-size:12px;padding:4px 7px}.grid-form{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px}.grid-form label{display:flex;flex-direction:column;font-size:13px;font-weight:bold}.full{grid-column:1/-1}input,select,textarea{padding:9px;border:1px solid #aaa;border-radius:4px;margin-top:4px;font:inherit}textarea{min-height:85px}.flash{background:#fff3cd;border:1px solid #d6b85f;padding:10px;margin-bottom:12px;border-radius:5px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.stats div{background:#f0f0f0;border:1px solid #ccc;border-radius:6px;padding:12px;text-align:center}.stats b{display:block;color:#990000;font-size:28px}.row-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.search{display:flex;gap:8px;margin-bottom:12px}.search input{flex:1}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login{background:white;border:1px solid #bbb;border-radius:8px;padding:24px;width:min(420px,92vw)}.login input,.login button{width:100%;margin:8px 0}.badge{display:inline-block;background:#eee;border:1px solid #bbb;border-radius:999px;padding:3px 8px;font-size:12px}.ok{color:#0a7a2d;font-weight:bold}.warn{color:#a66a00;font-weight:bold}@media(max-width:900px){header{flex-direction:column}.grid-form{grid-template-columns:1fr}.row-header{align-items:flex-start;flex-direction:column}table{font-size:13px}}