/* Apple-inspired response and materials, within BMRL's existing visual identity. */
:root{--motion-fast:120ms;--motion-panel:240ms;--motion-out:cubic-bezier(.2,.75,.25,1);--control-fill:#ffffff0b;--control-line:#ffffff30;--control-text:#edf2fa}
body{font-family:system-ui,'Segoe UI',sans-serif;font-optical-sizing:auto}
button,a.primary,#login{touch-action:manipulation;font-weight:600;letter-spacing:.005em;border-radius:11px;transition:background-color var(--motion-fast),border-color var(--motion-fast),box-shadow var(--motion-fast),color var(--motion-fast);transform:none;scale:var(--press-scale,1);transform-origin:center}
button:where(:not(.primary):not(.danger):not(.person-link):not(.mobile-menu):not(.notification-trigger):not(.language-switch):not(#sidebar-scrim):not(#sidebar-close):not([data-section])){background-color:var(--control-fill);border-color:var(--control-line);color:var(--control-text);box-shadow:inset 0 1px 0 #ffffff0a,0 2px 5px #0002}
.primary{background:linear-gradient(180deg,#1676ff,#0759df);border:1px solid #438fff;color:#fff;box-shadow:inset 0 1px 0 #ffffff29,0 3px 10px #0003;font-weight:650}
.primary:hover{background:linear-gradient(180deg,#2580ff,#1163e7);box-shadow:inset 0 1px 0 #ffffff30,0 4px 14px #0004}
.danger{background:#ff738d0e;border-color:#dd71866b;color:#ffb1bf;box-shadow:inset 0 1px 0 #ffffff08}
button:disabled,a[aria-disabled=true]{opacity:.48;cursor:not-allowed;box-shadow:none;scale:1!important}
button[data-press],a.primary[data-press],#login[data-press]{background-color:#ffffff19;border-color:#8eacd5;box-shadow:inset 0 1px 4px #0005;transition-duration:0ms}
.primary[data-press]{background:linear-gradient(180deg,#095cdb,#054dbd);border-color:#8ab7ff;color:#fff}
.danger[data-press]{background:#ff738d25;border-color:#ffa5b6}
button:active,a.primary:active,#login:active{transform:none;scale:.965}
.motion-ready button:active,.motion-ready a.primary:active,.motion-ready #login:active{scale:var(--press-scale,1)}
:is(button,a,input,textarea,select):focus-visible{outline:2px solid #a2c8ff;outline-offset:4px}
input[type=file]::file-selector-button{font:inherit;font-weight:600;min-height:40px;margin-right:12px;padding:8px 14px;border:1px solid var(--control-line);border-radius:9px;background:#263347;color:var(--control-text);cursor:pointer;transition:background-color var(--motion-fast)}
input[type=file]::file-selector-button:hover{background:#34465f}input[type=file]::file-selector-button:active{background:#1b293d}
.public-forms button{border-radius:16px;box-shadow:inset 0 1px 0 #ffffff14,0 8px 24px #0003;background:linear-gradient(135deg,#20283388,#0b0f15d9);backdrop-filter:blur(16px) saturate(125%)}
.public-forms small{font-weight:400}.public-forms strong{font-weight:650}
.public-forms button:hover{transform:none;border-color:#699ee2;box-shadow:inset 0 1px 0 #ffffff20,0 8px 24px #0004}
.public-forms button[data-press]{border-color:#a3c5f2;background:linear-gradient(135deg,#2c3f5888,#0b0f15ed);box-shadow:inset 0 1px 6px #0005}
.public-forms .card-arrow{transition:transform 180ms var(--motion-out)}
.public-forms button:hover .card-arrow{transform:translateX(3px)}
.section-tabs button{border-radius:11px!important;transition:background-color var(--motion-fast),color var(--motion-fast),box-shadow var(--motion-fast)}
.section-tabs button[aria-pressed=true]{background:linear-gradient(180deg,#146cf0,#0856d8)!important;box-shadow:inset 0 1px 0 #ffffff26,0 3px 12px #0003}
.section-tabs button[data-press]{background:#243144!important;color:#fff!important}
.section-tabs button[aria-pressed=true][data-press]{background:#064cbd!important}
.dialog-head button{min-height:44px;min-width:44px;width:44px;border-radius:50%;font-size:23px;line-height:1}
.dialog-head{background:#151c27ed!important;backdrop-filter:blur(20px)}
dialog{animation:none;background:linear-gradient(150deg,#202938f5,#10161ffb);border:1px solid #ffffff30;border-radius:22px;box-shadow:inset 0 1px 0 #ffffff0b,0 28px 90px #0009;opacity:0;transform:translateY(10px) scale(.985);transition:opacity 160ms ease-out,transform var(--motion-panel) var(--motion-out),display var(--motion-panel) allow-discrete,overlay var(--motion-panel) allow-discrete}
dialog[open]{opacity:1;transform:translateY(0) scale(1)}
dialog::backdrop{background:#03060cbf;backdrop-filter:blur(7px);opacity:0;transition:opacity 160ms ease-out,display var(--motion-panel) allow-discrete,overlay var(--motion-panel) allow-discrete}
dialog[open]::backdrop{opacity:1}
@starting-style{dialog[open]{opacity:0;transform:translateY(10px) scale(.985)}dialog[open]::backdrop{opacity:0}}
.section-reveal{animation:bmrl-content-in 220ms var(--motion-out)}
@keyframes bmrl-content-in{from{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:none}}
.notice{animation:none;opacity:1;transform:none;transition:opacity 160ms ease-out,translate 180ms var(--motion-out),display 180ms allow-discrete;translate:0 0}
.notice[hidden]{opacity:0;translate:0 6px}
@starting-style{.notice{opacity:0;translate:0 6px}}
.send-slider{border-radius:14px;background:linear-gradient(110deg,#12325a,#111b29);border-color:#6387b4}
.send-slider .paper-plane{transition:none;rotate:0deg!important}
.send-slider input[type=range]::-webkit-slider-thumb{background:#1469e3;border-color:#91baff;border-radius:13px;box-shadow:inset 0 1px 0 #ffffff36,0 2px 6px #0004}
.send-slider input[type=range]::-moz-range-thumb{background:#1469e3;border-color:#91baff;border-radius:13px;box-shadow:inset 0 1px 0 #ffffff36,0 2px 6px #0004}
input[type=range]{touch-action:pan-y}
.success-check{animation:bmrl-content-in 180ms ease-out}.success-check .icon{animation:check-draw 240ms ease-out}
.intro{animation:none;display:none}
.site-loader{pointer-events:none;max-width:calc(100vw - 32px);border-radius:14px;border:1px solid #ffffff30;background:#141c29f0;box-shadow:0 8px 30px #0005}
.site-loader::backdrop{background:none;pointer-events:none}
.race-light{animation:bmrl-track-glow 3s ease-in-out infinite;opacity:.08;translate:0 0}.race-light.second{animation:none;opacity:.05}
@keyframes bmrl-track-glow{0%,100%{opacity:.04}50%{opacity:.13}}
body.motion-paused .race-light{animation:none!important;opacity:.05}
.chart-bar{animation:bmrl-content-in 220ms var(--motion-out);transform-box:fill-box}
.skeleton-block{position:relative;overflow:hidden;background:#18212d;animation:none}
.skeleton-block:after{content:'';position:absolute;inset:0;background:linear-gradient(100deg,transparent,#ffffff08,transparent);transform:translateX(-100%);animation:bmrl-shimmer 1.4s linear infinite}
@keyframes bmrl-shimmer{to{transform:translateX(100%)}}
body.motion-offscreen .skeleton-block:after{animation-play-state:paused}
@media(hover:hover) and (pointer:fine){button:not(:disabled):not(.primary):not(.danger):hover{background-color:#ffffff12}}
@media(hover:none){.public-forms button:hover .card-arrow{transform:none}.public-forms button:hover{border-color:#ffffff35;box-shadow:inset 0 1px 0 #ffffff14,0 8px 24px #0003}}
@media(max-width:700px){
 button,a.primary{min-height:44px}td button,.selection-toolbar button,#leaderboard button,.staff-member button,.work-recent .panel-heading>button{min-height:44px}
 #admin>.section-tabs{transform:translateX(var(--drawer-x,-100%));transition:none;visibility:hidden}
 body.menu-open #admin>.section-tabs,body.drawer-moving #admin>.section-tabs{transform:translateX(var(--drawer-x,0%));visibility:visible}
 body.menu-open:after{display:none}body.drawer-moving #sidebar-scrim{display:block;position:fixed;inset:0 0 0 248px;width:auto;height:100svh;border:0;border-radius:0;background:#0009;z-index:9}
 body.admin-mode header{background:#101620e8;backdrop-filter:blur(20px) saturate(125%)}
 dialog{border-radius:20px;padding-bottom:max(22px,env(safe-area-inset-bottom))}
 .section-tabs{padding-bottom:max(18px,env(safe-area-inset-bottom))!important}
}
@media(prefers-reduced-motion:reduce){
 button,a.primary,#login{scale:1!important;transform:none!important}
 dialog,dialog[open]{transform:none!important;transition:opacity 100ms ease-out,display 100ms allow-discrete,overlay 100ms allow-discrete!important}
 dialog::backdrop{transition:opacity 100ms ease-out,display 100ms allow-discrete,overlay 100ms allow-discrete!important}
 .notice{translate:none!important}.skeleton-block:after{animation:none!important;transform:none}.card-arrow{transform:none!important}
 @starting-style{dialog[open]{transform:none!important}}
}
@media(prefers-reduced-transparency:reduce){
 dialog,.dialog-head,body.admin-mode header,.section-tabs,.public-forms button,.site-loader,.team-panel{background:#141b25!important;backdrop-filter:none!important}
 dialog::backdrop,#sidebar-scrim{backdrop-filter:none!important;background:#03060ce8!important}
}
@media(prefers-contrast:more){
 button,a.primary,#login,.public-forms button,dialog{border-color:#acbed4!important;color:#fff}
 dialog,.dialog-head,.section-tabs,body.admin-mode header,.public-forms button{background:#0b1018!important;backdrop-filter:none!important}
 .primary{background:#064bb7!important}.danger{background:#4c1423!important;color:#ffd4dd}
}
