/*
Theme Name: SABeemer Tunnel Run 2026
Theme URI: https://beemers.co.za/
Author: webXtreme
Author URI: https://webxtreme.co.za/
Description: SABeemer Tunnel Run event app and driver portal. Theme by webXtreme.
Version: 1.24.0
Requires at least: 6.2
Requires PHP: 8.0
Text Domain: sabeemer-tunnel-run
*/



:root{--background:#0e141b;--foreground:#fff;--card:#1b2630;--card-foreground:#fff;--popover:#1b2630;--popover-foreground:#fff;--primary:#168af2;--primary-foreground:#fff;--secondary:#243241;--secondary-foreground:#fff;--muted:#243241;--muted-foreground:#c1cbd6;--accent:#168af2;--accent-foreground:#fff;--destructive:#e44;--border:#394b5a;--input:#394b5a;--ring:#168af2;--radius:.8rem}

*{box-sizing:border-box}html{background:#e9eaeb}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#f6f8fb}button,input{font:inherit}button{cursor:pointer}.site-shell{min-height:100vh;background:#e9eaeb;padding:22px}.app-frame{position:relative;margin:auto;max-width:435px;min-height:calc(100vh - 44px);background:#0e141b;box-shadow:0 16px 60px #1118;overflow:hidden;border-radius:27px;padding-bottom:76px}.masthead{position:relative;height:193px;background:linear-gradient(180deg,#101a22ad 0%,#10192222 59%,#0e141b 100%),var(--main-photo) center 35%/cover}.flag-ribbon{position:absolute;left:0;top:0;width:95px;height:110px;opacity:.85;background:linear-gradient(135deg,transparent 19%,#dc2d2f 20% 34%,#fff 35% 39%,#11774d 40% 56%,#f6c43d 57% 61%,#0d1016 62% 75%,transparent 76%);clip-path:polygon(0 0,100% 0,0 100%)}.head-row{display:flex;align-items:flex-start;justify-content:space-between;padding:25px 19px 0;position:relative}.icon-button{display:grid;place-items:center;color:#fff;background:none;border:0;width:35px;height:35px;z-index:2}.icon-button svg{width:26px;height:26px}.brand{border:0;background:none;color:#fff;text-align:center;line-height:.87;font-size:clamp(42px,10vw,58px);font-weight:800;letter-spacing:-.07em;font-style:italic;white-space:nowrap;text-shadow:0 2px 8px #0009}.brand-beemer{color:#3a99f7}.brand small{display:block;font-size:21px;letter-spacing:-.03em;line-height:1.25;padding-left:55px;color:#fff}.brand small b{color:#308eed}.menu-panel{position:absolute;z-index:20;top:81px;left:16px;width:235px;background:#1a2530;border:1px solid #3b4c5c;border-radius:13px;padding:8px;box-shadow:0 20px 40px #000a}.menu-panel button{display:block;color:white;background:none;border:0;text-align:left;padding:13px;width:100%;border-radius:8px}.menu-panel button:hover{background:#27394a}.content{position:relative;margin-top:-26px;min-height:650px}.screen{padding:0 24px 26px}.screen h1{font-size:29px;line-height:1.08;margin:4px 0 14px;letter-spacing:-.04em}.screen h1 em{font-style:normal;color:#2c94fb}.date{display:flex;align-items:center;gap:9px;font-size:18px;font-weight:700;margin:0 0 18px}.number-card{border:1px solid #394855;background:linear-gradient(145deg,#222e39,#151d25);border-radius:13px;padding:16px;text-align:center;margin-bottom:12px}.number-card>span{display:block;color:#c1cad4;font-size:17px}.number-card strong{display:block;font-size:76px;line-height:1.05;border-bottom:2px solid #2d94f9;width:max-content;min-width:110px;margin:auto}.number-card p{display:flex;justify-content:center;align-items:center;gap:7px;color:#41db7d;font-size:16px;font-weight:700;margin:12px 0 2px}.schedule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:17px}.schedule-card{border:1px solid #34424e;background:linear-gradient(145deg,#202d39,#171f28);border-radius:12px;min-height:110px;padding:14px;display:flex;align-items:center;gap:9px}.schedule-card svg,.section-heading svg{color:#2997ff;flex:none}.schedule-card div{min-width:0}.schedule-card span{display:block;font-size:14px}.schedule-card strong{display:block;font-size:25px;line-height:1.25}.schedule-card small{display:block;color:#ccd3da;font-size:11px;line-height:1.25}.primary-action{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;background:linear-gradient(#2b9dfb,#0879e8);border:0;border-radius:12px;color:white;font-size:18px;font-weight:700;min-height:59px;padding:12px 16px;margin:0 0 11px;box-shadow:0 6px 18px #004c973b}.primary-action svg:last-child{margin-left:auto}.primary-action svg:first-child{margin-left:auto}.info-card{display:flex;gap:15px;align-items:flex-start;border:1px solid #354550;background:linear-gradient(125deg,#1d2833,#141d26);border-radius:12px;padding:13px 15px;margin:10px 0}.info-card>svg{flex:none;color:#b4c2d0}.info-card b,.info-card span{display:block}.info-card b{font-size:14px}.info-card span{font-size:13px;color:#c6d0d9;line-height:1.4;margin-top:3px}.partner-strip{margin:18px 0 0}.partner-strip>b{font-size:15px}.partner-strip>div{display:flex;margin-top:8px;justify-content:space-between;gap:5px}.partner-strip span,.partner-strip button{flex:1;text-align:center;color:white;background:none;border:0;border-right:1px solid #4b5965;font-size:11px;line-height:1.2;padding:4px}.partner-strip button{border-right:0}.bottom-nav{position:absolute;bottom:0;left:0;right:0;min-height:76px;background:#11161e;border-top:1px solid #2a343e;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.bottom-nav button{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:#adb7c3;background:none;border:0;font-size:12px;min-height:72px}.bottom-nav button.active{color:#2196ff}.segment-list{display:flex!important;width:100%;height:auto!important;background:#202a35!important;border:1px solid #3c4b58;border-radius:12px;padding:3px;margin-bottom:20px}.segment-button{flex:1!important;min-width:0!important;white-space:normal!important;min-height:41px!important;color:#e6edf4!important;font-size:12px!important;line-height:1.15!important;border-radius:10px!important}.segment-button[data-active],.segment-button[data-state=active]{background:linear-gradient(#279cfb,#087de9)!important;color:white!important}.car-hero{height:234px;background:linear-gradient(transparent 50%,#101820),var(--main-photo) center/cover;border:1px solid #47525d;border-radius:13px;position:relative;display:flex;align-items:flex-end;justify-content:space-between;padding:16px}.car-hero>button{position:absolute;right:12px;top:12px;border:0;border-radius:9px;padding:9px;background:#192b3b;color:white}.car-hero strong,.car-hero span{display:block;text-shadow:0 2px 5px #000}.car-hero strong{font-size:21px}.car-hero span{font-size:16px;color:#4aa7ff;font-weight:700}.details-card,.passport-card{border:1px solid #3b4b57;background:#1c2731;border-radius:13px;padding:14px;margin:10px 0}.details-card>div{display:grid;grid-template-columns:96px 1fr 18px;gap:8px;align-items:center;min-height:34px;font-size:13px}.details-card span{color:#c1ccd6}.details-card b{font-weight:600}.details-card svg{color:#9baab9}.passport-card h2{font-size:17px;margin:0 0 13px}.stamps{display:grid;grid-template-columns:1fr 1fr;gap:9px}.stamps>div{min-height:110px;border:1px dashed #667583;border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center}.stamps svg{color:#cbd5df}.stamps b{font-size:17px;margin:3px}.stamps small{font-size:12px;color:#ccd4dd}.stamps.tall{margin-top:25px}.stamps.tall>div{min-height:180px}.section-heading{display:flex;align-items:center;gap:12px!important;font-size:26px!important;margin:9px 0 8px!important}.section-heading svg{width:29px;height:29px}.muted{color:#bfcbd5;font-size:15px;line-height:1.5;margin:0 0 20px}.search-box{display:flex;align-items:center;gap:8px;border:1px solid #4b5c6b;background:#1b2630;padding:12px;border-radius:12px;color:#b8c6d5}.search-box input{border:0;outline:0;background:none;color:white;width:100%;font-size:13px}.empty-card{border:1px solid #364754;background:#1b2630;border-radius:13px;margin-top:18px;padding:40px 25px;text-align:center;color:#a9c1d5}.empty-card svg{color:#329dff}.empty-card h2{font-size:18px;color:white}.empty-card p{font-size:14px;line-height:1.5}.sponsor-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sponsor-card{border:1px solid #324251;border-radius:12px;background:#17212a;min-height:120px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:14px;font-weight:700;font-size:17px;line-height:1.25}.sponsor-card i{display:block;width:40px;height:2px;background:#2197fb;margin-top:15px}.thanks{display:flex;gap:14px;align-items:center;border:1px solid #285342;background:#12281f;border-radius:12px;padding:16px;margin-top:12px}.thanks>span{font-size:28px;color:#259cff}.thanks b,.thanks small{display:block}.thanks b{color:#2c9dfc}.thanks small{font-size:12px;color:#ced7d1;margin-top:3px}.eyebrow{color:#39a1ff;font-size:11px;font-weight:700;letter-spacing:.12em}.organiser-card{display:flex;align-items:center;gap:15px;text-align:left}.organiser-card>svg{color:#fff;width:35px;height:35px}.organiser-card strong{font-size:37px;border:0;margin:0;min-width:0;color:#2499ff}.organiser-card strong small{font-size:14px;color:#fff}.organiser-card>span{font-size:11px}.subheading{font-size:19px;margin:25px 0 13px}.timeline{border-bottom:1px solid #34424e}.timeline>div{display:flex;gap:15px;align-items:center;min-height:44px;font-size:14px}.timeline i{border:3px solid #329dff;width:17px;height:17px;border-radius:50%}.timeline time{color:#cdd8e1}.tool-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.tool-grid button{background:#1d2934;border:1px solid #354653;border-radius:12px;min-height:105px;color:white;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;font-size:13px;padding:8px}.tool-grid svg{color:#2999fb}.panel-spaced{padding-top:15px}.toast{position:fixed;z-index:50;bottom:95px;left:50%;transform:translateX(-50%);width:min(390px,calc(100vw - 32px));border:1px solid #416079;border-radius:12px;background:#21303d;color:white;padding:14px;display:flex;gap:10px;align-items:flex-start;box-shadow:0 12px 30px #0008;font-size:14px}.toast button{background:none;border:0;color:white;margin-left:auto}.modal-backdrop{position:fixed;z-index:60;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;padding:15px}.edit-modal{background:#1b2732;border:1px solid #526374;border-radius:18px;padding:20px;max-height:95vh;overflow:auto;width:min(410px,100%)}.edit-modal header{display:flex;justify-content:space-between;align-items:center}.edit-modal h2{margin:0}.edit-modal header button{border:0;background:none;color:white}.edit-modal p{color:#bfcbd5;font-size:13px;line-height:1.4}.edit-modal label{display:block;font-size:13px;margin:11px 0}.edit-modal input{display:block;width:100%;background:#101820;border:1px solid #506172;color:white;border-radius:8px;padding:11px;margin-top:5px}.edit-modal .primary-action{margin-top:18px}
@media(max-width:480px){html,.site-shell{background:#0e141b}.site-shell{padding:0}.app-frame{max-width:none;border-radius:0;min-height:100vh;box-shadow:none}.bottom-nav{position:fixed;z-index:10}.content{padding-bottom:25px}.brand{font-size:clamp(37px,10vw,55px)}.screen{padding-left:20px;padding-right:20px}}@media(min-width:700px){.site-shell{padding:38px}.app-frame{min-height:820px}.bottom-nav{position:sticky}.content{min-height:650px}}
.app-frame{padding-bottom:0}.content{padding-bottom:84px}@media(max-width:480px){.content{padding-bottom:105px}}
.info-link{width:100%;color:#fff;text-align:left}.info-link>div{flex:1}.info-link .info-chevron{align-self:center;color:#9db0c2}.event-info .details-card{padding:18px}.event-info .details-card h2{font-size:18px;margin:0 0 12px}.event-info .details-card p{font-size:14px;line-height:1.48;color:#d5dfe8;margin:9px 0}.event-info .details-card p b{color:#4aa5f8;margin-right:7px}
.head-row>.icon-button:first-child{width:43px;height:43px;border:1px solid #6bb8ff;background:#091622d9;border-radius:11px;box-shadow:0 2px 12px #000a;flex:none}.head-row>.icon-button:first-child svg{width:27px;height:27px;stroke-width:2.5;color:#fff}.flag-ribbon{opacity:.53;filter:blur(1px);mask-image:linear-gradient(90deg,#000 20%,transparent 100%);pointer-events:none}
a{color:inherit;text-decoration:none}.menu-wrap{z-index:30;position:relative}.menu-icon{list-style:none;width:43px;height:43px;border:1px solid #6bb8ff;background:#091622e8;border-radius:11px;box-shadow:0 2px 12px #000a;display:flex;flex-direction:column;justify-content:center;gap:5px;padding:0 10px;cursor:pointer}.menu-icon::-webkit-details-marker{display:none}.menu-icon span{display:block;height:2.5px;background:#fff;border-radius:3px;width:100%}.menu-panel{top:49px;left:0;max-height:70vh;overflow-y:auto}.menu-panel a{display:block;color:#fff;padding:13px;border-radius:8px;font-size:14px}.menu-panel a:hover,.menu-panel a:focus{background:#2b4052}.head-row{gap:4px}.brand{font-style:italic;white-space:nowrap}.bell{display:grid;place-items:center;color:white;font-size:24px;min-width:35px;line-height:35px}.site-shell{padding:22px}.app-frame{padding-bottom:0}.content{padding-bottom:84px}.bottom-nav a{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:#adb7c3;background:none;border:0;font-size:12px;min-height:72px}.bottom-nav a.active{color:#2196ff}.nav-icon{font-size:26px;font-weight:700;line-height:1}.schedule-card .ico{color:#2997ff;min-width:26px;font-size:25px}.info-card .ico{font-size:24px;min-width:24px;line-height:1.1;color:#b4c2d0}.info-link{display:flex;width:100%;color:white}.info-link>div{flex:1}.number-card p{line-height:1.35}.number-card strong{min-height:80px}.partner-strip a{flex:1;text-align:center;font-size:11px;padding:4px}.segment-list{display:flex;width:100%;border:1px solid #3c4b58;background:#202a35;border-radius:12px;padding:3px;margin-bottom:20px}.segment-list a{flex:1;text-align:center;padding:12px 4px;font-size:13px;border-radius:10px}.segment-list .selected{background:linear-gradient(#279cfb,#087de9)}.car-hero .edit-glyph{position:absolute;right:12px;top:12px;background:#192b3b;border-radius:9px;padding:7px 10px}.muted-caption{display:block;color:#9eafbe;font-size:11px;margin:5px 0}.garage-details>div{grid-template-columns:100px 1fr 18px}.stamps>div span{font-size:30px;color:#cbd5df}.stamps>div.stamped{border-color:#44cf7b;color:#44cf7b}.stamps>div.stamped span{color:#44cf7b}.register-box{margin:15px 0;border:1px solid #465b70;background:#182530;border-radius:12px;padding:15px}.register-box summary{cursor:pointer;font-weight:700;line-height:1.35}.register-box form{padding-top:13px}.register-box label,.login-card label{display:block;font-size:14px;margin:10px 0;color:#d9e4ee}.register-box input:not([type=checkbox]),.login-card input:not([type=checkbox]){display:block;width:100%;border:1px solid #536777;background:#0e1721;color:#fff;border-radius:8px;padding:11px;margin-top:5px}.register-box .check-row{display:flex;gap:8px;align-items:flex-start}.register-box .check-row input{margin-top:3px}.register-box p{font-size:13px;color:#b9c8d6;line-height:1.4}.register-box .primary-action{margin-top:15px}.login-card h2{font-size:19px;margin:0}.login-card p{font-size:13px}.login-card input[type=submit]{width:100%;min-height:46px;background:#188df4;border:0;border-radius:8px;color:#fff;font-weight:700;cursor:pointer}.login-card a{color:#57afff}.notice-box{border:1px solid #4e976e;background:#183726;color:#daffe8;border-radius:9px;padding:12px;margin:0 0 14px;font-size:14px}.released-card{border:1px solid #2c8eda;background:#152e41;padding:16px;border-radius:12px;margin:10px 0}.released-card b{color:#61b5ff}.released-card p{line-height:1.5;margin-bottom:0}.primary-action.disabled{opacity:.8;cursor:default}.attendee-card{display:flex;position:relative;gap:13px;align-items:center;background:#1b2732;border:1px solid #354958;border-radius:12px;padding:9px;margin:10px 0}.attendee-card[hidden]{display:none}.attendee-card img{width:115px;height:95px;object-fit:cover;border-radius:8px}.attendee-card>div{min-width:0}.attendee-card strong,.attendee-card b,.attendee-card span,.attendee-card small{display:block}.attendee-card strong{color:#2999fa;font-size:19px}.attendee-card b{font-size:16px}.attendee-card span{font-size:13px}.attendee-card small{font-size:11px;color:#b8c7d3}.attendee-card form{margin-left:auto}.attendee-card button{border:0;background:none;color:#f497ae;font-size:23px}.search-box input{border:0;background:none;color:#fff;outline:0;width:100%}.event-info .details-card{padding:18px}.event-info h2{font-size:18px;margin:0 0 10px}.event-info .details-card p{font-size:14px;line-height:1.5;margin:9px 0}.event-info .details-card p b{color:#48a8ff}.sabr-admin .sabr-table-wrap{max-width:100%;overflow-x:auto}.sabr-admin td{vertical-align:middle}.sabr-admin textarea{max-width:900px}.flag-ribbon{opacity:.53;filter:blur(1px);mask-image:linear-gradient(90deg,#000 20%,transparent 100%)}
@media(max-width:480px){.site-shell{padding:0}.app-frame{border-radius:0;min-height:100vh}.bottom-nav{position:fixed;z-index:10}.content{padding-bottom:105px}.screen{padding-left:20px;padding-right:20px}.brand{font-size:clamp(36px,9.5vw,55px)}}
.trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.organiser-screen .eyebrow{display:block;color:#359ffa;font-size:11px;font-weight:800;letter-spacing:.12em;margin-bottom:7px}.organiser-screen .section-heading{font-size:26px}.org-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;border:1px solid #3d4d5b;background:linear-gradient(135deg,#263440,#18222c);border-radius:13px;padding:13px 8px;margin:15px 0 20px}.org-metrics>div{text-align:center;border-right:1px solid #344756}.org-metrics>div:last-child{border-right:0}.org-metrics strong{display:block;color:#269cfd;font-size:25px;line-height:1.1}.org-metrics span{display:block;color:#c4d1dd;font-size:10px;line-height:1.2;margin-top:4px}.org-panel{background:#1b2833;border:1px solid #3a4d5b;border-radius:13px;margin:15px 0}.org-panel summary{display:flex;justify-content:space-between;align-items:center;padding:15px;color:#fff;font-size:17px;font-weight:700;cursor:pointer;list-style:none}.org-panel summary::-webkit-details-marker{display:none}.org-panel form{padding:0 15px 15px;border-top:1px solid #344754}.org-panel form>label,.org-entry-body form>label{display:block;font-size:13px;color:#d2deea;margin-top:13px}.org-panel textarea,.org-panel input:not([type=checkbox]),.org-entry-body input:not([type=checkbox]){display:block;width:100%;margin-top:5px;padding:10px;border:1px solid #526777;border-radius:8px;background:#101b25;color:#fff;outline-color:#2a9aff}.org-panel .toggle-row{display:flex;gap:10px;align-items:flex-start;line-height:1.35}.org-panel .toggle-row input{margin:2px 0 0;accent-color:#229bff;width:18px;height:18px;flex:none}.org-panel .primary-action{font-size:15px;min-height:47px;margin:18px 0 0}.organiser-screen .subheading{font-size:19px;margin:24px 0 8px}.organiser-screen .muted{margin-bottom:11px}.org-entry-list{margin:13px 0}.org-entry{border:1px solid #344758;background:#1c2933;border-radius:12px;margin:8px 0;overflow:hidden}.org-entry[hidden]{display:none}.org-entry summary{display:flex;align-items:center;gap:10px;list-style:none;padding:12px;cursor:pointer}.org-entry summary::-webkit-details-marker{display:none}.org-number{font-size:19px;color:#379efa;font-weight:800;min-width:39px}.org-identity{flex:1;min-width:0}.org-identity b,.org-identity small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-identity b{font-size:15px}.org-identity small{font-size:12px;color:#c0cedb;margin-top:3px}.status-pill{font-size:10px;border-radius:30px;padding:5px 7px;white-space:nowrap}.status-pill.approved{background:#163c2c;color:#65e59b}.status-pill.pending{background:#47361d;color:#ffd57f}.org-entry-body{border-top:1px solid #344758;padding:12px}.org-entry-body p{font-size:12px;color:#b9c8d5;margin:0 0 8px;overflow-wrap:anywhere}.org-checks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.org-checks label{display:flex;align-items:center;gap:7px;font-size:12px;line-height:1.2}.org-checks input{width:17px;height:17px;accent-color:#279cff;flex:none}.save-entry{width:100%;padding:10px;background:#218ff0;color:#fff;border:0;border-radius:8px;font-weight:700}.winner-card{border:1px solid #3b6685;background:#142b3c;border-radius:11px;padding:15px;text-align:center;margin:13px 0}.winner-card strong{display:block;color:#389fff;font-size:42px}.winner-card small{display:block;color:#c8d8e4;line-height:1.4}.admin-backup{display:block;color:#8dc5ff;text-align:center;font-size:12px;margin:25px 0 5px}
.bottom-nav{border-top:0;isolation:isolate}.bottom-nav:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(105deg,#69c9ed 0 32%,#233f9d 32% 66%,#e52f48 66% 100%);box-shadow:0 2px 9px #1b79d858}.bottom-nav a{position:relative;z-index:1}.bottom-nav a.active{color:#70c5f5}.bottom-nav a.active:after{content:"";position:absolute;bottom:5px;width:27px;height:2px;border-radius:3px;background:linear-gradient(90deg,#72c9ee 0 33%,#2c4ca4 33% 67%,#e3344e 67%)}.bottom-nav .nav-icon{display:flex;align-items:center;justify-content:center;width:35px;height:28px}.bottom-nav .nav-icon svg,.heading-car-driver svg{display:block}.heading-car-driver{display:inline-flex;vertical-align:middle;align-items:center;color:#2997ff}
.menu-panel form{margin:0}.menu-panel form button{width:100%;display:block;text-align:left;border:0;background:none;color:#fff;padding:13px;border-radius:8px;font-size:14px;cursor:pointer}.menu-panel form button:hover,.menu-panel form button:focus{background:#2b4052}.login-card form{margin-top:12px}.login-card .primary-action{margin:15px 0 0}.login-card .primary-action svg{display:none}

/* Run 2026: black navigation, dividers, tunnel hero and driver checklist. */
.bottom-nav{background:#050608;border-top:0}.bottom-nav a{min-width:0;position:relative}.bottom-nav a:not(:last-child){border-right:1px solid #39424a}.bottom-nav .nav-icon{color:#b7c2cd}.bottom-nav a.active .nav-icon{color:#65c8f5}.bottom-nav:before{z-index:2}
.site-credit{text-align:center;margin:16px 18px 0;padding:15px 0 22px;border-top:1px solid #34414c;color:#aab8c4;font-size:12px;letter-spacing:.015em}.site-credit a{color:#fff;text-decoration:none;font-weight:700}.partner-strip{border-bottom:1px solid #34414c;padding-bottom:12px}.partner-strip>div>*:not(:last-child){border-right:1px solid #4b5965}.masthead{background-position:center,center 53%;background-size:auto,cover}.readiness-card{border:1px solid #385365;border-radius:12px;background:#17242e;padding:16px;margin:0 0 15px}.readiness-card h2{font-size:18px;margin:0 0 8px}.readiness-card p{font-size:13px;color:#c2d2df;margin:0 0 12px}.readiness-card .ready-confirmed{color:#67df99;font-weight:700;margin:0}.readiness-card label{display:flex;align-items:flex-start;gap:9px;margin:12px 0;color:#dce8f1;font-size:13px;line-height:1.45}.readiness-card input{accent-color:#2997ff;flex:none;margin-top:3px}.readiness-card .save-entry{margin-top:14px}

.roster-panel{display:flex;align-items:center;gap:12px;justify-content:space-between;border:1px solid #364c5e;background:#17242e;border-radius:12px;padding:14px;margin:0 0 22px}.roster-panel b,.roster-panel span{display:block}.roster-panel b{font-size:14px}.roster-panel span{font-size:11px;color:#b9c9d8;line-height:1.4;margin-top:4px}.roster-panel a{flex:none;background:#207fd2;color:#fff;border-radius:8px;padding:9px;text-decoration:none;font-size:11px;font-weight:700;text-align:center;max-width:98px}

.draw-decision{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px}.draw-decision button{border:1px solid #456072;background:#1e3647;color:#fff;border-radius:8px;padding:11px 6px;font-size:12px;font-weight:700}.draw-decision button:last-child{border-color:#87525a;background:#3d2530}.draw-history{margin:0;padding:12px 15px 15px 34px;border-top:1px solid #344754}.draw-history li{padding:7px 0;border-bottom:1px solid #324353;font-size:13px}.draw-history li:last-child{border-bottom:0}.draw-history small{display:block;color:#9db0bd;margin-top:2px}

.organiser-garage-setup{padding:17px}.organiser-garage-setup h2{font-size:19px;margin:0 0 7px}.organiser-garage-setup p{color:#bed0de;font-size:13px;line-height:1.5}.organiser-garage-setup label{display:block;font-size:13px}.organiser-garage-setup input{display:block;width:100%;margin:8px 0 16px;background:#101b25;color:#fff;border:1px solid #526777;border-radius:8px;padding:11px}

.quick-checkin{border:1px solid #3d5c70;background:linear-gradient(135deg,#1c3241,#14232e);border-radius:13px;padding:15px;margin:12px 0 20px}.quick-checkin h2{font-size:18px;margin:0 0 5px}.quick-checkin p{font-size:12px;line-height:1.5;color:#bfced9;margin:0 0 13px}.quick-checkin label{display:block;color:#dce7ef;font-size:13px;margin:10px 0}.quick-checkin input:not([type=checkbox]),.quick-checkin select{display:block;width:100%;background:#0c1822;border:1px solid #526879;border-radius:8px;color:#fff;padding:10px;margin:6px 0 0}.quick-checkin .quick-sticker{display:flex;align-items:flex-start;gap:8px;line-height:1.35}.quick-checkin .quick-sticker input{accent-color:#329fff;margin:2px 0 0}.quick-checkin .save-entry{margin-top:12px}

.org-invite .invite-note{font-size:12px;color:#c4d3de;line-height:1.5;margin:13px 0 2px}.org-invite input[type=email],.org-invite input[type=tel]{font-size:15px}

/* Sponsor marks appear together in the shared footer and Partners page. */
.app-frame{display:flex;flex-direction:column}.masthead{flex:none}.content{min-height:0;flex:1 0 auto;padding-bottom:22px}.site-credit{flex:none;margin:0;padding:21px 18px 105px;background:#080d14;border-top:1px solid #2d4050}.footer-sponsors h2{font-size:17px;text-align:left;margin:0 0 14px;color:#fff}.footer-sponsor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.footer-sponsor-grid a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:100px;padding:11px 8px;background:#131e29;border:1px solid #344554;border-radius:10px;color:#e5edf4;text-decoration:none}.footer-sponsor-grid img{display:block;max-width:100%;width:auto;max-height:48px;object-fit:contain}.footer-sponsor-grid span{font-size:10px;line-height:1.25;color:#c9d6df;text-align:center}.footer-credit{border-top:1px solid #344554;margin-top:21px;padding-top:18px;display:flex;flex-direction:column;align-items:center;gap:9px}.footer-credit span{color:#c0ceda;font-size:12px}.footer-credit img{width:190px;max-width:80%;height:auto;display:block}.sponsor-card{gap:11px;font-size:13px;padding:12px;min-height:120px}.sponsor-card img{display:block;max-width:100%;max-height:74px;width:auto;height:auto;object-fit:contain}.sponsor-card span{display:block}.site-credit a{color:#fff}

/* Full-screen SABeemer navigation */
.menu-wrap[open]{position:fixed;inset:0;z-index:1000;pointer-events:none}
.menu-wrap[open]>.menu-icon{position:fixed;top:max(24px,env(safe-area-inset-top));right:24px;left:auto;z-index:1002;pointer-events:auto;background:#1c2b39}
.menu-wrap[open]>.menu-icon span:first-child{transform:translateY(7.5px) rotate(45deg)}
.menu-wrap[open]>.menu-icon span:nth-child(2){opacity:0}
.menu-wrap[open]>.menu-icon span:last-child{transform:translateY(-7.5px) rotate(-45deg)}
.menu-wrap[open]>.menu-panel{display:flex;position:fixed;inset:0;z-index:1001;width:100%;max-height:none;height:100dvh;min-height:100vh;overflow-y:auto;left:0;top:0;padding:calc(38px + env(safe-area-inset-top)) max(24px,calc((100vw - 440px)/2)) calc(30px + env(safe-area-inset-bottom));border:0;border-radius:0;background:linear-gradient(155deg,#1b2d3c 0%,#0e1722 52%,#080d15 100%);box-shadow:none;flex-direction:column;gap:22px;pointer-events:auto;animation:sabr-menu-slide .25s ease-out both}
@keyframes sabr-menu-slide{from{transform:translateX(-100%)}to{transform:translateX(0)}}
.menu-brand{text-align:left;padding:8px 62px 21px 4px;border-bottom:1px solid #415164;line-height:1}
.menu-brand-title{display:block;font-size:clamp(38px,10vw,52px);font-weight:900;font-style:italic;letter-spacing:-.08em;white-space:nowrap}
.menu-brand-title span{color:#fff}.menu-brand-title strong{color:#329dff}
.menu-brand small{display:block;margin:9px 0 0 35px;font-size:23px;font-weight:800;font-style:italic;color:#fff;white-space:nowrap}
.menu-brand small b{color:#329dff}.menu-brand p{margin:17px 0 0;font-size:10px;font-weight:700;letter-spacing:.23em;color:#a9c1d5}
.menu-links{display:flex;flex-direction:column;gap:0}
.menu-panel .menu-links>a,.menu-panel .menu-links>button,.menu-panel .menu-links>form button{border-bottom:1px solid #334353;border-radius:0;padding:16px 8px;font-size:16px;min-height:55px;line-height:1.4}
.menu-panel .menu-links>a:hover,.menu-panel .menu-links>button:hover,.menu-panel .menu-links>form button:hover{background:#243b51}
.menu-bottom{margin-top:auto;padding:19px 4px 0;border-top:3px solid transparent;border-image:linear-gradient(90deg,#36b7e9 0 34%,#214693 34% 67%,#ed2355 67%) 1;color:#b1c1ce;font-size:12px}
@media(prefers-reduced-motion:reduce){.menu-wrap[open]>.menu-panel{animation:none}}

.car-hero-placeholder{background:radial-gradient(circle at 50% 26%,#26465b 0%,#162938 49%,#101820 100%);overflow:hidden}
.car-hero-placeholder:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(145deg,transparent 0 27px,#ffffff06 28px 29px);pointer-events:none}
.car-placeholder-content{position:absolute;inset:14px 12px 52px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:#69baf3}
.car-placeholder-content svg{width:min(165px,45%);height:85px;opacity:.78}
.car-hero .car-placeholder-content span{color:#d5e6f1;font-size:13px;font-weight:700;letter-spacing:.05em;text-shadow:none}
.car-hero-placeholder>div:last-child{position:relative;z-index:1}

.photo-position-label{display:block}.photo-position-label input[type=range]{width:100%;accent-color:#329dff;margin:11px 0}.photo-position-label small{display:block;color:#a9bfce}.photo-position-value{float:right;color:#59aeff;font-weight:700}

.route-map-link{display:inline-block;margin:10px 0 0;padding:12px 15px;border-radius:9px;background:#198cf1;color:#fff;font-weight:700;text-decoration:none}
.run-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}
.run-gallery-item{background:#1a2732;border:1px solid #3a5060;border-radius:13px;overflow:hidden}
.run-gallery-item img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.run-gallery-item>div{padding:9px;color:#fff;font-size:12px}
.run-gallery-video{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;min-height:135px;background:linear-gradient(145deg,#203c53,#0f1822);color:#d7ebff;text-align:center;text-decoration:none;font-size:13px;padding:10px}
.run-gallery-video span{font-size:36px;color:#44a8fb}
.gallery-review{padding:12px;border-bottom:1px solid #3c5261}.gallery-review img{display:block;width:120px;height:85px;object-fit:cover;margin:10px 0}.gallery-review small{display:block}.gallery-review button{margin:7px 6px 0 0;padding:8px 14px;background:#258ff1;color:white;border:0;border-radius:7px}

.car-hero .edit-glyph{border:1px solid #417396;color:#65b8f4;z-index:3;cursor:pointer;font-size:18px;line-height:1;padding:9px 12px}
.garage-details>div:not(:last-child){cursor:pointer}.garage-details>div:not(:last-child):hover{background:#263849}
.garage-photo-preview{width:100%;aspect-ratio:1.7;background-color:#152836;background-size:cover,cover;background-repeat:no-repeat;background-position:center,center 75%;border:1px solid #49647b;border-radius:12px;margin:15px 0 9px;display:flex;align-items:flex-end;padding:14px;color:#ecf7ff;font-weight:700;box-shadow:inset 0 -38px 40px #0c1628bb}
.garage-photo-preview.car-hero-placeholder{align-items:center;justify-content:center;background-image:none;text-align:center;color:#9cbbd2}
.garage-edit{scroll-margin-top:25px}

.garage-car-tabs{display:flex;gap:8px;overflow-x:auto;margin:13px 0;padding-bottom:8px;scrollbar-width:thin}
.garage-car-tabs a{flex:0 0 auto;display:inline-flex;gap:5px;align-items:center;padding:10px 14px;background:#1b2834;color:#d1e1eb;border:1px solid #3b5365;border-radius:10px;text-decoration:none;font-size:13px}
.garage-car-tabs a.current{background:#117ee0;border-color:#54b4ff;color:#fff;font-weight:700}
.garage-car-tabs small{font-size:11px}.add-car{margin:8px 0 17px}
.garage-profile-link,.profile-garage-link{display:block;padding:12px;color:#72beff;text-decoration:none;font-weight:700}
.profile-summary{display:flex;flex-direction:column;gap:5px;padding:5px 0 18px;border-bottom:1px solid #3b5060;margin-bottom:18px}.profile-summary small{color:#bad0df}

.garage-photo-preview{aspect-ratio:auto;height:234px;background-size:cover,cover;background-position:center,50% 75%}
.photo-x-value{float:right;color:#59aeff;font-weight:700}

/* Show the whole car photo with identical framing in editor and garage. */
.car-hero:not(.car-hero-placeholder),.garage-photo-preview:not(.car-hero-placeholder){background-color:#111e2a;background-size:contain;background-repeat:no-repeat}
.car-hero:not(.car-hero-placeholder)::after,.garage-photo-preview:not(.car-hero-placeholder)::after{content:"";position:absolute;left:0;right:0;bottom:0;height:72px;background:linear-gradient(transparent,#0b1424db);pointer-events:none}
.car-hero>div:last-child,.garage-photo-preview>span{position:relative;z-index:2}
.garage-photo-preview{position:relative;overflow:hidden;height:234px;aspect-ratio:auto;box-shadow:none}
.garage-photo-preview>span{display:block;text-shadow:0 1px 5px #000;padding:0 0 2px}

.car-hero,.garage-photo-preview{aspect-ratio:1.5;height:auto;min-height:195px}

.route-step{display:flex;gap:15px;padding:17px 13px;margin:12px 0;background:#1b2935;border:1px solid #3b5060;border-radius:13px}
.route-step>span{flex:none;display:grid;place-items:center;background:#133650;color:#6fc1ff;font-size:14px;font-weight:900;border-radius:50%;width:36px;height:36px}
.route-step>div{min-width:0}.route-step b{font-size:16px;color:#fff}.route-step p{margin:9px 0 0;line-height:1.5;color:#c8d5df;white-space:normal;overflow-wrap:anywhere}

.prize-hold{padding:36px 23px;text-align:center;background:radial-gradient(circle at top,#223d55,#15212c 75%);border:1px solid #466176;border-radius:17px;margin:17px 0}.prize-hold>span{font-size:44px;color:#4eb0f2}.prize-hold h2{margin:7px 0;color:#fff}.prize-hold p{color:#c4d6e2;line-height:1.5}
.prize-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin:20px 0}.prize-number{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:155px;border:1px solid #57a6e8;border-radius:14px;background:linear-gradient(145deg,#233e54,#122536);text-align:center;color:white}.prize-number small{font-weight:800;letter-spacing:.13em;color:#a8d9fb}.prize-number strong{font-size:42px;color:#46aafa}.prize-number span{font-size:11px;color:#bfd2e1}
