@font-face{font-family:League Spartan;src:url('/fonts/LeagueSpartan.ttf')}@font-face{font-family:Lato;src:url('/fonts/Lato-Regular.ttf')}
:root{--primary:#1b5299;--secondary:#4DA8DA;--background:#f4f6f8;--text:#333f48;--accent:#ff7f50;--success:#4caf50;--line:#dce3e9}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--text);font-family:Lato,Arial,sans-serif;line-height:1.5}header{background:var(--primary);color:white;padding:20px max(24px,calc((100vw - 1440px)/2));display:flex;align-items:center;gap:30px}.brand{font-family:League Spartan,sans-serif;font-size:30px;line-height:1}.brand span{display:block;font-size:11px;letter-spacing:5px;margin-top:7px}.label{font-size:11px;letter-spacing:2px}header button{margin-left:auto;color:white!important;border-color:#ffffff70!important}main{max-width:1488px;margin:auto;padding:32px 24px}.intro{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:12px 0 28px}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:bold;color:var(--primary)}h1,h2,h3{font-family:League Spartan,Lato,sans-serif;line-height:1.08;margin:0 0 15px}h1{font-size:clamp(32px,4vw,48px)}h2{font-size:24px}p{margin:0 0 16px}p.small,.small{font-size:12px;color:#526270}.columns{display:grid;grid-template-columns:330px minmax(0,1fr);gap:24px}.card{background:white;border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:22px}.narrow{max-width:480px;margin:8vh auto}.narrow h1{font-size:46px}label{display:block;font-size:14px;margin-bottom:14px}input,select{display:block;width:100%;padding:11px;border:1px solid #bdcbd7;border-radius:8px;margin-top:5px;font:inherit;color:var(--text);background:white}input[type=file]{font-size:12px;padding:9px}.check{display:flex;align-items:flex-start;gap:10px;font-size:12px}.check input{width:auto;margin-top:4px;flex:none}button{border:1px solid transparent;border-radius:8px;padding:11px 16px;background:var(--primary);color:white;font:inherit;font-weight:bold;cursor:pointer}button:hover{filter:brightness(.92)}button:disabled{opacity:.5;cursor:wait}button.quiet{color:var(--primary);background:transparent;border-color:var(--line)}button.danger{background:#a33333}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.pill{border-radius:99px;padding:8px 12px;color:var(--primary);background:#e7f0fa;font-size:12px;white-space:nowrap}.stats{display:flex;flex-wrap:wrap;gap:12px;margin:16px 0}.stat{background:var(--background);border-radius:10px;padding:12px;flex:1;min-width:90px}.stat strong{font-family:League Spartan,sans-serif;font-size:28px;display:block}.stat span{font-size:12px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.section-title h2{margin:0}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}.photo{border:1px solid var(--line);border-radius:10px;overflow:hidden;min-width:0}.photo .caption{padding:12px;overflow-wrap:anywhere}.photo .frame{position:relative;line-height:0}.photo img{width:100%;height:auto;display:block}.frame .box{position:absolute;border:3px solid var(--accent);pointer-events:none}.caption p{font-size:12px;margin:0 0 7px}.caption .actions{gap:5px;margin-top:8px}.caption button{padding:6px 9px;font-size:12px}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.actions label{flex:1;margin:0}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--text);color:white;border-radius:10px;padding:14px 20px;max-width:min(650px,90vw);z-index:5;box-shadow:0 4px 20px #0003}#notice:empty{display:none}.reference{display:flex;align-items:center;gap:18px;margin:18px 0}.reference img{width:95px;max-height:125px;object-fit:contain;border-radius:8px}.warning{padding:12px;border-left:4px solid var(--accent);background:#fff4ed}.accepted{color:#276b2b}.rejected{color:#922727}progress{width:100%;margin-top:16px}footer{text-align:center;font-size:10px;letter-spacing:1px;padding:24px;color:#647380}[hidden]{display:none!important}#upload-errors{font-size:12px;padding-left:18px;color:#922727}@media(max-width:850px){.columns{grid-template-columns:1fr}aside{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.intro{display:block}.pill{display:inline-block;margin-top:10px}.card{padding:18px}.label{display:none}main{padding:20px 14px}.gallery{grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}header{padding:18px 20px}.section-title{align-items:flex-start}}
