/* The production shell is isolated from the unchanged presentation prototype. */
:root{--n-paper:#f7f4ed;--n-ink:#28231f;--n-line:#ded8ce;--n-muted:#857b71;--n-accent:#e9694e;--n-wine:#35242d}
html:has(.native-shell){background:var(--n-paper)}
body.native-shell{margin:0;padding:0;background:var(--n-paper);color:var(--n-ink);font:14px/1.5 'Golos Text',-apple-system,BlinkMacSystemFont,sans-serif;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none}
.native-shell *{box-sizing:border-box}.native-shell button,.native-shell input,.native-shell select{font:inherit}.native-shell button,.native-shell a{touch-action:manipulation}.native-shell button{cursor:pointer}.native-shell button:disabled{opacity:.45;cursor:default}.native-shell :focus-visible{outline:2px solid var(--n-accent);outline-offset:3px}.native-shell [hidden]{display:none!important}
#native-app{max-width:520px;min-height:100dvh;margin:auto;position:relative;background:var(--n-paper)}
.n-page{padding:calc(15px + env(safe-area-inset-top)) 24px calc(108px + env(safe-area-inset-bottom));min-height:100dvh}.n-page.no-tabs{padding-bottom:calc(28px + env(safe-area-inset-bottom))}.n-top{display:flex;align-items:center;justify-content:space-between;gap:12px;height:48px;margin-bottom:25px}.n-logo{font-family:'Manrope',sans-serif;font-weight:800;font-size:30px;letter-spacing:-2px;line-height:1.1}.n-logo span{color:var(--n-accent)}.n-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--n-line);border-radius:50%;background:transparent;font-size:22px;flex-shrink:0}.n-mini{font-size:10px;color:var(--n-muted);letter-spacing:1.7px;text-transform:uppercase}.n-title{font-family:'Prata',Georgia,serif;font-weight:400;font-size:34px;line-height:1.3;letter-spacing:-1px;margin:10px 0 15px}.n-sub{color:var(--n-muted);font-size:13px;line-height:1.7;margin:0 0 24px}.n-title em{font-style:normal;color:#a45f4b}.n-section{display:flex;justify-content:space-between;align-items:center;margin:27px 0 14px;font-size:12px;font-weight:500}.n-section span{color:var(--n-muted);font-size:11px;font-weight:400}
.n-btn{display:flex;justify-content:center;align-items:center;gap:14px;width:100%;min-height:54px;padding:14px 17px;background:var(--n-accent);border:0;border-radius:14px;color:#2e201b;font-weight:550;text-decoration:none;text-align:center}.n-btn.secondary{background:#ebe6dc;border:1px solid var(--n-line)}.n-btn.dark{background:var(--n-wine);color:var(--n-paper)}.n-btn.ghost{background:transparent;color:var(--n-muted)}.n-btn.danger{background:#f6e3df;color:#983e2e}.n-stack{display:grid;gap:11px}.n-row{width:100%;display:flex;align-items:center;gap:14px;text-align:left;padding:18px 0;background:transparent;border-bottom:1px solid var(--n-line);min-height:64px}.n-row>span:first-child{font-size:22px;width:26px;text-align:center;color:#8b7467}.n-row>div{flex:1}.n-row strong{display:block;font-weight:500;font-size:14px}.n-row small{display:block;font-size:11px;color:var(--n-muted);margin-top:3px}.n-row>b{font-weight:400;color:var(--n-muted)}.n-label{display:grid;gap:8px;font-size:12px;color:#72675e;margin-bottom:18px}.n-input{width:100%;min-height:54px;border:1px solid var(--n-line);border-radius:12px;background:#fffaf4;color:var(--n-ink);padding:12px 15px;font-size:16px!important;outline:none}.n-input:focus{border-color:#a7826a}.n-code{text-align:center;font-size:25px!important;letter-spacing:7px;text-transform:uppercase}.n-note{font-size:11px;color:var(--n-muted);line-height:1.7}.n-error{padding:12px;border-radius:10px;background:#f8e3de;color:#9d3b2b;font-size:13px;margin-bottom:16px}.n-card{border:1px solid var(--n-line);padding:20px;border-radius:17px;background:#f0ece3}.n-card p:last-child{margin-bottom:0}.n-empty{padding:35px 14px;text-align:center;color:var(--n-muted)}.n-empty>span{font-size:42px;display:block;color:#b5a391;margin-bottom:15px}
.n-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);height:calc(78px + env(safe-area-inset-bottom));padding:8px 18px calc(12px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;gap:14px;background:#f7f4edf5;border-top:1px solid var(--n-line);backdrop-filter:blur(15px);z-index:80}.n-nav a{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#a4988c;font-size:10px;text-decoration:none}.n-nav a span{font-size:22px;line-height:1.2}.n-nav a.active{color:var(--n-ink)}.n-nav a.active:before{content:'';position:absolute;top:8px;width:3px;height:3px;border-radius:50%;background:var(--n-accent)}
.n-hero{position:relative;overflow:hidden;min-height:246px;padding:28px 24px;border-radius:20px;color:#f7f0e1;background:radial-gradient(ellipse at 75% 80%,#55624d 0,transparent 52%),#273d33}.n-hero .n-mini{color:#c1bc9f}.n-hero h2{font-family:'Prata',Georgia,serif;font-weight:400;font-size:29px;line-height:1.4;position:relative;z-index:2;margin:16px 0 9px}.n-hero p{font-size:11px;color:#d0c6b0;max-width:165px}.n-hero:after{content:'';position:absolute;inset:12px;border:1px solid #bda67a32;border-radius:140px;pointer-events:none}.hero-cards{position:absolute;right:-6px;bottom:22px;width:115px;height:140px;transform:rotate(17deg);color:#383126}.hero-cards i{position:absolute;width:83px;height:121px;background:#f5ead4;border:1px solid #d8c5a8;border-radius:8px;font:25px Georgia;padding:10px;box-shadow:-5px 5px 13px #0003;font-style:normal}.hero-cards i:first-child{transform:rotate(-18deg) translateX(-20px)}.hero-cards i:last-child{transform:rotate(8deg) translateX(20px);color:#af443a}.hero-cards b{display:block;font-size:48px;text-align:center;font-weight:400}.n-hero .n-btn{width:185px;min-height:46px;padding:10px;font-size:12px;margin-top:23px;position:relative;z-index:3}
.n-mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.n-mode{padding:20px 16px;border:1px solid var(--n-line);border-radius:16px;background:transparent;text-align:left;min-height:120px}.n-mode>span{font-size:24px;color:#9b7a67}.n-mode strong{display:block;font-size:13px;font-weight:500;margin-top:13px}.n-mode small{font-size:10px;color:var(--n-muted)}.n-footer-mark{text-align:center;margin-top:34px;font-size:9px;letter-spacing:2.6px;color:#b4a99a}.n-profile{display:flex;align-items:center;gap:18px;margin:22px 0}.n-avatar{width:66px;height:66px;display:grid;place-items:center;background:#d6cebc;border:1px solid #b8a994;border-radius:50%;font:27px Georgia;color:#5e5548}.n-avatar.small{width:45px;height:45px;font-size:21px;flex-shrink:0}.n-profile h1{font:29px 'Prata',Georgia,serif;margin:0}.n-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;border-top:1px solid var(--n-line);border-bottom:1px solid var(--n-line);padding:21px 0;margin-bottom:20px}.n-stats strong{display:block;font-family:'Prata',Georgia,serif;font-size:26px;font-weight:400}.n-stats small{font-size:10px;color:var(--n-muted)}.n-avatar-options{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.n-avatar-options button{width:45px;height:45px;border-radius:50%;background:#e9e3d6;border:1px solid var(--n-line);font-size:20px}.n-avatar-options .selected{border:2px solid var(--n-accent)}
.n-seat-row{display:flex;align-items:center;gap:14px;padding:17px 0;border-bottom:1px solid var(--n-line)}.n-seat-row>div:nth-child(2){flex:1}.n-seat-row strong{font-size:14px;font-weight:500}.n-seat-row small{display:block;color:var(--n-muted);font-size:11px}.n-seat-row .ready{color:#638064;font-size:12px}.n-seat-row.vacant{color:#afa391}.n-seat-row.vacant .n-avatar{background:transparent;border-style:dashed}.n-invite{display:flex;align-items:center;justify-content:space-between;margin:25px 0;padding:15px 18px;background:#ebe6da;border-radius:13px}.n-invite strong{font-size:20px;letter-spacing:4px;font-weight:500}.n-invite button{background:transparent;min-height:44px;font-size:12px}.n-search-art{height:185px;display:grid;place-items:center;position:relative;margin:15px 0}.n-search-art:before,.n-search-art:after{content:'';position:absolute;border:1px solid #d1c4b0;border-radius:50%;width:145px;height:145px}.n-search-art:after{width:105px;height:105px}.n-search-art span{font-size:43px;color:#9a8062}.n-search-art i{position:absolute;background:#e9694e;border-radius:50%;width:8px;height:8px;top:15px}.n-badge{font-size:10px;padding:5px 8px;border-radius:20px;background:#e6e9df;color:#677658;white-space:nowrap}
.n-shop-hero{background:#382832;min-height:220px;border-radius:8px;position:relative;overflow:hidden;padding:30px 23px;color:#f8eddb}.n-shop-hero img{position:absolute;right:-85px;bottom:-27px;width:270px}.n-shop-hero h2{font:26px/1.5 'Prata',Georgia,serif;position:relative;z-index:1}.n-shop-hero small{color:#bcaa9e;font-size:10px}.n-filters{display:flex;gap:20px;overflow:auto;white-space:nowrap;padding:20px 0 8px;border-bottom:1px solid var(--n-line)}.n-filters button{background:transparent;font-size:11px;color:#a3988b;padding:5px 0 9px}.n-filters .active{color:var(--n-ink);border-bottom:2px solid var(--n-accent)}.n-catalog{display:grid;grid-template-columns:1fr 1fr;gap:25px 14px;margin-top:22px}.n-product{padding:0;text-align:left;background:transparent;min-width:0}.n-product>strong{display:block;font-size:12px;font-weight:500;margin-top:6px}.n-product>small{display:block;color:var(--n-muted);font-size:10px;margin:4px 0}.n-product>span{font-size:11px;color:#766b5c}.n-art{background:#ece7dc;position:relative;aspect-ratio:1;border-radius:6px;overflow:hidden;display:grid;place-items:center}.n-art img{width:108%;height:108%;object-fit:contain}.n-art .coffee-art-img{width:75%;height:75%}.n-art.big{aspect-ratio:1.05;margin:0 -9px 26px}.n-art.big img{width:90%;height:90%}.n-art .back-art{width:50%;height:72%;transform:rotate(12deg);background:#423044;border:5px double #b59b7b;border-radius:5px;display:grid;place-items:center;box-shadow:8px 9px 12px #3b281931;color:#b9a184;font-size:38px}.n-art .felt-art{width:88%;height:76%;border-radius:50%;background:#503139;border:7px solid #392830;display:grid;place-items:center;color:#c9b59655;font-size:45px}.n-art .felt-art.moss{background:#435b48;border-color:#334838}.n-art .bracelet-art{width:62%;height:38%;border:13px ridge #b9b7ae;border-radius:50%;transform:rotate(-27deg);box-shadow:6px 12px 12px #44352422}.n-purchase-bar{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);padding:18px 24px calc(18px + env(safe-area-inset-bottom));border-top:1px solid var(--n-line);background:var(--n-paper);display:flex;align-items:center;gap:16px;z-index:90}.n-purchase-bar>div{flex:1;min-width:80px}.n-purchase-bar small{display:block;font-size:10px;color:var(--n-muted)}.n-purchase-bar strong{font-weight:500}.n-purchase-bar .n-btn{width:58%;font-size:12px}.n-price-note{font-size:11px;color:var(--n-muted);margin:20px 0}
#native-overlay:not(:empty){position:fixed;inset:0;z-index:150;display:flex;align-items:flex-end;justify-content:center;background:#24182380;backdrop-filter:blur(7px)}.n-sheet{position:relative;width:min(100%,520px);max-height:calc(100dvh - env(safe-area-inset-top) - 25px);overflow:auto;overscroll-behavior:contain;background:var(--n-paper);padding:31px 24px calc(27px + env(safe-area-inset-bottom));border-radius:27px 27px 0 0}.n-sheet:before{content:'';position:absolute;top:12px;left:calc(50% - 17px);width:34px;height:4px;border-radius:3px;background:#d2c5b8}.n-sheet h2{font:25px 'Prata',Georgia,serif;margin:7px 44px 25px 0}.n-sheet>.n-icon{position:absolute;right:21px;top:23px;font-size:21px;width:38px;height:38px}.n-sheet .n-note{margin-top:17px}.n-choice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.n-choice-grid button{height:53px;border:1px solid var(--n-line);border-radius:11px;background:#ede8dc;font-size:20px}.n-choice-grid button.red{color:#ac433a}.n-choice-grid button.selected{background:#ead7c7;border-color:#b78365}.n-choice-grid button:disabled{background:transparent;text-decoration:line-through;opacity:.28}.n-table{width:100%;border-collapse:collapse;font-size:11px}.n-table th,.n-table td{padding:13px 4px;border-bottom:1px solid var(--n-line);text-align:center}.n-table th{color:var(--n-muted);font-weight:400}.n-table td:first-child{text-align:left}.n-table .me{background:#e9e7d9}.n-table-scroll{max-height:52dvh;overflow:auto}.n-table tfoot{font-weight:600}.n-toggle{display:flex;align-items:center;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--n-line)}.n-toggle input{accent-color:#677b64;width:24px;height:24px}.n-help details{padding:17px 0;border-bottom:1px solid var(--n-line)}.n-help summary{cursor:pointer;font-size:14px}.n-help p{font-size:12px;color:var(--n-muted);line-height:1.8}.n-rules{font:12px/1.9 'Golos Text',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere}.n-result-medal{text-align:center;font-size:66px;color:#b59a68;margin:15px 0}.n-result-list{margin:24px 0}.n-result-list .n-seat-row:first-child{background:#eee5d4;padding:17px 12px;border-radius:14px}
#native-toast{position:fixed;left:50%;bottom:calc(100px + env(safe-area-inset-bottom));transform:translateX(-50%);width:max-content;max-width:calc(100% - 36px);z-index:220;border-radius:12px;background:#33252e;color:#f5ebdb;padding:13px 20px;font-size:12px;text-align:center;box-shadow:0 5px 20px #0002;pointer-events:none}#native-toast:empty{display:none}#native-connection{position:fixed;top:env(safe-area-inset-top);left:0;right:0;padding:10px 16px;background:#e9694e;color:#271d16;text-align:center;font-size:12px;z-index:210}.launch{height:100dvh;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8b7968}.launch .n-logo{font-size:56px;color:var(--n-ink)}.launch p{font-family:'Prata',Georgia,serif;margin-top:23px}.loading-dot{width:7px;height:7px;background:var(--n-accent);border-radius:50%;margin-top:30px}
/* Keep the table's existing visual proportions; remove only presentation chrome. */
.native-shell .native-table{height:100dvh;min-height:530px;max-width:520px;border-radius:0;box-shadow:none;width:100%;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);display:flex;flex-direction:column;overflow:hidden;position:relative;--felt:#3c5146;--felt-edge:#273930;background:#281c24;color:#f2e8da}
.native-table .game-header{height:66px;min-height:66px;padding:0 20px;z-index:12;position:relative}.native-table .round-strip{height:30px;min-height:30px;z-index:12}.native-table .arena{flex:1;position:relative;min-height:160px;margin:0}.native-table .hand-zone{height:160px;min-height:160px;background:transparent;z-index:12;position:relative;padding-top:8px}.native-table .cards-fan{bottom:27px;height:100px;left:16px;right:16px}.native-table .gesture-hint{position:absolute;bottom:6px;left:0;right:0;text-align:center;font-size:8px;color:#b9b59b;margin:0}.native-table .turn-status{margin:0 21px;font-size:10px}.native-table .player{border:0}.native-table .player-top{top:10px}.native-table .player-left,.native-table .player-right{top:29%}.native-table .player.active .avatar{box-shadow:0 0 0 2px #e98d68}.native-table .self-player{bottom:12px}.native-table .trick{top:45%;left:50%;transform:translate(-50%,-50%);width:160px;height:150px}.native-table .hand-card{width:64px;height:96px;top:10px}.native-table .hand-card.selected{transform:translateY(calc(var(--drop) - 20px)) rotate(var(--angle))}.native-table .opponent-cards{position:absolute;display:flex;gap:0}.native-table .native-back{height:53px;width:34px;margin-left:-25px;background:repeating-linear-gradient(45deg,#493444,#493444 3px,#5e4558 4px,#493444 5px);border:1px solid #b89c7c;border-radius:3px;box-shadow:inset 0 0 0 3px #442c3e}.native-table .native-back:first-child{margin-left:0}.native-table .top-cards{left:50%;top:93px;transform:translateX(-50%)}.native-table .left-cards{left:8px;top:55%;transform:rotate(90deg);transform-origin:22px 25px}.native-table .right-cards{right:8px;top:55%;transform:rotate(-90deg);transform-origin:calc(100% - 22px) 25px}.native-table .native-count{position:absolute;right:-13px;bottom:-18px;background:#382733;color:#cebaab;padding:2px 5px;border-radius:20px;font-size:8px}.native-table .table-cup{width:65px;bottom:20px;right:22px;left:auto;top:auto;position:absolute;z-index:2;pointer-events:none}.native-table .table-cup img{width:100%}.native-table .n-timer{font-variant-numeric:tabular-nums;color:#d9c5a4;font-size:10px;margin-left:auto}.native-table .n-phase-panel{position:absolute;left:20px;right:20px;top:43%;text-align:center;color:#ddceb6;font-size:12px}.native-table .n-phase-panel .n-btn{max-width:215px;margin:18px auto 0}.native-table .table-surface{top:130px}.native-table .n-logo{color:#f8edde}.native-table .n-icon{border-color:#d9bfa120;color:#d9cdbf}.native-table .n-online{font-size:8px;color:#aaa990}.native-table .table-monogram{top:48%}.native-table .avatar{font-size:22px}.native-table .player strong{font-size:10px}.native-table .player-score{font-size:9px}.native-table .n-round-result{position:absolute;top:36%;left:15%;right:15%;background:#f1eadc;color:#3f352d;padding:16px;border-radius:12px;text-align:center;font-size:12px;z-index:25}.native-table .n-round-result strong{display:block;font:21px 'Prata',Georgia,serif;margin-bottom:7px}.native-table .n-round-result .n-btn{min-height:40px;margin-top:12px;font-size:11px}
@media(min-width:600px){#native-app{box-shadow:0 0 60px #37291e15}.native-shell{background:#e8e3d9}}
@media(max-height:720px){.n-top{margin-bottom:15px}.n-page{padding-left:20px;padding-right:20px}.n-title{font-size:29px}.n-hero{min-height:211px;padding:22px}.n-hero h2{font-size:25px}.native-table .game-header{height:56px;min-height:56px}.native-table .hand-zone{height:145px;min-height:145px}.native-table .top-cards{top:82px}.native-table .native-back{height:43px;width:28px;margin-left:-21px}.native-table .avatar{width:34px;height:34px}.native-table .player-top{top:4px}.native-table .trick{scale:.9}.native-table .hand-card{width:58px;height:87px}.native-table .table-cup{width:52px}.native-table .n-round-result{top:32%}}

.native-shell:before{content:"";position:fixed;top:0;left:0;right:0;height:env(safe-area-inset-top);background:#f7f4ed;z-index:140;pointer-events:none}.native-shell.at-table:before{background:#281c24}

.native-shell .native-table .opponent-cards{inset:auto;width:max-content;height:auto;display:flex;gap:0;pointer-events:none}.native-shell .native-table .top-cards{left:50%;top:93px;transform:translateX(-50%)}.native-shell .native-table .left-cards{left:8px;top:55%;transform:rotate(90deg)}.native-shell .native-table .right-cards{right:8px;top:55%;transform:rotate(-90deg)}.native-table .native-back{display:block;flex-shrink:0}.native-table .moving-hand{pointer-events:none}

.native-table .n-worn-item{position:absolute;left:20px;bottom:40px;width:65px;text-align:center;pointer-events:none;z-index:2}.n-worn-item .n-art{height:52px;background:transparent;overflow:visible}.n-worn-item .n-art img{width:100%;height:100%}.n-worn-item>span{display:block;font-size:8px;color:#d5c5ad}.n-worn-item .bracelet-art{border-width:5px}
/* Atelier collection: independent appearance layers; game timing is unchanged. */
.n-art .ring-art{position:relative;width:52%;height:43%;border:14px solid #b7b7b0;border-radius:47%;transform:rotate(-18deg);background:transparent;box-shadow:inset 2px 3px 4px #4c4745,3px 9px 12px #3b28192b;border-color:#f1ece2 #868983 #a5aaa5 #c9c9c0}
.ring-art b{position:absolute;display:grid;place-items:center;left:19%;top:-40%;width:68%;height:125%;border:4px ridge #c9c9c0;background:linear-gradient(135deg,#393939,#0d1519);border-radius:28%;color:#deded7;font:clamp(16px,5vw,34px) Georgia;box-shadow:1px 3px 4px #24272b88}
.cosmetic-orbit .ring-art{border-color:#d8bb78 #8a6c34 #bf9a56 #ebd9a1}.cosmetic-orbit .ring-art b{display:none}.cosmetic-garnet .ring-art b{background:radial-gradient(ellipse at 35% 25%,#cf6c68,#77232d 45%,#2a1021 90%);border-radius:45%}
.n-art.cosmetic-herbarium .back-art{background:repeating-linear-gradient(60deg,#526c5c 0 9px,#8c9c732f 10px 11px),#526c5c;color:#e4dabc;border-color:#d7c9a7}.n-art.cosmetic-meridian .back-art{background:repeating-radial-gradient(ellipse at center,#314758 0 7px,#aa925942 8px 9px);color:#d6b876;border-color:#bda36b}.back-art b{font-weight:400}
.n-art.cosmetic-moss .felt-art{background:repeating-linear-gradient(0deg,#435b48 0 2px,#485f4c 3px);border-color:#334838}.n-art.cosmetic-wine .felt-art{background:repeating-linear-gradient(45deg,#503139 0 3px,#57363e 4px);border-color:#392830}.n-art.cosmetic-ink .felt-art{background:repeating-linear-gradient(90deg,#304959 0 2px,#344e60 3px);border-color:#ab9368;box-shadow:0 7px 15px #1d303b25}
.cosmetic-thread .bracelet-art{border:7px double #793a3f;box-shadow:2px 4px 6px #40231b30;position:relative}.cosmetic-thread .bracelet-art:after{content:'';position:absolute;right:5%;top:15%;width:13px;height:14px;border:4px ridge #c8a263;border-radius:50%}.tattoo-art{width:52%;height:60%;color:#414a44}.tattoo-art svg{width:100%;height:100%}.cosmetic-tattoo_spade{background:#e5ddce}.cosmetic-tattoo_branch{background:#e0e5d7}.cosmetic-tattoo_stars{background:#e0e1e5}
.token-art{width:58%;aspect-ratio:1;border:8px ridge #bfa06b;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 30% 20%,#e4c88f,#ad874b);box-shadow:5px 8px 10px #45301d2b;color:#725329;transform:rotate(-17deg)}.token-art span{width:84%;height:84%;border:1px solid #8e6d38;border-radius:50%;display:grid;place-items:center;font:50px Georgia}
.watch-art{position:relative;width:57%;aspect-ratio:1;border:7px ridge #b99b67;border-radius:50%;background:#f6e9ce;box-shadow:4px 7px 11px #45301d2b;color:#675331;display:grid;justify-items:center}.watch-art:before{content:'';position:absolute;top:-26%;width:26%;height:20%;border:4px solid #b99b67;border-radius:50%}.watch-art span{font:17px Georgia;margin-top:5%}.watch-art small{position:absolute;bottom:3%;font:13px Georgia}.watch-art i,.watch-art b{position:absolute;bottom:50%;left:49%;width:2px;height:33%;background:#675331;transform-origin:bottom;transform:rotate(-30deg)}.watch-art b{height:24%;transform:rotate(0deg)}
.n-fitting{height:310px;position:relative;display:flex;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at center,#e7d7c3,#ede6da);border-radius:12px;margin-bottom:25px}.n-fitting>span{position:absolute;top:12px;right:12px;height:max-content;font-size:8px;letter-spacing:1.3px;background:#f7f4ede6;padding:6px 9px;border-radius:5px;color:#7e6b58}.n-hand-look{position:relative;width:240px;aspect-ratio:2/3;flex-shrink:0;overflow:hidden}.n-hand-look>img{width:100%;height:100%;object-fit:contain;display:block}.n-fitting .n-hand-look{height:90%;width:auto;align-self:center}
.n-hand-ring{position:absolute}
.n-hand-tattoo{position:absolute;left:46%;top:50%;width:20%;height:16%;color:#303f39;opacity:.75;transform:rotate(10deg);mix-blend-mode:multiply}.n-hand-tattoo svg{width:100%;height:100%}
.n-finger-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:10px}.n-finger-picker button{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;background:#eee8de;border:1px solid #d9cebd;border-radius:10px;min-height:55px;padding:9px 12px}.n-finger-picker span{font-size:12px}.n-finger-picker small{font-size:10px;color:#8c7964;margin-top:4px}.n-finger-picker .selected{border-color:#a46b4e;background:#e9d9c6;box-shadow:inset 0 0 0 1px #a46b4e}.n-page:has(.n-purchase-bar){padding-bottom:145px}
.n-look-preview{position:relative;height:350px;overflow:hidden;border-radius:90px 90px 18px 18px;background:radial-gradient(ellipse,#536953,#2c4539);border:5px solid #344033;box-shadow:inset 0 0 0 1px #b69f6b88}.n-look-preview.felt-wine{background:radial-gradient(ellipse,#69414b,#38242e);border-color:#392830}.n-look-preview.felt-ink{background:radial-gradient(ellipse,#466176,#243743);border-color:#a08b63}.n-look-mark{position:absolute;top:25px;left:0;right:0;text-align:center;color:#d6c19d77;font-size:8px;letter-spacing:2.7px}.n-look-preview>.n-hand-look{position:absolute;bottom:-20px;width:190px;left:6%}.n-look-deck{position:absolute;right:10%;top:65px;width:135px}.n-look-object{position:absolute;right:4%;bottom:15px;width:110px}.n-look-preview .n-art{background:transparent}.n-collection-look{margin-top:15px}
.n-table-object .n-art{background:transparent;overflow:visible}.n-table-object .token-art{width:75%;border-width:4px}.n-table-object .token-art span{font-size:24px}.n-table-object .watch-art{width:75%;border-width:4px}.n-table-object .watch-art span{font-size:10px}.n-table-object .watch-art small{font-size:8px}.n-table-object .watch-art:before{border-width:2px}.native-table.deck-herbarium .native-back{background:repeating-linear-gradient(60deg,#526c5c 0 6px,#8c9c73 7px,#526c5c 8px);box-shadow:inset 0 0 0 3px #526c5c;border-color:#d7c9a7}.native-table.deck-meridian .native-back{background:repeating-radial-gradient(ellipse,#314758 0 4px,#aa925970 5px 6px);box-shadow:inset 0 0 0 2px #314758;border-color:#bda36b}
.native-shell .bracelet-art:before,.native-shell .bracelet-art:after{content:none}.native-shell .cosmetic-thread .bracelet-art:after{content:'';background:#d8b671;transform:none}

/* Hand and accessories share the same geometry in fitting and movement. */
.native-table .moving-hand .n-hand-look{width:100%;height:100%;aspect-ratio:auto;overflow:visible}
.native-table .moving-hand .ring-art b{font-size:clamp(5px,1.8vw,10px)}
/* September table refinements; keep prototype CSS isolated. */
html:has(.native-shell),.native-shell{touch-action:manipulation}
.native-shell .native-table .table-surface{left:7px;right:7px;border:2px solid #8e7960;border-bottom:0;box-shadow:inset 0 0 0 3px #26382f,inset 0 0 45px #17151740;bottom:-40px}
.native-shell .native-table .arena{background:none;box-shadow:none}
.native-shell .native-table .avatar{position:relative;width:43px;height:43px;font-size:22px;flex:none;overflow:visible}
.native-table .player strong{font-size:12px;line-height:1.2;max-width:98px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.native-table .player strong:after,.native-table .player strong:before,.native-table .player:after,.native-table .self-dot{display:none}
.native-table .player-left{left:14px}.native-table .player-right{right:14px}
.native-table .player.active .avatar{box-shadow:none}
.native-table .active .avatar:after{content:'';position:absolute;inset:-5px;border-radius:50%;background:conic-gradient(transparent 0deg var(--timer-elapsed,0deg),#e9996f var(--timer-elapsed,0deg) 360deg);mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 0)}
.native-table .self-player{gap:5px;bottom:4px}.native-table .self-player .avatar{width:30px;height:30px;font-size:15px}.native-table .self-player>strong{font-size:13px}.native-table .self-player>span:last-child{font-size:10px}
.native-table .native-back{transform:translateY(var(--fan-drop,0px)) rotate(var(--fan-angle,0deg));transform-origin:50% 160%;box-shadow:-2px 2px 4px #170e1e44,inset 0 0 0 2px #442c3e}
.native-table .hand-card{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.native-table .hand-card.drop-ready .playing-card{box-shadow:0 0 0 2px #b8cea2,0 8px 22px #101e1755}
.native-table .hand-card:disabled{opacity:1}.native-table .hand-card:has(.face-down){filter:none}
.native-table .playing-card .card-ornament{display:none}.native-table .playing-card{color:#252323}.native-table .playing-card.red{color:#ae3439}
.native-shell .n-suit{display:inline-grid;place-items:center;line-height:1;font-size:24px;font-family:'Golos Text',sans-serif;letter-spacing:0}
.native-shell .n-suit.is-black{color:#252323!important}.native-shell .n-suit.is-red{color:#b4343d!important}
.native-table .trump-chip .n-suit{width:31px;height:29px;border:1px solid #d9cbb6;border-radius:6px;background:#f1e9db;font-size:22px}
.native-table .n-phase-panel{left:24%;right:24%;top:44%;font-size:11px}.native-table .n-phase-panel .n-btn{min-height:42px;margin-top:12px;font-size:11px}
#native-overlay.phase-overlay:not(:empty){background:none;backdrop-filter:none;pointer-events:none;align-items:center;padding-bottom:4dvh}
.n-sheet.n-phase-sheet{pointer-events:auto;width:min(236px,64vw);max-height:240px;border-radius:15px;padding:15px 14px;background:#f7f1e7;box-shadow:0 12px 32px #140c2340;border:1px solid #c6b699}
.n-phase-sheet:before{display:none}.n-phase-sheet h2{font-size:17px;margin:0 18px 8px 0;line-height:1.3}.n-phase-sheet>.n-icon{right:5px;top:5px;width:28px;height:28px;font-size:17px;border:0}.n-phase-sheet .n-sub{font-size:10px;line-height:1.35;margin:5px 0}.n-phase-sheet .n-choice-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:10px 0}.n-phase-sheet .n-choice-grid button{height:35px;font:17px 'Manrope',sans-serif;border-radius:7px}.n-phase-sheet .n-note{font-size:9px;line-height:1.4;margin:7px 0 0}.n-phase-sheet .n-btn{min-height:30px;font-size:10px;padding:7px}.n-choice-grid button:disabled{opacity:1;color:#a19a91;background:repeating-linear-gradient(-45deg,transparent 0 5px,#8e80700b 6px 7px);text-decoration:line-through;text-decoration-thickness:2px;border-style:dashed}
.n-sheet>.n-btn+.n-btn{margin-top:11px}
.n-table{table-layout:fixed}.n-table th:first-child,.n-table td:first-child{width:42px;overflow-wrap:anywhere}.n-table th{overflow-wrap:anywhere}.n-table th,.n-table td{padding:11px 3px}
.native-table .n-round-result{left:21%;right:21%;top:33%;padding:14px;z-index:30}.native-table .n-round-result>strong{font-size:17px}.n-round-scores>div{display:grid;grid-template-columns:1fr auto auto;gap:8px;padding:5px 0;border-bottom:1px solid #77695622;text-align:left;font-size:11px}.n-round-scores span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.n-round-scores small{color:#887c6b}.n-round-result p{font-size:10px;margin:12px 0 2px}
.native-table .n-deck-anchor{position:absolute;top:68%;left:50%;width:44px;height:65px;transform:translateX(-50%);z-index:29;visibility:hidden}.native-table .n-deck-anchor.visible{visibility:visible}.n-deal-deck{position:relative;width:44px;height:65px}.n-deal-deck>i,.n-dealt-card.face-down{background:repeating-linear-gradient(45deg,#483544 0 3px,#745968 4px 5px);border:1px solid #c2aa85;border-radius:4px;box-shadow:0 2px 3px #0004,inset 0 0 0 3px #463242}.n-deal-deck>i{position:absolute;inset:0;display:grid;place-items:center;color:#d0bb98;font-size:22px;font-style:normal;transform:translate(3px,-3px)}.n-deal-deck>i:first-child{transform:translate(-3px,3px)}.n-deal-deck>i:nth-child(2){transform:none}.shuffling .n-deal-deck>i:first-child{animation:deck-cut .8s ease-in-out infinite}.shuffling .n-deal-deck>i:last-child{animation:deck-cut .8s ease-in-out -.4s infinite reverse}@keyframes deck-cut{0%,100%{transform:translate(-3px,3px) rotate(-4deg)}50%{transform:translate(25px,-9px) rotate(12deg)}}
.n-dealt-card{position:absolute;pointer-events:none}.n-dealt-card .playing-card{width:100%;height:100%}.n-dealt-card .card-corner{font-size:15px}.n-dealt-card .card-suit{font-size:24px}.native-table .playing-card.face-down{background:repeating-linear-gradient(45deg,#483544 0 3px,#745968 4px 5px);border:1px solid #c2aa85;box-shadow:inset 0 0 0 3px #463242}.native-table .playing-card.face-down>*{visibility:hidden}
.native-table .n-joker-announcement{position:absolute;top:77%;left:14%;right:14%;font-size:10px;text-align:center;color:#f4e2c5;background:#241a24e8;border:1px solid #cab09133;padding:7px 8px;border-radius:8px;z-index:26}
.native-table .n-pause-panel{position:absolute;top:37%;left:20%;right:20%;z-index:55;border:1px solid #c4b495;background:#f3ecde;color:#423829;border-radius:16px;padding:18px 14px;text-align:center}.n-pause-panel>span{display:block;color:#a9804b;font-size:24px}.n-pause-panel>strong{display:block;font-size:12px}.n-pause-panel>b{display:block;font:32px 'Manrope';margin:10px}.n-pause-panel .n-btn{font-size:11px;min-height:38px}
.n-premium-badge{display:inline-grid;place-items:center;width:18px;height:18px;border:1px solid #b9a782;background:#efe3c8;color:#896731;font:13px 'Golos Text';border-radius:5px;vertical-align:middle;position:absolute;right:-5px;bottom:-3px;z-index:3}.n-avatar{position:relative}.n-profile h1{overflow-wrap:anywhere}.n-profile>div:last-child{min-width:0}.n-profile .n-note{overflow-wrap:anywhere}
.n-premium-hero{padding:27px;border-radius:18px;background:radial-gradient(ellipse at 80% 0,#786544,#332832 70%);color:#f7e9d1}.n-premium-hero>span{font:42px 'Prata',Georgia;color:#d9bd86}.n-premium-hero .n-mini{color:#cab287;margin-top:10px}.n-premium-hero h2{font:23px/1.5 'Prata',Georgia;margin:16px 0 0}.n-premium-perks{margin:20px 0}.n-premium-perks p{display:flex;gap:17px;align-items:center;padding:12px 0;border-bottom:1px solid var(--n-line)}.n-premium-perks b{color:#b5a182;font:20px 'Prata',Georgia}.n-premium-perks span{font-size:13px}.n-premium-perks small{display:block;font-size:10px;color:var(--n-muted);margin-top:3px}.n-plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.n-plan-grid button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;border:1px solid var(--n-line);border-radius:12px;background:#f0ebe1;padding:17px}.n-plan-grid strong{font-size:12px;font-weight:500}.n-plan-grid span{font:21px 'Manrope';font-weight:600}.n-plan-grid small{font-size:10px;color:var(--n-muted)}.n-plan-grid button.selected,.n-quantity button.selected{border-color:#b38f55;background:#ecdfc8;box-shadow:inset 0 0 0 1px #b38f55}.n-quantity{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.n-quantity button{border:1px solid var(--n-line);border-radius:10px;background:#eee8dd;padding:10px;font:21px 'Manrope'}.n-quantity small{display:block;font:9px 'Golos Text';color:#8c7960;margin-top:5px}.n-premium-total{display:flex;flex-direction:column;gap:4px;margin:24px 0 16px}.n-premium-total strong{font:29px 'Manrope';font-weight:700}.n-premium-total span{font-size:11px;color:var(--n-muted)}.n-gift-row{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--n-line);padding:13px 0}.n-gift-row>div{flex:1}.n-gift-row strong{font-size:13px}.n-gift-row small{display:block;font-size:10px;color:var(--n-muted)}.n-gift-row .n-btn{width:auto;font-size:10px;min-height:37px;padding:10px}
.n-chart>div{display:grid;grid-template-columns:18px 1fr 40px 62px;align-items:center;gap:8px;font-size:11px;margin:13px 0}.n-chart i{height:8px;background:linear-gradient(to right,#788865 var(--value),#e4dfd3 var(--value));border-radius:4px}.n-chart b{font-size:10px}.n-chart small{font-size:9px;color:var(--n-muted)}.n-game-analysis{margin-top:20px;border-top:1px solid var(--n-line);padding:15px 0}.n-game-analysis summary{font-size:12px;cursor:pointer}.n-game-analysis .exact{background:#e6ebdd}
.n-lobby-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.n-lobby-seat{position:relative;border:1px solid #d5c9b5;border-radius:16px;overflow:hidden;background:radial-gradient(ellipse at 50% 30%,#e2d6c1,#f1ebdf)}.n-lobby-hand{height:169px;overflow:hidden;position:relative;display:flex;justify-content:center}.n-lobby-hand .n-hand-look{width:123px;height:185px}.n-lobby-person{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 10px 13px}.n-lobby-person .n-avatar{width:34px;height:34px;font-size:16px;margin-top:-14px;margin-bottom:7px;background:#f3ecdd}.n-lobby-person strong{width:100%;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.n-lobby-person small{font-size:9px;color:#7b8064;margin-top:3px}.n-lobby-seat.vacant{background:transparent;border-style:dashed;color:#b6aa94}.n-lobby-hand>span{margin:auto;font-size:35px}.n-lobby-countdown{text-align:center;margin:20px 0;padding:13px;background:#e6eadc;border-radius:12px;font-size:12px}
@media(max-height:720px){.native-shell .native-table .avatar{width:37px;height:37px;font-size:20px}.native-table .self-player .avatar{width:26px;height:26px;font-size:14px}.native-table .player strong{font-size:11px}.native-table .self-player{bottom:0}.n-sheet.n-phase-sheet{padding:12px;max-height:208px}.n-phase-sheet .n-sub{display:none}.native-table .n-round-result{top:32%;padding:10px}.n-round-scores>div{padding:3px 0}.native-table .n-joker-announcement{top:75%}}
@media(prefers-reduced-motion:reduce){.n-deal-deck>i{animation:none!important}}
.n-art .n-ring-photo{width:100%;height:100%;object-fit:cover}
.n-lobby-seat{background:#efe7d7}.n-lobby-hand .n-hand-look{mix-blend-mode:multiply}.n-lobby-hand .n-hand-look img{object-fit:fill}
.n-sheet:focus{outline:none}.native-shell .native-table .left-cards{left:35px}.native-shell .native-table .right-cards{right:35px}.native-table[data-phase=bidding] .hand-card,.native-table[data-phase=trump_selection] .hand-card{filter:none}

.native-table[data-phase=opening] .hand-card,.native-table[data-phase=opening] .native-back{visibility:hidden}

/* Approved card face 02: large Manrope indices, mirrored bottom corner. */
.native-table .native-card-v2:not(.joker-card){container-type:inline-size;background:#f7efdf}
.native-table .native-card-v2:not(.joker-card) .card-corner{display:flex;flex-direction:column;align-items:center;left:6.25%;top:5.2%;font:700 clamp(12px,31.25cqw,27px)/1 'Manrope',sans-serif;letter-spacing:-.7px}
.native-table .native-card-v2:not(.joker-card) .card-corner small{font:clamp(9px,21.875cqw,23px)/1 'Golos Text',sans-serif;margin-top:2px;letter-spacing:0}
.native-table .native-card-v2:not(.joker-card) .card-corner.bottom{display:flex;left:auto;top:auto;right:6.25%;bottom:5.2%;transform:rotate(180deg)}
.native-table .native-card-v2:not(.joker-card) .card-suit{left:54%;top:49%;font:42cqw/1 'Golos Text',sans-serif;transform:translate(-50%,-50%)}
/* User-supplied JJOKER artwork: preserve the original letterforms. */
.n-wordmark{display:block;width:146px;aspect-ratio:3.8;background:url("/native/brand/wordmark.png") center / 137% auto no-repeat}
.n-logo{display:block;line-height:1;flex:none}.launch .n-wordmark{width:240px}
.native-table .game-brand{display:flex;flex-direction:column;align-items:center;gap:5px;line-height:1}
.native-table .game-brand .n-logo{padding:5px 10px;border-radius:7px;background:var(--n-paper)}
.native-table .game-brand .n-wordmark{width:100px}.native-table .game-brand small{margin:0;font-size:5px;letter-spacing:2px}
.native-table .table-monogram{display:flex;flex-direction:column;align-items:center;gap:12px;opacity:.18}
.native-table .table-monogram .n-wordmark{width:155px}.native-table .table-monogram>span{font-size:7px;letter-spacing:3px}

/* September revision: shared card backs must win over card-face themes. */
.native-table{--card-back:repeating-linear-gradient(45deg,#483544 0 3px,#745968 4px 5px);--back-edge:#c2aa85;--back-inset:#463242}
.native-table.deck-herbarium{--card-back:repeating-linear-gradient(60deg,#526c5c 0 6px,#8c9c73 7px,#526c5c 8px);--back-inset:#526c5c}
.native-table.deck-meridian{--card-back:repeating-radial-gradient(ellipse,#314758 0 4px,#aa925970 5px 6px);--back-inset:#314758}
.native-table .playing-card.face-down,.native-table .native-card-v2.face-down,.native-table .native-back,.native-table .n-deal-deck>i,.native-table .n-dealt-card.face-down{background:var(--card-back);border:1px solid var(--back-edge);box-shadow:inset 0 0 0 3px var(--back-inset);backface-visibility:visible}
.native-table .playing-card.face-down>*{visibility:hidden}
.native-table .hand-card:not(.legal){filter:brightness(.86);cursor:default}
.native-table .hand-card.legal{filter:none;box-shadow:0 -3px 0 #d4c497,0 4px 8px #0004}
.native-table .hand-card:has(.face-down){filter:none;box-shadow:none}
.native-table .joker-card{background:#f3ead9;color:#20221f;container-type:inline-size}
.native-table .joker-card.red{color:#c02632}
.native-table .joker-card .card-suit{font:900 48cqw/1 'Manrope',sans-serif;letter-spacing:-.18em;padding-right:.15em;background:none}
.native-table .joker-card .card-corner{font:700 18px/1 'Manrope',sans-serif}
.native-table .n-deck-anchor:not(.shuffling) .n-deal-deck>i{transform:none;animation:none}
.native-table .n-deck-anchor:not(.shuffling) .n-deal-deck>i:not(:last-child){display:none}
.native-table .n-trump-flight{z-index:70;position:absolute;pointer-events:none;width:44px;height:65px}
.native-table .n-trump-flight .playing-card{width:100%;height:100%}
body.at-table,html:has(body.at-table){height:100%;overflow:hidden;overscroll-behavior:none;background:#233b32}
body.at-table #native-app{height:100dvh;overflow:hidden;overscroll-behavior:none}
.native-shell .native-table{height:100dvh;min-height:0;max-height:100dvh;overflow:hidden;padding-bottom:env(safe-area-inset-bottom)}
.native-table .game-header{height:54px;min-height:54px;padding-top:env(safe-area-inset-top)}
.n-table-title{font:11px 'Manrope',sans-serif;letter-spacing:2px;color:#d8ceba}
.n-top .n-icon{font-size:28px;width:46px;height:46px}
.native-table .round-strip{height:auto;min-height:40px;align-items:center;gap:8px;padding:3px 16px;font-size:12px}
.native-table .round-strip>span:first-child{display:flex;align-items:center;gap:5px;flex-wrap:wrap}
.n-bid-balance{display:block;width:100%;font-size:11px;color:#ded2b4}
.native-table .trump-chip{white-space:nowrap;display:flex;align-items:center;gap:5px;font-size:12px}
.native-table .n-phase-panel{top:40%;left:16%;right:16%;z-index:24;font-size:15px;padding:10px;background:#182e28ed;border:1px solid #ead7b72b;border-radius:14px;line-height:1.5}
.native-table .n-phase-panel .n-note{font-size:13px;margin:6px 0 0;color:#e0d8c9}
.native-table .n-phase-panel .n-btn{min-height:44px;font-size:14px;margin-top:8px}
.native-shell .native-table .avatar,.native-shell .native-table .self-player .avatar{width:42px;height:42px;font-size:22px;flex-shrink:0}
.native-table .player strong,.native-table .self-player>strong{font-size:13px;max-width:95px;overflow:hidden;text-overflow:ellipsis}
.native-table .player .n-online{font-size:10px}
.native-table .self-player{bottom:5px;gap:5px}
.native-table .n-bid-state{display:inline-flex;align-items:center;justify-content:center;gap:4px;background:#1a2927f2;border:1px solid #aab5ae66;border-radius:8px;padding:4px 7px;color:#e0e4dd;font:13px/1.2 'Manrope',sans-serif;white-space:nowrap}
.native-table .n-bid-state em{font-style:normal;font-size:12px;color:inherit}
.native-table .n-bid-state small{font-size:10px;color:inherit}
.native-table .n-bid-state.exact{background:#153e2b;color:#b9f2c4;border-color:#8cbf8b}
.native-table .n-bid-state.over{background:#4e222b;color:#ffbbc0;border-color:#d88990}
.native-table .n-bid-state.pending{color:#c7c9c5}
.native-table .native-back{transform:rotate(var(--fan-angle,0deg));transform-origin:50% 160%}
.native-table .hand-zone{height:182px;min-height:182px;padding-top:6px}
.native-table .turn-status{justify-content:center;gap:7px;margin:0 10px;font-size:13px;line-height:22px}
.native-table .n-timer{margin-left:3px;font-size:13px;min-width:25px}
.native-table .cards-fan{bottom:44px}
.native-table .gesture-hint{font-size:11px;bottom:10px;padding:0 15px;line-height:1.4}
.native-table .n-round-result{left:8%;right:8%;font-size:14px}
.native-table .n-round-result>p{line-height:1.5}
.n-sheet{font-size:16px;padding:35px 20px calc(24px + env(safe-area-inset-bottom))}
.n-sheet:before{display:none}
.n-sheet-handle{position:absolute;top:0;left:0;right:0;height:28px;touch-action:none;cursor:grab}
.n-sheet-handle:after{content:'';position:absolute;width:42px;height:5px;background:#b7aa99;border-radius:5px;top:12px;left:calc(50% - 21px)}
.n-sheet h2{touch-action:none}
#native-overlay.phase-overlay{align-items:flex-end;padding:0;background:#17221b26}
.n-sheet.n-phase-sheet{width:min(100%,420px);max-height:56dvh;padding:32px 20px 20px;border-radius:24px 24px 0 0}
.n-phase-sheet h2{font-size:22px;margin-bottom:12px;margin-right:35px}
.n-phase-sheet .n-sub{display:block;font-size:14px;line-height:1.5}
.n-phase-sheet .n-note{font-size:12px;line-height:1.5}
.n-phase-sheet>.n-icon{width:44px;height:44px;font-size:23px;right:10px;top:21px}
.n-phase-sheet .n-choice-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:16px 0}
.n-phase-sheet .n-choice-grid button{height:46px;font-size:22px}
.n-phase-sheet .n-choice-grid button:first-child{font-size:16px}
.n-phase-sheet .n-btn{min-height:46px;font-size:16px}
.n-choice-grid button:disabled{opacity:.5;text-decoration:none;background:#d9d2c6;border-style:solid;color:#61594d}
.n-choice-grid button[data-legal=false]{border-style:dashed;background:#d8d0c3;color:#817466}
.n-phase-sheet .n-trump-grid,.n-trump-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.n-trump-grid .n-suit{font-size:32px}
.n-phase-sheet .n-trump-grid button:first-child{font-size:30px}
.n-table{font-size:13px;table-layout:fixed}
.n-table th:first-child,.n-table td:first-child{width:70px;white-space:normal;overflow-wrap:anywhere}
.n-table .n-score-section th{padding:12px 8px;background:#d8c9b0;border-top:3px solid #8d795b;text-align:left;font-weight:700;color:#3c3022}
.n-table .n-score-section+tr td{border-top:0}
.n-ranking-list button{display:flex;align-items:center;gap:14px;width:100%;min-height:55px;background:none;border-bottom:1px solid #d4c8b5;text-align:left;font:inherit}
.n-ranking-list button>b{margin-left:auto}
.n-ranking-list strong{position:relative}
.n-profile-visitor{text-align:center}.n-profile-visitor .n-avatar{margin:12px auto}.n-profile-visitor>strong{font-size:25px}.n-profile-visitor .n-hand-look{height:230px;width:154px;margin:10px auto}
.n-elo-result{color:#417653;font-weight:600}
.n-lobby-person{cursor:pointer}.n-seat-rating,.n-seat-reliability{display:block;font-size:11px;line-height:1.5;color:#625b50;margin-top:4px}.n-lobby-person strong{font-size:15px}
.n-lobby-hand{height:160px}.n-lobby-person{padding:12px 5px}.n-lobby-person .n-avatar{width:42px;height:42px}
.n-hero.has-active-table{padding:23px;min-height:0}.n-hero.has-active-table h2{font-size:27px;margin:12px 0}.n-hero.has-active-table>p{max-width:none}
.n-active-table{margin:18px 0;background:#f2ead8;border-radius:16px;overflow:hidden;color:#453b2e}
.n-active-felt{height:136px;background:radial-gradient(ellipse,#3b5f4b,#203b2f);position:relative;border:9px solid #b4a07b;border-radius:70px;margin:15px 24px}
.felt-wine .n-active-felt{background:radial-gradient(ellipse,#633d48,#38232b)}.felt-ink .n-active-felt{background:radial-gradient(ellipse,#405869,#203642)}
.n-active-jj{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font:900 34px 'Manrope';color:#e4d6b826;letter-spacing:-8px}
.n-active-seat{position:absolute;width:28px;height:28px;display:grid;place-items:center;background:#e9dcc3;border:2px solid #8d7b58;border-radius:50%;font-size:13px;color:#382f22;z-index:2}
.n-active-seat.seat-0{left:calc(50% - 14px);bottom:-20px}.n-active-seat.seat-1{left:-20px;top:calc(50% - 14px)}.n-active-seat.seat-2{left:calc(50% - 14px);top:-20px}.n-active-seat.seat-3{right:-20px;top:calc(50% - 14px)}.n-active-seat.current{border-color:#ed906b;box-shadow:0 0 0 4px #eea58055}
.n-active-trick{display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.n-active-trick i{width:23px;height:34px;background:#f6eddc;border:1px solid #bba57c;border-radius:3px;margin-left:-3px;font:10px 'Manrope';padding:2px;transform:rotate(-8deg)}.n-active-trick i:nth-child(2n){transform:rotate(9deg)}.n-active-trick b{display:block}.n-active-trick .red{color:#b83937}
.n-active-progress{padding:10px 12px 16px;text-align:center;font-size:13px;line-height:1.6}.n-active-progress strong,.n-active-progress span{display:block}
@media(max-height:720px){.native-table .game-header{height:45px;min-height:45px}.native-table .hand-zone{height:159px;min-height:159px}.native-table .cards-fan{bottom:38px}.native-table .gesture-hint{bottom:7px;font-size:10px}.native-shell .native-table .avatar,.native-shell .native-table .self-player .avatar{width:36px;height:36px;font-size:19px}.native-table .player strong,.native-table .self-player>strong{font-size:12px}.native-table .n-bid-state{font-size:12px;padding:3px 5px}.native-table .n-phase-panel{top:40%;padding:7px;font-size:13px}.native-table .n-phase-panel .n-note{font-size:12px}.native-table .round-strip{font-size:11px}.n-sheet.n-phase-sheet{max-height:59dvh}.n-phase-sheet .n-sub{font-size:13px}.n-lobby-hand{height:135px}}
@media(max-width:360px){.n-page{padding-left:16px;padding-right:16px}.native-table .round-strip{padding-left:10px;padding-right:10px}.native-table .turn-status{font-size:12px}.n-phase-sheet .n-choice-grid{gap:6px}.native-table .n-phase-panel{left:12%;right:12%}}
.n-art .n-jewel-photo{width:90%;height:90%;object-fit:contain;display:block;mix-blend-mode:normal}
.n-art.big .n-jewel-photo{max-height:290px;width:90%;height:90%}
.n-fitting{margin-top:12px}.n-art.big{height:250px}

/* Keep the wrist and its jewelry inside each lobby preview at every height. */
.n-lobby-hand .n-hand-look{height:88%;width:auto;aspect-ratio:2/3;align-self:center}

/* Attachments use source-image coordinates from native_hand_rig, never view-specific CSS. */
.n-rig-hand{isolation:isolate;overflow:visible;rotate:var(--hand-angle)}
.n-rig-hand>.n-rig-skin{position:relative;z-index:1;width:100%;height:100%;object-fit:fill;pointer-events:none}
.n-rig-hand .n-hand-ring{height:auto;aspect-ratio:10/7;z-index:3;filter:drop-shadow(0 1px 1px #35251d55)}
.n-worn-svg{width:100%;height:100%;display:block;overflow:visible}
.n-rig-wrist{position:absolute;aspect-ratio:20/11;height:auto;pointer-events:none}
.n-rig-wrist.layer-back{z-index:0}.n-rig-wrist.layer-front{z-index:2}
.n-rig-hand .n-hand-tattoo{z-index:2;height:auto;aspect-ratio:1}

.native-shell [data-nav],.native-shell button,.native-shell .n-hand-look{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}

.n-lobby-hand .n-rig-hand{mix-blend-mode:normal}

.n-rig-front-mask{position:absolute;inset:0;z-index:2;pointer-events:none}
