/* FRJudo 0.8.5: sticky navigation + calendar archive; no LIVE transport changes. */
:root{--frj-v85-header:74px;--frj-v85-tabs:63px}
.frj-topbar{position:sticky;top:0;z-index:85;box-shadow:0 2px 17px rgba(4,44,79,.055);backdrop-filter:saturate(160%) blur(18px)}
body.admin-bar .frj-topbar{top:32px}
/* Homepage keeps the transparent photo overlay, then becomes a sticky solid toolbar. */
body.home .frj-topbar{position:sticky;top:0;margin-bottom:calc(-1 * 86px);z-index:85;min-height:86px;flex:0 0 86px;transition:background .22s,box-shadow .22s;color:#fff}
body.home .frj-topbar.frj-v85-scrolled{background:rgba(252,254,255,.97)!important;box-shadow:0 8px 28px rgba(9,51,83,.10);pointer-events:auto}
body.home .frj-topbar.frj-v85-scrolled :is(.frj-top-frj,.frj-search-trigger){color:#0b4b7f}
body.admin-bar.home .frj-topbar{top:32px}
/* Competition navigation stays visible underneath the institutional header. */
.frj-v7-event-page{isolation:auto}
.frj-v7-event-nav{position:sticky!important;top:var(--frj-v85-header)!important;z-index:65!important;box-shadow:0 5px 22px rgba(19,58,95,.08);border-bottom:1px solid #d4e3f1!important;background:rgba(255,255,255,.98)!important;backdrop-filter:blur(13px)}
body.admin-bar .frj-v7-event-nav{top:calc(var(--frj-v85-header) + 32px)!important}
.frj-v7-event-nav a{border-radius:12px!important}
.frj-v7-event-nav a.frj-v85-section-active{background:#e1f0fc;color:#065d9f;border-color:#8ec6ec;box-shadow:inset 0 -2px 0 #086db4}
.frj-v7-event-page :is(#frj-competition-live,#frj-documents,#frj-registration,#frj-event-information){scroll-margin-top:calc(var(--frj-v85-header) + var(--frj-v85-tabs) + 16px)}
/* The module's four tabs can stick inside a tall DRAW/Contest Order section too. */
.frj-v7-live-surface .jnlive-root.jnlive-frjudo .jnlive-nav{position:sticky!important;top:calc(var(--frj-v85-header) + var(--frj-v85-tabs))!important;z-index:40!important;background:rgba(247,251,255,.98)!important;box-shadow:0 4px 18px rgba(9,43,77,.075)!important;backdrop-filter:blur(12px)}
body.admin-bar .frj-v7-live-surface .jnlive-root.jnlive-frjudo .jnlive-nav{top:calc(var(--frj-v85-header) + var(--frj-v85-tabs) + 32px)!important}
/* Calendar and archive: year selector -> month strip -> event catalogue. */
.frj-v85-archive-page{background:linear-gradient(180deg,#eaf4fd 0,#f5f9fd 420px,#f5f9fd 100%);min-height:calc(100vh - 150px);padding-bottom:64px;color:#153650}
.frj-v85-archive-lead{padding:clamp(26px,3.5vw,54px) clamp(16px,3vw,56px) 20px;background:linear-gradient(130deg,#0a3d70,#086db4);color:#fff}
.frj-v85-archive-overline{font-size:11px;font-weight:830;letter-spacing:.13em;color:#c7e3ff;display:flex;gap:10px;align-items:center}
.frj-v85-archive-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin:16px 0 23px}
.frj-v85-archive-heading h1{font-size:clamp(31px,4.8vw,65px);font-weight:860;line-height:1.08;letter-spacing:-.045em;margin:0 0 11px;color:#fff}
.frj-v85-archive-heading p{max-width:760px;color:#deefff;font-size:clamp(14px,1.15vw,17px);margin:0;line-height:1.6}
.frj-v85-archive-counter{white-space:nowrap;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);padding:12px 17px;border-radius:15px;color:#eaf6ff;font-size:12px}
.frj-v85-archive-counter strong{font-size:25px;color:#fff;margin-right:5px}
.frj-v85-year-rail{display:flex;align-items:center;gap:4px;overflow-x:auto;padding:5px 0 8px;scrollbar-width:thin;overscroll-behavior-inline:contain}
.frj-v85-year-rail a{flex:none;min-width:60px;text-align:center;border-radius:10px;padding:10px 12px;color:#d6edff;font-weight:730;font-size:13px;border:1px solid transparent;transition:background .15s,color .15s}
.frj-v85-year-rail a:first-child{min-width:100px}
.frj-v85-year-rail a:hover,.frj-v85-year-rail a:focus-visible{background:rgba(255,255,255,.16);color:#fff;text-decoration:none}
.frj-v85-year-rail a.is-selected{background:#fff;color:#0d5994;border-color:#fff;box-shadow:0 4px 14px rgba(0,25,56,.12)}
.frj-v85-archive-controls{padding:18px clamp(16px,3vw,56px) 8px}
.frj-v85-months{display:flex;align-items:center;gap:5px;overflow-x:auto;white-space:nowrap;padding:1px 0 14px;scrollbar-width:thin}
.frj-v85-months a{flex:none;border:1px solid transparent;color:#59738a;font-size:12px;font-weight:760;padding:9px clamp(9px,1.1vw,16px);border-radius:10px;transition:background .15s,color .15s}
.frj-v85-months a:hover,.frj-v85-months a:focus-visible{color:#0b548e;background:#e2f0fd}
.frj-v85-months a.is-selected{background:#d7eafd;color:#0a5a98;border-color:#bdd9f0}
.frj-v85-archive-filter{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:7px 0 10px}
.frj-v85-search{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #cee0f0;border-radius:12px;padding:0 14px;flex:1 1 270px;max-width:600px;min-height:46px}
.frj-v85-search .frj-icon{color:#6395b7;width:19px;height:19px}
.frj-v85-search input{border:0;background:transparent;outline:0;flex:1;min-width:0;font-size:14px;color:#153650;padding:11px 0}
.frj-v85-search:focus-within{box-shadow:0 0 0 3px rgba(8,109,180,.13);border-color:#71aee1}
.frj-v85-select-label{font-size:12px;font-weight:750;color:#456781}
.frj-v85-archive-filter select{min-height:46px;background:#fff;border:1px solid #cee0f0;border-radius:12px;padding:8px 11px;color:#1b4c70;font-size:13px}
.frj-v85-archive-filter button{min-height:46px;cursor:pointer;color:#fff;background:#086db4;border:1px solid #086db4;border-radius:12px;font-size:13px;font-weight:780;padding:9px 20px;transition:background .17s,transform .17s}
.frj-v85-archive-filter button:hover{background:#064d83;transform:translateY(-1px)}
.frj-v85-archive-results{padding:14px clamp(16px,3vw,56px)}
.frj-v85-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}
.frj-v85-event-card{min-width:0;background:#fff;border:1px solid #d9e6f2;border-radius:18px;overflow:hidden;box-shadow:0 7px 24px rgba(6,58,100,.055);transition:transform .2s,box-shadow .2s,border-color .2s}
.frj-v85-event-card:hover,.frj-v85-event-card:focus-within{transform:translateY(-4px);border-color:#8fbee2;box-shadow:0 16px 38px rgba(6,58,100,.13)}
.frj-v85-event-card>a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit}
.frj-v85-event-card>a:focus-visible{outline:3px solid #086db4;outline-offset:-3px}
.frj-v85-event-photo{position:relative;height:190px;background:linear-gradient(130deg,#073d73,#2a84bf);overflow:hidden}
.frj-v85-event-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.frj-v85-event-card:hover img{transform:scale(1.04)}
.frj-v85-photo-placeholder{display:grid;height:100%;place-items:center;color:#b0d6f2;font-size:24px;letter-spacing:.12em;font-weight:900}
.frj-v85-date-block{position:absolute;left:14px;top:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:54px;min-height:62px;background:#fff;color:#0d568c;border-radius:11px;border:1px solid #d9e9f5;box-shadow:0 5px 15px rgba(4,32,64,.14)}
.frj-v85-date-block strong{font-size:24px;line-height:1.05}.frj-v85-date-block span{font-size:10px;font-weight:800;letter-spacing:.09em}
.frj-v85-event-copy{display:flex;flex-direction:column;align-items:start;gap:9px;padding:19px;flex:1}
.frj-v85-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:#68859c;font-size:11px;font-weight:700}
.frj-v85-status{border-radius:999px;font-weight:830;font-size:10px;padding:6px 9px;background:#dcebf7;color:#1f5d88}
.frj-v85-status-live{background:#dcf8e9;color:#087647}.frj-v85-status-upcoming{background:#edf5ff;color:#2468a0}.frj-v85-status-finished{background:#edf1f5;color:#4d657a}
.frj-v85-event-copy h2{margin:0;color:#163958;font-size:clamp(18px,1.35vw,22px);font-weight:820;letter-spacing:-.026em;line-height:1.22}
.frj-v85-event-copy p{margin:0;color:#607e96;font-size:12px;line-height:1.5}
.frj-v85-visit{margin-top:auto;padding-top:9px;display:flex;align-items:center;gap:7px;color:#0870b4;font-size:12px;font-weight:800}
.frj-v85-visit .frj-icon{width:16px;height:16px;transition:transform .2s}.frj-v85-event-card:hover .frj-v85-visit .frj-icon{transform:translateX(4px)}
.frj-v85-no-results{padding:clamp(25px,5vw,70px);background:#fff;border:1px solid #d9e7f3;border-radius:18px;text-align:center;color:#5b7990}
.frj-v85-no-results .frj-icon{color:#0c75b9;width:35px;height:35px}.frj-v85-no-results h2{color:#133e5d;font-size:clamp(19px,2vw,26px)}
.frj-v85-no-results a{color:#0b68a4;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.frj-v85-pagination{display:flex;flex-wrap:wrap;gap:8px;margin:23px 0}.frj-v85-pagination .page-numbers{display:inline-flex;padding:9px 14px;background:#fff;border:1px solid #cfe1ee;border-radius:10px;color:#0c4e7b;font-weight:720}.frj-v85-pagination .page-numbers.current{background:#0b66a5;color:#fff}
@media(max-width:1180px){.frj-v85-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){:root{--frj-v85-header:64px;--frj-v85-tabs:61px}
 .frj-topbar{z-index:85}.frj-v7-event-nav{top:64px!important;flex-wrap:nowrap;overflow-x:auto}.frj-v7-event-nav a{white-space:nowrap;flex:0 0 auto}
 .frj-v7-live-surface .jnlive-root.jnlive-frjudo .jnlive-nav{top:calc(64px + 61px)!important}
 body.admin-bar .frj-topbar{top:46px}body.admin-bar .frj-v7-event-nav{top:110px!important}
 body.admin-bar .frj-v7-live-surface .jnlive-root.jnlive-frjudo .jnlive-nav{top:171px!important}
 body.home .frj-topbar{flex-basis:64px;min-height:64px;margin-bottom:-64px}
 .frj-v85-archive-heading{flex-direction:column;align-items:start;gap:12px}.frj-v85-archive-counter{padding:7px 11px;font-size:11px}.frj-v85-archive-counter strong{font-size:18px}
 .frj-v85-year-rail a{min-width:55px;padding:9px 11px}.frj-v85-archive-controls{padding-top:13px}
 .frj-v85-archive-filter{align-items:stretch}.frj-v85-search{flex-basis:100%;max-width:none}.frj-v85-archive-filter button{flex:1 1 100%}
 .frj-v85-archive-grid{grid-template-columns:minmax(0,1fr);gap:14px}.frj-v85-event-photo{height:190px}.frj-v85-event-copy{padding:16px}
}
@media(prefers-reduced-motion:reduce){.frj-v85-event-card,.frj-v85-event-photo img,.frj-v85-event-card .frj-icon{transition:none!important}}
/* Keep horizontal year/month scrolling inside their own navigators, not the document. */
.frj-v85-archive-page{overflow-x:clip}
@media(max-width:650px){
 .frj-topbar{max-width:100%;min-width:0;gap:7px}
 .frj-topbar-identity,.frj-topbar-label{min-width:0;flex:1 1 auto}
 .frj-topbar-label strong{overflow-wrap:anywhere}
 .frj-topbar-actions{min-width:0;flex:0 0 auto}
 .frj-top-frj{width:43px;min-width:43px;padding:0;justify-content:center}
 .frj-top-frj span{display:none!important}
}


/* FRJudo V8.5.1 — institutional header visual-only polish.
   No translation, navigation, LIVE or server logic changes. */
.frj-topbar{
  background:rgba(255,255,255,.79);
  -webkit-backdrop-filter:saturate(155%) blur(18px);
  backdrop-filter:saturate(155%) blur(18px);
  border-bottom-color:rgba(181,204,227,.58);
}
body.home .frj-topbar.frj-v85-scrolled{
  background:rgba(250,253,255,.83)!important;
}
/* Persistent white text and icons on the blue external-site button. */
.frj-topbar a.frj-top-frj,
.frj-topbar a.frj-top-frj:link,
.frj-topbar a.frj-top-frj:visited,
.frj-topbar a.frj-top-frj:hover,
.frj-topbar a.frj-top-frj:active,
.frj-topbar a.frj-top-frj:focus,
.frj-topbar a.frj-top-frj:focus-visible,
body.home .frj-topbar.frj-v85-scrolled a.frj-top-frj{
  background:var(--frj-primary,#086DB4)!important;
  border-color:var(--frj-primary,#086DB4)!important;
  color:#fff!important;
}
.frj-topbar a.frj-top-frj:is(:hover,:focus-visible){
  background:#07558e!important;
  border-color:#07558e!important;
  color:#fff!important;
  box-shadow:0 7px 20px rgba(7,85,142,.19);
}
.frj-topbar a.frj-top-frj :is(span,svg,svg *){
  color:#fff!important;
  stroke:currentColor;
}
