/* FRJudo Portal V7: full-width event experience and document library. No modification to the official Competition renderer. */
.frj-footer-v7{display:flex;justify-content:space-between;align-items:center;min-height:64px;padding:16px clamp(16px,2vw,36px);gap:12px;font-size:11px}
.frj-footer-v7 span:last-child{color:#7990a6}
.frj-topbar-identity{display:flex;align-items:center;gap:10px;min-width:0}
.frj-mobile-crest{display:none;flex:0 0 auto;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid #dce8f3;border-radius:11px;background:#f0f7fd;color:var(--frj-primary);font-size:11px;font-weight:900}
.frj-mobile-crest img{width:31px;height:31px;object-fit:contain;display:block}
.frj-v7-hero{min-height:clamp(220px,25vw,340px);padding:clamp(22px,3vw,48px) clamp(18px,3.2vw,66px) clamp(30px,4vw,58px);background:#0a294b}
.frj-v7-hero:before{background-image:linear-gradient(90deg,rgba(3,22,43,.95),rgba(7,37,70,.72),rgba(7,37,70,.36)),var(--frj-hero-image,linear-gradient(120deg,#0b294b,#1e6095))}
.frj-v7-hero-copy h1{max-width:1120px;font-size:clamp(32px,4.1vw,66px);letter-spacing:-.048em;line-height:1.11;margin:18px 0 10px}
.frj-v7-hero-subtitle{color:#d9e9f7;font-size:clamp(12px,1vw,14px);margin:0}
.frj-v7-event-page{width:100%;min-width:0;background:linear-gradient(#f4f8fc,#f9fbfe);padding-bottom:55px}
.frj-v7-event-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px clamp(9px,1.4vw,24px);position:relative;background:#fff;border-bottom:1px solid #dbe7f3;z-index:3}
.frj-v7-event-nav a{display:inline-flex;align-items:center;min-height:44px;padding:10px 16px;border-radius:999px;background:#f2f7fc;border:1px solid #e1edf7;color:#274a6c;font-weight:780;font-size:12px;transition:background .18s,border-color .18s,box-shadow .18s,color .18s}
.frj-v7-event-nav a:hover,.frj-v7-event-nav a:focus-visible{background:#dbedff;color:#075e9d;border-color:#8bc1ea;box-shadow:inset 0 -2px 0 #086db4;text-decoration:none}
.frj-v7-live-wide{width:100%;max-width:none!important;min-width:0;padding:clamp(10px,.8vw,18px) clamp(5px,.6vw,12px) 22px;background:#eaf2fa;scroll-margin-top:24px}
.frj-v7-live-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:5px clamp(10px,1.25vw,24px) 17px}
.frj-v7-live-heading h2{margin:4px 0 0;color:#0c2b4c;font-size:clamp(20px,2vw,28px);letter-spacing:-.032em}
.frj-v7-live-indicator{font-size:10px;font-weight:850;letter-spacing:.09em;color:#087650;background:#d8f9e9;border:1px solid #ace4cb;border-radius:999px;padding:8px 14px}
.frj-v7-live-surface,.frj-v7-live-surface .jnlive-root,.frj-v7-live-surface .jnlive-shell{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important}
.frj-v7-live-standby{padding:clamp(24px,3vw,52px);background:linear-gradient(115deg,#dcebf8,#f1f7fd);border:1px solid #d1e3f2;border-radius:16px;margin:0 clamp(6px,1vw,18px)}
.frj-v7-live-standby h2{font-size:clamp(22px,2.5vw,35px);margin:9px 0;color:#103558}
.frj-v7-live-standby p{color:#60788d;max-width:720px}
.frj-v7-editorial{width:100%;max-width:none;min-width:0;padding:clamp(16px,2.2vw,38px) clamp(12px,2vw,40px) 0}
.frj-v7-content-section{min-width:0;scroll-margin-top:26px;background:#fff;border:1px solid #dfeaf5;border-radius:19px;padding:clamp(22px,2.5vw,40px);box-shadow:0 12px 32px rgba(8,42,78,.045)}
.frj-v7-content-section h2{font-size:clamp(22px,2vw,31px);margin:8px 0 16px;color:#102f50;font-weight:810;letter-spacing:-.035em}
.frj-v7-section-heading p,.frj-v7-content-section p{color:#5a738a;line-height:1.6}
.frj-v7-section-heading p{margin:0 0 22px}
.frj-v7-doc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,310px),1fr));gap:13px}
.frj-v7-doc-card{display:flex;align-items:center;gap:15px;min-width:0;min-height:94px;padding:16px;border:1px solid #dce9f5;border-radius:15px;background:#f7fbff;text-decoration:none;color:#173550;transition:transform .18s,background .18s,box-shadow .18s,border-color .18s}
.frj-v7-doc-card:hover,.frj-v7-doc-card:focus-visible{transform:translateY(-3px);background:#e9f5ff;border-color:#75b2e0;box-shadow:0 12px 28px rgba(8,86,148,.13);text-decoration:none}
.frj-v7-doc-type{display:grid;place-items:center;flex:0 0 57px;width:57px;height:55px;border-radius:11px;background:#e0edf8;color:#135f92;font-size:11px;font-weight:880;letter-spacing:.04em}
.frj-v7-doc-xlsx,.frj-v7-doc-xls,.frj-v7-doc-csv{background:#dcf3e9;color:#116545}
.frj-v7-doc-pdf{background:#ffebea;color:#9c2b35}
.frj-v7-doc-doc,.frj-v7-doc-docx{background:#e0e9fd;color:#244b98}
.frj-v7-doc-copy{display:flex;flex-direction:column;min-width:0;gap:5px;flex:1}
.frj-v7-doc-copy strong{font-size:14px;line-height:1.35;color:#133652;overflow-wrap:anywhere}
.frj-v7-doc-copy small{font-size:11px;color:#67829b}
.frj-v7-doc-action{color:#076aae;transition:transform .18s}
.frj-v7-doc-action .frj-icon{width:20px;height:20px}
.frj-v7-doc-card:hover .frj-v7-doc-action{transform:translate(2px,-2px)}
.frj-v7-empty-docs{margin:0}
.frj-v7-info-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}
.frj-v7-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:20px 0}
.frj-v7-info-grid>div{border-radius:12px;background:#f0f7fe;padding:14px}
.frj-v7-info-grid dt{color:#6e8397;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.frj-v7-info-grid dd{margin:8px 0 0;font-size:13px;font-weight:720;color:#173b5d;overflow-wrap:anywhere}
.frj-v7-description{border-top:1px solid #e2ebf5;padding-top:16px;margin-top:16px;color:#526c82}
.frj-v7-detail-line{margin:12px 0 16px}
.frj-v7-content-section .frj-reg-button{display:inline-flex;align-items:center;gap:10px;background:#086db4;color:#fff;border-radius:11px;padding:13px 19px;text-decoration:none;font-size:13px;font-weight:750;transition:background .18s,transform .18s}
.frj-v7-content-section .frj-reg-button:hover,.frj-v7-content-section .frj-reg-button:focus-visible{background:#074c7e;transform:translateY(-2px)}
@media(max-width:900px){.frj-v7-info-columns{grid-template-columns:1fr}.frj-v7-hero{min-height:270px}}
@media(max-width:650px){.frj-mobile-crest{display:flex}.frj-topbar-label strong{font-size:9px;line-height:1.26}.frj-topbar-label span{font-size:9px;line-height:1.25}.frj-v7-hero{min-height:245px;padding:22px 17px 36px}.frj-v7-hero-copy h1{font-size:clamp(30px,8vw,46px)}.frj-v7-event-nav{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;padding:10px}.frj-v7-event-nav a{flex:0 0 auto;font-size:11px;white-space:nowrap;padding:9px 13px;min-height:40px}.frj-v7-live-wide{padding:7px 4px 14px}.frj-v7-live-heading{margin:9px 9px 14px}.frj-v7-live-heading h2{font-size:19px}.frj-v7-editorial{padding:12px 8px 0}.frj-v7-content-section{padding:22px 16px;border-radius:15px}.frj-v7-doc-grid{grid-template-columns:1fr}.frj-v7-doc-card{min-height:82px;padding:11px;gap:10px}.frj-v7-doc-type{width:46px;flex-basis:46px;height:48px}.frj-v7-info-grid{grid-template-columns:1fr}.frj-footer-v7{align-items:flex-start;flex-direction:column;gap:5px;padding:16px}}
@media(prefers-reduced-motion:reduce){.frj-v7-doc-card,.frj-v7-event-nav a{transition:none!important}}

/* FRJudo V7c: no crest on the homepage mobile hero; retain it on inner pages. */
@media (max-width:650px){body.home .frj-topbar .frj-mobile-crest,body.front-page .frj-topbar .frj-mobile-crest{display:none!important}}

/* V7c institutional long-form content / official document links. */
.frj-v7-description.frj-prose{max-width:none;line-height:1.75;font-size:clamp(14px,1.02vw,16px)}
.frj-v7-description.frj-prose :is(h2,h3,h4){color:#0b2b4b;letter-spacing:-.025em;line-height:1.24;margin:1.35em 0 .55em}
.frj-v7-description.frj-prose h2{font-size:clamp(21px,1.9vw,28px)}
.frj-v7-description.frj-prose h3{font-size:clamp(18px,1.5vw,22px)}
.frj-v7-description.frj-prose a:not(.wp-block-button__link){display:inline-flex;align-items:center;min-height:34px;padding:3px 7px;margin:-3px -7px;border-radius:8px;transition:background .18s,color .18s,box-shadow .18s;text-decoration-thickness:1px}
.frj-v7-description.frj-prose a:hover,.frj-v7-description.frj-prose a:focus-visible{color:#064c8c;background:#e5f3ff;box-shadow:0 0 0 2px #a4d5fa;outline:0}
.frj-v7-description.frj-prose .wp-block-file{padding:15px 18px;border:1px solid #d7e6f3;border-radius:13px;background:#f4f9fd}
.frj-v7-description.frj-prose .wp-block-file a.wp-block-file__button{background:#086db4;color:white;border:0;border-radius:10px;font-size:13px;font-weight:800;min-height:40px;padding:10px 16px}
.frj-v7-description.frj-prose .wp-block-file a.wp-block-file__button:hover,.frj-v7-description.frj-prose .wp-block-file a.wp-block-file__button:focus-visible{background:#07558c;box-shadow:0 0 0 3px #b2dffe}
.frj-v7-description.frj-prose :is(table,.wp-block-table table){max-width:100%;border-collapse:collapse;font-size:14px;width:100%}
.frj-v7-description.frj-prose :is(th,td){border:1px solid #d6e5f1;padding:11px 13px;vertical-align:top;text-align:left}
.frj-v7-description.frj-prose th{background:#eaf5fc;color:#143655}
.frj-v7-description.frj-prose .wp-block-table{overflow-x:auto;max-width:100%}
@media(prefers-reduced-motion:reduce){.frj-v7-description.frj-prose a{transition:none}}

.frj-v7-description.frj-prose .wp-block-image img{height:auto;max-width:100%;border-radius:14px;border:1px solid #d9e8f3}
.frj-v7-description.frj-prose .wp-block-quote{margin:1.2em 0;padding:14px 18px;border-left:4px solid var(--frj-primary);background:#f3f9fd;border-radius:0 10px 10px 0}
.frj-v7-description.frj-prose .wp-block-buttons .wp-block-button__link{background:var(--frj-primary);color:#fff;padding:12px 19px;border-radius:12px;text-decoration:none;font-weight:800}
.frj-v7-description.frj-prose .wp-block-buttons .wp-block-button__link:hover,.frj-v7-description.frj-prose .wp-block-buttons .wp-block-button__link:focus-visible{background:#07558c;box-shadow:0 0 0 3px #b2dffe}

/* FRJudo V7d — native, single LIVE surface on competition pages. */
.frj-v7-live-wide.frj-v7-live-active{padding:0;background:transparent}
.frj-v7-live-wide.frj-v7-live-idle{background:transparent;padding:clamp(10px,1.2vw,20px) clamp(10px,1.5vw,24px)}
.frj-v7-live-wait{display:flex;align-items:center;gap:12px;min-height:66px;padding:16px 20px;background:#f1f7fc;border:1px solid #dceaf5;border-radius:13px;color:#496982;font-size:13px;line-height:1.5}
.frj-v7-live-wait-icon{flex:0 0 8px;width:8px;height:8px;background:#7faeca;border-radius:50%}
.frj-v7-live-active .frj-v7-live-surface{padding:0;overflow:visible}
.frj-v7-live-surface .frj-live-quiet{margin:8px 0;color:#496982}
@media(max-width:650px){.frj-v7-live-wide.frj-v7-live-idle{padding:8px}.frj-v7-live-wait{min-height:54px;padding:12px 15px;font-size:12px}}
