/* Release 104: school entry, forms and compact team editing. Loaded on school/public pages only. */
.u104-entry-switch{display:flex;gap:8px;width:min(100%,680px);margin:0 auto 20px;padding:7px;background:var(--cloud-surface,#edf0f5);border:1px solid var(--cloud-line,#d6dbe4);border-radius:15px;box-shadow:inset 3px 3px 7px #aeb8c544,inset -3px -3px 7px #fff}
.u104-entry-switch button{flex:1;min-width:0;min-height:46px;padding:10px 14px;border:1px solid transparent;border-radius:10px;font:inherit;font-size:13px;font-weight:650;color:var(--cloud-ink,#263143);background:var(--cloud-surface,#edf0f5);box-shadow:3px 3px 7px #aeb8c550,-3px -3px 7px #fff;cursor:pointer}
.u104-entry-switch button.is-selected{color:#fff;background:#261147;border-color:#261147;box-shadow:inset 3px 3px 6px #150625,inset -2px -2px 5px #624481}.u104-entry-switch button:focus-visible{outline:2px solid #b96b32;outline-offset:3px}
.simple-entry-card[data-entry104=signin]{background:#e7e0ef!important;border:1px solid #b6a4cd!important}.simple-entry-card[data-entry104=registration]{background:#f4ede5!important;border:1px solid #d9bda2!important}.simple-entry-card:active{box-shadow:inset 4px 4px 9px #aeb8c555,inset -4px -4px 9px #fff!important}
.u104-password{position:relative;display:block;min-width:0}.u104-password input{width:100%;box-sizing:border-box;padding-right:64px!important}.u104-password .u104-password-toggle{position:absolute;right:5px;top:50%;transform:translateY(-50%);border:0;box-shadow:none;background:transparent;color:#5a397e;min-width:48px;min-height:36px;padding:6px;font-size:12px;font-weight:700;cursor:pointer}
.u104-check-backdrop{position:fixed;inset:0;z-index:10050;background:#14112466;display:grid;place-items:center;padding:20px}.u104-check-dialog{width:min(100%,390px);box-sizing:border-box;padding:25px;text-align:center;border-radius:18px;background:var(--cloud-surface,#edf0f5);outline:none}.u104-check-dialog h2{font-size:20px;margin:12px 0 8px}.u104-check-dialog p{font-size:14px;line-height:1.5;margin:0}.u104-check-dialog .admin-loader{display:inline-block}
.u104-download{display:inline-flex;flex-direction:column;align-items:flex-start;gap:5px;max-width:100%}.u104-download .form-error{font-size:12px;line-height:1.4;max-width:360px}.u104-download button{white-space:normal}
.u104-team-backdrop{padding:16px!important}.team-editor.team-editor-dialog.u104-team-editor{box-sizing:border-box;width:min(700px,100%)!important;max-width:700px!important;max-height:calc(100dvh - 32px)!important;overflow:auto;padding:18px!important;border-radius:16px!important;display:flex;flex-direction:column;gap:14px!important}
.u104-team-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.u104-team-heading h2{font-size:20px!important;line-height:1.25!important;margin:0!important}.u104-team-heading p{font-size:12px!important;line-height:1.4!important;margin:5px 0 0!important}.u104-team-close{flex:none;font-size:22px;line-height:1;min-width:36px;min-height:36px;border:0;border-radius:9px;background:#ddd7e6;color:#261147;cursor:pointer}
.u104-team-editor label{display:flex!important;flex-direction:column;gap:5px!important;font-size:12px!important;line-height:1.35!important;margin:0!important;min-width:0}.u104-team-editor :is(input,select){width:100%;box-sizing:border-box;min-width:0;min-height:38px;padding:8px 10px!important;font-size:14px!important;line-height:1.35!important;border-radius:8px!important}
.u104-team-problems{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.u104-students{display:grid;gap:8px}.u104-student-heading{display:grid;grid-template-columns:minmax(0,1fr) 100px 80px;gap:8px;font-size:12px;font-weight:600}.u104-student-row{display:grid;grid-template-columns:18px minmax(0,1fr) 100px 80px;gap:8px;align-items:center;min-width:0}.u104-student-number{font-size:12px;color:#6c6079}.u104-team-editor .u104-clear-student{min-width:0;min-height:38px;padding:5px!important;font-size:11px!important;line-height:1.25!important;background:transparent!important;box-shadow:none!important}.u104-team-actions{display:flex;justify-content:flex-end;gap:9px;margin:0!important;padding-top:4px}.u104-team-actions button{min-height:38px!important;padding:8px 14px!important;font-size:12px!important}.u104-team-editor .form-error{margin:0;font-size:12px}
@media(max-width:700px){
 :is(.public-entry-shell,.school-dashboard-shell,.team-editor-dialog,.pay87-dialog,.ir88-modal,.contact82-dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select,textarea){font-size:14px!important;line-height:1.4!important;letter-spacing:normal!important}
 :is(.public-entry-shell,.school-dashboard-shell,.team-editor-dialog,.pay87-dialog,.ir88-modal,.contact82-dialog) :is(input,textarea)::placeholder{font-size:inherit!important;letter-spacing:normal!important}
 .public-entry-shell .auth-form :is(input,select,textarea){padding:10px 12px;min-height:42px}.public-entry-shell .u104-password input{padding-right:64px!important}.u104-entry-switch{box-sizing:border-box;margin-bottom:16px;gap:6px;padding:6px}.u104-entry-switch button{font-size:12px;padding:9px 7px;line-height:1.35}
 .team-editor.team-editor-dialog.u104-team-editor{padding:14px!important;gap:12px!important}.u104-team-heading h2{font-size:18px!important}.u104-team-problems{grid-template-columns:1fr;gap:9px}.u104-student-row{grid-template-columns:14px minmax(0,1fr) 76px 55px;gap:5px}.u104-student-heading{grid-template-columns:minmax(0,1fr) 76px 55px;gap:5px}.u104-student-row :is(input,select){padding:8px 5px!important}.u104-student-number{font-size:11px}.u104-team-editor .u104-clear-student{font-size:10px!important}
}
@media(prefers-reduced-motion:reduce){.u104-check-dialog .admin-loader{animation:none!important}}

.u104-registration-actions,.u104-regional-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.public-entry-main>.u104-entry-switch{grid-column:1/-1}
