@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,700&display=swap";:root{color:#171d2b;font-synthesis:none;background:#f3f0e9;font-family:DM Sans,sans-serif;font-size:16px}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.site-header{border-bottom:1px solid #d9d4ca;justify-content:space-between;align-items:center;height:84px;padding:0 clamp(24px,6vw,96px);display:flex}.brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{color:#fff;background:#e94c38;border-radius:50%;place-items:center;width:42px;height:42px;font-size:12px;font-weight:700;display:grid;box-shadow:inset 0 0 0 9px #fff,inset 0 0 0 11px #e94c38}.brand strong,.brand small{letter-spacing:.08em;display:block}.brand small{color:#73756f;text-transform:uppercase;font-size:10px}nav{gap:28px;display:flex}nav button,.text-link{color:#5e625e;background:0 0;border:0;padding:8px 0}nav button.active{color:#171d2b;border-bottom:2px solid #e94c38}.nav-cta{color:#fff!important;background:#171d2b!important;padding:10px 18px!important}.user-chip{color:#171d2b;border-left:1px solid #d9d4ca;align-self:center;padding-left:24px;font-size:13px;font-weight:700}main{max-width:1240px;margin:auto;padding:clamp(52px,8vw,100px) clamp(20px,5vw,64px) 80px}.hero{max-width:790px;margin-bottom:70px}.eyebrow{color:#e94c38;letter-spacing:.17em;text-transform:uppercase;font-size:13px;font-weight:700}h1{letter-spacing:-.045em;margin:18px 0 24px;font-size:clamp(42px,6vw,78px);line-height:1}h1 em{color:#e94c38;font-family:Playfair Display,serif;font-weight:700}.lead{color:#626560;max-width:570px;font-size:18px;line-height:1.7}.text-link{color:#171d2b;font-weight:700}.notice{background:#fff;border-left:4px solid;margin:-35px 0 30px;padding:16px 20px}.notice.success{border-color:#2b8a66}.notice.error{color:#922f22;border-color:#e94c38}.code-card{text-align:center;background:#fff;border:1px solid #dedad1;grid-template-columns:1fr;align-items:center;gap:8px;margin:-35px 0 36px;padding:32px;display:grid}.code-card span{text-transform:uppercase;letter-spacing:.14em;font-size:11px}.code-card strong{letter-spacing:.04em;color:#e94c38;font-size:clamp(38px,6vw,52px);line-height:1.1}.code-card p{color:#646761;margin:8px 0 0}.forms-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid;box-shadow:0 18px 60px #252a3317}.panel{background:#fff;padding:clamp(28px,5vw,58px);position:relative}.panel.dark{color:#fff;background:#171d2b}.panel .step{color:#e94c38;font-weight:700;position:absolute;top:25px;right:30px}.panel h2{margin:0 0 10px;font-size:34px}.panel>p{color:#777b75;margin:0 0 32px;line-height:1.5}.dark>p{color:#aeb1ad}label{text-transform:uppercase;letter-spacing:.09em;margin:20px 0;font-size:12px;font-weight:700;display:block}input,select,textarea{width:100%;color:inherit;background:0 0;border:0;border-bottom:1px solid #c8c5bd;outline:none;margin-top:6px;padding:13px 2px;display:block}input:focus,select:focus,textarea:focus{border-color:#e94c38}.dark input{border-color:#555b66}.dark select{color:#fff;background:#171d2b}select{letter-spacing:0;text-transform:none;font-size:16px;font-weight:600}input{letter-spacing:0;text-transform:none;font-size:16px}textarea{resize:vertical;border:1px solid #c8c5bd;min-height:140px;padding:12px}.field-row{grid-template-columns:1.5fr 1fr;gap:20px;display:grid}.upload input{opacity:0;width:1px;position:absolute}.upload span{color:#c8cbc7;text-transform:none;letter-spacing:0;border:1px dashed #666c77;margin-top:8px;padding:18px;font-size:15px;font-weight:400;display:block}.upload-note{font-size:13px;line-height:1.5;color:#aeb1ad!important;margin:-8px 0 16px!important}.primary{color:#fff;background:#171d2b;border:0;width:100%;margin-top:16px;padding:15px 18px;font-weight:700}.primary.accent{background:#e94c38}.primary:disabled{opacity:.55;cursor:wait}.primary.inline{width:auto;min-width:180px;margin:0}.session-loading{color:#73756f;letter-spacing:.05em;place-items:center;min-height:100vh;display:grid}.landing-grid{grid-template-columns:minmax(0,1.7fr) minmax(300px,.8fr);align-items:center;gap:clamp(40px,8vw,110px);min-height:600px;display:grid}.landing-hero{margin:0}.hero-actions{align-items:center;gap:28px;margin-top:34px;display:flex}.landing-card{color:#fff;background:#171d2b;padding:clamp(30px,5vw,52px);box-shadow:0 18px 60px #252a3330}.landing-card .step{color:#e94c38;letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:700}.landing-card ol{counter-reset:steps;margin:32px 0 0;padding:0;list-style:none}.landing-card li{counter-increment:steps;border-left:1px solid #3f4653;margin-left:12px;padding:0 0 28px 48px;position:relative}.landing-card li:last-child{border-left-color:#0000;padding-bottom:0}.landing-card li:before{content:counter(steps, decimal-leading-zero);background:#e94c38;border-radius:50%;place-items:center;width:26px;height:26px;font-size:9px;font-weight:700;display:grid;position:absolute;top:-3px;left:-13px}.landing-card li strong,.landing-card li span{display:block}.landing-card li span{color:#aeb1ad;margin-top:5px;font-size:13px;line-height:1.5}.auth-layout{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);align-items:center;gap:clamp(40px,8vw,110px);min-height:590px;display:grid}.auth-copy h1{font-size:clamp(46px,6vw,78px)}.auth-panel{box-shadow:0 18px 60px #252a3320}.auth-notice{margin:20px 0 10px}.auth-switch{margin:18px auto 0;display:block}.form-hint{color:#858782;margin:-10px 0 10px;font-size:12px}.ranking-page h1,.admin-page h1{margin-bottom:40px;font-size:clamp(46px,6vw,72px)}.ranking-select{max-width:520px;margin-bottom:28px}.category-tabs{flex-wrap:wrap;gap:8px;margin:30px 0;display:flex}.category-tabs button{color:#5e625e;text-align:left;background:#fff;border:1px solid #d3cec5;padding:13px 17px}.category-tabs button strong,.category-tabs button small{display:block}.category-tabs button strong{font-size:16px}.category-tabs button small{color:#858782;margin-top:4px;font-size:12px}.category-tabs button.active{color:#fff;background:#171d2b;border-color:#171d2b}.category-tabs button.active small{color:#c8cbc7}.category-note{color:#73756f;margin-top:28px;font-size:15px;line-height:1.55}.competition-description{text-transform:none;letter-spacing:0;font-size:14px;line-height:1.5;color:#73756f!important}.competition-deadline{font-size:13px;font-weight:700;color:#171d2b!important;margin-top:8px!important}.admin-grid{grid-template-columns:minmax(500px,1.1fr) minmax(0,.9fr);align-items:start;gap:36px;display:grid}.competition-list{gap:12px;display:grid}.competition-list h2{margin-top:0}.competition-list article{background:#fff;border:1px solid #dedad1;grid-template-columns:14px 1fr;gap:14px;padding:24px;display:grid}.competition-list article strong{font-size:20px}.competition-list article p{color:#73756f;white-space:pre-wrap;margin:8px 0 0;line-height:1.5}.status-dot{background:#2b8a66;border-radius:50%;width:9px;height:9px;margin-top:7px;box-shadow:0 0 0 4px #2b8a6620}.status-dot.inactive{background:#d28b28;box-shadow:0 0 0 4px #d28b2820}.status-dot.archived{background:#858782;box-shadow:0 0 0 4px #85878220}.status-dot.planned{background:#3f72b5;box-shadow:0 0 0 4px #3f72b520}.status-dot.ended{background:#858782;box-shadow:0 0 0 4px #85878220}.competition-heading{justify-content:space-between;align-items:center;gap:18px;display:flex}.competition-heading span{color:#73756f;letter-spacing:.1em;text-transform:uppercase;font-size:11px;font-weight:700}.competition-list article .competition-period{color:#171d2b;font-size:12px;font-weight:700}.competition-list .text-link{margin-top:12px}.state-controls{background:#f8f6f1;gap:10px;margin:24px 0;padding:18px;display:grid}.check-label{text-transform:none;letter-spacing:0;align-items:center;gap:10px;margin:0;font-size:13px;display:flex}.check-label input{appearance:auto;width:auto;margin:0;padding:0;display:inline-block}.ranking-list{gap:8px;display:grid}.ranking-list details{background:#fff;border-left:3px solid #0000}.ranking-list details.podium{border-left-color:#e94c38}.ranking-list summary{cursor:pointer;grid-template-columns:70px 1fr 130px 60px;align-items:center;padding:20px 24px;list-style:none;display:grid}.ranking-list summary::-webkit-details-marker{display:none}.rank{color:#a3a29e;font-size:24px;font-weight:700}.shooter strong,.shooter small,.average strong,.average small{display:block}.shooter small,.average small{color:#858782;margin-top:4px}.average{text-align:right}.average strong{font-size:21px}.count{text-align:right;color:#777}.result-details{background:#f8f6f1;padding:8px 24px 18px 94px}.result-details>div{border-top:1px solid #dedbd4;grid-template-columns:1fr 1fr 1fr auto;gap:20px;padding:12px 0;font-size:13px;display:grid}.result-details a{color:#e94c38}.empty,.loading{color:#777;text-align:center;background:#fff;padding:40px}footer{color:#8c8e89;border-top:1px solid #d9d4ca;max-width:1240px;margin:auto;padding:30px 64px;font-size:13px}@media (width<=780px){.site-header{align-items:flex-start;height:auto;padding-block:16px}.site-header nav{flex-wrap:wrap;justify-content:flex-end;gap:12px}.user-chip{text-align:right;border:0;order:-1;width:100%;padding:0}.landing-grid,.auth-layout,.admin-grid{grid-template-columns:1fr;min-height:0}.landing-card{margin-top:10px}.hero-actions{flex-direction:column;align-items:flex-start}.forms-grid{grid-template-columns:1fr}.code-card{grid-template-columns:1fr;gap:8px}.ranking-list summary{grid-template-columns:45px 1fr 75px}.count{display:none}.result-details{padding-left:24px}.result-details>div{grid-template-columns:1fr 1fr}.result-details time{color:#777}}
