#bj-dialog{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:0;border:0;border-radius:0;background:#123d36;color:#102329;overflow-y:auto}#bj-dialog [hidden]{display:none!important}.bj-header{position:sticky;top:0;z-index:5;background:#95f5d8;border-bottom:4px solid #102329;display:flex;justify-content:space-between;align-items:center;padding:12px 22px;gap:15px}.bj-header h2{font-size:30px;margin:0;font-weight:900}.bj-header small{font-size:12px;font-weight:900;letter-spacing:1px}.bj-header-actions{display:flex;gap:8px;align-items:center}.bj-header-actions button,#bj-leave,#bj-reconnect{border:2px solid #102329;border-radius:8px;background:#fff5d9;color:#102329;font-size:14px;padding:8px 12px;font-weight:800}#bj-close{font-size:24px;background:#ff947d;padding:2px 12px}.bj-content{max-width:1150px;margin:auto;padding:20px}.bj-menu{max-width:760px;margin:20px auto;background:#fff5d9;border:4px solid #102329;box-shadow:7px 7px 0 #071a18;border-radius:22px;padding:26px}.bj-menu h3{font-size:30px;font-weight:900;letter-spacing:-1px;margin:0 0 12px}.bj-menu p{font-size:16px;line-height:1.5}.bj-menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.bj-option{background:#95f5d8;border:3px solid #102329;border-radius:13px;padding:18px}.bj-option h4{font-size:20px;margin:0 0 15px}.bj-option label{display:block;font-size:14px;font-weight:800;margin:12px 0 6px}.bj-option select,.bj-option input,.bj-seat select{width:100%;padding:10px;border:2px solid #102329;border-radius:8px;color:#102329;background:#fffdf4;font-size:16px}.bj-option input{letter-spacing:6px;font-weight:900}.bj-option button,.bj-menu>.game-button{padding:10px 17px;font-size:16px;margin-top:12px}.bj-option button{width:100%}.bj-room-code{font-size:55px;letter-spacing:12px;font-weight:900;margin:12px 0;color:#00745b}.bj-seats{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.bj-seat{background:#95f5d8;border:3px solid #102329;border-radius:13px;padding:14px;display:flex;gap:10px;align-items:center;min-width:0}.bj-seat strong{font-size:16px;overflow-wrap:anywhere}.bj-seat small{display:block;font-size:13px;margin-top:5px}.bj-avatar{border:2px solid #102329;border-radius:10px;background:#ffd55c;display:grid;place-items:center;min-width:38px;height:38px;font-weight:900}.bj-seat button{border:2px solid #102329;border-radius:7px;background:#ff947d;color:#102329;padding:5px 10px;font-weight:bold}.bj-empty-seat{display:grid;gap:7px;background:#e6e8dc}.bj-empty-seat span{font-weight:800;font-size:14px}.bj-empty-seat button{background:#ffd55c;font-size:14px;padding:9px}.bj-players{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.bj-player{padding:12px;border:3px solid #102329;border-radius:12px;background:#fff5d9;min-width:0}.bj-player strong{display:block;font-size:16px;overflow-wrap:anywhere}.bj-player span{display:block;font-size:13px;margin-top:6px}.bj-player.bj-current{background:#ffd55c;box-shadow:0 0 0 3px #fff5d9}.bj-player.bj-me{border-color:#58bdff}.bj-turn{text-align:center;color:#fff5d9;margin:25px 0 15px}.bj-turn h3{font-size:25px;margin:0 0 8px}.bj-turn span{font-size:14px}.bj-table-center{display:flex;justify-content:center;align-items:center;gap:35px;min-height:175px}.bj-card{width:96px;height:144px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;border:4px solid #102329;border-radius:13px;box-shadow:0 5px 0 #071a1866;flex-shrink:0;font-family:Arial,Helvetica,sans-serif;overflow:hidden;color:#102329}.bj-card strong{background:#fff5d9;border:3px solid #102329;border-radius:50%;width:70%;height:55%;display:grid;place-items:center;transform:rotate(-14deg);font-size:36px;font-weight:900}.bj-corner{position:absolute;top:5px;left:8px;font-size:15px;font-weight:900}.bj-card-color{position:absolute;bottom:6px;font-size:12px;font-weight:bold}.bj-red{background:#ef766c}.bj-yellow{background:#ffdb65}.bj-green{background:#67d59d}.bj-blue{background:#71baff}.bj-wild{background:#292d3b;color:#fff5d9}.bj-wild strong{color:#102329}.bj-deck{background:#ba97ef;cursor:pointer;padding:5px;font-size:22px;font-weight:900}.bj-deck small{font-size:13px;display:block;margin-top:12px}.bj-color-tag{border:2px solid #102329;color:#102329;font-weight:900;padding:7px 12px;border-radius:8px;font-size:14px;display:inline-block}.bj-center-info{text-align:center}.bj-center-info p{color:#cee2d4;font-size:13px;margin:12px 0}#bj-log{color:#fff5d9;text-align:center;font-size:15px;min-height:25px;margin:22px 0}.bj-hand-heading{display:flex;justify-content:space-between;align-items:center;color:#fff5d9;font-size:13px;font-weight:900;letter-spacing:1px;margin:20px 0 12px}.bj-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:10px 0 24px}.bj-hand .bj-card{cursor:pointer;transition:transform .12s}.bj-hand .bj-card.bj-playable{outline:3px solid #fff5d9;outline-offset:1px}.bj-hand .bj-card.bj-playable:hover{transform:translateY(-7px)}.bj-hand .bj-card:disabled{opacity:.55;cursor:default}.bj-hand .bj-card:focus-visible{outline:4px solid #ffd55c;outline-offset:3px}#bj-pass{padding:8px 20px}.bj-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#dae8da;font-size:13px;margin-top:15px}.bj-rules{max-width:760px;margin:20px auto;color:#dae8da;line-height:1.6;font-size:14px}.bj-rules summary{cursor:pointer;font-weight:800}.bj-rules p{font-size:14px}.bj-error-bar{background:#fff5d9;border:3px solid #e36b5e;border-radius:10px;padding:12px;font-size:14px;max-width:760px;margin:12px auto}.bj-color-picker{position:fixed;inset:0;z-index:10;display:grid;place-items:center;background:#071a18cc;padding:20px}.bj-color-box{background:#fff5d9;border:4px solid #102329;border-radius:20px;padding:22px;text-align:center;max-width:450px;width:100%}.bj-color-box h3{font-size:24px;margin:0 0 18px}.bj-color-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.bj-color-buttons button{border:3px solid #102329;padding:16px;border-radius:10px;font-size:17px;font-weight:900;color:#102329}#bj-cancel-color{margin-top:18px;padding:8px 14px;border:2px solid #102329;border-radius:8px;background:#95f5d8;color:#102329}.bj-end{background:#fff5d9;border:4px solid #102329;border-radius:16px;text-align:center;padding:18px;margin:15px auto;max-width:600px}.bj-end p{font-size:17px;font-weight:800}.bj-end button{padding:10px 22px}.bj-card-entry .fast-click-art{background:#ffcc83}#bj-dialog button:disabled{cursor:not-allowed}#bj-dialog .game-button:disabled{opacity:.5}
@media(max-width:650px){.bj-header{padding:10px 12px}.bj-header h2{font-size:24px}.bj-content{padding:12px}.bj-menu{padding:18px;margin:12px auto}.bj-menu-grid{grid-template-columns:1fr}.bj-seats{grid-template-columns:1fr}.bj-players{grid-template-columns:1fr 1fr;gap:8px}.bj-player{padding:9px}.bj-player strong{font-size:14px}.bj-card{width:72px;height:110px;border-width:3px;border-radius:10px}.bj-card strong{font-size:28px;border-width:2px}.bj-corner{font-size:12px;top:4px;left:6px}.bj-card-color{font-size:10px}.bj-table-center{gap:15px;min-height:130px}.bj-center-info{max-width:100px}.bj-color-tag{font-size:12px;padding:6px}.bj-hand{gap:7px}.bj-turn{margin-top:18px}.bj-turn h3{font-size:22px}.bj-footer{align-items:flex-start}.bj-header-actions button{padding:7px 9px}.bj-room-code{font-size:45px}.bj-hand-heading{letter-spacing:0}.bj-deck{font-size:18px}}
@media(prefers-reduced-motion:reduce){.bj-hand .bj-card{transition:none}}

#bj-dialog{background:#163844}.bj-header{background:#ffd58f}.bj-player{background:#fff5d9}.bj-bank{text-align:center;border:3px solid #91bbbf55;border-radius:22px;padding:20px 14px;margin:15px auto 25px;max-width:700px;background:#102d38}.bj-bank h3{color:#fff5d9;font-size:15px;letter-spacing:3px;margin:0 0 10px}.bj-bank strong#bj-bank-total{display:block;color:#ffd55c;font-size:24px;margin:14px 0 0}.bj-bank-cards{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.bj-card{background:#fffaf0;color:#14252e;border:3px solid #102329;width:78px;height:112px;border-radius:10px;display:grid;place-items:center;box-shadow:0 4px 0 #0004}.bj-card strong{background:none;border:0;transform:none;font-size:39px;display:block;width:auto;height:auto}.bj-corner{top:5px;left:7px;font-size:19px;line-height:1;font-weight:900}.bj-corner small{display:block;font-size:14px;margin-top:1px}.bj-corner-bottom{top:auto;left:auto;right:7px;bottom:5px;transform:rotate(180deg)}.bj-red-suit{color:#d4444c}.bj-back{background:repeating-linear-gradient(45deg,#203e65,#203e65 9px,#29527e 9px,#29527e 11px);border:4px solid #fff5d9;color:#fff5d9}.bj-back strong{color:#fff5d9}.bj-back>span{font-size:16px;position:absolute;bottom:8px}.bj-players{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.bj-player{padding:15px}.bj-player-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.bj-player-heading strong{font-size:17px}.bj-player-heading .bj-total{margin:0;border:2px solid #102329;background:#95f5d8;border-radius:8px;padding:5px 9px;font-size:16px;font-weight:900;white-space:nowrap}.bj-player-cards{display:flex;gap:6px;flex-wrap:wrap;margin:14px 0}.bj-player-state{font-size:14px!important;font-weight:800}.bj-actions{display:flex;gap:16px;justify-content:center;margin:24px 0}.bj-actions button{font-size:20px;padding:12px 35px;min-width:140px}.bj-actions button:last-child{background:#95f5d8}.blackjack-card .fast-click-art{background:#383a40;color:#fff5d9}.blackjack-card .card-name-art{font-size:43px}.bj-menu .bj-option p{font-size:16px}.bj-me{box-shadow:0 0 0 2px #6bbaff}.bj-rules{color:#dce9e9}
@media(max-width:650px){.bj-players{grid-template-columns:1fr}.bj-player{padding:12px}.bj-player .bj-card{width:61px;height:89px}.bj-card strong{font-size:31px}.bj-corner{font-size:15px}.bj-corner small{font-size:11px}.bj-bank{padding:14px 10px;margin-bottom:18px}.bj-bank .bj-card{width:70px;height:102px}.bj-actions{position:sticky;bottom:8px;z-index:3;padding:9px;background:#102d38dd;border-radius:14px;gap:10px}.bj-actions button{min-width:0;flex:1;font-size:18px;padding:10px 18px}.bj-player-heading strong{font-size:15px}}

#bj-home{max-width:none;margin:12px 0 24px;background:transparent;border:0;box-shadow:none;padding:0;color:#fff5d9}
.bj-home-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px;padding:12px 8px}.bj-home-hero small{font-size:11px;letter-spacing:2px;color:#95f5d8;font-weight:900}#bj-home h3{font-size:clamp(36px,4.5vw,58px);line-height:1.04;margin:12px 0;letter-spacing:-2px}.bj-home-hero p{color:#c2ddd3;max-width:540px}#bj-home-art{width:250px;flex-shrink:0}#bj-home-art svg{display:block;width:100%;height:190px}#bj-account{font-size:13px}
#bj-home .bj-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}#bj-home .bj-option{display:flex;flex-direction:column;gap:14px;background:#fff5d9;border:3px solid #102329;border-radius:18px;padding:24px;color:#102329;box-shadow:0 5px 0 #071a18}#bj-home .bj-duel-option{background:#d5eaff}.bj-mode-number{font-size:10px;font-weight:900;letter-spacing:1.2px;color:#35504b}#bj-home .bj-option h4{font-size:27px;margin:0;line-height:1.1}#bj-home .bj-option p{font-size:14px;line-height:1.5;margin:0 0 4px;min-height:42px;color:#35504b}#bj-home .bj-option label{font-size:12px;font-weight:800}#bj-home .bj-option select{min-height:46px;width:100%}#bj-home .bj-option .game-button{width:100%;min-height:50px;padding:10px;font-size:15px}#bj-solo{margin-top:auto}#bj-home .bj-option small{font-size:12px;line-height:1.5;color:#35504b}.bj-duel-symbol{font-size:44px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:18px;flex:1}.bj-duel-symbol span{font-size:14px;color:#467a99}.bj-code-entry{display:flex;gap:8px;margin-top:8px}.bj-code-entry input{min-width:0;width:100%;letter-spacing:4px;font-size:22px;text-align:center}.bj-code-entry .game-button{max-width:90px}#bj-join-form{margin-top:auto;padding-top:16px;border-top:1px solid #10232925}
#bj-search{text-align:center;max-width:700px;padding:44px 30px;margin:30px auto}#bj-search small{letter-spacing:2px;color:#35504b;font-weight:900}#bj-search h3{margin-top:18px}#bj-search-status{font-weight:800}#bj-search-cancel{min-width:220px;min-height:52px;margin-top:18px}.bj-search-spinner{width:64px;height:64px;border:6px solid #10232920;border-top-color:#258ab3;border-right-color:#16a88a;border-radius:50%;margin:0 auto 24px;animation:bj-search-spin 1.1s linear infinite}@keyframes bj-search-spin{to{transform:rotate(360deg)}}
@media(max-width:850px){#bj-home .bj-menu-grid{grid-template-columns:1fr}#bj-home .bj-option{padding:22px}#bj-home .bj-option p{min-height:0}.bj-home-hero{gap:12px}#bj-home-art{width:150px}#bj-home-art svg{height:140px}.bj-duel-symbol{font-size:32px}#bj-home .bj-option .game-button{min-height:48px}#bj-search{padding:30px 20px}}
@media(max-width:450px){#bj-home-art{width:100px}#bj-home-art svg{height:110px}.bj-home-hero{align-items:flex-start}#bj-home h3{font-size:35px}.bj-home-hero p{font-size:14px}}
@media(prefers-reduced-motion:reduce){.bj-search-spinner{animation:none}}

.bj-solo-symbol{display:flex;align-items:center;justify-content:center;gap:18px;font-size:56px;flex:1;color:#35504b}.bj-solo-symbol span{font-size:44px;font-weight:900}#bj-home .bj-option button{margin-top:0}#bj-home #bj-solo{margin-top:auto}
