body.enruta-facilitator-screen { margin: 0 !important; background: #eaf0f6 !important; color: #102d48; font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
body.enruta-facilitator-screen .site-header, body.enruta-facilitator-screen .site-footer,
body.enruta-facilitator-screen #masthead, body.enruta-facilitator-screen #colophon,
body.enruta-facilitator-screen header.wp-block-template-part, body.enruta-facilitator-screen footer.wp-block-template-part,
body.enruta-facilitator-screen .wp-site-blocks > header, body.enruta-facilitator-screen .wp-site-blocks > footer,
body.enruta-facilitator-screen .elementor-location-header, body.enruta-facilitator-screen .elementor-location-footer { display: none !important; }
body.enruta-facilitator-screen main, body.enruta-facilitator-screen article, body.enruta-facilitator-screen .entry-content,
body.enruta-facilitator-screen .wp-block-post-content, body.enruta-facilitator-screen .elementor { max-width: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
body.enruta-facilitator-screen .entry-header, body.enruta-facilitator-screen .entry-footer, body.enruta-facilitator-screen .page-header { display: none !important; }
body.enruta-facilitator-screen #page, body.enruta-facilitator-screen .site, body.enruta-facilitator-screen .site-content,
body.enruta-facilitator-screen .content-area, body.enruta-facilitator-screen .site-main { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
body.enruta-facilitator-screen #secondary, body.enruta-facilitator-screen .widget-area, body.enruta-facilitator-screen .sidebar { display:none !important; }
body.enruta-facilitator-screen main.er-public-screen { width:100vw !important; max-width:none !important; position:relative !important; left:50% !important; margin-left:-50vw !important; padding:30px clamp(24px,4vw,76px) 22px !important; }
.er-public-screen { --ink:#102d48; --blue:#0b63ce; --teal:#0aa4a6; --yellow:#f4c542; min-height:100vh; box-sizing:border-box; padding:30px clamp(24px,4vw,76px) 22px; overflow:hidden; background:radial-gradient(ellipse at 90% 0%,#d9f5f5 0,transparent 34%),linear-gradient(135deg,#f6f9fc,#edf3f8); color:var(--ink); }
.er-public-screen * { box-sizing:border-box; }
.er-display-header { min-height:112px; display:grid; grid-template-columns:minmax(150px,220px) 1fr minmax(130px,190px); align-items:center; gap:28px; padding:0 0 21px; border-bottom:1px solid #d4e0e9; }
.er-display-header img { display:block; max-width:100%; object-fit:contain; }
.er-display-hr { width:min(100%,210px); max-height:65px; }
.er-display-logo { justify-self:end; width:min(100%,180px); max-height:82px; }
.er-display-heading { text-align:center; }
.er-display-heading > span { color:#187fa2; font-size:13px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.er-display-heading h1 { margin:4px 0 0; color:var(--ink); font-size:clamp(34px,3vw,54px); line-height:1.05; letter-spacing:-.045em; }
.er-display-heading p { margin:8px 0 0; color:#627b8e; font-size:clamp(15px,1.25vw,21px); }
.er-display-gallery { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; padding:24px 0; }
.er-display-model { min-width:0; overflow:hidden; border:1px solid #dbe5ed; border-radius:18px; background:#fff; box-shadow:0 8px 24px #163b5610; }
.er-display-model > img { display:block; width:100%; height:clamp(180px,25vh,330px); object-fit:cover; background:#dfeaf1; }
.er-display-model > div { padding:16px 19px 18px; }
.er-display-model h2 { margin:0 0 2px; font-size:21px; }
.er-display-model small { color:#59738a; font-size:13px; font-weight:700; }
.er-display-model p { margin:9px 0 0; color:#3f586d; font-size:16px; line-height:1.4; }
.er-display-routes { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:17px; padding:22px 0; }
.er-display-route { min-width:0; overflow:hidden; border:1px solid #d7e2eb; border-radius:17px; background:#fff; box-shadow:0 7px 22px #163b560c; }
.er-display-route > header { min-height:125px; padding:17px 20px; background:linear-gradient(120deg,#e1f4f5,#eef5fb 72%,#f7f9fb); border-bottom:1px solid #dce6ed; }
.er-display-route > header > span { color:#087f83; font-size:11px; font-weight:850; letter-spacing:.12em; }
.er-display-route > header h2 { margin:6px 0; font-size:22px; line-height:1.1; }
.er-display-route > header p { margin:0; color:#5f7486; font-size:14px; line-height:1.35; }
.er-display-route-groups { padding:4px 18px 14px; }
.er-display-route-group { padding:10px 0 3px; border-bottom:1px solid #e9eef2; }
.er-display-route-group:last-child { border:0; }
.er-display-route-group h3 { margin:0 0 6px; color:#147f86; font-size:15px; }
.er-display-route-group h3 small { display:inline-grid; min-width:21px; height:21px; place-items:center; margin-left:4px; border-radius:50%; background:#e9f6f5; font-size:11px; }
.er-display-route-group ul, .er-display-table ul { display:grid; gap:7px; margin:0; padding:0; list-style:none; }
.er-display-route-group li { padding:7px 9px; border-radius:9px; background:#f5f8fa; }
.er-display-route-group li b { display:block; margin-bottom:2px; color:#29465e; font-size:12px; }
.er-display-route-group li span { display:block; color:#526a7e; font-size:13px; line-height:1.35; }
.er-display-muted { margin:0; color:#95a4af; font-size:13px; }
.er-display-tables { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:start; gap:20px; padding:28px 0; }
.er-display-table { position:relative; min-width:0; padding:24px; border:1px solid #d7e2eb; border-radius:18px; background:#fff; box-shadow:0 8px 24px #163b5610; }
.er-display-table h2 { max-width:calc(100% - 54px); margin:0 0 17px; font-size:24px; line-height:1.15; }
.er-display-count { position:absolute; top:18px; right:19px; display:grid; width:42px; height:42px; place-items:center; border-radius:50%; background:#fff4cc; color:#7b5c09; font-size:20px; }
.er-display-table li { display:flex; flex-direction:column; gap:2px; padding:11px 12px; border-radius:10px; background:#f3f7fa; }
.er-display-table li b { font-size:16px; }
.er-display-table li span { color:#637a8c; font-size:13px; }
.er-display-leaderboard { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); align-content:start; gap:10px 18px; padding:22px 0; }
.er-display-rank { min-width:0; display:grid; grid-template-columns:54px minmax(0,1fr) auto auto; align-items:center; gap:15px; min-height:76px; padding:10px 17px; border:1px solid #dae4ec; border-radius:14px; background:#fff; }
.er-display-rank:nth-child(1) { border-color:#e7c653; background:linear-gradient(100deg,#fff7dc,#fff); }
.er-display-place { color:#168c8d; font-size:25px; text-align:center; }
.er-display-rank h2 { overflow:hidden; margin:0; font-size:19px; text-overflow:ellipsis; white-space:nowrap; }
.er-display-rank div span { display:block; overflow:hidden; color:#6e8292; font-size:13px; text-overflow:ellipsis; white-space:nowrap; }
.er-display-points { color:#0c5fb8; font-size:25px; white-space:nowrap; }
.er-display-points small { font-size:12px; }
.er-display-challenges { color:#718596; font-size:12px; white-space:nowrap; }
.er-display-empty { grid-column:1/-1; padding:40px; border:1px dashed #b8ccd8; border-radius:16px; color:#6c8495; font-size:22px; text-align:center; }
.er-display-footer { display:flex; justify-content:space-between; gap:20px; padding-top:13px; border-top:1px solid #d4e0e9; color:#728697; font-size:12px; }
@media (max-width:1100px) { .er-display-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.er-display-routes,.er-display-tables{grid-template-columns:repeat(2,minmax(0,1fr))}.er-display-header{grid-template-columns:140px 1fr 125px;gap:16px} }
@media (max-width:700px) { body.enruta-facilitator-screen main.er-public-screen{padding:16px !important}.er-display-header{grid-template-columns:1fr 1fr;gap:10px}.er-display-hr{width:145px}.er-display-logo{width:120px}.er-display-heading{grid-column:1/-1;grid-row:2}.er-display-heading h1{font-size:32px}.er-display-gallery,.er-display-routes,.er-display-tables,.er-display-leaderboard{grid-template-columns:1fr}.er-display-rank{grid-template-columns:40px minmax(0,1fr) auto;gap:9px}.er-display-challenges{grid-column:2/-1}.er-display-footer{font-size:10px} }
@media print { body.enruta-facilitator-screen .er-public-screen{min-height:0;overflow:visible}.er-display-model,.er-display-route,.er-display-table,.er-display-rank{break-inside:avoid} }
