.application-login { max-width:480px; margin:20px auto; }
.owned-applications { max-width:880px; margin-inline:auto; }
.owned-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,240px) auto; align-items:end; gap:16px; margin-bottom:20px; }
.owned-filters label { display:grid; gap:8px; min-width:0; }
.hn-app .owned-filters .form-control,.hn-app .owned-filters .form-select,.hn-app .owned-filters .nx-select-trigger,.hn-app .owned-filters>.btn { min-height:40px; height:40px; box-sizing:border-box; padding-block:8px; }
@media(max-width:767px) { .owned-filters { grid-template-columns:minmax(0,1fr); } }
.owned-event { margin-bottom:20px; overflow:hidden; }
.owned-event>.card-header { gap:14px; background:var(--hn-primary-lt); border-bottom:1px solid var(--hn-border-color); }
.owned-event>.card-header h2 { color:var(--hn-body-color); }
.owned-event>.card-header>.avatar { background:var(--hn-bg-surface); color:var(--hn-primary); }
.owned-event-link { color:inherit; text-decoration:none; }
.owned-event-link:hover { color:inherit; text-decoration:underline; }
.owned-event-link:focus-visible { outline:2px solid var(--hn-primary); outline-offset:3px; border-radius:2px; }
.owned-event h2 { margin:0; font-size:18px; line-height:1.4; }
.owned-event-participants { margin:0; padding:0; list-style:none; background:#fff; }
[data-bs-theme=dark] .owned-event-participants { background:var(--hn-bg-surface); }
.owned-event-participants>li+li { border-top:1px solid var(--hn-border-color); }
.owned-application { overflow:hidden; }
.owned-application>summary.card-header { border:0; background:transparent; }
.owned-application summary { cursor:pointer; gap:14px; list-style:revert; }
.owned-application>summary.card-header:focus-visible { outline:2px solid var(--hn-primary); outline-offset:-3px; }
.owned-application summary::marker { color:var(--hn-primary); }
.owned-application-title { display:grid; flex:1; gap:5px; min-width:0; overflow-wrap:anywhere; }
.owned-application-title strong { font-size:16px; }
.owned-application-expand { width:18px; height:18px; flex:none; color:var(--hn-secondary); }
.owned-application[open] .owned-application-expand { transform:rotate(180deg); }
.owned-application-title small,.owned-application-facts dt { color:var(--hn-secondary); font-size:13px; font-weight:400; }
.owned-application-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 20px; margin-bottom:24px; }
.owned-application-facts .owned-athlete-fact { position:relative; padding:8px 0 8px 50px; background:transparent; border:0; min-width:0; }
.owned-athlete-fact .avatar { position:absolute; left:0; top:8px; width:36px; height:36px; border-radius:10px; }
.owned-athlete-fact .avatar svg { width:19px; height:19px; }
.owned-athlete-fact .avatar svg:not([stroke]) { fill:currentColor; }
.owned-application-facts dd { margin:5px 0 0; font-weight:500; overflow-wrap:anywhere; }
.owned-sections-title { display:flex; align-items:center; gap:14px; font-size:15px; font-weight:600; margin:0 0 5px; }
.owned-sections-title .avatar { width:36px; height:36px; border-radius:10px; flex:none; }
.owned-application-sections { line-height:1.6; margin:0 0 20px 50px; }
.owned-application-sections .list-group-item { background:transparent; border:0; color:var(--hn-body-color); padding:5px 0; overflow-wrap:anywhere; }
.owned-application .application-actions { margin-bottom:0; flex-wrap:wrap; }
@media(max-width:575px) { .owned-application-facts { grid-template-columns:minmax(0,1fr); } }
.application-launch { max-width:680px; margin-inline:auto; }
.application-dialog { width:min(680px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); padding:0; margin:auto; overscroll-behavior:contain; }
.application-dialog:not([open]) { display:none; }
.application-dialog[open],.application-dialog .modal-content { display:flex; flex-direction:column; min-height:0; }
.application-dialog .modal-content { max-height:calc(100dvh - 34px); }
.application-dialog .modal-header { flex:none; }
.application-dialog .modal-title { flex:1; }
.application-dialog .btn-close { filter:none; }
.application-dialog #application-title:focus { outline:none; }
.application-dialog-body { overflow-y:auto; overscroll-behavior:contain; }
.application-dialog::backdrop { background:#263b5c66; backdrop-filter:blur(5px); }
body:has(.application-dialog[open]) { overflow:hidden; }
.application-reference-field { display:grid; gap:8px; min-width:0; }
.application-form .application-reference-field label { font-size:14px; }
.application-form .application-reference { width:100%; justify-content:space-between; text-align:left; font-size:13px; font-weight:400; }
.application-reference span { min-width:0; overflow-wrap:anywhere; }
.application-reference svg { flex:none; color:var(--hn-secondary); }
.application-reference-dialog { width:min(560px,calc(100vw - 32px)); }
.application-reference-search { display:flex; gap:10px; }
.application-reference-search input { min-width:0; width:0; flex:1; }
.application-reference-search .btn { flex:none; min-width:80px; white-space:nowrap; }
.application-reference-results { display:grid; }
.application-reference-option { padding:12px 0; border-bottom:1px solid var(--hn-border-color); cursor:pointer; }
.application-reference-option span { min-width:0; overflow-wrap:anywhere; }
.application-reference-option .form-check-input:checked { background-color:var(--hn-primary); background-image:var(--bs-form-check-bg-image),linear-gradient(165deg,#7288fb,#4c65dd); border-color:var(--hn-primary); }
.application-reference-option .form-check-input:focus { border-color:var(--hn-primary); box-shadow:0 0 0 3px var(--hn-primary-lt); }
.application-reference-dialog .modal-footer { justify-content:flex-end; }
.application-reference-dialog .modal-footer .btn { min-width:140px; }
#find-coach[hidden] { display:none; }
.application-event-name { font-weight:600; line-height:1.5; }
.application-dialog .application-form { gap:18px; }
.application-dialog .application-subjects { gap:12px; }
.application-form label.application-subject-option { display:flex; align-items:flex-start; gap:14px; padding:16px; border:1px solid var(--hn-border-color); border-radius:12px; background:var(--hn-bg-surface); cursor:pointer; }
.application-form label.application-subject-option:has(input:checked) { background:var(--hn-primary-lt); border-color:var(--hn-primary); }
.application-subject-option:has(input:focus-visible) { outline:2px solid var(--hn-primary); outline-offset:3px; }
.application-subject-option input { flex:none; width:18px; height:18px; margin:3px 0 0; accent-color:var(--hn-primary); }
.application-subject-option input[type=radio] { appearance:none; border:1px solid var(--hn-secondary); border-radius:50%; background:var(--hn-bg-forms); padding:0; }
.application-subject-option input[type=radio]:checked { border-color:var(--hn-primary); background:radial-gradient(circle,var(--hn-primary) 0 4px,transparent 4.5px),var(--hn-bg-forms); }
@media(forced-colors:active) { .application-subject-option input[type=radio] { appearance:auto; } }
.application-subject-option strong { display:block; font-size:15px; line-height:1.5; font-weight:600; }
.application-subject-option small { display:block; margin-top:4px; font-size:13px; font-weight:400; line-height:1.6; color:var(--hn-secondary); }
.application-athlete-fields { display:grid; gap:18px; }
.application-athlete-fields[hidden] { display:none; }
.application-form label[hidden] { display:none; }
.application-dialog .application-form legend { display:flex; align-items:center; gap:10px; font-size:16px; margin-bottom:12px; }
.application-dialog legend .avatar { width:30px; height:30px; flex:none; border-radius:9px; }
.application-dialog legend .avatar svg { width:18px; height:18px; }
.application-dialog .application-fields { gap:14px; }
.application-form #different-section-weights[hidden] { display:none; }
.application-login h1,.application-form legend { font-size:20px; }
.application-actions { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.application-actions form { margin:0; }
.application-form { display:grid; gap:24px; }
.application-form label:not(.application-check) { display:grid; gap:8px; font-size:14px; min-width:0; }
.application-form fieldset { border:0; padding:0; min-width:0; }
.application-form legend { font-weight:700; margin-bottom:16px; }
.application-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.application-subjects,.application-sections { display:grid; gap:12px; }
.application-check { display:flex; align-items:flex-start; gap:10px; line-height:1.5; padding:8px 0; }
.application-check input { width:18px; height:18px; margin-top:3px; flex:none; accent-color:var(--hn-primary); }
.application-fields .application-no-patronymic { align-self:end; align-items:center; min-height:40px; padding-block:0; margin:0; }
.application-no-patronymic input { margin-top:0; }
.application-form { --application-primary:linear-gradient(165deg,#4c65dd,#3e55c7); }
.application-form .form-check-input { background-color:var(--hn-bg-forms); border-color:var(--hn-border-color); }
.application-form .form-check-input:checked { background-color:var(--hn-primary); background-image:var(--bs-form-check-bg-image),var(--application-primary); border-color:var(--hn-primary); }
.application-form .form-check-input:focus { border-color:var(--hn-primary); box-shadow:0 0 0 3px var(--hn-primary-lt); }
.application-form .btn-check:checked+.btn { background:var(--application-primary); border-color:var(--hn-primary); color:#fff; }
.application-form .btn-primary { --bs-btn-focus-shadow-rgb:var(--hn-primary-rgb); --bs-btn-active-bg:var(--hn-primary); --bs-btn-active-border-color:var(--hn-primary); --bs-btn-hover-border-color:var(--hn-primary); }
.application-form .btn-primary:focus-visible,.application-form .btn-check:focus-visible+.btn { outline:2px solid var(--hn-primary); outline-offset:3px; box-shadow:0 0 0 3px var(--hn-primary-lt); }
.application-check[hidden] { display:none; }
.application-form #relationship-field[hidden] { display:none; }
.application-note { color:var(--hn-secondary); font-size:14px; line-height:1.6; }
.application-error { display:block; color:var(--hn-danger); font-size:14px; line-height:1.5; }
.account-security .application-error,.application-login .application-error,[data-profile-editor] .application-error { color:#b91c1c; }
[data-bs-theme=dark] .account-security .application-error,[data-bs-theme=dark] .application-login .application-error,[data-bs-theme=dark] [data-profile-editor] .application-error { color:#fca5a5; }
.application-success { border:1px solid var(--hn-success); padding:16px; border-radius:12px; margin:20px 0; }
.application-consent { margin-bottom:16px; padding:16px; background:var(--hn-bg-surface-secondary); border-radius:12px; }
.application-consent summary { cursor:pointer; min-height:30px; }
.application-consent p { line-height:1.6; margin:16px 0 0; }
.application-owned { margin-top:24px; }
.application-owned ul { margin:0; padding-left:20px; }
.application-owned li+li { margin-top:20px; }
.application-form input[readonly] { color:var(--hn-secondary); }
.application-launch .btn-danger { background:#b91c1c; border-color:#b91c1c; color:#fff; }
.application-launch .btn-danger:hover,.application-launch .btn-danger:active { background:#991b1b; border-color:#991b1b; color:#fff; }
@media(max-width:767px) { .application-fields { grid-template-columns:minmax(0,1fr); } .application-form :is(input.form-control,select.form-select) { font-size:16px; } }
