@font-face{font-family:GameBarLocal;src:local("Microsoft YaHei")}*{box-sizing:border-box}html{color-scheme:light}body{margin:0;color:#2c4271;font:15px/1.65 GameBarLocal,"PingFang SC",system-ui,sans-serif;background:linear-gradient(145deg,#e6faff 0,#dceafb 45%,#b3cbed 100%);min-height:100vh}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:default;opacity:.43}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #4383ca;outline-offset:4px}button,input,select{min-height:44px}input,select{width:100%;padding:10px 13px;border:1px solid #ccd9ed;border-radius:12px;background:#fff;color:#2c4271;font-size:16px;min-width:0}input[type=checkbox]{width:20px;height:20px;min-height:20px;accent-color:#5b85d2}.ambient{position:fixed;z-index:-1;inset:0;pointer-events:none;background:radial-gradient(ellipse at 75% 20%,#ffacd257,transparent 45%),radial-gradient(ellipse at 5% 10%,#9be9ff,transparent 50%)}.topbar{max-width:1320px;margin:auto;padding:24px 32px;display:flex;justify-content:space-between;gap:20px;align-items:center}.brand{font-size:26px;letter-spacing:-1px;font-weight:800;display:flex;gap:10px;align-items:center}.brand span{font-size:11px;letter-spacing:2px;border-left:1px solid #94b2d6;padding-left:12px;font-weight:500}.topbar nav{display:flex;align-items:center;gap:22px;font-size:13px}.status{font-size:11px;border:1px solid #aec4df;border-radius:20px;padding:5px 10px;background:#eff9ff}.status.live{background:#e9f9f2;border-color:#a6cebd;color:#356d5a}.status.offline{color:#a35472;background:#fff0f5}main{max-width:1256px;margin:auto;padding:12px 32px 28px;min-height:65vh}h1,h2,h3,p{margin-top:0}h1{font-size:54px;line-height:1.2;letter-spacing:-2px;margin-bottom:20px}h2{font-size:23px;letter-spacing:-.6px;line-height:1.4;margin-bottom:16px}h3{font-size:16px}.eyebrow{letter-spacing:2px;font-size:10px;font-weight:700;color:#6687b3}.muted{color:#6e84a0;font-size:12px}.card,.panel{background:#ffffffda;border:1px solid #ffffffed;box-shadow:0 9px 30px #2c427108;border-radius:24px;padding:26px;min-width:0}.button,.quiet,.danger{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 19px;border-radius:13px;font-weight:650;font-size:13px;min-height:46px;background:#2c4271;color:#fff2df;transition:transform .15s,background .15s}.button:hover:not(:disabled){background:#3b588e;transform:translateY(-1px)}.button.secondary{background:#e7f2ff;color:#2c4271;border:1px solid #cbdff4}.quiet{background:#f1f6fc;color:#55749b;font-weight:500}.danger{background:#fff0f5;color:#ad436c;border:1px solid #efd1de}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.hero{display:grid;grid-template-columns:1.15fr 1fr;gap:30px;align-items:center;padding:35px 0 40px}.hero p{max-width:540px;color:#55749b;font-size:15px}.hero-art{display:flex;justify-content:center;align-items:center;height:270px;position:relative;background:radial-gradient(ellipse,#fff2df 0,#fff2df80 40%,transparent 67%)}.hero-art .playing-card{width:118px;height:182px;position:absolute;pointer-events:none;box-shadow:0 15px 25px #2c427126}.hero-art .playing-card:nth-child(1){transform:translateX(-64px) rotate(-20deg);background:#ffacd2}.hero-art .playing-card:nth-child(2){transform:translateX(44px) rotate(15deg);background:#5b85d2;color:white}.hero-art .playing-card strong{font-size:64px}.pill{display:inline-flex;gap:7px;align-items:center;padding:5px 11px;border:1px solid #d3e2f3;background:#f3f9ff;border-radius:30px;font-size:11px}.lobby-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.room-list{display:grid;gap:12px;margin-top:22px}.room-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #dce8f5;border-radius:16px;background:#ffffff70;padding:16px}.room-row strong{font-size:20px;letter-spacing:2px}.room-row p{font-size:12px;margin:3px 0;color:#6e84a0}.join-form{display:flex;gap:10px;margin-top:20px}.join-form input{letter-spacing:4px;max-width:210px}.room-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:10px 0 22px}.room-heading h1{font-size:32px;letter-spacing:2px;margin:5px 0}.room-heading .eyebrow{font-size:9px}.room-code{display:flex;gap:12px;align-items:center}.room-heading .quiet{min-height:38px;padding:8px 12px;font-size:11px}.room-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:20px;align-items:start}.table-area{min-width:0}.roster{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-bottom:18px}.player{padding:13px 12px;border-radius:17px;background:#f8fbffb8;border:1px solid #d8e5f5;min-width:0;position:relative}.player.current{border:2px solid #5b85d2;background:#e8f5ff;padding:12px 11px;box-shadow:0 0 0 3px #9be9ff55}.player.me{background:#fff8f5}.player .name{display:flex;gap:7px;align-items:center;font-size:12px;font-weight:700;overflow-wrap:anywhere;line-height:1.5}.avatar{display:grid;place-items:center;width:27px;height:27px;flex-shrink:0;border-radius:9px;background:linear-gradient(135deg,#9be9ff,#fff2df);font-weight:600}.player p{font-size:10px;color:#6e84a0;margin:6px 0 0}.player .count{font-size:23px;line-height:1.3;font-weight:700;margin-top:8px}.player .count small{font-size:10px;font-weight:400}.player .online{width:6px;height:6px;background:#5eac95;border-radius:50%;display:inline-block}.player .online.off{background:#acb8c8}.player .tiny{min-height:25px;padding:3px 7px;font-size:10px;border-radius:7px;background:#f2f6fd;color:#55749b}.player .tiny.catch{background:#ffdae8;color:#963f64}.player .player-actions{display:flex;gap:4px;margin-top:7px;flex-wrap:wrap}.stage{border-radius:28px;background:radial-gradient(ellipse at 50% 45%,#ffffffc2,transparent 75%),linear-gradient(125deg,#9be9ff66,#d9e8fa99 45%,#ffacd233);border:1px solid #ffffffd9;padding:20px;min-height:260px;position:relative;overflow:hidden}.stage-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;margin-bottom:19px}.timer{font-variant-numeric:tabular-nums;border-radius:20px;background:#fff8;padding:5px 12px;font-size:13px}.timer.urgent{background:#ffdae8;color:#a44168}.piles{display:flex;justify-content:center;align-items:center;gap:24px;margin:15px auto 10px}.pile-button{background:none;padding:0;display:grid;justify-items:center;gap:7px;color:#55749b;font-size:10px;min-width:0}.playing-card{display:flex;flex-direction:column;align-items:center;justify-content:space-between;flex-shrink:0;position:relative;width:78px;height:117px;padding:8px;border:4px solid #fffbf3;border-radius:13px;background:#5b85d2;color:#233b68;box-shadow:0 4px 7px #2c42711a;isolation:isolate}.playing-card:before{content:"";position:absolute;width:70%;height:82%;border-radius:50%;background:#fff5;transform:rotate(25deg);top:9%;z-index:-1}.playing-card small{align-self:flex-start;font-size:10px;line-height:1;white-space:nowrap}.playing-card strong{font-size:35px;line-height:1.2;font-family:system-ui,sans-serif;font-weight:850}.playing-card em{align-self:flex-end;font-size:9px;font-style:normal;line-height:1}.playing-card.red,.color-red{background:#ff8b9c;color:#652b48}.playing-card.yellow,.color-yellow{background:#f7dc8f;color:#73521f}.playing-card.green,.color-green{background:#94d8c0;color:#205d4a}.playing-card.blue,.color-blue{background:#86b4f0;color:#233b68}.playing-card.wild{background:linear-gradient(135deg,#9be9ff,#ffacd2 35%,#fff2df 65%,#5b85d2);color:#2c4271}.playing-card.back{background:repeating-linear-gradient(45deg,#4869a0 0 7px,#587bb2 7px 9px);color:#fff2df}.playing-card.back:before{background:#fff2df18}.playing-card.back strong{font-size:21px}.playing-card.selected{transform:translateY(-13px);outline:3px solid #2c4271;box-shadow:0 8px 15px #2c427130}.playing-card.legal{box-shadow:0 0 0 3px #9be9ff,0 6px 9px #2c42711a}.playing-card.selected.legal{outline-color:#2c4271}.top-card{width:90px;height:135px;transform:rotate(-6deg)}.current-color{display:flex;justify-content:center;gap:8px;align-items:center;font-size:11px;margin-top:18px}.color-dot{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid #2c427140}.color-dot.red{background:#ff8b9c}.color-dot.yellow{background:#f7dc8f}.color-dot.green{background:#94d8c0}.color-dot.blue{background:#86b4f0}.phase-box{margin-top:15px;padding:17px;background:#fff9;border:1px solid #fff;border-radius:17px;font-size:12px}.phase-box p{margin:0 0 10px}.color-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.color-grid button{padding:14px;border-radius:12px;font-weight:650}.hand-panel{padding:21px 0 0}.hand-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;font-size:12px}.hand-row{display:flex;overflow-x:auto;gap:8px;padding:21px 5px 13px;min-height:155px;max-width:100%;scroll-snap-type:x proximity}.hand-row .playing-card{scroll-snap-align:start;transition:transform .15s}.hand-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;background:#f7fbffb0;border:1px solid #ffffffb0;border-radius:18px;padding:12px 14px}.hand-actions label{display:flex;align-items:center;gap:7px;font-size:11px}.notice{background:#fff2dfc9;border:1px solid #f4e3cf;color:#756452;font-size:12px;padding:13px 17px;border-radius:14px;margin-bottom:16px}.empty-seat{border:1px dashed #b9cce2;border-radius:17px;padding:17px;text-align:center;font-size:12px;color:#8097b3}.waiting-actions{padding:20px 0;display:flex;gap:10px;flex-wrap:wrap}.room-sidebar{display:grid;gap:16px}.room-sidebar .card{padding:21px;border-radius:20px}.room-sidebar h2{font-size:16px}.rule-chips{display:flex;gap:6px;flex-wrap:wrap}.rule-chips .pill{font-size:10px;padding:4px 8px}.chat-list,.events-list{max-height:220px;overflow-y:auto;font-size:11px;list-style:none;margin:0;padding:0;overflow-wrap:anywhere}.chat-list li,.events-list li{border-bottom:1px solid #dbe6f0;padding:8px 0}.chat-list strong{font-size:10px;color:#6e84a0;display:block}.chat-form{display:flex;gap:6px;margin-top:13px}.chat-form input{font-size:13px;min-height:40px}.chat-form button{min-height:40px;padding:8px 11px}.events-list time{font-size:9px;color:#8197b0;margin-right:7px}.rules-details{margin-top:20px}.rules-details summary,.room-sidebar summary{cursor:pointer;font-weight:650;font-size:14px}.rules-form{margin-top:18px}.rules-groups{display:grid;grid-template-columns:1fr 1fr;gap:18px}.rule-group{padding:17px;border:1px solid #dae6f3;border-radius:18px;background:#fff8}.rule-group h3{font-size:13px;margin:0 0 10px}.rule-setting{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid #dbe6f0;padding:11px 0}.rule-setting span{font-size:11px;display:block}.rule-setting small{font-size:9px;color:#6e84a0;display:block;font-weight:400;max-width:300px}.rule-setting input{flex-shrink:0}.rule-setting select{max-width:105px;font-size:12px;min-height:37px;padding:7px}.general-settings{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:17px 0}.general-settings label{font-size:11px;display:grid;gap:5px}.presets{margin:15px 0}.presets button{min-height:36px;padding:8px 12px;font-size:11px}.rules-footer{display:flex;align-items:center;gap:15px;position:sticky;bottom:0;padding:15px 0;background:#f0f7fded;backdrop-filter:blur(10px);z-index:3}.score-table{border-collapse:collapse;width:100%;font-size:12px}.score-table td,.score-table th{text-align:left;padding:11px 9px;border-bottom:1px solid #d9e5f3}.score-table th{color:#6e84a0;font-weight:500}.winner{font-size:35px;line-height:1.3;margin:10px 0;color:#2c4271}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.admin-room{display:grid;gap:10px}.loading{padding:60px 20px;text-align:center;color:#6687b3}dialog{max-width:580px;width:calc(100% - 32px);padding:28px;border:1px solid #e0eaf6;border-radius:25px;background:#f7fbff;color:#2c4271;box-shadow:0 30px 90px #2c42713b}dialog::backdrop{background:#2c427160;backdrop-filter:blur(5px)}dialog h2{font-size:22px}dialog p{font-size:13px;color:#6e84a0}.dialog-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.dialog-head h2{margin:0}#log-content{max-height:65vh;overflow:auto;margin-top:20px}.footer{max-width:1256px;margin:auto;padding:24px 32px 35px;border-top:1px solid #a9bfdb;font-size:9px;letter-spacing:1px;color:#55749b;display:flex;gap:20px;justify-content:space-between}#toast{position:fixed;z-index:20;left:50%;bottom:25px;transform:translateX(-50%);width:max-content;max-width:calc(100% - 32px);padding:13px 22px;border-radius:15px;background:#2c4271;color:#fff2df;font-size:13px;box-shadow:0 8px 30px #2c427130}#toast.error{background:#9e486b}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}[hidden]{display:none!important}
@media(max-width:1000px){.room-layout{grid-template-columns:minmax(0,1fr) 250px}.hero h1{font-size:44px}.topbar,main{padding-left:24px;padding-right:24px}.roster{grid-template-columns:repeat(auto-fit,minmax(115px,1fr))}.piles{gap:18px}.room-sidebar .card{padding:18px}}
@media(max-width:760px){body{font-size:14px}.topbar{padding:18px 18px;gap:10px}.brand{font-size:23px;gap:7px}.brand span{font-size:9px;padding-left:8px}.topbar nav{gap:12px;font-size:11px}.status{font-size:9px;padding:4px 7px}main{padding:5px 16px 20px}.hero{grid-template-columns:1fr;gap:0;padding:24px 6px 20px}.hero h1{font-size:42px;margin:13px 0}.hero p{font-size:13px}.hero-art{height:190px}.hero-art .playing-card{width:92px;height:141px;border-width:4px}.hero-art .playing-card strong{font-size:50px}.hero-art .playing-card:nth-child(1){transform:translateX(-42px) rotate(-20deg)}.hero-art .playing-card:nth-child(2){transform:translateX(42px) rotate(15deg)}.lobby-grid,.admin-grid{grid-template-columns:1fr}.card,.panel{padding:21px;border-radius:20px}h2{font-size:21px}.room-heading{margin:15px 0;gap:10px;align-items:flex-start}.room-heading h1{font-size:27px;line-height:1.2}.room-heading .actions{gap:6px;justify-content:flex-end}.room-heading .actions button{min-height:36px;font-size:10px;padding:7px 10px}.room-layout{grid-template-columns:1fr;gap:14px}.roster{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-bottom:12px}.player{padding:10px 8px;border-radius:13px}.player.current{padding:9px 7px}.player .name{font-size:10px;gap:5px}.player .count{font-size:21px}.player p{font-size:9px}.avatar{width:22px;height:22px;border-radius:7px;font-size:10px}.stage{padding:14px;border-radius:23px;min-height:237px}.stage-top{font-size:11px;margin-bottom:12px}.piles{gap:24px;margin:8px auto}.pile-button .playing-card{width:65px;height:99px}.top-card{width:79px;height:118px}.playing-card{width:65px;height:100px;border-width:3px;border-radius:11px;padding:7px}.playing-card strong{font-size:30px}.playing-card small{font-size:9px}.playing-card em{font-size:8px}.hand-row{gap:6px;padding-top:20px;min-height:137px}.hand-panel{padding-top:17px}.hand-heading{font-size:11px}.hand-actions{padding:10px;gap:8px}.hand-actions .button,.hand-actions .quiet{font-size:11px;padding:9px 12px;min-height:43px}.hand-actions label{font-size:10px}.rules-groups{grid-template-columns:1fr;gap:12px}.rules-footer{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.room-sidebar{grid-template-columns:1fr 1fr;gap:10px}.room-sidebar .card{padding:16px}.room-sidebar .chat-card,.room-sidebar .event-card{grid-column:1/-1}.room-sidebar .rules-summary{grid-column:1/-1}.room-sidebar h2{font-size:14px}.events-list{max-height:160px}.general-settings{gap:10px}.room-row{padding:13px;gap:10px}.room-row .actions{gap:5px}.room-row .button{font-size:11px;padding:8px 12px;min-height:39px}.winner{font-size:28px}.footer{padding:20px 18px 28px;font-size:8px;gap:10px}.rule-setting select{font-size:16px}.chat-form input{font-size:16px}dialog{padding:23px}.timer{padding:4px 9px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* Independent UNO game lobby */
.uno-brand{font-family:system-ui,sans-serif;font-size:30px;font-weight:950;font-style:italic;letter-spacing:-2px;color:#2c4271}
.uno-brand span{font-style:normal;font-size:9px;letter-spacing:2px;border:0;padding-left:4px;color:#6986b5}
.topbar{position:relative;max-width:1440px;gap:18px;padding:21px 32px}
.topbar .game-tools{gap:9px;margin-right:auto}
.hud-button{display:grid;place-items:center;width:40px;min-height:40px;border-radius:13px;border:1px solid #ffffffce;background:#f6fbff91;color:#5277ac;font-size:20px;font-weight:650;box-shadow:0 3px 12px #4168a307;transition:transform .16s,background .16s}
.hud-button svg{width:20px;height:20px}
.hud-button:hover{transform:translateY(-2px);background:#ffffffdc}
.topbar .profile-tools{gap:12px}
#profile-link{display:inline-flex;align-items:center;gap:9px;background:#ffffffa6;border:1px solid #ffffffd9;border-radius:30px;padding:9px 17px;font-size:12px;font-weight:650;max-width:220px;overflow-wrap:anywhere}
#profile-link:before{content:"";width:9px;height:9px;border-radius:50%;background:#6d9ad9;box-shadow:0 0 0 4px #5b85d217;flex-shrink:0}
#admin-link{font-size:11px}
.footer{max-width:1376px}
.footer-status{display:flex;gap:12px;align-items:center}
.footer .status{font-size:9px;padding:3px 9px}
.screen-lobby{background:#e4eefc}
.screen-lobby .ambient{background:radial-gradient(ellipse at 2% 8%,#9be9ffb3 0,transparent 47%),radial-gradient(ellipse at 95% 24%,#f3a8b36b 0,transparent 47%),radial-gradient(ellipse at 60% 100%,#c4d7f6 0,transparent 65%),linear-gradient(130deg,#e1f6ff 0,#e8edfc 49%,#fff2df99 100%)}
.screen-lobby .ambient:after{content:"";position:absolute;inset:0;opacity:.29;background-image:radial-gradient(#709ad1 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(transparent,#0008,transparent)}
.screen-lobby main{max-width:none;padding:0 24px;min-height:calc(100svh - 149px);display:grid;align-items:center;overflow:hidden}
.game-home{position:relative;isolation:isolate;width:100%;max-width:1200px;margin:auto;padding:16px 0 30px}
.game-home-content{position:relative;z-index:2;max-width:520px;margin:auto}
.game-emblem{position:relative;text-align:center;margin-bottom:25px;isolation:isolate}
.emblem-overline{font-size:9px;font-weight:700;letter-spacing:4px;color:#6a88b4}
.uno-wordmark{font-family:system-ui,sans-serif;font-size:clamp(108px,11vw,148px);font-style:italic;line-height:.98;letter-spacing:-13px;font-weight:1000;margin:4px 0 13px;padding-right:18px;color:#3d65aa;filter:drop-shadow(0 7px 0 #ffffffb0);text-shadow:0 2px 0 #eef6ff}
.uno-wordmark span{display:inline-block}
.uno-wordmark span:nth-child(2){color:#517ccc;transform:translateY(4px)}
.uno-wordmark span:nth-child(3){color:#6d96dc}
.uno-wordmark i{position:absolute;font-size:33px;font-style:normal;font-weight:800;color:#e5a1be;transform:rotate(16deg);margin:8px 0 0 10px;letter-spacing:0}
.emblem-caption{display:flex;justify-content:center;align-items:center;gap:15px;letter-spacing:4px;font-size:10px;color:#6c8bb7;margin-top:18px}
.emblem-caption>span{width:43px;height:1px;background:#7da1d07a}
.emblem-orbit{position:absolute;inset:0;z-index:-1;font-size:24px;pointer-events:none}
.emblem-orbit span{position:absolute;color:#84b8e4}
.emblem-orbit span:nth-child(1){left:42px;top:67px;transform:rotate(-17deg);font-size:30px}
.emblem-orbit span:nth-child(2){right:50px;top:23px;color:#efb2ce;transform:rotate(15deg)}
.emblem-orbit span:nth-child(3){left:102px;bottom:15px;font-size:13px;color:#fffaf2}
.game-menu{padding:23px 30px 14px;background:linear-gradient(140deg,#fffffff0,#ffffffb8);border:1px solid #fff;border-radius:27px;box-shadow:0 18px 60px #496f9f13,0 2px 0 #fff9 inset;backdrop-filter:blur(18px)}
.menu-greeting{display:flex;align-items:center;gap:8px;font-size:11px;color:#6681aa;margin-bottom:17px}
.menu-light{display:inline-block;width:6px;height:6px;border-radius:50%;background:#649cc4;box-shadow:0 0 0 4px #78bde413;flex-shrink:0}
.menu-cap{margin-left:auto;font-size:10px;border:1px solid #d9e6f8;padding:2px 8px;border-radius:20px;color:#7d96b5}
.game-start{position:relative;width:100%;min-height:87px;display:flex;align-items:center;justify-content:flex-start;gap:17px;padding:17px 22px;color:#fff9ed;background:linear-gradient(116deg,#547fc7,#3d62a6);border-radius:17px;border:1px solid #4772bb;box-shadow:0 5px 0 #31528e,0 9px 21px #3d65a92a,0 1px 0 #ffffff3b inset;transition:transform .15s,box-shadow .15s}
.game-start:hover{transform:translateY(-2px);box-shadow:0 7px 0 #31528e,0 12px 25px #3d65a936}
.game-start:active{transform:translateY(3px);box-shadow:0 2px 0 #31528e}
.game-start>svg{width:30px;height:30px;flex-shrink:0;stroke-width:1.7}
.game-start>svg:last-child{margin-left:auto;width:22px;color:#c5dbfc}
.game-start span{font-size:23px;font-weight:750;letter-spacing:2px;text-align:left;line-height:1.3}
.game-start small{display:block;margin-top:7px;font-size:10px;letter-spacing:1px;color:#d7e6fd;font-weight:400}
.menu-divider{display:flex;align-items:center;gap:14px;font-size:10px;color:#91a5c1;text-align:center;margin:24px 0 17px;white-space:nowrap}
.menu-divider:before,.menu-divider:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#cddbef)}
.menu-divider:after{transform:rotate(180deg)}
.game-join{display:grid;grid-template-columns:minmax(0,1fr) 58px;gap:10px}
.room-code-field{display:flex;align-items:center;min-width:0;border:1px solid #cfdef1;border-radius:13px;background:#edf4ff87;padding-left:16px;transition:border-color .15s}
.room-code-field:focus-within{border-color:#638dc8;box-shadow:0 0 0 3px #9be9ff40}
.room-code-field>span{font:24px/1 system-ui,sans-serif;color:#95afd3}
.room-code-field input{border:0;background:none;border-radius:13px;min-width:0;min-height:57px;letter-spacing:4px;font-size:20px;font-weight:650;padding:10px 13px}
.room-code-field input::placeholder{font-size:12px;letter-spacing:1px;font-weight:400;color:#92a7c3}
.room-code-field input:focus-visible{outline:none}
.game-join>button{display:grid;place-items:center;background:#dfeafa;color:#446ca9;border:1px solid #c7d9f0;border-radius:13px}
.game-join>button:hover{background:#d2e4fb}
.game-join>button svg{width:25px;height:25px}
.menu-secondary{display:flex;align-items:center;justify-content:space-between;gap:5px;border-top:1px solid #dce7f469;margin-top:15px;padding-top:5px}
.menu-secondary button,.menu-secondary a{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:42px;padding:8px 1px;background:transparent;color:#728cad;font-size:10px}
.menu-secondary svg{width:15px;height:15px}
.menu-secondary button:hover,.menu-secondary a:hover{color:#375e9b}
.lobby-rooms{margin:18px 6px 0}
.lobby-rooms-heading{display:flex;align-items:center;justify-content:space-between;color:#8099ba;font-size:10px;padding:0 8px}
.lobby-rooms-heading h2{font-size:11px;font-weight:600;letter-spacing:.5px;margin:0;display:flex;align-items:center;gap:9px}
.lobby-room-scroll{max-height:164px;overflow:auto;margin-top:9px;padding:0 2px}
.lobby-room{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:15px;background:#ffffff9c;border:1px solid #ffffffba;margin-bottom:7px}
.lobby-room>div:first-child{flex:1;min-width:0}
.lobby-room strong{font-size:13px;letter-spacing:1px;color:#4d70a6}
.lobby-room p{font-size:10px;color:#8297b4;margin:3px 0 0;overflow-wrap:anywhere}
.room-state{font-size:9px;color:#6889ac;white-space:nowrap}
.room-state.in-game{color:#ae7696}
.room-enter{display:flex;align-items:center;gap:5px;min-height:36px;font-size:10px;color:#496ea7;background:#edf4ff;padding:7px 10px;border-radius:10px}
.room-enter svg{width:13px;height:13px}
.lobby-empty{display:flex;align-items:center;justify-content:center;gap:12px;min-height:64px;color:#859cbb}
.lobby-empty>span{display:grid;place-items:center;width:34px;height:34px;border:1px dashed #b9cce5;border-radius:11px}
.lobby-empty svg{width:17px;height:17px}
.lobby-empty p{margin:0;font-size:11px}
.lobby-empty small{display:block;font-size:9px;margin-top:3px;color:#96abc5}
.game-home-bottom{margin:12px 6px 0}
.rules-shortcut{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;background:none;color:#6889b3;font-size:10px;min-height:40px}
.rules-shortcut svg{width:15px;height:15px;flex-shrink:0}
.rules-shortcut span{color:#96a9c0;font-size:9px;margin-left:2px}
.rules-shortcut>svg:last-child{width:12px;margin-left:auto}
.guest-note{text-align:center;color:#91a5bf;font-size:10px;margin:20px 0 0}
.lobby-art{position:absolute;z-index:0;pointer-events:none;top:42%;width:210px;height:250px;opacity:.8;filter:drop-shadow(0 20px 30px #456aa117)}
.lobby-art .playing-card{position:absolute;width:128px;height:188px;border-width:6px;border-radius:22px;box-shadow:0 5px 0 #c6d9f160,0 14px 30px #35568a16}
.lobby-art .playing-card strong{font-size:63px}
.lobby-art .playing-card small{font-size:13px}.lobby-art .playing-card em{font-size:13px}
.lobby-art-left{left:15px;transform:rotate(-8deg)}
.lobby-art-left .playing-card:first-child{transform:rotate(-18deg) translate(-8px,-28px);background:#93b8ef}
.lobby-art-left .playing-card:last-child{transform:rotate(12deg) translate(80px,32px);background:#c0e9dc}
.lobby-art-right{right:10px;top:23%;transform:rotate(8deg)}
.lobby-art-right .playing-card:first-child{transform:rotate(-10deg) translate(-12px,40px);background:#f0b0c7}
.lobby-art-right .playing-card:last-child{transform:rotate(16deg) translate(55px,-23px)}
.game-dialog{width:min(610px,calc(100vw - 32px));padding:28px;max-height:85svh;color:#2c4271;border:1px solid white;border-radius:25px;background:linear-gradient(140deg,#f3fbff,#fbf7fb);box-shadow:0 30px 100px #2c427138}
.game-dialog h2{font-size:23px;margin:7px 0 0}
.game-dialog .dialog-head{gap:20px;align-items:flex-start}
.game-dialog .dialog-head .quiet{min-height:34px;padding:7px 10px;font-size:10px;white-space:nowrap}
.game-dialog::backdrop{background:#2c42713b;backdrop-filter:blur(7px)}
.how-to-steps{padding:0;list-style:none;margin:28px 0}
.how-to-steps li{display:flex;gap:15px;border-bottom:1px solid #dce7f4;padding:15px 0}
.how-to-steps li>span{font-family:system-ui,sans-serif;font-size:22px;line-height:1.3;font-weight:750;color:#a5bfe4}
.how-to-steps h3{font-size:13px;margin:0 0 6px}
.how-to-steps p{font-size:11px;color:#738bac;margin:0}
.tutorial-tip{border-radius:15px;background:#e5effc99;border:1px solid #d8e6f6;padding:16px;font-size:12px}
.tutorial-tip p{font-size:11px;color:#738bac;margin:6px 0 0}
.tutorial-done{width:100%;margin-top:22px}
.rules-dialog{width:min(830px,calc(100vw - 32px))}
.rules-dialog>.muted{margin-top:16px}
.rules-dialog .rules-form{margin-top:0}
.rules-dialog .presets{display:none}
@media(min-width:1100px) and (min-height:850px){.game-home{padding-top:22px;padding-bottom:38px}.game-emblem{margin-bottom:30px}.game-menu{padding-top:26px;padding-bottom:16px}.game-start{min-height:91px}}
@media(max-width:1000px){.game-home-content{max-width:480px}.lobby-art{opacity:.48;transform:scale(.8)}.lobby-art-left{left:-100px}.lobby-art-right{right:-90px}.uno-wordmark{font-size:122px}}
@media(max-width:760px){.topbar{padding:16px 18px;gap:12px}.uno-brand{font-size:25px;letter-spacing:-1.5px}.uno-brand span{display:none}.topbar .game-tools{gap:6px}.hud-button{width:33px;min-height:33px;border-radius:10px;font-size:18px}.hud-button svg{width:17px;height:17px}.topbar .profile-tools{gap:8px}#profile-link{font-size:10px;padding:7px 11px;max-width:135px;gap:7px}#profile-link:before{width:6px;height:6px;box-shadow:0 0 0 3px #5b85d212}#admin-link{font-size:10px}.screen-lobby main{padding:0 18px;min-height:calc(100svh - 130px)}.game-home{padding:20px 0 20px}.game-home-content{max-width:430px}.game-emblem{margin-bottom:25px}.emblem-overline{font-size:8px;letter-spacing:3px}.uno-wordmark{font-size:107px;letter-spacing:-10px;margin-top:8px;padding-right:16px}.uno-wordmark i{font-size:26px;margin-left:8px}.emblem-caption{font-size:8px;letter-spacing:3px;margin-top:17px;gap:10px}.emblem-caption>span{width:30px}.emblem-orbit span:nth-child(1){left:12px;top:54px;font-size:23px}.emblem-orbit span:nth-child(2){right:7px;top:25px;font-size:19px}.emblem-orbit span:nth-child(3){left:52px;bottom:7px}.game-menu{border-radius:23px;padding:20px 20px 10px}.menu-greeting{font-size:10px;margin-bottom:16px}.game-start{min-height:83px;padding:16px 18px;gap:13px;border-radius:15px}.game-start span{font-size:22px}.game-start small{font-size:9px;letter-spacing:.5px}.game-start>svg{width:26px;height:26px}.game-start>svg:last-child{width:20px}.menu-divider{font-size:9px;margin:22px 0 15px}.game-join{grid-template-columns:minmax(0,1fr) 52px;gap:8px}.room-code-field{padding-left:13px}.room-code-field input{min-height:52px;font-size:19px;padding-left:10px;letter-spacing:3px}.room-code-field input::placeholder{font-size:11px;letter-spacing:.5px}.room-code-field>span{font-size:21px}.menu-secondary{margin-top:13px;gap:8px}.menu-secondary button,.menu-secondary a{font-size:9px;gap:4px;min-height:42px}.menu-secondary svg{width:13px;height:13px}.lobby-art{opacity:.27;transform:scale(.5);top:24%}.lobby-art-left{left:-145px}.lobby-art-right{right:-133px;top:51%}.lobby-rooms{margin-top:18px}.rules-shortcut{font-size:9px;padding-left:2px;padding-right:2px;gap:6px}.rules-shortcut span{font-size:8px}.game-home-bottom{margin-top:9px}.footer-status{gap:8px}.footer .status{font-size:8px;padding:3px 7px}.footer{font-size:8px;padding:15px 18px 20px}.game-dialog{padding:23px}.game-dialog h2{font-size:20px}.game-dialog .dialog-head{gap:12px}.lobby-room{gap:9px;padding:10px}.room-state{font-size:8px}.guest-note{font-size:9px}.lobby-empty small{font-size:8px}}
@media(max-width:370px){.game-menu{padding-left:15px;padding-right:15px}.rules-shortcut span{display:none}.topbar{gap:8px;padding-left:14px;padding-right:14px}.topbar .game-tools{gap:4px}#profile-link{max-width:105px;padding:7px 9px}.game-home{padding-top:10px}.uno-wordmark{font-size:95px}.menu-secondary{gap:4px}}
@media(prefers-reduced-motion:reduce){.game-start,.hud-button{transition:none}}

/* Circular waiting room, following the original UNO table layout. */
.screen-waiting{background:#e3effc}
.screen-waiting .ambient{background:radial-gradient(ellipse at 2% 20%,#9be9ff90,transparent 56%),radial-gradient(ellipse at 95% 10%,#f3a8b351,transparent 50%),radial-gradient(ellipse at 50% 100%,#bed3f8b0,transparent 65%),linear-gradient(125deg,#edf8ff,#e9effb 53%,#fff2df8f)}
.screen-waiting main{max-width:1100px;min-height:calc(100svh - 151px);padding:0 24px;display:grid;align-items:center}
.waiting-room{width:100%;max-width:890px;margin:auto;padding:4px 0 26px}
.waiting-room-header{display:flex;align-items:center;justify-content:center;gap:25px;position:relative;min-height:70px;margin-bottom:4px}
.waiting-room-title{text-align:center}
.waiting-room-title .eyebrow{font-size:8px;letter-spacing:3px;color:#8ba3c4}
.room-title-line{display:flex;align-items:center;justify-content:center;gap:12px}
.room-title-line h1{font-size:19px;letter-spacing:1px;margin:9px 0 0;font-weight:650;display:flex;align-items:center;gap:13px}
.room-title-line h1>span{font-size:26px;letter-spacing:5px;padding:4px 12px 5px 17px;color:#496fae;background:#ffffff70;border:1px solid #ffffffd4;border-radius:13px;font-family:system-ui,sans-serif;font-variant-numeric:tabular-nums}
.room-copy{display:grid;place-items:center;width:35px;min-height:35px;border:1px solid #ffffffca;background:#f8fcff94;border-radius:11px;color:#7996bd;margin-top:9px}
.room-copy svg{width:16px;height:16px}
.waiting-settings{position:absolute;right:0;top:14px;display:flex;align-items:center;gap:10px;text-align:left;color:#567cb2;background:#f5faff96;border:1px solid #fff;border-radius:14px;padding:10px 14px;min-height:47px;box-shadow:0 5px 18px #5b85d206}
.waiting-settings>svg{width:21px;height:21px}
.waiting-settings>span{font-size:11px;line-height:1.5}
.waiting-settings small{display:block;font-size:8px;font-weight:400;color:#8ca2c0}
.waiting-table-wrap{position:relative;width:100%;max-width:760px;margin:0 auto;isolation:isolate}
.waiting-table-halo{position:absolute;inset:5% 7% 0;background:radial-gradient(ellipse,#ffffffa6 0,#e1edfc77 40%,transparent 70%);z-index:-1}
.waiting-table{position:relative;width:100%;height:430px}
.table-surface{position:absolute;left:50%;top:50%;width:62%;height:57%;transform:translate(-50%,-50%);border-radius:50%;border:5px solid #ffffffa6;box-shadow:0 5px 0 #a8c4e32b,0 18px 45px #6185bd17,inset 0 0 35px #b1d4f338;background:radial-gradient(ellipse at 40% 15%,#f2fcffbd,#d8e8fc8f 60%,#c7daf17a)}
.table-inlay{position:absolute;inset:11px;border:1px solid #9dbbe149;border-radius:50%;box-shadow:0 0 0 4px #ffffff30}
.table-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#7696c1;text-align:center}
.table-logo{font-family:system-ui,sans-serif;font-size:64px;line-height:1.05;font-style:italic;font-weight:950;letter-spacing:-5px;padding-right:6px;color:#7c9fd04a;text-shadow:0 2px 0 #ffffffb0}
.table-center-label{font-size:7px;letter-spacing:2px;color:#8aa7ce}
.table-count{font-size:11px;line-height:1.5;color:#7d9ac1;max-width:88%;overflow-wrap:anywhere}
.table-mark svg{display:block;width:21px;height:21px;color:#a1b9d8;margin-top:2px}
.table-center>button{display:flex;align-items:center;gap:6px;font-size:9px;background:#ffffff68;border:1px solid #fff9;border-radius:20px;min-height:27px;padding:3px 10px;color:#6b8ebf}
.table-center>button svg{width:11px;height:11px}
.circle-seat{position:absolute;left:var(--seat-x);top:var(--seat-y);transform:translate(-50%,-50%);width:104px;min-height:99px;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:transparent;color:#5578ab;border:0;border-radius:18px}
.circle-seat:focus-visible{outline-offset:6px}
.seat-number{position:absolute;left:13px;top:-5px;font-family:system-ui,sans-serif;font-size:9px;font-weight:650;color:#91abcd}
.seat-portrait{position:relative;display:grid;place-items:center;width:59px;height:59px;border-radius:20px;border:3px solid #ffffffe6;box-shadow:0 4px 0 #91aed42b,0 7px 16px #6187be16;background:linear-gradient(140deg,#d8f4ff,#c0d8f8);color:#527eb9;font-size:22px;font-weight:700;transition:transform .16s,box-shadow .16s}
.circle-seat:nth-of-type(3n+2) .seat-portrait{background:linear-gradient(140deg,#fff5f1,#f2cadb);color:#a57999}
.circle-seat:nth-of-type(3n+3) .seat-portrait{background:linear-gradient(140deg,#fff9ef,#d4ebf6);color:#7597ad}
.occupied:hover .seat-portrait,.available:hover .seat-portrait{transform:translateY(-3px);box-shadow:0 6px 0 #91aed42b,0 10px 22px #6187be1a}
.my-seat .seat-portrait{outline:2px solid #729bd6;outline-offset:4px}
.seat-ready .seat-portrait{outline:2px solid #8ac4b8;outline-offset:4px}
.seat-out{opacity:.5}
.seat-name{display:flex;justify-content:center;align-items:center;gap:4px;max-width:100%;font-size:11px;line-height:1.4;font-weight:600;padding:0 1px;overflow-wrap:anywhere;min-height:15px;margin-top:5px}
.seat-name small{font-size:8px;padding:1px 4px;border-radius:5px;background:#658fd626;color:#5a82b9;font-weight:400;white-space:nowrap}
.seat-state{font-size:8px;line-height:1.5;color:#90a6c2;font-weight:400}
.seat-ready .seat-state{color:#72a79a}
.seat-crown{position:absolute;top:-13px;left:50%;transform:translateX(-50%);display:grid;place-items:center;width:22px;height:19px;color:#6d92c9;background:#edf5ff;border:1px solid #fff;border-radius:6px}
.seat-crown svg{width:13px;height:13px}
.seat-check{position:absolute;right:-7px;bottom:-5px;width:19px;height:19px;border:2px solid #eff9f6;border-radius:50%;background:#83bcb0;color:white;display:grid;place-items:center}
.seat-check svg{width:12px;height:12px;stroke-width:2.5}
.seat-online{position:absolute;left:0;bottom:1px;width:7px;height:7px;border:1px solid #f8fcff;background:#8abbab;border-radius:50%}
.seat-online.is-offline{background:#b0bed0}
.vacant{color:#9db3ce}
.vacant .seat-portrait{background:#f7fbff52!important;border:1px dashed #a9c2df;box-shadow:none!important;border-radius:21px;width:58px;height:58px;color:#9eb8d8}
.vacant .seat-portrait svg{width:24px;height:24px;stroke-width:1.2}
.vacant .seat-name{font-weight:400;font-size:10px;color:#8da5c4}
.vacant .seat-state{color:#a9bad1;font-size:8px}
.vacant.available .seat-portrait{border-style:solid;border-color:#adc7e9;background:#eaf5ffb3!important;color:#739bd1}
.vacant.available .seat-name{color:#7496c3}
.waiting-spectators{display:flex;justify-content:center;align-items:center;gap:7px;max-width:720px;margin:3px auto 0;padding:8px 16px;min-height:35px;color:#8ca3c2;font-size:10px}
.waiting-spectators>svg{width:14px;height:14px;flex-shrink:0}
.waiting-spectators>span:first-of-type{white-space:nowrap}
.spectator-names{font-size:9px;color:#a0b2ca;overflow-wrap:anywhere;max-width:450px}
.waiting-controls{text-align:center;margin-top:11px}
.waiting-hint{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px;color:#7a96bb;margin:0 0 14px;min-height:18px}
.waiting-hint .menu-light{width:5px;height:5px}
.waiting-primary{display:flex;align-items:center;justify-content:center;gap:13px}
.ready-button,.room-start-button{display:flex;align-items:center;justify-content:center;gap:10px;min-width:157px;min-height:54px;border-radius:14px;padding:12px 28px;font-size:16px;font-weight:650;letter-spacing:1px;border:1px solid #fff;transition:transform .15s,box-shadow .15s}
.ready-button{color:#4d76af;background:linear-gradient(140deg,#f4fbff,#dcecfb);box-shadow:0 4px 0 #bfd3ec,0 8px 20px #5b85d20c;border-color:#f8fcff}
.ready-button.is-ready{background:linear-gradient(140deg,#eefaf5,#d4eee7);color:#60958c;box-shadow:0 4px 0 #b7dcd2}
.room-start-button{background:linear-gradient(116deg,#5b85cf,#456bb0);color:#fff9ef;border-color:#4d77bd;box-shadow:0 4px 0 #355995,0 8px 20px #5b85d226}
.room-start-button:disabled{opacity:.42;filter:saturate(.7)}
.ready-button:hover,.room-start-button:not(:disabled):hover{transform:translateY(-2px)}
.ready-button svg,.room-start-button svg{width:20px;height:20px}
.waiting-secondary{display:flex;justify-content:center;align-items:center;gap:22px;margin-top:18px;flex-wrap:wrap}
.waiting-secondary button{display:flex;align-items:center;justify-content:center;gap:5px;background:none;min-height:35px;padding:5px 0;font-size:10px;color:#7c98bd}
.waiting-secondary svg{width:14px;height:14px}
.waiting-secondary button:hover{color:#4f77b2}
.waiting-room-footnote{display:flex;justify-content:center;align-items:center;gap:12px;margin:13px 0 0;font-size:9px;color:#a0b2ca}
.waiting-room-footnote i{width:2px;height:2px;background:#abbdd4;border-radius:50%}
.eliminated-note{font-size:11px;color:#8aa1c0;max-width:150px}
.room-drawer,.social-drawer{margin:0 0 0 auto;top:0;bottom:0;right:0;left:auto;height:100svh;max-height:100svh;width:min(550px,100vw);border-radius:25px 0 0 25px;padding:28px;overflow:auto;border-right:0;background:linear-gradient(130deg,#f5fbff,#f6f5fc)}
.room-drawer>.dialog-head,.social-drawer>.dialog-head{position:sticky;top:-28px;z-index:5;background:#f5faffee;padding:20px 0 17px;backdrop-filter:blur(10px);margin-top:-15px}
.room-drawer .rules-groups{grid-template-columns:1fr}
.room-drawer .rules-form>.muted{font-size:11px}
.room-drawer .rules-footer{background:#f5f9ffed;bottom:-28px;padding-bottom:calc(17px + env(safe-area-inset-bottom))}
.drawer-room-info{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:11px;color:#7996bd;background:#e8f1fc99;padding:12px 15px;border-radius:13px;margin:4px 0 18px}
.drawer-room-info strong{font-size:12px;font-weight:600;color:#5a7fae}
.drawer-room-info span{font-size:10px}
.social-drawer{width:min(425px,100vw)}
.waiting-chat h3,.waiting-throw h3,.waiting-events h3{font-size:13px;margin:13px 0 10px;color:#6687b5}
.waiting-chat h3 span{font-size:10px;font-weight:400;color:#a3b4cb;margin-left:8px}
.waiting-chat .chat-list{background:#ffffff7d;border-radius:13px;padding:5px 13px;max-height:30svh;min-height:70px}
.waiting-chat .chat-form{margin-top:12px}
.waiting-throw,.waiting-events{margin-top:26px;padding-top:15px;border-top:1px solid #dce7f4}
.waiting-throw .general-settings{margin-bottom:6px}
.waiting-events .events-list{max-height:180px}
.player-dialog{width:min(360px,calc(100vw - 36px));padding:22px}
.player-dialog-close{display:flex;margin-left:auto;font-size:10px;min-height:32px;padding:5px 9px}
.player-dialog-profile{text-align:center;padding:10px 10px 20px}
.dialog-avatar{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 15px;border-radius:23px;border:3px solid #fff;background:linear-gradient(135deg,#d2f2ff,#e8d7ee);font-size:27px;color:#7294c1}
.player-dialog-profile h2{font-size:20px;margin:0 0 7px;overflow-wrap:anywhere}
.player-dialog-profile p{font-size:11px;color:#91a7c4;margin:0}
.player-dialog-actions{display:flex;justify-content:center;gap:9px;margin-bottom:12px}
.player-dialog-actions svg{width:16px;height:16px}
.player-dialog-actions button{font-size:11px;padding:10px 14px}
@media(min-width:1100px) and (min-height:850px){.waiting-table{height:430px}.waiting-room{padding-bottom:34px}.waiting-controls{margin-top:16px}}
@media(max-width:760px){.screen-waiting main{padding:0 12px;min-height:calc(100svh - 126px)}.waiting-room{padding:3px 0 17px}.waiting-room-header{min-height:65px;margin:2px 6px 3px;justify-content:flex-start}.waiting-room-title{text-align:left}.waiting-room-title .eyebrow{font-size:6px;letter-spacing:1.8px}.room-title-line{gap:7px;justify-content:flex-start}.room-title-line h1{font-size:13px;gap:8px;margin-top:7px}.room-title-line h1>span{font-size:19px;letter-spacing:3px;padding:4px 8px 5px 11px;border-radius:10px}.room-copy{width:30px;min-height:30px;border-radius:9px;margin-top:7px}.room-copy svg{width:13px;height:13px}.waiting-settings{top:15px;right:0;gap:6px;min-height:39px;padding:7px 10px;border-radius:11px}.waiting-settings>svg{width:17px;height:17px}.waiting-settings>span{font-size:9px}.waiting-settings small{font-size:7px}.waiting-table{height:340px}.table-surface{width:63%;height:55%;border-width:4px}.table-inlay{inset:9px}.table-logo{font-size:50px;letter-spacing:-4px}.table-center{gap:6px}.table-center-label{font-size:5px;letter-spacing:1.1px}.table-count{font-size:9px}.table-mark svg{width:16px;height:16px}.circle-seat{width:68px;min-height:76px;gap:3px}.seat-portrait{width:44px;height:44px;border-width:2px;border-radius:15px;font-size:17px;box-shadow:0 3px 0 #91aed428,0 6px 15px #6187be12}.seat-name{font-size:9px;gap:3px;line-height:1.4;margin-top:4px;min-height:13px;max-width:76px}.seat-name small{font-size:6px;padding:1px 3px;border-radius:4px}.seat-state{font-size:6px}.seat-number{font-size:7px;left:5px;top:-2px}.seat-crown{top:-11px;width:18px;height:15px;border-radius:5px}.seat-crown svg{width:10px;height:10px}.seat-check{right:-6px;bottom:-4px;width:16px;height:16px;border-width:2px}.seat-check svg{width:10px;height:10px}.seat-online{width:5px;height:5px}.vacant .seat-portrait{width:43px;height:43px;border-radius:15px}.vacant .seat-portrait svg{width:20px;height:20px}.vacant .seat-name{font-size:8px}.vacant .seat-state{font-size:6px}.my-seat .seat-portrait,.seat-ready .seat-portrait{outline-offset:3px;outline-width:1.5px}.waiting-spectators{font-size:8px;padding:7px 10px;gap:6px;margin-top:0;min-height:31px}.waiting-spectators>svg{width:12px;height:12px}.spectator-names{font-size:7px;max-width:230px}.waiting-controls{margin-top:12px}.waiting-hint{font-size:8px;margin-bottom:13px;gap:6px}.ready-button,.room-start-button{min-width:132px;min-height:49px;font-size:14px;border-radius:13px;gap:8px;padding:10px 18px}.ready-button svg,.room-start-button svg{width:17px;height:17px}.waiting-primary{gap:11px}.waiting-secondary{gap:17px;margin-top:15px;flex-wrap:nowrap}.waiting-secondary button{font-size:8px;gap:4px;min-height:37px;white-space:nowrap}.waiting-secondary svg{width:12px;height:12px}.waiting-room-footnote{font-size:7px;gap:10px;margin-top:9px}.room-drawer,.social-drawer{border-radius:20px 0 0 20px;padding:23px;max-width:95vw}.room-drawer>.dialog-head,.social-drawer>.dialog-head{top:-23px;padding-top:17px}.room-drawer .rules-footer{bottom:-23px}.drawer-room-info{font-size:10px;padding:10px}.drawer-room-info strong{font-size:11px}.drawer-room-info span{font-size:8px}.waiting-chat .chat-form input{font-size:16px}.room-drawer .general-settings select{font-size:16px}.table-center>button{font-size:7px;min-height:24px;padding:2px 7px}.table-center>button svg{width:9px}}
@media(max-width:370px){.screen-waiting main{padding:0 8px}.waiting-table{height:320px}.circle-seat{width:62px}.seat-name{font-size:8px;max-width:67px}.waiting-settings{padding:7px 8px}.waiting-settings small{display:none}.waiting-room-header{margin-left:5px;margin-right:5px}.room-title-line h1{font-size:12px;gap:6px}.room-title-line h1>span{font-size:18px}.waiting-secondary{gap:12px}.waiting-secondary button{font-size:7px}.ready-button,.room-start-button{min-width:124px}.waiting-hint{font-size:7px}}

.seat-name{width:100%;padding:0 2px}.seat-display-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.waiting-player-hand{display:flex;gap:6px;overflow-x:auto;padding:8px 2px 15px;margin-bottom:12px}.waiting-player-hand .playing-card{width:53px;height:82px;border-width:3px;padding:5px}.waiting-player-hand .playing-card strong{font-size:23px}.waiting-player-hand .playing-card small,.waiting-player-hand .playing-card em{font-size:7px}

.circle-seat.seat-pos-0{left:50.000%;top:12.000%}
.circle-seat.seat-pos-1{left:74.099%;top:19.257%}
.circle-seat.seat-pos-2{left:88.993%;top:38.257%}
.circle-seat.seat-pos-3{left:88.993%;top:61.743%}
.circle-seat.seat-pos-4{left:74.099%;top:80.743%}
.circle-seat.seat-pos-5{left:50.000%;top:88.000%}
.circle-seat.seat-pos-6{left:25.901%;top:80.743%}
.circle-seat.seat-pos-7{left:11.007%;top:61.743%}
.circle-seat.seat-pos-8{left:11.007%;top:38.257%}
.circle-seat.seat-pos-9{left:25.901%;top:19.257%}

.waiting-room-header{margin-bottom:20px}
@media(min-width:761px) and (max-height:800px){.screen-waiting .topbar{padding-top:13px;padding-bottom:13px}.screen-waiting main{min-height:calc(100svh - 114px)}.waiting-room{padding:0 0 10px}.waiting-room-header{min-height:54px;margin-bottom:17px}.waiting-room-title .eyebrow{font-size:7px}.room-title-line h1{font-size:16px;margin-top:5px}.room-title-line h1>span{font-size:23px}.waiting-settings{top:9px}.waiting-table-wrap{max-width:660px}.waiting-table{height:340px}.circle-seat{width:96px;min-height:78px;gap:3px}.seat-portrait{width:44px;height:44px;border-width:2px;border-radius:15px;font-size:18px}.vacant .seat-portrait{width:43px;height:43px;border-radius:15px}.vacant .seat-portrait svg{width:20px;height:20px}.seat-name{font-size:9px;margin-top:4px}.seat-state{font-size:7px}.seat-number{font-size:7px;left:14px}.seat-crown{width:18px;height:16px;top:-10px}.seat-crown svg{width:11px;height:11px}.seat-check{width:16px;height:16px}.seat-check svg{width:10px;height:10px}.table-logo{font-size:48px}.table-center{gap:5px}.table-center-label{font-size:6px}.table-count{font-size:9px}.table-mark svg{width:17px;height:17px}.waiting-spectators{font-size:8px;min-height:27px;margin-top:3px}.spectator-names{font-size:8px}.waiting-controls{margin-top:7px}.waiting-hint{font-size:9px;margin-bottom:10px}.ready-button,.room-start-button{min-height:47px;font-size:14px;min-width:147px;padding:9px 22px}.waiting-secondary{margin-top:12px}.waiting-secondary button{min-height:30px;font-size:9px}.waiting-room-footnote{font-size:8px;margin-top:7px}.screen-waiting .footer{padding:10px 32px 14px}}
@media(max-width:760px){.waiting-room-header{margin-bottom:16px}.waiting-table{height:400px}}
@media(max-width:370px){.waiting-table{height:400px}}
