body{color:#e5e7eb;background:#111827;margin:0;font-family:Arial,sans-serif}*{box-sizing:border-box}a{color:#93c5fd;text-decoration:none}a:hover{text-decoration:underline}.page{max-width:1180px;margin:0 auto}.card{background:#1f2937;border:1px solid #374151;border-radius:16px;min-width:0;margin-bottom:20px;padding:20px;transition:transform .15s,border-color .15s,box-shadow .15s}.card:hover{border-color:#3b82f6;transform:translateY(-2px);box-shadow:0 8px 24px #3b82f61f}.btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:10px;padding:10px 16px;font-weight:700;transition:background .15s,transform .15s,opacity .15s}.btn:hover{background:#1d4ed8;transform:translateY(-1px)}.btn:disabled{cursor:not-allowed;opacity:.65;background:#6b7280;transform:none}.btn-primary{background:#2563eb}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#4b5563}.btn-secondary:hover{background:#374151}.btn-warning{background:#ca8a04}.btn-warning:hover{background:#a16207}.btn-danger{background:#dc2626}.btn-danger:hover{background:#b91c1c}.btn-locked,.btn-locked:hover{color:#9ca3af;cursor:not-allowed;opacity:.6;background:#374151;transform:none}.input,.textarea{color:#e5e7eb;background:#111827;border:1px solid #374151;border-radius:10px;outline:none;width:100%;padding:11px 12px}.input:focus,.textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f62e}.textarea{resize:vertical}.badge{white-space:nowrap;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-block}.badge-success{color:#86efac;background:#14532d}.badge-warning{color:#fde68a;background:#713f12}.badge-danger{color:#fecaca;background:#7f1d1d}.badge-secondary{color:#d1d5db;background:#374151}.badge-info{color:#bfdbfe;background:#1e3a8a}.badge-compile{color:#c084fc;background:#a855f724;border:1px solid #a855f759}.table{border-collapse:collapse;background:#1f2937;border-radius:12px;width:100%;overflow:hidden}.table th,.table td{text-align:left;border-bottom:1px solid #374151;padding:12px}.table th{background:#020617}.table tr:hover{background:#273449}.card:has(.table){overflow-x:auto}pre{white-space:pre-wrap;word-break:break-word;max-width:100%;overflow-x:auto}.admin-page{padding-bottom:32px}.admin-hero{background:radial-gradient(circle at 0 0,#3b82f638,#0000 36%),#1f2937;justify-content:space-between;align-items:center;gap:20px;display:flex}.admin-hero h1,.admin-section-header h2,.problem-card h3,.test-card h3{margin:0}.admin-hero p,.admin-section-header p,.problem-card p,.test-card p,.muted-text{color:#9ca3af;margin:6px 0 0}.admin-hero-actions,.admin-actions{flex-wrap:wrap;gap:10px;display:flex}.admin-alert{border:1px solid #0000;border-radius:14px;margin-bottom:20px;padding:14px 16px;font-weight:700}.admin-alert-success{color:#86efac;background:#22c55e1f;border-color:#22c55e59}.admin-alert-error{color:#fca5a5;background:#ef44441f;border-color:#ef444459}.admin-stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:20px;display:grid}.stat-card{background:#1f2937;border:1px solid #374151;border-radius:16px;padding:18px}.stat-card span{color:#9ca3af;margin-bottom:8px;display:block}.stat-card strong{color:#f9fafb;font-size:30px}.admin-layout{grid-template-columns:320px minmax(0,1fr);align-items:start;gap:20px;display:grid}.admin-sidebar{position:sticky;top:20px}.admin-section-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.contest-list{flex-direction:column;gap:10px;max-height:660px;padding-right:4px;display:flex;overflow-y:auto}.contest-item{color:#e5e7eb;text-align:left;cursor:pointer;background:#111827;border:1px solid #374151;border-radius:14px;width:100%;padding:14px;transition:background .15s,border-color .15s,transform .15s}.contest-item:hover{background:#172033;border-color:#3b82f6;transform:translateY(-1px)}.contest-item.active{background:#2563eb29;border-color:#3b82f6}.contest-item-main{flex-direction:column;gap:6px;display:flex}.contest-item-main span{color:#9ca3af;font-size:13px}.contest-item-footer{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.contest-details-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.contest-details-grid>div{background:#111827;border:1px solid #374151;border-radius:14px;padding:14px}.contest-details-grid span{color:#9ca3af;margin-bottom:8px;font-size:13px;display:block}.problem-grid,.test-list{gap:14px;display:grid}.problem-card,.test-card{background:#111827;border:1px solid #374151;border-radius:16px;padding:16px;transition:border-color .15s,transform .15s,background .15s}.problem-card:hover,.test-card:hover{border-color:#3b82f6;transform:translateY(-1px)}.problem-card.active{background:#2563eb1f;border-color:#2563eb}.problem-card-header,.test-card-header{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;display:flex}.problem-meta{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.problem-meta span{color:#cbd5e1;background:#020617;border:1px solid #374151;border-radius:999px;padding:6px 10px;font-size:13px}.admin-forms-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:20px;display:grid}.admin-form{gap:14px;display:grid}.admin-form label{color:#d1d5db;gap:7px;font-weight:700;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.checkbox-label{align-items:center;gap:10px!important;display:flex!important}.checkbox-label input{width:16px;height:16px}.mono-textarea{font-family:Consolas,Monaco,monospace}.admin-empty{color:#9ca3af;text-align:center;background:#111827;border:1px dashed #4b5563;border-radius:14px;padding:20px}.test-io-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.test-io-grid span{color:#9ca3af;margin-bottom:8px;font-size:13px;display:block}.test-io-grid pre{color:#e5e7eb;background:#020617;border:1px solid #374151;border-radius:12px;margin:0;padding:12px}.markdown{color:#e5e7eb;line-height:1.7}.markdown h1,.markdown h2,.markdown h3{color:#f9fafb;margin-top:18px;margin-bottom:10px}.markdown p{margin:8px 0}.markdown code{color:#93c5fd;background:#111827;border:1px solid #374151;border-radius:6px;padding:2px 6px}.markdown pre{background:#111827;border:1px solid #374151;border-radius:8px;padding:12px;overflow-x:auto}.markdown pre code{color:#e5e7eb;background:0 0;border:none;padding:0}.markdown ul,.markdown ol{padding-left:24px}.markdown table{border-collapse:collapse;width:100%;margin:12px 0}.markdown th,.markdown td{border:1px solid #374151;padding:8px}.markdown blockquote{color:#d1d5db;border-left:4px solid #2563eb;padding-left:12px}.card-hover{transition:transform .2s,box-shadow .2s,border-color .2s}.card-hover:hover{transform:translateY(-3px)}.top-user-hover{transition:transform .18s,filter .18s}.top-user-hover:hover{filter:brightness(1.08);transform:translateY(-4px)scale(1.05)}.leaderboard-button{transition:transform .18s,box-shadow .18s,background .18s}.leaderboard-button:hover{transform:translateY(-2px);box-shadow:0 0 18px #3b82f659}.leaderboard-contest-grid{grid-template-columns:minmax(260px,1.4fr) minmax(280px,1fr) auto;align-items:center;gap:24px;display:grid}@media (width<=1100px){.admin-layout,.admin-forms-grid{grid-template-columns:1fr}.admin-sidebar{position:static}.contest-list{max-height:none}.contest-details-grid,.admin-stats{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){main{padding:16px!important}.page{gap:16px}.card{padding:16px}.table{min-width:720px}h1{font-size:24px}h2{font-size:20px}h3{font-size:18px}.leaderboard-contest-grid{grid-template-columns:1fr;gap:18px}.leaderboard-top-block{border-top:1px solid #94a3b824;padding-top:18px;border-left:none!important;padding-left:0!important}.leaderboard-button{text-align:center;width:100%}}@media (width<=650px){header{align-items:flex-start!important;padding:12px 16px!important}nav{justify-content:flex-start;width:100%}.admin-hero,.admin-section-header,.problem-card-header,.test-card-header{flex-direction:column;align-items:stretch}.admin-hero-actions,.admin-actions{width:100%}.admin-actions .btn,.admin-hero-actions .btn{flex:1}.admin-stats,.contest-details-grid,.form-row,.test-io-grid{grid-template-columns:1fr}.btn{padding:8px 10px;font-size:13px}.badge{padding:3px 7px;font-size:11px}.input,.textarea{font-size:14px}}.admin-active-panel{background:radial-gradient(circle at 100% 0,#3b82f62e,#0000 32%),#1f2937;border-color:#3b82f6a6}.compact-form{max-width:100%}.admin-content{min-width:0}.problem-grid,.test-list{max-height:none}@media (width<=1100px){.admin-layout{grid-template-columns:1fr}}.page{max-width:1500px}.admin-stats,.contest-details-grid,.admin-forms-grid{display:none!important}.admin-layout{grid-template-columns:360px minmax(0,1fr);gap:24px}.contest-list{max-height:calc(100vh - 250px)}.current-contest{border-color:#2563ebb3;box-shadow:0 0 28px #2563eb1f}.problem-card-compact{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:16px;display:grid}.problem-main{min-width:0}.problem-main h3,.problem-main p{text-overflow:ellipsis;overflow:hidden}.problem-main p{max-width:760px}.problem-card-compact .problem-meta{margin-top:10px;margin-bottom:0}.modal-backdrop{z-index:500;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#020617c2;justify-content:center;align-items:flex-start;padding:72px 24px 24px;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-card{background:#1f2937;border:1px solid #374151;border-radius:18px;width:min(1100px,100%);padding:20px;box-shadow:0 24px 80px #00000073}.modal-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.modal-header h2{margin:0}.modal-header p{color:#9ca3af;margin:6px 0 0}.tests-modal{max-height:calc(100vh - 110px);overflow-y:auto}.test-form-panel{background:#111827;border:1px solid #374151;border-radius:14px;margin-bottom:16px;padding:16px}.modal-test-list{max-height:none}@media (width<=1100px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:static}.contest-list{max-height:none}.problem-card-compact{grid-template-columns:1fr}}@media (width<=650px){.modal-backdrop{padding:60px 12px 12px}.modal-header{flex-direction:column}.problem-card-compact{align-items:stretch}}.admin-layout{grid-template-columns:300px minmax(0,1fr)}.contest-search{margin-bottom:12px}.contest-list{max-height:calc(100vh - 250px);overflow-y:auto}.admin-sidebar{top:90px}.problem-card-compact{min-height:auto;padding:18px}.problem-main p{color:#9ca3af;margin-top:4px}.problem-card-compact .admin-actions{justify-content:flex-end}@media (width<=1100px){.admin-layout{grid-template-columns:1fr}}.contest-filters{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px;display:grid}.contest-filters .btn{padding:8px 10px;font-size:12px}.contest-list{scrollbar-width:thin;scrollbar-color:#3b82f6bf #0f172ad9;padding-right:8px}.contest-list::-webkit-scrollbar{width:10px}.contest-list::-webkit-scrollbar-track{background:#0f172ad9;border:1px solid #374151e6;border-radius:999px}.contest-list::-webkit-scrollbar-thumb{background:linear-gradient(#3b82f6f2,#2563eba6);border:2px solid #0f172af2;border-radius:999px}.contest-list::-webkit-scrollbar-thumb:hover{background:linear-gradient(#60a5fa,#2563ebe6)}.contest-list::-webkit-scrollbar-corner{background:0 0}@media (width<=900px){.auth-layout{grid-template-columns:1fr!important}}
