:root{font-family:Trebuchet MS,Segoe UI,sans-serif;color:#0f172a;background:linear-gradient(145deg,#fef9c3,#e0f2fe 45%,#f8fafc)}*{box-sizing:border-box}body{margin:0}.admin-page{padding:1rem;max-width:1280px;margin:0 auto}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-panel{width:min(100%,500px)}.admin-header-row{display:flex;justify-content:space-between;gap:.8rem;align-items:flex-start}.admin-actions{display:grid;gap:.4rem}header h1{margin:0}header p{margin:.35rem 0 1rem;color:#334155}.kpi-grid,.charts-grid,.table-grid{display:grid;gap:1rem}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.charts-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.table-grid{grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.panel,.kpi-card{background:#fff;border-radius:14px;padding:1rem;box-shadow:0 12px 25px #0284c71a}.kpi-card h2,.panel h2{margin:0;font-size:1rem}.kpi-card strong{display:block;margin-top:.4rem;font-size:1.6rem;color:#0284c7}.creator-form{margin-top:.8rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.7rem}.report-row{display:grid;gap:.8rem}.report-actions{display:flex;flex-wrap:wrap;gap:.6rem}.qr-actions{display:flex;gap:.4rem}.qr-actions button{padding:.4rem .6rem;font-size:.82rem}.pagination-row{margin-top:.75rem;display:flex;align-items:center;justify-content:flex-end;gap:.5rem}.pagination-row span{font-size:.9rem}input,button{border-radius:10px;border:1px solid #cbd5e1;padding:.65rem .75rem;font-size:.95rem}button{background:#0369a1;color:#fff;border:none;cursor:pointer;font-weight:600}button:disabled{opacity:.5;cursor:not-allowed}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;margin-top:.8rem}th,td{text-align:left;border-bottom:1px solid #e2e8f0;padding:.55rem;white-space:nowrap}.question-list{list-style:none;padding:0;margin:.8rem 0 0;display:grid;gap:.65rem}.question-list li{background:#f8fafc;border-radius:10px;padding:.7rem}.question-list p{margin:.2rem 0}.loading{text-align:center;font-weight:600}.error-text{color:#b91c1c;font-weight:600}.status-text{color:#065f46;font-weight:600}@media (max-width: 640px){.admin-page{padding:.7rem}.admin-header-row{flex-direction:column}.pagination-row{justify-content:flex-start}}
