:root{--bg: #2b3a24;--panel: rgba(248, 234, 204, .96);--panel-border: #3f2832;--panel-inner: #e3b778;--ink: #3a2a1a;--muted: #7a6650;--accent: #3fa34d;--accent-dark: #2d7a38;--danger: #c0392b;--xp: #6c8ee8;--energy: #f2b134;font-family:Segoe UI,system-ui,sans-serif;color:var(--ink)}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden;background:var(--bg)}button{font:inherit;cursor:pointer}.hidden{display:none!important}#game{position:fixed;top:0;right:0;bottom:0;left:0}#game canvas{display:block}#game .labels{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.nametag{font-size:12px;font-weight:700;color:#fff;padding:1px 6px;border-radius:8px;background:#281c108c;white-space:nowrap;text-shadow:0 1px 0 #000}.nametag.self{color:#fff3b0}#loading{background:radial-gradient(circle at 50% 30%,#6fb34f,#2b5a24);z-index:40}.loading-panel{width:min(360px,100%);padding:20px 24px;text-align:center}.loading-panel h2{margin:0 0 12px;color:var(--accent-dark)}#loading-bar{width:0}.panel{background:var(--panel);border:3px solid var(--panel-border);border-radius:8px;box-shadow:inset 0 0 0 3px var(--panel-inner),0 4px #0000004d}.screen{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:16px}#auth{background:radial-gradient(circle at 50% 30%,#6fb34f,#2b5a24)}.auth-panel{width:min(380px,100%);padding:24px}.auth-panel h1{margin:0;text-align:center;color:var(--accent-dark)}.sub{text-align:center;color:var(--muted);margin:4px 0 16px}.auth-panel:not(.register) .reg-only{display:none}form label{display:block;font-size:14px;margin-bottom:10px;color:var(--muted)}form input,.modal-panel input,.modal-panel select{display:block;width:100%;padding:8px 10px;margin-top:4px;font:inherit;border:2px solid #d8c7a4;border-radius:6px;background:#fffdf6;color:var(--ink)}.error{color:var(--danger);min-height:20px;font-size:14px;margin-bottom:8px}.tabs{display:flex;gap:6px;margin-bottom:14px}.tabs button{flex:1;padding:8px;border:2px solid #d8c7a4;background:#f4e8cc;border-radius:6px;color:var(--muted)}.tabs button.active{background:var(--accent);border-color:var(--accent-dark);color:#fff}.tabs.small{margin-bottom:6px}.tabs.small button{padding:3px;font-size:12px}button.primary,.btn{padding:8px 14px;border:none;border-radius:6px;background:var(--accent);color:#fff;box-shadow:0 3px 0 var(--accent-dark)}button.primary{width:100%;font-weight:600}.btn:disabled{background:#b8ad98;box-shadow:none;cursor:not-allowed}.btn.secondary{background:#c99a5b;box-shadow:0 3px #8b5e34}.btn.danger{background:var(--danger);box-shadow:0 3px #8e2a1f}.btn.small{padding:4px 10px;font-size:13px}#hud>*{position:fixed}.hud-top-left{top:12px;left:12px;padding:10px 12px;width:230px}.name-row{display:flex;justify-content:space-between;align-items:center;font-weight:700;margin-bottom:6px}.badge{background:var(--accent);color:#fff;font-size:12px;padding:2px 8px;border-radius:99px}.bar{position:relative;height:16px;background:#e3d6b8;border-radius:4px;overflow:hidden;margin-bottom:5px}.bar>div{height:100%;transition:width .3s}.bar.xp>div{background:var(--xp)}.bar.energy>div{background:var(--energy)}.bar span{position:absolute;top:0;right:0;bottom:0;left:0;font-size:11px;line-height:16px;text-align:center;font-weight:600}.coins{font-weight:700}.hud-top-right{top:12px;right:12px;padding:8px 14px;text-align:right;font-weight:600}#hud-location{font-size:13px;color:var(--muted);font-weight:400}.hud-menu{top:90px;right:12px;display:flex;flex-direction:column;gap:6px}.hud-menu button{display:flex;align-items:center;gap:6px;padding:6px 10px;background:var(--panel);border:3px solid var(--panel-border);border-radius:8px;font-size:18px;box-shadow:inset 0 0 0 2px var(--panel-inner),0 3px #0000004d}.hud-menu button:hover{background:#fff6e0}.hud-menu button span{font-size:13px}#hotbar{bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:4px;padding:6px;max-width:calc(100vw - 24px);overflow-x:auto}.slot{position:relative;width:54px;height:54px;flex:none;border:2px solid #c9a06a;border-radius:6px;background:#ecd3a5;display:flex;align-items:center;justify-content:center;padding:0}.slot.active{border-color:var(--panel-border);background:#fff3d6;box-shadow:inset 0 0 0 2px #f2c94c;transform:translateY(-3px)}.slot img{width:40px;height:40px;image-rendering:pixelated}.slot .key{position:absolute;top:1px;left:4px;font-size:10px;color:var(--muted)}.slot .qty{position:absolute;bottom:1px;right:4px;font-size:12px;font-weight:700}#chat{left:12px;bottom:12px;width:320px;padding:8px}#chat-log{height:150px;overflow-y:auto;font-size:13px;margin-bottom:6px}#chat-log .msg b{color:var(--accent-dark)}#chat-log .msg.farm b{color:sienna}#chat-log .sys{color:var(--muted);font-style:italic}#chat-input{margin:0;padding:5px 8px;font-size:13px}#hint{bottom:112px;left:50%;transform:translate(-50%);padding:6px 14px;font-size:14px;font-weight:600;white-space:nowrap;z-index:5}#hint kbd{background:#3f2832;color:#fff;border-radius:4px;padding:0 6px;font-family:inherit}#minimap{right:12px;bottom:12px;width:192px;height:144px;padding:0;image-rendering:pixelated}.big-icon{font-size:28px;width:40px;text-align:center}.sign-label{pointer-events:auto;cursor:pointer;font-size:12px;font-weight:700;color:#3a2a1a;text-align:center;background:#f8eaccf2;border:2px solid #3f2832;border-radius:6px;padding:2px 8px;white-space:nowrap}.sign-label small{display:block;font-weight:400;color:#7a6650}.sign-label:hover{background:#fff6e0}#help{bottom:14px;right:216px;font-size:12px;padding:3px 9px;opacity:.85;white-space:nowrap;cursor:help}#modal{background:#00000073}.modal-panel{width:min(640px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:2px solid #e3d6b8}.modal-head h2{margin:0;font-size:20px}#modal-close{border:none;background:none;font-size:20px;color:var(--muted)}#modal-body{padding:14px;overflow-y:auto}.list{display:flex;flex-direction:column;gap:6px}.row{display:flex;align-items:center;gap:10px;padding:6px 8px;background:#f8efda;border-radius:6px}.row img{width:40px;height:40px;image-rendering:pixelated}.row .grow{flex:1;min-width:0}.row .meta{font-size:12px;color:var(--muted)}.row.locked{opacity:.55}.row input[type=number]{width:70px;margin:0;padding:4px 6px}.empty{color:var(--muted);text-align:center;padding:20px}.form-row{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin-bottom:12px}.form-row label{flex:1;min-width:100px;margin:0;font-size:13px;color:var(--muted)}table{width:100%;border-collapse:collapse}td,th{padding:6px 8px;text-align:left;border-bottom:1px solid #e3d6b8}tr.me{background:#d9f0c8}#animal-panel{position:fixed;right:216px;bottom:12px;width:330px;padding:10px 12px;z-index:6}.ap-head{display:flex;gap:10px;align-items:center;margin-bottom:6px}.ap-icon{font-size:34px}.ap-head .x,.link{border:none;background:none;font-size:15px;color:var(--muted);padding:0 2px}.ap-row{font-size:13px;margin:5px 0}.ap-bar{margin-top:3px}.ap-hearts{font-size:12px;letter-spacing:-1px}.ap-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.ok{color:var(--accent-dark)}.animal-bubble{pointer-events:auto;cursor:pointer}.animal-bubble>span{display:inline-block;font-size:20px;line-height:1;padding:5px 7px;border-radius:50% 50% 50% 6px;background:linear-gradient(#fffef8,#fff3d6);border:2px solid #3f2832;box-shadow:0 3px #00000040,0 0 10px #ffeca0b3;animation:bob 1.2s ease-in-out infinite}.animal-bubble.hungry{cursor:default}.animal-bubble.hungry>span{background:#ffe1d9;font-size:16px;animation:none;opacity:.9;box-shadow:0 2px #00000040}@keyframes bob{50%{transform:translateY(-4px)}}.animal-tag{font-size:11px;color:#fff;background:#281c1080;padding:0 5px;border-radius:6px;white-space:nowrap}#fishing{position:fixed;left:50%;bottom:150px;transform:translate(-50%);width:340px;padding:10px 14px;text-align:center;z-index:7}#fishing.bite{border-color:#e53935;animation:shake .3s infinite}@keyframes shake{25%{transform:translate(calc(-50% - 2px))}75%{transform:translate(calc(-50% + 2px))}}#fish-msg{font-weight:700;margin-bottom:8px}.fish-bar{position:relative;height:22px;background:#d8c7a4;border-radius:11px;overflow:hidden;margin-bottom:6px}.fish-zone{position:absolute;top:0;bottom:0;background:#4caf50}.fish-needle{position:absolute;top:-2px;bottom:-2px;width:4px;margin-left:-2px;background:#3f2832}#fishing kbd{background:#3f2832;color:#fff;border-radius:4px;padding:0 5px}.ic{width:20px;height:20px;vertical-align:middle;image-rendering:pixelated}.row>.ic{width:36px;height:36px}.recipe{line-height:1.8}.row select{width:auto;margin:0;padding:3px;font-size:12px}.row .x{border:none;background:none;color:var(--danger);font-size:14px}.modal-panel.wide{width:min(940px,100%)}.inv{display:grid;grid-template-columns:280px 1fr;gap:16px;min-height:460px}.inv-left{display:flex;flex-direction:column;gap:8px}#inv-preview{width:280px;height:320px;border-radius:10px;cursor:grab;background:radial-gradient(circle at 50% 35%,#fff8e6,#e6d3a8);border:2px solid #d8c7a4}.try-bar{background:#fff3c4;border:2px solid #f2c94c;border-radius:8px;padding:6px 8px;font-size:13px;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.slots{display:flex;flex-direction:column;gap:4px}.slot-row{display:flex;align-items:center;gap:8px;background:#f8efda;border-radius:6px;padding:4px 8px;font-size:13px;min-height:34px}.slot-name{width:70px;color:var(--muted);font-size:12px}.slot-item{flex:1;display:flex;align-items:center;gap:6px}.slot-row .x{border:none;background:none;color:var(--danger);font-size:14px}.inv-right{min-width:0;display:flex;flex-direction:column}#inv-content{overflow-y:auto;max-height:520px;padding-right:4px}.chips{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px}.chip{border:2px solid #d8c7a4;background:#f4e8cc;border-radius:99px;padding:3px 12px;font-size:13px;color:var(--muted)}.chip.active{background:var(--accent);border-color:var(--accent-dark);color:#fff}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px}.card{background:#f8efda;border:2px solid transparent;border-radius:10px;padding:8px;display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center;cursor:pointer;transition:transform .1s}.card:hover{transform:translateY(-2px);border-color:#e3b778}.card.worn{border-color:var(--accent);background:#e4f3d6}.card.tried{border-color:#f2c94c;background:#fff3c4}.card-name{font-size:12px;font-weight:600;min-height:30px;display:flex;align-items:center}.thumb{width:72px;height:72px;object-fit:contain}.thumb.small{width:24px;height:24px}.thumb.swatch{display:inline-flex;align-items:center;justify-content:center;border-radius:50%;font-size:34px;border:2px solid rgba(0,0,0,.15)}.thumb.small.swatch{font-size:13px}.tag{font-size:12px;color:var(--accent-dark);font-weight:700}@media (max-width: 760px){.inv{grid-template-columns:1fr}#inv-preview{width:100%;height:240px}}#tooltip{position:fixed;pointer-events:none;background:#281c10e6;color:#fff;padding:4px 8px;border-radius:4px;font-size:12px;white-space:nowrap;z-index:20}#toasts{position:fixed;top:70px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:6px;align-items:center;z-index:30;pointer-events:none}.toast{background:var(--panel);border:2px solid var(--panel-border);border-radius:8px;padding:6px 14px;font-size:14px;animation:toast 3s forwards}.toast.err{border-color:var(--danger);color:var(--danger)}@keyframes toast{0%{opacity:0;transform:translateY(-8px)}10%,80%{opacity:1;transform:none}to{opacity:0}}@media (max-width: 760px){.hud-menu button span,#help,#minimap{display:none}#chat{width:calc(100vw - 24px);bottom:84px}#chat-log{height:80px}.hud-top-left{width:180px}}.seed-cats{flex-wrap:wrap;gap:4px;margin-bottom:8px}.seed-cats button{flex:0 0 auto}.warn{color:#c0542b}.fish-book{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:6px}.fish-card{border:2px solid var(--panel-border);border-radius:8px;padding:6px 8px;background:#fff6;font-size:13px}.fish-card.unknown{opacity:.55;filter:grayscale(.8)}.fish-card .ic{font-size:22px;float:left;margin-right:6px}.fish-card .meta{font-size:11px}.sub-h{font-size:15px;margin:12px 0 6px}.account-form{gap:6px;flex-wrap:wrap}.account-form input{flex:1 1 140px;min-width:0}.tabs.wrap{flex-wrap:wrap}.tabs.wrap button{flex:1 0 auto}.login-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.login-days .day{border:2px solid var(--panel-border);border-radius:8px;padding:4px;text-align:center;font-size:12px;display:flex;flex-direction:column;gap:2px;background:#ffffff59}.login-days .day.done{opacity:.55;background:#d7efcf}.login-days .day.today{border-color:#e0a526;box-shadow:0 0 0 2px #f6d27a;background:#fff6d8}.bar.mini{position:relative;height:14px;margin:4px 0 2px;background:#0000001f;border-radius:7px;overflow:hidden}.bar.mini>div{height:100%;background:linear-gradient(90deg,#6cc04a,#3fa34d)}.bar.mini>span{position:absolute;top:0;right:0;bottom:0;left:0;font-size:10px;line-height:14px;text-align:center;color:#222}.hire-btns{display:flex;flex-direction:column;gap:4px}.hot-prices{margin-bottom:8px;line-height:1.5}.nametag small.title{display:block;font-size:10px;color:#f6d27a;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.7)}.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:6px;margin-bottom:6px}.tile{position:relative;aspect-ratio:1;padding:0;border:2px solid #c9a06a;border-radius:8px;background:#f3e2bd;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .08s,box-shadow .08s}.tile:hover{transform:translateY(-2px);box-shadow:0 3px #0000002e;background:#fff3d6}.tile img{width:70%;height:70%;object-fit:contain;image-rendering:pixelated;pointer-events:none}.tile .emo{font-size:28px;line-height:1;pointer-events:none}.tile .badge{position:absolute;right:2px;bottom:1px;font-size:11px;font-weight:700;color:#3f2832;background:#fffaebe6;border-radius:6px;padding:0 3px;line-height:14px;pointer-events:none}.tile .corner{position:absolute;left:3px;top:1px;font-size:11px;pointer-events:none}.tile.locked{opacity:.45;filter:grayscale(.6);cursor:default}.tile.locked:hover{transform:none;box-shadow:none}.tile.done{opacity:.6;background:#dcefd2}.tile.ready{border-color:#3fa34d;box-shadow:inset 0 0 0 2px #bfe6b0}.tile.hot{border-color:#e0a526;box-shadow:inset 0 0 0 2px #f6d27a}.tile.busy{background:#efe6d0}.tile.unknown .emo{filter:grayscale(1) brightness(.4);opacity:.6}.tile.empty-slot{border-style:dashed;background:transparent;opacity:.6}.tile.picked{border-color:var(--panel-border);background:#fff3d6;transform:translateY(-2px)}.tiles-h{font-size:13px;font-weight:700;margin:8px 0 4px;color:var(--muted)}#itip{position:fixed;z-index:50;max-width:260px;pointer-events:none;font-size:12px;line-height:1.45;background:#fffaf0;border:2px solid var(--panel-border);border-radius:8px;padding:6px 9px;box-shadow:0 4px 12px #00000040}#itip b{display:block;font-size:13px;margin-bottom:2px}#itip.hidden{display:none}.pop{position:fixed;z-index:60;min-width:170px;max-width:300px;background:#fffaf0;border:2px solid var(--panel-border);border-radius:10px;padding:8px;box-shadow:0 6px 18px #0000004d;animation:popin .12s ease-out}@keyframes popin{0%{transform:translateY(-4px);opacity:0}}.pop-h{display:flex;justify-content:space-between;gap:10px;margin-bottom:6px;font-size:13px}.pop-h span{color:var(--muted)}.chips{display:flex;flex-wrap:wrap;gap:5px}.chips .btn{display:flex;flex-direction:column;align-items:center;line-height:1.15;padding:4px 10px}.chips .btn small{font-size:10px;opacity:.85;font-weight:400}.pills{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:8px;align-items:center}.pill{font-size:12px;background:#f3e2bd;border:1px solid #d9bd8a;border-radius:999px;padding:2px 9px}.pill.hot{background:#fff1c9;border-color:#e0a526}.pill.link{cursor:pointer}.bar-actions{margin-bottom:8px}.tabs.icons{flex-wrap:wrap;gap:4px}.tabs.icons .itab{flex:0 0 auto;display:flex;align-items:center;gap:5px;padding:6px 10px}.tabs.icons .itab i{font-style:normal;font-size:18px}.tabs.icons .itab span{display:none;font-size:13px}.tabs.icons .itab.active span{display:inline}.hud-menu.dock{flex-direction:column;gap:5px}.hud-menu.dock>button,.hud-menu.dock .more>button{position:relative;width:46px;height:46px;justify-content:center;padding:0;font-size:22px}.hud-menu.dock .dot{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;border-radius:9px;background:#e53935;color:#fff;font-size:11px;font-weight:700;line-height:18px;padding:0 4px;box-shadow:0 0 0 2px #fff;animation:pulse 1.6s infinite}.hud-menu.dock .dot.hidden{display:none}@keyframes pulse{50%{transform:scale(1.15)}}.hud-menu .more{position:relative}#more-menu{position:absolute;right:54px;top:0;display:flex;flex-direction:column;gap:4px;padding:6px;min-width:170px}#more-menu.hidden{display:none}#more-menu button{display:flex;align-items:center;gap:8px;width:100%;padding:6px 10px;background:transparent;border:none;box-shadow:none;font-size:16px;border-radius:6px;text-align:left}#more-menu button:hover{background:#fff1c9}#more-menu button span{font-size:13px}.chat-head{align-items:center}.chat-head .chat-x{flex:0 0 auto;margin-left:auto;padding:2px 8px}#chat.hidden{display:none}#chat-show{position:absolute;left:12px;bottom:12px;width:48px;height:48px;font-size:24px;padding:0;cursor:pointer}#chat-show.hidden{display:none}#chat-show .unread{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;border-radius:9px;background:#e53935;color:#fff;font-size:11px;font-weight:700;line-height:18px;padding:0 4px}#chat-show .unread.hidden{display:none}.pen-label{font-size:12px;font-weight:700;color:#3f2832;background:#fff8e6eb;border:2px solid #8a5a33;border-radius:6px;padding:1px 7px;white-space:nowrap}.pop-why{font-size:13px;color:#a0442a;font-weight:600}.tile.locked[data-pick]{cursor:help}.shop-label{pointer-events:auto;cursor:pointer;font-size:13px;font-weight:700;color:#3f2832;text-align:center;white-space:nowrap;background:linear-gradient(#fffbea,#f6e2b0);border:2px solid #8a5a33;border-radius:8px;padding:3px 9px;box-shadow:0 3px #00000040}.shop-label small{display:block;font-size:10px;font-weight:400;color:var(--muted)}body.sleep-fade:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:#0b1020;z-index:80;pointer-events:none;animation:sleepfade 1.6s ease-in-out forwards}@keyframes sleepfade{0%{opacity:0}40%,60%{opacity:1}to{opacity:0}}#minimap.hidden{display:none}#fair{background:#00000073;z-index:30}#fair.hidden{display:none}.fair-panel{width:360px;text-align:center;padding:12px 16px 16px}.fair-x{border:none;background:none;font-size:18px}.wheel-wrap{position:relative;width:260px;height:260px;margin:14px auto}.wheel{position:relative;width:260px;height:260px;border-radius:50%;border:6px solid #3f2832;box-shadow:0 4px #0000004d;transition:transform 4s cubic-bezier(.17,.67,.12,1)}.wheel span{position:absolute;left:50%;top:50%;width:36px;height:36px;margin:-18px 0 0 -18px;font-size:26px;line-height:36px}.wheel-pin{position:absolute;top:-18px;left:50%;transform:translate(-50%);font-size:30px;color:#d8342b;z-index:2;text-shadow:0 2px 0 #3f2832}.fair-msg{margin-bottom:10px}.pop-custom{display:flex;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed #d9bd8a}.pop-custom .pop-qty{width:90px;margin:0;padding:4px 6px;text-align:right}.pop-custom .btn{flex:1;white-space:nowrap}.pop-sum{font-weight:400;font-size:11px;opacity:.85}.title-tag{color:#e0b44a;font-weight:600;font-size:.85em}.tile .stars{position:absolute;right:3px;top:2px;pointer-events:none;font-size:10px;line-height:1;color:#f2c14e;text-shadow:0 0 2px #000,0 0 2px #000;letter-spacing:-1px}.tile .stars.s3{color:#fd5}.cards-lobby{display:grid;gap:12px;color:var(--ink)}.cards-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.cards-heading h2{margin:0;font-size:19px}.cards-heading p{margin:4px 0 0;color:var(--muted);font-size:12px}.cards-code{letter-spacing:1px;color:var(--ink);-webkit-user-select:all;user-select:all}.cards-games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cards-games>div{display:grid;gap:4px;padding:8px 10px;background:#fffaf0;border:1px solid #e0d1b3;border-radius:6px}.cards-games span{font-size:11px;color:var(--muted);line-height:1.35}.cards-create{display:grid;grid-template-columns:minmax(160px,1fr) 130px auto auto;align-items:end;gap:8px;padding:10px;background:#f5edda;border:1px solid #d5bd8c;border-radius:6px}.cards-create label,.cards-join label{display:grid;gap:4px;font-size:12px;font-weight:700}.cards-private{display:flex!important;align-items:center;padding-bottom:8px;white-space:nowrap}.cards-private input{width:auto;margin:0}.cards-join{display:flex;align-items:end;gap:8px}.cards-join input{width:140px;text-transform:uppercase}.cards-section-title{padding-bottom:4px;border-bottom:1px solid #d5bd8c;font-weight:700}.cards-room-list{display:grid;gap:6px;max-height:240px;overflow:auto}.cards-room-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;background:#fffaf0;border:1px solid #e0d1b3;border-radius:5px}.cards-room-row>div{display:grid;gap:3px}.cards-room-row span,.cards-note{color:var(--muted);font-size:11px}.cards-note{margin:0}.cards-lobby .muted{color:var(--muted);font-size:12px}.cards-seats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.cards-seat{position:relative;display:grid;align-content:center;gap:4px;min-height:58px;padding:8px;background:#fffaf0;border:2px solid #d9c7a4;border-radius:8px}.cards-seat.empty{background:#eee8dc;border-style:dashed;border-color:#c4b496}.cards-seat.empty b,.cards-seat.empty span{color:#a39479}.cards-seat.mine{background:#fff6dc}.cards-seat.ready{border-color:#3b8b53}.cards-seat.turn{border-color:#e2a72e;box-shadow:0 0 0 3px #e2a72e59}.cards-seat.out{opacity:.55}.cards-seat b{font-size:13px}.cards-seat span{display:flex;align-items:center;flex-wrap:wrap;gap:3px;font-size:11px;color:var(--muted)}.cards-seat .ok{color:#2d7a38;font-weight:700}.cards-seat em{margin-left:10px;font-style:normal}body:has(#modal:not(.hidden)) #hint{display:none}.cards-seat .dealer{display:inline-grid;place-items:center;width:16px;height:16px;border-radius:50%;background:#fff;border:1px solid #333;font-size:10px;font-weight:800;color:#333}.cards-clock{position:absolute;top:6px;right:6px;padding:1px 6px;border-radius:10px;background:#e2a72e;color:#fff;font-size:11px;font-weight:800}.cards-clock.low{background:#c0392b;animation:cards-blink .6s infinite alternate}@keyframes cards-blink{to{opacity:.5}}.cards-board{display:grid;justify-items:center;gap:10px;padding:14px;background:radial-gradient(ellipse at center,#3f7d57,#2b5a3e 75%);border:6px solid #6b4a30;border-radius:18px;color:#fffaf0;box-shadow:inset 0 0 24px #00000059}.cards-msg{margin:0;text-align:center;font-size:14px}.cards-msg.small{font-size:12px;opacity:.85}.cards-hint{margin:0;padding:3px 10px;border-radius:12px;background:#e2a72ee6;color:#2b2100;font-size:12px;font-weight:700}.cards-table{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;min-height:84px;padding:8px 14px;border-radius:12px;background:#00000026}.cards-table small{flex-basis:100%;text-align:center;font-size:11px;opacity:.85}.cards-table .muted{color:#fff9}.cards-hand{display:flex;flex-wrap:wrap;justify-content:center;padding:14px 10px 0}.cards-hand .pcard{margin:0 -5px}.cards-hand .pcard[data-card]:hover{transform:translateY(-5px);z-index:1}.pcard{position:relative;display:inline-grid;place-items:center;width:50px;height:72px;padding:0;background:linear-gradient(#fffefa,#f3eee2);border:1px solid #bdb3a0;border-radius:6px;color:#222;box-shadow:0 2px 3px #0000004d;cursor:default;transition:transform .08s}.pcard[data-card]{cursor:pointer}.pcard i{position:absolute;top:3px;left:5px;font-style:normal;font-weight:800;font-size:14px}.pcard b{font-size:26px;line-height:1}.pcard.red{color:#c0392b}.pcard.picked,.cards-hand .pcard.picked:hover{transform:translateY(-14px);border-color:#e2a72e;box-shadow:0 0 0 2px #e2a72e,0 4px 6px #0000004d;z-index:2}.pcard.small{width:30px;height:42px;border-radius:4px}.pcard.small i{font-size:10px;top:1px;left:3px}.pcard.small b{font-size:15px;margin-top:8px}.pcard.back{width:14px;height:20px;margin-right:-8px;background:repeating-linear-gradient(45deg,#9c3b30 0,#9c3b30 3px,#b9483b 3px,#b9483b 6px);border:1px solid #fff;box-shadow:none}.pcard.slot{background:#ffffff14;border:2px dashed rgba(255,255,255,.35);box-shadow:none}.cards-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.cards-raise{display:inline-flex;align-items:center;gap:4px;padding:3px 6px;border-radius:8px;background:#0003}.cards-raise input{width:86px;padding:4px 6px}.cards-raise .chip{padding:3px 7px;border:1px solid #e2c27a;border-radius:10px;background:#fff3d1;color:#5a4210;font-size:11px;font-weight:700;cursor:pointer}.cards-raise .chip:disabled{opacity:.5;cursor:default}.cards-showdown{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.cards-showdown>div{display:grid;grid-template-columns:auto auto;justify-items:center;gap:3px;padding:6px 8px;border-radius:8px;background:#0003;font-size:12px}.cards-showdown>div>b,.cards-showdown>div>span{grid-column:1 / -1}.cards-showdown>div.win{background:#e2a72e73;box-shadow:0 0 0 2px #e2a72e}.cards-showdown span{font-size:11px}.cards-dice{display:flex;gap:12px;font-size:52px;line-height:1}.cards-dice span{display:grid;place-items:center;width:66px;height:66px;background:#fffaf0;border-radius:12px;color:#8b1e1e;box-shadow:0 4px #0000004d}.cards-bets{display:grid;grid-template-columns:1fr .8fr 1fr;gap:10px;width:100%;max-width:520px}.cards-bet{display:grid;justify-items:center;gap:2px;padding:10px;border:2px solid rgba(255,255,255,.5);border-radius:10px;background:#0000002e;color:#fffaf0;cursor:pointer}.cards-bet b{font-size:20px}.cards-bet span{font-size:11px;opacity:.85}.cards-bet i{font-style:normal;font-weight:800;color:#ffd76a}.cards-bet.on{background:#e2a72e;border-color:#fff3c4;color:#2b2100}.cards-bet.on i{color:#6b3d00}#cards-pill{position:fixed;left:50%;top:10px;transform:translate(-50%);z-index:40;padding:6px 14px;border:2px solid #6b4a30;border-radius:16px;background:#2f6447;color:#fffaf0;font:inherit;font-size:13px;cursor:pointer;box-shadow:0 3px 8px #0000004d}#cards-pill.alert{background:#e2a72e;color:#2b2100;animation:cards-blink .7s infinite alternate}@media (max-width: 620px){.cards-create{grid-template-columns:1fr 1fr}.cards-create label:first-child{grid-column:1 / -1}.cards-seats,.cards-games{grid-template-columns:repeat(2,minmax(0,1fr))}.pcard{width:40px;height:58px}}.tx{display:grid;gap:10px;color:var(--ink)}.tx-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.tx-head h2{margin:0;font-size:19px}.tx-head p{margin:3px 0 0;color:var(--muted);font-size:11px}.tx-clock{display:grid;justify-items:center;min-width:92px;padding:6px 10px;border-radius:10px;background:#2b5a3e;color:#fffaf0}.tx-clock span{font-size:11px;opacity:.85}.tx-clock b{font-size:30px;line-height:1;font-variant-numeric:tabular-nums}.tx-clock.low{background:#c0392b;animation:cards-blink .5s infinite alternate}.tx-table{display:grid;grid-template-columns:1fr 190px 1fr;align-items:stretch;gap:12px;padding:14px;border:6px solid #6b4a30;border-radius:18px;background:radial-gradient(ellipse at center,#3f7d57,#2b5a3e 75%);box-shadow:inset 0 0 24px #00000059}.tx-side{display:grid;justify-items:center;align-content:start;gap:4px;padding:12px 8px;border-radius:14px;color:#fffaf0;border:2px solid rgba(255,255,255,.35);transition:transform .2s,box-shadow .2s,opacity .2s}.tx-side.tai{background:linear-gradient(#8f2a22,#5f1712)}.tx-side.xiu{background:linear-gradient(#f4efe3,#d8cfbb);color:#2a2a2a}.tx-side h3{margin:0;font-size:30px;letter-spacing:2px}.tx-side small{font-size:11px;opacity:.85}.tx-total{font-size:22px;font-weight:800;font-variant-numeric:tabular-nums}.tx-people{font-size:12px;opacity:.85}.tx-mine{padding:2px 8px;border-radius:10px;background:#e2a72e;color:#2b2100;font-size:12px;font-weight:700}.tx-side .btn{margin-top:6px}.tx-side.win{transform:scale(1.04);box-shadow:0 0 0 4px #ffd76a,0 0 24px #ffd76ab3}.tx-side.lose{opacity:.45}.tx-center{display:grid;place-items:center;align-content:center;gap:8px;color:#fffaf0}.tx-bowl{position:relative;display:grid;place-items:center;width:140px;height:86px;border-radius:70px 70px 14px 14px;background:radial-gradient(ellipse at 35% 25%,#a0643a,#6b3d1f 55%,#3f2210);color:#f7d9a0;font-size:34px;font-weight:800;box-shadow:0 8px #2b170a,0 12px 14px #00000073}.tx-bowl:after{content:"";position:absolute;bottom:-14px;width:170px;height:14px;border-radius:50%;background:#e9dcc0;box-shadow:0 3px 6px #0006;z-index:-1}.tx-bowl.shake{animation:tx-shake .18s infinite alternate}@keyframes tx-shake{0%{transform:translate(-6px) rotate(-8deg)}to{transform:translate(6px,-4px) rotate(8deg)}}.tx-dice{display:flex;gap:6px}.tx-dice span{display:grid;place-items:center;width:54px;height:54px;border-radius:10px;background:#fffaf0;color:#8b1e1e;font-size:46px;line-height:1;box-shadow:0 4px #0000004d}.tx-dice.drop span{animation:tx-drop .4s ease-out}@keyframes tx-drop{0%{transform:translateY(-30px) rotate(-90deg);opacity:0}to{transform:none;opacity:1}}.tx-sum{font-size:18px}.tx-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px}.tx-chip{min-width:44px;height:44px;padding:0 8px;border:3px dashed #fff3c4;border-radius:50%;background:#c9822a;color:#fff;font-weight:800;cursor:pointer;box-shadow:0 2px #00000040}.tx-chip[data-tx=allin]{border-radius:22px;background:#8f2a22}.tx-chip.on{background:#e2a72e;outline:3px solid #2b5a3e}.tx-chip:disabled{opacity:.4;cursor:default}.tx-bar input.tx-amount{width:110px;flex:none}.tx-bar .muted{color:var(--muted);font-size:11px}.tx-cau{display:grid;gap:6px;padding:8px 10px;border:1px solid #e0d1b3;border-radius:8px;background:#fffaf0}.tx-cau-h{display:flex;justify-content:space-between;gap:8px;font-size:12px}.tx-cau-h span{color:var(--muted)}.tx-dots{display:flex;flex-wrap:wrap;gap:4px;min-height:24px}.tx-dots i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;font-style:normal;font-size:10px;font-weight:800}.tx-dots i.tai{background:#8f2a22;color:#fff}.tx-dots i.xiu{background:#f4efe3;color:#333;border:1px solid #bdb3a0}.tx-dots i.triple{background:#e2a72e;color:#2b2100}.tx-fair{margin:0;color:var(--muted);font-size:11px;word-break:break-all}.tx-fair code{font-size:10px}.tx-fair .ok{color:#2d7a38}.tx-fair .warn{color:#c0392b}@media (max-width: 620px){.tx-table{grid-template-columns:1fr 1fr}.tx-center{grid-column:1 / -1;grid-row:1}}
