:root{--bg-main:#f8fafc;--bg-canvas:#f8fafc;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#f1f5f9;--bg-card-solid:#fff;--bg-input:#fff;--bg-modal:#fff;--bg-modal-overlay:#0f172a99;--border-subtle:#e2e8f0;--border-medium:#cbd5e1;--border-focus:#2563eb;--primary:#2563eb;--primary-hover:#1d4ed8;--primary-dark:#1e40af;--primary-light:#eff6ff;--primary-glow:#2563eb29;--primary-gradient:linear-gradient(135deg, #1d4ed8 0%, #2563eb 100%);--accent-cyan:#0284c7;--accent-cyan-glow:#0284c71f;--accent-emerald:#059669;--accent-emerald-glow:#0596691f;--accent-amber:#d97706;--accent-amber-glow:#d977061f;--accent-rose:#e11d48;--accent-purple:#3b82f6;--text-main:#0f172a;--text-heading:#0f172a;--text-muted:#475569;--text-dim:#64748b;--text-white:#0f172a;--text-pure-white:#fff;--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, sans-serif;--font-heading:"Outfit", "Plus Jakarta Sans", sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:22px;--radius-full:9999px;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000a;--shadow-lg:0 10px 25px -3px #00000014, 0 4px 6px -4px #00000008;--shadow-glow:0 4px 20px #2563eb26;--transition-fast:.15s ease;--transition-normal:.25s cubic-bezier(.16, 1, .3, 1);--transition-slow:.4s cubic-bezier(.16, 1, .3, 1)}html{box-sizing:border-box;-webkit-text-size-adjust:100%;width:100%;max-width:100vw;overflow-x:hidden}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(circle at 10% 10%,#2563eb0a 0%,#0000 40%),radial-gradient(circle at 90% 30%,#0284c708 0%,#0000 50%);background-attachment:fixed;width:100%;max-width:100vw;min-height:100vh;line-height:1.5;position:relative;overflow-x:hidden}#root{background-color:var(--bg-main);width:100%;max-width:100vw;min-height:100vh;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-heading);font-weight:700}a{color:var(--primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--primary-hover)}button{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;outline:none}input,textarea,select{font-family:var(--font-sans);color:#0f172a;border:1.5px solid var(--border-medium);border-radius:var(--radius-md);transition:all var(--transition-fast);box-sizing:border-box;background-color:#fff;outline:none;width:100%;max-width:100%;padding:.65rem .9rem;font-size:.9rem}input::placeholder,textarea::placeholder{color:#94a3b8}input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3.5px var(--primary-glow);background-color:#fff}.form-label{color:#1e293b;margin-bottom:.4rem;font-size:.82rem;font-weight:600;line-height:1.3;display:block}.form-control{box-sizing:border-box;width:100%;display:block}.container{width:100%;max-width:1360px;margin:0 auto;padding:0 1.5rem}.glass-panel{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);background:#fff}.glass-panel-hover{transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal)}.glass-panel-hover:hover{box-shadow:var(--shadow-md);border-color:#bfdbfe;transform:translateY(-2px)}.glass-card{border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#fff}.btn{border-radius:var(--radius-md);transition:all var(--transition-normal);white-space:nowrap;justify-content:center;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.88rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary);color:#fff;border:1px solid var(--primary);box-shadow:0 2px 6px #2563eb40}.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover);transform:translateY(-1px);box-shadow:0 4px 14px #2563eb59}.btn-secondary{color:#1e293b;border:1px solid var(--border-medium);background:#fff;box-shadow:0 1px 2px #0000000a}.btn-secondary:hover{color:#0f172a;background:#f8fafc;border-color:#94a3b8}.btn-outline{border:1.5px solid var(--primary);color:var(--primary);background:0 0}.btn-outline:hover{background:var(--primary-light);color:var(--primary-hover)}.btn-sm{border-radius:var(--radius-sm);padding:.45rem .85rem;font-size:.8rem}.btn-lg{border-radius:var(--radius-lg);padding:.85rem 1.75rem;font-size:1rem}.btn-danger{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.btn-danger:hover{color:#fff;background:#e11d48}.btn-success{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.btn-success:hover{color:#fff;background:#059669}.badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;display:inline-flex}.badge-dot{border-radius:50%;width:6px;height:6px}.badge-primary{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.badge-success{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.badge-success .badge-dot{background:#059669}.badge-warning{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.badge-warning .badge-dot{background:#d97706}.badge-info{color:#0284c7;background:#f0f9ff;border:1px solid #bae6fd}.badge-info .badge-dot{background:#0284c7}.badge-danger{color:#be123c;background:#fff1f2;border:1px solid #fecdd3}.badge-danger .badge-dot{background:#e11d48}.badge-neutral{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes pulseGlow{0%,to{opacity:.6}50%{opacity:1}}.animate-fade-in{animation:.3s cubic-bezier(.16,1,.3,1) forwards fadeIn}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-main)}::-webkit-scrollbar-thumb{border-radius:var(--radius-full);background:#ffffff26}::-webkit-scrollbar-thumb:hover{background:#ffffff40}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.grid{display:grid}.w-full{width:100%}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (width<=1024px){.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(1,minmax(0,1fr))}}.mobile-bottom-nav{display:none!important}.desktop-nav{display:flex!important}@media (width<=768px){.desktop-nav,.header-tagline,.header-badge,.header-reset-btn,.header-user-text{display:none!important}.mobile-bottom-nav{display:flex!important}.main-app-content{padding-bottom:70px!important}.container{padding:0 .75rem!important}.dashboard-container{padding:.75rem .5rem 5rem!important}.app-header{padding:.45rem 0!important}.app-logo{border-radius:8px!important;width:32px!important;height:32px!important;font-size:.95rem!important}.app-brand-title{font-size:.96rem!important}.dashboard-hero-banner,.admin-hero-banner{color:#fff!important;background:linear-gradient(135deg,#1e40af 0%,#2563eb 100%)!important;border-radius:14px!important;margin-bottom:.75rem!important;padding:1rem!important}.dashboard-hero-banner h1,.admin-hero-banner h1{color:#fff!important;margin-bottom:.25rem!important;font-size:1.25rem!important;line-height:1.25!important}.dashboard-hero-banner p,.admin-hero-banner p{color:#ffffffe6!important;font-size:.76rem!important;line-height:1.35!important}.dashboard-avatar{width:44px!important;height:44px!important}.dashboard-stats-row{gap:.85rem!important;margin-top:.5rem!important}.dashboard-stats-row>div>div:first-child{font-size:1.15rem!important}.glass-panel{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:14px!important;max-width:100%!important;padding:.85rem .9rem!important;box-shadow:0 1px 3px #0000000d!important}div.admin-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.55rem!important;width:100%!important;margin-bottom:.85rem!important}div.admin-metrics-grid .admin-metric-card,div.admin-metrics-grid .glass-panel{min-width:0!important;padding:.75rem .85rem!important}div.admin-metrics-grid .glass-panel>div:nth-child(2){color:#0f172a!important;font-size:1.35rem!important}.admin-hero-banner{border-radius:16px!important;width:100%!important;margin-bottom:.85rem!important;padding:1rem!important}.admin-hero-actions{gap:.5rem!important;width:100%!important;display:flex!important}.admin-btn-action{text-align:center!important;flex:calc(50% - .25rem)!important;justify-content:center!important;min-width:130px!important;padding:.5rem .65rem!important;font-size:.78rem!important}.admin-nav-toolbar{gap:.65rem!important;width:100%!important;margin-bottom:1rem!important}.admin-tabs-row{flex-direction:column!important;align-items:stretch!important;gap:.65rem!important;width:100%!important}.admin-tabs-list{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;gap:.4rem!important;width:100%!important;padding-bottom:4px!important;display:flex!important;overflow-x:auto!important}.admin-tabs-list::-webkit-scrollbar{display:none!important}.admin-tab-btn{flex-shrink:0!important;padding:.45rem .75rem!important;font-size:.76rem!important}.admin-filters-group{gap:.5rem!important;width:100%!important;display:flex!important}.admin-search-wrapper{flex:auto!important;min-width:0!important}.admin-status-select{flex:none!important;min-width:110px!important;font-size:.78rem!important}.hackathon-card-header{gap:.75rem!important;width:100%!important}.hackathon-sponsor-badge{text-align:left!important;justify-content:space-between!important;width:100%!important}.hackathon-card-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.5rem!important;width:100%!important;padding:.65rem .75rem!important}.hackathon-card-actions-bar{flex-direction:column!important;align-items:stretch!important;gap:.65rem!important;width:100%!important}.hackathon-actions-buttons{flex-wrap:wrap!important;gap:.35rem!important;width:100%!important;display:flex!important}.hackathon-actions-buttons button{flex:calc(50% - .25rem)!important;justify-content:center!important;padding:.45rem .5rem!important;font-size:.75rem!important}.submission-review-card,.audit-log-card{width:100%!important;padding:.85rem!important}.mobile-horizontal-tabs{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;gap:.3rem!important;margin-bottom:.75rem!important;padding-bottom:.35rem!important;overflow-x:auto!important}.mobile-horizontal-tabs::-webkit-scrollbar{display:none}.mobile-horizontal-tabs button{white-space:nowrap!important;border-radius:9999px!important;padding:.35rem .7rem!important;font-size:.74rem!important}.grid-cols-2,.grid-cols-3,.grid-cols-4:not(.admin-metrics-grid),.create-modal-grid-2,.form-row-grid{grid-template-columns:1fr!important;gap:.85rem!important}.progression-stepper-grid{-webkit-overflow-scrolling:touch!important;scrollbar-width:none!important;gap:.75rem!important;padding-bottom:.5rem!important;display:flex!important;overflow-x:auto!important}.progression-stepper-grid>div{flex-shrink:0!important;min-width:220px!important}form{width:100%!important;max-width:100%!important}form div{min-width:0!important}.form-label{margin-bottom:.35rem!important;font-size:.82rem!important}input,select,textarea{box-sizing:border-box!important;width:100%!important;min-height:42px!important;padding:.6rem .8rem!important;font-size:.88rem!important}.input-with-left-icon{padding-left:2.85rem!important}.input-with-right-icon{padding-right:2.85rem!important}.auth-page-wrapper{background:linear-gradient(#f0f7ff 0%,#f8fafc 100%)!important;min-height:100vh!important;padding:.75rem .5rem 1.5rem!important}.auth-brand-bar{margin-bottom:.75rem!important}.auth-header-tagline,.auth-header-badge{display:none!important}.auth-verify-btn{padding:.35rem .6rem!important;font-size:.74rem!important}.auth-card{background:#fff!important;border:1px solid #e2e8f0!important;border-radius:18px!important;margin-bottom:1rem!important;padding:1.25rem 1rem!important;box-shadow:0 10px 30px #2563eb14!important}.auth-card-header{margin-bottom:.85rem!important}.auth-card-header h1{color:#0f172a!important;margin-bottom:.2rem!important;font-size:1.35rem!important}.auth-card-header p{color:#64748b!important;font-size:.76rem!important}.auth-switcher-tabs{background:#f1f5f9!important;border:1px solid #e2e8f0!important;margin-bottom:.85rem!important;padding:.25rem!important}.auth-switcher-tabs button{padding:.5rem .6rem!important;font-size:.82rem!important}.auth-role-selector{gap:.45rem!important;margin-bottom:.85rem!important}.auth-role-btn{padding:.5rem .6rem!important}.auth-form{gap:.85rem!important}.modal-backdrop-wrapper{padding:.5rem!important}.modal-content,.glass-panel[style*=maxHeight],.create-hackathon-modal-panel{color:#0f172a!important;background:#fff!important;border-radius:16px!important;width:100%!important;max-width:100%!important;max-height:94dvh!important;margin:auto!important;overflow-y:auto!important}.mobile-nav-item:active{transform:scale(.92)}@media (width<=360px){.container{padding:0 .45rem!important}.dashboard-container{padding:.5rem .45rem 5.5rem!important}div.admin-metrics-grid{grid-template-columns:1fr!important}.admin-btn-action,.hackathon-actions-buttons button{flex:100%!important}}}.header-dropdown-menu{z-index:100;background:#fff;border:1px solid #e2e8f0;border-radius:16px;width:275px;max-width:calc(100vw - 1.5rem);padding:.85rem;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 30px #0000001f,0 0 0 1px #2563eb14}.header-dropdown-overlay{z-index:90;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a40;position:fixed;inset:0}.input-with-left-icon{padding-left:2.75rem!important}.input-with-right-icon{padding-right:2.75rem!important}@media print{@page{size:landscape A4;margin:0}html,body{background:#fff!important;width:100vw!important;height:100vh!important;margin:0!important;padding:0!important;overflow:hidden!important}body *{visibility:hidden!important}#printable-certificate,#printable-certificate *{visibility:visible!important}#printable-certificate{box-sizing:border-box!important;width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;box-shadow:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;z-index:9999999!important;page-break-inside:avoid!important;page-break-after:avoid!important;border:none!important;border-radius:0!important;flex-direction:column!important;justify-content:space-between!important;margin:0!important;padding:1.8cm 2.2cm!important;display:flex!important;position:fixed!important;top:0!important;left:0!important}.no-print,.modal-backdrop,header,footer,nav,button{display:none!important}}@media (width<=768px){.create-hackathon-modal-panel{background:#fff!important;border-radius:16px!important;width:100%!important;max-width:100%!important;max-height:96dvh!important}.create-hackathon-header{background:#f8fafc!important;border-bottom:1px solid #e2e8f0!important;padding:.75rem 1rem!important}.create-hackathon-tabs{background:#f1f5f9!important;border-bottom:1px solid #e2e8f0!important;gap:.35rem!important;padding:.5rem .75rem!important}.create-hackathon-tab-btn{padding:.45rem .7rem!important;font-size:.75rem!important}.create-hackathon-body{background:#fff!important;padding:.85rem 1rem!important}.create-hackathon-footer{background:#f8fafc!important;border-top:1px solid #e2e8f0!important;flex-direction:column!important;align-items:stretch!important;gap:.65rem!important;padding:.75rem 1rem!important}.modal-footer-cancel-btn{order:2!important;justify-content:center!important;width:100%!important}.modal-footer-action-group{flex-direction:column!important;order:1!important;gap:.5rem!important;width:100%!important;display:flex!important}.modal-footer-draft-btn,.modal-footer-publish-btn{justify-content:center!important;width:100%!important;padding:.65rem!important;font-size:.85rem!important}.prize-item-card{background:#f8fafc!important;border:1px solid #e2e8f0!important;padding:.75rem!important}}
