@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Unbounded:wght@500;600;700&display=swap";.repair-widget{position:fixed;right:1rem;bottom:1rem;z-index:1000;max-width:min(26rem,calc(100vw - 2rem));font:500 14px/1.4 system-ui,sans-serif;color:#251a16}.repair-widget__tab,.repair-widget__waiting{display:block;margin-left:auto;padding:.7rem 1rem;border:1px solid #a97957;border-radius:999px;background:#fff9ef;color:#402b22;box-shadow:0 6px 24px #1b100a42;cursor:pointer}.repair-widget__waiting{cursor:default}.repair-widget__notice,.repair-widget__requests,.repair-widget__panel,.repair-widget__error{background:#fff9ef;border:1px solid #bd9778;border-radius:12px;padding:.8rem 1rem;margin:.4rem 0;box-shadow:0 6px 24px #1b100a42}.repair-widget__notice{color:#9d1723}.repair-widget__requests>div{display:flex;align-items:center;gap:.4rem;margin-top:.4rem}.repair-widget__requests span{flex:1}.repair-widget__panel{max-height:min(65vh,600px);overflow:auto}.repair-widget__panel h2{font-size:1.1rem;margin:0}.repair-widget__panel p{margin:.5rem 0}.repair-widget__panel label{display:block;margin:.75rem 0}.repair-widget__panel select{display:block;width:100%;margin-top:.25rem;padding:.4rem}.repair-widget__panel button,.repair-widget__requests button{border:1px solid #aa7958;border-radius:6px;background:#f8e8d8;padding:.4rem .6rem;cursor:pointer}.repair-widget__panel button:disabled,.repair-widget__requests button:disabled{opacity:.5;cursor:default}.repair-widget__finish{display:block;margin-top:.75rem!important}.repair-widget__error{color:#aa1722}.repair-widget__vote{position:fixed;top:1rem;left:50%;transform:translate(-50%);width:min(28rem,calc(100vw - 2rem));box-sizing:border-box;padding:1rem 1.2rem;background:#fff9ef;border:2px solid #a97957;border-radius:14px;box-shadow:0 10px 34px #1b100a70;text-align:center}.repair-widget__vote strong{display:block;font-size:1rem}.repair-widget__vote p{margin:.5rem 0}.repair-widget__vote button{margin:.25rem;padding:.45rem .8rem;border:1px solid #aa7958;border-radius:8px;background:#f8e8d8;color:#402b22;cursor:pointer}.repair-widget__vote button:disabled{opacity:.5;cursor:default}.repair-widget__vote button[aria-label="Согласиться с выдачей прав"]{background:#e5f2df;border-color:#709060}.repair-widget__vote button[aria-label="Отклонить выдачу прав"],.repair-widget__vote button[aria-label="Отменить запрос"]{background:#f8e2de;border-color:#b66e68}.table-help.rules-dialog{width:1000px;max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);padding:0;border-radius:16px;background:#fbf6ed;color:#203249;font-family:system-ui,sans-serif;overflow:hidden}.rules-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid #ded4c6}.table-help.rules-dialog h2{margin:0;font:700 27px/1.2 Georgia,serif}.rules-heading p{margin:5px 0 0;font:12px/1.4 system-ui,sans-serif;color:#746e66}.table-help.rules-dialog .text-button{min-height:44px;font:600 14px/1.2 system-ui,sans-serif}.rules-layout{display:grid;grid-template-columns:220px minmax(0,1fr);height:min(640px,calc(100dvh - 140px));min-height:0}.rules-nav{padding:12px;overflow-y:auto;border-right:1px solid #ded4c6;background:#f2ebdf}.rules-nav button{display:block;width:100%;padding:10px 12px;border:1px solid transparent;border-radius:7px;background:none;color:#54616b;text-align:left;font:500 12px/1.45 system-ui,sans-serif;cursor:pointer}.rules-nav button:hover{background:#fff9ee;color:#203249}.rules-nav button[aria-current]{border-color:#c6d1d9;background:#e4ecf0;color:#203d54;font-weight:700}.rules-content{padding:24px 28px;min-width:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.table-help.rules-dialog h3{margin:0 0 22px;font:700 24px/1.25 Georgia,serif}.table-help.rules-dialog h4{margin:28px 0 12px;font:700 16px/1.4 system-ui,sans-serif}.table-help.rules-dialog .rules-content p{margin:0 0 14px;font:14px/1.65 system-ui,sans-serif;color:#394853;overflow-wrap:anywhere}.table-help.rules-dialog .rules-content .rules-source{margin-top:28px;font-size:11px;color:#797267}.rules-table{overflow-x:auto;margin-bottom:18px}.rules-table table{border-collapse:collapse;width:100%;font:12px/1.55 system-ui,sans-serif}.rules-table :is(th,td){padding:10px 12px;text-align:left;vertical-align:top;border-bottom:1px solid #ded4c6;min-width:110px}.rules-table th{background:#eee6d9;font-weight:700}.rules-select{display:none}@media(max-width:760px){.rules-layout{display:flex;flex-direction:column;height:min(690px,calc(100dvh - 135px))}.rules-nav{display:none}.rules-select{display:flex;flex-direction:column;gap:5px;padding:12px 18px;font:12px/1.2 system-ui,sans-serif;color:#655f58;border-bottom:1px solid #ded4c6}.rules-select select{width:100%;min-height:42px;padding:8px;border:1px solid #cbbfad;border-radius:7px;color:#203249;background:#fffaf1;font:14px system-ui,sans-serif}.rules-content{padding:20px;flex:1}.rules-heading{padding:14px 18px}.table-help.rules-dialog h2{font-size:24px}}.game-report{position:fixed;left:18px;bottom:18px;z-index:90;font:13px/1.4 system-ui,sans-serif}.game-report__toggle{display:grid;place-items:center;width:44px;height:44px;border:1px solid #bdcbd2;border-radius:50%;background:#203d53;color:#fff;box-shadow:0 5px 16px #132c3d55;cursor:pointer}.game-report__toggle:hover{background:#345c76}.game-report__panel{width:min(340px,calc(100vw - 36px));margin-bottom:10px;padding:15px;border:1px solid #bfc9ca;border-radius:12px;background:#fffaf1;color:#203249;box-shadow:0 12px 38px #102d3b55}.game-report__panel header{display:flex;align-items:center;justify-content:space-between;gap:12px}.game-report__panel header strong{font-size:15px}.game-report__panel header button{border:0;background:none;color:#4c5b68;cursor:pointer;padding:3px}.game-report__panel p{margin:8px 0;color:#52616a}.game-report__panel textarea{display:block;width:100%;min-height:95px;resize:vertical;border:1px solid #b9c6c9;border-radius:7px;background:#fff;padding:9px;color:#203249;font:inherit}.game-report__panel label{display:flex;align-items:center;gap:7px;margin:10px 0}.game-report__panel input{accent-color:#355e78}.game-report__send{width:100%;border:1px solid #294a61;border-radius:7px;background:#294a61;color:#fff;padding:9px;cursor:pointer;font:600 13px system-ui,sans-serif}.game-report__send:disabled{opacity:.5;cursor:default}.game-report__panel .game-report__feedback{font-weight:600;color:#2f684b;margin-bottom:0}@media(max-width:700px){.game-report{left:10px;bottom:10px}}.app.app--table .game-screen.game-screen--crafted .hand-tray.wide-tray{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:34px minmax(0,1fr) 52px;width:100%;min-width:0;min-height:0;padding:8px;margin:0 auto;border:1px solid #354c63;border-radius:22px;overflow:visible;background:linear-gradient(125deg,#233c53,#192e43 70%);box-shadow:inset 0 1px #ffffff18,0 5px 16px #192b4326;color:#fff6e7}.game-screen--crafted .wide-tray:before{display:none}.wide-tray__top{align-items:center;display:flex;gap:20px;grid-column:1;grid-row:1;justify-content:center;min-width:0}.wide-deck-tabs{align-items:center;display:flex;gap:8px}.wide-deck-tab{background:#2a4258;border:1px solid #6c8295;border-radius:18px;color:#ecede6;font:700 18px Times New Roman,Times,serif;min-height:32px;padding:4px 32px;transition:background .16s,border-color .16s;white-space:nowrap}.wide-deck-tab[aria-pressed=true]{background:#416d99;border-color:#9fbfdb;color:#fffaf0;box-shadow:inset 0 1px #ffffff20}.wide-deck-tab:hover{background:#3b5f80;border-color:#bbd0e0}.wide-tray__deck-status{color:#e1e5e7;font:14px Times New Roman,Times,serif;white-space:nowrap}.wide-tray__deck-status>span{color:#ecd9ae;display:inline-block;font-size:20px;margin-left:6px;vertical-align:-1px}.wide-tray__cards{grid-column:1;grid-row:2;min-height:0;min-width:0;position:relative}.app.app--table .game-screen.game-screen--crafted .wide-tray .card-ribbon{align-items:center;justify-content:safe center;display:flex;grid-column:auto;grid-row:auto;gap:8px;height:100%;min-height:0;width:calc(100% - 86px);max-width:none;margin:0 auto;padding:18px 4px 4px;overflow-x:auto;overflow-y:hidden;overflow-anchor:none;scrollbar-width:thin;scrollbar-color:#778fa3 #20374c;position:relative;--card-width: 88px}.wide-tray .card-ribbon>.playing-card,.wide-tray .card-ribbon>.duel-roulette-card{flex-shrink:0}.app.app--table .game-screen.game-screen--crafted .wide-tray .card-ribbon:is(.wide-density--medium,.wide-density--dense){gap:0}.wide-tray .wide-density--medium>:is(.playing-card,.duel-roulette-card)+:is(.playing-card,.duel-roulette-card){margin-left:calc(var(--card-width) * -.22)}.wide-tray .wide-density--dense>:is(.playing-card,.duel-roulette-card)+:is(.playing-card,.duel-roulette-card){margin-left:calc(-1*min(calc(var(--card-width) * .5),calc(var(--card-width) - 32px)))}.app .game-screen--crafted .wide-tray .playing-card--own{cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.app .game-screen--crafted .wide-tray .playing-card--own:hover,.app .game-screen--crafted .wide-tray .playing-card--own:focus-visible{transform:translateY(-12px);z-index:30;box-shadow:0 8px 12px #071b3055,0 0 0 2px #b9d3e8;outline:none}.app .game-screen--crafted .wide-tray .playing-card--own.is-selected{transform:translateY(-15px);z-index:20;box-shadow:0 7px 12px #071b3055,0 0 0 2px #8bb4d9}.app .game-screen--crafted .wide-tray .playing-card--own:after{display:none}.app .game-screen--crafted .wide-tray .playing-card--own.is-unavailable{cursor:pointer;filter:none;opacity:1}.app .game-screen--crafted .wide-tray .playing-card--own.is-selected:disabled{transform:translateY(-15px)}.wide-tray .duel-roulette-card:has(.playing-card:is(:hover,:focus-visible,.is-selected)){z-index:30}.wide-scroll{align-items:center;background:#f7efe1;border:1px solid #c9bca9;border-radius:50%;color:#24425e;display:flex;height:36px;justify-content:center;padding:0;position:absolute;top:50%;transform:translateY(-50%);width:36px;z-index:35}.wide-scroll--previous{left:0}.wide-scroll--next{right:0}.wide-scroll:hover{background:#e4d4bd}.app.app--table .game-screen.game-screen--crafted .wide-tray .wide-action-bar{align-items:center;background:none;border:0;border-radius:0;color:#192b43;column-gap:18px;display:grid;grid-column:1;grid-row:3;grid-template-columns:auto auto;justify-content:center;margin:0;min-width:0;padding:0 8px;position:relative}.wide-action-bar__status{color:#fff1dc;font:700 21px/1.1 Times New Roman,Times,serif;max-width:190px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions__main{align-items:center;display:flex;flex-direction:row;flex-wrap:nowrap;gap:8px;justify-content:center}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button{align-items:center;border:1px solid #c8bba9;border-radius:11px;box-shadow:inset 0 1px #ffffff60;display:inline-flex;flex:0 0 auto;font:700 20px Times New Roman,Times,serif;gap:8px;min-height:48px;min-width:120px;order:0;padding:8px 24px;width:auto;white-space:nowrap;transition:background .15s ease,opacity .15s ease}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button--primary{background:linear-gradient(110deg,#b33d41,#bd4944);border-color:#a5363c;color:#fff8ed}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button--primary:hover{background:#a72f36;transform:none;box-shadow:inset 0 1px #ffffff40}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button--quiet{background:#f5ebdd;color:#26394e}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button--quiet:hover{background:#e9dac6}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button.is-active{background:#416b95;border-color:#355778;color:#fff9ef}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button:disabled{background:#e3d9cc;border-color:#c7bbae;box-shadow:none;color:#6e6a64;cursor:default}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .text-button{color:#ffded1;font:18px Times New Roman,Times,serif;min-height:48px;padding:6px 12px;white-space:nowrap}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions__error{background:#fff1e8;border:1px solid #bd746c;bottom:calc(100% + 8px);color:#7b2e2c;font-size:14px;max-width:min(500px,100%);padding:10px 14px;position:absolute;right:8px;z-index:50}.wide-tray :is(.wide-deck-tab,.wide-scroll,.game-actions button):focus-visible{outline:3px solid #a6c7e4;outline-offset:3px}.wide-tray .hand-tray__empty,.wide-tray .hand-tray__loading{color:#ece6db;font:18px Times New Roman,Times,serif}@media(max-width:1100px){.wide-deck-tab{font-size:17px;padding-inline:24px}.wide-action-bar__status{font-size:18px;max-width:140px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button{font-size:18px;padding-inline:20px}.app.app--table .game-screen.game-screen--crafted .wide-tray .wide-action-bar{column-gap:12px;grid-template-columns:auto auto}}@media(max-height:650px)and (orientation:landscape){.app.app--table .game-screen.game-screen--crafted .hand-tray.wide-tray{border-radius:14px;padding:4px;grid-template-rows:22px minmax(0,1fr) 44px}.wide-tray__top{gap:12px}.wide-deck-tabs{gap:5px}.wide-deck-tab{border-radius:12px;font-size:13px;min-height:22px;padding:2px 18px}.wide-tray__deck-status{font-size:11px}.wide-tray__deck-status>span{font-size:15px}.app.app--table .game-screen.game-screen--crafted .wide-tray .card-ribbon{padding:9px 2px 0;width:calc(100% - 72px);--card-width: 54px}.wide-scroll{height:30px;width:30px}.app .game-screen--crafted .wide-tray .playing-card--own:hover,.app .game-screen--crafted .wide-tray .playing-card--own:focus-visible{transform:translateY(-9px)}.app .game-screen--crafted .wide-tray .playing-card--own.is-selected,.app .game-screen--crafted .wide-tray .playing-card--own.is-selected:disabled{transform:translateY(-11px)}.app.app--table .game-screen.game-screen--crafted .wide-tray .wide-action-bar{border-radius:9px;column-gap:10px;padding:2px 9px;grid-template-columns:auto auto}.wide-action-bar__status{font-size:14px;max-width:120px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions__main{gap:5px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button{border-radius:10px;font-size:16px;min-height:44px;min-width:100px;padding:6px 16px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .text-button{font-size:15px;min-height:44px;padding:5px 10px}.wide-tray .game-actions svg{height:18px;width:18px}}@media(prefers-reduced-motion:reduce){.wide-tray *,.wide-tray *:after{animation:none!important;transition:none!important}}@media(forced-colors:active){.wide-deck-tab[aria-pressed=true],.wide-tray .playing-card.is-selected{outline:2px solid Highlight}}.app--table:has(.wide-tray)~.dev-menu{bottom:auto;left:auto;right:8px;top:42%}.app--table:has(.wide-tray)~.dev-menu nav{bottom:auto;left:auto;max-height:48dvh;right:0;top:calc(100% + 8px)}.wide-tray .game-actions__main:empty{display:none!important}.wide-tray .wide-action-bar:not(:has(.game-actions__main>button)){grid-template-columns:auto!important}.wide-tray .duel-roulette-card{display:block;width:var(--card-width)}.wide-tray .duel-roulette-card>small{position:absolute;top:calc(100% + 3px);left:50%;transform:translate(-50%);white-space:nowrap}.profile-summary{align-items:center;border-bottom:1px solid #d2f5db24;color:#b7c9b8;display:flex;font-size:12px;gap:14px;justify-content:flex-end;margin:auto;max-width:1440px;padding:10px 0}.profile-summary strong{color:#f2f8f1;font-size:13px}.profile-summary b{color:#d8f18a}.profile-summary .text-button:disabled{cursor:wait;opacity:.65}.sign-out-error{margin:12px auto;max-width:1120px}.app--room .sign-out-error{background:#fff2f0;border-color:#d87063;color:#8d2e26}.app--room .home-action--create .button--primary{background:#c1b4ed;border:0;border-radius:14px;box-shadow:0 5px #9b8bda;color:#35314f;font-size:15px;font-weight:800;min-height:54px;text-shadow:none;transform:translateY(0);transition:background-color .18s ease,box-shadow .18s ease,transform .18s ease;width:100%}.app--room .home-action--create .button--primary:hover:enabled{background-color:#d1c5f4;box-shadow:0 7px #aa9be2;transform:translateY(-2px)}.app--room .home-action--create .button--primary:active:enabled{background-color:#b4a5e5;box-shadow:0 2px #8f7fce;transform:translateY(3px)}.app--room .home-action--create .button--primary:disabled{background-color:#d8d4df;box-shadow:0 5px #b9b5c1;cursor:wait;opacity:1}.app.app--auth{--auth-ink: #192b43;--auth-red: #b93c40;background:radial-gradient(ellipse at 52% 42%,#fffcf755,transparent 70%),#f8f2e9;color:var(--auth-ink);font-family:Times New Roman,Times,serif;padding:0 clamp(24px,5.5vw,100px)}.app--auth:after,.app--auth .app-header,.app--auth .fixture-bar,.app--auth .profile-summary{display:none}.app--auth .auth-screen{align-items:stretch;display:flex;flex-direction:column;gap:0;margin:auto;max-width:1600px;min-height:100dvh;padding:0}.auth-masthead{align-items:center;display:flex;gap:32px;min-height:140px}.auth-wordmark{align-items:center;display:flex;flex-shrink:0;font-size:clamp(17px,1.65vw,28px);font-weight:700;gap:24px;letter-spacing:.19em;text-transform:uppercase}.auth-wordmark>span:first-child{font-size:52px;font-weight:400;letter-spacing:0}.auth-rule{background:var(--auth-red);display:block;flex:1;height:2px}.auth-masthead__suits{font-size:46px;white-space:nowrap;word-spacing:8px}.auth-suit--red{color:var(--auth-red)}.auth-layout{align-items:center;display:grid;flex:1;gap:clamp(36px,4.5vw,80px);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);padding:48px 0 64px}.app--auth .auth-hero{min-width:0;padding:0 0 0 3vw}.app--auth .auth-quote{color:var(--auth-ink);font-family:inherit;font-size:clamp(44px,5.4vw,96px);font-style:italic;font-weight:700;letter-spacing:-.045em;line-height:1.03;margin:0;white-space:nowrap}.auth-hero__rule{background:var(--auth-red);border-radius:1px;box-shadow:inset 0 1px #e89890;display:block;height:5px;margin:60px 0 36px;width:31%}.auth-suits{align-items:center;display:flex;font-size:53px;gap:34px;line-height:1}.app--auth .auth-card{background:#fffcf64d;border:1px solid #fffdfa;border-radius:27px;box-shadow:0 16px 35px #69462c14,0 3px 6px #69462c0b;display:block;padding:clamp(30px,3.1vw,55px);width:100%}.auth-tabs{border-bottom:2px solid #ddd6cf;display:grid;grid-template-columns:1fr 1fr;margin-bottom:44px}.auth-tab{background:none;border:0;color:#74767b;font-size:clamp(22px,2vw,34px);font-weight:400;min-height:55px;padding:0 4px 18px;position:relative}.auth-tab.is-active{color:var(--auth-ink)}.auth-tab.is-active:after{background:var(--auth-red);border-radius:2px;bottom:-2px;content:"";height:4px;left:0;position:absolute;right:0}.app--auth .auth-card form{display:flex;flex-direction:column;gap:22px}.app--auth .auth-card .auth-field{align-items:center;background:#e9e2dc33;border:2px solid #dcd4cc;border-radius:17px;color:#7b7d80;display:flex;gap:20px;margin:0;min-height:72px;padding:0 22px;transition:border-color .15s,box-shadow .15s}.auth-field>svg{flex:0 0 auto}.app--auth .auth-card .auth-field:focus-within{border-color:#46698e;box-shadow:0 0 0 3px #46698e26}.app--auth .auth-card input{background:transparent;border:0;border-radius:0;color:var(--auth-ink);font-family:inherit;font-size:clamp(21px,1.8vw,30px);font-weight:400;height:68px;min-width:0;outline:none;padding:0;width:100%}.app--auth .auth-card input::placeholder{color:#74767b;opacity:1}.app--auth .auth-card input:focus-visible{outline:none}.auth-password-toggle{align-items:center;background:none;border:0;color:#74767b;display:flex;flex-shrink:0;justify-content:center;margin-right:-10px;min-height:44px;padding:0;width:44px}.auth-feedback{display:flex;flex-direction:column;justify-content:center;min-height:44px}.app--auth .form-error{background:#fff0eb;border:1px solid #c27b70;border-radius:8px;color:#8b302e;font-family:system-ui,sans-serif;font-size:14px;line-height:1.5;margin:0;padding:10px 12px}.auth-register-hint{color:#586272;font-size:17px;line-height:1.4;margin:0}.app--auth .auth-card .button--primary{background:linear-gradient(110deg,#4b709a,#41658e);border:1px solid #355b84;border-radius:17px;box-shadow:inset 0 1px 1px #ffffff30,0 2px #294d74;color:#fffdfa;font-family:inherit;font-size:clamp(26px,2.2vw,37px);font-weight:400;margin:0 0 4px;min-height:80px;padding:12px;text-shadow:0 1px 1px #203851;transition:background .15s,box-shadow .15s;width:100%}.app--auth .auth-card .button--primary:hover:enabled{background:#365b85;box-shadow:inset 0 1px 1px #ffffff30,0 3px #294d74}.app--auth .auth-card .button--primary:active:enabled{background:#2d5079;box-shadow:inset 0 2px 4px #192b4340}.app--auth button:focus-visible{outline:3px solid #46698e;outline-offset:5px}.app--auth button:disabled,.app--auth input:disabled{cursor:wait;opacity:.55}.auth-footer{align-items:center;display:flex;gap:30px;min-height:132px;padding-bottom:24px}.auth-footer__heart{font-size:48px;line-height:1}.auth-sr-only{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}@media(min-width:1800px){.auth-layout{gap:80px}}@media(max-width:1100px){.auth-masthead{gap:22px;min-height:110px}.auth-wordmark{gap:14px}.auth-masthead__suits{font-size:34px}.auth-layout{gap:32px;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.app--auth .auth-hero{padding-left:0}.app--auth .auth-quote{font-size:5.2vw}.app--auth .auth-card{padding:30px 25px}.app--auth .auth-card .auth-field{gap:12px;padding-inline:15px}.auth-suits{font-size:43px;gap:26px}}@media(max-width:760px){.app.app--auth{padding-inline:24px}.auth-masthead{gap:18px;min-height:90px}.auth-wordmark{font-size:15px;gap:12px;letter-spacing:.14em}.auth-wordmark>span:first-child{font-size:36px}.auth-masthead__suits{display:none}.auth-layout{display:flex;flex-direction:column;gap:36px;padding:26px 0 22px}.app--auth .auth-hero{align-self:center}.app--auth .auth-quote{font-size:clamp(33px,8.5vw,61px)}.auth-hero__rule{height:3px;margin:24px 0 18px;width:35%}.auth-suits{font-size:32px;gap:24px}.app--auth .auth-card{border-radius:22px;max-width:520px;padding:28px 24px}.auth-tabs{margin-bottom:28px}.auth-tab{font-size:24px;min-height:48px;padding-bottom:14px}.app--auth .auth-card .auth-field{border-radius:12px;min-height:60px}.app--auth .auth-card input{font-size:22px;height:56px}.app--auth .auth-card form{gap:16px}.app--auth .auth-card .button--primary{border-radius:12px;font-size:28px;min-height:62px}.auth-feedback{min-height:30px}.auth-footer{gap:18px;min-height:100px}.auth-footer__heart{font-size:34px}}@media(max-width:360px){.app.app--auth{padding-inline:16px}.app--auth .auth-card{padding-inline:18px}.auth-tab{font-size:21px}.auth-wordmark{font-size:13px}.app--auth .auth-quote{font-size:8.2vw}}@media(prefers-reduced-motion:reduce){.app--auth *{transition:none!important}.app--room .home-action--create .button--primary{transition:none}}:root .playing-card--own{border:0}:root .playing-card--own.is-selected,:root .battle-pair--target .playing-card{box-shadow:0 0 0 3px #d8f18a,0 5px 18px #d8f18a66}:root .battle-pair--target .playing-card{cursor:pointer}:root .game-actions{border-top:1px solid #3f6248;display:grid;gap:9px;margin:0 -18px;padding:14px 18px}:root .game-actions__main{align-items:center;display:flex;flex-wrap:wrap;gap:8px}:root .game-actions .button{min-height:38px;padding:0 13px}:root .game-actions .button.is-active{background:#d8f18a;color:#163224}:root .game-actions__hint,:root .game-actions__pending{color:#c6dbbf;font-size:12px;margin:0}:root .game-actions__error{background:#5b281f;border:1px solid #ffae94;border-radius:7px;color:#ffe6df;font-size:12px;margin:0;padding:8px 10px}:root .special-transition{animation:special-arrive .32s ease-out;background:#193e2bd9;border:1px solid #d8f18a;border-radius:99px;color:#effbdc;font-size:12px;font-weight:800;left:50%;margin:0;max-width:min(94vw,620px);padding:10px 16px;position:fixed;text-align:center;top:98px;transform:translate(-50%);z-index:8}:root .special-transition--five{border-color:#d8c1ff}:root .special-transition--opening-joker,:root .special-transition--defensive-joker{border-color:#a9e8e1}@keyframes special-arrive{0%{opacity:0;transform:translate(-50%,-16px)}to{opacity:1;transform:translate(-50%)}}:root .game-actions__leave{color:#ffb7aa;margin-left:auto}:root{color:#edf6ed;background:#0a2017;font-family:Manrope,ui-sans-serif,system-ui,sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100dvh;background:radial-gradient(circle at 40% -10%,#164b31,#0a2017 44rem,#071811)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #9fc7ff;outline-offset:3px}.app{min-height:100dvh;overflow:hidden;padding:0 clamp(1rem,4vw,4.5rem) 2.5rem;position:relative}.app:after{background:repeating-linear-gradient(90deg,transparent 0 79px,#ffffff03 80px),repeating-linear-gradient(0deg,transparent 0 79px,#ffffff02 80px);content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:fixed;z-index:-1}.app-header{align-items:center;border-bottom:1px solid #d2f5db24;display:flex;justify-content:space-between;margin:auto;max-width:1440px;min-height:82px}.brand{align-items:center;color:#f5fbf5;display:flex;font-family:Unbounded,sans-serif;font-size:11px;font-weight:600;gap:10px;letter-spacing:-.07em;line-height:1.25;text-decoration:none;text-transform:uppercase}.brand__mark{align-items:center;background:#e8f4e4;border-radius:50%;color:#113224;display:grid;font-size:17px;height:32px;justify-content:center;letter-spacing:-.14em;width:32px}.app-header__state{align-items:center;color:#b7c9b8;display:flex;font-size:13px;gap:8px}.app-header__state i{background:#77d69c;border-radius:50%;box-shadow:0 0 0 4px #77d69c1a;height:7px;width:7px}.fixture-bar{align-items:center;background:#e8f4e4;border-radius:0 0 14px 14px;color:#153025;display:flex;font-size:12px;gap:10px;left:50%;padding:7px 12px;position:fixed;top:0;transform:translate(-50%);z-index:10}.fixture-bar select,.fixture-bar button{background:transparent;border:0;color:inherit;font-size:12px}.fixture-bar nav{border-left:1px solid #b4cab6;display:flex;gap:2px;padding-left:8px}.fixture-bar button{border-radius:5px;padding:3px 5px}.fixture-bar button.is-current{background:#174a32;color:#fff}.eyebrow{color:#a8d9b0;font-size:11px;font-weight:800;letter-spacing:.14em;margin:0 0 14px;text-transform:uppercase}.button{border:1px solid transparent;border-radius:8px;font-weight:800;min-height:46px;padding:0 19px;transition:transform .15s,background .15s}.button:active{transform:translateY(1px)}.button--primary{background:#d8f18a;color:#163224}.button--primary:hover{background:#e5fb9a}.button--quiet{background:#ffffff12;border-color:#ffffff21;color:#eaf5e8}.muted{color:#9eb3a1;font-size:13px}.text-button{background:none;border:0;color:#d8f18a;font-weight:700;padding:0}.auth-screen{align-items:center;display:grid;margin:auto;max-width:420px;min-height:calc(100dvh - 82px)}.result-hero h1{font-family:Unbounded,sans-serif;font-size:clamp(38px,5vw,72px);letter-spacing:-.08em;line-height:1.08;margin:0}.result-hero>p:not(.eyebrow){color:#bdccbc;font-size:clamp(16px,1.6vw,19px);line-height:1.65;max-width:480px}.auth-card{background:#122b20;border:1px solid #426752;border-radius:10px;display:grid;gap:20px;padding:clamp(24px,4vw,34px)}.auth-card__header{display:grid;gap:7px}.auth-card h1{color:#f1f7f1;font-size:28px;letter-spacing:-.045em;line-height:1.15;margin:0}.auth-card__header p{color:#b7c8b9;font-size:14px;margin:0}.auth-card label{color:#d7e4d8;font-size:12px;font-weight:800}.auth-card input{background:#0d2118;border:1px solid #587460;border-radius:7px;color:#fff;height:46px;padding:0 12px}.auth-card input::placeholder{color:#8ea293}.auth-card input:hover{border-color:#71937b}.auth-card input:focus{border-color:#9fc7a5}.auth-card .button{margin-top:3px;width:100%}.auth-card .button--primary{background:#3f735d;color:#f7fbf7}.auth-card .button--primary:hover{background:#4d856c}.room-screen,.game-screen,.duel-screen,.result-screen{margin:auto;max-width:1440px}.room-screen{padding-top:clamp(38px,8vw,92px)}.room-heading,.section-heading,.hand-tray__heading{align-items:end;display:flex;justify-content:space-between}.room-heading h1,.result-list h2,.room-gateway h1{font-size:clamp(30px,4vw,48px);letter-spacing:-.06em;margin:0}.room-code{background:#102b1e;border:1px solid #557b5b;border-radius:8px;color:#eaf6e7;font-family:Unbounded,sans-serif;font-size:18px;letter-spacing:.08em;padding:13px 16px}.room-code span{color:#a7c8aa;display:block;font-family:Manrope,sans-serif;font-size:10px;letter-spacing:.04em;margin-top:6px;text-transform:uppercase}.room-error{margin-top:24px}.room-layout{display:grid;gap:3rem;grid-template-columns:minmax(0,1.2fr) minmax(280px,.58fr);margin-top:38px}.room-players{border-top:1px solid #496653}.section-heading{margin:0 0 15px}.section-heading h2{font-size:16px;letter-spacing:-.03em;margin:0}.section-heading>span{color:#a8c2aa;font-size:12px}.room-player{align-items:center;border-bottom:1px solid #385542;display:grid;gap:13px;grid-template-columns:42px 1fr auto;min-height:76px}.avatar{align-items:center;border-radius:50%;color:#112a1c;display:grid;font-size:12px;font-weight:800;height:34px;justify-content:center;width:34px}.avatar--0{background:#8db5ff}.avatar--1{background:#e3a657}.avatar--2{background:#df8cb8}.avatar--3{background:#75c1a2}.avatar--4{background:#b6a0ed}.avatar--5{background:#ee927c}.room-player h3,.result-player h3{font-size:14px;margin:0}.room-player h3 small,.result-player h3 small{background:#2e694b;border-radius:4px;color:#d7efdc;font-size:9px;margin-left:5px;padding:2px 4px;text-transform:uppercase}.room-player p{color:#9bb49e;font-size:12px;margin:3px 0 0}.ready,.waiting{font-size:11px;font-weight:700}.ready{color:#b9ea88}.waiting{color:#bdccbc}.avatar--empty{background:transparent;border:1px dashed #6f8b74;color:#9cb4a0}.room-kick{background:transparent;border:0;color:#ffb0a6;font-size:11px;font-weight:700;padding:5px}.room-aside{align-self:start;background:#163a28;border:1px solid #41664b;border-radius:13px;display:grid;gap:16px;padding:25px}.room-aside h2{font-size:21px;letter-spacing:-.045em;margin:0}.room-aside>p:not(.eyebrow){color:#b6c8b7;font-size:13px;line-height:1.55;margin:0}.timer{border-top:1px solid #41664b;color:#a7c2aa;display:grid;font-size:12px;gap:8px;padding-top:15px}.timer select{background:#102b1e;border:1px solid #496853;border-radius:7px;color:#eff9e8;padding:9px}.room-leave{color:#ffc0b6;justify-self:start}.room-owner-note{color:#a7c2aa;font-size:11px;line-height:1.45;margin:0}.room-screen--gateway{align-items:center;display:grid;min-height:calc(100dvh - 150px);padding-top:0}.room-gateway{background:linear-gradient(145deg,#244b33d6,#102b1dd6);border:1px solid #4d775a;border-radius:16px;display:grid;gap:18px;margin:auto;max-width:680px;padding:clamp(25px,5vw,52px)}.room-gateway>p:not(.eyebrow){color:#bdccbc;line-height:1.6;margin:0;max-width:510px}.room-gateway__actions{display:grid;gap:15px;grid-template-columns:auto minmax(250px,1fr);margin-top:10px}.room-gateway__actions form{display:grid;gap:10px;grid-template-columns:1fr auto}.room-gateway__actions label{color:#d3e2d4;display:grid;font-size:12px;font-weight:800;gap:7px}.room-gateway__actions input{background:#102c1e;border:1px solid #496853;border-radius:7px;color:#fff;height:46px;padding:0 12px}.game-screen{padding-top:25px}.game-meta{color:#b5cbb7;display:flex;font-size:12px;gap:18px;justify-content:center;margin-bottom:12px}.game-meta span+span{border-left:1px solid #52705a;padding-left:18px}.game-meta__turn strong{color:#eff9e8}.table-layout{display:grid;grid-template-columns:130px minmax(310px,1fr) 130px;grid-template-rows:minmax(116px,auto) minmax(310px,44vw) minmax(116px,auto);margin:auto;max-width:960px;position:relative}.table-surface{align-items:center;background:radial-gradient(circle at 50% 20%,#1c5736,#103620);border:1px solid #77a27b;border-radius:17px;display:flex;flex-direction:column;grid-column:2;grid-row:2;justify-content:center;min-height:300px;position:relative}.table-surface:before{border:1px solid #e8ffe71f;border-radius:13px;content:"";top:10px;right:10px;bottom:10px;left:10px;pointer-events:none;position:absolute}.table-surface__label{color:#aed2b1;font-size:11px;font-weight:800;letter-spacing:.12em;position:absolute;text-transform:uppercase;top:20px}.table-surface p{bottom:10px;color:#c2d5c4;font-size:11px;position:absolute}.battle-pair{display:flex;gap:7px;transform:rotate(-5deg)}.battle-pair--second{left:calc(50% + 50px);position:absolute;top:41%;transform:rotate(8deg)}.deck-panel{align-self:center;background:#092316c7;border:2px solid #5c94e2;border-radius:13px;display:grid;gap:8px;grid-column:1;grid-row:2;padding:10px;text-align:center;z-index:2}.deck-panel--2{border-color:#f27670;grid-column:3}.deck-panel>p{color:#8dbbff;font-size:11px;font-weight:800;margin:0 0 1px}.deck-panel--2>p{color:#ff9990}.deck-stack,.trump,.discard{background:#ffffff09;border:1px solid #a6d0b047;border-radius:7px;color:#b9d2be;display:grid;font-size:10px;gap:3px;padding:8px}.deck-stack strong,.trump strong,.discard strong{color:#fff;font-size:16px}.opponent{position:absolute;z-index:3}.opponent__label{align-items:center;color:#e5f1e5;display:flex;font-size:11px;font-weight:800;gap:7px;justify-content:center}.opponent__label i{background:var(--avatar);border-radius:50%;height:7px;width:7px}.opponent__hands{display:flex;gap:5px;margin-top:5px}.opponent--left{left:0;top:50%;transform:translate(-28%,-50%)}.opponent--right{right:0;top:50%;transform:translate(28%,-50%)}.opponent--top{left:50%;top:0;transform:translate(-50%,-72%)}.opponent--top-left{left:12%;top:0;transform:translateY(-72%)}.opponent--top-right{right:12%;top:0;transform:translateY(-72%)}.hand-pile{background:linear-gradient(145deg,#193d2b,#102719);border:1px solid #5d94e4;border-radius:7px;color:#a9d0ff;display:grid;font-size:9px;min-height:42px;min-width:48px;padding:4px 6px;text-align:center}.hand-pile--2{border-color:#f0766c;color:#ffada3}.hand-pile strong{color:#eff7ef;font-size:16px;line-height:1.1}.hand-pile small{color:#bbcfbd;font-size:8px}.hand-pile.is-active{box-shadow:0 0 0 2px #daf28e,0 0 20px #daf28e40}.my-seat{bottom:0;grid-column:2;grid-row:3;justify-self:center;margin-bottom:-112px;text-align:center;z-index:4}.my-seat__label{color:#ecf6ea;font-size:12px;font-weight:800}.hand-select{display:flex;gap:9px;margin-top:7px}.hand-select .hand-pile{min-height:72px;min-width:88px}.hand-tray{background:#071810d4;border:1px solid #3f6248;border-radius:13px;margin:126px auto 0;max-width:1180px;overflow:hidden;padding:17px 18px 0}.hand-tray h2{font-size:17px;letter-spacing:-.04em;margin:0}.hand-tray h2 span{color:#a7c6ab;font-size:12px;font-weight:500}.card-ribbon{display:flex;gap:5px;min-height:132px;overflow-x:auto;padding:18px 4px 13px;scrollbar-color:#719778 transparent}.playing-card{align-items:center;background:#f6f2e7;border:0;border-radius:7px;box-shadow:0 5px 14px #00000040;color:#193b6e;display:flex;flex:0 0 60px;flex-direction:column;font-family:Georgia,serif;height:86px;justify-content:space-between;padding:8px 7px;text-align:left;transition:transform .15s}.playing-card:hover{transform:translateY(-8px)}.playing-card b{align-self:flex-start;font-size:16px}.playing-card span{align-self:flex-end;font-size:22px;line-height:.8}.playing-card--red{color:#bd3e38}.duel-screen{padding-top:clamp(32px,6vw,70px)}.duel-intro{margin:auto;max-width:680px;text-align:center}.duel-intro h1{font-family:Unbounded,sans-serif;font-size:clamp(31px,4vw,52px);letter-spacing:-.075em;margin:0}.duel-intro>p:not(.eyebrow){color:#bacfbb;font-size:15px;line-height:1.6}.duel-table{background:radial-gradient(circle,#1a5334,#0c2b1b);border:1px solid #5d9864;border-radius:50%/16%;display:grid;grid-template-columns:130px 1fr 130px;margin:38px auto 0;max-width:750px;min-height:310px;position:relative}.duel-table .opponent--top{top:0}.deck-panel--duel{align-self:center;grid-row:auto}.duel-table__surface{align-items:center;display:flex;flex-direction:column;gap:15px;justify-content:center}.duel-table__surface>span{color:#b5d2b6;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.duel-table__surface p{color:#d9eea3;font-size:12px}.duel-player{bottom:-94px;left:50%;position:absolute;text-align:center;transform:translate(-50%)}.duel-player>span{color:#fff;display:block;font-size:12px;font-weight:800;margin-bottom:6px}.duel-player .hand-pile{min-height:72px;min-width:105px}.duel-hand{background:#0a2115;border-top:1px solid #355c40;margin:130px calc(-1*clamp(1rem,4vw,4.5rem)) -2.5rem;padding:22px max(1rem,calc((100vw - 1180px)/2))}.duel-hand .eyebrow{margin-bottom:0}.duel-hand .card-ribbon{margin:auto;max-width:1180px}.result-screen{display:grid;gap:clamp(3rem,9vw,10rem);grid-template-columns:minmax(300px,.85fr) minmax(400px,1.15fr);padding-top:clamp(48px,10vw,130px)}.result-hero h1 span{color:#f2ad70}.result-list{background:#0d2f1ec2;border:1px solid #41644a;border-radius:14px;padding:24px}.result-list .section-heading{border-bottom:1px solid #3d5e44;padding-bottom:18px}.result-list h2{font-size:18px}.result-player{align-items:center;border-bottom:1px solid #37553e;display:grid;gap:12px;grid-template-columns:38px 1fr auto auto;min-height:64px}.result-player dl{display:flex;gap:16px;margin:0}.result-player dt{color:#a5bda7;font-size:9px;text-transform:uppercase}.result-player dd{color:#f1f8ef;font-size:16px;font-weight:800;margin:1px 0 0}.loss-mark{color:#ffa590;font-size:10px;font-weight:800;text-transform:uppercase}.result-list>.button{float:right;margin-top:20px}@media(max-width:950px){.app{padding-inline:24px}.table-layout{grid-template-columns:110px minmax(280px,1fr) 110px}.opponent--left{transform:translate(-35%,-50%)}.opponent--right{transform:translate(35%,-50%)}.room-layout,.result-screen{gap:28px}.result-screen{grid-template-columns:1fr}.auth-screen{gap:45px;grid-template-columns:1fr .85fr}}@media(max-height:500px)and (orientation:landscape){.app{padding:0 16px 16px}.app-header{min-height:58px}.brand{font-size:9px}.brand__mark{height:25px;width:25px}.fixture-bar{font-size:10px;padding:4px 7px}.fixture-bar select,.fixture-bar button{font-size:10px}.game-meta{margin:7px 0}.table-layout{grid-template-columns:82px minmax(220px,1fr) 82px;grid-template-rows:74px 260px 74px;max-width:720px}.table-surface{min-height:220px}.deck-panel{padding:5px}.deck-stack,.trump,.discard{padding:4px}.deck-panel>p{font-size:9px}.deck-stack strong,.trump strong,.discard strong{font-size:12px}.hand-pile{min-height:32px;min-width:38px}.opponent__hands{gap:3px}.opponent__label{font-size:9px}.opponent--left{left:3px;top:78%;transform:none}.opponent--right{right:3px;top:78%;transform:none}.opponent--top,.opponent--top-left,.opponent--top-right{transform:translateY(-55%)}.opponent--top{transform:translate(-50%,-55%)}.my-seat{margin-bottom:-72px}.hand-select .hand-pile{min-height:49px;min-width:65px}.hand-tray{margin-top:84px;padding-top:9px}.hand-tray__heading .button{min-height:34px}.card-ribbon{min-height:98px;padding-block:8px}.playing-card{flex-basis:45px;height:66px;padding:6px}.playing-card b{font-size:13px}.playing-card span{font-size:16px}.duel-screen{padding-top:18px}.duel-intro h1{font-size:27px}.duel-intro>p:not(.eyebrow){display:none}.duel-table{margin-top:20px;min-height:210px}.duel-player{bottom:-62px}.duel-player .hand-pile{min-height:49px}.duel-hand{margin-top:90px;padding-block:10px}}@media(max-width:700px)and (orientation:portrait){.app-header__state{display:none}.auth-screen,.room-layout{grid-template-columns:1fr}.auth-screen{padding-block:42px}.room-heading{align-items:start;gap:18px;flex-direction:column}.room-code{width:100%}.game-screen{min-width:670px;transform-origin:top left}.table-layout{margin-left:84px}.result-player{grid-template-columns:36px 1fr auto}.result-player dl{grid-column:2/-1;margin-bottom:8px}.loss-mark{display:none}.fixture-bar{max-width:calc(100vw - 16px);overflow:auto;white-space:nowrap}.fixture-bar nav{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.battle-grid{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:72%;padding:32px 0}.battle-grid .battle-pair:nth-child(2n){transform:rotate(5deg)}.table-surface__empty{position:static!important}.deck-panel.is-active{box-shadow:0 0 0 2px #daf28e,0 0 18px #daf28e40}.opponent__label small{color:#a5c7a9;font-size:8px;font-weight:600;text-transform:uppercase}.opponent--exited{opacity:.55}.hand-tray__notice{color:#a7c6ab;font-size:11px}.hand-tray__loading{color:#b9d2be;font-size:13px;margin:20px 0}.card-ribbon{overscroll-behavior-x:contain;scroll-snap-type:x proximity;touch-action:pan-x}.playing-card--own{cursor:default;scroll-snap-align:start;transform-origin:center bottom}.playing-card--own:hover,.playing-card--own:active{transform:translateY(-14px) scale(1.07);z-index:1}.playing-card--four{box-shadow:0 0 0 2px #d6d974,0 5px 14px #00000040}.playing-card--five{background:linear-gradient(135deg,#f6f2e7,#e5dbf4,#f6f2e7);color:#4a3566}.playing-card--joker{background:linear-gradient(135deg,#f6f2e7,#bdece2,#ecd4a9,#f6f2e7);color:#253238}.playing-card--five span,.playing-card--joker span{display:none}.game-loading{align-items:center;color:#d8f18a;display:flex;justify-content:center;min-height:60dvh}.game-connection-error{background:#5b281f;border:1px solid #ffae94;border-radius:8px;color:#ffe6df;margin:16px auto 0;max-width:960px;padding:10px 13px}.duel-live{margin:auto;max-width:1040px;padding-top:clamp(26px,5vw,64px)}.duel-live__intro{text-align:center}.duel-live__intro h1{font-family:Unbounded,sans-serif;font-size:clamp(30px,4vw,48px);letter-spacing:-.075em;margin:0}.duel-live__intro>p:not(.eyebrow){color:#bfd0c0;font-size:14px}.duel-live__intro strong{color:#d8f18a;font-size:22px}.duel-live__roulette{align-items:center;background:#122d20;border:1px solid #688d5a;border-radius:10px;display:flex;gap:12px;justify-content:center;margin:20px auto;max-width:680px;padding:10px 14px}.duel-live__roulette span{color:#d8f18a;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.duel-live__roulette p{color:#c8d8c8;font-size:12px;margin:0}.duel-live__table{background:radial-gradient(circle,#1a5334,#0c2b1b);border:1px solid #5d9864;border-radius:50%/16%;display:grid;grid-template-columns:116px minmax(240px,1fr) 116px;grid-template-rows:72px minmax(250px,32vw) 72px;margin:auto;max-width:800px;position:relative}.duel-live__opponent,.duel-live__me{align-items:center;color:#edf6ed;display:flex;flex-direction:column;font-size:12px;font-weight:800;gap:4px;grid-column:2;text-align:center}.duel-live__opponent{grid-row:1;padding-top:7px}.duel-live__me{grid-row:3;padding-bottom:7px}.duel-live__opponent small,.duel-live__me small{color:#b3c7b5;font-size:10px;font-weight:600}.duel-live__pile{align-self:center;background:#092316c7;border:2px solid #d8f18a;border-radius:12px;color:#bcd4bc;display:grid;font-size:10px;gap:5px;padding:10px;text-align:center}.duel-live__pile:first-of-type{grid-column:1;grid-row:2}.duel-live__pile:last-of-type{border-color:#a9c9ee;grid-column:3;grid-row:2}.duel-live__pile strong{color:#fff;font-size:22px}.duel-live__surface{align-items:center;display:flex;flex-direction:column;grid-column:2;grid-row:2;justify-content:center;position:relative}.duel-live__surface>span{color:#b5d2b6;font-size:11px;font-weight:800;letter-spacing:.1em;position:absolute;text-transform:uppercase;top:18px}.duel-live__surface>p{bottom:4px;color:#d9eea3;font-size:11px;position:absolute}.duel-live__hand{background:#071810d4;border:1px solid #3f6248;border-radius:13px;margin:28px auto 0;overflow:hidden;padding:17px 18px 0}.duel-live__hand h2{font-size:17px;letter-spacing:-.04em;margin:0}.duel-live__hand h2 span,.duel-live__hint{color:#a7c6ab;font-size:12px;font-weight:500}.duel-live__hint{margin:8px 0 0}.duel-roulette-card{display:grid;gap:5px;justify-items:center;position:relative}.duel-roulette-card small{color:#d8f18a;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.duel-roulette-card.is-spinning .playing-card{animation:duel-roulette-spin .45s linear infinite;filter:none}.duel-roulette-card.is-revealed .playing-card{animation:duel-roulette-reveal .3s ease-out}.duel-live__actions{margin-inline:-18px}@keyframes duel-roulette-spin{0%{transform:rotateY(0) scale(1)}50%{transform:rotateY(90deg) scale(.94)}to{transform:rotateY(180deg) scale(1)}}@keyframes duel-roulette-reveal{0%{opacity:.2;transform:translateY(-14px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:700px){.duel-live__table{grid-template-columns:78px minmax(180px,1fr) 78px;grid-template-rows:62px minmax(210px,55vw) 62px}.duel-live__pile{padding:7px}.duel-live__pile strong{font-size:17px}.duel-live__roulette{align-items:start;flex-direction:column}.duel-live__hand{margin-top:20px}.duel-live .card-ribbon{min-height:110px}}@media(prefers-reduced-motion:reduce){.duel-roulette-card.is-spinning .playing-card,.duel-roulette-card.is-revealed .playing-card{animation:none;filter:none}}.orientation-prompt{display:none}.button,.hand-pile,.room-kick,.text-button,.game-actions .button{min-height:44px}.playing-card--own:focus-visible{box-shadow:0 0 0 4px #9fc7ff,0 5px 18px #00000080;outline:0;transform:translateY(-10px) scale(1.05);z-index:2}.card-ribbon:focus-within{outline:2px solid #9fc7ff;outline-offset:4px}@media(max-width:950px){.game-meta{flex-wrap:wrap;gap:6px 12px}.game-meta span+span{padding-left:12px}.hand-tray__heading{align-items:start;gap:12px}}@media(max-width:700px)and (orientation:portrait){.app--table,.app--duel{overflow:visible}.app--table .game-screen,.app--duel .duel-live{filter:blur(3px);pointer-events:none;-webkit-user-select:none;user-select:none}.orientation-prompt{align-items:center;background:#102b1df5;border:1px solid #d8f18a;border-radius:16px;box-shadow:0 12px 40px #000a;color:#edf6ed;display:flex;flex-direction:column;inset:50% auto auto 50%;max-width:calc(100vw - 40px);padding:26px 22px;position:fixed;text-align:center;transform:translate(-50%,-50%);width:360px;z-index:20}.orientation-prompt span{color:#d8f18a;font-size:36px;line-height:1}.orientation-prompt strong{font-size:18px;margin-top:10px}.orientation-prompt p{color:#c4d5c5;font-size:13px;line-height:1.5;margin:8px 0 0}}@media(forced-colors:active){.playing-card--own:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid Highlight;outline-offset:3px}.orientation-prompt{border:2px solid CanvasText}}.app--room{background:#f3f4f6;color:#20242b}.app--room:after,.app--room .app-header{display:none}.app--room .profile-summary{max-width:1120px;min-height:88px;padding:24px 0;border-color:#d9dde3}.app--room .profile-summary strong{color:#20242b;font:700 18px Manrope,ui-sans-serif,system-ui,sans-serif}.app--room .profile-summary .text-button{color:#294db5;margin-left:auto}.app--room .room-screen .button--primary{background:#365dcc;color:#fff}.app--room .room-screen .button--primary:hover{background:#294db5}.home-profile__brand{align-items:center;color:#46445e;display:flex;font:700 11px/1.2 Unbounded,ui-sans-serif,sans-serif;letter-spacing:-.04em;margin-right:auto}.home-profile__brand>span{align-items:center;background:#ff9c7d;border:2px solid #ef8a6d;border-radius:12px;box-shadow:0 4px #e8b8a8;color:#fffaf3;display:flex;font:25px Georgia,serif;height:40px;justify-content:center;margin-right:10px;width:40px}.app.app--room:has(.home-screen){--home-ink: #192b43;--home-red: #b83e41;background:radial-gradient(ellipse at 50% 45%,#fffcf755,transparent 75%),#f8f2e9;color:var(--home-ink);font-family:Times New Roman,Times,serif;padding:0 clamp(24px,4.35vw,85px) 24px}.home-header{align-items:center;display:flex;gap:30px;margin:auto;max-width:1560px;min-height:114px}.home-wordmark{align-items:center;color:var(--home-ink);display:flex;flex-shrink:0;font-size:36px;font-weight:700;gap:28px;letter-spacing:.2em;text-decoration:none;text-transform:uppercase}.home-wordmark>span{color:var(--home-red);font-size:66px;font-weight:400;letter-spacing:0;line-height:1}.home-header__rule{background:var(--home-red);flex:1;height:2px;min-width:20px}.home-nav{align-items:center;display:flex;gap:16px}.home-nav a{align-items:center;border:1px solid transparent;border-radius:30px;color:#161e28;display:flex;font-size:23px;gap:14px;min-height:48px;padding:6px 22px;text-decoration:none;white-space:nowrap}.home-nav a.is-current{background:#e9dfd233;border-color:#ded4c8;box-shadow:inset 0 0 0 1px #ded4c850}.home-nav a:hover{background:#eee4d8}.home-account{border-left:1px solid var(--home-red);padding-left:28px;position:relative}.home-account summary{align-items:center;cursor:pointer;display:flex;list-style:none;min-height:48px}.home-account summary::-webkit-details-marker{display:none}.home-account__name{clip-path:inset(50%);height:1px;overflow:hidden;position:absolute;width:1px}.home-account__menu{background:#fffaf3;border:1px solid #ded4c8;border-radius:16px;box-shadow:0 8px 25px #4e34231c;display:grid;gap:10px;min-width:210px;padding:20px;position:absolute;right:0;top:calc(100% + 16px);z-index:5}.home-account__menu strong{font-size:22px;max-width:250px;overflow-wrap:anywhere}.home-account__menu button{align-items:center;background:transparent;border:0;border-top:1px solid #ded4c8;color:var(--home-red);display:flex;font-size:20px;gap:12px;min-height:44px;padding:12px 0 0;text-align:left}.home-screen{display:grid;gap:34px;margin:0 auto;max-width:1560px}.home-screen>*,.home-actions>*,.home-overview>*{min-width:0}.home-actions{display:grid;gap:40px;grid-template-columns:minmax(0,1.69fr) minmax(0,1fr)}.home-action{border-radius:25px;box-shadow:0 10px 24px #573c2410,0 2px 4px #573c240c;min-height:354px}.home-action--create{align-items:center;background:radial-gradient(ellipse at 25% 0,#2d4960,transparent 75%),#192e43;border:1px solid #142a3e;box-shadow:inset 0 1px 1px #ffffff40,0 12px 24px #573c2412;color:#fbf3e5;display:grid;gap:42px;grid-template-columns:24% minmax(0,1fr);padding:65px 11% 54px 8%;position:relative}.home-create__frame{border:2px solid #eee2cd;border-radius:38px;top:16px;right:16px;bottom:16px;left:16px;pointer-events:none;position:absolute}.home-create__corner{align-items:center;background:#22394e;color:#f8edd9;display:flex;font-size:42px;height:48px;justify-content:center;line-height:1;position:absolute;width:48px}.home-create__corner--tl{border-bottom:2px solid #eee2cd;border-right:2px solid #eee2cd;border-radius:0 0 38px;left:-2px;top:-2px;padding:0 10px 10px 0}.home-create__corner--tr{border-bottom:2px solid #eee2cd;border-left:2px solid #eee2cd;border-radius:0 0 0 38px;right:-2px;top:-2px;padding:0 0 10px 10px}.home-create__corner--bl{border-top:2px solid #eee2cd;border-right:2px solid #eee2cd;border-radius:0 38px 0 0;bottom:-2px;left:-2px;padding:10px 10px 0 0}.home-create__corner--br{border-top:2px solid #eee2cd;border-left:2px solid #eee2cd;border-radius:38px 0 0;bottom:-2px;right:-2px;padding:10px 0 0 10px}.home-create__ace{align-items:center;border-right:2px solid #eee2cd;display:flex;font-size:clamp(100px,13vw,220px);justify-content:center;line-height:1;min-height:185px;padding-right:25%;text-shadow:0 2px 0 #ffffff60}.home-create__content{position:relative}.home-create__content h2{color:#fffaf2;font-family:inherit;font-size:clamp(40px,4.8vw,82px);font-weight:700;letter-spacing:-.025em;line-height:1;margin:0;white-space:nowrap}.home-create__content>p{font-size:clamp(13px,1.35vw,23px);font-weight:700;letter-spacing:.22em;margin:22px 0 26px;text-transform:uppercase;white-space:nowrap}.home-screen .button{align-items:center;border:1px solid #355c86;border-radius:17px;display:flex;font-family:inherit;font-size:31px;font-weight:700;gap:22px;justify-content:center;min-height:70px;padding:12px 18px;text-shadow:0 1px 1px #23324555;transition:background .15s;width:100%}.app--room .home-action--create .button--primary{background:linear-gradient(110deg,#b73d40,#c45149);border:1px solid #e88c79;border-radius:17px;box-shadow:inset 0 1px #ffc8a940,0 2px #152a3a55;color:#fff9ef;font-family:inherit;font-size:31px;font-weight:700;min-height:72px;transform:none}.app--room .home-action--create .button--primary:hover:enabled{background:#a93136;box-shadow:inset 0 1px #ffc8a940;transform:none}.app--room .home-action--create .button--primary:active:enabled{background:#92282f;box-shadow:inset 0 2px 4px #192b4350;transform:none}.home-action--join{background:#fffaf64d;border:1px solid #e5dcd1;display:flex;flex-direction:column;padding:32px 38px 38px}.home-join__heading{align-items:flex-start;display:flex;gap:25px;margin-bottom:28px}.home-join__heading>span{color:var(--home-red);font-size:76px;line-height:1}.home-join__heading h2{font-size:57px;font-style:italic;line-height:1.1;margin:0 0 10px}.home-join__heading p{font-size:21px;font-weight:700;letter-spacing:.17em;line-height:1.4;margin:0;text-transform:lowercase}.home-code-field{align-items:center;background:#e9e2dc33;border:2px solid #dcd4cc;border-radius:17px;color:#647080;display:flex;gap:22px;margin-top:auto;min-height:66px;padding:0 26px}.home-code-field svg{flex-shrink:0}.home-code-field:focus-within{border-color:#46698e;box-shadow:0 0 0 3px #46698e26}.home-code-field input{background:transparent;border:0;color:var(--home-ink);font-family:inherit;font-size:27px;height:60px;min-width:0;outline:none;padding:0;width:100%}.home-code-field input::placeholder{color:#69707a;opacity:1}.home-code-field input:focus-visible{outline:none}.home-action--join .button{background:linear-gradient(110deg,#416b99,#355d88);box-shadow:inset 0 1px #ffffff30,0 1px #284d75;color:#fffaf3;margin-top:20px}.home-action--join .button:hover:enabled{background:#2d517c}.home-action--join .button:active:enabled{background:#25476e}.home-screen button:disabled{cursor:wait;opacity:.6}.app--room:has(.home-screen) :is(button,a,summary,select):focus-visible{outline:3px solid #46698e;outline-offset:5px}.home-screen>.form-error{background:#fff0eb;border:1px solid #c27b70;border-radius:12px;color:#8b302e;margin:0;padding:16px 20px}.home-overview{align-items:stretch;display:grid;gap:24px;grid-template-columns:minmax(0,2fr) minmax(0,3fr);scroll-margin-top:24px}.home-stats-panel,.winrate-chart,.home-stats-notice{background:#fffaf64d;border:1px solid #e5dcd1;border-radius:24px;box-shadow:0 10px 24px #573c2410,0 2px 4px #573c240c;min-width:0;padding:26px 32px 32px}.home-stats-panel__heading{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:26px}.home-stats-panel h2,.winrate-chart h2{color:var(--home-ink);font-family:inherit;font-size:22px;font-weight:700;letter-spacing:.15em;line-height:1.3;margin:0;text-transform:uppercase}.home-stats-panel select{background:transparent;border:0;color:#3c4654;font-family:inherit;font-size:18px;max-width:145px;min-height:30px;padding:2px 6px}.home-stats{display:grid;gap:18px;grid-template-columns:repeat(2,minmax(0,1fr))}.home-stats article{align-items:center;background:#e4e8eeaa;border-radius:16px;display:flex;gap:26px;min-height:96px;padding:13px 24px}.home-stats article:nth-child(2){background:#f5e2dcaa}.home-stats article:nth-child(2)>svg{color:var(--home-red)}.home-stats article:nth-child(3){background:#f0e6daaa}.home-stats article>svg{flex-shrink:0}.home-stats article>div{display:grid;gap:3px;min-width:0}.home-stats strong{color:var(--home-ink);font-family:inherit;font-size:40px;font-weight:700;line-height:1;white-space:nowrap}.home-stats strong.home-stats__empty{font-size:22px;white-space:normal}.home-stats span{color:#29394e;font-size:21px}.home-stats-notice{grid-column:1 / -1}.home-stats-notice .text-button{color:#355d88}.winrate-chart{padding:26px 36px 20px}.winrate-chart__heading{align-items:start;display:flex;gap:16px;justify-content:space-between}.winrate-chart__heading>strong{background:#eee5d9;border-radius:25px;font-size:25px;padding:5px 18px;white-space:nowrap}.winrate-chart__heading p{color:#5e6470;font-size:16px;line-height:1.3;margin:8px 0 0}.winrate-chart .winrate-chart__empty{align-content:center;color:#5e6470;display:grid;font-size:20px;line-height:1.5;max-width:550px;min-height:180px;padding-block:20px}.winrate-chart__body{display:grid;gap:12px;grid-template-columns:36px minmax(0,1fr);margin-top:24px}.winrate-chart__scale{color:#525a64;display:flex;flex-direction:column;font-family:system-ui,sans-serif;font-size:12px;justify-content:space-between}.winrate-chart__plot{height:155px;min-width:0;position:relative}.winrate-chart svg{display:block;height:100%;overflow:visible;width:100%}.winrate-chart line{stroke:#dcd5cd;stroke-dasharray:5 4;stroke-width:1;vector-effect:non-scaling-stroke}.winrate-chart polyline{fill:none;stroke:#24578a;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.5;vector-effect:non-scaling-stroke}.winrate-chart__point{background:#fffaf3;border:2px solid #24578a;border-radius:50%;height:9px;pointer-events:none;position:absolute;transform:translate(-50%,-50%);width:9px}.winrate-chart__months{color:#525a64;display:flex;font-size:16px;gap:8px;justify-content:space-between;margin:10px 0 0 48px}.winrate-chart__details{color:#525a64;font-size:14px;margin-top:10px}.winrate-chart__details summary{cursor:pointer;min-height:28px}.winrate-chart__details table{border-collapse:collapse;font-variant-numeric:tabular-nums;text-align:left;width:100%}.winrate-chart__details th,.winrate-chart__details td{border-bottom:1px solid #e5dcd1;padding:8px 4px}.home-footer{align-items:center;display:flex;gap:30px;min-height:62px}.home-footer>span{background:var(--home-red);flex:1;height:2px}.home-footer>div{font-size:48px;line-height:1;white-space:nowrap;word-spacing:12px}.home-footer b{color:var(--home-red);font-weight:400}@media(max-width:1300px){.home-header{gap:20px}.home-wordmark{font-size:29px;gap:18px}.home-nav{gap:4px}.home-nav a{font-size:20px;gap:10px;padding-inline:16px}.home-actions{gap:26px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.home-action{min-height:310px}.home-action--create{gap:25px;padding:52px 8% 42px 7%}.home-create__content h2{font-size:4.4vw}.home-create__content>p{font-size:1.1vw;letter-spacing:.16em}.home-screen .button,.app--room .home-action--create .button--primary{font-size:25px;min-height:62px}.home-action--join{padding:28px}.home-join__heading{gap:18px;margin-bottom:22px}.home-join__heading h2{font-size:43px}.home-join__heading p{font-size:15px}.home-join__heading>span{font-size:60px}.home-code-field{gap:15px;padding-inline:18px}.home-code-field input{font-size:23px}.home-stats-panel,.winrate-chart{padding:24px}.home-stats-panel h2,.winrate-chart h2{font-size:18px;letter-spacing:.12em}.home-stats-panel select{font-size:16px}.home-stats{gap:14px}.home-stats article{gap:15px;padding-inline:16px}.home-stats article>svg{width:30px}.home-stats strong{font-size:32px}.home-stats span{font-size:18px}}@media(max-width:1000px){.home-header{flex-wrap:wrap;gap:12px 20px;padding-block:18px}.home-header__rule{margin-right:10px}.home-nav a{font-size:18px;padding-inline:12px}.home-account{padding-left:18px}.home-overview{grid-template-columns:minmax(0,1fr)}.home-stats-panel{padding:26px}.home-stats{grid-template-columns:repeat(4,minmax(0,1fr))}.home-stats article{align-items:start;flex-direction:column;gap:12px}.home-create__ace{font-size:100px;min-height:145px}.home-action--create{gap:18px;grid-template-columns:21% minmax(0,1fr);padding-inline:7%}.home-create__content>p{white-space:normal}.home-join__heading h2{font-size:36px}.home-join__heading p{font-size:13px;letter-spacing:.1em}.home-actions{gap:20px}.home-action--join{padding:25px}.home-screen .button,.app--room .home-action--create .button--primary{font-size:22px;gap:14px}}@media(max-width:760px){.app.app--room:has(.home-screen){padding-inline:20px}.home-header{display:grid;gap:16px;grid-template-columns:minmax(0,1fr) auto;padding:16px 0 22px}.home-wordmark{font-size:25px;gap:18px}.home-wordmark>span{font-size:49px}.home-header__rule{display:none}.home-account{grid-column:2;grid-row:1;padding-left:16px}.home-account summary>svg{height:40px;width:40px}.home-nav{gap:10px;grid-column:1 / -1}.home-nav a{font-size:19px;gap:10px;min-height:44px;padding:6px 18px}.home-nav svg{height:24px;width:24px}.home-screen{gap:22px}.home-actions{gap:22px;grid-template-columns:minmax(0,1fr)}.home-action{border-radius:22px;min-height:0}.home-action--create{gap:22px;grid-template-columns:20% minmax(0,1fr);padding:47px 10% 42px 8%}.home-create__frame{border-radius:30px;top:12px;right:12px;bottom:12px;left:12px}.home-create__corner{font-size:29px;height:35px;width:35px}.home-create__ace{font-size:90px;min-height:128px;padding-right:22%}.home-create__content h2{font-size:clamp(30px,6.8vw,48px)}.home-create__content>p{font-size:12px;letter-spacing:.16em;line-height:1.5;margin:14px 0 20px}.home-screen .button,.app--room .home-action--create .button--primary{border-radius:12px;font-size:22px;gap:12px;min-height:56px;padding:10px}.home-screen .button svg{width:26px}.home-action--join{padding:28px}.home-join__heading{gap:20px;margin-bottom:24px}.home-join__heading h2{font-size:43px}.home-join__heading p{font-size:14px;letter-spacing:.14em}.home-code-field{border-radius:12px;min-height:60px}.home-code-field input{font-size:24px;height:56px}.home-overview{gap:22px}.home-stats-panel,.winrate-chart{border-radius:22px;padding:24px}.home-stats-panel__heading{flex-wrap:wrap;gap:8px;margin-bottom:20px}.home-stats-panel h2,.winrate-chart h2{font-size:18px}.home-stats-panel select{max-width:none;padding-left:0}.home-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.home-stats article{align-items:center;flex-direction:row;gap:14px;min-height:90px;padding:14px}.home-stats article>svg{width:28px}.home-stats strong{font-size:30px}.home-stats strong.home-stats__empty{font-size:19px}.home-stats span{font-size:17px}.winrate-chart__heading>strong{font-size:21px;padding:5px 10px}.winrate-chart__heading p{font-size:14px}.winrate-chart__plot{height:160px}.winrate-chart .winrate-chart__empty{font-size:18px}.winrate-chart__details{overflow-x:auto}.home-footer{gap:18px;min-height:62px}.home-footer>div{font-size:32px;word-spacing:8px}}@media(max-width:380px){.app.app--room:has(.home-screen){padding-inline:14px}.home-nav{gap:5px}.home-nav a{font-size:18px;padding-inline:12px}.home-action--create{gap:16px;grid-template-columns:16% minmax(0,1fr);padding-inline:9%}.home-create__ace{font-size:66px}.home-create__content h2{font-size:28px}.home-screen .button,.app--room .home-action--create .button--primary{font-size:19px;gap:6px}.home-stats-panel,.winrate-chart,.home-action--join{padding:20px}.home-stats article{gap:10px;padding:10px}.home-stats article>svg{width:22px}.home-stats strong{font-size:27px}.home-stats span{font-size:16px}}@media(prefers-reduced-motion:reduce){.home-screen .button{transition:none}}@media(max-width:760px){.app--room .home-action--create .button--primary{font-size:20px;white-space:nowrap}.home-action--create .button svg{display:none}.home-stats article{gap:10px;padding:12px}.home-stats article>svg{width:22px}.home-stats span{font-size:16px}}@media(max-width:380px){.home-stats article{align-items:start;flex-direction:column}}.app.app--room:has(.room-screen){--home-ink: #192b43;--home-red: #b83e41;background:radial-gradient(ellipse at 50% 45%,#fffcf755,transparent 75%),#f8f2e9;color:var(--home-ink);font-family:Times New Roman,Times,serif;padding:0 clamp(24px,4.35vw,85px) 24px}.app--room .room-screen{color:var(--home-ink);margin:0 auto;max-width:1560px;padding:0}.room-breadcrumb{align-items:center;display:flex;gap:40px;margin:-18px 0 20px;min-height:42px}.room-breadcrumb>button{align-items:center;background:transparent;border:0;color:var(--home-ink);display:flex;font-size:23px;gap:18px;min-height:44px;padding:0 8px;white-space:nowrap}.room-breadcrumb>button:hover:enabled{color:var(--home-red)}.room-breadcrumb__line{background:var(--home-red);flex:1;height:1px}.room-suits{font-size:43px;line-height:1;white-space:nowrap;word-spacing:8px}.room-suits b{color:var(--home-red);font-weight:400}.room-breadcrumb__label{color:#72757c;font-size:23px;white-space:nowrap}.room-screen .room-layout{align-items:stretch;display:grid;gap:22px;grid-template-columns:minmax(0,1.46fr) minmax(0,1fr);margin:0}.room-layout>*{min-width:0}.room-screen .room-players,.room-screen .room-aside{background:#fffaf64d;border:1px solid #e5dcd1;border-radius:26px;box-shadow:0 10px 24px #573c2410,0 2px 4px #573c240c}.room-screen .room-players{padding:24px 32px 36px}.room-screen .section-heading{align-items:center;display:flex;gap:20px;justify-content:space-between;margin:0 4px 26px;padding:0}.room-screen .section-heading h2{align-items:center;color:var(--home-ink);display:flex;font-family:inherit;font-size:clamp(28px,2.45vw,42px);font-weight:700;gap:20px;letter-spacing:-.02em;line-height:1.2;margin:0}.room-screen .section-heading h2>span{font-size:55px;font-weight:400;line-height:1}.room-screen .room-players__count{color:var(--home-red);font-size:40px;white-space:nowrap}.room-players__list{display:grid;gap:16px}.room-screen .room-player{align-items:center;background:#f6f1eb66;border:2px solid #dfd6cd;border-radius:17px;display:grid;gap:16px;grid-template-columns:72px 48px minmax(0,1fr) auto auto;min-height:76px;padding:10px 18px 10px 28px;position:relative}.room-screen .room-player:before{background:#cfc2b4;border-radius:16px 0 0 16px;bottom:-1px;content:"";left:-1px;position:absolute;top:-1px;width:12px}.room-screen .room-player--me{background:#e5e8edbb;border-color:#d9dfe6}.room-screen .room-player--me:before{background:#416c98}.room-player__number{border-right:1px solid #a9a39e;font-size:35px;font-weight:700;line-height:1;padding:2px 20px 2px 12px}.room-player__avatar{align-items:center;color:#6b88a6;display:flex;justify-content:center}.room-player__avatar>svg{background:#819ab2;border-radius:50%;color:#fffaf3}.room-player__avatar--empty{border:1px dashed #aaa6a0;border-radius:50%;color:#4e5b6b;height:48px;justify-self:center;width:48px}.room-player__avatar--empty>svg{background:transparent;border-radius:0;color:inherit}.room-player__identity{min-width:0}.room-screen .room-player h3{align-items:center;color:var(--home-ink);display:flex;flex-wrap:wrap;font-size:29px;font-weight:700;gap:12px;line-height:1.2;margin:0;overflow-wrap:anywhere}.room-player__identity h3>svg{color:var(--home-red);flex-shrink:0}.room-screen .room-player--empty h3{color:#5c626a;font-size:25px;font-weight:400}.room-player__dash{grid-column:4 / -1;text-align:right;color:#6e737a;font-size:27px;padding:0 24px}.room-screen .ready,.room-screen .waiting{align-items:center;border-radius:30px;display:flex;font-size:23px;gap:9px;padding:8px 14px;white-space:nowrap}.room-screen .ready{background:#cce2dabb;color:#244955}.room-screen .ready>svg{color:#278a76}.room-screen .waiting{background:#eee3d7;color:#6c5d50}.room-screen .room-kick{background:transparent;border:0;color:#9a393e;align-items:center;display:flex;font-size:16px;justify-content:center;min-height:44px;padding:4px;width:44px}.room-screen .room-kick:hover{background:#f5e2dc;border-radius:8px}.room-screen .room-aside{display:flex;flex-direction:column;gap:0;padding:14px 14px 20px}.room-code-card{background:radial-gradient(ellipse at 20% 0,#2c465b,transparent 75%),#192d40;border:1px solid #162a3c;border-radius:23px;color:#fff9ec;padding:18px 25px 14px;position:relative;text-align:center}.room-code-card__frame{border:2px solid #eee2cd;border-radius:30px;top:10px;right:10px;bottom:10px;left:10px;pointer-events:none;position:absolute}.room-code-card .home-create__corner{font-size:34px;height:38px;width:38px}.room-code-card>p{align-items:center;display:flex;font-size:25px;font-weight:700;gap:20px;justify-content:center;margin:0 13% 9px;position:relative;white-space:nowrap}.room-code-card>p:before,.room-code-card>p:after{background:#ede2d0;content:"";flex:1;height:1px;min-width:25px}.room-code-card__value{background:transparent;border:0;color:inherit;font:inherit;padding:0;width:100%;align-items:center;display:flex;gap:22px;justify-content:center;position:relative}.room-code-card__value strong{color:#fff9ec;font-family:inherit;font-size:clamp(30px,3.9vw,66px);font-weight:700;letter-spacing:.02em;line-height:1.1;overflow-wrap:anywhere}.room-copy{align-items:center;background:#ffffff0d;border:2px solid #e2d7c3bb;border-radius:16px;color:#fff9ec;display:flex;flex-shrink:0;height:58px;justify-content:center;width:58px}.room-code-card__value:hover .room-copy{background:#ffffff20}.room-copy-status{color:#fff9ec;display:block;font-size:16px;height:18px;line-height:18px;margin-top:4px;position:relative}.room-ready-panel{border:2px solid #e6ded5;border-radius:22px;margin-top:16px;padding:14px 18px 16px}.room-ready-panel__heading{align-items:center;display:flex;gap:20px;margin:0 8px 18px}.room-ready-panel__heading>svg{flex-shrink:0}.room-screen .room-aside h2{color:var(--home-ink);font-family:inherit;font-size:26px;font-weight:700;letter-spacing:-.02em;line-height:1.2;margin:0}.room-ready-panel__heading p{color:#717781;font-size:21px;line-height:1.2;margin:4px 0 0}.room-screen .button{align-items:center;border:1px solid #355c86;border-radius:15px;display:flex;font-family:inherit;font-size:29px;font-weight:700;gap:16px;justify-content:center;min-height:58px;padding:8px 16px;transition:background .15s;width:100%}.room-screen .button--quiet{background:linear-gradient(110deg,#426c99,#345b85);box-shadow:inset 0 1px #ffffff30;color:#fffaf2}.room-screen .button--quiet:hover:enabled{background:#2e5077}.room-divider{align-items:center;color:var(--home-red);display:flex;font-size:30px;gap:16px;margin:10px 8%}.room-divider>span{background:var(--home-red);flex:1;height:1px}.room-controls{padding:0 16px}.room-controls__heading{align-items:center;display:flex;gap:16px;margin-bottom:16px}.room-controls__heading>svg{color:var(--home-red);flex-shrink:0}.room-controls__heading h2{flex:1}.room-controls__heading>span{background:#f0dfd7;border-radius:20px;color:#a33337;font-size:17px;padding:6px 14px;white-space:nowrap}.room-screen .timer{align-items:center;background:#eae1d633;border:1px solid #e1d6ca;border-radius:16px;color:#192b43;display:flex;font-size:21px;gap:14px;justify-content:space-between;margin:0;padding:4px 10px}.timer>span{align-items:center;display:flex;gap:12px}.room-screen .timer select{background:#fbf5ec;border:1px solid #d0c3b4;border-radius:11px;color:var(--home-ink);font-family:inherit;font-size:20px;min-height:40px;padding:4px 10px}.room-start-note{color:#646c77;font-size:16px;line-height:1.3;margin:10px 0}.app--room .room-screen .button--primary{background:linear-gradient(110deg,#b43b3f,#bd4844);border:1px solid #a6393c;box-shadow:inset 0 1px #ffffff20;color:#fff9ef;margin:0 0 12px;min-height:52px}.app--room .room-screen .button--primary:hover:enabled{background:#a63137}.room-screen .room-leave{background:transparent;border:2px solid #c7baad;color:#243040;font-size:25px;min-height:52px}.room-screen .room-leave:hover:enabled{background:#eee3d7}.room-screen button:disabled{cursor:default;opacity:.55}.room-screen select:disabled{cursor:default;opacity:.65}.app--room:has(.room-screen) :is(button,a,summary,select):focus-visible{outline:3px solid #46698e;outline-offset:4px}.room-screen .room-error{background:#fff0eb;border:1px solid #c27b70;border-radius:12px;color:#8b302e;margin:0 0 20px;padding:14px 18px}.room-screen>.home-footer{margin-top:22px}@media(max-width:1300px){.room-breadcrumb{gap:24px}.room-breadcrumb__label,.room-breadcrumb>button{font-size:20px}.room-screen .room-players{padding:24px}.room-screen .room-player{gap:14px;grid-template-columns:48px 36px minmax(0,1fr) auto auto;padding-left:20px}.room-player__number{font-size:29px;padding-inline:4px 15px}.room-player__avatar>svg{height:42px;width:42px}.room-player__avatar--empty{height:40px;width:40px}.room-screen .room-player h3{font-size:24px}.room-screen .room-player--empty h3{font-size:22px}.room-screen .ready,.room-screen .waiting{font-size:18px;padding:7px 10px}.room-screen .section-heading h2{font-size:30px;gap:14px}.room-screen .room-players__count{font-size:32px}.room-screen .room-aside h2{font-size:22px}.room-ready-panel__heading{gap:12px;margin-inline:0}.room-ready-panel__heading p{font-size:18px}.room-controls{padding-inline:8px}.room-controls__heading{gap:10px}.room-controls__heading>span{font-size:14px;padding-inline:10px}.room-screen .timer{font-size:18px}.room-screen .timer select{font-size:17px;padding-inline:6px}.room-screen .button{font-size:24px}.room-copy{height:48px;width:48px}}@media(max-width:1000px){.room-screen .room-layout{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:18px}.room-screen .room-players{padding:22px 18px}.room-screen .section-heading{gap:12px;margin-bottom:20px}.room-screen .section-heading h2{font-size:26px;gap:10px}.room-screen .section-heading h2>span{font-size:38px}.room-screen .room-players__count{font-size:27px}.room-screen .room-player{gap:10px;grid-template-columns:42px 36px minmax(0,1fr) auto;padding:12px 14px 12px 18px}.room-player__number{font-size:26px;grid-row:span 2;padding-right:12px}.room-player__avatar{grid-row:span 2}.room-player__avatar>svg{height:36px;width:36px}.room-player__avatar--empty{height:34px;width:34px}.room-screen .room-player h3{font-size:22px}.room-screen .room-player--empty h3{font-size:20px}.room-screen .ready,.room-screen .waiting{grid-column:3;justify-self:start;padding:4px 8px}.room-screen .room-kick{grid-column:4;grid-row:1 / span 2}.room-player__dash{grid-column:4 / -1;text-align:right;display:none}.room-player--empty .room-player__number,.room-player--empty .room-player__avatar{grid-row:auto}.room-controls__heading{flex-wrap:wrap;gap:8px}.room-controls__heading h2{flex:1;font-size:21px}.room-controls__heading>span{margin-left:auto}.room-code-card{padding-inline:20px}.room-code-card>p{font-size:21px;gap:12px}.room-code-card__value{gap:12px}.room-code-card__value strong{font-size:32px}.room-screen .timer{align-items:stretch;flex-direction:column;gap:8px;padding:10px}.room-screen .timer select{width:100%}.room-ready-panel{padding:14px}.room-ready-panel__heading>svg{width:36px}.room-screen .button{font-size:22px;gap:10px}}@media(max-width:760px){.app.app--room:has(.room-screen){padding-inline:20px}.room-breadcrumb{flex-wrap:wrap;gap:12px;margin:0 0 20px}.room-breadcrumb>button{font-size:20px;padding-left:0}.room-breadcrumb__label{font-size:17px;margin-left:auto}.room-suits{font-size:30px}.room-breadcrumb__line,.room-suits{display:none}.room-screen .room-layout{grid-template-columns:minmax(0,1fr);gap:22px}.room-screen .room-players{border-radius:22px;padding:22px 18px}.room-screen .section-heading h2{font-size:26px}.room-screen .room-player{min-height:76px}.room-players__list{gap:12px}.room-screen .room-player h3{font-size:23px}.room-screen .room-player--empty h3{font-size:21px}.room-screen .room-aside{border-radius:22px;padding:12px 12px 22px}.room-code-card{padding:26px 24px 20px}.room-code-card__value strong{font-size:clamp(30px,8vw,48px)}.room-ready-panel{margin-top:16px;padding:18px}.room-ready-panel__heading{gap:14px}.room-screen .room-aside h2{font-size:24px}.room-controls{padding-inline:10px}.room-controls__heading>span{font-size:14px}.room-screen .button{font-size:24px;min-height:56px}.room-screen .timer{align-items:center;flex-direction:row;font-size:18px}.room-screen .timer select{width:auto}.room-screen .timer>span{gap:7px}.room-screen .timer svg{width:24px}.room-screen .room-leave{font-size:22px}}@media(max-width:380px){.app.app--room:has(.room-screen){padding-inline:14px}.room-screen .section-heading h2{font-size:23px;gap:8px}.room-screen .section-heading h2>span{font-size:30px}.room-screen .room-players__count{font-size:24px}.room-screen .room-player{column-gap:8px;grid-template-columns:32px 30px minmax(0,1fr) auto;padding-inline:16px 10px}.room-player__number{font-size:23px;padding-right:8px}.room-player__avatar>svg{height:30px;width:30px}.room-player__avatar--empty{height:30px;width:30px}.room-screen .room-player--empty h3{font-size:19px}.room-screen .room-player h3{font-size:21px}.room-breadcrumb__label{display:none}.room-code-card{padding-inline:18px}.room-code-card__value strong{font-size:28px}.room-copy{height:44px;width:44px}.room-screen .room-aside h2{font-size:22px}.room-screen .timer{align-items:stretch;flex-direction:column}.room-screen .timer select{width:100%}}@media(prefers-reduced-motion:reduce){.room-screen .button{transition:none}}.app--table{background:#f3f4f6;color:#20242b;padding:0 clamp(12px,2.5vw,40px) 28px}.app--table:after,.app--table .app-header{display:none}.app--table .profile-summary{max-width:1320px;min-height:66px;border-color:#d9dde3;color:#606975;justify-content:space-between}.app--table .profile-summary strong{color:#20242b;font-size:15px}.app--table .profile-summary .text-button{color:#365dcc}.practice-header>div{display:flex;align-items:center;gap:22px}.practice-header>div>span{color:#697380;font-size:12px}.practice-header a{display:grid;align-items:center;text-decoration:none}@media(max-width:700px){.practice-header>div{gap:10px}.practice-header>div>span{display:none}}.app--table .game-screen--crafted{min-width:0;width:100%;max-width:1320px;padding:18px 0 0;margin:auto}.game-screen--crafted .game-meta{color:#606975;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px;font-size:12px}.game-screen--crafted .game-meta span+span{border:0;padding-left:0}.game-screen--crafted .game-meta__turn{font-size:17px;color:#303740}.game-screen--crafted .game-meta__turn strong{color:#20242b}.game-screen--crafted .game-meta__direction{display:flex;gap:8px;align-items:center}.game-meta__direction>span{font-size:25px;line-height:1}.game-screen--crafted .table-layout{display:block;position:relative;width:100%;max-width:none;aspect-ratio:1.91;max-height:630px;min-height:420px;margin:0;border-radius:24px;isolation:isolate;background:#06422c url(/assets/table-felt.jpg) center / 100% 100% no-repeat;box-shadow:0 10px 28px #18382c20,inset 0 0 0 1px #1e302740}.game-screen--crafted .table-surface{position:absolute;left:50%;top:49%;transform:translate(-50%,-50%);width:30%;height:35%;min-height:0;border:1px solid #cddcc33d;border-radius:15px;background:#082f2526;grid-column:auto;grid-row:auto;padding:24px 10px}.game-screen--crafted .table-surface:before{display:none}.game-screen--crafted .table-surface__label{color:#d6e5cb99;font-size:9px;letter-spacing:.15em;top:13px}.game-screen--crafted .table-surface>p{color:#d5e2d2;font-size:9px;bottom:8px;margin:0;max-width:95%;text-align:center}.game-screen--crafted .battle-grid{width:100%;max-width:100%;max-height:100%;overflow:auto;gap:10px 15px;padding:18px 3px;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#71967e transparent}.game-screen--crafted .battle-pair{position:relative;display:flex;gap:0;transform:none;flex:0 0 auto;padding:0 12px 10px 0}.game-screen--crafted .battle-pair:nth-child(2n){transform:none}.game-screen--crafted .battle-pair>.playing-card+.playing-card{margin-left:-36px;margin-top:15px;transform:rotate(9deg)}.game-screen--crafted .table-surface .playing-card{--card-width: clamp(48px, 4.65vw, 66px);--card-height: calc(var(--card-width) * 1.43)}.game-screen--crafted .table-surface__empty{font-size:12px;line-height:1.6;position:static;color:#c8d9c4;text-align:center;margin:0}.game-screen--crafted .opponent,.game-screen--crafted .my-seat{position:absolute;width:166px;margin:0;transform:translate(-50%,-50%);z-index:2}.game-screen--crafted .opponent--bottom-left{left:21%;top:78%}.game-screen--crafted .opponent--top-left{left:21%;top:23%}.game-screen--crafted .opponent--top{left:50%;top:15%}.game-screen--crafted .opponent--top-right{left:79%;top:23%;right:auto}.game-screen--crafted .opponent--bottom-right{left:79%;top:78%;right:auto}.game-screen--crafted .my-seat{left:50%;top:83%;bottom:auto;width:202px;text-align:center}.game-screen--crafted .opponent__label{display:flex;justify-content:center;gap:6px;color:#f7f6e9;font-size:12px;line-height:1.3;text-shadow:0 1px 3px #0b251c;margin-bottom:8px}.game-screen--crafted .opponent__label>span{max-width:95px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-screen--crafted .opponent__label i{display:grid;place-items:center;background:#eff0d9;color:#173b2a;width:23px;height:23px;border-radius:50%;font-style:normal;font-size:10px;text-shadow:none;flex-shrink:0}.game-screen--crafted .opponent__label small{color:#c5d9c7;font-size:9px;font-weight:500;text-transform:none}.game-screen--crafted .opponent__hands,.game-screen--crafted .hand-select{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;margin:0;border:1px solid #c5d4ae45;background:#092f2670;border-radius:12px;box-shadow:0 4px 12px #06281c40}.game-screen--crafted .seat-role--attacker .opponent__hands,.game-screen--crafted .seat-role--attacker .hand-select{border-color:#ead09a;box-shadow:0 0 0 2px #ead09a21}.game-screen--crafted .seat-role--defender .opponent__hands,.game-screen--crafted .seat-role--defender .hand-select{border-color:#e8e8d5a1}.game-screen--crafted .seat-role--attacker .opponent__label small,.game-screen--crafted .seat-role--attacker .my-seat__label small{color:#f1d9a5}.game-screen--crafted .opponent--exited{opacity:.5}.game-screen--crafted .hand-pile{--deck-color: #4a9af0;position:relative;display:grid;place-items:center;gap:2px;min-width:0;min-height:56px;padding:6px 3px;border:1px solid var(--deck-color);border-radius:6px;color:#b7d9ff;background:#0f3c43;box-shadow:0 2px #163833,0 3px 4px #041e2140;overflow:hidden;font-size:9px}.game-screen--crafted .hand-pile--2{--deck-color: #e46969;background-color:#493537;color:#ffc4b9}.game-screen--crafted .hand-pile__back{position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1px solid #ffffff30;border-radius:3px;pointer-events:none;background:repeating-linear-gradient(45deg,transparent 0 4px,#ffffff05 4px 5px),repeating-linear-gradient(-45deg,transparent 0 4px,#ffffff05 4px 5px)}.game-screen--crafted .hand-pile>span:not(.hand-pile__back),.game-screen--crafted .hand-pile>strong,.game-screen--crafted .hand-pile>small{position:relative}.game-screen--crafted .hand-pile strong{color:#fff8eb;font-size:19px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1}.game-screen--crafted .hand-pile small{display:none}.game-screen--crafted .hand-pile.is-active{background:#e8f0ff;color:#244e94;border-color:#85aff3;box-shadow:0 0 0 2px #f3e5bb}.game-screen--crafted .hand-pile.is-active strong{color:#244e94}.game-screen--crafted .hand-pile--2.is-active{background:#fff0ec;color:#9c3535;border-color:#e48b87}.game-screen--crafted .hand-pile--2.is-active strong{color:#9c3535}.game-screen--crafted button.hand-pile{cursor:pointer;transition:transform .16s,background .16s}.game-screen--crafted button.hand-pile:hover{transform:translateY(-3px)}.game-screen--crafted .my-seat__label{display:flex;justify-content:center;align-items:center;color:#f5f0d9;font-size:12px;font-weight:700;margin-bottom:8px}.game-screen--crafted .my-seat__label>span{min-width:0;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.game-screen--crafted .my-seat__label small{font-size:9px;font-weight:500;color:#c5d9c7;margin-left:7px}.game-screen--crafted .deck-panel{--deck-color: #4a9af0;position:absolute;left:23%;top:49%;transform:translate(-50%,-50%);display:block;width:22%;max-width:245px;padding:12px 10px 10px;border:1px solid #4a9af078;border-radius:13px;background:#072b2680;box-shadow:inset 0 1px #ffffff0c;grid-column:auto;grid-row:auto;z-index:1}.game-screen--crafted .deck-panel--2{--deck-color: #e46969;left:77%;border-color:#e4696978}.game-screen--crafted .deck-panel.is-active{border-color:var(--deck-color);box-shadow:0 0 0 2px #ffffff10,0 5px 15px #03251c35}.game-screen--crafted .deck-panel>p{display:flex;align-items:center;justify-content:space-between;color:#b5d7ff;font-size:11px;font-weight:800;margin:0 0 10px}.game-screen--crafted .deck-panel--2>p{color:#ffc4b9}.game-screen--crafted .deck-panel>p small{font-size:8px;font-weight:500;color:#c5d9c7}.game-screen--crafted .deck-panel__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.game-screen--crafted .deck-stack,.game-screen--crafted .trump,.game-screen--crafted .discard{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:end;min-height:92px;gap:4px;padding:0 0 2px;background:transparent;border:0;border-radius:5px;font-size:8px;color:#c4d9c5}.game-screen--crafted .card-back{position:absolute;top:0;right:1px;bottom:21px;left:1px;border:2px solid #d1daca;border-radius:5px;background:repeating-linear-gradient(45deg,transparent 0 4px,#ffffff13 4px 5px),repeating-linear-gradient(-45deg,transparent 0 4px,#ffffff13 4px 5px),#28578b;box-shadow:2px 2px #bdd0c0,4px 4px #8caa94,0 5px 7px #05231b50}.game-screen--crafted .deck-panel--2 .card-back{background-color:#963f43}.game-screen--crafted .discard .card-back{background:repeating-linear-gradient(45deg,transparent 0 4px,#ffffff0e 4px 5px),#264d3d}.game-screen--crafted .deck-stack>strong,.game-screen--crafted .discard>strong{position:absolute;left:50%;top:25%;transform:translate(-50%);display:grid;place-items:center;min-width:24px;height:24px;border-radius:6px;background:#f6f5e9;color:#263f40;font-size:13px;box-shadow:0 1px 3px #092f2660}.game-screen--crafted .is-empty .card-back{background:#123c2d;border:1px dashed #9ab5a364;box-shadow:none}.game-screen--crafted .trump>strong{position:absolute;top:0;right:0;bottom:21px;left:0;display:grid;place-items:center;background:#f7f5e9;color:#223d52;border:1px solid #e9e6d5;border-radius:5px;font-size:36px;font-family:Georgia,serif;box-shadow:0 3px 6px #05231b40}.game-screen--crafted .trump>strong.is-red{color:#b23c42}@media(prefers-reduced-motion:no-preference){.game-screen--crafted .trump>strong{animation:trump-reveal .24s ease-out}@keyframes trump-reveal{0%{opacity:.3;transform:rotateY(75deg)}to{opacity:1;transform:rotateY(0)}}}.game-screen--crafted .playing-card,.duel-live .playing-card,.table-motion-ghost{--card-width: 88px;--card-height: 126px;display:block;flex:0 0 var(--card-width);position:relative;width:var(--card-width);height:var(--card-height);padding:0;border:1px solid #dedfd9;border-radius:8px;background:linear-gradient(120deg,#fffef9,#f5f3e8);color:#24364e;font-family:Georgia,Times New Roman,serif;box-shadow:0 2px 1px #a0a498,0 5px 9px #06281c30;transform:none;transition:transform .17s cubic-bezier(.2,.7,.25,1),box-shadow .17s;touch-action:manipulation}.playing-card .card-face{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;align-self:auto;display:block;overflow:hidden;border-radius:inherit;pointer-events:none}.game-screen--crafted .playing-card--red,.duel-live .playing-card--red,.table-motion-ghost.playing-card--red{color:#b6333b}.card-corner{position:absolute;left:7%;top:6%;display:flex;flex-direction:column;align-items:center;gap:0;line-height:.95}.playing-card .card-corner b{align-self:auto;font-size:calc(var(--card-width) * .23);font-weight:700}.playing-card .card-corner>span{align-self:auto;font-size:calc(var(--card-width) * .21);line-height:1}.card-corner--bottom{top:auto;left:auto;right:7%;bottom:6%;transform:rotate(180deg)}.playing-card .card-pips{position:absolute;top:9%;right:12%;bottom:9%;left:12%;width:76%;height:82%;align-self:auto}.playing-card .card-pips>span{position:absolute;font-size:calc(var(--card-width) * .26);line-height:1}.card-emblem{position:absolute;top:22%;right:22%;bottom:22%;left:22%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid currentColor;border-radius:36% 36% 40% 40%}.playing-card .card-emblem>span{display:block;align-self:auto;font-size:calc(var(--card-width) * .47);font-weight:700;line-height:1}.card-emblem>i{font-style:normal;font-size:calc(var(--card-width) * .23)}.card-emblem--special{border:0;top:22%;right:12%;bottom:22%;left:12%}.card-emblem small{font-family:Manrope,sans-serif;font-size:calc(var(--card-width) * .08);font-weight:800;letter-spacing:.08em}.game-screen--crafted .playing-card--five,.game-screen--crafted .playing-card--joker,.duel-live .playing-card--five,.duel-live .playing-card--joker{background:linear-gradient(115deg,#fffef9,#e1e5e9 40%,#fffef9 58%,#ecebe7);color:#3e4651}.playing-card--five .card-face,.playing-card--joker .card-face{display:block}.playing-card--five .card-corner,.playing-card--joker .card-corner,.playing-card--five .card-emblem,.playing-card--joker .card-emblem{display:flex}.playing-card--five .card-corner span,.playing-card--joker .card-corner span{display:none}.playing-card--five .card-face:after,.playing-card--joker .card-face:after{content:"";position:absolute;top:-30%;right:-30%;bottom:-30%;left:-30%;background:linear-gradient(110deg,transparent 35%,#ffffffa8 49%,transparent 63%);transform:translate(-100%);pointer-events:none}@media(prefers-reduced-motion:no-preference){.playing-card--five:hover .card-face:after,.playing-card--joker:hover .card-face:after{animation:card-foil .7s ease-out}@keyframes card-foil{to{transform:translate(100%)}}}.game-screen--crafted .playing-card--four{box-shadow:0 2px 1px #a0a498,0 5px 9px #06281c30}.game-screen--crafted .playing-card--own{cursor:pointer;scroll-snap-align:start;transform-origin:center bottom}.game-screen--crafted .playing-card--own:hover,.game-screen--crafted .playing-card--own:focus-visible{transform:translateY(-12px);z-index:3;box-shadow:0 4px 1px #a0a498,0 14px 15px #06281c40;outline:3px solid #9fc7ff;outline-offset:2px}.game-screen--crafted .playing-card--own.is-selected{transform:translateY(-16px);box-shadow:0 0 0 3px #365dcc,0 12px 18px #18382c33}.game-screen--crafted .playing-card--own:disabled{cursor:wait;opacity:1}.game-screen--crafted .battle-pair--target .playing-card{box-shadow:0 0 0 3px #f5d28e,0 5px 18px #092f2666;cursor:pointer}.game-screen--crafted .battle-pair--target .playing-card:hover{transform:translateY(-5px)}.game-screen--crafted .hand-tray{margin:18px 0 0;max-width:none;padding:18px 22px 0;border:1px solid #d9dde3;border-radius:12px;background:#fff;overflow:hidden}.game-screen--crafted .hand-tray__heading{align-items:center;gap:12px}.game-screen--crafted .hand-tray .eyebrow{color:#697380;margin:0 0 5px;font-size:10px;letter-spacing:.07em}.game-screen--crafted .hand-tray h2{color:#20242b;font-size:16px}.game-screen--crafted .hand-tray h2 span{color:#606975;font-size:12px}.game-screen--crafted .hand-tray__notice{color:#697380;font-size:11px}.game-screen--crafted .card-ribbon{min-height:170px;align-items:start;gap:9px;padding:24px 5px 14px;overflow-x:auto;overflow-y:hidden;scrollbar-color:#a7b6d7 transparent;scroll-snap-type:x proximity;overscroll-behavior-x:contain}.game-screen--crafted .card-ribbon:focus-within{outline:0}.game-screen--crafted .hand-tray__empty,.game-screen--crafted .hand-tray__loading{color:#606975;font-size:13px;padding:20px 0}.app--table .game-screen--crafted .game-actions{border-color:#e2e5ea;margin:0 -22px;padding:12px 22px;gap:10px}.app--table .game-screen--crafted .game-actions__main{gap:9px}.app--table .game-screen--crafted .game-actions .button{min-height:44px;padding:0 17px;border-radius:7px;font-size:12px}.app--table .game-screen--crafted .button--primary,.app--table .game-screen--crafted .button.is-active{background:#365dcc;color:#fff}.app--table .game-screen--crafted .button--quiet{background:#f5f6f9;border-color:#d9dde3;color:#303740}.app--table .game-screen--crafted .button--quiet:hover:enabled{border-color:#365dcc;background:#edf0fa}.app--table .game-screen--crafted .text-button{color:#365dcc;font-size:12px}.app--table .game-screen--crafted .game-actions__leave{color:#a34038}.app--table .game-screen--crafted .game-actions__hint,.app--table .game-screen--crafted .game-actions__pending{color:#606975;font-size:11px}.app--table .game-screen--crafted .game-actions__error,.game-screen--crafted .game-connection-error{color:#8d2e26;background:#fff2f0;border-color:#d87063;border-radius:7px;font-size:12px}.app--table .game-screen--crafted .button:disabled{cursor:default;background:#e9ecf2;border-color:#e1e5ec;color:#697380}.app--table .special-transition{background:#fff;color:#20242b;border-color:#c8d3ed;box-shadow:0 5px 22px #18382c20;top:75px}.app--table .duel-live__intro>p:not(.eyebrow){color:#606975}.app--table .duel-live__intro>.eyebrow,.app--table .duel-live__intro strong{color:#365dcc}@media(max-width:1050px){.game-screen--crafted .table-layout{min-height:460px;aspect-ratio:1.8}.game-screen--crafted .opponent{width:140px}.game-screen--crafted .my-seat{width:164px}.game-screen--crafted .opponent__label{gap:4px;font-size:10px}.game-screen--crafted .opponent__label>span{max-width:74px}.game-screen--crafted .opponent__label i{width:20px;height:20px;font-size:9px}.game-screen--crafted .opponent__hands,.game-screen--crafted .hand-select{gap:6px;padding:6px}.game-screen--crafted .deck-panel{padding:10px 7px}.game-screen--crafted .deck-panel__cards{gap:5px}.game-screen--crafted .deck-panel>p small{font-size:7px}.game-screen--crafted .deck-stack,.game-screen--crafted .trump,.game-screen--crafted .discard{min-height:78px}.game-screen--crafted .trump>strong{font-size:30px}}@media(max-height:550px)and (orientation:landscape){.app--table{padding-inline:12px}.app--table .profile-summary{min-height:44px;padding:0}.app--table .game-screen--crafted{padding-top:10px}.game-screen--crafted .game-meta{font-size:9px;margin-bottom:9px}.game-screen--crafted .game-meta__turn{font-size:13px}.game-screen--crafted .table-layout{min-height:360px;max-height:none;aspect-ratio:2.15;border-radius:16px}.game-screen--crafted .opponent{width:120px}.game-screen--crafted .my-seat{width:145px;top:84%}.game-screen--crafted .hand-pile{min-height:44px;padding:4px 2px;font-size:8px}.game-screen--crafted .hand-pile strong{font-size:15px}.game-screen--crafted .opponent__hands,.game-screen--crafted .hand-select{padding:5px}.game-screen--crafted .opponent__label{margin-bottom:4px;font-size:9px}.game-screen--crafted .opponent__label small{font-size:7px}.game-screen--crafted .opponent__label i{width:17px;height:17px}.game-screen--crafted .my-seat__label{font-size:10px;margin-bottom:5px}.game-screen--crafted .deck-panel{padding:8px 6px}.game-screen--crafted .deck-panel>p{font-size:9px;margin-bottom:7px}.game-screen--crafted .deck-stack,.game-screen--crafted .trump,.game-screen--crafted .discard{min-height:66px}.game-screen--crafted .deck-stack>strong,.game-screen--crafted .discard>strong{min-width:19px;height:19px;font-size:10px}.game-screen--crafted .trump>strong{font-size:25px}.game-screen--crafted .table-surface .playing-card{--card-width: 46px}.game-screen--crafted .table-surface>p{font-size:7px}.game-screen--crafted .table-surface__label{top:7px;font-size:7px}.game-screen--crafted .table-surface{padding:15px 5px}.game-screen--crafted .battle-grid{gap:7px}.game-screen--crafted .hand-tray{margin-top:12px;padding-top:12px}.game-screen--crafted .hand-tray__notice{font-size:10px}.game-screen--crafted .playing-card--own{--card-width: 70px;--card-height: 100px}.game-screen--crafted .card-ribbon{min-height:144px}}@media(max-width:700px)and (orientation:portrait){.app--table{overflow:hidden}.app--table .game-screen--crafted{min-width:0}.game-screen--crafted .table-layout{min-width:0;min-height:360px}.app--table .orientation-prompt{background:#fff;color:#20242b;border-color:#d9dde3;box-shadow:0 12px 40px #18382c30}.app--table .orientation-prompt span{color:#365dcc}.app--table .orientation-prompt p{color:#606975}}@media(prefers-reduced-motion:reduce){.game-screen--crafted *,.game-screen--crafted *:before,.game-screen--crafted *:after,.table-motion-ghost{animation:none!important;transition:none!important}}@media(forced-colors:active){.game-screen--crafted .playing-card,.game-screen--crafted .hand-pile{border:1px solid ButtonText}.game-screen--crafted .playing-card.is-selected{outline:3px solid Highlight}}.app.app--table{height:100dvh;min-height:0;padding:0 clamp(10px,2vw,28px) 12px;display:flex;flex-direction:column;overflow:hidden;background:#edf0ef}.app--table .profile-summary{flex:0 0 44px;width:100%;max-width:1480px;min-height:0;padding:0;margin:0 auto;border:0;font-size:12px}.app--table .profile-summary strong{font-size:13px}.app--table .profile-summary .text-button{min-height:36px}.app--table .game-screen--crafted{position:relative;display:grid;grid-template-rows:38px minmax(0,1fr) 206px;flex:1;min-height:0;gap:10px;max-width:1480px;margin:0 auto;padding:0}.game-screen--crafted .game-meta{min-width:0;margin:0;gap:16px;justify-content:start;font-size:11px}.game-screen--crafted .game-meta__turn{min-width:180px;font-size:15px}.game-meta__turn small{margin-left:10px;font-size:11px;color:#667269;font-weight:500}.game-screen--crafted .is-your-turn .game-meta__turn strong{color:#285aa8}.game-screen--crafted .game-meta__direction{margin-left:auto;font-size:10px}.game-screen--crafted .game-meta__direction>span{font-size:21px}.table-tools{display:flex;align-items:center;gap:14px}.app--table .game-screen--crafted .table-tools .text-button{min-height:36px;white-space:nowrap;font-size:11px}.game-screen--crafted .table-layout{align-self:center;justify-self:center;width:min(100%,calc((100dvh - 320px)*2.15));height:100%;min-height:0;max-height:calc((100vw - 40px) / 1.7);aspect-ratio:auto;border-radius:22px;overflow:hidden;box-shadow:0 8px 25px #14332824}.game-screen--crafted .table-surface{width:39%;height:44%;padding:22px 8px}.game-screen--crafted .table-surface>p{font-size:9px}.game-screen--crafted .table-surface .playing-card{--card-width: clamp(44px, 4.8vw, 64px)}.game-screen--crafted .battle-grid{padding:10px 5px;gap:8px 10px}.game-screen--crafted .deck-panel{left:14.5%;width:18%;max-width:208px;padding:9px}.game-screen--crafted .deck-panel--2{left:85.5%}.game-screen--crafted .deck-stack,.game-screen--crafted .trump,.game-screen--crafted .discard{min-height:80px}.game-screen--crafted .opponent{width:150px}.game-screen--crafted .opponent--top{top:16%}.game-screen--crafted .opponent--top-left,.game-screen--crafted .opponent--top-right{top:22%}.game-screen--crafted .opponent--bottom-left,.game-screen--crafted .opponent--bottom-right{top:79%}.game-screen--crafted .hand-pile{min-height:44px;padding:4px}.game-screen--crafted .opponent__hands{padding:6px;gap:6px;border-radius:9px}.game-screen--crafted .opponent__label{margin-bottom:5px;font-size:11px}.game-screen--crafted .opponent__label small{font-size:8px}.game-screen--crafted .my-seat{width:225px;top:84%}.game-screen--crafted .my-seat__label{margin:0 0 6px}.my-seat__counts{display:flex;justify-content:center;gap:5px}.my-seat__counts>span{border:1px solid #72a4d980;background:#082e30cc;border-radius:5px;color:#c8e2ff;font-size:10px;padding:5px 9px}.my-seat__counts>span+span{border-color:#dd868a80;color:#ffd1cc}.game-screen--crafted .hand-tray{display:grid;position:relative;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:38px minmax(0,1fr);column-gap:18px;min-width:0;min-height:0;margin:0;padding:10px 16px 0;border-radius:14px;box-shadow:0 3px 12px #18382c08}.game-screen--crafted .hand-tray__heading{display:flex;justify-content:space-between;min-width:0;gap:12px}.game-screen--crafted .hand-tray h2{white-space:nowrap;font-size:12px;letter-spacing:0}.game-screen--crafted .hand-tray h2 span{font-size:11px}.hand-tabs{display:flex;gap:6px}.hand-tab{display:flex;align-items:center;gap:8px;min-height:34px;padding:5px 11px;border-radius:7px;border:1px solid #dce1e7;background:#f4f6f8;color:#5e6977;font:inherit;font-size:11px;cursor:pointer;white-space:nowrap}.hand-tab strong{font-size:12px}.hand-tab small{color:#5c6a7d;font-size:9px}.hand-tab[aria-pressed=true]{background:#eaf0fe;border-color:#7295db;color:#244f9c;box-shadow:inset 0 0 0 1px #7295db}.hand-tab--2[aria-pressed=true]{background:#fff0ee;border-color:#d48983;color:#a23a32;box-shadow:inset 0 0 0 1px #d48983}.hand-tab:hover{border-color:#607caa}.hand-navigation{display:flex;align-items:center;gap:12px}.hand-navigation>div{display:flex;gap:4px}.hand-navigation button{border:1px solid #dce1e7;border-radius:6px;background:#f4f6f8;color:#365dcc;min-width:32px;min-height:30px;cursor:pointer;font:inherit}.hand-navigation button:hover{background:#eaf0fe;border-color:#7295db}.game-screen--crafted .card-ribbon{grid-column:1;grid-row:2;align-items:center;justify-content:safe center;gap:7px;min-height:0;padding:14px 5px 10px;margin:0;scrollbar-width:thin}.game-screen--crafted .playing-card--own{--card-width: 88px;--card-height: 126px}.app--table .game-screen--crafted .game-actions{grid-column:2;grid-row:1 / -1;display:flex;flex-direction:column;justify-content:center;align-items:stretch;border:0;border-left:1px solid #e4e8e9;margin:0;padding:2px 0 12px 18px;gap:8px}.game-actions__guide>strong{color:#24352e;font-size:13px}.game-actions__guide>p{color:#647168;font-size:11px;line-height:1.5;margin:5px 0 0}.app--table .game-screen--crafted .game-actions__main{display:flex;flex-wrap:wrap;gap:6px}.app--table .game-screen--crafted .game-actions .button{min-height:38px;padding:0 12px;font-size:11px;flex:1 0 auto;white-space:nowrap}.app--table .game-screen--crafted .game-actions .button--primary{order:-1;flex-basis:100%}.app--table .game-screen--crafted .game-actions__error{position:absolute;bottom:calc(100% + 8px);right:0;max-width:min(420px,100%);margin:0;z-index:10;box-shadow:0 3px 15px #18382c20}.app--table .game-screen--crafted .game-actions__pending{margin:0}.game-screen--crafted .hand-tray__loading,.game-screen--crafted .hand-tray__empty{align-self:center;margin:0}.game-screen--crafted .game-connection-error{position:absolute;top:43px;left:50%;transform:translate(-50%);z-index:10;margin:0;width:max-content;max-width:90%}.app--table .special-transition{top:94px}.table-help{max-width:min(540px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:24px;border:1px solid #dce2df;border-radius:16px;background:#fff;color:#24352e;box-shadow:0 20px 70px #08251e40;font-family:Manrope,sans-serif}.table-help::backdrop{background:#09251e80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.table-help__heading{display:flex;align-items:center;justify-content:space-between;gap:25px}.table-help h2{font-size:21px;margin:0}.table-help dt{font-size:13px;font-weight:800;margin-top:18px}.table-help dd{font-size:12px;line-height:1.65;color:#5f6c65;margin:5px 0 0}.table-help .text-button{color:#365dcc}.hand-tab:focus-visible,.table-tools button:focus-visible{outline:3px solid #365dcc;outline-offset:3px}.app.app--duel{height:100dvh;min-height:0;padding:0 20px 12px;display:flex;flex-direction:column;overflow:hidden;background:#edf0ef;color:#20242b}.app--duel .app-header,.app--duel:after{display:none}.app .duel-live{display:grid;flex:1;min-height:0;width:100%;max-width:1480px;margin:0 auto;padding:0;grid-template-rows:34px 30px minmax(0,1fr) 206px;gap:8px}.duel-live .duel-live__intro{display:flex;align-items:center;gap:16px;text-align:left;min-width:0}.duel-live .duel-live__intro>.eyebrow{margin:0;color:#365dcc;font-size:10px}.duel-live .duel-live__intro h1{font:800 15px Manrope,sans-serif;letter-spacing:0}.duel-live .duel-live__intro>p:not(.eyebrow){margin:0;color:#606975;font-size:11px}.duel-live .duel-live__intro strong{color:#365dcc;font-size:16px}.duel-live .table-tools{margin-left:auto}.duel-live .table-tools .text-button{color:#365dcc;font-size:11px}.duel-live .duel-live__roulette{width:100%;max-width:none;margin:0;padding:4px 12px;border-color:#d3ded8;background:#e2eae5;flex-direction:row;align-items:center}.duel-live .duel-live__roulette>span{color:#3d6651;font-size:9px}.duel-live .duel-live__roulette>p{color:#4e6257;font-size:10px}.duel-live .duel-live__table{min-height:0;max-width:none;width:min(100%,calc((100dvh - 340px)*2.15));height:100%;background:#06422c url(/assets/table-felt.jpg) center / 100% 100%;border:0;border-radius:20px;overflow:hidden;grid-template-columns:130px minmax(0,1fr) 130px;grid-template-rows:58px minmax(0,1fr) 45px;padding:12px 7%}.duel-live .duel-live__pile{border:1px solid #7fbaa0}.duel-live .duel-live__surface{min-height:0}.duel-live .table-surface__empty{color:#c8d9c4;font-size:12px;text-align:center}.duel-live .battle-grid{overflow:auto;max-height:100%;max-width:100%;padding:24px 5px}.duel-live .duel-live__surface .playing-card{--card-width: 60px;--card-height: 86px}.duel-live .duel-live__hand{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 300px;grid-template-rows:24px 18px minmax(0,1fr);column-gap:18px;margin:0;min-height:0;padding:10px 16px 0;border:1px solid #d9dde3;background:#fff;border-radius:14px;color:#20242b}.duel-live__hand>div:first-child{display:flex;gap:12px;align-items:center}.duel-live__hand .eyebrow{color:#647168;font-size:10px;margin:0}.duel-live__hand h2{font-size:12px;margin:0;letter-spacing:0}.duel-live__hand h2 span{color:#647168;font-size:11px}.duel-live .duel-live__hint{grid-row:2;grid-column:1;margin:0;color:#647168;font-size:10px}.duel-live .card-ribbon{grid-row:3;grid-column:1;align-items:center;justify-content:safe center;min-height:0;padding:10px 4px 14px;scrollbar-width:thin}.duel-live .playing-card--own{--card-width: 88px;--card-height: 126px}.duel-live .duel-roulette-card small{position:absolute;bottom:4px;background:#eaf0fe;color:#365dcc;padding:2px 5px;border-radius:3px}.app .duel-live .game-actions{grid-column:2;grid-row:1 / -1;display:flex;flex-direction:column;justify-content:center;gap:9px;border:0;border-left:1px solid #e4e8e9;padding:0 0 10px 18px;margin:0}.duel-live .game-actions__main{display:flex;flex-wrap:wrap;gap:6px}.duel-live .game-actions .button{min-height:38px;font-size:11px;flex:1 0 auto;padding:0 10px;background:#f5f6f9;border-color:#d9dde3;color:#303740}.duel-live .game-actions .button--primary{background:#365dcc;color:#fff;flex-basis:100%;order:-1}.duel-live .game-actions .button:disabled{background:#e9ecf2;color:#697380}.duel-live .game-actions .text-button{color:#365dcc}.duel-live .game-actions__error{position:absolute;bottom:calc(100% + 8px);right:0;max-width:420px;z-index:10;color:#8d2e26;background:#fff2f0;border-color:#d87063}@media(max-width:1100px){.game-screen--crafted .game-meta{gap:12px}.game-screen--crafted .game-meta__turn{min-width:130px}.game-meta__turn small{display:none}.game-screen--crafted .hand-tray{grid-template-columns:minmax(0,1fr) 260px}.game-screen--crafted .opponent{width:132px}.game-screen--crafted .opponent__label{font-size:10px;gap:4px}.game-screen--crafted .opponent__label>span{max-width:65px}}@media(max-height:650px)and (orientation:landscape){.app.app--table{padding:0 8px 6px}.app--table .profile-summary{flex-basis:28px;font-size:10px}.app--table .profile-summary strong{font-size:11px}.app--table .profile-summary .text-button{min-height:26px;font-size:10px}.practice-header>div>span{font-size:10px}.app--table .game-screen--crafted{grid-template-rows:28px minmax(0,1fr) 126px;gap:5px}.game-screen--crafted .game-meta{font-size:9px;gap:9px}.game-screen--crafted .game-meta__turn{min-width:105px;font-size:12px}.game-screen--crafted .game-meta__direction{font-size:9px;gap:4px}.game-screen--crafted .game-meta__direction>span{font-size:17px}.app--table .game-screen--crafted .table-tools .text-button{min-height:26px;font-size:9px}.table-tools{gap:10px}.game-screen--crafted .table-layout{width:100%;min-height:0;max-height:none;border-radius:12px}.game-screen--crafted .opponent{width:clamp(96px,13vw,114px)}.game-screen--crafted .opponent--top{top:17%}.game-screen--crafted .opponent--top-left,.game-screen--crafted .opponent--top-right{top:20%}.game-screen--crafted .opponent--bottom-left,.game-screen--crafted .opponent--bottom-right{top:80%}.game-screen--crafted .opponent__label{font-size:9px;gap:3px;margin-bottom:3px}.game-screen--crafted .opponent__label>span{max-width:61px}.game-screen--crafted .opponent__label i{width:16px;height:16px;font-size:8px}.game-screen--crafted .opponent__label small{font-size:7px}.game-screen--crafted .opponent__hands{padding:3px;gap:4px;border-radius:6px}.game-screen--crafted .hand-pile{display:flex;justify-content:center;min-height:22px;padding:2px;gap:4px;font-size:7px}.game-screen--crafted .hand-pile strong{font-size:12px}.game-screen--crafted .hand-pile__word{display:none}.game-screen--crafted .hand-pile__deck:after{content:" ·"}.game-screen--crafted .my-seat{width:210px;top:85%}.game-screen--crafted .my-seat__label{font-size:10px;margin-bottom:3px}.my-seat__counts>span{font-size:8px;padding:3px 6px}.game-screen--crafted .deck-panel{width:11%;left:7.5%;padding:5px;border-radius:7px}.game-screen--crafted .deck-panel--2{left:92.5%}.game-screen--crafted .deck-panel>p{font-size:8px;margin-bottom:5px}.game-screen--crafted .deck-panel>p small{display:none}.game-screen--crafted .deck-panel__cards{grid-template-columns:1fr;gap:3px}.game-screen--crafted .deck-stack,.game-screen--crafted .trump,.game-screen--crafted .discard{min-height:16px;display:flex;flex-direction:row-reverse;justify-content:space-between;align-items:center;gap:3px;font-size:8px;padding:0}.game-screen--crafted .card-back{display:none}.game-screen--crafted .trump>strong,.game-screen--crafted .deck-stack>strong,.game-screen--crafted .discard>strong{position:static;transform:none;min-width:0;height:auto;background:transparent;border:0;box-shadow:none;color:#f5f1df;font-size:11px}.game-screen--crafted .trump>strong.is-red{color:#ffa9a9}.game-screen--crafted .table-surface{width:42%;height:43%;top:54%;padding:3px 4px}.game-screen--crafted .table-surface__label,.game-screen--crafted .table-surface>p{display:none}.game-screen--crafted .table-surface__empty{font-size:10px}.game-screen--crafted .table-surface .playing-card{--card-width: 44px}.game-screen--crafted .battle-grid{padding:0;gap:4px}.game-screen--crafted .battle-pair{padding:0 5px 0 0}.game-screen--crafted .battle-pair>.playing-card+.playing-card{margin-left:-27px;margin-top:5px}.game-screen--crafted .hand-tray{grid-template-columns:minmax(0,1fr) 238px;grid-template-rows:28px minmax(0,1fr);column-gap:10px;padding:5px 10px 0;border-radius:9px}.game-screen--crafted .hand-tray h2{font-size:10px}.game-screen--crafted .hand-tray h2 span{font-size:9px}.hand-tab{min-height:27px;gap:6px;font-size:10px;padding:3px 8px}.hand-tab strong{font-size:11px}.hand-tab small{font-size:8px}.hand-navigation{gap:6px}.hand-navigation button{min-width:28px;min-height:26px}.game-screen--crafted .card-ribbon{padding:9px 4px 5px;gap:6px}.game-screen--crafted .playing-card--own{--card-width: 54px;--card-height: 77px;border-radius:5px}.game-screen--crafted .playing-card--own:hover,.game-screen--crafted .playing-card--own:focus-visible{transform:translateY(-5px)}.game-screen--crafted .playing-card--own.is-selected{transform:translateY(-7px)}.app--table .game-screen--crafted .game-actions{padding:0 0 5px 10px;gap:4px}.game-actions__guide>strong{font-size:10px}.game-actions__guide>p{margin-top:2px;font-size:9px;line-height:1.35}.app--table .game-screen--crafted .game-actions .button{min-height:29px;padding:0 8px;font-size:10px}.app--table .game-screen--crafted .game-actions__main{gap:4px}.app--table .special-transition{top:61px;font-size:10px;padding:6px 12px}.app.app--duel{padding:0 8px 6px}.app .duel-live{grid-template-rows:26px 23px minmax(0,1fr) 126px;gap:5px}.duel-live .duel-live__intro{gap:9px}.duel-live .duel-live__intro h1{font-size:12px}.duel-live .duel-live__intro>.eyebrow,.duel-live .duel-live__intro>p:not(.eyebrow),.duel-live .table-tools .text-button{font-size:9px}.duel-live .duel-live__roulette{padding:2px 7px}.duel-live .duel-live__roulette>p{font-size:9px}.duel-live .duel-live__table{width:100%;padding:4px 8%;grid-template-columns:75px minmax(0,1fr) 75px;grid-template-rows:35px minmax(0,1fr) 30px;border-radius:12px}.duel-live .duel-live__opponent,.duel-live .duel-live__me{font-size:10px;gap:2px;padding:0}.duel-live .duel-live__opponent small,.duel-live .duel-live__me small{font-size:8px}.duel-live .duel-live__surface>span{top:0;font-size:7px}.duel-live .duel-live__surface>p{bottom:0;font-size:8px}.duel-live .duel-live__surface .playing-card{--card-width: 42px;--card-height: 60px}.duel-live .duel-live__hand{grid-template-columns:minmax(0,1fr) 238px;grid-template-rows:20px 15px minmax(0,1fr);column-gap:10px;padding:5px 10px 0;border-radius:9px}.duel-live__hand h2{font-size:10px}.duel-live .duel-live__hint,.duel-live__hand .eyebrow{font-size:9px}.duel-live .playing-card--own{--card-width: 50px;--card-height: 71px}.duel-live .card-ribbon{padding:7px 4px}.app .duel-live .game-actions{padding:0 0 5px 10px;gap:4px}.duel-live .game-actions .button{min-height:29px;font-size:10px}}@media(max-width:700px)and (orientation:portrait){.app--table .game-screen--crafted{visibility:hidden}.app--table .orientation-prompt{visibility:visible}.app .duel-live{visibility:hidden}}.game-screen--crafted .playing-card,.duel-live .playing-card,.table-motion-ghost{height:calc(var(--card-width) * 1.4);background:#fffdf8}.playing-card .card-face--asset{display:block}.playing-card .card-artwork{position:absolute;display:block;left:-5%;top:-3.571429%;width:110%;height:107.142858%;max-width:none;pointer-events:none;-webkit-user-select:none;user-select:none}.playing-card--five .card-face:after,.playing-card--joker .card-face:after{display:none}.game-screen--crafted .card-back{background:url(/assets/cards/clean-paper/backs/back_blue_v1.1.svg) center / 110% 107.142858% no-repeat;border:0;box-shadow:2px 2px #bdd0c0,4px 4px #8caa94,0 5px 7px #05231b50}.game-screen--crafted .deck-panel--2 .card-back{background-image:url(/assets/cards/clean-paper/backs/back_red_v1.1.svg)}.game-screen--crafted .discard .card-back{background:url(/assets/cards/clean-paper/backs/back_blue_v1.1.svg) center / 110% 107.142858% no-repeat}.game-screen--crafted .deck-panel--2 .discard .card-back{background-image:url(/assets/cards/clean-paper/backs/back_red_v1.1.svg)}.game-screen--crafted .deck-panel .is-empty .card-back{background:url(/assets/cards/clean-paper/extras/card_slot.svg) center / 110% 107.142858% no-repeat;border:0;box-shadow:none}.game-screen--crafted .hand-pile__back{top:0;right:0;bottom:0;left:0;border:0;border-radius:inherit;background:url(/assets/cards/clean-paper/backs/back_blue_v1.1.svg) center / cover no-repeat;opacity:.28}.game-screen--crafted .hand-pile--2 .hand-pile__back{background-image:url(/assets/cards/clean-paper/backs/back_red_v1.1.svg)}.trump-artwork{display:block;width:70%;height:auto;max-height:80%;object-fit:contain}@media(max-height:650px)and (orientation:landscape){.game-screen--crafted .trump .trump-artwork{width:13px;height:13px}}.playing-card{perspective:900px}.playing-card .card-flip{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;align-self:auto;display:block;border-radius:inherit;transform-style:preserve-3d}.playing-card .card-face--front,.playing-card .card-face--back{backface-visibility:hidden;-webkit-backface-visibility:hidden}.playing-card .card-face--front{transform:rotateY(0)}.playing-card .card-face--back{transform:rotateY(180deg)}.duel-roulette-card.is-spinning .playing-card,.duel-roulette-card.is-revealed .playing-card{animation:none}.duel-roulette-card.is-spinning .card-flip{animation:card-turn .9s linear infinite}.duel-roulette-card.is-revealed .card-flip{animation:card-reveal .32s ease-out}@keyframes card-turn{0%{transform:rotateY(0)}to{transform:rotateY(360deg)}}@keyframes card-reveal{0%{transform:rotateY(180deg)}to{transform:rotateY(360deg)}}@media(prefers-reduced-motion:reduce){.duel-roulette-card .card-flip{animation:none!important}}.playing-card.is-card-turning,.duel-roulette-card:is(.is-spinning,.is-revealed) .playing-card{background:transparent!important;border-color:transparent!important;box-shadow:none!important}.app.app--table{background:radial-gradient(circle at 50% -15%,#fffaf0,#e9eeeb 70%);color:#334052}.app--table .profile-summary{color:#566275}.app--table .profile-summary strong{color:#343d55}.app--table .game-screen--crafted{grid-template-rows:38px minmax(0,1fr) 206px}.game-screen--crafted .game-meta{padding:0 8px;color:#596579;font-weight:700}.game-screen--crafted .game-meta__turn{color:#333b53}.game-screen--crafted .is-your-turn .game-meta__turn strong{color:#316caf}.game-screen--crafted .game-meta>span:nth-child(2){padding:5px 10px;border-radius:100px;background:#dcebee;color:#315b69}.game-screen--crafted .game-meta>span:nth-child(3){color:#748095}.game-screen--crafted .table-layout{width:auto;height:min(100%,calc((100vw - 24px) * 941 / 1672));max-width:100%;max-height:100%;min-height:0;aspect-ratio:1672 / 941;border-radius:0;overflow:visible;background:url(/assets/table-redrawn.svg) center / 100% 100% no-repeat;box-shadow:none;filter:drop-shadow(0 16px 15px #28384638)}.game-screen--crafted .table-surface{left:50%;top:49.5%;width:61.5%;height:39%;padding:8px 16px 18px;border:0;border-radius:35px;background:transparent;box-shadow:none}.game-screen--crafted .table-surface__label{top:9px;color:#e7f8e4ba;font-size:10px;font-weight:800;letter-spacing:.2em}.game-screen--crafted .table-surface>p{bottom:5px;color:#e7f8e4;font-size:10px;font-weight:700}.game-screen--crafted .battle-grid{align-content:center;justify-content:safe center;padding:16px 4px;gap:10px;scrollbar-color:#c9e0d1 transparent}.game-screen--crafted .table-surface .playing-card{--card-width: clamp(55px, 5.8vw, 83px)}.game-screen--crafted .table-surface__empty{color:#eff8e4;font-size:clamp(13px,1.3vw,18px);font-weight:800;text-shadow:0 2px 3px #0e493a}.game-screen--crafted .battle-pair--target .playing-card{box-shadow:0 0 0 3px #fff1a8,0 0 22px 8px #fff0a170}.game-screen--crafted .battle-pair--target .playing-card:hover{transform:translateY(-7px) scale(1.04)}.game-screen--crafted .opponent,.game-screen--crafted .my-seat{width:20.2392%;height:12.3273%;transform:translate(-50%,-50%);background:none;border:0;box-shadow:none}.game-screen--crafted .opponent--top-left{left:23.3373%;top:15.8342%}.game-screen--crafted .opponent--top{left:50.3708%;top:15.8342%}.game-screen--crafted .opponent--top-right{left:77.3445%;top:15.8342%}.game-screen--crafted .opponent--bottom-left{left:23.3373%;top:83.1031%}.game-screen--crafted .opponent--bottom-right{left:77.3445%;top:83.1031%}.game-screen--crafted .my-seat{left:50.3708%;top:83.1031%}.game-screen--crafted .opponent__hands,.game-screen--crafted .my-seat__counts{display:grid;grid-template-columns:1fr 1fr;gap:4.019%;width:100%;height:100%;padding:0;margin:0;border:0;border-radius:0;background:none;box-shadow:none}.game-screen--crafted .seat-role--attacker .opponent__hands,.game-screen--crafted .seat-role--defender .opponent__hands,.game-screen--crafted .seat-role--attacker .my-seat__counts,.game-screen--crafted .seat-role--defender .my-seat__counts{border:0;box-shadow:none}.game-screen--crafted .opponent__label,.game-screen--crafted .my-seat__label{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);display:flex;align-items:center;justify-content:center;gap:5px;width:max-content;max-width:120%;padding:4px 10px;margin:0;border:1px solid #e5efdc70;border-radius:100px;background:#183e43d9;color:#fff9e8;font-size:clamp(9px,.9vw,12px);line-height:1;box-shadow:0 3px 8px #0b272c55;text-shadow:none}.game-screen--crafted .opponent--bottom-left .opponent__label,.game-screen--crafted .opponent--bottom-right .opponent__label,.game-screen--crafted .my-seat__label{top:calc(100% + 6px);bottom:auto}.game-screen--crafted .opponent__label>span{max-width:90px}.game-screen--crafted .opponent__label small,.game-screen--crafted .my-seat__label small{color:#c9ebd7;font-size:9px;white-space:nowrap}.game-screen--crafted .opponent__label i{width:20px;height:20px;background:var(--avatar);color:#253648;font-size:10px}.game-screen--crafted .seat-role--attacker .opponent__label,.game-screen--crafted .seat-role--attacker .my-seat__label{background:#66501fef;border-color:#f7d786}.game-screen--crafted .seat-role--defender .opponent__label,.game-screen--crafted .seat-role--defender .my-seat__label{border-color:#b4dcff}.game-screen--crafted .hand-pile,.game-screen--crafted .my-seat__counts .hand-pile{position:relative;display:block;width:100%;height:100%;min-height:0;padding:0;border:0;border-radius:14px;background:none;box-shadow:none;overflow:visible;font-size:0;color:transparent}.game-screen--crafted .hand-pile:before,.game-screen--crafted .hand-pile__back{content:"";position:absolute;inset:auto;left:50%;top:50%;width:88%;height:88%;transform:translate(-50%,-50%);display:block;border:0;border-radius:5px;background:#e8e9e8;box-shadow:0 0 3px #0d313e50;opacity:1}.game-screen--crafted .hand-pile__back{z-index:1;inset:auto;left:50%;top:50%;width:62.857143%;height:auto;aspect-ratio:160 / 224;border-radius:5px;transform:translate(calc(-50% - clamp(2px,.25vw,3px)),calc(-50% - clamp(2px,.25vw,3px))) rotate(90deg);background:url(/assets/cards/clean-paper/backs/back_blue_v1.1.svg) center / 110% 107.142858% no-repeat;box-shadow:0 2px 5px #102b4266}.game-screen--crafted .hand-pile--2 .hand-pile__back{background-image:url(/assets/cards/clean-paper/backs/back_red_v1.1.svg)}.game-screen--crafted .hand-pile.is-empty:before,.game-screen--crafted .hand-pile.is-empty .hand-pile__back{opacity:0}.game-screen--crafted .hand-pile__deck,.game-screen--crafted .hand-pile small{display:none}.game-screen--crafted .hand-pile strong{z-index:2;position:absolute;right:-4%;bottom:-10%;display:grid;place-items:center;width:clamp(22px,2.5vw,34px);height:clamp(22px,2.5vw,34px);border-radius:50%;background:#303a50;border:2px solid #d7e6ef;color:#fff;font-size:clamp(11px,1.2vw,17px);box-shadow:0 3px 6px #092a3477}.game-screen--crafted .hand-pile--2 strong{background:#a75d54}.game-screen--crafted .deck-panel,.game-screen--crafted .deck-panel--2{left:10.1077%;top:49.4687%;width:8.2536%;height:38.1509%;max-width:none;padding:0;border:0;border-radius:0;background:none;box-shadow:none}.game-screen--crafted .deck-panel--2{left:89.8325%}.game-screen--crafted .deck-panel.is-active{border:0;box-shadow:none}.game-screen--crafted .deck-panel>p{position:absolute;left:50%;bottom:100%;transform:translate(-50%);justify-content:center;margin:0;width:max-content;color:#fff6e3;font-size:clamp(9px,.8vw,12px);text-shadow:0 2px 4px #093e35}.game-screen--crafted .deck-panel>p small{display:none}.game-screen--crafted .deck-panel__cards{position:relative;display:block;height:100%}.game-screen--crafted .deck-stack,.game-screen--crafted .trump,.game-screen--crafted .discard{position:absolute;left:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;min-height:0;width:100%;height:27.457%;padding:0;font-size:0}.game-screen--crafted .deck-stack{top:.895%}.game-screen--crafted .trump{top:35.714%}.game-screen--crafted .discard{top:70.812%}.game-screen--crafted .deck-stack:before,.game-screen--crafted .discard:before{content:"";position:absolute;inset:auto;left:50%;top:50%;width:88%;height:88%;transform:translate(-50%,-50%);border-radius:5px;background:#e8e9e8;box-shadow:0 0 3px #0d313e50}.game-screen--crafted .deck-stack.is-empty:before,.game-screen--crafted .discard.is-empty:before{display:none}.game-screen--crafted .deck-stack .card-back,.game-screen--crafted .discard .card-back{display:block;inset:auto;left:50%;top:50%;width:62.857143%;height:auto;aspect-ratio:160 / 224;transform:translate(calc(-50% - clamp(2px,.25vw,3px)),calc(-50% - clamp(2px,.25vw,3px))) rotate(90deg);border:0;border-radius:5px;background:url(/assets/cards/clean-paper/backs/back_blue_v1.1.svg) center / 110% 107.142858% no-repeat;box-shadow:0 1px 3px #09292655}.game-screen--crafted .deck-panel--2 .card-back{background-image:url(/assets/cards/clean-paper/backs/back_red_v1.1.svg)}.game-screen--crafted .deck-stack>strong,.game-screen--crafted .discard>strong{z-index:2;left:auto;top:auto;right:-2%;bottom:-5%;transform:none;min-width:24px;width:27px;height:27px;border:2px solid #d7e6ef;border-radius:50%;background:#303a50;color:#fff;font-size:12px}.game-screen--crafted .deck-panel--2 .deck-stack>strong,.game-screen--crafted .deck-panel--2 .discard>strong{background:#a75d54}.game-screen--crafted .trump>strong{inset:auto;left:50%;top:50%;width:67.6%;height:auto;aspect-ratio:176 / 240;transform:translate(-50%,-50%) rotate(90deg);border:0;border-radius:0;background:url(/assets/cards/clean-paper/extras/card_blank.svg) center / 100% 100% no-repeat;box-shadow:none;animation:none}.game-screen--crafted .trump>.trump-card{position:absolute;left:50%;top:50%;width:67.6%;height:auto;max-width:none;aspect-ratio:176 / 240;transform:translate(-50%,-50%) rotate(90deg);object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none}.game-screen--crafted .trump-card__marker{--trump-accent: #2a2f3a;position:absolute;z-index:3;right:-7%;bottom:-8%;display:grid;place-items:center;width:28px;height:28px;border:2px solid var(--trump-accent);border-radius:50%;background:#fffdf8;box-shadow:0 0 0 2px #fff8e6,0 3px 8px #09292680}.game-screen--crafted .trump-card__marker--hearts,.game-screen--crafted .trump-card__marker--diamonds{--trump-accent: #f0506e}.game-screen--crafted .trump-card__marker img{display:block;width:19px;height:19px}.game-screen--crafted .is-trump-changing .trump-card__marker{animation:trump-marker-pulse .75s ease-out 2}.game-screen--crafted .is-trump-changing .trump>strong{animation:trump-suit-pulse .75s ease-out 2}@keyframes trump-marker-pulse{0%,to{transform:scale(1);box-shadow:0 0 0 2px #fff8e6,0 3px 8px #09292680}45%{transform:scale(1.14);box-shadow:0 0 0 4px #fff8e6,0 0 0 8px color-mix(in srgb,var(--trump-accent) 32%,transparent),0 4px 12px #09292680}}@keyframes trump-suit-pulse{0%,to{filter:brightness(1)}45%{filter:brightness(1.25) drop-shadow(0 0 8px #ffe9a8)}}.game-screen--crafted .trump .trump-artwork{width:70%;height:70%;max-height:none;transform:rotate(-90deg)}.game-screen--crafted .deck-panel .is-empty .card-back{transform:translate(-50%,-50%) rotate(90deg);background:url(/assets/cards/clean-paper/extras/card_slot.svg) center / 110% 107.142858% no-repeat;box-shadow:none}.game-screen--crafted .hand-tray{border:2px solid #d8dfe5;border-radius:22px;background:#fffaf2;box-shadow:0 7px #d4dce1,0 15px 25px #40516418}.game-screen--crafted .hand-tray h2,.game-actions__guide>strong{color:#37425b}.hand-tab{border:2px solid #cfd8e2;border-radius:10px;background:#f1f5f8;color:#405172;font-weight:800;box-shadow:0 3px #cfd8e2;transition:transform .16s,box-shadow .16s,background .16s}.hand-tab--2{background:#fff1e8;border-color:#e9c6b6;color:#a45e53;box-shadow:0 3px #e9c6b6}.hand-tab[aria-pressed=true]{background:#dcecff;border-color:#6fa8e0;color:#285e9b;box-shadow:0 3px #6fa8e0}.hand-tab--2[aria-pressed=true]{background:#ffe0d4;border-color:#e6998a;color:#a04542;box-shadow:0 3px #e6998a}.hand-tab:hover{transform:translateY(-2px)}.hand-tab:active{transform:translateY(2px);box-shadow:none}.game-screen--crafted .card-ribbon{padding-top:20px}.game-screen--crafted .playing-card--own{border:0;box-shadow:0 2px 1px #9a9e9b,0 6px 10px #283c4d3d}.game-screen--crafted .playing-card--own:hover,.game-screen--crafted .playing-card--own:focus-visible{transform:translateY(-13px) rotate(-1.5deg);outline:none;box-shadow:0 3px #84b4e7,0 0 0 3px #81b7ef,0 0 18px 7px #a7d3f4a8}.game-screen--crafted .playing-card--own.is-selected{transform:translateY(-17px);outline:none;box-shadow:0 3px #4f94d7,0 0 0 4px #5b9bd8,0 0 22px 10px #a7d3f4}.game-screen--crafted .playing-card--own:hover:after,.game-screen--crafted .playing-card--own:focus-visible:after,.game-screen--crafted .playing-card--own.is-selected:after{content:"";position:absolute;top:-5%;right:-5%;bottom:-5%;left:-5%;pointer-events:none;background:url(/assets/cards/clean-paper/extras/card_highlight.svg) center / 100% 100% no-repeat;filter:hue-rotate(180deg)}.app--table .game-screen--crafted .game-actions{border-left:2px solid #e0e5e8}.game-actions__guide>p{color:#68738a}.app--table .game-screen--crafted .game-actions .button{border-radius:10px;font-weight:800}.app--table .game-screen--crafted .game-actions .button--primary{background:#bdb3e9;border-color:#a99bd9;color:#343651;box-shadow:0 4px #9e8fce}.app--table .game-screen--crafted .game-actions .button--primary:hover:enabled{transform:translateY(-2px);background:#cec5f0;box-shadow:0 6px #9e8fce}.app--table .game-screen--crafted .game-actions .button--primary:active:enabled{transform:translateY(3px);box-shadow:0 1px #9e8fce}.app--table .game-screen--crafted .game-actions .button--quiet{background:#dfede8;border-color:#b6d8cb;color:#315d57;box-shadow:0 3px #9dc8b9}.app--table .game-screen--crafted .game-actions .button:disabled{box-shadow:none;transform:none}@media(max-height:650px)and (orientation:landscape){.app--table .game-screen--crafted{grid-template-rows:28px minmax(0,1fr) 126px}.game-screen--crafted .table-layout{width:auto;height:min(100%,calc((100vw - 12px) * 941 / 1672));max-width:100%;max-height:100%;aspect-ratio:1672 / 941;min-height:0;border-radius:0}.game-screen--crafted .opponent,.game-screen--crafted .my-seat{width:20.2392%;height:12.3273%}.game-screen--crafted .opponent__label,.game-screen--crafted .my-seat__label{bottom:calc(100% + 2px);padding:2px 5px;font-size:8px}.game-screen--crafted .opponent__label i{width:14px;height:14px}.game-screen--crafted .hand-pile strong{width:20px;height:20px;font-size:10px}.game-screen--crafted .deck-panel,.game-screen--crafted .deck-panel--2{width:8.2536%;height:38.1509%;padding:0}.game-screen--crafted .deck-stack,.game-screen--crafted .trump,.game-screen--crafted .discard{flex-direction:column;height:27.457%}.game-screen--crafted .deck-stack .card-back,.game-screen--crafted .discard .card-back{display:block;position:absolute}.game-screen--crafted .deck-stack>strong,.game-screen--crafted .discard>strong{position:absolute;left:auto;top:auto;width:18px;height:18px;min-width:18px;font-size:9px}.game-screen--crafted .trump>strong{position:absolute;inset:auto;left:50%;top:50%;width:67.6%;height:auto}.game-screen--crafted .trump-card__marker{width:21px;height:21px;right:-10%;bottom:-10%;border-width:1.5px;box-shadow:0 0 0 2px #fff8e6,0 2px 5px #09292680}.game-screen--crafted .trump-card__marker img{width:14px;height:14px}.game-screen--crafted .table-surface{top:49.5%;width:61.5%;height:39%;padding:2px 8px}.game-screen--crafted .table-surface__label,.game-screen--crafted .table-surface>p{display:none}.game-screen--crafted .table-surface .playing-card{--card-width: clamp(32px, 4vw, 48px)}.game-screen--crafted .battle-grid{padding:0}}.app.app--duel{background:radial-gradient(circle at 50% -15%,#fffaf0,#e9eeeb 70%)}.app .duel-live .duel-live__table{display:block;position:relative;align-self:center;width:auto;height:min(100%,calc((100vw - 24px) * 941 / 1672));max-width:100%;max-height:100%;aspect-ratio:1672 / 941;padding:0;border:0;border-radius:0;overflow:visible;background:url(/assets/table-redrawn.svg) center / 100% 100% no-repeat;filter:drop-shadow(0 16px 15px #28384638)}.duel-live .duel-live__opponent,.duel-live .duel-live__me{position:absolute;left:50.3708%;top:15.8342%;transform:translate(-50%,-50%);display:flex;flex-direction:row;justify-content:center;gap:6px;width:20.2392%;height:12.3273%;padding:0;color:#fff9e8}.duel-live .duel-live__me{top:83.1031%}.duel-live .duel-live__opponent>span:not(.duel-live__stack-base),.duel-live .duel-live__me>span:not(.duel-live__stack-base){position:absolute;bottom:calc(100% + 5px);left:50%;transform:translate(-50%);width:max-content;padding:4px 10px;border:1px solid #c9ebd7;border-radius:100px;background:#183e43e8;box-shadow:0 3px 8px #0b272c55}.duel-live .duel-live__me>span:not(.duel-live__stack-base){top:calc(100% + 5px);bottom:auto}.duel-live .duel-live__stack-base{position:absolute;left:3.6%;top:8%;width:40.8%;height:84%;border-radius:8px;background:#e8e9e8;box-shadow:0 2px #b9c4d0,0 4px 8px #0d313e70}.duel-live .duel-live__opponent small,.duel-live .duel-live__me small{position:absolute;left:75%;top:50%;transform:translate(-50%,-50%);width:42%;height:80%;display:grid;place-items:center;border-radius:8px;background:#214a56e0;color:#fff9e8;text-align:center;font-size:clamp(8px,.8vw,12px);line-height:1.3}.duel-live .duel-live__opponent:before,.duel-live .duel-live__me:before{content:"";position:absolute;left:8.05%;top:-13.45%;width:31.9%;height:auto;aspect-ratio:176 / 240;z-index:1;border-radius:0;transform:translate(-3px,-3px) rotate(90deg);background:#376ca6 url(/assets/cards/clean-paper/backs/back_blue_v1.1.svg) center / 100% 100% no-repeat;box-shadow:0 2px 5px #102b4266}.duel-live .duel-live__opponent:after,.duel-live .duel-live__me:after{content:attr(data-count);position:absolute;z-index:3;left:39%;bottom:-5%;display:grid;place-items:center;width:27px;height:27px;border:2px solid #d7e6ef;border-radius:50%;background:#303a50;color:#fff;font-size:13px;box-shadow:0 3px 6px #092a3477}.duel-live .duel-live__pile{position:absolute;left:10.1077%;top:49.256%;transform:translate(-50%,-50%);width:7.7751%;height:9.412%;display:flex;flex-direction:column;justify-content:center;align-items:center;border:0;border-radius:8px;background:#fffaf2;color:#30445a;font-weight:800;box-shadow:0 3px 6px #0b393766}.duel-live .duel-live__pile:last-of-type{left:89.8325%;border:0}.duel-live .duel-live__pile strong{color:#30445a;font-size:clamp(18px,2vw,32px)}.duel-live .duel-live__surface{position:absolute;left:50%;top:49.5%;transform:translate(-50%,-50%);width:61.5%;height:39%;padding:0 12px}.duel-live .duel-live__surface>span{top:8px;color:#eff8e4}.duel-live .duel-live__surface>p{bottom:3px;color:#eff8e4}.duel-live .duel-live__surface .playing-card{--card-width: clamp(55px, 5.8vw, 83px)}.duel-live .duel-live__hand{border:2px solid #d8dfe5;border-radius:22px;background:#fffaf2;box-shadow:0 7px #d4dce1,0 15px 25px #40516418}.duel-live .duel-live__hand h2,.duel-live .game-actions__guide>strong{color:#37425b}.duel-live .playing-card--own:hover,.duel-live .playing-card--own:focus-visible{outline:none;transform:translateY(-12px);box-shadow:0 0 0 3px #81b7ef,0 0 18px 7px #a7d3f4a8}.duel-live .playing-card--own.is-selected{transform:translateY(-16px);box-shadow:0 0 0 4px #5b9bd8,0 0 22px 10px #a7d3f4}.duel-live .playing-card--own:hover:after,.duel-live .playing-card--own:focus-visible:after,.duel-live .playing-card--own.is-selected:after{content:"";position:absolute;top:-5%;right:-5%;bottom:-5%;left:-5%;pointer-events:none;background:url(/assets/cards/clean-paper/extras/card_highlight.svg) center / 100% 100% no-repeat;filter:hue-rotate(180deg)}.duel-live .game-actions .button--primary{background:#bdb3e9;border-color:#a99bd9;color:#343651;box-shadow:0 4px #9e8fce}.duel-live .game-actions .button--quiet{background:#dfede8;border-color:#b6d8cb;color:#315d57}@media(max-height:650px)and (orientation:landscape){.app .duel-live .duel-live__table{width:auto;height:min(100%,calc((100vw - 12px) * 941 / 1672));max-width:100%}.duel-live .duel-live__opponent>span:not(.duel-live__stack-base),.duel-live .duel-live__me>span:not(.duel-live__stack-base){bottom:calc(100% + 1px);padding:2px 5px;font-size:8px}.duel-live .duel-live__me>span:not(.duel-live__stack-base){top:calc(100% + 2px);bottom:auto}.duel-live .duel-live__opponent small,.duel-live .duel-live__me small{display:none}.duel-live .duel-live__opponent:after,.duel-live .duel-live__me:after{width:18px;height:18px;font-size:9px}.duel-live .duel-live__pile{font-size:0}.duel-live .duel-live__pile strong{font-size:14px;line-height:1}.duel-live .duel-live__surface>span,.duel-live .duel-live__surface>p{display:none}.duel-live .duel-live__surface .playing-card{--card-width: clamp(32px, 4vw, 48px)}}.game-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}.game-screen--crafted .game-meta__turn small{display:none}.game-screen--crafted .game-meta__direction{font-size:25px;color:#4b6680}.game-screen--crafted .table-surface{display:flex;align-items:center;justify-content:center}.game-screen--crafted .battle-grid{align-content:center}.practice-duel-prompt{position:fixed;top:94px;right:24px;z-index:45;display:flex;align-items:center;justify-content:center;gap:16px;width:fit-content;max-width:100%;margin:10px auto 0;padding:8px 10px 8px 17px;border:2px solid #e7d6a7;border-radius:18px;background:#fff8e8;box-shadow:0 5px #d6d2bc;color:#4a4653;font-size:13px;font-weight:800}.practice-duel-prompt .button{min-height:38px;background:#f2c36f;color:#3d3b44}.practice-duel-prompt .button:hover{background:#ffda91}@media(max-width:700px){.practice-duel-prompt{gap:8px;font-size:11px}.practice-duel-prompt .button{padding:0 10px;font-size:11px}}.game-screen--crafted .table-surface .battle-grid,.duel-live .duel-live__surface .battle-grid{display:grid;box-sizing:border-box;width:100%;height:100%;max-width:none;max-height:none;min-width:0;min-height:0;grid-template-columns:repeat(var(--battle-columns, 1),var(--battle-pair-width, 137px));grid-auto-rows:var(--battle-pair-height, 143px);align-content:safe center;justify-content:safe center;gap:6px;padding:4px;overflow:auto}.game-screen--crafted .table-surface .battle-pair,.duel-live .duel-live__surface .battle-pair{position:relative;display:flex;flex:none;width:var(--battle-pair-width, 137px);height:var(--battle-pair-height, 143px);padding:0;gap:0;transform:none}.game-screen--crafted .table-surface .battle-pair:nth-child(2n),.duel-live .duel-live__surface .battle-pair:nth-child(2n){transform:none}.game-screen--crafted .table-surface .playing-card,.duel-live .duel-live__surface .playing-card{--card-width: var(--battle-card-width, 83px)}.game-screen--crafted .table-surface .battle-pair>.playing-card+.playing-card,.duel-live .duel-live__surface .battle-pair>.playing-card+.playing-card{margin-left:calc(var(--battle-card-width, 83px) * -.45);margin-top:calc(var(--battle-card-width, 83px) * .15);transform:rotate(8deg)}.game-screen--crafted .my-seat button.hand-pile{cursor:pointer}.game-screen--crafted .my-seat .hand-pile.is-active{border:0;background:none;color:transparent;box-shadow:none}.game-screen--crafted .my-seat button.hand-pile:hover .hand-pile__back,.game-screen--crafted .my-seat button.hand-pile:focus-visible .hand-pile__back{filter:brightness(1.12)}.game-screen--crafted .my-seat button.hand-pile:focus-visible{outline:3px solid #fff9d8;outline-offset:5px}.game-screen--crafted .hand-tray{grid-template-columns:112px minmax(0,1fr) 214px;grid-template-rows:minmax(0,1fr);column-gap:12px;padding:8px 12px;overflow:visible}.game-screen--crafted .hand-tray__heading{grid-column:1;grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0}.game-screen--crafted .hand-tabs{display:flex;align-items:center;gap:7px}.game-screen--crafted .hand-tab,.game-screen--crafted .hand-tab--2{position:relative;display:block;width:50px;height:72px;min-height:0;padding:0;border:0;border-radius:8px;background:none;box-shadow:none;cursor:pointer;transition:transform .2s ease,filter .2s ease}.game-screen--crafted .hand-tab img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}.game-screen--crafted .hand-tab.is-live:after{content:"";position:absolute;right:-5px;top:-5px;z-index:2;width:10px;height:10px;border:2px solid #fffaf2;border-radius:50%;background:#f8c352;box-shadow:0 1px 5px #21364e73}.game-screen--crafted .hand-tab[aria-pressed=true],.game-screen--crafted .hand-tab--2[aria-pressed=true]{background:none;border:0;box-shadow:0 0 0 3px #88bff2,0 0 17px #9bcaf184;transform:translateY(-5px)}.game-screen--crafted .hand-tab--2[aria-pressed=true]{box-shadow:0 0 0 3px #eda79c,0 0 17px #edb1a084}.game-screen--crafted .hand-tab:hover{transform:translateY(-8px);filter:brightness(1.06)}.game-screen--crafted .hand-tab:active{transform:translateY(-2px)}.game-screen--crafted .hand-tab:focus-visible{outline:3px solid #477faf;outline-offset:5px}.game-screen--crafted .hand-navigation{position:absolute;right:234px;top:9px;z-index:3}.game-screen--crafted .hand-navigation button{border-radius:50%;background:#e9f1f5;color:#365d7e}.game-screen--crafted .card-ribbon{grid-column:2;grid-row:1;justify-content:safe center;align-items:center;padding:16px 4px 8px;overflow-x:auto;overflow-y:hidden}.app--table .game-screen--crafted .game-actions{grid-column:3;grid-row:1;display:flex;align-items:stretch;justify-content:center;border-left:2px solid #e5e1e3;padding:8px 2px 8px 14px}.app--table .game-screen--crafted .game-actions__main{display:flex;flex-direction:column;gap:8px}.app--table .game-screen--crafted .game-actions .button{order:0;flex:0 0 auto;width:100%;min-height:43px}.app--table .game-screen--crafted .game-actions .text-button{align-self:center}.hand-opening-ghost{transform-origin:center center;will-change:transform,opacity}.duel-live .duel-live__hand{grid-template-columns:minmax(0,1fr) 200px;grid-template-rows:minmax(0,1fr);column-gap:12px;padding:8px 12px;overflow:visible}.duel-live .duel-live__hand .card-ribbon{grid-column:1;grid-row:1;padding:12px 4px 8px}.app .duel-live .duel-live__actions{grid-column:2;grid-row:1;align-items:stretch;justify-content:center;border-left:2px solid #e5e1e3;padding:8px 2px 8px 12px}.duel-live .duel-live__actions .game-actions__main{display:flex;flex-direction:column;gap:8px}.duel-live .duel-live__actions .button{order:0;flex:0 0 auto;width:100%;min-height:42px}.duel-live .duel-live__actions .text-button{align-self:center}.duel-live .duel-live__intro h1{margin:0;font-size:15px;line-height:1.3}.app .duel-live--no-roulette{grid-template-rows:34px minmax(0,1fr) 206px}.duel-live .duel-live__hand:has(.game-actions__main:empty):not(:has(.game-actions__error,.game-actions__pending)){grid-template-columns:minmax(0,1fr)}.duel-live .duel-live__actions:has(.game-actions__main:empty):not(:has(.game-actions__error,.game-actions__pending)){display:none}.game-screen--crafted .hand-tray:has(.game-actions__main:empty):not(:has(.game-actions__error,.game-actions__pending)){grid-template-columns:112px minmax(0,1fr)}.game-screen--crafted .game-actions:has(.game-actions__main:empty):not(:has(.game-actions__error,.game-actions__pending)){display:none}@media(max-height:650px)and (orientation:landscape){.game-screen--crafted .game-meta__direction{font-size:18px}.game-screen--crafted .hand-tray{grid-template-columns:72px minmax(0,1fr) 165px;column-gap:7px;padding:5px 8px}.game-screen--crafted .hand-tabs{gap:4px}.game-screen--crafted .hand-tab,.game-screen--crafted .hand-tab--2{width:31px;height:46px}.game-screen--crafted .card-ribbon{padding:7px 4px 4px}.game-screen--crafted .hand-navigation{right:181px;top:3px}.app--table .game-screen--crafted .game-actions{padding:2px 0 3px 7px}.app--table .game-screen--crafted .game-actions__main{gap:5px}.app--table .game-screen--crafted .game-actions .button{min-height:29px}.duel-live .duel-live__hand{grid-template-columns:minmax(0,1fr) 150px;padding:4px 8px}.duel-live .duel-live__hand .card-ribbon{padding:5px 4px 3px}.app .duel-live .duel-live__actions{padding:2px 0 3px 7px}.duel-live .duel-live__actions .game-actions__main{gap:5px}.duel-live .duel-live__actions .button{min-height:29px}.app .duel-live--no-roulette{grid-template-rows:26px minmax(0,1fr) 126px}.game-screen--crafted .hand-tray:has(.game-actions__main:empty):not(:has(.game-actions__error,.game-actions__pending)){grid-template-columns:72px minmax(0,1fr)}}.app--table .game-screen--crafted{grid-template-rows:38px minmax(0,1fr) 250px}.game-screen--crafted .my-seat .hand-pile strong{color:#fff;opacity:1}.game-screen--crafted .my-seat .hand-pile:before,.game-screen--crafted .my-seat .hand-pile__back{transition:opacity .38s ease,transform .42s cubic-bezier(.2,.7,.2,1),filter .3s ease}.game-screen--crafted .my-seat .hand-pile.is-open:before{opacity:0;transform:translate(-50%,calc(-50% - 14px)) scale(.7)}.game-screen--crafted .my-seat .hand-pile.is-open .hand-pile__back{opacity:0;transform:translate(-50%,-85%) rotate(68deg) scale(.65);filter:brightness(1.4)}.game-screen--crafted .my-seat .hand-pile.is-open strong{box-shadow:0 2px 8px #102f4299}.game-screen--crafted .hand-tray{isolation:isolate;grid-template-columns:120px minmax(0,1fr);grid-template-rows:34px minmax(0,1fr) 50px;column-gap:12px;width:min(100%,1080px);min-width:0;margin-inline:auto;padding:10px 18px 11px;overflow:visible;border:3px solid #f1dfb6;border-radius:24px;background:radial-gradient(circle at 50% 0%,#3c8572a8,transparent 46%),radial-gradient(circle at 18% 90%,#79bba449,transparent 36%),linear-gradient(130deg,#155a50,#185448 55%,#10443f);box-shadow:inset 0 0 0 3px #2b796b,inset 0 3px 11px #082c3290,0 6px #173e47,0 14px 26px #133c4847}.game-screen--crafted .hand-tray:before{content:"";position:absolute;top:8px;right:8px;bottom:8px;left:8px;z-index:-1;pointer-events:none;border:1px solid #dfebd082;border-radius:16px}.game-screen--crafted .hand-tray__heading{grid-column:1;grid-row:1 / 3;z-index:2;display:flex;align-items:center;justify-content:center}.game-screen--crafted .hand-tabs{gap:9px}.game-screen--crafted .hand-tab,.game-screen--crafted .hand-tab--2{width:47px;height:66px;border-radius:7px}.game-screen--crafted .hand-tab[aria-pressed=true],.game-screen--crafted .hand-tab--2[aria-pressed=true]{box-shadow:0 0 0 3px #ffe8a8,0 0 13px 4px #f7c86088}.game-screen--crafted .hand-tray__status{grid-column:1 / -1;grid-row:1;display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;color:#fef7df;font-weight:800}.game-screen--crafted .hand-tray__active,.game-screen--crafted .hand-tray__direction{display:inline-flex;align-items:center;gap:7px;min-height:27px;padding:3px 12px;border:1px solid #e5e6c888;border-radius:999px;background:#0b3d3ad9;box-shadow:inset 0 1px #ffffff30,0 2px 6px #062d2870;white-space:nowrap;font-size:12px;line-height:1}.game-screen--crafted .hand-tray__active i{width:9px;height:9px;border-radius:50%;background:#7eb9f4;box-shadow:0 0 0 2px #fff9dc}.game-screen--crafted .hand-tray__active--2 i{background:#f48e86}.game-screen--crafted .hand-tray__direction b{font-size:20px;line-height:.8;color:#ffdc8b}.game-screen--crafted .card-ribbon{grid-column:1 / -1;grid-row:2;justify-self:center;width:calc(100% - 280px);padding:8px 0 5px;scrollbar-color:#e6c783 #1d584d}.game-screen--crafted .hand-navigation{right:21px;top:49%}.app--table .game-screen--crafted .game-actions{grid-column:1 / -1;grid-row:3;display:flex;align-items:center;justify-content:center;border:0;border-top:1px solid #e1e9c65c;padding:7px 4px 0;margin:0}.app--table .game-screen--crafted .game-actions__main{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:center;align-items:center;gap:10px}.app--table .game-screen--crafted .game-actions .button{width:auto;min-width:128px;min-height:34px;padding:5px 16px;font-size:12px;border-radius:11px}.app--table .game-screen--crafted .game-actions .text-button{color:#fff1d1;font-weight:800}.game-screen--crafted .hand-tray:has(.game-actions__main:empty):not(:has(.game-actions__error,.game-actions__pending)){grid-template-columns:120px minmax(0,1fr);grid-template-rows:34px minmax(0,1fr) 4px}@media(max-height:650px)and (orientation:landscape){.app--table .game-screen--crafted{grid-template-rows:28px minmax(0,1fr) 160px}.game-screen--crafted .hand-tray{grid-template-columns:74px minmax(0,1fr);grid-template-rows:22px minmax(0,1fr) 31px;column-gap:5px;padding:4px 10px 6px;border-width:2px;border-radius:14px}.game-screen--crafted .hand-tray:before{top:5px;right:5px;bottom:5px;left:5px;border-radius:9px}.game-screen--crafted .hand-tab,.game-screen--crafted .hand-tab--2{width:30px;height:43px}.game-screen--crafted .hand-tabs{gap:5px}.game-screen--crafted .hand-tray__status{gap:6px}.game-screen--crafted .hand-tray__active,.game-screen--crafted .hand-tray__direction{min-height:18px;padding:2px 7px;gap:4px;font-size:9px}.game-screen--crafted .hand-tray__active i{width:6px;height:6px}.game-screen--crafted .hand-tray__direction b{font-size:15px}.game-screen--crafted .card-ribbon{width:calc(100% - 180px);padding:2px 0}.game-screen--crafted .hand-navigation{right:12px;top:48%}.app--table .game-screen--crafted .game-actions{padding:2px 3px 0}.app--table .game-screen--crafted .game-actions__main{gap:6px}.app--table .game-screen--crafted .game-actions .button{min-width:105px;min-height:26px;padding:3px 8px;font-size:10px}.game-screen--crafted .hand-tray:has(.game-actions__main:empty):not(:has(.game-actions__error,.game-actions__pending)){grid-template-columns:74px minmax(0,1fr);grid-template-rows:22px minmax(0,1fr) 3px}}@media(prefers-reduced-motion:reduce){.game-screen--crafted .my-seat .hand-pile:before,.game-screen--crafted .my-seat .hand-pile__back{transition:none}.game-screen--crafted .is-trump-changing .trump-card__marker{animation:none}.game-screen--crafted .is-trump-changing .trump>strong{animation:none}}.app--table .game-screen--crafted{max-width:1800px}.app--table .game-screen--crafted .table-layout{margin-inline:auto}.app.app--table:has(.duel-live){display:flex;flex-direction:column;height:100dvh;min-height:620px;padding-bottom:12px;overflow:hidden}.app--table:has(.duel-live) .profile-summary{flex:0 0 54px;min-height:54px}.app .duel-live{flex:1 1 auto;min-height:0;max-width:1800px;grid-template-rows:34px 30px minmax(0,1fr) clamp(170px,23dvh,220px);gap:8px}.app .duel-live--no-roulette{grid-template-rows:34px minmax(0,1fr) clamp(170px,23dvh,220px)}.duel-live .duel-live__intro{padding:0 8px}.duel-live .duel-live__intro h1{font-size:18px}.duel-live .duel-live__roulette{width:min(100%,680px);justify-self:center;border-radius:999px;background:#e3eee8;border-color:#c5d9ce}.app .duel-live .duel-live__table{justify-self:center;align-self:center;height:100%;width:auto;max-height:100%;max-width:100%;aspect-ratio:1672 / 941;overflow:visible}.duel-live .duel-live__stack-base{display:none}.duel-live .duel-live__opponent:before,.duel-live .duel-live__me:before{left:8.7%;top:-13%;width:31.5%;background-color:transparent;box-shadow:0 3px 6px #0a2b3d59}.duel-live .duel-live__opponent:after,.duel-live .duel-live__me:after{left:38%;bottom:-3%}.duel-live .duel-live__opponent>span:not(.duel-live__stack-base),.duel-live .duel-live__me>span:not(.duel-live__stack-base){max-width:125%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(9px,.9vw,13px);line-height:1}.duel-live .duel-live__opponent small,.duel-live .duel-live__me small{display:none}.duel-live .duel-live__pile{padding:0;overflow:visible;border:0;box-shadow:none;background:transparent;font-size:0}.duel-live .duel-live__pile--trump{border:2px solid #eee4d0;border-radius:8px;background:#fffaf0;box-shadow:0 3px 6px #0b393766}.duel-live .duel-live__pile--trump strong{display:grid;place-items:center;width:100%;height:100%;color:#303b50;font:700 clamp(26px,3.7vw,61px) Georgia,serif}.duel-live .duel-live__pile--trump.is-red strong{color:#ef506b}.duel-live .duel-live__pile--discard img{display:block;width:100%;height:100%;object-fit:contain;transform:rotate(90deg);filter:drop-shadow(0 3px 2px #1b364b5e)}.duel-live .duel-live__pile--discard strong{position:absolute;right:-7px;bottom:-7px;display:grid;place-items:center;min-width:27px;height:27px;padding:0 5px;border:2px solid #eaf1ef;border-radius:100px;background:#af5e5d;color:#fff;font:800 13px Manrope,sans-serif;box-shadow:0 2px 4px #102d3d75}.duel-live .duel-live__hand{width:min(100%,1180px);justify-self:center;min-width:0;min-height:0;border:4px solid #eed8a4;border-radius:24px;background:radial-gradient(circle at 32% 5%,#3c6e5d,#16463e 78%);box-shadow:inset 0 0 0 5px #125f52,0 6px #173e47,0 14px 26px #133c4847;color:#fff9e8;grid-template-columns:minmax(0,1fr) 180px;grid-template-rows:minmax(0,1fr);padding:10px 16px}.duel-live .duel-live__hand .card-ribbon{grid-column:1;grid-row:1;width:100%;height:100%;min-height:0;overflow-x:auto;overflow-y:hidden;padding:12px 6px;align-items:center;justify-content:safe center;scrollbar-color:#e6c783 #1d584d}.duel-live .duel-live__hand .playing-card--own{--card-width: clamp(64px, 6.2vw, 98px)}.app .duel-live .duel-live__actions{grid-column:2;grid-row:1;border-left:1px solid #e1e9c65c;padding:8px 0 8px 14px;margin:0}.duel-live .duel-live__actions .button{min-height:40px;border-radius:11px;font-size:12px}.duel-live .duel-roulette-card small{bottom:-4px;border-radius:8px;background:#f8dc97;color:#514046;box-shadow:0 2px #cda867}@media(max-height:650px)and (orientation:landscape){.app.app--table:has(.duel-live){min-height:0;padding-bottom:6px}.app--table:has(.duel-live) .profile-summary{flex-basis:30px;min-height:30px}.app .duel-live{grid-template-rows:25px 23px minmax(0,1fr) 130px;gap:4px}.app .duel-live--no-roulette{grid-template-rows:25px minmax(0,1fr) 130px}.duel-live .duel-live__intro h1{font-size:12px}.duel-live .duel-live__hand{width:100%;border-width:2px;border-radius:14px;padding:4px 8px;grid-template-columns:minmax(0,1fr) 120px}.duel-live .duel-live__hand .card-ribbon{padding:3px 4px}.duel-live .duel-live__hand .playing-card--own{--card-width: clamp(38px, 5.5vw, 66px)}.app .duel-live .duel-live__actions{padding:2px 0 2px 7px}.duel-live .duel-live__actions .button{min-height:29px;font-size:9px}.duel-live .duel-live__pile--trump strong{font-size:clamp(17px,2vw,28px)}.duel-live .duel-live__pile--discard strong{min-width:18px;height:18px;font-size:9px;right:-3px;bottom:-3px}}.app.app--table{background:radial-gradient(ellipse at 50% 35%,#fffcf755,transparent 75%),#f8f2e9}.app--table .profile-summary{color:#596272;font-family:Times New Roman,Times,serif}.app--table .profile-summary>strong{color:#192b43;font-family:inherit;font-size:17px}.app--table .profile-summary>.text-button{color:#a7383b;font-size:16px}.game-brand{align-items:center;color:#192b43;display:flex;flex-shrink:0;font-family:Times New Roman,Times,serif;font-size:24px;font-weight:700;gap:16px;letter-spacing:.18em;text-transform:uppercase}.game-brand>span{color:#b83e41;font-size:38px;font-weight:400;letter-spacing:0;line-height:1}.game-header__rule{background:#b83e41;flex:1;height:1px;margin-inline:15px}.app--table .practice-header>div>span{color:#606572}.app--table .practice-header :is(a,button){color:#355c86;font-family:inherit}.game-screen--crafted .game-meta{background:#fffaf3d9;border:1px solid #e4d9cc;border-radius:15px;box-shadow:0 3px 8px #50361f10;color:#192b43;font-family:Times New Roman,Times,serif;font-weight:400;padding-inline:14px}.game-meta__identity{align-items:center;display:flex;flex-shrink:0;gap:20px;font-size:16px;white-space:nowrap}.game-meta__room{background:#efe4d7;border-radius:20px;padding:4px 12px}.game-meta__room strong{font-weight:700}.game-meta__format{color:#27364a}.game-meta__ornament{align-items:center;display:flex;flex:1;gap:18px;min-width:30px}.game-meta__ornament>i{background:#b83e41;flex:1;height:1px}.game-meta__ornament>span{font-size:26px;line-height:1;white-space:nowrap;word-spacing:7px}.game-meta__ornament b{color:#b83e41;font-weight:400}.game-screen--crafted .game-meta__turn{color:#192b43;font-size:17px;min-width:0;white-space:nowrap}.game-screen--crafted .is-your-turn .game-meta__turn strong{color:#285982}.app--table .game-screen--crafted .table-tools{gap:14px}.app--table .game-screen--crafted .table-tools .text-button{align-items:center;color:#26394e;display:inline-flex;font-family:inherit;font-size:15px;gap:7px}.app--table .game-screen--crafted .table-tools .game-actions__leave{color:#9c353b}.app--table .game-screen--crafted .table-tools .text-button:hover:enabled{color:#b83e41;text-decoration:underline;text-underline-offset:4px}.app--table .game-screen--crafted .game-actions .button{box-shadow:inset 0 1px #ffffff35,0 2px #092d3040;font-family:Times New Roman,Times,serif;font-size:16px;font-weight:700}.app--table .game-screen--crafted .game-actions .button--primary{background:linear-gradient(110deg,#b73d40,#bf4a45);border-color:#d06a60;color:#fff9ef}.app--table .game-screen--crafted .game-actions .button--primary:hover:enabled{background:#a73137;box-shadow:inset 0 1px #ffffff35,0 2px #092d3040;transform:none}.app--table .game-screen--crafted .game-actions .button--primary:active:enabled{background:#942b31;box-shadow:inset 0 2px 4px #192b4340;transform:none}.app--table .game-screen--crafted .game-actions .button--quiet{background:#faf2e6;border-color:#d4c7b6;color:#24374c}.app--table .game-screen--crafted .game-actions .button--quiet:hover:enabled{background:#eee1cf;border-color:#c0ae96}.app--table .game-screen--crafted .game-actions .button.is-active{background:#426d98;border-color:#96b4d0;color:#fffaf1}.app--table .game-screen--crafted .game-actions .button:disabled{background:#d7d0c5;border-color:#bdb7ad;box-shadow:none;color:#54575c}.app--table .game-screen--crafted .game-actions .text-button{font-family:Times New Roman,Times,serif;font-size:16px}.table-help{background:#fff9f0;border:1px solid #ded1c1;border-radius:20px;color:#192b43;font-family:Times New Roman,Times,serif}.table-help h2{font-size:27px}.table-help dt{color:#192b43;font-size:19px}.table-help dd{color:#535d6b;font-size:17px;line-height:1.5}.table-help .text-button{color:#9c353b;font-size:18px}.app--table .profile-summary :is(a,button):focus-visible,.game-meta button:focus-visible,.game-actions button:focus-visible,.table-help button:focus-visible{outline:3px solid #7facd6;outline-offset:3px}@media(max-width:1100px){.game-meta__identity{font-size:14px;gap:10px}.game-meta__ornament{gap:8px}.game-meta__ornament>span{font-size:23px;word-spacing:4px}.game-screen--crafted .game-meta__turn{font-size:16px}.app--table .game-screen--crafted .table-tools .text-button{font-size:13px;gap:5px}.game-meta__room{padding-inline:8px}}@media(max-width:900px){.game-meta__ornament{display:none}.game-meta__identity{flex:1}.game-meta__room+.game-meta__format{display:none}.game-header__rule{margin-inline:4px}.game-brand{font-size:20px;gap:10px}}@media(max-height:650px)and (orientation:landscape){.game-brand{font-size:17px;gap:8px}.game-brand>span{font-size:26px}.app--table .profile-summary>strong,.app--table .profile-summary>.text-button{font-size:12px}.game-screen--crafted .game-meta{border-radius:10px;padding-inline:9px}.game-meta__identity{font-size:12px}.game-meta__room{padding-block:2px}.game-screen--crafted .game-meta__turn{font-size:13px}.app--table .game-screen--crafted .table-tools{gap:10px}.app--table .game-screen--crafted .table-tools .text-button{font-size:11px}.table-tools svg{height:17px;width:17px}.app--table .game-screen--crafted .game-actions .button,.app--table .game-screen--crafted .game-actions .text-button{font-size:12px}}@media(max-width:700px)and (orientation:portrait){.app--table .profile-summary .game-brand{font-size:18px}}@media(prefers-reduced-motion:reduce){.game-meta button,.game-actions button{transition:none}}.game-screen--crafted .table-layout:has(.table-artwork){background-image:none}.table-artwork{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.table-artwork>svg{display:block;width:100%;height:100%;overflow:visible}.table-layout--duel [data-table-seat]:not([data-table-seat=top],[data-table-seat=bottom]),.table-layout--duel [data-table-alcove],.table-layout--duel [data-table-controls]{opacity:0}.table-layout--duel [data-table-seat=top],.table-layout--duel [data-table-seat=bottom]{translate:82px 0}.table-layout--duel [data-table-seat=top]>use:last-child,.table-layout--duel [data-table-seat=bottom]>use:last-child{opacity:0}.game-screen--duel .table-layout--duel :is(.opponent,.my-seat){width:9.713%;left:50%}.game-screen--duel .table-layout--duel :is(.opponent__hands,.my-seat__counts){grid-template-columns:1fr}.game-screen--duel .table-layout--duel .opponent__label{max-width:260%}.game-screen--duel .table-layout--duel .my-seat__label{max-width:360%;top:auto;bottom:calc(100% + 5px)}.duel-trump,.duel-discard{position:absolute;top:50%;transform:translate(-50%,-50%);width:9.713%;aspect-ratio:176 / 240;padding:0;border:0;background:none;box-shadow:none;color:#fff0d3;text-align:center}.duel-trump{left:11%}.duel-discard{left:89%}.duel-trump>span,.duel-discard>span{position:absolute;bottom:calc(100% + 7px);left:50%;transform:translate(-50%);font:500 clamp(9px,.85vw,12px)/1.2 system-ui,sans-serif;color:#f3e6ce}.duel-trump>img,.duel-discard>img{display:block;width:100%;height:100%;object-fit:contain}.duel-trump>.duel-trump__suit{position:absolute;left:50%;top:50%;width:64%;height:auto;transform:translate(-50%,-50%)}.duel-trump>strong{position:absolute;top:calc(100% + 5px);left:50%;transform:translate(-50%);font:600 clamp(10px,1vw,14px)/1.2 system-ui,sans-serif;text-transform:capitalize}.duel-discard>strong{position:absolute;right:-4%;bottom:-3%;display:grid;place-items:center;width:clamp(22px,2.5vw,34px);height:clamp(22px,2.5vw,34px);border:2px solid #d7e6ef;border-radius:50%;background:#303a50;color:#fff;font:700 clamp(11px,1.2vw,17px)/1 system-ui,sans-serif;font-variant-numeric:tabular-nums}.duel-departure{position:fixed;z-index:40;pointer-events:none}@keyframes duel-trump-reveal{0%{opacity:.4;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@media(max-height:650px)and (orientation:landscape){.duel-trump>span,.duel-discard>span{bottom:calc(100% + 3px);font-size:8px}.duel-trump>strong{top:calc(100% + 2px);font-size:9px}.duel-discard>strong{width:18px;height:18px;font-size:9px;border-width:1.5px}}@media(prefers-reduced-motion:reduce){.duel-trump>img{animation:none}}.wide-tray__trump{display:inline-block;padding:3px 10px;border:1px solid #ddc8a8;border-radius:99px;background:#fff1dc;color:#192b43;font-weight:400}.player-notices{position:absolute;bottom:calc(100% + 35px);left:50%;transform:translate(-50%);display:flex;align-items:center;gap:5px;width:max-content;z-index:8;pointer-events:none}.player-notice,.player-countdown{background:#fff5e5;color:#23384c;border:1px solid #c6b596;border-radius:9px;padding:5px 10px;font:700 14px/1.1 Georgia,serif;box-shadow:0 3px 9px #102b3733;white-space:nowrap}.player-notice--taking{background:#b84143;border-color:#e7b3a5;color:#fff8ec}.player-countdown{background:#ffdda4;color:#513d27;font-variant-numeric:tabular-nums}.game-screen--crafted .my-seat .player-notices,.game-screen--crafted .opponent--bottom-left .player-notices,.game-screen--crafted .opponent--bottom-right .player-notices{bottom:calc(100% + 8px)}.table-phase{position:absolute;left:50%;bottom:calc(100% + 7px);transform:translate(-50%);font:14px Georgia,serif;color:#fff5e2;white-space:nowrap}.table-phase--taking{color:#ffe0ad;font-weight:700}@media(max-height:650px)and (orientation:landscape){.player-notices{bottom:calc(100% + 21px);gap:3px}.player-notice,.player-countdown{font-size:10px;border-radius:6px;padding:3px 5px}.table-phase{font-size:10px;bottom:calc(100% + 2px)}}.game-screen--duel .opponent--duel-bottom{top:83.1031%}.app--table .game-screen--crafted.game-screen--duel-observer{grid-template-rows:38px minmax(0,1fr) 100px}.duel-observer{align-self:center;justify-self:center;display:grid;gap:8px;max-width:90%;padding:12px;color:#192b43;font:18px Georgia,serif;text-align:center}.duel-observer>strong{font-size:23px}@media(max-height:650px)and (orientation:landscape){.app--table .game-screen--crafted.game-screen--duel-observer{grid-template-rows:28px minmax(0,1fr) 66px}.duel-observer{font-size:12px;gap:5px;padding:6px}.duel-observer>strong{font-size:16px}}.app.app--table{--game-ink: #203249;--game-muted: #756d65;--game-paper: #f7f2e9;background:radial-gradient(ellipse at 50% 42%,#fffaf4 0,#f4eee4 90%);padding-bottom:16px}.app--table .profile-summary{flex-basis:64px;max-width:1440px;gap:20px;border-bottom:1px solid #dcd1c2;color:var(--game-ink)}.game-brand{gap:10px;text-transform:none}.game-brand .game-brand__mark{width:33px;height:38px;color:#b74243;flex:0 0 auto}.game-brand>.game-brand__name{display:grid;gap:2px;color:var(--game-ink);font-size:12px;line-height:1;letter-spacing:0}.game-brand__name>span{font:600 10px/1.2 system-ui,sans-serif;letter-spacing:.18em;text-transform:uppercase}.game-brand__name>strong{font:700 24px/1 Georgia,serif!important;letter-spacing:.12em;text-transform:uppercase}.app--table .practice-header{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.practice-identity{display:grid;gap:3px;min-width:0}.app--table .practice-identity>strong{font:600 13px/1.25 system-ui,sans-serif}.app--table .practice-identity>span{color:var(--game-muted);font:11px/1.25 system-ui,sans-serif}.practice-nav{display:flex;align-items:center;gap:6px}.app--table .practice-nav :is(a,button){display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:8px 10px;border:1px solid transparent;border-radius:9px;background:transparent;color:#4d5b68;font:500 12px/1.2 system-ui,sans-serif;text-decoration:none;white-space:nowrap;cursor:pointer}.app--table .practice-nav :is(a,button):hover{background:#fffaf2;border-color:#d9cebf;color:#1c354a}.app--table .practice-nav .practice-nav__leave{color:#a24743}.game-header__rule{background:#dcd1c2;margin-inline:16px}.app--table .game-screen--crafted{max-width:1440px;grid-template-rows:46px minmax(0,1fr) 264px;gap:12px}.app--table .game-screen--crafted .game-meta{background:none;border:0;border-radius:0;box-shadow:none;padding:2px 6px;gap:16px}.game-meta__identity{flex:1;font:12px/1.3 system-ui,sans-serif;gap:14px}.game-meta__format{color:#71695f}.game-meta__room{background:#fff9ef;border:1px solid #e2d6c5;border-radius:7px;padding:5px 9px;font-size:11px}.game-meta__room strong{color:var(--game-ink);letter-spacing:.04em}.game-meta__ornament{display:none}.app--table .game-screen--crafted .game-meta__turn{display:inline-flex;align-items:center;min-height:30px;padding:5px 11px;border:1px solid #e4d7c5;border-radius:7px;background:#fff8eb;font:600 13px/1.2 system-ui,sans-serif;color:#4e5b68}.app--table .game-screen--crafted .is-your-turn .game-meta__turn{border-color:#bfd0d9;background:#e7eef1}.app--table .game-screen--crafted .is-your-turn .game-meta__turn strong{color:#2e526c}.app--table .game-screen--crafted .table-tools{gap:4px}.app--table .game-screen--crafted .table-tools .text-button{min-height:36px;padding:7px 9px;font:500 12px/1.2 system-ui,sans-serif;border-radius:7px}.app--table .game-screen--crafted .table-tools .text-button:hover{background:#fff9ef;text-decoration:none}.game-screen--crafted .table-layout{filter:drop-shadow(0 12px 12px #253c4a26)}.game-screen--crafted .opponent__label,.game-screen--crafted .my-seat__label{font-family:system-ui,sans-serif;border-radius:9px;background:#1b3c43ee;box-shadow:0 2px 5px #12343d44}.game-screen--crafted .seat-role--attacker :is(.opponent__label,.my-seat__label){background:#283f4a;border-color:#d58b72}.player-notice,.player-countdown{font-family:system-ui,sans-serif;font-size:12px;border-radius:7px;padding:5px 8px;font-weight:600;box-shadow:0 2px 5px #20333c22}.table-phase{font:500 11px/1.3 system-ui,sans-serif;letter-spacing:.025em}.app.app--table .game-screen.game-screen--crafted .hand-tray.wide-tray{width:min(100%,var(--tray-width, 688px));justify-self:center;grid-template-rows:44px minmax(0,1fr) 52px;padding:10px;border:1px solid #536778;border-top-color:#8997a1;border-radius:18px;background:linear-gradient(155deg,#263d50,#192e40 80%);box-shadow:inset 0 0 0 1px #ffffff0c,0 9px 20px #26384b20}.wide-tray__top{gap:14px}.wide-deck-tabs{gap:8px}.wide-deck-tab{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:6px 11px;border:1px solid #536a7c;border-radius:10px;background:#ffffff04;color:#dde3e7;font:600 14px/1.2 system-ui,sans-serif;box-shadow:none;text-align:left}.wide-deck-tab>svg{color:#91b9dc;flex:0 0 auto}.wide-deck-tab--1>svg{color:#e39b99}.wide-deck-tab__copy{display:grid;gap:2px}.wide-deck-tab__copy>small{font:500 10px/1.2 system-ui,sans-serif;color:#aebdc6}.wide-deck-tab__count{display:grid;place-items:center;min-width:28px;height:28px;padding-inline:5px;margin-left:5px;border-radius:7px;background:#ffffff0d;color:#f6eee0;font:700 14px/1 system-ui,sans-serif;font-variant-numeric:tabular-nums}.wide-deck-tab[aria-pressed=true]{background:#fbf3e5;border-color:#f6e9d4;color:#21394d;box-shadow:0 2px 5px #0a1c2b33}.wide-deck-tab[aria-pressed=true]>svg{color:#416a8a}.wide-deck-tab--1[aria-pressed=true]>svg{color:#b85353}.wide-deck-tab[aria-pressed=true] .wide-deck-tab__copy>small{color:#657784}.wide-deck-tab[aria-pressed=true] .wide-deck-tab__count{background:#3c6283;color:#fff9ef}.wide-deck-tab--1[aria-pressed=true] .wide-deck-tab__count{background:#a94f50}.wide-deck-tab:hover{border-color:#c1cbd1;background:#ffffff12}.wide-deck-tab[aria-pressed=true]:hover{background:#fff8ec}.wide-tray__deck-status{display:flex;align-items:center;gap:10px;color:#bdc8d0;font:11px/1.3 system-ui,sans-serif}.wide-tray__deck-status>.wide-tray__inactive{color:#c9ced0;font:inherit;max-width:115px;margin:0;white-space:normal}.wide-tray__deck-status>.wide-tray__direction{display:inline-flex;align-items:center;color:#c7b998;margin:0}.wide-tray__trump{font:12px/1.3 Georgia,serif;padding:4px 9px}.app.app--table .game-screen.game-screen--crafted .wide-tray .card-ribbon{width:calc(100% - 76px);padding:18px 4px 4px}.wide-scroll{width:30px;height:40px;border-radius:9px;background:#ffffff0a;border-color:#60788b;color:#f5ebd9}.wide-scroll:hover{background:#ffffff1c;color:#fff7ea}.wide-scroll--previous{left:3px}.wide-scroll--next{right:3px}.app.app--table .game-screen.game-screen--crafted .wide-tray .wide-action-bar{column-gap:16px;padding:0 4px}.wide-action-bar__status{display:inline-flex;align-items:center;gap:8px;font:500 15px/1.2 system-ui,sans-serif;color:#d4dce1;max-width:190px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wide-action-bar__status:before{content:"";width:6px;height:6px;flex:0 0 auto;background:#8095a3;border-radius:50%}.wide-tray--your-turn .wide-action-bar__status{color:#fff3da}.wide-tray--your-turn .wide-action-bar__status:before{background:#efc990}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button{font:600 16px/1.2 system-ui,sans-serif;padding:9px 20px;min-height:48px;border-radius:10px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .text-button{font:500 14px/1.2 system-ui,sans-serif;min-height:44px}.app--table:has(.wide-tray)~.dev-menu{top:auto;right:8px;left:auto;bottom:8px}.app--table:has(.wide-tray)~.dev-menu summary{min-height:32px;padding:5px 7px;gap:4px;font-size:10px;color:#6c6b66;border-color:#d2c7b8;background:#fbf6ed;box-shadow:none}.app--table:has(.wide-tray)~.dev-menu summary svg{width:14px;height:14px}.app--table:has(.wide-tray)~.dev-menu nav{top:auto;right:0;left:auto;bottom:calc(100% + 8px);max-height:min(420px,70dvh)}@media(max-width:1100px){.practice-identity__note{display:none}.app--table .profile-summary{gap:14px}.practice-nav{gap:2px}.app--table .practice-nav :is(a,button){padding-inline:7px;font-size:11px}}@media(max-width:760px){.app--table .profile-summary{gap:10px;flex-basis:58px}.game-brand .game-brand__mark{width:28px;height:34px}.game-brand__name>span{font-size:9px}.game-brand__name>strong{font-size:20px!important}.app--table .practice-identity>strong{font-size:12px}.app--table .practice-identity>span{font-size:10px}.app--table .practice-nav :is(a,button){padding-inline:5px;font-size:10px;gap:4px}.app--table .game-screen--crafted .game-meta{gap:7px;padding-inline:0}.game-meta__identity{font-size:11px}.app--table .game-screen--crafted .table-tools .text-button{padding-inline:5px;font-size:11px}.app--table .game-screen--crafted .game-meta__turn{font-size:12px;padding-inline:8px}}@media(max-height:650px)and (orientation:landscape){.app.app--table{padding-bottom:8px}.app--table .profile-summary{flex-basis:36px}.game-brand{gap:7px}.game-brand .game-brand__mark{width:24px;height:27px}.game-brand__name>span{font-size:8px}.game-brand__name>strong{font-size:16px!important}.app--table .practice-identity>span{display:none}.app--table .game-screen--crafted{grid-template-rows:32px minmax(0,1fr) 164px;gap:5px}.app.app--table .game-screen.game-screen--crafted .hand-tray.wide-tray{grid-template-columns:146px minmax(0,1fr);grid-template-rows:minmax(0,1fr) 44px;padding:5px;column-gap:10px;border-radius:13px}.wide-tray__top{grid-column:1;grid-row:1;flex-direction:column;gap:5px;justify-content:center;align-items:stretch}.wide-deck-tabs{flex-direction:column;gap:5px;align-items:stretch}.wide-deck-tab{min-height:36px;padding:4px 8px;gap:7px;border-radius:7px;font-size:12px}.wide-deck-tab>svg{width:19px;height:19px}.wide-deck-tab__copy{flex:1;gap:0}.wide-deck-tab__copy>small{font-size:9px}.wide-deck-tab__count{min-width:24px;height:24px;font-size:12px;margin-left:0;border-radius:5px}.wide-tray__deck-status{justify-content:center;gap:6px;font-size:9px}.wide-tray__deck-status>.wide-tray__inactive{max-width:none}.wide-tray__direction svg{height:15px;width:15px}.wide-tray__trump{font-size:10px;padding:2px 6px}.wide-tray__cards{grid-column:2;grid-row:1}.app.app--table .game-screen.game-screen--crafted .wide-tray .card-ribbon{width:calc(100% - 64px);padding:11px 2px 0}.app.app--table .game-screen.game-screen--crafted .wide-tray .wide-action-bar{grid-column:1 / -1;grid-row:2;column-gap:12px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .button{min-height:44px;min-width:90px;font-size:14px;padding:6px 13px}.app.app--table .game-screen.game-screen--crafted .wide-tray .game-actions .text-button{font-size:13px}.wide-action-bar__status{font-size:12px;max-width:145px}.wide-scroll{width:28px;height:36px}.player-notice,.player-countdown{font-size:10px;padding:3px 5px}.table-phase{font-size:9px}}.dev-launcher{background:#f8f2e9;color:#192b43;font-family:Times New Roman,Times,serif;min-height:100dvh;padding:40px clamp(24px,5vw,84px) 70px}.dev-launcher>header{align-items:center;border-bottom:1px solid #b83e41;display:flex;gap:24px;margin:auto;max-width:1400px;padding-bottom:24px}.dev-launcher>header>span{color:#b83e41;font-size:70px}.dev-launcher header p{font-size:18px;letter-spacing:.12em;margin:0 0 8px}.dev-launcher h1{font-size:46px;margin:0}.dev-launcher header a{color:#355d88;font-size:21px;margin-left:auto}.dev-launcher__intro{color:#596271;font-size:20px;line-height:1.5;margin:28px auto;max-width:1400px}.dev-launcher>main{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));margin:auto;max-width:1400px}.dev-launcher main a{background:#fffaf5;border:1px solid #e0d5c8;border-radius:18px;box-shadow:0 5px 18px #573c240c;color:inherit;padding:24px;position:relative;text-decoration:none}.dev-launcher main a:hover{border-color:#b83e41}.dev-launcher h2{font-size:26px;margin:0 0 10px;padding-right:24px}.dev-launcher main p{color:#596271;font-size:18px;line-height:1.4;margin:0}.dev-launcher main span{color:#b83e41;font-size:25px;position:absolute;right:20px;top:20px}.dev-menu{bottom:10px;color:#192b43;font:14px/1.3 system-ui,sans-serif;left:10px;position:fixed;z-index:90}.dev-menu summary{align-items:center;background:#fff8ec;border:1px solid #b8a99a;border-radius:10px;box-shadow:0 3px 12px #192b4320;cursor:pointer;display:flex;font-size:12px;font-weight:700;gap:6px;list-style:none;min-height:36px;padding:7px 10px}.dev-menu summary::-webkit-details-marker{display:none}.dev-menu nav{background:#fffaf3;border:1px solid #d8cabb;border-radius:16px;bottom:calc(100% + 10px);box-shadow:0 8px 30px #192b4333;display:grid;gap:3px;left:0;max-height:calc(100dvh - 72px);overflow:auto;padding:16px;position:absolute;width:min(310px,calc(100vw - 28px))}.dev-menu nav a{align-items:center;border-radius:7px;color:#26394e;display:flex;gap:8px;min-height:36px;padding:6px 10px;text-decoration:none}.dev-menu nav a:hover{background:#efe4d7}.dev-menu nav p{color:#6d5b4c;font-size:12px;margin:5px 10px 9px}.dev-menu .dev-menu__back{color:#a33338;font-weight:600}.dev-menu :is(summary,a):focus-visible,.dev-launcher a:focus-visible{outline:3px solid #46698e;outline-offset:3px}@media(max-width:600px){.dev-launcher>header{flex-wrap:wrap;gap:16px}.dev-launcher header a{margin-left:0}.dev-launcher h1{font-size:36px}}.practice-result{color:#596271;font:18px Times New Roman,serif;margin:0 auto 30px;text-align:center}.practice-result button{background:#426c99;border:1px solid #355c86;border-radius:12px;color:#fff9ef;font:inherit;min-height:44px;padding:10px 24px}.app--result{color:#303b51;background:radial-gradient(circle at 50% -15%,#fff9eb 0,#e6efeb 72%)}.app--result .app-header{border-color:#c8d8d4;color:#3b4a5a}.app--result .brand{color:#3c4058}.app--result .brand__mark{background:#ff9a79;color:#fffaf0;box-shadow:0 4px #d8796a}.app--result .app-header__state{color:#617779}.result-screen--game{display:grid;grid-template-columns:minmax(300px,.82fr) minmax(420px,1.18fr);align-items:center;gap:clamp(24px,4vw,68px);width:min(100%,1180px);max-width:1180px;min-height:calc(100dvh - 90px);margin:0 auto;padding:24px 20px 42px}.result-screen--game .result-hero{position:relative;padding:clamp(28px,3.5vw,48px);border:3px solid #e4d9ce;border-radius:30px;background:radial-gradient(circle at 15% 2%,#fffdf7,#fff5e8 72%);box-shadow:0 9px #ccd8d8,0 22px 34px #31566623}.result-screen--game .result-hero:before{content:"♠";position:absolute;right:27px;top:15px;color:#e2edf0;font:700 clamp(80px,9vw,140px) Georgia,serif;line-height:1;pointer-events:none}.result-screen--game .eyebrow{position:relative;color:#8c76a1;font-size:12px;letter-spacing:.1em}.result-screen--game .result-hero h1{position:relative;margin:18px 0 21px;color:#3c4058;font-family:Unbounded,sans-serif;font-size:clamp(36px,4vw,58px);letter-spacing:-.065em;line-height:1.12}.result-screen--game .result-hero__loser{position:relative;max-width:none;margin:0 0 30px;color:#697184;font-size:clamp(17px,1.5vw,22px);line-height:1.35}.result-screen--game .result-hero__loser strong{color:#bf6270}.result-screen--game .result-hero__note{color:#9d5860;font-size:12px;font-weight:800;margin:-16px 0 22px}.result-screen--game .result-hero .button{min-width:170px;background:#bdb3e9;border-color:#a99bd9;color:#343651;box-shadow:0 5px #9e8fce}.result-screen--game .result-hero .button:hover{background:#cec5f0;transform:translateY(-2px);box-shadow:0 7px #9e8fce}.result-screen--game .result-hero .button:active{transform:translateY(3px);box-shadow:0 2px #9e8fce}.result-screen--game .result-list{min-width:0;padding:20px;border:3px solid #d4e5db;border-radius:28px;background:#fdfbf5;box-shadow:0 9px #bfd5d0,0 22px 34px #31566623}.result-screen--game .result-list .section-heading{align-items:baseline;border-color:#d8dfdf;margin:0 0 9px;padding:3px 5px 15px}.result-screen--game .result-list h2{color:#3c4058;font-size:20px}.result-screen--game .result-list .section-heading span{color:#788395;font-size:11px;font-weight:800}.result-screen--game .result-player{position:relative;display:grid;grid-template-columns:42px minmax(0,1fr) 50px auto;gap:12px;align-items:center;min-height:79px;padding:9px 8px;border-color:#dfe5e3;border-radius:12px}.result-screen--game .result-player:last-child{border-bottom:0}.result-screen--game .result-player--loser{background:#fff0ec;border-color:#f0d5cd}.result-screen--game .result-player .avatar{width:38px;height:38px;color:#303b51}.result-screen--game .result-player__identity{position:relative;min-width:0;padding-top:11px}.result-screen--game .result-player__identity h3{overflow:hidden;color:#374157;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.result-screen--game .result-player__identity h3 small{background:#dcebe6;color:#4e716c}.result-screen--game .result-player__identity p{margin:3px 0 0;color:#7a8990;font-size:10px;font-weight:800}.result-screen--game .result-player--loser .result-player__identity p{color:#b96b70}.result-screen--game .result-player__honor{position:absolute;z-index:2;left:0;top:-24px;width:42px;height:42px;opacity:0;transform:translateY(-16px) scale(.65);transform-origin:center bottom;transition:opacity .2s ease,transform .45s cubic-bezier(.2,1.6,.35,1)}.result-screen--game .result-player__honor img{width:100%;height:100%;display:block;filter:drop-shadow(0 3px 2px #354b5650)}.result-screen--winners .result-player--winner .result-player__honor,.result-screen--medals .result-player--winner .result-player__honor,.result-screen--complete .result-player__honor{opacity:1;transform:translateY(0) scale(1)}.result-screen--game .result-player__medal{grid-column:3;display:grid;place-items:center;opacity:0;transform:translateY(18px) scale(.6);transition:opacity .25s ease,transform .55s cubic-bezier(.2,1.6,.35,1)}.result-screen--game .result-player__medal img{width:33px;height:43px;filter:drop-shadow(0 3px 3px #9a6e353c)}.result-screen--medals .result-player__medal,.result-screen--complete .result-player__medal{opacity:1;transform:translateY(0) scale(1)}.result-screen--game .result-player:nth-of-type(2) .result-player__medal{transition-delay:90ms}.result-screen--game .result-player:nth-of-type(3) .result-player__medal{transition-delay:.18s}.result-screen--game .result-player:nth-of-type(4) .result-player__medal{transition-delay:.27s}.result-screen--game .result-player:nth-of-type(5) .result-player__medal{transition-delay:.36s}.result-screen--game .result-player:nth-of-type(6) .result-player__medal{transition-delay:.45s}.result-screen--game .result-player dl{grid-column:4;gap:13px}.result-screen--game .result-player dt{color:#8b98a1}.result-screen--game .result-player dd{color:#3d4960}.result-screen--game .result-player__new-triple{position:absolute;right:9px;bottom:1px;color:#b46670;font-size:9px;font-weight:800}.result-flight{position:fixed;z-index:100;width:96px;height:96px;pointer-events:none;filter:drop-shadow(0 10px 8px #223c5270)}@media(max-width:850px){.result-screen--game{grid-template-columns:1fr;gap:24px;padding-top:24px}}@media(max-height:650px)and (orientation:landscape){.result-screen--game{grid-template-columns:minmax(260px,.78fr) minmax(400px,1.22fr);min-height:0;padding:12px 8px 24px;gap:18px;align-items:start}.result-screen--game .result-hero{padding:22px;border-radius:18px}.result-screen--game .result-hero h1{font-size:30px;margin:12px 0}.result-screen--game .result-hero__loser{font-size:15px;margin-bottom:18px}.result-screen--game .result-list{padding:12px;border-radius:18px}.result-screen--game .result-list .section-heading{padding-bottom:8px}.result-screen--game .result-list h2{font-size:15px}.result-screen--game .result-player{min-height:55px;padding:4px;gap:8px;grid-template-columns:31px minmax(0,1fr) 35px auto}.result-screen--game .result-player .avatar{width:29px;height:29px;font-size:9px}.result-screen--game .result-player__identity h3{font-size:12px}.result-screen--game .result-player__identity p{font-size:8px}.result-screen--game .result-player__honor{width:30px;height:30px;top:-17px}.result-screen--game .result-player__medal img{width:25px;height:34px}.result-screen--game .result-player dl{gap:8px}.result-screen--game .result-player dd{font-size:12px}}@media(prefers-reduced-motion:reduce){.result-screen--game .result-player__honor,.result-screen--game .result-player__medal{transition:none}}.replay-overlay.app.app--table{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;overflow:auto;display:flex;flex-direction:column;padding:10px clamp(12px,2vw,26px) 16px;color:#203249}.replay-header,.replay-controls,.replay-caption{width:min(1440px,100%);margin-inline:auto}.replay-header{display:flex;justify-content:space-between;align-items:center;gap:20px;min-height:54px;border-bottom:1px solid #dcd1c2}.replay-header>strong{font:600 14px/1.2 system-ui,sans-serif;white-space:nowrap}.replay-header .game-header__rule{flex:1}.replay-header button.text-button{border:0;background:none;color:#a7383b;white-space:nowrap}.replay-header button,.replay-controls button{border:1px solid #c9bca9;border-radius:8px;background:#fff9ef;color:#253e56;font:500 12px/1.2 system-ui,sans-serif;padding:7px 10px;cursor:pointer}.replay-controls button:disabled{opacity:.45;cursor:default}.replay-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:6px 0}.replay-controls input{flex:1;min-width:110px;accent-color:#b83e41}.replay-controls span{min-width:56px;text-align:right;font-size:12px}.replay-caption{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font:12px/1.3 system-ui,sans-serif;padding:5px 9px;background:#f3e9dc;border:1px solid #e4d9cc;border-radius:7px}.replay-caption em{color:#934436;font-style:normal}.replay-overlay .replay-game-screen{flex:1;min-height:630px;width:100%;margin:0 auto}.replay-overlay .replay-game-screen .replay-tray .wide-tray__top{justify-content:space-between}.replay-overlay .replay-game-screen .replay-tray .wide-deck-tab{cursor:default}.replay-overlay .replay-game-screen .replay-tray .game-actions__main{color:#d4dce1;font-size:13px}.replay-overlay .deck-stack[role=button],.replay-overlay .discard[role=button],.replay-overlay .duel-discard{cursor:pointer}.replay-overlay :is(.deck-stack,.discard,.hand-pile):focus-visible{outline:3px solid #fff7d0;outline-offset:2px}.replay-overlay .deck-stack[role=button]:hover,.replay-overlay .discard[role=button]:hover{box-shadow:0 0 0 2px #fff7d0}.replay-overlay .duel-discard{font:inherit}.replay-overlay .game-screen--crafted .playing-card--own:hover{transform:none}.replay-error{padding:18px;background:#ffe3da;color:#822a25;border-radius:8px}@media(max-width:700px){.replay-overlay .replay-game-screen{min-width:670px}.replay-overlay{overflow:auto}.replay-controls{position:sticky;left:0;z-index:3;background:#f8f2e9}.replay-caption{position:sticky;left:0;z-index:3}}.replay-moderation{display:flex;align-items:center;gap:8px;flex-wrap:wrap;width:min(1440px,100%);margin:0 auto 5px;padding:5px 9px;border:1px solid #e2d4c3;border-radius:8px;background:#fff9ef;font:12px/1.2 system-ui,sans-serif}.replay-moderation>strong{color:#884640;margin-right:6px}.replay-moderation label{display:inline-flex;align-items:center;gap:6px;margin-left:auto}.replay-moderation select{max-width:190px;padding:5px 8px;border:1px solid #c9bca9;border-radius:6px;background:#fff;color:#203249;font:inherit}.replay-moderation button{padding:6px 10px;border:1px solid #c9bca9;border-radius:6px;background:#fff;color:#203249;font:inherit;cursor:pointer}.replay-moderation button:disabled{opacity:.5;cursor:default}.replay-moderation .replay-moderation__void{border-color:#bd7066;color:#9d3634}.replay-moderation button:not(:disabled):hover{background:#f2e9dd}@media(max-width:700px){.replay-moderation label{margin-left:0}}.replay-report{display:flex;align-items:center;gap:7px;flex-wrap:wrap;width:min(1440px,100%);margin:0 auto 5px;padding:8px 11px;border:1px solid #a7c3c1;border-radius:8px;background:#e6f1ed;color:#203249;font:13px/1.3 system-ui,sans-serif}.replay-report em{color:#855047;font-style:normal}.admin{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;overflow:auto;background:#f4f2ec;color:#1d2930;padding:clamp(18px,3vw,48px);font:15px/1.5 system-ui,sans-serif}.admin *{box-sizing:border-box}.admin__header,.admin__detail>header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.admin__header{border-bottom:1px solid #c9cec9;padding-bottom:28px}.admin__eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;color:#a54a37;margin:0 0 8px}.admin h1{font:600 clamp(36px,5vw,70px)/1.05 Georgia,serif;letter-spacing:-.04em;margin:0}.admin h2{font:600 24px/1.2 Georgia,serif;overflow-wrap:anywhere}.admin h3{font-size:17px;margin:24px 0 10px}.admin__header p:last-child{color:#5b6669}.admin button{border:1px solid #b9c4c3;border-radius:7px;background:#fff;color:#203038;padding:8px 13px;cursor:pointer;font:inherit}.admin button:hover{background:#edf1ed}.admin button:disabled{opacity:.5;cursor:wait}.admin__close{white-space:nowrap}.admin__error{background:#ffe5dd;color:#8d291d;border:1px solid #de9385;padding:12px;border-radius:7px}.admin__metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:26px 0}.admin__metrics>div{background:#203038;color:#fff;padding:20px;border-radius:9px}.admin__metrics span{display:block;color:#bbc9c9;font-size:13px}.admin__metrics strong{font:600 36px/1.2 Georgia,serif}.admin__toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px}.admin__toolbar nav{display:flex;gap:4px;margin-right:auto}.admin__toolbar nav .is-active{background:#203038;color:#fff}.admin input{min-width:min(100%,280px);padding:9px 12px;border:1px solid #b9c4c3;border-radius:7px;background:#fff;font:inherit}.admin__table-wrap{overflow:auto;background:#fff;border:1px solid #d4d9d3;border-radius:9px}.admin table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}.admin th{font-size:11px;letter-spacing:.08em;text-transform:uppercase;background:#e9eee9;color:#4c6064;padding:14px}.admin td{padding:13px 14px;border-top:1px solid #e5eae6;vertical-align:middle}.admin td small{display:block;color:#677579}.admin code{font-size:12px;white-space:normal;overflow-wrap:anywhere}.admin__badge{background:#e5f3e8;color:#256243;border-radius:99px;padding:4px 9px;font-size:12px}.admin__badge--danger{background:#ffe7df;color:#a13b28}.admin__detail{position:fixed;top:4vh;right:3vw;bottom:4vh;left:3vw;overflow:auto;padding:clamp(18px,3vw,36px);background:#fff;border:1px solid #cad2cc;border-radius:14px;box-shadow:0 20px 90px #10211b77}.admin__detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.admin__detail-grid>section{padding:20px;background:#f4f6f3;border-radius:9px}.admin__detail-grid p{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap;border-bottom:1px solid #dce2dc;padding-bottom:7px}.admin__detail-grid span,.admin__detail-grid em{color:#697775;font-size:12px}.admin__detail .admin__danger{background:#ab3d2d;color:#fff;border-color:#ab3d2d}.admin__log{max-height:300px;overflow:auto;border:1px solid #dbe1dc;border-radius:7px}.admin__log details,.admin__states details{border-bottom:1px solid #dbe1dc;padding:9px 13px}.admin__log summary,.admin__states summary{cursor:pointer}.admin pre{white-space:pre-wrap;overflow-wrap:anywhere;background:#203038;color:#dceee7;border-radius:6px;padding:15px;font-size:12px;max-height:480px;overflow:auto}.admin__states{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:22px}.home-nav__admin{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:8px}@media(max-width:750px){.admin__metrics{grid-template-columns:repeat(2,1fr)}.admin__detail-grid,.admin__states{grid-template-columns:1fr}.admin__header,.admin__detail>header{flex-direction:column}.admin__detail{top:1vh;right:1vw;bottom:1vh;left:1vw}}.admin__state{background:#f4f6f3;border:1px solid #dce2dc;border-radius:9px;padding:14px;margin-top:20px}.admin__state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}.admin__state-grid>div{background:#fff;border:1px solid #dce2dc;border-radius:6px;padding:12px;min-width:0}.admin__state-grid p{overflow-wrap:anywhere;font-size:13px}.admin__state-grid small{display:block;color:#65706c}@media(max-width:750px){.admin__state-grid{grid-template-columns:1fr}}.admin__detail-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.admin__download{display:inline-block;border:1px solid #203038;border-radius:7px;background:#203038;color:#fff;padding:8px 13px;text-decoration:none}.admin__download:hover{background:#344c53;color:#fff}.admin__alert-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#fff0d8;border:1px solid #d3a75f;border-radius:8px;color:#654116}.admin__alerts{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.admin__alerts article{background:#fff;border:1px solid #d7dcd6;border-left:5px solid #ba6746;border-radius:8px;padding:17px}.admin__alerts article>div:first-child{display:flex;gap:12px;align-items:center}.admin__alerts small{color:#697775}.admin__alerts h3{margin:12px 0 4px}.admin__alerts ul{padding-left:20px;margin:8px 0}.admin__alerts li{margin:4px 0}.admin__alerts p{color:#63716b;font-size:13px}.admin__report-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#e4f0eb;border:1px solid #7ba99a;border-radius:8px;color:#28554b}.admin__reports{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px}.admin__reports article{background:#fff;border:1px solid #d7dcd6;border-left:5px solid #4d8a79;border-radius:8px;padding:17px}.admin__reports article>div:first-child{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.admin__reports small,.admin__reports span{color:#63716b;font-size:12px}.admin__reports article>p{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0}.admin__reports article>div:last-child{display:flex;gap:8px;margin-top:14px}
