/* Approved navy/gold menu. All rules are limited to the lobby. */
#lobby.royal-menu{max-width:520px;min-height:100dvh;padding:0 18px calc(84px + env(safe-area-inset-bottom));background:#03132b;color:#f3eee1;font-family:Arial,sans-serif}
#lobby.royal-menu .top{position:relative;z-index:2;display:grid;grid-template-columns:44px 1fr 44px;height:64px;padding:4px 0;margin:0;gap:0}
#lobby.royal-menu .menu-back{display:grid;place-items:center;min-width:44px;min-height:44px;color:#f6dfab;text-decoration:none;font:42px/1 Georgia,serif}
#lobby.royal-menu .brand{justify-self:center;flex-direction:column;gap:0}
#lobby.royal-menu .brand img{width:36px;height:36px;object-fit:contain;filter:none}
#lobby.royal-menu .brand .menu-word{width:69px;height:18px}
#lobby.royal-menu .me{justify-content:center;min-height:44px;min-width:44px}
#lobby.royal-menu .me .av{height:37px;width:37px;border:1px solid #d8b873;box-shadow:0 0 0 3px #0b2440}
#lobby.royal-menu .me>span:last-child{position:absolute;right:0;top:57px;max-width:120px;text-align:right}
#lobby.royal-menu .me b{font-size:10px;line-height:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#lobby.royal-menu .me small{font-size:9px;color:#c0cce0;line-height:12px}
#lobby.royal-menu .hero{position:relative;margin:0;padding:0 0 18px;background:none;border:0;overflow:visible;min-height:0;isolation:isolate;text-align:center}
#lobby.royal-menu .hero::before,#lobby.royal-menu .hero::after{display:none}
#lobby.royal-menu .royal-art{position:relative;height:clamp(160px,47vw,225px);margin:0 -18px;overflow:visible}
#lobby.royal-menu .royal-backdrop{position:absolute;inset:-64px 0 auto;width:100%;height:calc(100% + 130px);object-fit:cover;object-position:center 35%;z-index:-1;mask-image:linear-gradient(#000 70%,transparent)}
#lobby.royal-menu .royal-objects{position:absolute;inset:0 7%;overflow:visible}
#lobby.royal-menu [data-rf-object]{position:absolute;display:block;object-fit:contain;object-position:center;pointer-events:none;user-select:none;width:61%;height:100%;left:36%;top:21%;transform:translateX(-50%) scaleY(.46) rotate(-9deg);filter:drop-shadow(0 9px 6px #0009)}
#lobby.royal-menu [data-rf-object="0"]{z-index:1}
#lobby.royal-menu [data-rf-object="1"]{top:15%;z-index:2}
#lobby.royal-menu [data-rf-object="2"]{top:9%;z-index:3}
#lobby.royal-menu [data-rf-object="3"]{top:3%;z-index:4}
#lobby.royal-menu [data-rf-object="4"]{width:45%;height:91%;left:70%;top:13%;z-index:6;transform:translateX(-50%) rotate(24deg) scaleY(.8)}
#lobby.royal-menu .hero h1{margin:-2px 0 0;font:700 clamp(43px,12vw,55px)/1 Georgia,serif;letter-spacing:1px;color:#f4d994;text-shadow:0 2px 0 #79562e,0 4px 10px #000;filter:none;background:none}
#lobby.royal-menu .hero p{font-size:12px;line-height:18px;letter-spacing:.03em;margin:9px 0 0;color:#c7d3e4}
#lobby.royal-menu .quick{grid-template-columns:1fr;gap:9px;margin:0 0 9px}
#lobby.royal-menu .act{min-height:49px;border:1px solid #cfad6c;border-radius:10px;background:linear-gradient(#102b4b,#061b35);color:#f8e3ab;box-shadow:inset 0 0 0 2px #243e5866,0 3px 9px #0005;font:600 18px/1.2 Arial,sans-serif;padding:10px 14px;letter-spacing:0}
#lobby.royal-menu .act.create{background:linear-gradient(#f8df9b,#c59649);border-color:#f2d594;color:#202433;text-shadow:0 1px #ffe9b4;box-shadow:inset 0 0 0 2px #c7a365,0 3px 9px #0006}
#lobby.royal-menu .act>span[aria-hidden]{font-size:25px;line-height:20px}
#lobby.royal-menu .act.solo{display:flex;flex-direction:column;gap:3px;width:100%;min-height:59px;margin:0 0 16px;padding:9px;font-size:17px;border-color:#b79b65}
#lobby.royal-menu .act.solo small{font:11px/15px Arial;color:#b8c8df}
#lobby.royal-menu .box{background:#071e38;border:1px solid #45607c;border-radius:12px;color:#e3e8f1;box-shadow:none}
#lobby.royal-menu .box h3{font-family:Arial,sans-serif;font-size:17px;letter-spacing:0}
#lobby.royal-menu .form{gap:10px}
#lobby.royal-menu .form input,#lobby.royal-menu .form select{max-width:100%;min-height:44px;background:#06172c;border-color:#4c6480;color:#f2ede2}
#lobby.royal-menu .seg button{min-height:44px;padding:7px;font-size:12px}
#lobby.royal-menu .joinbox{gap:8px;padding:10px 0;margin-bottom:12px}
#lobby.royal-menu .joinbox input{min-width:0;background:#06172c;border-color:#7d735e}
#lobby.royal-menu .our-table-section{margin:0 0 19px}
#lobby.royal-menu .table-card{display:block;background:linear-gradient(120deg,#0d2949,#071a33);border:1px solid #8b7956;border-radius:11px;padding:11px 13px;color:#e5eaf2;text-decoration:none;box-shadow:inset 0 0 0 2px #25364b66;min-height:0}
#lobby.royal-menu .table-card.our-card{border-color:#d3b476;padding:13px 15px;box-shadow:inset 0 0 0 2px #6a593b44,0 5px 12px #0004}
#lobby.royal-menu .table-card-top{font-size:10px;margin:0 0 5px;gap:8px}
#lobby.royal-menu .table-variant{letter-spacing:.06em;color:#aebed6;font-size:9px}
#lobby.royal-menu .our-card .table-variant{color:#d9c28e}
#lobby.royal-menu .table-capacity{color:#ecd49b;background:#112a43;border:1px solid #8b7956;padding:3px 7px;font-size:10px}
#lobby.royal-menu .table-card-main{gap:10px;margin:0}
#lobby.royal-menu .table-emblem{display:grid;place-items:center;flex:none;width:37px;height:43px;border-radius:6px;background:linear-gradient(#fff4d2,#dfcda5);color:#111722!important;border:1px solid #cfb985;font:35px/1 Georgia}
#lobby.royal-menu .our-card .table-emblem{width:48px;height:48px;background:none;border:0}
#lobby.royal-menu .table-emblem img{width:100%;height:100%;object-fit:contain}
#lobby.royal-menu .table-card h3{font:600 17px/21px Arial,sans-serif;letter-spacing:0;margin:0;color:#fae3aa}
#lobby.royal-menu .our-card h3{font-family:Georgia,serif;font-size:23px;line-height:27px}
#lobby.royal-menu .table-blinds{font-size:11px;color:#bfcee2}
#lobby.royal-menu .table-blinds b{color:#eadfbd;font-size:12px}
#lobby.royal-menu .table-presence{margin:7px 0 0;font-size:10px;color:#b8c7d9;min-height:13px;gap:6px}
#lobby.royal-menu .presence-dot{width:6px;height:6px}
#lobby.royal-menu .table-buyin{margin-top:3px;font-size:10px;color:#a7b6cd;min-height:0}
#lobby.royal-menu .table-card-bottom{margin-top:7px;padding-top:7px;border-top:1px solid #b9c3d422;gap:7px}
#lobby.royal-menu .table-availability{font-size:10px;color:#b8ceaf}
#lobby.royal-menu .table-availability.needs-chips{color:#f5c694}
#lobby.royal-menu .table-cta{font-size:12px;font-weight:600;white-space:nowrap;color:#ffe6a5}
#lobby.royal-menu .our-card .table-cta{border:1px solid #d2b276;background:linear-gradient(#f4d892,#c59b50);color:#1a2638;border-radius:6px;padding:7px 9px}
#lobby.royal-menu .tables-box{padding:0;border:0;background:none}
#lobby.royal-menu .tables-heading{margin-bottom:10px;gap:6px}
#lobby.royal-menu .tables-heading h2{font:600 23px/28px Georgia,serif;color:#f3d698;margin:0}
#lobby.royal-menu .tables-heading p{font:10px/15px Arial;color:#aebed4;margin:4px 0 0}
#lobby.royal-menu .refresh-tables{min-width:44px;min-height:44px;color:#e9d3a5;border-color:#526680;background:#0a213c}
#lobby.royal-menu .table-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0;border:1px solid #786747;border-radius:8px;gap:0;overflow:hidden;background:#091e36}
#lobby.royal-menu .table-filters button{min-height:44px;border-radius:0;border:0;border-right:1px solid #78674766;background:none;font-size:12px;padding:7px 3px;color:#d3deed}
#lobby.royal-menu .table-filters button[aria-pressed="true"]{background:linear-gradient(#efce86,#b58c49);color:#142439;box-shadow:none}
#lobby.royal-menu .table-options{margin:8px 0;font-size:10px;min-height:28px}
#lobby.royal-menu .table-options label{min-height:32px;display:flex;align-items:center;gap:7px}
#lobby.royal-menu .table-grid{display:grid;grid-template-columns:1fr;gap:8px}
#lobby.royal-menu :focus-visible{outline:3px solid #a9d6ff;outline-offset:3px}
body:has(#lobby.royal-menu:not([hidden])){background:#03132b}
body:has(#lobby.royal-menu:not([hidden]))>.fx{background:#03132b}
body:has(#lobby.royal-menu:not([hidden]))>.fx>*{display:none}
#lobby.royal-menu:not([hidden])~#lobbyNav{background:#05182ff5;border-top:1px solid #88774d;max-width:520px;left:50%;transform:translateX(-50%);width:100%;backdrop-filter:blur(12px)}
#lobby.royal-menu:not([hidden])~#lobbyNav a,#lobby.royal-menu:not([hidden])~#lobbyNav button{color:#aebbd0;font-size:10px}
#lobby.royal-menu:not([hidden])~#lobbyNav .on{color:#f6d98e}
@media(max-width:370px){#lobby.royal-menu{padding-right:14px;padding-left:14px}#lobby.royal-menu .royal-art{margin:0 -14px}#lobby.royal-menu .act{font-size:17px}#lobby.royal-menu .hero p{font-size:11px}#lobby.royal-menu .table-card h3{font-size:16px}}
