*{box-sizing:border-box} body{margin:0;font-family:Arial,Helvetica,sans-serif;background:#f3f4f6;color:#111827}.hidden{display:none!important}header{display:flex;justify-content:space-between;align-items:center;background:#111827;color:white;padding:18px 28px}header h1{margin:0;font-size:24px}header span{color:#cbd5e1}.login-card{width:360px;margin:80px auto;background:white;padding:26px;border-radius:16px;box-shadow:0 10px 30px #0002}.login-card h1{margin:0 0 6px}.login-card p{margin-top:0;color:#6b7280}input,select,textarea{width:100%;padding:11px;border:1px solid #d1d5db;border-radius:10px;margin:7px 0;font-size:14px}textarea{min-height:80px}button{border:0;background:#111827;color:white;padding:10px 14px;border-radius:10px;cursor:pointer;font-weight:700}button.secondary{background:#374151}button.green{background:#047857}button.red{background:#b91c1c}button.gray{background:#6b7280}main{max-width:1400px;margin:0 auto 40px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:20px}.stats div,.card{background:white;border-radius:16px;padding:18px;box-shadow:0 5px 18px #0001}.stats b{display:block;font-size:30px}.stats span{color:#6b7280}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:0 20px 20px}.full{margin:0 20px 20px}.section-title{display:flex;justify-content:space-between;gap:20px;align-items:center}.section-title input{max-width:320px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;border-bottom:1px solid #e5e7eb;padding:10px;vertical-align:top}th{background:#f9fafb}.badge{display:inline-block;border-radius:99px;padding:4px 8px;font-size:12px;font-weight:700}.paid{background:#dcfce7;color:#166534}.unpaid{background:#fee2e2;color:#991b1b}.blocked{background:#111827;color:white}.code{font-family:Consolas,monospace;font-size:18px;font-weight:700}.error{color:#b91c1c;margin-top:10px}.success{color:#047857;margin-top:10px;font-weight:700}.small{font-size:12px;color:#6b7280}@media(max-width:900px){.stats,.grid{grid-template-columns:1fr}header{padding:14px}.full,.grid,.stats{padding-left:10px;padding-right:10px;margin-left:0;margin-right:0}}
