*{box-sizing:border-box;font-family:'Poppins',sans-serif}
body{margin:0;min-height:100vh;background:linear-gradient(135deg,#ffecd2 0%,#fcb69f 100%);color:#222}
.topbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:linear-gradient(90deg,#7f00ff,#e100ff);color:#fff}
.brand{font-weight:700;font-size:18px}
.login-wrap{display:flex;height:100vh;align-items:center;justify-content:center}
.login-card{width:420px;text-align:center;padding:28px;background:linear-gradient(180deg,#ffffffcc,#ffffffaa);border-radius:14px;box-shadow:0 10px 30px rgba(0,0,0,0.12)}
.brand-title{font-size:28px;margin:0 0 6px;color:#6b21a8}
.lead{color:#444;margin-bottom:12px}
input, textarea, select{width:100%;padding:10px;border-radius:8px;border:1px solid rgba(0,0,0,0.08);margin:8px 0}
.btn{border:none;padding:10px 14px;border-radius:10px;cursor:pointer}
.btn.primary{background:#6b21a8;color:#fff}
.card{background:rgba(255,255,255,0.92);border-radius:12px;box-shadow:0 8px 18px rgba(11,7,29,0.06);padding:18px}
.table th, .table td{vertical-align:middle}
a.btn{text-decoration:none}
.counter.small{min-width:120px}
.counter .num{font-size:24px;color:#7f00ff;font-weight:700}
.output-box{min-height:160px;border-radius:8px;padding:12px;border:1px solid rgba(0,0,0,0.06);background:#fff;white-space:pre-wrap;overflow:auto}
.telugu-miss{background:#ffdddd;color:#990000;padding:2px 4px;border-radius:4px}
.error-box{background:#ffe6e6;color:#a00;padding:10px;border-radius:8px;margin-bottom:8px}
