#account-gate{display:none}
body.account-locked .app{display:none!important}
body.account-locked #account-gate{display:flex;position:fixed;inset:0;align-items:safe center;justify-content:center;overflow:auto;background:#111719;padding:28px;z-index:100}
.account-welcome{width:100%;max-width:470px;padding:38px;border:1px solid #3d493d;border-top:3px solid var(--orange);background:#192124;border-radius:6px;box-shadow:0 20px 70px #0004}
.account-welcome>img{display:block;margin-bottom:30px;border-radius:7px}
.account-welcome h1,.personal-welcome h1{font:600 34px/1.15 'Space Grotesk',sans-serif;letter-spacing:-1px;margin:0 0 19px;color:var(--text)}
.account-welcome>p:not(.eyebrow),.personal-welcome>p:not(.eyebrow){font-size:13px;line-height:1.8;color:var(--muted);margin-bottom:26px}
.account-welcome>.btn{width:100%;min-height:46px;margin-bottom:10px;text-decoration:none;text-align:center;justify-content:center}
.account-welcome>small{font-size:11px;line-height:1.6;color:var(--muted);display:block;margin-top:18px}
.account-button{display:flex;align-items:center;justify-content:center;gap:9px;min-height:40px;color:var(--text);font:600 11px 'Inter',sans-serif;padding:4px 8px 4px 0;max-width:160px}
.account-button>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-button:hover{color:var(--orange)}
.account-avatar{height:33px;width:33px;border:1px solid #5c6c47;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;background:#293524;color:var(--orange);font:500 12px 'IBM Plex Mono',monospace;flex-shrink:0}
.profile-account{display:flex;align-items:center;gap:13px;margin:0 0 25px;padding-bottom:22px;border-bottom:1px solid var(--line)}
.profile-account>.account-avatar{width:45px;height:45px;font-size:16px}
.profile-account strong{display:block;font-size:12px;font-weight:600}
.profile-account small{display:block;font-size:11px;margin-top:6px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.field-hint{font-size:10px;color:var(--muted);line-height:1.7;margin:8px 0 0}
.profile-aliases{margin:5px 0 20px;padding:16px;border:1px solid var(--line);border-radius:4px}
.profile-aliases summary{cursor:pointer;font-size:12px;padding:4px 0}
.profile-aliases>p{font-size:11px;line-height:1.7;color:var(--muted);margin:15px 0}
.profile-alias-list{max-height:235px;overflow:auto;border:1px solid var(--line);border-radius:4px;background:#131b1d}
.profile-alias-list>label{display:flex;align-items:center;gap:12px;padding:12px 14px;border-bottom:1px solid var(--line);cursor:pointer;font-size:12px;min-height:55px}
.profile-alias-list>label:last-child{border:0}
.profile-alias-list input{height:19px;width:19px;accent-color:var(--orange);flex-shrink:0}
.profile-alias-list small{display:block;margin-top:4px;color:var(--muted);font-size:10px}
.profile-notice{font-size:11px;line-height:1.8;color:var(--muted);border-left:2px solid #647449;padding:8px 0 8px 13px;margin:20px 0}
.profile-error{font-size:12px;line-height:1.7;color:#edb0a7;margin:10px 0;overflow-wrap:anywhere}
.profile-error:empty{display:none}
.personal-welcome{max-width:750px;border:1px solid #3d493d;border-top:3px solid var(--orange);background:var(--panel);border-radius:6px;padding:48px;margin:40px auto}
.personal-welcome h1{font-size:36px;max-width:570px}
.personal-welcome>.btn{min-height:46px;padding:12px 25px;margin-right:20px}
.personal-welcome>.text-button{min-height:46px}
.personal-participation{display:flex;align-items:center;gap:13px;padding:17px 16px;border:1px solid #4e613f;background:#253023;border-radius:5px;margin:0 0 20px;cursor:pointer}
.personal-participation input{width:21px;height:21px;flex-shrink:0;accent-color:var(--orange)}
.personal-participation strong{display:block;font-size:13px;font-weight:600}
.personal-participation small{font-size:10px;line-height:1.7;color:var(--muted);display:block;margin-top:5px}
.personal-score-strip{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:13px 16px;border:1px solid #3e5137;background:#1d291f;border-radius:4px;margin:0 0 17px;font-size:11px;line-height:1.7;color:#bacab0}
.personal-score-strip>.btn{font-size:11px;min-height:40px;flex-shrink:0;background:transparent;border-color:#506444;color:#cadba1}
.self-badge{font:500 8px 'IBM Plex Mono',monospace;vertical-align:middle;display:inline-block;background:#36462b;color:#d3e7a9;border:1px solid #597146;padding:4px 5px;border-radius:3px;letter-spacing:0;margin-left:5px}
#mark-shooter-me{min-height:30px;padding:2px 0;margin:-3px 0 5px;color:var(--orange);font-size:10px}
#account-signout{text-decoration:none}
@media(max-width:1050px){.account-button{max-width:105px;gap:6px}.account-button>span:last-child{font-size:10px}.header-right #save-status{max-width:100px;font-size:8px}.header-right{gap:8px}}
@media(max-width:850px) and (min-width:631px){.account-button{max-width:145px}.header-right #save-status{max-width:140px}.header-right{gap:14px}}
@media(max-width:630px){.account-button{padding:0;min-width:36px;min-height:40px}.account-button>span:last-child{display:none}.account-avatar{height:34px;width:34px}.header-help{display:none}.header-right{gap:10px}.header-right #save-status{max-width:calc(100% - 34px)}.profile-account strong{font-size:11px}.profile-account small{font-size:10px}.profile-alias-list>label{min-height:58px}.personal-welcome{padding:29px 23px;margin:15px auto}.personal-welcome h1{font-size:29px}.personal-welcome>p:not(.eyebrow){font-size:12px}.personal-welcome>.btn{width:100%;margin:0 0 8px}.personal-welcome>.text-button{display:flex;width:100%;justify-content:center}.personal-score-strip{align-items:flex-start;gap:10px;padding:13px;font-size:10px}.personal-score-strip>.btn{font-size:10px;min-height:44px;max-width:130px;white-space:normal;text-align:center}.personal-participation{padding:15px 12px}.personal-participation strong{font-size:12px}.personal-participation small{font-size:10px}.field-hint{font-size:10px}#mark-shooter-me{min-height:38px;font-size:11px}.account-welcome{padding:28px 23px}.account-welcome h1{font-size:30px}body.account-locked #account-gate{padding:17px}}

.registration{max-width:500px;margin:auto}
.registration>img{margin-bottom:20px}
.registration h1{font-size:30px}
.registration>p:not(.eyebrow){margin-bottom:22px}
.registration .field{margin-bottom:17px}
.registration .two-cols .field{margin-bottom:0}
.registration .field-hint{margin:15px 0 20px}
.registration input,.registration select{min-height:46px}
.registration form>.btn{width:100%;min-height:48px;justify-content:center}
.registration>.text-button{width:100%;justify-content:center;min-height:44px;margin-top:10px;text-decoration:none}
@media(max-width:630px){.registration input,.registration select{font-size:16px}.registration .two-cols{grid-template-columns:1fr 1fr;gap:12px}.registration h1{font-size:28px}}
