.rf-hub{padding-bottom:calc(90px + env(safe-area-inset-bottom))}.rf-hub .top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:0 0 18px;border-bottom:1px solid var(--rf-line)}.rf-hub .brand{display:flex;align-items:center;gap:14px;text-decoration:none}.rf-hub .mark{width:54px;height:auto}.rf-hub .word{width:150px;height:auto}.rf-hub .who{display:flex;align-items:center;gap:10px}.rf-hub .me{display:flex;gap:10px;align-items:center;color:var(--rf-text);text-decoration:none;min-width:0}.rf-hub .me .rf-avatar{width:44px}.rf-hub .me b{display:block;max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.rf-hub .me small{display:block;color:var(--rf-muted);font-size:12px}.rf-hub .ib{position:relative}.rf-hub .ib svg{width:23px;height:23px}.rf-hub .dot{display:none;position:absolute;right:7px;top:7px;width:7px;height:7px;border-radius:50%;background:var(--rf-accent)}.rf-hub .dot.on{display:block}.rf-hub .hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:30px 0 24px}.rf-hub .hero h1{font-size:clamp(30px,4.5vw,48px);margin:0 0 10px;line-height:1.1;letter-spacing:-.04em}.rf-hub .hero p{color:var(--rf-muted);margin:0}.rf-hub .games{display:grid;gap:16px}.rf-hub .rf-game-row{min-height:190px}.rf-hub .rf-game-row>div{max-width:65%}.rf-hub .rf-game-row p{max-width:280px}.rf-hub .belot{background:radial-gradient(ellipse at 90% 25%,#185086,#08223c)}.rf-hub .belot>img{opacity:.32;filter:grayscale(1)}.rf-hub .belot .hub-cards{position:absolute;right:10%;max-width:none;bottom:20px;display:flex;pointer-events:none;z-index:-1}.hub-cards .rf-card{width:88px;height:127px;transform:rotate(-13deg)}.hub-cards .rf-card+ .rf-card{transform:translateY(7px) rotate(15deg);margin-left:-10px}.rf-hub .tabla{background:#37291e}.rf-hub .poker{background:#3d1828}.rf-hub .nesesardi{background:#123b3c}.rf-hub .friends{padding:28px 0 10px;scroll-margin-top:20px}.rf-hub .section-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px}.rf-hub .section-head h2{font-size:19px;margin:0}.rf-hub .faces{display:flex;gap:18px;align-items:center;flex-wrap:wrap;color:var(--rf-muted);font-size:14px}.rf-hub .face{display:grid;justify-items:center;gap:8px;max-width:120px;text-align:center;color:var(--rf-text);text-decoration:none;overflow-wrap:anywhere}.rf-hub .face .av{width:60px;height:60px;overflow:hidden;border-radius:var(--rf-avatar-radius);background:var(--rf-panel);display:grid;place-items:center}.rf-hub .face .av img,.rf-hub .face .av svg{width:100%;height:100%;object-fit:cover}.rf-bottom-nav{position:fixed;z-index:10;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:clamp(4px,5vw,65px);padding:9px 12px calc(10px + env(safe-area-inset-bottom));background:#071823f5;border-top:1px solid var(--rf-line);backdrop-filter:blur(14px)}.rf-bottom-nav a{min-height:48px;min-width:65px;display:grid;justify-items:center;gap:4px;padding:4px 8px;color:var(--rf-muted);text-decoration:none;font-size:12px}.rf-bottom-nav svg{width:23px;height:23px}.rf-bottom-nav .on{color:var(--rf-accent);border-bottom:2px solid var(--rf-accent)}.rf-hub .tbl{width:100%;border-collapse:collapse;font-size:13px}.rf-hub .tbl td,.rf-hub .tbl th{padding:10px 5px;border-bottom:1px solid var(--rf-line);text-align:left;overflow-wrap:anywhere}.rf-hub .tbl a{color:var(--rf-text)}.rf-hub .tbl th{font-weight:500;color:var(--rf-muted)}.rf-hub .rank-body{overflow-x:auto}.rf-hub .invite-games{display:grid;gap:10px}.rf-hub .invite-games a{justify-content:space-between}.rf-hub #bellPop .faces{margin:14px 0}.rf-hub #bellPop .faces img{width:44px;height:44px;border-radius:10px}.rf-hub #bellPop a{display:inline-flex;color:var(--rf-accent);min-height:44px;align-items:center}.rf-hub .toast{position:fixed;bottom:90px;left:50%;transform:translateX(-50%);width:min(440px,calc(100% - 32px));z-index:30;background:var(--rf-panel-raised);border:1px solid var(--rf-line);padding:14px 20px;border-radius:12px}
@media(min-width:900px){.rf-hub .games{grid-template-columns:1fr 1fr;gap:22px}.rf-hub .rf-game-row{min-height:225px}.rf-hub .rf-game-row>img{width:100%}.rf-hub .rf-game-row h2{font-size:32px}.rf-hub .rf-game-row>div{max-width:72%}.rf-hub .hero{padding:42px 0 32px}.rf-hub .friends{padding-top:32px}.rf-hub .belot .hub-cards{right:7%;bottom:30px}}
@media(max-width:520px){.rf-hub .top{gap:8px;padding-bottom:14px}.rf-hub .brand{gap:8px}.rf-hub .mark{width:39px}.rf-hub .word{width:108px}.rf-hub .who{gap:5px}.rf-hub .me>span:last-child{display:none}.rf-hub .me .rf-avatar{width:40px}.rf-hub .ib{width:40px;min-height:44px;padding:8px}.rf-hub .hero{padding:24px 0 20px;gap:12px;align-items:flex-start;flex-wrap:wrap}.rf-hub .hero h1{font-size:32px}.rf-hub .hero p{font-size:15px}.rf-hub .hero .rf-button{min-height:42px;font-size:13px;padding:9px 14px}.rf-hub .games{gap:12px}.rf-hub .rf-game-row{min-height:146px;padding:19px}.rf-hub .rf-game-row h2{font-size:27px}.rf-hub .rf-game-row>div{max-width:66%}.rf-hub .rf-game-row p{font-size:13px;max-width:165px}.rf-hub .rf-arrow{width:36px;height:36px}.rf-hub .belot .hub-cards{right:12%;bottom:18px}.hub-cards .rf-card{width:65px;height:96px;font-size:27px}.hub-cards .rf-card>span{font-size:30px}.rf-hub .section-head{flex-wrap:wrap}}
/* 00 portrait review: all four rows visible at 390x844, with >=46px actions. */
@media(max-width:520px){.rf-hub{padding-top:calc(14px + env(safe-area-inset-top))}.rf-hub .top{padding-bottom:10px}.rf-hub .hero{padding:18px 0 14px;gap:9px}.rf-hub .hero h1{font-size:29px;margin-bottom:7px}.rf-hub .hero .rf-button{min-height:46px}.rf-hub .rf-game-row{min-height:122px;padding:16px 18px}.rf-hub .games{gap:10px}.rf-hub .rf-game-row h2{font-size:25px;margin-bottom:6px}.rf-hub .rf-game-row p{font-size:12px}.rf-hub .belot .hub-cards{bottom:14px;right:13%}.hub-cards .rf-card{width:58px;height:86px;font-size:25px;padding:7px}.hub-cards .rf-card>span{font-size:26px;margin-top:5px}.rf-hub .rf-arrow{width:34px;height:34px}.rf-hub .friends{padding-top:22px}}
.rf-hub .rf-avatar img,.rf-hub .face .av img,.rf-hub #bellPop .faces img{transform:scale(1.48)}

/* Refined hub surfaces and optically stable navigation icons. */
.rf-hub .rf-game-row{border-color:#b5cee51f;box-shadow:inset 0 1px 0 #ffffff0b,0 8px 22px #00000020}
.rf-hub .rf-game-row h2{font-weight:750;letter-spacing:-.025em;text-shadow:0 2px 12px #0003}
.rf-hub .rf-game-row p{color:#c6d4df;line-height:1.5}
.rf-hub .rf-game-row .rf-arrow{flex:none;padding:0;line-height:0;color:#e1edf3;border-color:#c7dbe53b;background:#081824d9;box-shadow:inset 0 1px 0 #ffffff0b,0 3px 9px #0002}
.rf-hub .rf-arrow svg{display:block;width:20px;height:20px;overflow:visible}
.rf-hub .rf-game-row:focus-visible{outline:2px solid var(--rf-focus);outline-offset:3px}
.rf-hub .rf-game-row:hover{border-color:#a5c4d459;box-shadow:inset 0 1px 0 #ffffff14,0 12px 30px #0003}
.rf-hub .hero h1{font-weight:750;letter-spacing:-.045em}
.rf-hub .top{border-bottom-color:#adcbd31c}
.rf-hub .who .ib{background:#ffffff05;border-color:#c1dce425;box-shadow:inset 0 1px 0 #ffffff08}

/* One clear animated scene per game; static artwork remains the no-JS fallback. */
.rf-hub.rf-page .rf-motion-row>img,.rf-hub.rf-page .rf-motion-row:hover>img,.rf-hub.rf-page .rf-motion-row:focus-visible>img{opacity:0}
.rf-hub.rf-page .rf-motion-row::before{background:linear-gradient(90deg,#07131ff2 0%,#07131fcc 31%,#07131f22 75%)}
.rf-hub.rf-page .rf-motion-row.belot{background:radial-gradient(ellipse at 88% 35%,#234365,#0b1c2d 78%)}
.rf-hub.rf-page .rf-motion-row.tabla{background:radial-gradient(ellipse at 88% 35%,#584332,#201c1c 78%)}
.rf-hub.rf-page .rf-motion-row.poker{background:radial-gradient(ellipse at 88% 35%,#503346,#201a2a 78%)}
.rf-hub.rf-page .rf-motion-row.nesesardi{background:radial-gradient(ellipse at 88% 35%,#20524d,#0d2529 78%)}
.rf-hub.rf-page .rf-sc-mark{display:none}
.rf-hub.rf-page .rf-sc-halo{opacity:.1}
.rf-hub.rf-page .rf-sc-board{background:linear-gradient(135deg,#7e5c38,#513722 70%);border-color:#936a43;box-shadow:0 8px 18px #0006,inset 0 0 0 1px #e0b78066,inset 0 2px 8px #0004}
.rf-hub.rf-page .rf-sc-path{background:linear-gradient(160deg,#326859aa,#153e3bbb);border-color:#b8ddc52e;box-shadow:0 5px 14px #0003,inset 0 1px #c9edda18}
.rf-hub.rf-page .rf-sc-goal{opacity:.32;box-shadow:0 0 9px #68f3c84d}
