/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-leading:initial}}}@layer theme{:root,:host{--font-sans:Inter, Avenir, "Helvetica Neue", Helvetica, Arial, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--container-5xl:64rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--radius-2xl:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-white:#fff;--color-black:#000;--color-page:#242424;--color-ink:#ffffffde;--color-ink-muted:#888;--color-surface:#1a1a1a;--color-surface-raised:#2c2c2d;--color-edge:#3a3a3a;--color-link:#646cff;--color-link-hover:#535bf2;--color-seat-primary:darkgreen;--color-seat-secondary:darkblue;--color-seat-flipped:purple;--color-suit-none:#606060;--color-suit-clubs:green;--color-suit-diamonds:goldenrod;--color-suit-hearts:red;--color-suit-spades:blue;--color-suit-nt:#fad605;--color-suit-ink:#fff;--radius-control:8px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}body{background-color:var(--color-page);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6);color:var(--color-ink);-webkit-user-select:none;user-select:none;min-width:240px;min-height:100dvh;margin:0}a{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--color-link);text-decoration-line:none}a:hover{color:var(--color-link-hover)}:focus-visible{outline:4px auto -webkit-focus-ring-color}}@layer components{.button{cursor:pointer;border-radius:var(--radius-control);border-style:var(--tw-border-style);background-color:var(--color-surface);height:fit-content;padding-inline:calc(var(--spacing) * 5);padding-block:calc(var(--spacing) * 2.5);--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium);color:var(--color-ink);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-width:1px;border-color:#0000;display:inline-block}.button:hover{border-color:var(--color-link)}.button-primary{background-color:var(--color-seat-primary)}.button-flip{background-color:var(--color-seat-flipped)}.text-input{border-radius:var(--radius-control);border-style:var(--tw-border-style);background-color:var(--color-surface);padding-inline:calc(var(--spacing) * 2.5);padding-block:calc(var(--spacing) * 2.5);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--color-ink);border-width:0}.playing-card{max-width:7.6vw;font:inherit;background:var(--color-suit-none);color:var(--color-suit-ink);border:1px solid var(--color-surface-raised);border-radius:6%;flex-direction:column;justify-content:space-around;align-items:center;padding:.2rem;display:inline-flex}.playing-card:disabled{opacity:1}.playing-card--table{width:1.5rem;height:3.5rem;font-size:larger;transition:transform .7s}.playing-card--large{width:100%;height:100%}.playing-card--suit-clubs{background:var(--color-suit-clubs)}.playing-card--suit-diamonds{background:var(--color-suit-diamonds)}.playing-card--suit-hearts{background:var(--color-suit-hearts)}.playing-card--suit-spades{background:var(--color-suit-spades)}.playing-card--back{background:repeating-linear-gradient(45deg, var(--color-surface) 0 4px, var(--color-surface-raised) 4px 8px);border-color:var(--color-edge)}.playing-card--playable{cursor:pointer}.playing-card--playable:hover{border-color:var(--color-suit-nt);transform:translateY(-.4rem)}.playing-card--dim{opacity:.45}.suit-glyph{background:var(--color-suit-ink);width:1em;height:1em;display:inline-block;position:relative;top:.15rem;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.suit-glyph--clubs{-webkit-mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs);mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs)}.suit-glyph--diamonds{-webkit-mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds);mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds)}.suit-glyph--hearts{-webkit-mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts);mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts)}.suit-glyph--spades{-webkit-mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades);mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades)}.suit-glyph--nt{-webkit-mask-image:var(--suit-svg-nt);-webkit-mask-image:var(--suit-svg-nt);-webkit-mask-image:var(--suit-svg-nt);mask-image:var(--suit-svg-nt);-webkit-mask-image:var(--suit-svg-nt)}.card-table{place-items:center;width:100%;height:100%;min-height:0;display:grid;position:relative}.card-table__ring{aspect-ratio:1;background:var(--color-surface);border:1px solid var(--color-edge);border-radius:50%;width:min(40rem,72vmin);position:relative}.card-table__ring--flipped{background:var(--color-seat-flipped)}.card-table__seat{transform:translate(-50%, -50%) rotate(var(--seat-angle)) translateY(calc(-1 * var(--seat-radius))) rotate(calc(-1 * var(--seat-angle)));flex-direction:column;align-items:center;gap:.25rem;display:flex;position:absolute;top:50%;left:50%}.card-table__avatar{width:2rem;height:2rem;color:var(--color-black);background:#f8d591de;border-radius:50%;place-items:center;font-weight:900;display:grid}.card-table__name{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:8rem;font-weight:700;overflow:hidden}.card-table__name--active{color:var(--color-black);background-color:var(--color-suit-diamonds);border-radius:7px;padding:.1rem .5rem;animation:1.2s linear infinite alternate faeko-pulse;box-shadow:2px 2px 4px #ed2929}.card-table__hand{gap:.1rem;display:flex}.card-table__hand--backs .playing-card+.playing-card{margin-left:-.55rem}.bid-confirm{background:linear-gradient(90deg,#1c6120,#79dc1d,#1c6120) 0 0/200% 100%}.card-table__center{flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute}.card-table__trick{gap:.25rem;display:flex}.card-table__status{z-index:50;background:#000000bf;border-radius:1rem;flex-direction:column;align-items:center;gap:.75rem;padding:1rem 1.5rem;animation:.25s ease-in-out forwards faeko-pop-up;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.card-table__badge{background:var(--color-seat-secondary);border-radius:.75rem;padding:.35rem .9rem}@keyframes faeko-pop-up{0%{opacity:.5;transform:translate(-50%,-50%)scale(.5)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes faeko-pulse{0%{opacity:.6}to{opacity:1}}.branding__logo{filter:drop-shadow(0 0 2em #646cffaa);height:15vmax}.branding__letter{transition:transform .5s ease-in;display:inline-block}.branding:hover .branding__letter--flip{transform:rotate(180deg)}.branding:hover .branding__logo{transform:rotate(45deg)}.branding__logo--spin{animation:3s ease-out infinite faeko-brand-spin}@keyframes faeko-brand-spin{0%{transform:rotate(0)}10%{transform:rotate(45deg)}25%{transform:rotate(0)}50%{transform:rotate(-45deg)}75%{transform:rotate(0)}to{transform:rotate(0)}}.game-layout{background:var(--color-black);grid-template-columns:minmax(12rem,20vw) 1fr minmax(12rem,20vw);gap:1px;width:100vw;height:100dvh;display:grid;overflow:hidden}@media (width<=900px){.game-layout{grid-template-rows:auto 1fr;grid-template-columns:1fr}}.game-panel{background:var(--color-page);flex-direction:column;min-height:0;display:flex;overflow:auto}.game-panel__header{border-bottom:1px solid var(--color-edge);padding:.5rem .75rem;font-weight:700}.orientation-warning{display:none}@media (orientation:portrait) and (width<=720px){.orientation-warning{z-index:1000;text-align:center;background:#000000d9;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}}}@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.mx-auto{margin-inline:auto}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.table{display:table}.table\!{display:table!important}.h-full{height:100%}.min-h-dvh{min-height:100dvh}.w-full{width:100%}.max-w-5xl{max-width:var(--container-5xl)}.flex-1{flex:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.flex-col{flex-direction:column}.justify-between{justify-content:space-between}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-10{gap:calc(var(--spacing) * 10)}.rounded-2xl{border-radius:var(--radius-2xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-edge{border-color:var(--color-edge)}.bg-page{background-color:var(--color-page)}.bg-surface{background-color:var(--color-surface)}.p-6{padding:calc(var(--spacing) * 6)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-16{padding-block:calc(var(--spacing) * 16)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.text-ink-muted{color:var(--color-ink-muted)}.text-white{color:var(--color-white)}.no-underline{text-decoration-line:none}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}@media (hover:hover){.group-hover\:text-link:is(:where(.group):hover *){color:var(--color-link)}.hover\:border-link:hover{border-color:var(--color-link)}}@media (width>=40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}:root{--default-bg:#242424;--default-fg:#ffffffde;--link-color:#646cff;--link-color-hover:#535bf2;--button-bg:#1a1a1a;--bid-bg:#2c2c2d;--button-bg-border:#646cff;--bg-primary:darkgreen;--bg-secondary:darkblue;--bg-flipped:purple;--fg-primary:palegreen;--fg-secondary:lightblue;--fg-flipped:purple;--input-bg:var(--button-bg);--input-bg-border:var(--button-bg-border);--suit-none:#606060;--suit-clubs:green;--suit-diamonds:goldenrod;--suit-hearts:red;--suit-spades:blue;--suit-nt:#fad605;--suit-fg:#fff;--default-gap:.4em;--default-bidding-bg:#323131;--card-height:3.5rem;--card-width:1.5rem;--suit-svg-spades:url(../../../assets/suits/spade.svg);--suit-svg-hearts:url(../../../assets/suits/heart.svg);--suit-svg-diamonds:url(../../../assets/suits/diamond.svg);--suit-svg-clubs:url(../../../assets/suits/club.svg);--suit-svg-nt:url(../../../assets/suits/nt.svg)}a{color:var(--link-color);-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit;font-weight:500}a:hover{color:var(--link-color-hover)}.button{background-color:var(--button-bg);cursor:pointer;height:fit-content;color:var(--default-fg);border:1px solid #0000;border-radius:8px;padding:.6em 1.2em;font-family:inherit;font-size:1em;font-weight:500;transition:border-color .25s}.button:hover{border-color:var(--button-bg-border)}.button:focus,.button:focus-visible{outline:4px auto -webkit-focus-ring-color}.button-primary{background-color:var(--bg-primary)}.button-flip{background-color:var(--bg-flipped)}input[type=text]{background-color:var(--input-bg);color:var(--default-fg);border:0;border-radius:8px;padding:.6em;font-size:1em}.font-size-sm{font-size:x-small}.flex-center{align-items:center;display:flex}.points{position:absolute;left:50%;transform:translate(-50%,50%)}.card{background:var(--suit-none);max-width:7.6vw;color:var(--suit-fg);border:1px solid var(--bid-bg);border-radius:6%;flex-direction:column;justify-content:space-around;align-items:center;padding:.2rem;transition:transform .7s;display:inline-flex}.cards-horizontal .card{flex-direction:column}.cards-large .card{width:100%;height:100%}.card .suit{background-color:#fff;background:var(--suit-fg);width:1em;height:1em;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat}.card .highlight{border:3px dotted #fff}.card .disable{opacity:0}.card.clubs{background:var(--suit-clubs)}.card.clubs .suit{background:var(--suit-fg);-webkit-mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs);mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs)}.card.diamonds{background:var(--suit-diamonds)}.card.diamonds .suit{-webkit-mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds);mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds)}.card.hearts{background:var(--suit-hearts)}.card.hearts .suit{-webkit-mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts);mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts)}.card.spades{background:var(--suit-spades)}.card.spades .suit{-webkit-mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades);mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades)}.suit{width:1em;height:1em;display:inline-block;position:relative;top:.15rem;-webkit-mask-size:1em;mask-size:1em}.suit.clubs{background:var(--suit-color,var(--suit-clubs));background:var(--suit-fg);-webkit-mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs);mask-image:var(--suit-svg-clubs);-webkit-mask-image:var(--suit-svg-clubs)}.suit.diamonds{background:var(--suit-color,var(--suit-diamonds));background:var(--suit-fg);-webkit-mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds);mask-image:var(--suit-svg-diamonds);-webkit-mask-image:var(--suit-svg-diamonds)}.suit.hearts{background:var(--suit-color,var(--suit-hearts));background:var(--suit-fg);-webkit-mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts);mask-image:var(--suit-svg-hearts);-webkit-mask-image:var(--suit-svg-hearts)}.suit.spades{background:var(--suit-color,var(--suit-spades));background:var(--suit-fg);-webkit-mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades);mask-image:var(--suit-svg-spades);-webkit-mask-image:var(--suit-svg-spades)}.suit.nt{background:var(--suit-color,var(--suit-nt));-webkit-mask-image:var(--suit-svg-nt);-webkit-mask-image:var(--suit-svg-nt);-webkit-mask-image:var(--suit-svg-nt);mask-image:var(--suit-svg-nt);-webkit-mask-image:var(--suit-svg-nt)}.bidding-grid{background-color:#766c6c;border:2px solid #515050;border-radius:2px;gap:2px;display:grid}.bidding-grid button{cursor:pointer;width:2.2rem;height:2.2rem;font-weight:900;font-size:inherit;border-width:thin;padding:0;transition:border-color .25s}.bidding-grid .bid-box{text-align:center;color:#fff;background-color:#86878a;border:1px solid #959191;padding:5px}.bidding-grid .bid-box.selected{color:#000;background-color:#fff}@keyframes bid-blink{0%{background-color:#ff0}50%{background-color:#af761a}to{background-color:#ff0}}.bidding-grid .ok{color:#fff;background:linear-gradient(90deg,#1c6120,#79dc1d,#1c6120) 0 0/200% 100%;animation:3s linear infinite bid-blink}.bidding-grid .ok:disabled{opacity:1}.score-board table{border-collapse:collapse;width:10rem}.score-board th,.score-board td{text-align:center;color:#fff;border:1px solid #ddd;width:33%;padding:8px;font-size:medium;font-weight:600}.score-board th{color:#fff;background-color:#242424}.score-board tr:nth-child(odd),.score-board tr:nth-child(2n){background-color:#1f1d1d}.chat-frame{width:var(--chat-width);background:var(--default-bg);grid-area:1/3/3;grid-template-rows:min-content min-content min-content auto min-content;grid-template-columns:auto;height:100vh;display:grid}.chat-frame .header{background:var(--button-bg);padding:1rem}.chat-frame .chatbox{background:var(--button-bg);gap:.5rem;padding:1rem;display:flex}.chat-frame .chatbox input{border:2px solid #636361;border-radius:.5rem;width:100%}.chat-frame .messages{text-align:left;padding:1rem;list-style-type:none;overflow:scroll}.chat-frame .message{grid-template-columns:auto auto;gap:.5rem;margin-top:.5rem;display:grid}.chat-frame .message.mine{text-align:right;grid-template-columns:auto min-content;justify-content:end}.chat-frame .message .content{background-color:var(--button-bg);word-wrap:anywhere;border-radius:1rem;width:fit-content;padding:1rem}.chat-frame .message .sender{margin:0;font-weight:700}.chat-frame .message .text{color:#fff;margin:0}.chat-frame .send{cursor:pointer;background:0 0;border:none;margin-left:auto}.chat-frame .form-cls{flex:content;justify-content:space-between;display:flex}.chat-frame .btn-container{grid-gap:1rem;grid-template-columns:repeat(2,1fr);justify-content:center;display:grid}.chat-frame .disabled{opacity:.4;cursor:auto}.chat-frame .trump-rank-container{width:var(--chat-width);border:1px solid #858282;border-radius:2%;grid-template-columns:repeat(2,1fr);height:10vh;display:grid}.chat-frame .rank-value,.chat-frame .trump-value{font-size:1.3rem}.chat-frame .trump,.chat-frame .rank-container{border:1px solid #5a5a5a;justify-content:center;align-items:center;gap:1rem;display:flex}.chat-frame .rank{font-weight:800}.chat-frame .default{opacity:.2}.chat-frame .flip-bg{background-color:var(--bg-flipped)}.game-container{--history-width:100vw;--chat-width:100vw;--game-height:100vh;--game-width:100vw;grid-template-rows:auto;grid-template-columns:var(--history-width) var(--game-width) var(--chat-width);background:#000;gap:1px;width:100vw;height:100vh;display:grid}@media (width>=600px){.game-container{--history-width:calc((100vw - 2px) / 2);--chat-width:calc((100vw - 2px) / 2);--game-width:calc((100vw - 2px) / 2)}}@media (width>=900px){.game-container{--history-width:min(70rem, max(15rem, 25vw));--chat-width:min(70rem, max(15rem, 25vw));--game-width:calc(100vw - var(--chat-width) - var(--history-width) - 2px)}}.orientation-message{display:none}@media screen and (orientation:portrait){.game-container{display:none}.orientation-message{color:#fff;z-index:1000;text-align:center;box-sizing:border-box;background-color:#000c;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:20px;display:flex;position:fixed;top:0;left:0}}.game-frame{--game-min:min(var(--game-height), var(--game-width));--players-height:var(--game-height);--players-width:var(--game-width);--players-min:min(var(--players-height), var(--players-width));--players-max:max(var(--players-height), var(--players-width));--initial-rotation:180deg;--rotation-extra-turns:0;--rotation-increment:0deg;--rotation-count:0;--hand-height:4rem;--player-height:var(--players-max);--player-width:auto;--player-gap:calc(var(--players-min) * .2);--nickname-height:1rem;--avatar-size:calc(var(--players-min) * .38);background:var(--default-bg);grid-column:2;grid-template-rows:min-content auto min-content;grid-template-columns:auto;align-content:center;justify-items:center;width:100%;height:100vh;display:grid}.gameover{background-color:var(--bg-secondary);z-index:9999;border-radius:.5rem;width:fit-content;margin:auto;padding:.6rem;position:absolute;top:62%;left:0;right:0}.ready,.hand{max-width:var(--game-width);height:var(--hand-height);z-index:99999;justify-content:center;gap:.1rem;display:flex}.ready{position:absolute;bottom:-1rem}.hand .card{cursor:not-allowed}.hand.active .card{cursor:pointer}.rotate{rotate:180deg}.animate{color:var(--bg-primary);animation:.6s linear infinite alternate movingBar}@keyframes movingBar{0%{opacity:.5;background-color:#daa520;transform:translate(.6rem)}to{opacity:1;background-color:#daa520}}.bid,.trump{height:var(--hand-height);width:var(--hand-height);text-align:center;background:var(--bid-bg);border:none;border-radius:1em}.bid .label,.trump .label{color:#fff;margin:0;padding:0;font-size:.8rem}.bid .value,.trump .value{color:#fff;margin:0;padding:0;font-size:1.2rem}.takeOrFlip{z-index:99999;justify-content:center;align-items:center;gap:2rem;font-size:1em;animation:.25s ease-in-out forwards pop-up;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.takeOrFlip a:hover{cursor:pointer}@keyframes pop-up{0%{opacity:.5;transform:translate(-50%,-50%)scale(.5)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.table{height:var(--players-height);margin:auto;display:flex}.players{max-width:100vw;height:var(--players-height);width:var(--game-width);flex-direction:row;justify-content:space-around;margin:auto;display:flex}.players.flipped{background-color:var(--bg-flipped)}@media (height>=420px){.players{flex-direction:column}.players .player{flex-direction:row;justify-content:space-around;align-items:center;display:flex}}@media (height>=420px) and (width>=420px){.players{--circular-players-size:calc(var(--players-min) - (var(--hand-height) + var(--avatar-size)) * 1.75);height:var(--circular-players-size);width:var(--circular-players-size);border-radius:calc(var(--circular-players-size) / 2);background:var(--button-bg);--player-height:calc(var(--players-min) / 2);--player-width:var(--players-min);margin:auto;display:block}.players .player{height:calc(var(--player-height) * 2);left:calc(var(--history-width) + var(--players-width) / 2 - var(--player-width) / 2);top:calc(calc(var(--game-height) - var(--players-min)) / 2);transform:rotate(calc(var(--rotation-increment) * (var(--rotation-count) - var(--rotation-extra-turns) - 1) * 1deg + var(--initial-rotation)));display:block;position:absolute}}@media (width>=900px) and (height>=600px){.players{--avatar-size:calc(var(--players-min) * .08)}}.players.count-1{--rotation-increment:360}.players.count-1>:first-of-type{--rotation-count:1}.players.count-2{--rotation-increment:180}.players.count-2>:first-of-type{--rotation-count:1}.players.count-2>:nth-of-type(2){--rotation-count:2}.players.count-3{--rotation-increment:120}.players.count-3>:first-of-type{--rotation-count:1}.players.count-3>:nth-of-type(2){--rotation-count:2}.players.count-3>:nth-of-type(3){--rotation-count:3}.players.count-4{--rotation-increment:90}.players.count-4>:first-of-type{--rotation-count:1}.players.count-4>:nth-of-type(2){--rotation-count:2}.players.count-4>:nth-of-type(3){--rotation-count:3}.players.count-4>:nth-of-type(4){--rotation-count:4}.players.count-5{--rotation-increment:72}.players.count-5>:first-of-type{--rotation-count:1}.players.count-5>:nth-of-type(2){--rotation-count:2}.players.count-5>:nth-of-type(3){--rotation-count:3}.players.count-5>:nth-of-type(4){--rotation-count:4}.players.count-5>:nth-of-type(5){--rotation-count:5}.players.count-6{--rotation-increment:60}.players.count-6>:first-of-type{--rotation-count:1}.players.count-6>:nth-of-type(2){--rotation-count:2}.players.count-6>:nth-of-type(3){--rotation-count:3}.players.count-6>:nth-of-type(4){--rotation-count:4}.players.count-6>:nth-of-type(5){--rotation-count:5}.players.count-6>:nth-of-type(6){--rotation-count:6}.player{height:var(--player-height);width:var(--player-width)}.player .avatar{width:var(--avatar-size);height:var(--avatar-size);border-radius:calc(var(--avatar-size) / 2);background:#f8d591de;justify-content:center;align-items:center;margin:auto auto .4rem;display:flex}.player .name{justify-content:center;margin:0;padding:0;font-weight:bolder;display:flex}.player .discard{justify-content:center;align-items:center;margin:auto;padding:.4rem 0 0;display:flex}.player .discard .bid-card{background-color:var(--bg-secondary);border-radius:1rem;padding:1rem}.myTurn{color:#000;background-color:#daa520;border-radius:7px;width:fit-content;padding:.15rem .5rem;box-shadow:2px 2px 4.5px #ed2929}.bidding-box{flex-direction:column;justify-content:center;align-items:center;gap:.6rem;display:flex;top:50%}.avatar-container{width:var(--avatar-size);height:var(--avatar-size);border-radius:calc(var(--avatar-size) / 2);background:#f8d591de;justify-content:center;align-items:center;margin:auto auto .4rem;display:flex}.copy-btn{color:#fff;cursor:pointer;background-color:#007bff;border:none;border-radius:7px;padding:8px 16px}.link{border:1px solid #ddd;border-radius:8px;justify-content:center;align-items:center;width:15rem;max-width:13rem;height:4rem;margin:0 auto;padding:14px;font-size:.9rem;display:flex;overflow:auto}.link-container{flex-direction:column;justify-content:center;align-items:center;gap:1rem;display:flex;top:50%}.player-hand-container{padding-bottom:1rem}.avatar-name{color:#000;font-weight:900}.setPlayer-zIndex{z-index:9999}.floating{flex-direction:column;justify-content:center;align-items:center;display:flex}.trump-size{font-size:1.3rem}.link-like{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.history-frame{width:var(--history-width);background:var(--default-bg);grid-area:1/1/3;grid-template-rows:min-content min-content auto min-content;grid-template-columns:auto;max-height:100vh;display:grid;position:relative}.history-frame .grid-tabs{grid-template-columns:repeat(2,1fr);gap:3px;display:grid}.history-frame .tab{cursor:pointer;text-align:center;background-color:#006400;border:1px solid #ccc;justify-content:center;align-items:center;width:100%;height:100%;padding:5px 10px;display:flex}.history-frame .tab:hover{background-color:#198519}.history-frame .tab.active{color:#000;background-color:#9c9c9c;font-weight:700}.history-frame .deck{flex-direction:row;justify-content:space-around;height:100%;display:flex;overflow:auto}.history-frame .suit-column{flex-direction:column-reverse;justify-content:space-around;gap:5px;height:fit-content;display:flex}.history-frame .title{grid-template-columns:repeat(4,1fr);display:grid}.history-frame p{margin:2px 0}.history-frame .trick-scroll{height:100%;overflow:auto}.history-frame .trick-row{grid-template-columns:repeat(6,1fr);display:grid}.history-frame .trick-card{flex-direction:column;justify-content:center;align-items:center;display:flex}.history-frame .winner-mark{color:#0ff;visibility:hidden}.history-frame .winner-mark.visible{visibility:visible}.history-frame .font-bold{font-weight:900}.hand .rank{height:var(--hand-height);width:var(--hand-height);text-align:center;background:var(--bid-bg);border:none;border-radius:1em}.hand .rank .label{color:#fff;margin:0;padding:0;font-size:.8rem}.hand .rank .value{color:#fff;margin:0;padding:0;font-size:1.2rem}.flip-trump-container{flex-direction:column;align-items:center;gap:.5rem;display:flex}.changeTrump{gap:.3rem;display:flex}.trumpButton{cursor:pointer;border:1px solid #666;border-radius:.5rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;display:flex}.finalise{cursor:pointer;color:#fff;background:#666;border:none;border-radius:.5rem;padding:.4rem 1.2rem}.finalise.ok{background:linear-gradient(90deg,#1c6120,#79dc1d,#1c6120)}.finalise:disabled{opacity:.5}.Intro{font-size:1.1rem}.winnerChoice ul{padding:0;list-style:none}.contract-badge{background:var(--bg-secondary);z-index:9999;border-radius:.5rem;align-items:center;gap:.3rem;padding:.3rem .8rem;display:flex;position:absolute;top:.5rem;left:50%;transform:translate(-50%)}.bidding-board{text-align:center;background-color:#766c6c;border:2px solid #000;border-radius:2px;grid-template-rows:auto auto;grid-template-columns:repeat(8,2.7rem);gap:1px;display:grid}.bidding-board button{cursor:pointer;width:2.7rem;height:2.7rem;font-weight:900;font-size:inherit;background-color:var(--default-bidding-bg);color:#fff;border-width:thin;padding:0;transition:border-color .25s}.bidding-board .level{font-size:inherit;background-color:#86878a}.bidding-board .type{background:#a84a4a}.bidding-board .pass,.bidding-board .button-fold{background-color:#18941e;font-size:.7rem}.bidding-board .dull{opacity:.5;cursor:auto;background-color:#3f3f3f}.bidding-board .ok{color:var(--default-bg);background-color:#666}.bidding-board .ok.ready{background-color:#ff0;animation:.7s linear infinite bid-blink}@media (width>=744px) and (height>=400px) and (width<=1368px) and (height<=1024px) and (orientation:landscape){.bidding-board{grid-template-columns:repeat(8,1.8rem)}.bidding-board button{width:1.8rem;height:1.8rem;font-size:smaller}.bidding-board .pass{font-size:.45rem}}.history-frame .grid-tabs.three{grid-template-columns:repeat(3,1fr)}.bid-grid{grid-template-columns:repeat(var(--player-count), 1fr);margin-top:3rem;display:grid}.bid-grid>div{text-align:center;border:1px solid #ddd;padding:8px}.bid-grid .name{background-color:#6a6a6a}.bid-grid .bid-value{justify-content:center;align-items:center;display:flex}.bid-grid .bid-value-chips-container{justify-content:center;align-items:center;gap:9px;display:flex}.bid-grid .font-size{font-size:medium}.logo{filter:drop-shadow(0 0 2em #646cffaa);height:15vmax;padding:.5em}.login-row{grid-gap:var(--default-gap);grid-template-rows:auto;grid-template-columns:repeat(2,auto);display:grid}.error-logo{filter:drop-shadow(0 0 2em #646cffaa);height:10em;padding:.5em}.error-logo:hover{animation:.5s slightRotate}@keyframes slightRotate{0%{transform:rotate(0)}20%{transform:rotate(18deg)}80%{transform:rotate(-18deg)}to{transform:rotate(0)}}.message-dialog{text-align:center;background-color:#0e0c0c;border:1px solid #ccc;border-radius:8px;max-width:100%;margin:0 auto;padding:15px}.message-dialog button{color:#fff;cursor:pointer;background-color:#323335;border:none;border-radius:4px;margin:5px;padding:8px 16px}.message-dialog button:hover{background-color:#414448}.message-dialog .disabled{opacity:.4;pointer-events:none;cursor:auto}.message-dialog .container-swap{grid-gap:.2rem;grid-template-columns:repeat(2,1fr);display:grid}@media (width>=744px) and (height>=400px) and (width<=1368px) and (height<=1024px) and (orientation:landscape){.message-dialog{padding:.3rem;font-size:small}}.undo{z-index:999;align-items:center;display:flex}.undo:hover{background-color:red}.undo button{cursor:pointer;background:0 0;border:none;padding:0}.undo .icon{fill:currentColor;vertical-align:middle}.vuln-container{background-color:var(--default-bg);width:var(--chat-width);border:1px solid #ccc;border-radius:5px;justify-content:space-between;align-items:center;padding:.3rem;display:flex}.vuln-container .vuln-info{font-weight:700}.vuln-container .vulnerability{grid-template-columns:repeat(2,5rem);align-items:center;gap:.3rem;font-size:small;display:grid}.vuln-container .vulnerability div{color:#000;border:1px solid #888;width:100%;height:100%;font-weight:900}.vuln-container .vulnerable{background-color:red}.vuln-container .non-vulnerable{background-color:#f0eeee}.bad-frame{background:var(--default-bg);grid-column:2}.rules-modal{z-index:10000;width:var(--game-width);height:var(--game-height);text-align:left;margin:auto;position:absolute;top:0;left:0;overflow:auto;transform:translate(50%,2%)}.rules-content{background-color:#000;border:1px solid #888;width:80%;margin:auto;padding:20px}.rules-content.modal-for-known-full{height:calc(var(--game-height) - 5em);display:grid}.rules-content .close{color:#aaa;float:right;text-align:end;cursor:pointer;background:0 0;border:none;font-size:28px;font-weight:700}.rules-content .close:hover,.rules-content .close:focus{color:#dc2626;cursor:pointer;text-decoration:none}.rules-content .stick{position:static}.donate-modal{z-index:1;width:100%;height:100%;position:fixed;top:-3.3rem;left:0}.donate-content{background-color:#000;border:1px solid #888;margin:auto;padding:1.5rem}.donate-content .close{color:#aaa;float:right;cursor:pointer;background:0 0;border:none;font-size:28px;font-weight:700}.donate-content .btn-container{flex-direction:column;gap:1.34rem;width:auto;display:flex}.donate-content .close:hover,.donate-content .close:focus{color:red;cursor:pointer;text-decoration:none}.donate-content .button{background-color:#5e5d5d}.claim-popup{z-index:9999;background-color:#0e0c0c;justify-content:center;align-items:center;width:100%;height:20%;display:flex}.claim-content{color:#fff;background-color:#0e0c0c;border:1px solid #ccc;border-radius:8px;flex-direction:column;gap:1rem;padding:1rem 2rem;display:flex;box-shadow:0 2px 4px #0003}.claim-content .button{color:#fff;cursor:pointer;background-color:#424242;border-radius:4px;margin:5px}.contract-box{width:var(--chat-width);grid-template-columns:repeat(2,1fr);height:15dvh;display:grid}.contract-box .contract-container{border:1px solid #ccc;grid-template-columns:repeat(2,1fr);justify-content:space-between;align-items:center;width:auto;margin:auto;display:grid}.contract-box .container-score{justify-content:space-between;align-items:center;width:fit-content;margin:auto;display:flex}.contract-box .nick-name,.contract-box .contract,.contract-box .dblRdbl{text-align:center}.contract-box .contract{border-left:1px solid #ddd}.contract-box .score-board{margin:auto}.contract-box .score-grid{grid-template-rows:auto auto;grid-template-columns:repeat(2,1fr);gap:.8rem 1.3rem;margin:auto;display:grid}.contract-box .score{margin:0;font-size:2rem;font-weight:700}.contract-box .background-div{margin:auto}.contract-box .value{padding:4px;display:inline-flex}.claim-board{background-color:#766c6c;border-radius:2px;flex-wrap:wrap;grid-template-columns:repeat(5,2.2rem);gap:1px;display:grid}.claim-board .cancel{cursor:pointer;background-color:red}.claim-board .claim-level{cursor:pointer;background-color:var(--default-bidding-bg);color:#fff;border:1px solid #ccc;border-radius:5px;padding:10px}.claim-board .claim-level.disabled{opacity:.5;cursor:not-allowed}.claim-board .highlight{color:#000;background-color:#a8a827;font-weight:700}.claim-board .ok{cursor:pointer;background:linear-gradient(90deg,#1c6120,#79dc1d,#1c6120) 0 0/200% 100%;animation:3s linear infinite bid-blink}.claim-board .button-span{grid-column:span 2}.table-toolbar{z-index:9999;align-items:center;gap:.5rem;display:flex;position:absolute;top:.5rem;left:.5rem}.card.selected{outline-offset:-1px;outline:3px solid #daa520}.players .player{pointer-events:none}.players .player .card,.players .player .hand,.players .player button,.players .player a{pointer-events:auto}:root{--suit-svg-clubs:url(../../../assets/suits/club.svg);--suit-svg-diamonds:url(../../../assets/suits/diamond.svg);--suit-svg-hearts:url(../../../assets/suits/heart.svg);--suit-svg-spades:url(../../../assets/suits/spade.svg);--suit-svg-nt:url(../../../assets/suits/nt.svg)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-leading{syntax:"*";inherits:false}
