:root{--red:#e30613;--red-dark:#c90511;--ruby:#891932;--wine:#3d0018;--ink:#222;--text:#5f5f5f;--muted:#8a8a8a;--paper:#fff8f8;--paper-soft:#f7e9eb;--white:#fff;--line:rgba(34,34,34,.12);--red-line:rgba(227,6,19,.22);--shadow:0 2px 10px rgba(34,34,34,.05);--shadow-up:0 12px 40px rgba(61,0,24,.09);--font:"Fira Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{color-scheme:light}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--paper);line-height:1.55}a{color:var(--ruby)}a:hover,a:focus-visible{color:var(--red)}button,input,select,textarea{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.is-hidden,.honeypot{display:none!important}
.site-header,.admin-header-inner{height:68px;display:flex;align-items:center;justify-content:space-between;gap:1rem;max-width:1200px;margin:auto;padding:0 2rem}.site-header{border-bottom:1px solid var(--red-line)}.brand img,.admin-brand img{display:block;width:auto;height:34px}.stage-label,.version-pill{font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--red);border:1px solid var(--red-line);padding:.3rem .65rem;background:#fff}
.public-shell{width:min(100% - 2rem,980px);margin:0 auto;padding:clamp(2.5rem,6vw,5rem) 0 5rem}.intro{max-width:760px;margin:0 auto 2.25rem;text-align:center}.eyebrow{margin:0 0 .55rem;color:var(--red);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.intro h1,.success-card h1{margin:.1rem 0 1rem;color:var(--red);font-size:clamp(2.2rem,6vw,4.75rem);line-height:.95;text-transform:uppercase;font-weight:900;letter-spacing:-.035em}.audience-word{display:inline-block;min-width:7.15ch;text-align:center;transition:opacity .24s ease,transform .24s ease;will-change:opacity,transform}.audience-word.is-changing{opacity:0;transform:translateY(-.16em)}.intro>p:last-child,.success-card>p{max-width:650px;margin:1.25rem auto;color:var(--text);font-size:1.1rem}
.application-card,.success-card{position:relative;background:var(--white);border:1px solid var(--red-line);box-shadow:var(--shadow-up);padding:clamp(1.25rem,4vw,3rem)}.application-card:before,.success-card:before{content:"";position:absolute;left:-1px;right:-1px;top:-1px;height:4px;background:var(--red)}.success-card{max-width:780px;margin:7vh auto;text-align:center;padding:clamp(2rem,7vw,5rem)}
fieldset{border:0;padding:0;margin:0 0 3rem}fieldset+fieldset{border-top:1px solid var(--line);padding-top:2.4rem}legend{width:100%;padding:0;margin:0 0 1.25rem;font-size:1.22rem;font-weight:900;text-transform:uppercase;letter-spacing:-.01em}legend span{display:inline-grid;place-items:center;width:2rem;height:2rem;margin-right:.65rem;background:var(--red);color:#fff;font-size:.75rem;vertical-align:.15rem}
.form-grid{display:grid;gap:1rem}.form-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.top-gap{margin-top:1rem}label{display:block;font-size:.86rem;font-weight:700;color:var(--ink)}label em,label small{font-style:normal;font-weight:400;color:var(--muted);font-size:.72rem;margin-left:.3rem}input:not([type=checkbox]):not([type=file]),select,textarea{display:block;width:100%;margin-top:.38rem;padding:.78rem .85rem;border:1px solid #c8c4c4;border-radius:2px;background:#fff;color:var(--ink);transition:border-color .15s,box-shadow .15s}textarea{resize:vertical;min-height:120px}input:focus,select:focus,textarea:focus{outline:0;border-color:var(--red);box-shadow:0 0 0 3px rgba(227,6,19,.1)}
.choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:.75rem}.choice{position:relative}.choice input{position:absolute;opacity:0}.choice span{display:flex;align-items:center;justify-content:center;min-height:62px;padding:.75rem;text-align:center;border:1px solid var(--line);background:#fffafa;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:.15s}.choice input:checked+span{border-color:var(--red);background:var(--paper-soft);color:var(--ruby);box-shadow:inset 0 -3px 0 var(--red)}.choice input:focus-visible+span{outline:3px solid rgba(227,6,19,.16)}
.toggle,.privacy{display:flex;gap:.7rem;align-items:flex-start}.toggle input,.privacy input{accent-color:var(--red);margin:.27rem 0 0;flex:0 0 auto}.file-drop{display:grid;place-items:center;min-height:130px;padding:1.5rem;border:1px dashed var(--red);background:var(--paper);text-align:center;color:var(--ruby)}.file-drop input{display:block;margin:1rem auto 0;max-width:100%;font-weight:400}.privacy{margin:0 0 1.5rem;padding:1rem;background:var(--paper);font-size:.83rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.65rem;border:1px solid transparent;border-radius:2px;padding:.72rem 1rem;text-decoration:none;font-size:.82rem;font-weight:800;cursor:pointer;transition:.15s}.button-primary{background:var(--red);color:#fff}.button-primary:hover,.button-primary:focus-visible{background:var(--ruby);color:#fff}.button-secondary{background:#fff;color:var(--ink);border-color:#c8c4c4}.button-secondary:hover{background:#f5f4f4;color:var(--ink)}.button-danger{background:#fff;color:var(--ruby);border-color:#e8b4b4}.button-danger:hover{background:#fdeeee}.button-large{width:100%;padding:1rem 1.25rem;font-size:.92rem;text-transform:uppercase;letter-spacing:.04em}.alert{margin:0 0 1.25rem;padding:.9rem 1rem;border:1px solid}.alert ul{margin:.45rem 0 0;padding-left:1.25rem}.alert-error{background:#fdeeee;border-color:#e8b4b4;color:#7a1f1f}.alert-success{background:#eef8ee;border-color:#b8ddb8;color:#1f4d28}
.admin-body{background:#f5f4f4;font-size:.94rem}.admin-header{background:#f5f4f4;border-bottom:3px solid var(--red)}.admin-header-inner{max-width:1280px;height:62px}.admin-brand{display:flex;align-items:center;gap:1rem;color:var(--ink);text-decoration:none;font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.admin-brand img{height:30px}.admin-header nav{display:flex;gap:1.2rem}.admin-header nav a{color:var(--ink);text-decoration:none;font-size:.82rem;font-weight:600}.admin-main{max-width:1280px;margin:auto;padding:1.6rem}.admin-main.narrow{max-width:720px}.admin-title{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:1.35rem}.admin-title h1,.admin-card h1{margin:0;font-size:2rem;line-height:1;text-transform:uppercase}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-bottom:1rem}.stat-card{background:#fff;border:1px solid #e0dede;border-left:4px solid var(--red);padding:1rem;text-decoration:none;color:var(--ink);box-shadow:var(--shadow)}.stat-card:hover{transform:translateY(-1px);color:var(--ink)}.stat-card strong{display:block;font-size:1.8rem;line-height:1}.stat-card span{display:block;margin-top:.35rem;color:var(--text);font-size:.78rem}.stat-progress{border-left-color:#d49e00}.stat-done{border-left-color:#3d7b49}
.filter-bar{display:flex;gap:.65rem;align-items:center;margin-bottom:1rem;background:#fff;border:1px solid #e0dede;padding:.75rem}.filter-bar input{flex:1;min-width:0;margin:0}.clear-filter{font-size:.8rem;white-space:nowrap}.admin-layout{display:grid;grid-template-columns:1fr;gap:1rem}.admin-layout.has-detail{grid-template-columns:minmax(400px,.9fr) minmax(460px,1.1fr);align-items:start}.application-list,.detail-panel,.admin-card{background:#fff;border:1px solid #e0dede;box-shadow:var(--shadow)}.application-row{display:grid;grid-template-columns:12px 1fr auto;gap:.85rem;align-items:center;padding:.85rem 1rem;border-bottom:1px solid #e8e6e6;text-decoration:none;color:var(--ink)}.application-row:hover,.application-row.is-active{background:#fff8f8;color:var(--ink)}.application-row.is-active{box-shadow:inset 3px 0 0 var(--red)}.status-dot{width:8px;height:8px;border-radius:50%;background:#aaa}.status-dot.status-0{background:var(--red)}.status-dot.status-1{background:#d49e00}.status-dot.status-2{background:#3d7b49}.application-main strong,.application-main small{display:block}.application-main small{margin-top:.15rem;color:var(--muted);font-size:.75rem}.application-meta{text-align:right}.application-meta time{display:block;margin-top:.2rem;color:var(--muted);font-size:.7rem}.status-badge{display:inline-block;padding:.15rem .45rem;font-size:.66rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;background:#eee}.status-badge.status-0{background:#fde8ea;color:var(--ruby)}.status-badge.status-1{background:#fff4e0;color:#765a12}.status-badge.status-2{background:#eef8ee;color:#285d32}
.detail-panel{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:1.25rem}.detail-head{display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:1rem}.detail-head h2{margin:0;font-size:1.65rem}.detail-close{font-size:1.8rem;line-height:1;text-decoration:none}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:1rem 0}.detail-grid div{padding:.7rem;background:#faf8f8}.detail-grid dt{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.detail-grid dd{margin:.2rem 0 0;font-size:.86rem;overflow-wrap:anywhere}.message-box,.files-box{border-top:1px solid var(--line);padding:1rem 0}.message-box h3,.files-box h3{margin:0 0 .55rem;font-size:.76rem;text-transform:uppercase;letter-spacing:.06em}.message-box p{margin:0;color:var(--text)}.file-list{display:grid;gap:.45rem}.file-list a{display:flex;align-items:center;gap:.7rem;padding:.6rem;background:#faf8f8;text-decoration:none;overflow-wrap:anywhere}.file-list a span{padding:.18rem .35rem;background:var(--red);color:#fff;font-size:.6rem;font-weight:800}.admin-form{display:grid;gap:1rem;border-top:1px solid var(--line);padding-top:1rem}.detail-actions{display:flex;flex-wrap:wrap;gap:.55rem}.empty-state{padding:2rem;text-align:center;color:var(--muted)}.back-link{display:inline-block;margin-bottom:1rem}.admin-card{padding:1.5rem}.login-shell{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:#f5f4f4}.login-card{width:min(100%,400px);background:#fff;border-top:4px solid var(--red);padding:1.5rem;box-shadow:var(--shadow)}.login-card img{height:36px;width:auto;margin-bottom:1.5rem}.login-card h1{margin:0 0 1.2rem;text-transform:uppercase;font-size:1.2rem}.login-card .button{width:100%;margin-top:1rem}
@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}.admin-layout.has-detail{grid-template-columns:1fr}.detail-panel{position:static;max-height:none;overflow:visible;scrollbar-gutter:auto}.form-grid-3{grid-template-columns:1fr 1fr}.site-header{padding:0 1rem}}@media(max-width:620px){.public-shell{width:min(100% - 1rem,980px);padding-top:2rem}.application-card{padding:1.1rem}.form-grid-2,.form-grid-3,.detail-grid{grid-template-columns:1fr}.choice-grid{grid-template-columns:1fr 1fr}.admin-main{padding:.75rem}.stats-grid{gap:.45rem}.admin-header-inner{padding:0 .8rem}.admin-brand span{display:none}.application-row{grid-template-columns:10px 1fr}.application-meta{grid-column:2;text-align:left;display:flex;gap:.5rem;align-items:center}.filter-bar{flex-wrap:wrap}.filter-bar input{flex-basis:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
