/* WorldRaceCalendar popups: login, sign up, organizer sign up, review, suggest an edit, share.
   Desktop: login/sign up = split card (green brand panel + form). Others = one compact card.
   Phones: bottom sheet. Dark mode uses the site's own dark palette (same values as site_v2.css).
   Self-contained (does not depend on which Tailwind classes were compiled). Weights: 400 text, 500 headings/buttons (never bold). */

.wrc-ov{color-scheme:light;--g1:#3FB584;--g2:#2E9E6E;--ink:#13231C;--muted:#586861;--soft:#8A988F;--line:#D9E2DD;--field:#F7FAF8;--card:#FFFFFF;--weak:#E8F7F1;--brand-ink:#1F7A55;
  position:fixed;inset:0;z-index:1001;display:none;align-items:center;justify-content:center;padding:20px;
  background:rgba(0,0,0,.55);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);overscroll-behavior:contain}
.wrc-ov.flex{display:flex}
.wrc-ov.hidden{display:none}

.wrc-modal{position:relative;box-sizing:border-box;width:100%;max-width:440px;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);
  overflow-y:auto;overscroll-behavior:contain;background:var(--card);color:var(--ink);border-radius:22px;padding:36px 34px 30px;
  box-shadow:0 30px 70px -18px rgba(0,0,0,.5),0 0 0 1px rgba(15,35,25,.06);
  font-family:"Roboto Condensed",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-size:16px;font-weight:400;line-height:1.4;
  animation:wrc-pop .4s cubic-bezier(.22,1,.36,1) both}
.wrc-modal *{box-sizing:border-box}
.wrc-modal--wide{max-width:480px}
@keyframes wrc-pop{from{opacity:0;transform:translateY(14px) scale(.97)}to{opacity:1;transform:none}}
@keyframes wrc-sheet{from{opacity:.7;transform:translateY(48px)}to{opacity:1;transform:none}}
@keyframes wrc-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
@keyframes wrc-rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* ---------- split layout (login / sign up / organizer) ---------- */
.wrc-split{display:grid;grid-template-columns:minmax(250px,36%) 1fr;max-width:800px;padding:0;overflow:hidden}
.wrc-main{position:relative;min-width:0;max-height:calc(100vh - 40px);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;padding:38px 38px 30px}
.wrc-aside{position:relative;overflow:hidden;color:var(--ink);padding:32px 28px;display:flex;flex-direction:column;justify-content:space-between;
  background:linear-gradient(160deg,#F4FBF7 0%,#DCF2E7 50%,#B4E3CD 100%);border-right:1px solid var(--line)}
.wrc-aside::before,.wrc-aside::after{content:"";position:absolute;border-radius:50%;filter:blur(40px);opacity:.45;pointer-events:none}
.wrc-aside::before{width:260px;height:260px;left:-100px;top:-80px;background:#FFFFFF;animation:wrc-drift 14s ease-in-out infinite alternate}
.wrc-aside::after{width:230px;height:230px;right:-90px;bottom:-70px;background:#5FD8A6;animation:wrc-drift 17s ease-in-out infinite alternate-reverse}
@keyframes wrc-drift{from{transform:translate(0,0) scale(1)}to{transform:translate(30px,22px) scale(1.15)}}
.wrc-aside>*{position:relative;z-index:1}
.wrc-aside-logo{height:32px;width:auto;align-self:flex-start}
.wrc-aside .wrc-dark{display:none}
.wrc-aside h3{margin:28px 0 18px;font-size:27px;line-height:1.12;font-weight:500;letter-spacing:-.01em;color:var(--ink)}
.wrc-perks{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px}
.wrc-perks li{display:flex;align-items:center;gap:10px;padding:9px 12px;border-radius:13px;background:rgba(255,255,255,.7);
  border:1px solid rgba(46,158,110,.18);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);font-size:15px;font-weight:400;
  animation:wrc-rise .5s cubic-bezier(.22,1,.36,1) both}
.wrc-perks li:nth-child(2){animation-delay:.08s}
.wrc-perks li:nth-child(3){animation-delay:.16s}
.wrc-perks svg{flex:none;width:19px;height:19px;stroke:var(--brand-ink);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}
/* discreet sport icons (run / bike / swim) at the bottom of the brand panel */
.wrc-sport{display:flex;align-items:center;justify-content:space-between;margin-top:20px;padding:16px 4px 0;border-top:1px solid rgba(31,122,85,.2);color:var(--brand-ink);opacity:.7}
.wrc-sport svg{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.wrc-split .wrc-logo{display:none}

.wrc-x{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border:0;border-radius:12px;background:transparent;color:var(--muted);
  display:grid;place-items:center;cursor:pointer;transition:background .15s,color .15s}
.wrc-x:hover{background:var(--field);color:var(--ink)}
.wrc-x:focus-visible{outline:3px solid rgba(63,181,132,.55);outline-offset:1px}
.wrc-x svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;fill:none}

.wrc-logo{display:flex;justify-content:center;margin:0 0 16px}
.wrc-logo img{height:34px;width:auto}
.wrc-logo .wrc-dark{display:none}
.wrc-title{margin:0 0 4px;font-size:26px;font-weight:500;line-height:1.15;letter-spacing:-.01em;text-align:center;color:inherit}
.wrc-sub{margin:0 0 18px;font-size:15.5px;text-align:center;color:var(--muted)}
.wrc-split .wrc-title,.wrc-split .wrc-sub{text-align:left}
.wrc-split .wrc-title{margin-bottom:18px}

/* ---------- buttons ---------- */
.wrc-google{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:50px;margin:0 0 18px;border:1.5px solid var(--line);
  border-radius:13px;background:var(--card);color:var(--ink);font:inherit;font-size:16px;font-weight:500;text-decoration:none;cursor:pointer;
  transition:background .15s,border-color .15s,box-shadow .2s,transform .15s}
.wrc-google:hover{border-color:#BFCDC6;box-shadow:0 8px 20px -14px rgba(15,35,25,.5);transform:translateY(-1px)}
.wrc-google svg{width:21px;height:21px}

.wrc-or{display:flex;align-items:center;gap:12px;margin:0 0 18px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.wrc-or::before,.wrc-or::after{content:"";flex:1;height:1px;background:var(--line)}
.wrc-sec{display:flex;align-items:center;gap:12px;margin:20px 0 14px;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}
.wrc-sec::before,.wrc-sec::after{content:"";flex:1;height:1px;background:var(--line)}

.wrc-btn{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:9px;width:100%;height:50px;margin:6px 0 0;padding:0 20px;border:0;
  border-radius:13px;background:#3FB584;color:#fff;font:inherit;font-size:17px;font-weight:500;text-decoration:none;cursor:pointer;
  box-shadow:none;transition:background .15s,transform .05s}
.wrc-btn:hover{background:#37A877}
.wrc-btn:active{transform:translateY(1px)}
.wrc-btn:focus-visible{outline:3px solid rgba(63,181,132,.55);outline-offset:3px}
.wrc-btn:disabled{opacity:.65;cursor:progress}

/* ---------- fields ---------- */
.wrc-field{position:relative;margin:0 0 12px}
.wrc-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.wrc-input,.wrc-select,.wrc-area{display:block;width:100%;height:52px;padding:0 16px;border:1.5px solid var(--line);border-radius:13px;background:var(--field);
  color:var(--ink);font:inherit;font-size:16px;font-weight:400;outline:none;transition:border-color .15s,box-shadow .15s,background .15s;-webkit-appearance:none;appearance:none}
.wrc-input::placeholder,.wrc-area::placeholder{color:var(--soft)}
.wrc-input:hover,.wrc-select:hover,.wrc-area:hover{border-color:#BFCDC6}
.wrc-input:focus,.wrc-select:focus,.wrc-area:focus{background:var(--card);border-color:var(--g1);box-shadow:0 0 0 4px rgba(63,181,132,.18)}
.wrc-input.wrc-fl{padding:24px 16px 6px;line-height:1.2}
/* Browser autofill. Chrome paints #E8F0FE with !important and also removes background-image, so neither can be overridden.
   What it does NOT touch is box-shadow and background-clip: clip its colour to the padding box (nothing leaks under the rounded border)
   and cover that box with a big inset shadow in our own field colour. color-scheme (set on .wrc-ov) makes Chrome pick its dark palette in dark mode. */
.wrc-input:-webkit-autofill,.wrc-input:-webkit-autofill:hover,.wrc-input:-webkit-autofill:active{
  background-clip:padding-box !important;
  -webkit-box-shadow:0 0 0 100px var(--field) inset !important;box-shadow:0 0 0 100px var(--field) inset !important;
  -webkit-text-fill-color:var(--ink) !important;caret-color:var(--ink);
  transition:background-color 600000s 0s,color 600000s 0s}
.wrc-input:-webkit-autofill:focus{
  background-clip:padding-box !important;
  -webkit-box-shadow:0 0 0 100px var(--card) inset,0 0 0 4px rgba(63,181,132,.18) !important;
  box-shadow:0 0 0 100px var(--card) inset,0 0 0 4px rgba(63,181,132,.18) !important;
  -webkit-text-fill-color:var(--ink) !important;caret-color:var(--ink)}
.wrc-float{position:absolute;left:17px;top:26px;max-width:calc(100% - 36px);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;transform:translateY(-50%);
  font-size:16px;color:var(--soft);pointer-events:none;transition:top .16s ease,font-size .16s ease,color .16s ease}
.wrc-input:focus+.wrc-float,.wrc-input:not(:placeholder-shown)+.wrc-float,.wrc-input:-webkit-autofill+.wrc-float{top:12px;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--brand-ink)}
.wrc-area{height:auto;min-height:120px;padding:13px 16px;resize:vertical}
.wrc-select{padding-right:40px;cursor:pointer;height:48px;font-size:15.5px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%238A988F' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 16px center}
select.wrc-select:invalid{color:var(--soft)}
/* custom dropdown (replaces the native select look; the real <select> stays in the form, hidden) */
.wrc-dd{position:relative}
.wrc-dd>select{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;pointer-events:none}
.wrc-select.wrc-dd-btn{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:0 12px 0 14px;background-image:none;text-align:left;font-family:inherit}
.wrc-dd-btn .wrc-dd-val{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.wrc-dd-btn.is-ph .wrc-dd-val{color:var(--soft)}
.wrc-dd-chev{flex:none;width:28px;height:28px;display:grid;place-items:center;border-radius:9px;background:var(--weak);color:var(--brand-ink);transition:transform .2s,background .2s}
.wrc-dd-chev svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.wrc-dd.open .wrc-dd-chev{transform:rotate(180deg)}
.wrc-dd.open .wrc-dd-btn{border-color:var(--g1);background:var(--card);box-shadow:0 0 0 4px rgba(63,181,132,.18)}
.wrc-dd-list{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:30;margin:0;padding:6px;list-style:none;max-height:236px;overflow-y:auto;
  background:var(--card);border:1.5px solid var(--line);border-radius:15px;box-shadow:0 22px 44px -14px rgba(0,0,0,.4);animation:wrc-ddin .16s ease-out both}
.wrc-dd.up .wrc-dd-list{top:auto;bottom:calc(100% + 6px)}
@keyframes wrc-ddin{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.wrc-dd-list[hidden]{display:none}
.wrc-dd-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px;border-radius:10px;cursor:pointer;font-size:15.5px;color:var(--ink)}
.wrc-dd-opt.is-act{background:var(--weak)}
.wrc-dd-opt.is-sel{color:var(--brand-ink)}
.wrc-dd-opt .wrc-ck{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.wrc-dd-opt.is-sel .wrc-ck{opacity:1}
.wrc-dd-opt .wrc-ot{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.wrc-pips{display:inline-flex;gap:3px;flex:none}
.wrc-pips i{display:block;width:6px;height:12px;border-radius:2px;background:var(--line)}
.wrc-pips i.on{background:var(--g1)}
.wrc-lbl{display:block;margin:0 0 6px;padding:0 2px;font-size:11.5px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}
.wrc-opt{float:right;font-weight:400;letter-spacing:.04em;color:var(--soft)}

.wrc-err{margin:5px 3px 0;font-size:13.5px;color:#C62828}
.wrc-err.hidden{display:none}
.wrc-alert{margin:0 0 14px;padding:11px 14px;border-radius:12px;font-size:14.5px;background:#FDECEC;color:#B42318;border:1px solid #F7C6C6}
.wrc-alert.hidden{display:none}
.wrc-alert--ok{background:var(--weak);color:var(--brand-ink);border-color:#BFE6D5}

.wrc-foot{margin:20px 0 0;padding-top:18px;border-top:1px solid var(--line);text-align:center;font-size:15.5px;color:var(--muted)}
.wrc-foot p{margin:0 0 8px}
.wrc-foot p:last-child{margin-bottom:0}
.wrc-foot a{color:var(--brand-ink);font-weight:500;text-decoration:none;margin-left:4px}
.wrc-foot a:hover{text-decoration:underline;text-underline-offset:3px}
.wrc-foot a.wrc-quiet{color:var(--muted);font-weight:400;margin-left:0}
.wrc-foot .wrc-legal{margin-top:14px;font-size:11.5px;line-height:1.4;color:var(--soft)}
.wrc-foot .wrc-legal a{color:inherit;font-weight:400;margin-left:0;text-decoration:underline;text-underline-offset:2px}
/* Google's floating reCAPTCHA badge is hidden; the required notice is shown in the sign-up forms instead */
.grecaptcha-badge{visibility:hidden!important}

.wrc-success{padding:8px 0 0;text-align:center}
.wrc-success.hidden{display:none}
.wrc-success-ico{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 16px;border-radius:20px;background:var(--weak);color:var(--g2);font-size:28px;box-shadow:0 0 0 7px rgba(63,181,132,.1)}
.wrc-success p{margin:0 0 20px;font-size:16.5px;color:var(--ink)}

/* ---------- review ---------- */
.wrc-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;opacity:0}
.wrc-stars{display:flex;flex-direction:row-reverse;justify-content:center;gap:6px;margin:2px 0 4px}
.wrc-stars label{font-size:42px;line-height:1;color:#D3DDD7;cursor:pointer;transition:color .12s,transform .15s;user-select:none}
.wrc-stars input:checked~label,.wrc-stars label:hover,.wrc-stars label:hover~label{color:#FFB400}
.wrc-stars label:hover{transform:scale(1.1)}
.wrc-stars input:focus-visible+label{outline:3px solid rgba(63,181,132,.55);outline-offset:2px;border-radius:6px}
.wrc-stars.shake{animation:wrc-shake .3s}
.wrc-rate-err{margin:0 0 10px;text-align:center}
.wrc-grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0 14px}

/* ---------- share ---------- */
/* share popup: header, event line, big coloured share buttons */
.wrc-share{max-width:560px;padding:34px 36px 32px}
.wrc-share .wrc-title{font-size:24px;text-align:left;padding-right:44px;margin-bottom:5px}
.wrc-share .wrc-sub{font-size:15.5px;text-align:left;margin-bottom:22px}
.wrc-event{display:flex;align-items:center;gap:16px;margin:0 0 20px}
.wrc-event-img{position:relative;flex:none;width:144px;height:96px;border-radius:14px;overflow:hidden;background:var(--weak);box-shadow:0 8px 18px -10px rgba(0,0,0,.45)}
.wrc-event-img .wrc-event-pic{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:var(--card)}
.wrc-event-ph{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(150deg,#F4FBF7,#DCF2E7 55%,#B4E3CD)}
.wrc-event-ph img{height:26px;width:auto}
.wrc-event-ph .wrc-dark{display:none}
html.dark .wrc-event-ph{background:linear-gradient(150deg,#111827,#173d33 55%,#1f6a4f)}
html.dark .wrc-event-ph .wrc-light{display:none}
html.dark .wrc-event-ph .wrc-dark{display:block}
.wrc-event-info{min-width:0}
.wrc-event-name{margin:0 0 6px;font-size:18px;font-weight:500;line-height:1.2;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.wrc-event-meta{display:flex;align-items:center;gap:8px;margin:0 0 3px;font-size:14.5px;color:var(--muted)}
.wrc-event-meta svg{flex:none;width:16px;height:16px;color:var(--brand-ink)}
.wrc-copy{display:flex;gap:6px;margin:0 0 22px;padding:5px;border-radius:15px;background:var(--field);border:1.5px solid var(--line);transition:border-color .15s,box-shadow .15s}
.wrc-copy:focus-within{border-color:var(--g1);background:var(--card);box-shadow:0 0 0 4px rgba(63,181,132,.18)}
.wrc-copy .wrc-input{height:42px;padding:0 12px;font-size:15px;color:var(--muted);text-overflow:ellipsis;background:transparent;border:0;box-shadow:none}
.wrc-copy .wrc-btn{width:auto;height:42px;margin:0;flex:none;min-width:116px;font-size:15.5px;font-weight:400;border-radius:11px}
.wrc-copy .wrc-btn.done{background:#2E9E6E}
.wrc-share-grid{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:12px}
.wrc-share-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;min-width:0;min-height:80px;padding:16px 8px 14px;border:1.5px solid var(--line);border-radius:16px;background:var(--card);
  color:var(--ink);font:inherit;font-size:14.5px;font-weight:400;text-decoration:none;cursor:pointer;transition:border-color .15s,background .15s,transform .15s}
.wrc-share-item[hidden]{display:none}
.wrc-share-ico{display:grid;place-items:center;width:auto;height:auto;background:none;color:var(--g2)}
.wrc-share-ico svg{width:23px;height:23px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}
.wrc-sc-wa{color:#25D366}
.wrc-sc-mail{color:#3B82F6}
.wrc-sc-share{color:#3FB584}
.wrc-sc-copy{color:#3FB584}
.wrc-share-item:hover{border-color:var(--g1);background:var(--field)}
.wrc-hidden-input{position:absolute;left:-9999px;top:0;width:1px;height:1px;opacity:0}
.wrc-share-item.done{border-color:var(--g1)}
.wrc-share-item:focus-visible{outline:3px solid rgba(63,181,132,.55);outline-offset:2px}

/* ---------- small motion: busy spinner, success tick, Google hand-off, shake ---------- */
@keyframes wrc-rot{to{transform:rotate(360deg)}}
@keyframes wrc-tick{0%{opacity:0;transform:scale(.5)}100%{opacity:1;transform:scale(1)}}
@keyframes wrc-draw{from{stroke-dashoffset:24}to{stroke-dashoffset:0}}
@keyframes wrc-bounce{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}100%{opacity:1;transform:scale(1)}}
@keyframes wrc-fade{from{opacity:0}to{opacity:1}}
.wrc-spin{flex:none;width:19px;height:19px;border:2.5px solid currentColor;border-right-color:transparent;border-radius:50%;animation:wrc-rot .7s linear infinite}
.wrc-btn.is-busy:disabled{opacity:.88;cursor:progress}
.wrc-btn.is-done{background:#2E9E6E;pointer-events:none}
.wrc-check{flex:none;width:24px;height:24px;animation:wrc-tick .26s cubic-bezier(.22,1,.36,1) both}
.wrc-check path{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;animation:wrc-draw .32s ease-out .08s both}
.wrc-success:not(.hidden) .wrc-success-ico{animation:wrc-bounce .45s cubic-bezier(.22,1,.36,1) both}
.wrc-success:not(.hidden) p,.wrc-success:not(.hidden) .wrc-btn{animation:wrc-fade .4s ease-out .12s both}
.wrc-modal.shake{animation:wrc-shake .32s}
.wrc-google.is-busy{pointer-events:none;border-color:var(--g1)}
.wrc-google.is-busy .wrc-spin{color:var(--g1)}
.wrc-modal.is-leaving form,.wrc-modal.is-leaving .wrc-or,.wrc-modal.is-leaving .wrc-foot{opacity:.35;pointer-events:none;transition:opacity .25s}

/* ---------- narrower screens ---------- */
@media (max-width:759px){
  .wrc-split{display:block;max-width:440px;overflow-y:auto}
  .wrc-aside{display:none}
  .wrc-split .wrc-logo{display:flex}
  .wrc-main{max-height:none;overflow:visible;padding:36px 34px 30px}
  .wrc-split .wrc-title,.wrc-split .wrc-sub{text-align:center}
}

/* ---------- phones: centred card (same as desktop, just with a smaller margin) ---------- */
@media (max-width:639px){
  .wrc-ov{padding:14px}
  .wrc-modal,.wrc-modal--wide,.wrc-split{max-width:none;max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);border-radius:20px;padding:26px 20px 22px}
  .wrc-split{padding:0;overflow-y:auto}
  .wrc-main{padding:26px 20px 22px}
  .wrc-x{top:10px;right:10px}
  .wrc-title{font-size:24px}
  .wrc-input{height:50px}
  .wrc-input.wrc-fl{padding:24px 14px 6px}
  .wrc-float{left:15px}
  .wrc-google,.wrc-btn{height:48px;font-size:16.5px}
  .wrc-select{height:46px}
  .wrc-field{margin-bottom:11px}
  .wrc-logo{margin-bottom:14px}
  .wrc-logo img{height:30px}
  .wrc-foot{font-size:15px}
  .wrc-stars label{font-size:38px}
  .wrc-share{padding:26px 20px 24px}
  .wrc-share .wrc-title{font-size:22px}
  .wrc-event-img{width:108px;height:76px}
  .wrc-copy{flex-direction:column;padding:6px}
  .wrc-copy .wrc-btn{width:100%}
  .wrc-event-name{font-size:16.5px}
  .wrc-share-grid{gap:8px}
  .wrc-share-item{font-size:13.5px;gap:8px;padding:14px 4px 12px;min-height:74px}
  .wrc-share-ico svg{width:22px;height:22px}
}
@media (prefers-reduced-motion:reduce){
  .wrc-modal,.wrc-stars.shake,.wrc-modal.shake,.wrc-aside::before,.wrc-aside::after,.wrc-perks li{animation:none}
  .wrc-spin{animation-duration:1.6s}.wrc-check,.wrc-check path,.wrc-success-ico{animation:none}
}

/* ---------- dark mode: the site's own dark palette (surface #1F2937, surface2 #273244, line #374151, text #fff / #D1D5DB) ---------- */
html.dark .wrc-ov{color-scheme:dark;--ink:#FFFFFF;--muted:#D1D5DB;--soft:#9CA3AF;--line:#374151;--field:#273244;--card:#1F2937;--weak:#2A3547;--brand-ink:#3FB584;
  background:rgba(0,0,0,.65)}
html.dark .wrc-modal{box-shadow:0 30px 70px -18px rgba(0,0,0,.75),0 0 0 1px rgba(255,255,255,.06)}
html.dark .wrc-logo .wrc-light{display:none}
html.dark .wrc-logo .wrc-dark{display:block}
html.dark .wrc-aside{color:#fff;border-right-color:#374151;background:linear-gradient(160deg,#111827 0%,#173d33 55%,#1f6a4f 100%)}
html.dark .wrc-aside::before{background:#5FD8A6;opacity:.5}
html.dark .wrc-aside::after{background:#1F9D6B;opacity:.5}
html.dark .wrc-aside h3{color:#fff}
html.dark .wrc-aside .wrc-light{display:none}
html.dark .wrc-aside .wrc-dark{display:block}
html.dark .wrc-perks li{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.16)}
html.dark .wrc-perks svg{stroke:#fff}
html.dark .wrc-sport{color:#fff;border-top-color:rgba(255,255,255,.2);opacity:.65}
html.dark .wrc-input:hover,html.dark .wrc-select:hover,html.dark .wrc-area:hover{border-color:#4B5563}
html.dark .wrc-google:hover{border-color:#4B5563;box-shadow:none}

html.dark .wrc-alert{background:#3B1F1F;color:#FCA5A5;border-color:#6B2A2A}
html.dark .wrc-alert--ok{background:#16352A;color:#86E0B8;border-color:#245C46}
html.dark .wrc-err{color:#F87171}
html.dark .wrc-stars label{color:#4B5563}
html.dark .wrc-stars input:checked~label,html.dark .wrc-stars label:hover,html.dark .wrc-stars label:hover~label{color:#FFB400}
html.dark .wrc-success-ico{box-shadow:0 0 0 7px rgba(63,181,132,.12)}
html.dark .wrc-x:hover{background:#273244}
