/* « Le Royaume en ce moment » — bloc vivant de l'accueil. Noir, or, violet. */
.rv{max-width:1400px;margin:10px auto 0}
.rv .rv-kicker{text-align:center;margin-top:50px}
.rv .royal-section-title{margin-top:12px}
.rv-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.rv-card{position:relative;display:flex;flex-direction:column;min-height:300px;padding:28px 28px 24px;box-sizing:border-box;border:1px solid #b38c54;background:radial-gradient(ellipse at 15% 0%,#3a174a99,transparent 60%),linear-gradient(160deg,#1f1029,#0e0914);box-shadow:inset 0 0 0 6px #08060c,inset 0 0 0 7px #a9864c44,0 15px 35px #0009;color:#e4d6ea}
.rv-card .rv-body{display:flex;flex-direction:column;flex:1}
.rv-label{margin:0 0 14px;font:600 11px var(--tk-font-body,system-ui);letter-spacing:.22em;text-transform:uppercase;color:#dcb975}
.rv-card h3{margin:4px 0 8px;font:normal 25px/1.25 var(--tk-font-title,Georgia);color:#f4d397;overflow-wrap:anywhere}
.rv-muted{margin:0;font-size:13px;line-height:1.6;color:#bfaecb}
.rv-sub{margin-top:18px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#a993b6}
.rv-game{margin:0;font-size:15px;color:#e9c987}
.rv-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:18px}
.rv-actions .royal-link{padding:11px 16px;font-size:13px;cursor:pointer}
.rv-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:6px}
.rv-list li{display:flex;align-items:center;gap:10px;min-width:0;font-size:13px;color:#dccde3}
.rv-list li span,.rv-list li a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rv-list button{flex:none;width:30px;height:30px;border:1px solid #b38c54;border-radius:50%;background:#24102d;color:#f4d397;font-size:11px;cursor:pointer;transition:background .2s,box-shadow .2s}
.rv-list button:hover,.rv-list button:focus-visible{background:#3c1c4a;box-shadow:0 0 12px #e6b55355}
.rv-links li{flex-direction:column;align-items:flex-start;gap:2px}
.rv-links a{color:#f0d79c;text-decoration:none}
.rv-links a:hover{text-decoration:underline;text-underline-offset:4px}
.rv-links small{font-size:11px;color:#a993b6}
.rv-more{margin-top:16px;font-size:12px;color:#ffdc8e;text-decoration:none;border-top:1px solid #b38c5455;padding-top:12px}
.rv-more:hover{color:#fff1ca}
.rv-fm .rv-actions{margin-top:6px;padding-top:10px}
/* Live en cours : la carte s'illumine. */
.rv-live.is-live{border-color:#ff5d7a;box-shadow:inset 0 0 0 6px #08060c,inset 0 0 0 7px #ff5d7a55,0 0 35px #ff3d6a33,0 15px 35px #0009}
.rv-onair{display:flex;align-items:center;gap:9px;margin:0;font:700 12px var(--tk-font-body,system-ui);letter-spacing:.18em;text-transform:uppercase;color:#ff8da1}
.rv-dot{width:10px;height:10px;border-radius:50%;background:#ff3d6a;box-shadow:0 0 0 0 #ff3d6a88;animation:rvPulse 1.6s ease-out infinite}
@keyframes rvPulse{to{box-shadow:0 0 0 12px #ff3d6a00}}
/* Parcours de bienvenue (membres connectés). */
.rv-welcome{margin-top:22px;min-height:0}
.rv-welcome .rv-body{display:grid;grid-template-columns:minmax(220px,1fr) 2fr;gap:12px 30px;align-items:start}
.rv-welcome .rv-actions{grid-column:1;margin-top:0;padding-top:0}
.rv-bar{height:8px;margin-top:14px;border:1px solid #b38c5488;background:#120a19;overflow:hidden}
.rv-bar i{display:block;height:100%;background:linear-gradient(90deg,#b58535,#f2d592)}
.rv-steps{grid-column:2;grid-row:1/span 2;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}
.rv-steps li{display:flex;gap:10px;padding:12px;border:1px solid #92714455;background:#150c1d}
.rv-steps li>span{flex:none;color:#a993b6}
.rv-steps li.done{border-color:#d4af3788}
.rv-steps li.done>span{color:#f2d592}
.rv-steps strong{display:block;font-size:13px;color:#f0d79c}
.rv-steps small{display:block;margin-top:4px;font-size:11px;line-height:1.5;color:#b7a5c2}
@media(max-width:1100px){.rv-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.rv-tavern{grid-column:1/-1;min-height:0}}
@media(max-width:800px){.rv-grid{grid-template-columns:1fr}.rv-card{min-height:0;padding:24px 20px}.rv-card h3{font-size:22px}.rv-welcome .rv-body{grid-template-columns:1fr}.rv-steps{grid-column:auto;grid-row:auto;grid-template-columns:1fr}.rv-welcome .rv-actions{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.rv-dot{animation:none}.rv-list button{transition:none}}
.rv-card[hidden]{display:none!important}
