:root{color-scheme:light}#registration-app{--rg-text:#1f2f4a;--rg-text-muted:rgba(28,45,70,.7);--rg-text-soft:rgba(28,45,70,.55);--rg-accent:#2a66c4;--rg-accent-soft:rgba(42,102,196,.08);--rg-border:rgba(28,54,94,.12);--rg-border-strong:rgba(21,33,61,.16);--rg-tint:rgba(244,249,255,.65);--rg-radius-inner:0.5rem;color:var(--rg-text);display:flex;flex-direction:column;gap:1.75rem;width:100%}#registration-app .registration-section{display:flex;flex-direction:column;gap:.75rem}#registration-app .registration-section+.registration-section{border-top:1px solid var(--rg-border);padding-top:1.5rem}#registration-app .registration-section-header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}#registration-app .registration-section-titles{display:flex;flex:1 1 280px;flex-direction:column;gap:.15rem;min-width:0}#registration-app .registration-section-title{color:var(--rg-text);font-size:1.15rem;font-weight:600;letter-spacing:-.005em;margin:0}#registration-app .registration-section-subtitle{color:var(--rg-text-muted);font-size:.88rem;line-height:1.5;margin:0}#registration-app .registration-section-actions{align-items:center;display:flex;flex-wrap:wrap;gap:.4rem}#registration-app .registration-section-helper{align-items:center;color:var(--rg-text-muted);display:flex;flex-wrap:wrap;font-size:.85rem;gap:.25rem .5rem;line-height:1.4;margin-top:.15rem}#registration-app .registration-section-helper__label,#registration-app .registration-section-helper__sep{color:var(--rg-text-soft)}#registration-app .registration-section-helper__link{appearance:none;background:none;border:0;color:var(--rg-accent);cursor:pointer;font-size:.85rem;font-weight:500;line-height:1.4;padding:0}#registration-app .registration-section-helper__link:focus,#registration-app .registration-section-helper__link:hover{color:#1d4d99;outline:none;text-decoration:underline}#registration-app .registration-field{display:flex;flex-direction:column;gap:.3rem;min-width:0;width:100%}#registration-app .registration-field__label{color:var(--rg-text-muted);font-size:.82rem;font-weight:500;letter-spacing:0;margin:0;text-transform:none}#registration-app .registration-field .form-control,#registration-app .registration-field select.form-control{font-size:.92rem;height:auto;line-height:1.4;min-height:2.3rem;padding:.35rem .6rem;width:100%}#registration-app .registration-field__error{color:#c0392b;font-size:.78rem;line-height:1.35;margin:0}#registration-app .registration-field--compact{gap:.2rem}#registration-app .registration-field--compact .registration-field__label{color:var(--rg-text-soft);font-size:.76rem;font-weight:500}#registration-app .registration-field--compact .form-control,#registration-app .registration-field--compact select.form-control{font-size:.85rem;min-height:2rem;padding:.25rem .5rem}#registration-app .registration-field-row{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}#registration-app .registration-list{display:flex;flex-direction:column;gap:.5rem}#registration-app .registration-subform{background:#fff;border:1px solid var(--rg-border);border-radius:var(--rg-radius-inner);overflow:hidden;transition:border-color .15s ease}#registration-app .registration-subform:hover{border-color:var(--rg-border-strong)}#registration-app .registration-subform__header{align-items:center;background:var(--rg-tint);border-bottom:1px solid var(--rg-border);color:var(--rg-text);cursor:pointer;display:grid;gap:.65rem;grid-template-columns:auto minmax(0,1fr) auto;padding:.55rem .85rem;transition:background-color .12s ease;user-select:none;width:100%}#registration-app .registration-subform__header:hover{background:rgba(232,243,255,.85)}#registration-app .registration-subform__header:focus{box-shadow:inset 0 0 0 2px rgba(42,102,196,.35);outline:none}#registration-app .registration-subform__chevron{align-items:center;color:var(--rg-text-soft);display:inline-flex;font-size:.75rem;justify-content:center;transition:transform .15s ease;width:1.4rem}#registration-app .registration-subform.is-collapsed .registration-subform__chevron{transform:rotate(-90deg)}#registration-app .registration-subform.is-collapsed .registration-subform__body{display:none}#registration-app .registration-subform.is-collapsed .registration-subform__header{border-bottom-color:transparent}#registration-app .registration-subform__summary{align-items:baseline;display:flex;flex-wrap:nowrap;font-size:.92rem;gap:.5rem;line-height:1.4;min-width:0;overflow:hidden}#registration-app .registration-subform__name{color:var(--rg-text);flex:0 1 auto;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#registration-app .registration-subform__name--placeholder{color:var(--rg-text-soft);font-weight:500}#registration-app .registration-subform__detail{color:var(--rg-text-muted);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#registration-app .registration-subform__detail:before{color:var(--rg-text-soft);content:"·";margin-right:.5rem}#registration-app .registration-subform__detail:empty:before{content:"";margin-right:0}#registration-app .registration-subform__actions{align-items:center;display:flex;flex-shrink:0;gap:.4rem}#registration-app .registration-subform__alert{margin:.55rem .85rem 0}#registration-app .registration-subform__body{padding:.95rem 1rem}#registration-app .registration-team-grid{align-items:start;display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}#registration-app .registration-team-grid>*{min-width:0}@media(max-width:991.98px){#registration-app .registration-team-grid{grid-template-columns:1fr 1fr}}@media(max-width:575.98px){#registration-app .registration-team-grid{grid-template-columns:1fr}}#registration-app .registration-team-panel{display:flex;flex-direction:column;gap:.6rem}#registration-app .registration-team-panel__title{color:var(--rg-text);font-size:.9rem;font-weight:600;margin:0 0 .1rem}#registration-app .registration-team-panel__secondary{border-top:1px dashed var(--rg-border);display:flex;flex-direction:column;gap:.45rem;margin-top:.05rem;padding-top:.45rem}#registration-app .registration-judge-grid{display:grid;gap:.7rem .85rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}#registration-app .registration-judge-grid>*{min-width:0}#registration-app .registration-judge-grid__item--wide{grid-column:1/-1}#registration-app .registration-judge-grid__item--exp{max-width:180px}#registration-app .judge-availability__header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem .75rem;justify-content:space-between;margin-bottom:.4rem}#registration-app .judge-availability__bulk{align-items:center;display:flex;gap:.4rem}#registration-app .judge-availability__bulk-btn{appearance:none;background:none;border:0;color:var(--rg-accent);cursor:pointer;font-size:.78rem;font-weight:500;line-height:1;padding:0}#registration-app .judge-availability__bulk-btn:focus,#registration-app .judge-availability__bulk-btn:hover{color:#1d4d99;outline:none;text-decoration:underline}#registration-app .judge-availability__bulk-divider{color:rgba(28,45,70,.3);font-size:.78rem}#registration-app .judge-availability{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem}#registration-app .judge-availability .custom-control{padding-left:1.5rem}#registration-app .judge-availability .custom-control-label{color:var(--rg-text);font-size:.88rem}#registration-app .judge-schools-select{min-height:2.3rem;width:100%}#registration-app .select2-container--bootstrap4{width:100%!important}#registration-app .select2-container--bootstrap4 .select2-selection--multiple{border-color:#ced4da;border-radius:.3rem;min-height:2.3rem;padding:.2rem .4rem}#registration-app .select2-container--bootstrap4 .select2-selection--multiple .select2-selection__rendered{display:flex;flex-wrap:wrap;gap:.25rem;padding:0}#registration-app .select2-container--bootstrap4 .select2-selection--multiple .select2-selection__choice{background-color:rgba(42,102,196,.12);border:1px solid rgba(42,102,196,.25);border-radius:.3rem;color:var(--rg-text);margin-top:0}#registration-app .registration-submit-bar{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;padding-top:.5rem}#registration-app .registration-submit-bar .btn-primary{font-size:.95rem;font-weight:600;padding:.5rem 1.4rem}#registration-app .registration-submit-bar__meta{color:var(--rg-text-muted);font-size:.88rem}#registration-app .registration-lock-alert{background:rgba(255,243,205,.6);border:1px solid rgba(184,134,11,.35);border-radius:var(--rg-radius-inner);color:#6b4d00;margin-bottom:0}#registration-app .registration-followup{background:#fff;border:1px solid var(--rg-border);border-radius:.6rem;margin-top:1.25rem;padding:1.1rem 1.25rem 1.25rem}#registration-app .registration-followup__head{margin-bottom:.85rem}#registration-app .registration-followup__title{color:#1f2f4a;font-size:1.1rem;font-weight:700;margin:0}#registration-app .registration-followup__subtitle{color:rgba(28,45,70,.75);font-size:.88rem;margin:.25rem 0 0}#registration-app .registration-followup__list{display:flex;flex-direction:column;gap:.5rem}#registration-app .registration-followup__link{align-items:center;background:#fff;border:1px solid rgba(28,54,94,.14);border-left:3px solid #2a66c4;border-radius:.5rem;color:inherit;display:flex;gap:.85rem;padding:.75rem .95rem;text-decoration:none;transition:transform .14s ease,box-shadow .14s ease,border-color .14s ease}#registration-app .registration-followup__link:focus-visible,#registration-app .registration-followup__link:hover{border-color:rgba(28,54,94,.22);box-shadow:0 14px 30px -22px rgba(16,34,63,.32);text-decoration:none;transform:translateY(-1px)}#registration-app .registration-followup__link:focus-visible{outline:3px solid #2a66c4;outline-offset:2px}#registration-app .registration-followup__link-body{display:flex;flex:1;flex-direction:column;gap:.1rem;min-width:0}#registration-app .registration-followup__link-title{color:#1f2f4a;font-size:.95rem;font-weight:600;line-height:1.3}#registration-app .registration-followup__link-subtitle{color:rgba(28,45,70,.7);font-size:.82rem;line-height:1.35}#registration-app .registration-followup__link-chevron{color:rgba(24,44,72,.45);flex-shrink:0}#registration-app .registration-followup__link:focus-visible .registration-followup__link-chevron,#registration-app .registration-followup__link:hover .registration-followup__link-chevron{color:#2a66c4}#registration-app .registration-summary{border-top:1px solid var(--rg-border);display:flex;flex-direction:column;gap:.95rem;padding-top:1.5rem}#registration-app .registration-summary__head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.75rem 1rem;justify-content:space-between}#registration-app .registration-summary__head>div:first-child{display:flex;flex-direction:column;gap:.2rem;min-width:0}#registration-app .registration-summary__edit{align-self:flex-start;flex-shrink:0;font-weight:600}#registration-app .registration-summary__kicker{color:var(--rg-text-muted);font-size:.85rem;margin:0}#registration-app .registration-summary__title{color:var(--rg-text);font-size:1.3rem;font-weight:700;margin:0}#registration-app .registration-summary-meta{background:var(--rg-accent-soft);border:1px solid var(--rg-border);border-radius:var(--rg-radius-inner);display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));padding:.85rem 1rem}#registration-app .registration-summary-meta__item{display:flex;flex-direction:column;gap:.15rem}#registration-app .registration-summary-meta__label{color:var(--rg-text-muted);font-size:.78rem}#registration-app .registration-summary-meta__value{color:var(--rg-text);font-size:.95rem;font-weight:600;word-break:break-word}#registration-app .registration-summary-section{display:flex;flex-direction:column;gap:.5rem}#registration-app .registration-summary-section__title{color:var(--rg-text);font-size:1rem;font-weight:600;margin:0}#registration-app .registration-summary-list{display:grid;gap:.55rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}#registration-app .registration-summary-list__item{background:#fff;border:1px solid var(--rg-border);border-radius:var(--rg-radius-inner);padding:.65rem .85rem}#registration-app .registration-summary-list__name{color:var(--rg-text);font-size:.95rem;font-weight:600;margin:0}#registration-app .registration-summary-list__sub{color:var(--rg-text-muted);font-size:.82rem;margin:.1rem 0 0}#registration-app .registration-summary-list ul{color:var(--rg-text);font-size:.85rem;margin:.35rem 0 0;padding-left:1rem}.registration-modal .modal-content{border:1px solid rgba(21,33,61,.12);border-radius:.75rem;box-shadow:0 24px 60px -28px rgba(12,31,58,.4)}.registration-modal .modal-header{border-bottom:1px solid rgba(28,54,94,.1);padding:1rem 1.25rem}.registration-modal .modal-title{color:#1f2f4a;font-size:1.05rem;font-weight:600}.registration-modal .modal-body{display:flex;flex-direction:column;gap:.85rem;padding:1rem 1.25rem}.registration-modal .modal-footer{border-top:1px solid rgba(28,54,94,.1);gap:.5rem;padding:.75rem 1.25rem}.registration-modal .modal-footer>*{margin:0}.registration-modal .registration-modal__lead{color:rgba(28,45,70,.7);font-size:.88rem;line-height:1.5;margin:0}.registration-modal .registration-field{display:flex;flex-direction:column;gap:.3rem}.registration-modal .registration-field__label{color:rgba(28,45,70,.7);font-size:.82rem;font-weight:500;margin:0}.registration-modal .form-control{font-size:.95rem;min-height:2.4rem}@media(max-width:575.98px){.registration-modal .modal-dialog{margin:.75rem}.registration-modal .modal-body,.registration-modal .modal-footer,.registration-modal .modal-header{padding:.85rem 1rem}.registration-modal .modal-footer{align-items:stretch;flex-direction:column-reverse;gap:.5rem}.registration-modal .modal-footer .btn{font-size:.95rem;margin:0;padding:.55rem 1rem;width:100%}.registration-modal .close{font-size:1.5rem;padding:.5rem .75rem}}.registration-lookup{margin:0 auto;max-width:520px;width:100%}.registration-lookup .registration-lookup__card{background:#fff;border:1px solid rgba(21,33,61,.12);border-radius:.75rem;box-shadow:0 14px 40px -26px rgba(12,31,58,.32);display:flex;flex-direction:column;gap:1rem;padding:1.6rem 1.75rem}@media(max-width:575.98px){.registration-lookup .registration-lookup__card{padding:1.25rem}}.registration-lookup .registration-lookup__title{color:#1f2f4a;font-size:1.4rem;font-weight:600;line-height:1.25;margin:0}.registration-lookup .registration-lookup__lead{color:rgba(28,45,70,.78);font-size:.95rem;line-height:1.55;margin:0}.registration-lookup .registration-lookup__field{display:flex;flex-direction:column;gap:.35rem}.registration-lookup .registration-lookup__label{color:rgba(28,45,70,.7);font-size:.82rem;font-weight:500;margin:0}.registration-lookup .registration-lookup__input{font-size:1rem;height:2.6rem}.registration-lookup .registration-lookup__btn{align-self:flex-start;font-weight:600;padding:.55rem 1.4rem}.registration-admin{display:flex;flex-direction:column;gap:1.25rem;width:100%}.registration-admin .registration-admin__header{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between}.registration-admin .registration-admin__titles h5{color:#1f2f4a;font-size:1.2rem;font-weight:600;margin:0}.registration-admin .registration-admin__titles p{color:rgba(28,45,70,.7);font-size:.9rem;margin:.25rem 0 0}.registration-admin .registration-admin__panel,.registration-admin .registration-admin__settings{background:#fff;border:1px solid rgba(21,33,61,.12);border-radius:.75rem;box-shadow:0 14px 40px -26px rgba(12,31,58,.32);padding:1.1rem 1.3rem}.registration-admin .registration-admin__settings-row{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem 2rem}.registration-admin .registration-admin__settings-row .custom-switch{margin-bottom:0}.registration-admin .registration-admin__settings-row .btn{margin-left:auto}.registration-admin .registration-admin__hint{color:rgba(28,45,70,.7);flex-basis:100%;font-size:.78rem;line-height:1.35;margin:0}.registration-admin .registration-admin__panel-title{color:#1f2f4a;font-size:1rem;font-weight:600;margin:0 0 .85rem}.registration-admin .registration-admin__panel-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:.5rem 1rem;justify-content:space-between}.registration-admin .registration-admin__divider{border:0;border-top:1px solid rgba(28,54,94,.12);margin:1rem 0}.registration-admin .registration-admin__table-wrap{overflow-x:auto}.registration-admin .registration-admin__inline-list{color:rgba(28,45,70,.85);font-size:.82rem;margin:.35rem 0 0;padding-left:1rem}.registration-admin .registration-admin__inline-list li+li{margin-top:.15rem}.registration-admin .registration-admin__code{background:rgba(42,102,196,.08);border:1px solid rgba(42,102,196,.18);border-radius:.3rem;color:#1c3e7a;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:.82rem;padding:.1rem .4rem}.registration-admin .registration-admin__table{background:#fff;margin:0;width:100%}.registration-admin .registration-admin__table th{background:rgba(244,249,255,.7);border-bottom:1px solid rgba(28,54,94,.12);color:rgba(28,45,70,.75);font-size:.82rem;font-weight:600}.registration-admin .registration-admin__table td{font-size:.88rem;vertical-align:top}.registration-admin .registration-admin__table .school-name{color:#1f2f4a;font-weight:600}.registration-admin .registration-admin__table .school-email{color:rgba(28,45,70,.7);font-size:.82rem}@media(max-width:767.98px){.registration-admin{gap:1rem}.registration-admin .registration-admin__panel,.registration-admin .registration-admin__settings{padding:.9rem 1rem}.registration-admin .registration-admin__panel-head{align-items:stretch;flex-direction:column;gap:.6rem}.registration-admin .registration-admin__form-actions .btn,.registration-admin .registration-admin__panel-head .btn{font-size:.95rem;padding:.5rem 1rem;width:100%}.registration-admin .registration-admin__settings-row{gap:.85rem 1.5rem}.registration-admin .registration-admin__settings-row .btn{margin-left:0;width:100%}.registration-admin .registration-admin__table td,.registration-admin .registration-admin__table th{font-size:.82rem;padding:.45rem .5rem}}.tournament-link-form{margin-top:.85rem}.tournament-link-form__row{align-items:center;display:grid;gap:.5rem;grid-template-columns:minmax(140px,1fr) minmax(180px,1.5fr) minmax(160px,1.5fr) 80px auto auto}@media(max-width:991.98px){.tournament-link-form__row{grid-template-columns:1fr 1fr}}@media(max-width:575.98px){.tournament-link-form__row{grid-template-columns:1fr}}.tournament-link-form__order{text-align:center;width:100%}.tournament-link-form__active{align-items:center;color:rgba(28,45,70,.78);display:inline-flex;font-size:.85rem;gap:.35rem;margin:0;white-space:nowrap}.tournament-link-table td{vertical-align:middle!important}.tournament-link-table input[type=number],.tournament-link-table input[type=text],.tournament-link-table input[type=url]{min-width:0}.tournament-link-actions{white-space:nowrap}.tournament-link-actions .btn+form{margin-left:.25rem}.tournament-link-empty{background:rgba(244,249,255,.7);border:1px dashed rgba(28,54,94,.18);color:rgba(28,45,70,.7);font-size:.85rem;margin-bottom:.85rem}.registration-page-title{color:#1f2f4a;display:inline-block;font-weight:600;letter-spacing:-.005em}@media(max-width:767.98px){.registration-page-title{font-size:1.7rem;line-height:1.2}#registration-app{gap:1.25rem}#registration-app .registration-section-header{align-items:stretch;flex-direction:column;gap:.6rem}#registration-app .registration-section-titles{flex:1 1 auto}#registration-app .registration-section-actions{flex-direction:column;gap:.5rem;width:100%}#registration-app .registration-section-action-btn,#registration-app .registration-section-actions .btn,#registration-app .registration-submit-bar .btn{border-radius:.35rem;font-size:.95rem;line-height:1.4;padding:.55rem 1rem;width:100%}#registration-app .registration-submit-bar{align-items:stretch;flex-direction:column;gap:.65rem}#registration-app .registration-submit-bar__meta{text-align:center}#registration-app .registration-judge-grid__item--exp{max-width:none}}@media(max-width:575.98px){#registration-app .registration-subform__header{gap:.5rem;padding:.5rem .65rem}#registration-app .registration-subform__summary{font-size:.88rem}#registration-app .registration-subform__detail:before{margin-right:.35rem}#registration-app .registration-subform__actions .btn{font-size:.82rem;padding:.3rem .7rem;width:auto}}