@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=Fredoka+One&display=swap");:root{--orange:#f97316;--orange-light:#fed7aa;--orange-dark:#ea580c;--yellow:#fbbf24;--yellow-light:#fef3c7;--teal:#14b8a6;--teal-light:#ccfbf1;--purple:#8b5cf6;--purple-light:#ede9fe;--red:#ef4444;--green:#22c55e;--bg:#fef9f0;--surface:#fff;--border:#e5e7eb;--text:#1f2937;--text-muted:#6b7280;--shadow-sm:0 1px 3px rgba(0,0,0,.08);--shadow:0 4px 16px rgba(0,0,0,.1);--shadow-lg:0 8px 32px rgba(0,0,0,.12);--radius:16px;--radius-sm:10px;--radius-lg:24px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Nunito,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;line-height:1.6}h1,h2,h3{font-family:Fredoka One,sans-serif;font-weight:400;letter-spacing:.01em}a{color:inherit;text-decoration:none}button{cursor:pointer}button,input,select,textarea{font-family:Nunito,sans-serif}.grid-bg{background-color:#fafafa;background-image:linear-gradient(rgba(147,197,253,.3) 1px,transparent 0),linear-gradient(90deg,rgba(147,197,253,.3) 1px,transparent 0),linear-gradient(rgba(147,197,253,.1) 1px,transparent 0),linear-gradient(90deg,rgba(147,197,253,.1) 1px,transparent 0);background-size:40px 40px,40px 40px,8px 8px,8px 8px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:50px;font-weight:700;font-size:15px;border:none;transition:all .2s ease}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn-primary{background:linear-gradient(135deg,var(--orange),var(--orange-dark));color:#fff;box-shadow:0 4px 12px rgba(249,115,22,.35)}.btn-primary:hover{box-shadow:0 6px 20px rgba(249,115,22,.45)}.btn-secondary{background:#fff;color:var(--text);border:2px solid var(--border);box-shadow:var(--shadow-sm)}.btn-secondary:hover{border-color:var(--orange);color:var(--orange)}.btn-ghost{background:transparent;color:var(--text-muted);padding:8px 16px}.btn-ghost:hover{background:var(--border);color:var(--text)}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:50px;font-size:12px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.badge-easy{background:#dcfce7;color:#15803d}.badge-medium{background:#fef3c7;color:#b45309}.badge-hard{background:#fee2e2;color:#b91c1c}.badge-draft{background:#f3f4f6;color:#6b7280}.badge-published{background:#dcfce7;color:#15803d}.badge-pending{background:#fef3c7;color:#b45309}.badge-rejected{background:#fee2e2;color:#b91c1c}.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-fade-in{animation:fadeIn .3s ease forwards}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.admin-layout{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.admin-sidebar{background:#1e1b4b;color:#fff;padding:24px 0;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow-y:auto}.admin-content{padding:32px;background:#f8fafc;min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d1d5db;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#9ca3af}