:root{--sg-navy:#004678;--sg-blue:#0173a8;--sg-red:#7f3962;--sg-ink:#132537;--sg-muted:#5d6d7c;--sg-line:#dce6ec;--sg-soft:#f3f8fb;--sg-white:#fff;--success:#167753;--warning:#a35b00;--danger:#a92d3b}.competition-app{min-height:100vh;color:var(--sg-ink);font-family:var(--font-geist-sans),Arial,sans-serif;background:#fff}.competition-app *{box-sizing:border-box}.competition-container{width:min(1160px,100% - 36px);margin-inline:auto}.competition-header{z-index:40;border-bottom:1px solid var(--sg-line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;position:sticky;top:0}.header-row{justify-content:space-between;align-items:center;gap:22px;min-height:74px;display:flex}.competition-brand{color:var(--sg-navy);align-items:center;gap:11px;text-decoration:none;display:flex}.brand-mark{color:#fff;background:linear-gradient(145deg,var(--sg-blue),var(--sg-navy));border-bottom:4px solid var(--sg-red);border-radius:13px;place-items:center;width:43px;height:43px;font-weight:850;display:grid}.competition-brand b,.competition-brand small{display:block}.competition-brand b{letter-spacing:.04em;font-size:.92rem}.competition-brand small{color:var(--sg-muted);margin-top:2px;font-size:.69rem}.competition-header nav{align-items:center;gap:20px;display:flex}.competition-header nav a,.link-button{color:var(--sg-navy);font-size:.87rem;font-weight:700;text-decoration:none}.link-button{cursor:pointer;background:0 0;border:0}.nav-portal,.button.primary{border-radius:8px;padding:10px 16px;background:var(--sg-red)!important;color:#fff!important}.competition-hero{color:#fff;background:radial-gradient(circle at 85% 20%,#0173a845,#0000 28%),linear-gradient(125deg,#003757 0%,#004678 55%,#072d4d 100%);padding:78px 0 68px;position:relative;overflow:hidden}.competition-hero:after{content:"";border:65px solid #ffffff0a;border-radius:50%;width:440px;height:440px;position:absolute;bottom:-140px;right:-100px}.hero-grid{z-index:1;grid-template-columns:1.35fr .65fr;align-items:center;gap:54px;display:grid;position:relative}.eyebrow{color:#fff;background:var(--sg-red);letter-spacing:.1em;text-transform:uppercase;border-radius:5px;padding:7px 11px;font-size:.76rem;font-weight:800;display:inline-flex}.competition-hero h1{letter-spacing:-.055em;max-width:800px;margin:23px 0;font-size:clamp(2.4rem,5.5vw,4.9rem);line-height:.96}.competition-hero h1 em{color:#78c8ef;font-style:normal}.lead{color:#dcecf5;max-width:720px;font-size:1.13rem;line-height:1.7}.button-row{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{font:inherit;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-weight:800;text-decoration:none;display:inline-flex}.button.secondary{color:var(--sg-navy);background:#fff}.button.outline{color:var(--sg-navy);background:0 0;border:1px solid #a7bfcd}.button.danger{background:var(--danger);color:#fff}.button:disabled{opacity:.5;cursor:not-allowed}.hero-card{color:var(--sg-ink);background:#fff;border-radius:18px;padding:27px;box-shadow:0 20px 50px #0003}.hero-card .theme-label{color:var(--sg-red);text-transform:uppercase;letter-spacing:.12em;font-size:.76rem;font-weight:850}.hero-card h2{margin:10px 0 22px;font-size:1.7rem;line-height:1.15}.quick-list{gap:13px;display:grid}.quick-item{border-top:1px solid var(--sg-line);align-items:flex-start;gap:12px;padding-top:13px;display:flex}.quick-item span{color:var(--sg-blue);font-weight:900}.section{padding:76px 0}.section.soft{background:var(--sg-soft)}.section-heading{max-width:720px;margin-bottom:34px}.section-heading h2{letter-spacing:-.035em;margin:10px 0;font-size:clamp(1.8rem,3.4vw,2.8rem)}.section-heading p{color:var(--sg-muted);line-height:1.7}.card-grid{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.info-card,.prize-card,.panel,.stat-card,.auth-card,.loading-card{border:1px solid var(--sg-line);background:#fff;border-radius:14px;padding:24px;box-shadow:0 8px 24px #0046780f}.info-card h3,.prize-card h3{color:var(--sg-navy);margin:0 0 10px}.info-card p,.info-card li,.prize-card p{color:var(--sg-muted);line-height:1.65}.info-card ul{padding-left:20px}.prize-card{border-top:5px solid var(--sg-blue)}.prize-card:first-child{border-color:var(--sg-red)}.prize-amount{color:var(--sg-navy);font-size:2.1rem;font-weight:900}.timeline{background:var(--sg-line);border:1px solid var(--sg-line);border-radius:14px;grid-template-columns:repeat(4,1fr);gap:1px;display:grid;overflow:hidden}.timeline-item{background:#fff;padding:24px}.timeline-item b,.timeline-item span{display:block}.timeline-item b{color:var(--sg-red);text-transform:uppercase;font-size:.82rem}.timeline-item span{color:var(--sg-navy);margin:8px 0;font-size:1.2rem;font-weight:850}.timeline-item small{color:var(--sg-muted)}.faq-list{gap:10px;display:grid}.faq-list details{border:1px solid var(--sg-line);border-radius:10px;padding:18px 20px}.faq-list summary{cursor:pointer;color:var(--sg-navy);font-weight:800}.faq-list p{color:var(--sg-muted);line-height:1.6}.competition-footer{color:#fff;background:#062c47;padding:44px 0}.footer-row{grid-template-columns:2fr 1fr;gap:60px;display:grid}.competition-footer .competition-brand{color:#fff}.competition-footer .competition-brand small,.competition-footer p{color:#b9d0dc}.competition-footer p{max-width:600px;line-height:1.6}.competition-footer a{color:#fff;margin-top:10px;text-decoration:none;display:block}.portal-page{background:var(--sg-soft);min-height:70vh;padding:48px 0 80px}.narrow{max-width:760px}.portal-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px;display:flex}.portal-heading h1{letter-spacing:-.04em;margin:0;font-size:clamp(2rem,4vw,3.1rem)}.portal-heading p{color:var(--sg-muted)}.auth-card,.loading-card{max-width:540px;margin:30px auto}.auth-card h1{color:var(--sg-navy);margin-top:0}.login-options{border-top:1px solid var(--sg-line);grid-template-columns:1fr 1fr;gap:10px;margin-top:20px;padding-top:16px;display:grid}.login-options p{background:var(--sg-soft);color:var(--sg-muted);border-radius:8px;margin:0;padding:12px;font-size:.82rem;line-height:1.5}.login-options b{color:var(--sg-navy)}.form-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field label{color:#365164;font-size:.82rem;font-weight:800}.field input,.field select,.field textarea{width:100%;color:var(--sg-ink);font:inherit;background:#fff;border:1px solid #b9cbd6;border-radius:8px;padding:11px 12px}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--sg-blue);outline:3px solid #0173a826}.help{color:var(--sg-muted);font-size:.76rem}.notice{color:#165875;border-left:4px solid var(--sg-blue);background:#e9f5fb;border-radius:9px;margin:14px 0;padding:13px 15px}.notice.error{color:#7c2430;border-color:var(--danger);background:#fff0f2}.notice.success{color:#145f45;border-color:var(--success);background:#edf9f4}.dashboard-grid{grid-template-columns:240px 1fr;gap:24px;display:grid}.dashboard-nav{align-self:start;gap:6px;display:grid;position:sticky;top:98px}.dashboard-nav button{text-align:left;color:var(--sg-navy);cursor:pointer;background:0 0;border:0;border-radius:8px;padding:11px 13px;font-weight:750}.dashboard-nav button.active{background:var(--sg-navy);color:#fff}.dashboard-main{min-width:0}.stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.stat-card{padding:17px}.stat-card span{color:var(--sg-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.74rem;display:block}.stat-card b{color:var(--sg-navy);font-size:1.8rem}.panel{margin-bottom:18px;overflow:hidden}.panel h2,.panel h3{color:var(--sg-navy);margin-top:0}.table-wrap{margin:0 -24px -24px;overflow:auto}.data-table{border-collapse:collapse;width:100%;min-width:760px}.data-table th,.data-table td{text-align:left;border-top:1px solid var(--sg-line);vertical-align:top;padding:12px 14px;font-size:.82rem}.data-table th{color:#526a78;text-transform:uppercase;letter-spacing:.04em;background:#f8fbfc;font-size:.69rem}.status-pill{text-transform:capitalize;color:#365164;background:#eaf1f5;border-radius:999px;padding:5px 9px;font-size:.69rem;font-weight:850;display:inline-flex}.status-submitted,.status-active,.status-completed,.status-winner{color:#136446;background:#e8f7f1}.status-invalid,.status-conflict{color:#8e2633;background:#fff0f2}.status-under-review,.status-finalist{color:#88570c;background:#fff7e7}.progress-bar{background:#dce7ed;border-radius:10px;height:8px;overflow:hidden}.progress-bar span{background:linear-gradient(90deg,var(--sg-blue),var(--sg-red));height:100%;display:block}.essay-reader{white-space:pre-wrap;border:1px solid var(--sg-line);background:#fbfdfe;border-radius:10px;max-height:600px;padding:24px;line-height:1.8;overflow:auto}.score-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.score-field{border:1px solid var(--sg-line);border-radius:8px;grid-template-columns:1fr 95px;align-items:center;gap:12px;padding:12px;display:grid}.score-field input{border:1px solid #afc4d0;border-radius:6px;width:100%;padding:9px}.tab-buttons{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.tab-buttons button{border:1px solid var(--sg-line);color:var(--sg-navy);cursor:pointer;background:#fff;border-radius:7px;padding:9px 12px;font-weight:700}.tab-buttons button.active{background:var(--sg-navy);color:#fff}.actions{flex-wrap:wrap;gap:8px;display:flex}.small-button{color:var(--sg-navy);cursor:pointer;background:#fff;border:1px solid #b9cbd6;border-radius:6px;padding:7px 10px;font-size:.75rem;font-weight:750}.small-button.primary{background:var(--sg-blue);border-color:var(--sg-blue);color:#fff}.small-button.danger{color:var(--danger);border-color:#e8a8b0}.rank-flag{color:#875800;background:#fff2d8;border-radius:4px;margin:2px;padding:4px 6px;font-size:.68rem;display:inline-block}.judge-portal>.portal-heading{align-items:center}.judge-progress,.locked-score{background:var(--sg-navy);color:#fff;text-align:center;border-radius:12px;min-width:128px;padding:13px 16px}.judge-progress b,.judge-progress span,.locked-score b,.locked-score span{display:block}.judge-progress b,.locked-score b{font-size:1.35rem}.judge-progress span,.locked-score span{text-transform:uppercase;letter-spacing:.07em;opacity:.82;font-size:.7rem}.judge-start-panel{border-top:5px solid var(--sg-red)}.judge-start-panel>.portal-heading{align-items:center}.judge-start-panel>.portal-heading .actions{justify-content:flex-end}.judge-steps{background:var(--sg-line);border:1px solid var(--sg-line);counter-reset:steps;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:1px;margin:24px 0;padding:0;list-style:none;display:grid;overflow:hidden}.judge-steps li{counter-increment:steps;background:#fafdff;min-height:120px;padding:22px 18px 20px 54px;position:relative}.judge-steps li:before{content:counter(steps);background:var(--sg-blue);color:#fff;border-radius:50%;place-items:center;width:27px;height:27px;font-weight:900;display:grid;position:absolute;top:20px;left:17px}.judge-steps b,.judge-steps span{display:block}.judge-steps b{color:var(--sg-navy);margin-bottom:7px}.judge-steps span{color:var(--sg-muted);font-size:.82rem;line-height:1.55}.judge-rules-grid{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.judge-rules-grid>div{border-left:4px solid var(--sg-blue);background:var(--sg-soft);border-radius:8px;padding:14px 15px}.judge-rules-grid b,.judge-rules-grid span{display:block}.judge-rules-grid b{color:var(--sg-navy);margin-bottom:4px;font-size:.86rem}.judge-rules-grid span{color:var(--sg-muted);font-size:.78rem;line-height:1.5}.assignment-nav-heading{border-bottom:1px solid var(--sg-line);margin-bottom:4px;padding:12px 13px}.assignment-nav-heading b,.assignment-nav-heading small{display:block}.assignment-nav-heading b{color:var(--sg-navy)}.assignment-nav-heading small{color:var(--sg-muted);margin-top:3px}.judge-assignment-nav{border:1px solid var(--sg-line);background:#fff;border-radius:12px;padding:7px}.judge-assignment-nav button{justify-content:space-between;align-items:center;gap:8px;display:flex}.judge-assignment-nav button.active .status-pill{color:#fff;background:#ffffff29}.assignment-summary{border-top:5px solid var(--sg-blue)}.identity-warning{background:var(--sg-soft);color:var(--sg-muted);border-radius:8px;padding:13px 15px;font-size:.82rem;line-height:1.55}.identity-warning b{color:var(--sg-navy)}.conflict-button{color:var(--danger);background:#fff;border:1px solid #e5aab2}.evaluation-panel{border-top:5px solid var(--sg-navy)}.rubric-reminder{grid-template-columns:repeat(5,1fr);gap:8px;margin:2px 0 18px;display:grid}.rubric-reminder>div,.submitted-score-grid>div{background:var(--sg-soft);border:1px solid var(--sg-line);border-radius:8px;gap:3px;padding:12px;display:grid}.rubric-reminder span,.submitted-score-grid span{text-transform:uppercase;color:var(--sg-muted);letter-spacing:.03em;font-size:.7rem}.rubric-reminder b,.submitted-score-grid b{color:var(--sg-navy);font-size:1.15rem}.rubric-reminder .rubric-total{background:var(--sg-navy);border-color:var(--sg-navy)}.rubric-reminder .rubric-total span,.rubric-reminder .rubric-total b{color:#fff}.judge-confirmation{color:#365164;background:#f8fbfc;border:1px solid #bdcfda;border-radius:9px;align-items:flex-start;gap:10px;margin-top:18px;padding:15px;font-size:.84rem;line-height:1.5;display:flex}.judge-confirmation input{flex:none;margin-top:3px}.submitted-score-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.submitted-comments{gap:10px;margin-top:16px;display:grid}.submitted-comments p{background:var(--sg-soft);color:var(--sg-muted);border-radius:8px;margin:0;padding:14px;line-height:1.6}.submitted-comments b{color:var(--sg-navy)}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:900px){.competition-header nav a:not(.nav-portal),.competition-header .link-button{display:none}.hero-grid,.footer-row,.dashboard-grid{grid-template-columns:1fr}.hero-card{max-width:580px}.card-grid,.timeline{grid-template-columns:1fr 1fr}.dashboard-nav{display:flex;position:static;overflow:auto}.judge-steps{grid-template-columns:1fr}.judge-steps li{min-height:auto}.judge-assignment-nav{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:visible}.assignment-nav-heading{grid-column:1/-1}.rubric-reminder{grid-template-columns:repeat(3,1fr)}.stat-grid{grid-template-columns:1fr 1fr}}@media (max-width:600px){.competition-container{width:min(100% - 24px,1160px)}.competition-header{position:relative}.competition-brand small{display:none}.header-row{min-height:66px}.competition-hero{padding:54px 0}.competition-hero h1{font-size:2.65rem}.section{padding:54px 0}.card-grid,.timeline,.form-grid,.score-grid,.judge-rules-grid,.rubric-reminder,.submitted-score-grid,.judge-assignment-nav,.login-options{grid-template-columns:1fr}.field.full{grid-column:auto}.stat-grid{grid-template-columns:1fr 1fr}.portal-heading{flex-direction:column;align-items:start}.panel{padding:18px}.table-wrap{margin:0 -18px -18px}.button{width:100%}}
