.bd-root{color:var(--ink)}.bd-error{display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--blush) 45%,var(--card));border:1px solid var(--blush);border-radius:var(--radius-m, 14px);padding:8px 12px;margin-bottom:10px;font-size:var(--fs-body)}.bd-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m, 14px);padding:12px;margin-bottom:12px}.bd-panel__title{font-weight:800;font-size:var(--fs-h);margin-bottom:6px}.bd-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.bd-num{font-weight:700;min-width:52px;text-align:center}.bd-chip{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:4px 12px;cursor:pointer;font-size:var(--fs-body)}.bd-chip--active{background:var(--line-board);color:var(--ink);border-color:var(--line-board);font-weight:700}.bd-btn{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:var(--radius-m, 14px);padding:8px 16px;cursor:pointer;font-size:var(--fs-body)}.bd-btn--main{background:var(--apricot);border-color:var(--apricot-deep);font-weight:700}.bd-btn:disabled,.bd-chip:disabled{opacity:.45;cursor:not-allowed}.bd-lobby__meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:var(--ink-soft);font-size:var(--fs-body);margin-bottom:10px}.bd-rejoin{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:var(--paper-deep);border-radius:var(--radius-m, 14px);padding:8px 12px;margin-bottom:12px}.bd-games{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;margin-bottom:12px}.bd-gtile{display:flex;flex-direction:column;align-items:center;gap:4px;background:var(--card);border:1.5px solid var(--line);border-radius:var(--radius-m, 14px);padding:10px 6px;cursor:pointer;color:var(--ink);box-shadow:var(--shadow-soft)}.bd-gtile--active{border-color:var(--line-board);background:color-mix(in srgb,var(--sky) 32%,var(--card))}.bd-gtile__art{width:56px;height:56px;object-fit:contain}.bd-gtile__name{font-weight:800}.bd-gtile__sub{color:var(--ink-soft);font-size:12px}.bd-matching{color:var(--ink-soft);display:inline-flex;gap:8px;align-items:center}.bd-roomrow{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px dashed var(--line)}.bd-roomrow:last-child{border-bottom:none}.bd-dot{width:10px;height:10px;border-radius:50%;background:var(--line);display:inline-block}.bd-dot--on{background:var(--good)}.bd-room__head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.bd-room__title{font-weight:800;font-size:var(--fs-h)}.bd-seatgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;margin:10px 0}.bd-seatcell{border:1px solid var(--line);border-radius:var(--radius-m, 14px);padding:8px 10px;background:var(--paper)}.bd-seatcell--me{border-color:var(--line-board);background:color-mix(in srgb,var(--sky) 32%,var(--card))}.bd-seatcell--empty{color:var(--ink-soft);display:flex;align-items:center;justify-content:center;min-height:52px}.bd-seatcell__name{font-weight:700}.bd-playwrap{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:12px;align-items:start}@media(max-width:760px){.bd-playwrap{grid-template-columns:1fr}}.bd-game{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m, 14px);padding:12px}.bd-seats{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.bd-seat{border:1px solid var(--line);border-radius:10px;padding:4px 10px;background:var(--paper);display:flex;flex-direction:column}.bd-seat--turn{border-color:var(--apricot-deep);background:color-mix(in srgb,var(--butter) 42%,var(--card))}.bd-seat--me{outline:2px solid var(--line-board)}.bd-seat--out{opacity:.55}.bd-seat__name{font-weight:700;font-size:13px}.bd-seat__meta{color:var(--ink-soft);font-size:12px}.bd-hint{background:color-mix(in srgb,var(--butter) 30%,var(--card));border:1px dashed var(--apricot);border-radius:12px;padding:6px 10px;margin-bottom:10px;font-size:var(--fs-body)}.bd-rowinfo{color:var(--ink-soft);font-size:13px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:6px 0}.bd-empty{color:var(--ink-soft);font-size:13px}.bd-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:10px}.bd-hand{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.bd-lastplay{display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-height:44px;margin-top:8px}.bd-card{min-width:44px;height:60px;padding:4px 6px;background:var(--card);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-soft);font-size:15px;font-weight:700;color:var(--ink);cursor:pointer}.bd-card--red{color:var(--danger)}.bd-card--sel{transform:translateY(-10px);border-color:var(--apricot-deep);background:color-mix(in srgb,var(--butter) 42%,var(--card))}.bd-card--small{min-width:34px;height:44px;font-size:12px}.bd-card:disabled{cursor:default}.bd-tile{min-width:40px;height:54px;padding:2px 4px;background:linear-gradient(#fffcf4,#f6ecd9);border:1.5px solid var(--line);border-bottom-width:4px;border-radius:8px;font-size:14px;font-weight:700;color:var(--ink);cursor:pointer}.bd-tile--sel{transform:translateY(-8px);border-color:var(--apricot-deep)}.bd-tile--small{min-width:30px;height:40px;font-size:11px;border-bottom-width:3px}.bd-tile:disabled{cursor:default}.bd-tile--tong{color:#6f97c4}.bd-tile--tiao{color:#7aa873}.bd-tile--zi{color:#bf7d9d}.bd-mj-discards{display:flex;gap:4px;flex-wrap:wrap;min-height:44px;border-radius:10px}.bd-mj-discards--dragover{outline:2px dashed var(--apricot-deep);outline-offset:3px;background:color-mix(in srgb,var(--apricot) 14%,transparent)}.bd-mj-melds{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:13px}.bd-meld{display:inline-flex;gap:2px}.bd-uno{min-width:52px;height:68px;border-radius:12px;border:2px solid #fff;box-shadow:0 0 0 1.5px var(--line),var(--shadow-soft);font-weight:800;font-size:14px;color:#fff;cursor:pointer}.bd-uno--small{min-width:40px;height:52px;font-size:12px}.bd-uno--red{background:#e07a6f}.bd-uno--yellow{background:#eec25e}.bd-uno--green{background:#7fb98a}.bd-uno--blue{background:#7ea6cf}.bd-uno--wild{background:linear-gradient(135deg,#e07a6f 25%,#eec25e 25%,#eec25e 50%,#7fb98a 50%,#7fb98a 75%,#7ea6cf 75%)}.bd-uno:disabled{cursor:default}.bd-uno-top{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.bd-uno-shout{color:var(--danger);font-weight:800;margin-top:8px}.bd-wildpick{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:10px}.bd-canvas{width:100%;max-width:660px;aspect-ratio:660 / 300;background:var(--card);border:1px solid var(--line);border-radius:12px;touch-action:none}.bd-board15,.bd-board9,.bd-board13,.bd-board19{display:grid;gap:0;background:#eedcae;border:2px solid #cda96b;border-radius:10px;padding:6px;width:min(100%,560px)}.bd-board15{grid-template-columns:repeat(15,1fr)}.bd-board9{grid-template-columns:repeat(9,1fr);width:min(100%,420px)}.bd-board13{grid-template-columns:repeat(13,1fr);width:min(100%,520px)}.bd-board19{grid-template-columns:repeat(19,1fr);width:min(100%,620px)}.bd-card--laizi{outline:2px solid var(--apricot-deep);outline-offset:-2px;background:color-mix(in srgb,var(--butter) 38%,var(--card))}.bd-point{position:relative;aspect-ratio:1;background:transparent;border:none;cursor:pointer;padding:0}.bd-point:before{content:"";position:absolute;left:50%;top:50%;width:100%;height:1px;background:#c2a05f;transform:translate(-50%,-50%)}.bd-point:after{content:"";position:absolute;left:50%;top:50%;width:1px;height:100%;background:#c2a05f;transform:translate(-50%,-50%)}.bd-point:disabled{cursor:default}.bd-stone{position:absolute;left:50%;top:50%;width:86%;height:86%;transform:translate(-50%,-50%);border-radius:50%;z-index:1}.bd-stone--black{background:radial-gradient(circle at 35% 30%,#7a6f63,#3a332c)}.bd-stone--white{background:radial-gradient(circle at 35% 30%,#fff,#e3dac7);border:1px solid var(--line)}.bd-xqboard{display:grid;grid-template-columns:repeat(9,1fr);background:#f5e7c3;border:2px solid #cda96b;border-radius:10px;padding:6px;width:min(100%,480px)}.bd-xqcell{position:relative;aspect-ratio:1;background:transparent;border:none;border-bottom:1px solid #dcbd7f;border-right:1px solid #dcbd7f;cursor:pointer;padding:0}.bd-xqcell--hint{background:#7d94b859}.bd-xqcell--sel{background:#f2b8808c}.bd-xqcell--last{background:#a8c69f66}.bd-xqpiece{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:88%;height:88%;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;background:var(--card);border:2px solid}.bd-xqpiece--red{color:var(--danger);border-color:var(--danger)}.bd-xqpiece--black{color:var(--ink);border-color:var(--ink)}.bd-race{position:relative;width:min(100%,560px);aspect-ratio:1;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-m)}.bd-cell{position:absolute;width:9%;height:9%;border:1px solid var(--line);border-radius:6px;background:var(--card);display:flex;flex-direction:column;align-items:center;justify-content:center}.bd-cell--start{background:var(--leaf)}.bd-cell--goal{background:var(--butter)}.bd-cell__n{font-size:10px;color:var(--ink-soft)}.bd-cell__tokens{display:flex;gap:1px}.bd-token{width:16px;height:16px;border-radius:50%;color:#fff;font-size:10px;display:inline-flex;align-items:center;justify-content:center}.bd-race__center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);text-align:center}.bd-dice{font-size:34px;font-weight:800}.bd-rolecard{background:color-mix(in srgb,var(--butter) 30%,var(--card));border:1px solid var(--apricot);border-radius:12px;padding:8px 12px;margin-bottom:10px;font-size:var(--fs-body)}.bd-note{background:color-mix(in srgb,var(--sky) 32%,var(--card));border:1px solid var(--sky);border-radius:12px;padding:8px 12px;margin-bottom:10px}.bd-targets{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}.bd-target{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 14px;cursor:pointer;color:var(--ink)}.bd-target--sel{background:var(--line-board);color:var(--ink);font-weight:700}.bd-said{display:flex;flex-direction:column;gap:4px;max-height:180px;overflow-y:auto;margin-bottom:8px}.bd-said__line{font-size:13px}.bd-stgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;margin-bottom:10px}.bd-stcell{border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:13px;background:var(--paper)}.bd-notebox{border-top:1px dashed var(--line);margin-top:10px;padding-top:10px;font-size:13px}.bd-chat{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m, 14px);padding:10px}.bd-chat__head{display:flex;justify-content:space-between;align-items:center;font-weight:800;margin-bottom:8px}.bd-voice{border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:999px;padding:3px 10px;font-size:12px;cursor:pointer}.bd-voice:disabled{opacity:.55;cursor:not-allowed}.bd-voicebar{display:flex;flex-direction:column;gap:6px;border:1px dashed var(--line);border-radius:10px;padding:8px;margin-bottom:8px;background:var(--paper)}.bd-voicebar>.bd-voice{align-self:flex-start}.bd-voicechips{display:flex;gap:6px;flex-wrap:wrap}.bd-voicechip{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:2px 9px;font-size:12px;color:var(--ink-soft);transition:box-shadow .15s,color .15s}.bd-voicechip--speaking{color:var(--ink);border-color:var(--leaf);box-shadow:0 0 0 2px var(--leaf);font-weight:700}.bd-voicebtns{display:flex;gap:6px;flex-wrap:wrap}.bd-voice__reason{color:var(--ink-soft);font-size:12px}.bd-voice__err{color:var(--danger);font-size:12px;word-break:break-word}.bd-seatcell--speaking,.bd-seat--speaking{border-color:var(--leaf)!important;box-shadow:0 0 0 2px var(--leaf)}.bd-chat__log{max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:3px;font-size:13px;margin-bottom:8px}.bd-chat__line{word-break:break-word}.bd-chat__phrases{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}.bd-phrase{border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:3px 10px;font-size:12px;cursor:pointer;color:var(--ink)}.bd-chat__emojis{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:6px}.bd-emoji{border:none;background:transparent;font-size:17px;cursor:pointer;padding:2px}.bd-chat__warn{color:var(--danger);font-size:12px;margin-bottom:6px}.bd-chat__row{display:flex;gap:8px}.bd-chat__input{flex:1;border:1px solid var(--line);border-radius:12px;padding:8px 10px;font-size:var(--fs-body);background:var(--card);color:var(--ink);min-width:0}.bd-send{background:var(--line-board);color:var(--ink);font-weight:700;border:none;border-radius:12px;padding:8px 16px;cursor:pointer}.bd-avatar{border-radius:50%;background:var(--apricot);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;overflow:hidden;flex:none;vertical-align:middle}.bd-avatar__img{width:100%;height:100%;object-fit:cover;display:block}.bd-avatar__initial{font-weight:800;line-height:1}.bd-pillarcard{display:flex;align-items:center;gap:12px;margin-bottom:10px}.bd-pillarcard__body{flex:1;min-width:0}.bd-pillarcard__name{font-weight:800}.bd-namechip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:2px 9px 2px 3px;font-size:12px}.bd-namerow{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:8px}.bd-seatcell__head{display:flex;align-items:center;gap:8px;margin-bottom:2px}.bd-seatcell__pillar{display:block;font-size:12px;font-weight:600;color:var(--ink-soft)}.bd-roomrow__who{display:inline-flex;align-items:center;gap:7px}.bd-seat__name{display:inline-flex;align-items:center;gap:6px}.bd-voicechip{display:inline-flex;align-items:center;gap:5px}.bd-lcell{width:7.2%;height:7.2%;border-radius:4px;padding:0}.bd-lcell--jump{background:var(--butter)}.bd-lcell--fly{background:var(--sky)}.bd-ptoken{border:none;padding:0;font-size:11px;cursor:default}.bd-ptoken--can{cursor:pointer;box-shadow:0 0 0 2px var(--apricot-deep);animation:bd-pulse .9s ease-in-out infinite alternate}@keyframes bd-pulse{0%{transform:scale(1)}to{transform:scale(1.22)}}.bd-hangar{position:absolute;width:17%;padding:4px 6px;border:2px solid var(--line);border-radius:10px;background:var(--card)}.bd-hangar--0{left:9%;top:9%}.bd-hangar--1{right:9%;top:9%}.bd-hangar--2{right:9%;bottom:9%}.bd-hangar--3{left:9%;bottom:9%}.bd-hangar__name{font-size:11px;font-weight:700;display:block;margin-bottom:3px}.bd-hangar__slots{display:flex;gap:3px;flex-wrap:wrap}.bd-hangar__empty{width:16px;height:16px;border-radius:50%;border:1px dashed var(--line);display:inline-block}.bd-ludo-stretch{display:flex;flex-direction:column;gap:4px;margin-top:10px}.bd-ludo-srow{display:flex;align-items:center;gap:4px}.bd-ludo-sname{font-size:12px;font-weight:700;min-width:76px}.bd-ludo-scell{width:26px;height:26px;border:1px solid var(--line);border-radius:6px;background:var(--paper);display:inline-flex;align-items:center;justify-content:center}.bd-ludo-home,.bd-ludo-hangarnote{font-size:12px;color:var(--ink-soft)}.bd-mono{width:min(100%,640px)}.bd-mcell{width:12.5%;height:12.5%;border-radius:4px;padding:1px;justify-content:flex-start;overflow:hidden}.bd-mcell--mort{opacity:.55;filter:grayscale(.7)}.bd-mcell--jail{background:color-mix(in srgb,var(--blush) 52%,var(--card))}.bd-mcell__band{display:block;width:100%;height:5px;border-radius:2px;flex:none}.bd-mcell__band--owner{height:3px;margin-top:1px}.bd-mcell__name{font-size:10px;font-weight:700;line-height:1.15;text-align:center}.bd-mono-prop{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:8px;padding:4px 8px;background:var(--paper);font-size:13px}.bd-mono-manage{margin-top:10px}.bd-settle{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-m, 14px);padding:16px}.bd-settle__title{font-size:var(--fs-title);font-weight:800;margin-bottom:10px}.bd-social{display:flex;flex-direction:column;gap:8px;margin-top:10px}.bd-fx{position:relative;min-height:0;pointer-events:none}.bd-fx__item{margin:4px 0}.bd-fx__bubble{background:color-mix(in srgb,var(--butter) 48%,var(--card));border:1.5px solid color-mix(in srgb,var(--apricot) 78%,var(--card));border-radius:14px;padding:4px 12px;font-size:14px;animation:bd-pop .25s ease-out;display:inline-block}.bd-fx__prop{background:color-mix(in srgb,var(--sky) 38%,var(--card));border:1.5px solid color-mix(in srgb,var(--sky) 72%,var(--line-board));border-radius:14px;padding:4px 12px;font-size:14px;display:inline-block}.bd-fx__prop--fly{animation:bd-fly .9s ease-in-out}@keyframes bd-pop{0%{transform:scale(.6);opacity:0}to{transform:scale(1);opacity:1}}@keyframes bd-fly{0%{transform:translate(-30px) rotate(-14deg);opacity:0}35%{opacity:1}70%{transform:translate(14px) rotate(10deg)}to{transform:translate(0)}}.bd-timer{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:6px 10px;font-size:13px;flex-wrap:wrap}.bd-timer__bar{flex:1;min-width:90px;height:7px;background:var(--paper-deep);border-radius:4px;overflow:hidden}.bd-timer__bar>div{height:100%;background:var(--apricot-deep);transition:width .9s linear}.bd-select{border:1px solid var(--line);border-radius:8px;padding:5px 8px;background:var(--paper);font-size:13px}.bd-num-input{width:72px;border:1px solid var(--line);border-radius:8px;padding:6px 8px;font-size:13px}.bd-ledger{border:1px dashed var(--line);border-radius:10px;padding:8px 10px;display:flex;flex-direction:column;gap:6px}.bd-ledger__list{max-height:180px;overflow-y:auto;display:flex;flex-direction:column;gap:3px}.bd-ledger__line{display:flex;justify-content:space-between;align-items:center;font-size:13px}.bd-barrage{display:flex;gap:8px;flex-wrap:wrap}.bd-barrage__item{background:color-mix(in srgb,var(--lilac) 42%,var(--card));border-radius:999px;padding:2px 10px;font-size:12.5px;animation:bd-pop .25s ease-out}.bd-teach{background:color-mix(in srgb,var(--leaf) 26%,var(--card));border:1px solid var(--leaf);border-radius:12px;padding:8px 10px;font-size:13.5px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bd-record{font-size:13px}.bd-tmatch{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:8px;padding:3px 8px;font-size:13px}.bd-chat__caption{background:#604e38eb;color:#fdf6ec;border-radius:10px;padding:5px 9px;font-size:13px;margin:4px 0}.bd-chat__voicetools{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:4px 0}.bd-emoji--anim{animation:bd-wiggle 1.1s ease-in-out infinite;display:inline-block}@keyframes bd-wiggle{0%,to{transform:rotate(-7deg) scale(1)}50%{transform:rotate(7deg) scale(1.18)}}.bd-cb .bd-seat--turn{outline:3px solid #0057d9}.bd-cb .bd-card--red{color:#d95f02!important}.bd-cb .bd-tile--wan{background:#dbeafe}.bd-cb .bd-tile--tong{background:#fde68a}.bd-cb .bd-tile--tiao{background:#e9d5ff}.bd-cb .bd-ludo-scell{border-width:2px}.bd-block{background:color-mix(in srgb,var(--blush) 34%,var(--card));border:1px solid var(--apricot-deep);border-radius:12px;padding:8px 12px;margin-bottom:10px;font-size:var(--fs-body)}.bd-host{border:1.5px dashed var(--apricot-deep);border-radius:12px;padding:10px 12px;margin-bottom:10px;background:var(--paper);font-size:var(--fs-body)}.bd-host__title{font-weight:800;margin-bottom:6px}.bd-host__sec{margin-top:8px}.bd-host__list{margin:4px 0 0;padding-left:20px;font-size:13px}.bd-host__order{list-style:none;padding-left:2px}.bd-host__order--current{font-weight:800;color:var(--apricot-deep)}.bd-host__order--pending{opacity:.55}.bd-target:disabled{opacity:.45;cursor:not-allowed}.bd-tile--red{color:#c0392b;border-color:#c0392b;font-weight:700}.bd-meld--zheng{outline:2px solid #d4a017;border-radius:6px}
