@font-face{font-family:Italiana;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/italiana-latin-400-normal-CRZrqGQm.woff2) format("woff2"),url(/assets/italiana-latin-400-normal-BzjwlKaI.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-ext-400-normal-BtiwyxMk.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-400-normal-BjWJ59Pq.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-sans-latin-400-normal-CW0RaeGs.woff2) format("woff2"),url(/assets/dm-sans-latin-400-normal-BwCSEQnW.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-ext-500-normal-BJfUCQsA.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-500-normal-DR84L5F-.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-sans-latin-500-normal-B9HHJjqV.woff2) format("woff2"),url(/assets/dm-sans-latin-500-normal-Dr3UlScf.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-ext-700-normal-CJIcxD6K.woff2) format("woff2"),url(/assets/dm-sans-latin-ext-700-normal-BLI3TTWz.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/dm-sans-latin-700-normal-DvUfVpUG.woff2) format("woff2"),url(/assets/dm-sans-latin-700-normal-CUSSCpQX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}[data-lk-theme=default]{color-scheme:dark;--lk-bg: #111;--lk-bg2: rgb(29.75, 29.75, 29.75);--lk-bg3: rgb(42.5, 42.5, 42.5);--lk-bg4: rgb(55.25, 55.25, 55.25);--lk-bg5: #444444;--lk-fg: #fff;--lk-fg2: rgb(244.8, 244.8, 244.8);--lk-fg3: rgb(234.6, 234.6, 234.6);--lk-fg4: rgb(224.4, 224.4, 224.4);--lk-fg5: rgb(214.2, 214.2, 214.2);--lk-border-color: rgba(255, 255, 255, .1);--lk-accent-fg: #fff;--lk-accent-bg: #1f8cf9;--lk-accent2: rgb(50.867826087, 150.2, 249.532173913);--lk-accent3: rgb(70.7356521739, 160.4, 250.0643478261);--lk-accent4: rgb(90.6034782609, 170.6, 250.5965217391);--lk-danger-fg: #fff;--lk-danger: #f91f31;--lk-danger2: rgb(249.532173913, 50.867826087, 67.2713043478);--lk-danger3: rgb(250.0643478261, 70.7356521739, 85.5426086957);--lk-danger4: rgb(250.5965217391, 90.6034782609, 103.8139130435);--lk-success-fg: #fff;--lk-success: #1ff968;--lk-success2: rgb(50.867826087, 249.532173913, 117.3930434783);--lk-success3: rgb(70.7356521739, 250.0643478261, 130.7860869565);--lk-success4: rgb(90.6034782609, 250.5965217391, 144.1791304348);--lk-control-fg: var(--lk-fg);--lk-control-bg: var(--lk-bg2);--lk-control-hover-bg: var(--lk-bg3);--lk-control-active-bg: var(--lk-bg4);--lk-control-active-hover-bg: var(--lk-bg5);--lk-connection-excellent: #06db4d;--lk-connection-good: #f9b11f;--lk-connection-poor: #f91f31;--lk-font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";--lk-font-size: 16px;--lk-line-height: 1.5;--lk-border-radius: .5rem;--lk-box-shadow: 0 .5rem 1.5rem rgba(0, 0, 0, .15);--lk-drop-shadow: rgba(255, 255, 255, .2) 0px 0px 24px;--lk-grid-gap: .5rem;--lk-control-bar-height: 69px;--lk-chat-header-height: 69px}.lk-button,.lk-start-audio-button,.lk-chat-toggle,.lk-disconnect-button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1rem;color:var(--lk-control-fg);background-image:none;background-color:var(--lk-control-bg);border:0;border-radius:var(--lk-border-radius);cursor:pointer;white-space:nowrap;font-size:inherit;line-height:inherit;user-select:none}.lk-button:not(:disabled):hover,.lk-start-audio-button:not(:disabled):hover,.lk-chat-toggle:not(:disabled):hover,.lk-disconnect-button:not(:disabled):hover{background-color:var(--lk-control-hover-bg)}.lk-button>svg,.lk-start-audio-button>svg,.lk-chat-toggle>svg,.lk-disconnect-button>svg{overflow:visible}.lk-button[aria-pressed=true],[aria-pressed=true].lk-start-audio-button,[aria-pressed=true].lk-chat-toggle,[aria-pressed=true].lk-disconnect-button{background-color:var(--lk-control-active-bg)}.lk-button[aria-pressed=true]:hover,[aria-pressed=true].lk-start-audio-button:hover,[aria-pressed=true].lk-chat-toggle:hover,[aria-pressed=true].lk-disconnect-button:hover{background-color:var(--lk-control-active-hover-bg)}.lk-button[data-lk-source=screen_share][data-lk-enabled=true],[data-lk-source=screen_share][data-lk-enabled=true].lk-start-audio-button,[data-lk-source=screen_share][data-lk-enabled=true].lk-chat-toggle,[data-lk-source=screen_share][data-lk-enabled=true].lk-disconnect-button{background-color:var(--lk-accent-bg)}.lk-button[data-lk-source=screen_share][data-lk-enabled=true]:hover,[data-lk-source=screen_share][data-lk-enabled=true].lk-start-audio-button:hover,[data-lk-source=screen_share][data-lk-enabled=true].lk-chat-toggle:hover,[data-lk-source=screen_share][data-lk-enabled=true].lk-disconnect-button:hover{background-color:var(--lk-accent2)}.lk-button:disabled,.lk-start-audio-button:disabled,.lk-chat-toggle:disabled,.lk-disconnect-button:disabled{opacity:.5}.lk-button-group{display:inline-flex;align-items:stretch;height:100%}.lk-button-group>.lk-button:first-child,.lk-button-group>.lk-start-audio-button:first-child,.lk-button-group>.lk-chat-toggle:first-child,.lk-button-group>.lk-disconnect-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.lk-button-group-menu{position:relative;flex-shrink:0}.lk-button-group-menu>.lk-button,.lk-button-group-menu>.lk-start-audio-button,.lk-button-group-menu>.lk-chat-toggle,.lk-button-group-menu>.lk-disconnect-button{height:100%;border-top-left-radius:0;border-bottom-left-radius:0}.lk-button-group-menu>.lk-button:after,.lk-button-group-menu>.lk-start-audio-button:after,.lk-button-group-menu>.lk-chat-toggle:after,.lk-button-group-menu>.lk-disconnect-button:after{margin-left:0}.lk-button-menu:after{display:inline-block;content:"";width:.5em;height:.5em;margin-top:-.25rem;margin-left:.5rem;border-left:.125em solid;border-bottom:.125em solid;transform:rotate(-45deg);transform-origin:center center}.lk-disconnect-button{font-weight:600;color:var(--lk-danger);border:1px solid var(--lk-danger)}.lk-disconnect-button:not(:disabled):hover{--lk-control-hover-bg: var(--lk-danger2);color:var(--lk-danger-fg)}.lk-disconnect-button:not(:disabled):active{--lk-control-hover-bg: var(--lk-danger3);color:var(--lk-danger-fg)}.lk-chat-toggle{position:relative}.lk-chat-toggle[data-lk-unread-msgs]:not([data-lk-unread-msgs="0"]):after{content:attr(data-lk-unread-msgs);position:absolute;top:0;left:0;padding:.25rem;margin-left:.25rem;margin-top:.25rem;border-radius:50%;font-size:.5rem;line-height:.75;background:var(--lk-accent-bg)}.lk-media-device-select:not(:last-child){padding-bottom:.5rem;margin-bottom:.75rem;border-bottom:1px solid var(--lk-border-color)}.lk-media-device-select li:not(:last-child){margin-bottom:.25rem}.lk-media-device-select li>.lk-button{width:100%;justify-content:start;padding-block:.5rem}.lk-media-device-select li:not([data-lk-active=true])>.lk-button:not(:disabled):hover{background-color:var(--lk-bg3)}.lk-media-device-select [data-lk-active=false]>.lk-button:hover{cursor:pointer;background-color:#0000000d}.lk-media-device-select [data-lk-active=true]>.lk-button{color:var(--lk-accent-fg);background-color:var(--lk-accent-bg)}.lk-device-menu{width:max-content;position:absolute;top:0;left:0;z-index:5;min-width:10rem;padding:.5rem;margin-bottom:.25rem;white-space:nowrap;background-color:var(--lk-bg2);border:1px solid var(--lk-border-color);border-radius:.75rem;box-shadow:var(--lk-box-shadow)}.lk-device-menu-heading{padding:.25rem .5rem;font-weight:700;opacity:.65}.lk-start-audio-button{color:var(--lk-accent-fg);background-color:var(--lk-accent-bg)}@media screen and (max-width:600px){.lk-start-audio-button{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}}.lk-pagination-control{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;align-items:stretch;background-color:var(--lk-control-bg);border-radius:var(--lk-border-radius);transition:opacity ease-in-out .15s;opacity:0}.lk-pagination-control:hover{opacity:1}.lk-pagination-control>.lk-button:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.lk-pagination-control>.lk-button:first-child>svg{transform:rotate(180deg)}.lk-pagination-control>.lk-button:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.lk-pagination-count{padding:.5rem .875rem;border-inline:1px solid var(--lk-bg)}[data-lk-user-interaction=true].lk-pagination-control{opacity:1}.lk-pagination-indicator{position:absolute;height:var(--lk-grid-gap);background-color:var(--lk-bg2);width:fit-content;padding:.2rem .5rem;bottom:calc(var(--lk-grid-gap)/2);left:50%;transform:translate(-50%);border-radius:2rem;opacity:1;display:flex;gap:.2rem;align-items:center}.lk-pagination-indicator span{display:inline-block;width:.4rem;height:.4rem;border-radius:9999999px;background-color:var(--lk-fg);opacity:.35;transition:opacity linear .2s}.lk-pagination-indicator span[data-lk-active]{opacity:.9}.lk-grid-layout{--lk-col-count: 1;--lk-row-count: 1;display:grid;grid-template-columns:repeat(var(--lk-col-count),minmax(0,1fr));grid-auto-rows:minmax(0,1fr);grid-gap:var(--lk-grid-gap);width:100%;height:100%;max-width:100%;max-height:100%;padding:var(--lk-grid-gap)}.lk-grid-layout[data-lk-pagination=true]{padding-bottom:calc(var(--lk-grid-gap)*2)}.lk-focus-layout{display:grid;grid-template-columns:1fr 5fr;gap:var(--lk-grid-gap);width:100%;max-height:100%;padding:var(--lk-grid-gap)}.lk-focused-participant{position:relative}.lk-focused-participant .lk-pip-track{position:absolute;top:10px;right:10px;width:20%;height:auto}@media(max-width:600px){.lk-focus-layout{grid-template-columns:1fr;grid-template-rows:5fr 1fr}.lk-carousel{order:1}}.lk-carousel{max-height:100%;display:flex;gap:var(--lk-grid-gap)}.lk-carousel>*{flex-shrink:0;aspect-ratio:16/10;scroll-snap-align:start}.lk-carousel[data-lk-orientation=vertical]{flex-direction:column;scroll-snap-type:y mandatory;overflow-y:auto;overflow-x:hidden}.lk-carousel[data-lk-orientation=vertical]>*{--lk-height-minus-gaps: calc(100% - calc(var(--lk-grid-gap) * calc(var(--lk-max-visible-tiles) - 1)));height:calc(var(--lk-height-minus-gaps)/var(--lk-max-visible-tiles))}.lk-carousel[data-lk-orientation=horizontal]{scroll-snap-type:x mandatory;overflow-y:hidden;overflow-x:auto}.lk-carousel[data-lk-orientation=horizontal]>*{--lk-width-minus-gaps: calc(100% - var(--lk-grid-gap) * (var(--lk-max-visible-tiles) - 1));width:calc(var(--lk-width-minus-gaps)/var(--lk-max-visible-tiles))}.lk-connection-quality{width:1.5rem;height:1.5rem}.lk-track-muted-indicator-camera,.lk-track-muted-indicator-microphone{position:relative;width:var(--lk-indicator-size, 1rem);height:var(--lk-indicator-size, 1rem);margin-inline-end:.25rem;transition:opacity .25s ease-in-out}.lk-track-muted-indicator-camera[data-lk-muted=true]{opacity:.5}.lk-track-muted-indicator-microphone{--lk-bg: var(--lk-icon-mic)}.lk-track-muted-indicator-microphone[data-lk-muted=true]{opacity:.5}.lk-participant-name{font-size:.875rem}.lk-participant-media-video{width:100%;height:100%;object-fit:cover;object-position:center;background-color:#000}.lk-participant-media-video[data-lk-orientation=landscape]{object-fit:cover}.lk-participant-media-video[data-lk-orientation=portrait],.lk-participant-media-video[data-lk-source=screen_share]{object-fit:contain;background-color:var(--lk-bg2)}.lk-participant-media-audio{width:auto}[data-lk-facing-mode=user] .lk-participant-media-video[data-lk-local-participant=true][data-lk-source=camera]{transform:rotateY(180deg)}.lk-audio-visualizer{width:100%;height:100%;min-height:160px;background:var(--lk-bg-control);aspect-ratio:16/9;border-radius:.5rem;display:flex;justify-content:space-around;align-items:center}.lk-audio-visualizer>rect{fill:var(--lk-accent-bg);transition:transform .1s cubic-bezier(.19,.02,.09,1)}.lk-audio-visualizer>path{stroke:var(--lk-accent-bg);transition:.1s cubic-bezier(.19,.02,.09,1)}.lk-audio-bar-visualizer{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:var(--lk-bg);gap:var(--lk-va-bar-gap, 24px)}.lk-audio-bar-visualizer>.lk-audio-bar{transform-origin:"center";height:100%;width:var(--lk-va-bar-width, 12px);border-radius:var(--lk-va-bar-border-radius, 32px);background-color:var(--lk-va-bar-bg, rgba(136, 136, 136, .2));transition:background-color .25s ease-out}.lk-audio-bar-visualizer[data-lk-va-state=speaking]>.lk-audio-bar,.lk-audio-bar-visualizer>.lk-audio-bar.lk-highlighted,.lk-audio-bar-visualizer>[data-lk-highlighted=true]{background-color:var(--lk-fg, rgb(136, 136, 136));transition:none}.lk-audio-bar-visualizer[data-lk-va-state=thinking]{transition:background-color .15s ease-out}.lk-participant-tile{--lk-speaking-indicator-width: 2.5px;position:relative;display:flex;flex-direction:column;gap:.375rem;overflow:hidden;border-radius:var(--lk-border-radius)}.lk-participant-tile:after{content:"";position:absolute;inset:0;border-radius:var(--lk-border-radius);border:0px solid var(--lk-accent-bg);transition-property:border opacity;transition-delay:.5s;transition-duration:.4s;pointer-events:none}.lk-participant-tile[data-lk-speaking=true]:not([data-lk-source=screen_share]):after{transition-delay:0s;transition-duration:.2s;border-width:var(--lk-speaking-indicator-width)}.lk-participant-tile .lk-focus-toggle-button{position:absolute;top:.25rem;right:.25rem;padding:.25rem;background-color:#00000080;border-radius:calc(var(--lk-border-radius)/2);opacity:0;transition:opacity .2s ease-in-out;transition-delay:.2s}.lk-participant-tile:hover .lk-focus-toggle-button,.lk-participant-tile:focus .lk-focus-toggle-button{opacity:1;transition-delay:0}.lk-participant-tile .lk-connection-quality{opacity:0;transition:opacity .2s ease-in-out;transition-delay:.2s}.lk-participant-tile .lk-connection-quality[data-lk-quality=poor]{opacity:1;transition-delay:0}.lk-participant-tile:hover .lk-connection-quality,.lk-participant-tile:focus .lk-connection-quality{opacity:1;transition-delay:0}.lk-participant-tile .lk-participant-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:var(--lk-bg2);opacity:0;transition:opacity .2s ease-in-out;pointer-events:none;border-radius:var(--lk-border-radius)}.lk-participant-tile .lk-participant-placeholder svg{height:100%;width:auto;padding:10%}.lk-participant-tile[data-lk-video-muted=true][data-lk-source=camera] .lk-participant-placeholder{opacity:1}.lk-participant-metadata{position:absolute;right:.25rem;bottom:.25rem;left:.25rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;line-height:1}.lk-participant-metadata-item{display:flex;align-items:center;padding:.25rem;background-color:#00000080;border-radius:calc(var(--lk-border-radius)/2)}.lk-toast{position:fixed;top:.75rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:var(--lk-bg);border:1px solid var(--lk-border-color);border-radius:var(--lk-border-radius);box-shadow:var(--lk-box-shadow)}.lk-spinner{animation:lk-rotate 2s infinite linear}@keyframes lk-rotate{0%{transform:rotate(0)}to{transform:rotate(359deg)}}.lk-room-container{background-color:var(--lk-bg);line-height:var(--lk-line-height)}.lk-room-container{position:relative;width:100%;height:100%;--lk-has-imported-styles: "true"}.lk-room-container *[class^=lk-],.lk-room-container *[class*=" lk-"]{box-sizing:border-box}.lk-audio-conference{position:relative;width:100%;height:100%}.lk-audio-conference-stage{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.lk-chat{display:grid;grid-template-rows:var(--lk-chat-header-height) 1fr var(--lk-control-bar-height);width:clamp(200px,55ch,60ch);background-color:var(--lk-bg2);border-left:1px solid var(--lk-border-color);align-items:end}.lk-chat-header{height:var(--lk-chat-header-height);padding:.75rem;position:relative;display:flex;align-items:center;justify-content:center}.lk-chat-header .lk-close-button{position:absolute;right:0;transform:translate(-50%);background-color:#0000}.lk-chat-header .lk-close-button:hover{background-color:var(--lk-control-active-hover-bg)}.lk-chat-messages{display:flex;width:100%;max-height:100%;flex-direction:column;gap:.25rem;overflow:auto}.lk-chat-entry{display:flex;flex-direction:column;gap:.25rem;margin:0 .25rem}.lk-chat-entry .lk-meta-data{font-size:.75rem;color:var(--lk-fg5);white-space:nowrap;padding:0 .3rem;display:flex}.lk-chat-entry .lk-meta-data .lk-participant-name{margin-top:1rem}.lk-chat-entry .lk-meta-data .lk-timestamp{margin-left:auto;align-self:flex-end}.lk-chat-entry .lk-edit-button{background:none;float:right;margin:0;padding:0 .25rem;border-radius:0;font-size:12px}.lk-chat-entry .lk-message-body{display:inline-block;border-radius:15px;padding:.25rem .75rem;word-break:break-word;width:fit-content;max-width:calc(100% - 32px)}.lk-chat-entry[data-lk-message-origin=local] .lk-message-body{background-color:var(--lk-bg5)}.lk-chat-entry[data-lk-message-origin=remote] .lk-message-body{background-color:var(--lk-accent4)}.lk-chat-entry a{text-decoration:underline;color:inherit}.lk-chat-entry *{margin-block-start:.25em;margin-block-end:.25em}.lk-chat-entry:last-child{margin-bottom:.25rem}.lk-chat-form{display:flex;gap:.75rem;padding:.75rem;border-top:1px solid var(--lk-border-color);max-height:var(--lk-control-bar-height)}.lk-chat-form-input{font-size:inherit;line-height:inherit;width:100%}@media(max-width:600px){.lk-chat{position:fixed;top:0;right:0;max-width:100%;bottom:var(--lk-control-bar-height)}}.lk-control-bar,.lk-agent-control-bar{display:flex;gap:.5rem;align-items:center;justify-content:center;padding:.75rem;border-top:1px solid var(--lk-border-color);max-height:var(--lk-control-bar-height)}.lk-agent-control-bar{height:var(--lk-control-bar-height);--lk-bg: transparent;--lk-va-bar-width: 2px;--lk-va-bar-gap: 4px;--lk-va-bar-border-radius: 1px}.lk-agent-control-bar .lk-audio-bar-visualizer .lk-audio-bar.lk-highlighted{filter:none}.lk-prejoin{background-color:var(--lk-bg);line-height:var(--lk-line-height)}[data-lk-theme]{font-size:var(--lk-font-size);font-family:var(--lk-font-family);color:var(--lk-fg)}[data-lk-theme] .lk-list{list-style:none;margin:0;padding:0}[data-lk-theme] .lk-form-control{font-family:var(--lk-font-family);padding:.625rem 1rem;background-color:var(--lk-control-bg);border:1px solid var(--lk-border-color);border-radius:var(--lk-border-radius)}.lk-prejoin{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;padding:1rem;gap:1rem;margin-inline:auto;background-color:var(--lk-bg);width:min(100%,480px);align-items:stretch}.lk-prejoin .lk-video-container{position:relative;width:100%;height:auto;aspect-ratio:16/10;background-color:#000;border-radius:var(--lk-border-radius);overflow:hidden}.lk-prejoin .lk-video-container video,.lk-prejoin .lk-video-container .lk-camera-off-note{display:block;width:100%;height:100%;object-fit:cover}.lk-prejoin .lk-video-container video[data-lk-facing-mode=user]{transform:rotateY(180deg)}.lk-prejoin .lk-video-container .lk-camera-off-note{position:absolute;top:0;left:0;width:100%;aspect-ratio:16/10;background-color:#000;display:grid;place-items:center}.lk-prejoin .lk-video-container .lk-camera-off-note>*{height:70%;max-width:100%}.lk-prejoin .lk-audio-container{display:none}.lk-prejoin .lk-audio-container audio{width:100%;height:auto}.lk-prejoin .lk-button-group-container{display:flex;flex-wrap:nowrap;gap:1rem}.lk-prejoin .lk-button-group-container>.lk-button-group{width:50%}.lk-prejoin .lk-button-group-container>.lk-button-group>.lk-button{justify-content:left}.lk-prejoin .lk-button-group-container>.lk-button-group>.lk-button:first-child{width:100%}@media(max-width:400px){.lk-prejoin .lk-button-group-container{flex-wrap:wrap}.lk-prejoin .lk-button-group-container>.lk-button-group{width:100%}}.lk-prejoin .lk-username-container{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:100%}.lk-prejoin .lk-join-button{--lk-control-fg: var(--lk-accent-fg);--lk-control-bg: var(--lk-accent-bg);--lk-control-hover-bg: var(--lk-accent2);--lk-control-active-bg: var(--lk-accent3);--lk-control-active-hover-bg: var(--lk-accent4);background-color:var(--lk-control-bg)}.lk-prejoin .lk-join-button:hover{background-color:var(--lk-control-hover-bg)}.lk-focus-layout-wrapper,.lk-grid-layout-wrapper{position:relative;display:flex;justify-content:center;width:100%;height:calc(100% - var(--lk-control-bar-height))}.lk-grid-layout-wrapper{flex-direction:column;align-items:center}.lk-focus-layout-wrapper{align-items:stretch}.lk-video-conference{position:relative;display:flex;align-items:stretch;height:100%}.lk-video-conference-inner{display:flex;flex-direction:column;align-items:stretch;width:100%}.lk-settings-menu-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--lk-bg);padding:1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background-color:var(--lk-bg);border:1px solid var(--lk-border-color);border-radius:var(--lk-border-radius);box-shadow:var(--lk-box-shadow);min-width:50vw;min-height:50vh;max-width:100%;max-height:100%;overflow-y:auto}:root{font-family:DM Sans,Arial,sans-serif;color:#f6f0e5;background:#061813;font-synthesis:none;--gold:#d5b16d;--cream:#f6f0e5;--turquoise:#3dd4c4}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:var(--gold)}.app-shell{min-height:100vh;position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% -20%,#174337,#061813 55%,#04110e)}.app-shell:before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.25;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E")}.ambient{position:absolute;z-index:-1;pointer-events:none;border-radius:50%;filter:blur(70px)}.ambient-one{width:700px;height:500px;left:-250px;top:10%;background:#0d483c66}.ambient-two{width:600px;height:400px;right:-250px;bottom:5%;background:#69552f22}.site-header{height:86px;max-width:1480px;margin:auto;padding:0 42px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d5b16d22}.brand{border:0;background:none;color:var(--cream);display:flex;align-items:center;gap:14px;font-size:12px;letter-spacing:.28em;font-weight:700}.brand em{font-style:normal;color:var(--gold)}.brand-mark{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--gold);border-radius:50%;font:18px Italiana,Georgia,serif;letter-spacing:-3px;padding-right:3px;color:var(--gold);box-shadow:0 0 22px #d5b16d22}.header-actions{display:flex;align-items:center;gap:24px}.header-link,.quiet-link{background:none;border:0;color:#d8d6c7;font-size:12px;letter-spacing:.06em;display:inline-flex;align-items:center;gap:8px}.header-link:hover,.quiet-link:hover{color:var(--gold)}.connection{font-size:11px;letter-spacing:.07em}.connection:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--turquoise);margin-right:7px}.connection.offline:before{background:#e7a65b}.home{min-height:calc(100vh - 86px);max-width:1440px;margin:auto;position:relative;display:flex;align-items:center;padding:70px 7% 100px}.hero-copy{position:relative;z-index:2;max-width:590px}.eyebrow,.panel-kicker{color:var(--gold);font-weight:700;letter-spacing:.28em;font-size:10px}.eyebrow{display:flex;align-items:center;gap:12px}.eyebrow span{display:block;width:24px;height:1px;background:var(--gold)}.home h1{font:clamp(72px,8.2vw,132px)/.98 Italiana,Georgia,serif;letter-spacing:-.035em;font-weight:400;margin:22px 0 29px;text-shadow:0 6px 32px #0005}.home h1 i{font-weight:400;color:var(--gold);font-style:normal}.hero-copy>p{color:#b6c9bf;line-height:1.85;font-size:15px;max-width:485px}.hero-actions{display:flex;gap:12px;margin-top:42px;flex-wrap:wrap}.primary-button,.secondary-button{border-radius:4px;min-height:50px;padding:0 22px;display:inline-flex;align-items:center;justify-content:center;gap:15px;font-size:12px;letter-spacing:.04em;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s}.primary-button{border:1px solid #e9ce91;background:linear-gradient(135deg,#e9ce91,#caa45e);color:#14251e;box-shadow:0 10px 36px #0005,inset 0 1px #fff7}.primary-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 13px 45px #d5b16d36}.primary-button:disabled{opacity:.5}.secondary-button{border:1px solid #d5b16d88;background:#0a241d99;color:var(--cream)}.secondary-button:hover:not(:disabled),.secondary-button.active{background:#184538;border-color:var(--gold)}.secondary-button:disabled{opacity:.42}.text-action{margin-top:27px;color:#aabcb2;border:0;background:none;padding:0;font-size:12px}.text-action span{color:var(--gold);margin-left:4px}.hero-orbit{position:absolute;width:700px;height:630px;right:-10px;top:50%;transform:translateY(-50%);background:radial-gradient(circle,#d5b16d19 0%,#09282022 40%,transparent 68%);border-radius:50%}.hero-orbit:before,.hero-orbit:after{content:"";position:absolute;inset:14%;border:1px solid #d5b16d1d;border-radius:50%;transform:rotate(-18deg) scaleX(1.35)}.hero-orbit:after{inset:25%;transform:rotate(21deg) scaleX(1.6)}.orbit-card{position:absolute;width:180px;height:250px;filter:drop-shadow(0 40px 24px #0008)}.orbit-card img{width:100%;height:100%}.orbit-a{left:180px;top:170px;transform:rotate(-24deg)}.orbit-b{left:318px;top:125px;transform:rotate(3deg)}.orbit-c{left:450px;top:185px;transform:rotate(26deg)}.home-footer{position:absolute;left:7%;bottom:35px;display:flex;gap:36px;color:#8ca89a;font-size:11px;letter-spacing:.15em;text-transform:uppercase}.entry-backdrop,.drawer-backdrop{position:fixed;inset:0;z-index:30;background:#020d0bd9;backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:16px}.entry-panel{position:relative;width:min(100%,480px);padding:42px;background:linear-gradient(145deg,#153a30,#09261f 65%,#081b17);border:1px solid #d5b16d66;box-shadow:0 30px 80px #000a,0 0 70px #d5b16d12}.entry-panel:before{content:"";position:absolute;inset:6px;border:1px solid #d5b16d26;pointer-events:none}.entry-panel h2,.drawer h3,.lobby-heading h3{font:42px/1.1 Italiana,Georgia,serif;font-weight:400;margin:14px 0}.entry-panel p{color:#adbdaf;font-size:13px;line-height:1.7;margin-bottom:29px}.entry-panel label{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#d5b16d;margin:18px 0}.entry-panel input{display:block;width:100%;height:46px;border:1px solid #d5b16d55;background:#041610;color:var(--cream);padding:0 13px;margin-top:9px;outline:0}.entry-panel input:focus,.chat-form input:focus{border-color:var(--gold)}.avatar-row{display:flex;align-items:center;gap:8px}.avatar-row span{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--gold);margin-right:auto}.avatar-row button{width:34px;height:34px;border:1px solid #d5b16d55;color:#c8d7cb;background:#123329}.avatar-row button.chosen{border-color:var(--gold);color:var(--gold);background:#d5b16d25}.full{width:100%;margin-top:14px}.form-error{padding:10px 12px;margin-top:12px;color:#ffd5c2;background:#743d3a66;font-size:12px}.close-button{border:0;background:none;color:#c8d8cc;padding:5px}.entry-panel>.close-button{position:absolute;right:25px;top:24px}.game-page{max-width:1480px;margin:auto;padding:24px 40px 18px;min-height:calc(100vh - 86px);display:flex;flex-direction:column}.game-topline{display:flex;align-items:center;justify-content:space-between;gap:18px}.game-topline h2{font:32px Italiana,Georgia,serif;margin:5px 0 0}.topline-controls{display:flex;align-items:center;gap:10px}.code-pill,.icon-button{border:1px solid #d5b16d55;background:#0d2a22;color:var(--gold);height:36px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:3px;font-size:11px;letter-spacing:.1em}.icon-button{width:36px;padding:0;position:relative}.icon-button i{position:absolute;top:4px;right:4px;width:5px;height:5px;border-radius:50%;background:var(--turquoise)}.toast{position:fixed;z-index:25;top:96px;left:50%;transform:translate(-50%);background:#3d2c20;color:#ffe6c3;border:1px solid #d5b16d;padding:12px 18px;font-size:12px;display:flex;gap:14px;align-items:center;cursor:pointer}.lobby-heading{text-align:center;margin:35px auto 24px}.gold-rule{display:block;width:45px;height:1px;background:var(--gold);margin:auto}.lobby-heading h3{font-size:50px;margin:12px 0 4px}.lobby-heading p{color:#acc0b4;font-size:13px}.lobby-grid{width:min(100%,730px);margin:8px auto;display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.lobby-seat{min-height:175px;border:1px solid #d5b16d2d;background:linear-gradient(130deg,#103228bb,#071c17);display:flex;align-items:center;flex-direction:column;justify-content:center;position:relative}.lobby-seat:before{content:"";position:absolute;inset:6px;border:1px solid #d5b16d13;pointer-events:none}.lobby-seat.occupied{border-color:#d5b16d77}.seat-emblem{width:44px;height:44px;display:grid;place-items:center;border:1px solid #d5b16d66;border-radius:50%;color:var(--gold);font:25px Italiana,serif;margin-bottom:9px}.seat-direction,.ready-status{font-size:9px;letter-spacing:.2em;color:var(--gold)}.lobby-seat strong{font-size:15px;font-weight:500;margin:6px}.ready-status{color:#8da99a}.ready-status.is-ready{color:var(--turquoise)}.lobby-actions{width:min(100%,730px);margin:22px auto;display:flex;justify-content:space-between;gap:18px}.invite-box{display:flex;flex-direction:column;gap:5px}.invite-box>span{font-size:9px;color:var(--gold);letter-spacing:.2em}.invite-box button{border:0;background:none;color:var(--cream);text-align:left;padding:0;display:flex;gap:10px;align-items:center;font-size:12px}.invite-box small{color:#9caf9f}.ready-box{display:flex;align-items:end;gap:10px}.scorebar{margin:17px auto 10px;display:flex;align-items:center;justify-content:center;gap:28px;width:100%;max-width:800px}.score-side{display:flex;flex-direction:column;align-items:center;min-width:145px}.score-side span,.score-center span{font-size:9px;letter-spacing:.15em;color:#a9b8a9}.score-side strong{font:37px Italiana,serif;color:var(--cream);margin-top:2px}.score-side.mine strong{color:var(--gold)}.score-center{text-align:center;min-width:160px}.score-progress{display:flex;gap:3px;margin-top:10px;height:3px;background:#23483a}.score-progress i:first-child{background:var(--gold)}.score-progress i:last-child{background:var(--turquoise)}.table-scene{position:relative;flex:1;min-height:390px;max-height:550px;width:100%;margin:auto}.table-rim{position:absolute;inset:4% 14% 3%;border-radius:50%;background:radial-gradient(ellipse at 50% 38%,#185744,#0c382d 60%,#092820 75%,#061b16);border:9px solid #513d21;box-shadow:0 0 0 2px #c9a45e,0 0 0 13px #0c221b,0 0 0 15px #80643a,0 30px 60px #000a,inset 0 0 90px #020e0b}.table-rim:before{content:"";position:absolute;inset:12px;border:1px solid #d5b16d55;border-radius:50%}.felt-pattern{position:absolute;inset:0;border-radius:50%;opacity:.25;background:repeating-linear-gradient(30deg,transparent 0px,transparent 2px,#ffffff04 3px)}.table-insignia{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font:100px Italiana,serif;letter-spacing:-.16em;color:#d5b16d0a}.player-station{position:absolute;z-index:5;display:flex;align-items:center;gap:8px;padding:8px 13px;min-width:150px;border:1px solid #d5b16d40;background:#061b17db;box-shadow:0 9px 20px #0006}.player-station.playing{border-color:var(--gold);box-shadow:0 0 18px #d5b16d33}.player-station.self{left:50%;bottom:-2%;transform:translate(-50%)}.player-station.opposite{left:50%;top:0;transform:translate(-50%)}.player-station.left{left:4%;top:45%;transform:translateY(-50%)}.player-station.right{right:4%;top:45%;transform:translateY(-50%)}.station-badge{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold);font-size:17px}.station-info{display:flex;flex-direction:column;gap:3px}.station-info strong{font-size:12px}.station-info span{font-size:9px;color:#a8bcaf}.back-stack{width:27px;height:38px;margin-left:7px;position:relative}.back-stack img{width:100%;height:100%;filter:drop-shadow(2px 2px 3px #0009)}.back-count{position:absolute;z-index:2;bottom:-6px;right:-7px;background:#d5b16d;color:#0b261d;border-radius:50%;width:16px;height:16px;text-align:center;font-size:10px;line-height:16px}.table-center{position:absolute;z-index:2;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.contract-ring{width:150px;height:150px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #d5b16d55;border-radius:50%;background:#09251d9c;box-shadow:0 0 0 8px #d5b16d0b}.contract-ring span,.contract-ring small{color:#c1cbb6;font-size:9px;letter-spacing:.16em}.contract-ring strong{font:26px Italiana,serif;color:var(--gold);margin:5px}.played-cards{position:absolute;inset:0}.played-card{position:absolute;width:75px;height:105px;filter:drop-shadow(0 7px 5px #0008);animation:card-in .24s ease-out}.played-card.self{bottom:15%;left:50%;transform:translate(-50%) rotate(4deg)}.played-card.opposite{top:15%;left:50%;transform:translate(-50%) rotate(-5deg)}.played-card.left{left:29%;top:50%;transform:translateY(-50%) rotate(-12deg)}.played-card.right{right:29%;top:50%;transform:translateY(-50%) rotate(11deg)}.card-face{display:block;width:100%;height:100%;padding:0;border:0;border-radius:8px;background:none;color:#18392c;box-shadow:0 6px 14px #0006;transition:transform .18s,filter .18s}.card-face svg{width:100%;height:100%;display:block}.card-face.red{color:#a23338}.card-index{font:700 31px Georgia,serif;fill:currentColor}.card-small-suit{font:23px Georgia,serif;fill:currentColor}.card-center{font:94px Georgia,serif;fill:currentColor}.card-face.blocked{filter:brightness(.55) saturate(.55)}.card-face:not(:disabled):hover,.card-face:not(:disabled):focus-visible{transform:translateY(-18px);outline:2px solid var(--gold);filter:drop-shadow(0 0 12px #d5b16d88)}.action-area{min-height:210px;position:relative;display:flex;flex-direction:column;align-items:center}.turn-line{display:flex;align-items:center;justify-content:center;gap:11px;font-size:12px;min-height:36px}.turn-line strong{color:var(--gold)}.turn-line>span:last-child{color:#9cb7aa;font-size:10px}.turn-glow{width:7px;height:7px;border-radius:50%;background:var(--turquoise);box-shadow:0 0 12px var(--turquoise)}.bidding-controls{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin:5px 0 11px}.bidding-controls select{min-height:35px;background:#0e2f26;border:1px solid #d5b16d66;color:var(--cream);padding:0 7px;border-radius:2px}.compact{min-height:35px;padding:0 12px;font-size:11px}.hand-fan{display:flex;align-items:flex-end;justify-content:center;padding:8px 25px 0;max-width:100%;height:155px}.hand-card{position:relative;width:103px;height:142px;flex:0 0 103px;margin-left:-25px;transform:translateY(calc(abs(var(--i) - (var(--n) - 1)/2)*2px));animation:deal-in .35s both;animation-delay:calc(var(--i)*55ms)}.hand-card:hover,.hand-card:focus-within{z-index:10}.result-panel{display:flex;align-items:center;gap:15px;flex-wrap:wrap;justify-content:center;margin:35px auto;color:var(--gold)}.result-panel strong{font:30px Italiana,serif}.result-panel span{color:var(--cream)}.game-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:auto;padding-top:18px;border-top:1px solid #d5b16d25}.fairplay{display:flex;align-items:center;gap:8px;color:#92aa9b;font-size:10px}.voice-unavailable{font-size:10px;color:#90a99a}.voice-join{display:flex;align-items:center;gap:7px;border:1px solid #d5b16d66;background:#153d32;color:var(--cream);padding:7px 11px;font-size:11px}.voice-join small{color:#ecbda3}.voice-controls{display:flex;align-items:center;gap:6px}.voice-label{font-size:10px;color:var(--gold);margin:0 5px}.drawer-backdrop{justify-content:flex-end;padding:0}.drawer{height:100%;width:min(410px,100%);background:#081d17;border-left:1px solid #d5b16d6a;box-shadow:-20px 0 60px #0008;padding:30px;display:flex;flex-direction:column}.drawer-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid #d5b16d44;padding-bottom:19px}.drawer h3{font-size:40px;margin-bottom:0}.drawer-scroll{flex:1;overflow:auto;padding:21px 0}.empty-drawer,.prose p,.settings-list p{color:#a9b9ae;font-size:13px;line-height:1.7}.chat-line,.history-line{padding:12px 0;border-bottom:1px solid #d5b16d1f;font-size:12px;line-height:1.5;display:flex;gap:12px}.chat-line b{min-width:55px;color:var(--gold)}.history-line span{color:var(--gold);font-size:10px}.chat-form{display:flex;border:1px solid #d5b16d55}.chat-form input{flex:1;min-width:0;background:#061813;border:0;color:var(--cream);padding:10px;outline:0}.chat-form button{border:0;background:var(--gold);color:#102820;width:38px}.prose h4{font:22px Italiana,serif;color:var(--gold);margin:18px 0 6px}.prose a{font-size:12px}.settings-list label{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #d5b16d22;font-size:12px}.settings-list label span{display:flex;align-items:center;gap:10px}.settings-list input{accent-color:var(--gold)}.report-button{background:none;border:1px solid #d5b16d77;color:var(--gold);padding:12px;font-size:12px}@keyframes card-in{0%{opacity:0;translate:0 -20px}to{opacity:1;translate:0 0}}@keyframes deal-in{0%{opacity:0;translate:0 -50px;rotate:-9deg}to{opacity:1;translate:0 0;rotate:0}}html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important}html[data-motion=off] .hand-card{transform:none}@media(max-width:900px){.hero-orbit{opacity:.35;right:-260px}.game-page{padding:18px}.table-rim{inset:8% 8% 5%}.player-station.left{left:0}.player-station.right{right:0}.hand-card{width:83px;height:114px;flex-basis:83px;margin-left:-24px}.hand-fan{height:124px}.played-card.left{left:23%}.played-card.right{right:23%}}.pause-panel{position:relative;z-index:8;display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;border:1px solid #d5b16d77;background:#2c2b1cbf;padding:12px 18px;color:var(--gold);margin:12px auto;width:min(100%,850px)}.pause-panel div{display:flex;flex-direction:column;gap:3px}.pause-panel strong{font-size:13px}.pause-panel span{font-size:11px;color:var(--cream)}.room-options{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.room-options label:last-child:nth-child(3){grid-column:1/-1}.room-options select{display:block;width:100%;min-height:40px;margin-top:8px;padding:0 8px;background:#041610;border:1px solid #d5b16d55;color:var(--cream)}.voice-controls{position:relative}.voice-label{border:0;background:none;cursor:pointer}.voice-participants{position:absolute;right:0;bottom:43px;z-index:15;width:260px;padding:14px;background:#0a261e;border:1px solid #d5b16d77;box-shadow:0 12px 35px #0009;font-size:11px}.voice-person{display:flex;align-items:center;gap:6px;margin:8px 0}.voice-person span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.voice-person span.speaking{color:var(--turquoise)}.voice-person input{width:65px;accent-color:var(--gold)}.voice-person button{background:none;border:0;color:var(--gold);font-size:10px}.device-choices{display:grid;grid-template-columns:45px 1fr;align-items:center;gap:4px;margin-bottom:10px;color:var(--gold)}.device-choices button{min-height:27px;border:1px solid #d5b16d55;background:#102f26;color:var(--cream);font-size:10px}.audit-box{border:1px solid #d5b16d55;background:#113427;padding:12px;margin-bottom:14px;display:flex;flex-direction:column;gap:6px;font-size:11px;color:#b8cbbd}.audit-box strong,.audit-box b{color:var(--gold)}.audit-box details{overflow-wrap:anywhere;line-height:1.5}.audit-box summary{cursor:pointer;color:var(--cream)}.audit-box code{display:block;font-size:9px;margin:8px 0}.audit-box small{display:block}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(max-width:600px){.site-header{height:66px;padding:0 16px}.brand{font-size:9px;letter-spacing:.15em;gap:7px}.brand-mark{width:32px;height:32px;font-size:15px}.header-actions{gap:8px}.header-link{font-size:0}.header-link svg{width:19px;height:19px}.connection{display:none}.home{min-height:calc(100vh - 66px);padding:80px 22px 100px;align-items:flex-start}.home h1{font-size:67px}.hero-orbit{width:500px;height:450px;top:65%;right:-260px;opacity:.21}.orbit-card{width:110px;height:153px}.orbit-a{left:100px;top:130px}.orbit-b{left:200px;top:90px}.orbit-c{left:300px;top:150px}.hero-actions{flex-direction:column;align-items:stretch}.home-footer{left:22px;right:22px;gap:10px;justify-content:space-between;font-size:9px}.entry-panel{padding:31px 23px}.game-page{padding:14px 10px 10px;min-height:calc(100vh - 66px)}.game-topline h2{font-size:25px}.topline-controls{gap:4px}.code-pill{letter-spacing:0;padding:0 7px}.scorebar{gap:3px;margin:12px 0 0}.score-side{min-width:100px}.score-side span,.score-center span{font-size:7px}.score-side strong{font-size:29px}.score-center{min-width:80px}.table-scene{min-height:335px;max-height:400px}.table-rim{inset:11% 2% 9%;border-width:5px;box-shadow:0 0 0 2px #c9a45e,0 0 0 7px #0c221b,0 0 0 9px #80643a,0 30px 50px #000a}.player-station{min-width:0;padding:5px 7px;gap:4px}.player-station.opposite{top:1%}.player-station.self{bottom:0}.player-station.left{left:0;top:46%}.player-station.right{right:0;top:46%}.station-badge{width:24px;height:24px;font-size:12px}.station-info strong{font-size:9px;max-width:62px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.station-info span{font-size:7px}.back-stack{width:16px;height:23px;margin-left:0}.back-count{bottom:-4px;right:-4px;width:12px;height:12px;line-height:12px;font-size:8px}.contract-ring{width:105px;height:105px}.contract-ring strong{font-size:20px}.contract-ring span,.contract-ring small{font-size:7px}.played-card{width:49px;height:69px}.played-card.left{left:12%}.played-card.right{right:12%}.played-card.self{bottom:19%}.played-card.opposite{top:18%}.turn-line{flex-wrap:wrap;gap:5px}.turn-line>span:last-child{width:100%;text-align:center}.bidding-controls{gap:5px}.bidding-controls select,.compact{min-height:32px;font-size:10px}.hand-fan{height:121px;padding:8px 4px 0}.hand-card{width:calc((100vw - 12px)/5);height:auto;aspect-ratio:180/250;flex:0 0 calc((100vw - 12px)/5);margin-left:calc((100vw - 12px)/-12)}.hand-card:first-child{margin-left:0}.action-area{min-height:210px}.game-footer{flex-wrap:wrap;justify-content:center;text-align:center}.fairplay{font-size:9px}.lobby-heading{margin:24px auto 14px}.lobby-heading h3{font-size:41px}.lobby-grid{gap:7px}.lobby-seat{min-height:135px}.lobby-seat strong{font-size:11px;text-align:center}.lobby-actions{flex-wrap:wrap;justify-content:center}.invite-box{align-items:center}.ready-box{flex-wrap:wrap;justify-content:center}.drawer{padding:20px}}.mission-home{display:grid;grid-template-columns:1fr;align-content:start;align-items:start;gap:42px;padding-top:72px;padding-bottom:86px;overflow:visible}.mission-home .hero-copy{max-width:670px}.mission-home .hero-orbit{top:280px;transform:none}.mission-home .hero-copy>p{max-width:520px}.mission-home .home-footer{position:relative;left:auto;bottom:auto;margin-top:0}.directory{position:relative;z-index:2;width:100%;padding:27px;border:1px solid #d5b16d55;background:linear-gradient(150deg,#102c25ee,#081b17ee);box-shadow:0 25px 75px #0008,inset 0 1px #ffffff0a}.directory-head{display:flex;justify-content:space-between;align-items:center;gap:20px}.directory-head h2{font:44px Italiana,Georgia,serif;margin:8px 0}.directory-head p{font-size:12px;color:#a6bbac;margin:0}.live-count{font-size:11px;color:#c9dfce;white-space:nowrap}.live-count i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#4ce2b2;box-shadow:0 0 12px #4ce2b2;margin-right:8px}.directory-tools{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin:25px 0 16px}.directory-tabs{display:flex;gap:5px;flex-wrap:wrap}.directory-tabs button,.entry-role button{border:1px solid #d5b16d48;color:#c9d7c9;background:#0a241d;padding:10px 13px;min-height:44px;font-size:11px}.directory-tabs button.selected,.entry-role button.selected{color:#152c21;background:var(--gold);border-color:var(--gold);font-weight:700}.directory-filters{display:flex;gap:8px}.directory-filters select,.settings-list select{min-height:42px;padding:0 12px;color:var(--cream);background:#0a241d;border:1px solid #d5b16d66;font-size:11px}.directory-list{display:grid;gap:8px}.table-list-card{display:grid;grid-template-columns:45px minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:15px 17px;background:linear-gradient(100deg,#133a2e,#08251d);border:1px solid #d5b16d30;transition:transform .18s,border-color .18s}.table-list-card:hover{transform:translateY(-2px);border-color:#d5b16d99}.table-list-icon{width:44px;height:44px;display:grid;place-items:center;border:1px solid #d5b16d88;border-radius:50%;color:var(--gold);font:28px Italiana,serif}.table-list-main{display:flex;flex-direction:column;gap:5px;min-width:0}.table-list-main strong{font:22px Italiana,Georgia,serif;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.table-list-main span{color:#a8beaf;font-size:11px}.status-chip{border:1px solid #d5b16d55;padding:7px 9px;color:var(--gold);font-size:10px;white-space:nowrap}.status-chip.playing{color:#62dec0;border-color:#62dec088}.status-chip.finished{color:#9db3a5}.directory-empty{padding:36px;display:grid;place-items:center;gap:5px;color:#c6d5c9;text-align:center}.directory-empty>span{color:var(--gold);font-size:28px}.directory-empty p{color:#90a99b;font-size:12px}.privacy-choice{display:flex!important;align-items:center;gap:10px;margin:8px 0!important}.privacy-choice input{width:17px!important;height:17px!important;margin:0!important;accent-color:var(--gold)}.entry-role{display:flex;gap:8px}.entry-role button{flex:1}.entry-panel{max-height:calc(100dvh - 32px);overflow:auto}.entry-panel .room-options label{margin:8px 0}.entry-panel .room-options select{height:42px}.mission-game{max-width:1620px}.mission-game .game-topline{padding:0 2px 12px}.spectator-badge{font:10px DM Sans,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#d5b16d;border:1px solid #d5b16d7d;padding:5px 8px;margin-left:12px;vertical-align:middle}.leave-table{padding:8px 2px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start;min-width:0;flex:1}.chat-is-open .game-layout{grid-template-columns:minmax(0,1fr) 335px}.game-core{min-width:0;display:flex;flex-direction:column;align-items:stretch}.game-core .scorebar{max-width:100%}.mission-table{flex:none;min-height:390px;height:clamp(390px,44vw,520px);max-height:none;isolation:isolate;animation:room-appear .68s both}.mission-table .table-rim{inset:10% 9% 8%;transform:perspective(1300px) rotateX(7deg);background:radial-gradient(ellipse at 43% 28%,#1d614b,#0e3c2e 47%,#0b2d24 76%,#051a15);border:11px solid #4c3821;box-shadow:0 0 0 2px #e2bd77,0 0 0 10px #12231b,0 0 0 13px #8d6635,0 20px 0 -4px #24190f,0 42px 60px #000b,inset 0 0 90px #020e0b,inset 0 12px 35px #73d1a51d}.mission-table .table-rim:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(ellipse at 50% 12%,#f3d79f15,transparent 55%);pointer-events:none}.mission-table .felt-pattern{opacity:.4;background-image:repeating-linear-gradient(28deg,#ffffff04 0 1px,transparent 1px 4px),url("data:image/svg+xml,%3Csvg viewBox='0 0 90 90' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.13'/%3E%3C/svg%3E")}.mission-table .table-insignia{color:#d5b16d12;text-shadow:0 1px #0005}.mission-table .player-station{animation:seat-appear .4s both;animation-delay:calc(var(--seat-index) * 90ms);border-radius:24px;background:linear-gradient(130deg,#10342a,#061914)}.mission-table .player-station.playing{box-shadow:0 0 0 1px #f0d39a,0 0 24px #d5b16d7a,0 9px 20px #0009}.mission-table .station-badge{flex:none;border-radius:50%;background:#d5b16d15;box-shadow:inset 0 1px #fff2,0 0 14px #d5b16d22}.table-center{z-index:3}.contract-plaque{position:absolute;z-index:4;top:17%;left:50%;transform:translate(-50%);width:min(290px,44%);min-height:82px;padding:10px 13px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(150deg,#14372bee,#071c17ee);border:1px solid #d5b16d9c;box-shadow:0 5px 18px #0009,0 0 18px #d5b16d22,inset 0 1px #fff2;animation:contract-arrive .35s both}.contract-plaque span{color:#d5b16d;font-size:9px;letter-spacing:.22em;font-weight:700}.contract-plaque strong{font:clamp(20px,2.4vw,30px) Italiana,Georgia,serif;color:#f7edda;margin:3px 0;white-space:nowrap}.contract-plaque small{font-size:10px;color:#d3dfd4}.contract-plaque em{font-style:normal;font-size:9px;color:#ffe0a4;letter-spacing:.18em;padding-top:4px}.contract-plaque.provisional{border-color:#d5b16d60;opacity:.95}.contract-plaque.final{box-shadow:0 6px 20px #0009,0 0 26px #d5b16d48,inset 0 1px #fff3}.mission-table .played-card{z-index:5;width:73px;height:102px;animation:play-move .36s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--play-order) * 35ms)}.mission-table .played-card.opposite{top:44%;left:50%}.mission-table .played-card.self{bottom:10%;left:50%}.mission-table .played-card.left{top:60%;left:25%}.mission-table .played-card.right{top:60%;right:25%}.mission-table .card-face{box-shadow:0 12px 17px #0008,0 1px 2px #fff7}.mission-table .played-card .card-face{pointer-events:none}.game-core .action-area{min-height:0;gap:12px;padding-bottom:12px}.auction-panel{width:min(100%,710px);padding:14px 17px;border:1px solid #d5b16d42;background:#081f19dd;box-shadow:0 12px 35px #0005}.auction-title{display:flex;flex-wrap:wrap;gap:8px 15px;align-items:center}.auction-title strong{font-size:13px;font-weight:500;color:#f6eacb}.auction-history{display:flex;gap:6px;overflow-x:auto;padding:10px 0 12px;scrollbar-width:thin}.auction-history span{flex:none;padding:6px 9px;background:#174434;border:1px solid #d5b16d29;color:#d1e1d1;font-size:10px}.auction-history b{color:var(--gold)}.auction-step{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#d5b16d;margin:4px 0 9px}.auction-step-row{display:flex;align-items:center;justify-content:space-between;margin-top:12px}.suit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.suit-choice{min-height:66px;border:1px solid #d5b16d66;background:linear-gradient(#12362b,#09241d);color:#f3eee2;display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;box-shadow:0 5px 12px #0005;transition:transform .15s,box-shadow .15s,border-color .15s}.suit-choice span{font:30px Georgia,serif}.suit-H,.suit-D{color:#ffb6a7}.suit-choice:hover,.suit-choice.selected{transform:translateY(-3px);border-color:#f4d496;box-shadow:0 7px 20px #d5b16d3b}.amount-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.amount-grid button{min-height:44px;border:1px solid #d5b16d70;background:#14392d;color:#f5ead5;font-weight:700;font-size:13px}.amount-grid button.selected{background:var(--gold);color:#0b261d}.amount-grid button:disabled{opacity:.3;text-decoration:line-through}.bid-confirm{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.bid-confirm span{color:#e9dab6;font-size:12px}.auction-alternatives{display:flex;gap:8px;flex-wrap:wrap;margin-top:13px}.auction-wait{color:#b7c8ba;font-size:12px}.game-core .hand-fan{padding-top:15px}.hand-card{transform:rotate(calc((var(--i) - (var(--n) - 1) / 2) * 2.2deg)) translateY(calc(abs(var(--i) - (var(--n) - 1)/2)*2px));transform-origin:center 160%;animation:none}.hand-card .card-face:not(:disabled){outline:1px solid #d5b16d99;outline-offset:2px}.hand-card .card-face:not(:disabled):active{transform:translateY(-10px) scale(.98)}.spectator-note{font-size:12px;color:#d5b16d}.score-pop .score-side strong{animation:score-bloom .8s both}.result-panel{margin:12px auto}.result-panel.victory{animation:score-bloom .8s both}.chat-panel{min-width:0;height:min(670px,calc(100vh - 170px));min-height:410px;display:flex;flex-direction:column;background:linear-gradient(#0e2c23,#081b16);border:1px solid #d5b16d66;box-shadow:0 14px 36px #0007;padding:17px;animation:chat-enter .23s both}.chat-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid #d5b16d44;padding-bottom:12px}.chat-head h3{font:27px Italiana,serif;margin:4px 0}.chat-head small{font:10px DM Sans,sans-serif;color:#163225;background:var(--gold);border-radius:50%;padding:3px 6px}.chat-fairplay{font-size:10px;color:#b5c8b6;line-height:1.5}.chat-messages{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;margin:9px 0}.chat-panel .chat-line{display:flex;flex-direction:column;gap:4px;padding:9px 0}.chat-line>div{display:flex;gap:7px;align-items:center}.chat-line b{min-width:0}.chat-line em,.presence-list em{font-style:normal;font-size:9px;border:1px solid #d5b16d77;padding:2px 4px;color:var(--gold)}.chat-line time{margin-left:auto;color:#7d9e8b;font-size:9px}.chat-form{min-height:44px}.chat-length{color:#8caa96;text-align:right;margin-top:4px;font-size:9px}.unread-button{border:1px solid var(--gold);color:var(--gold);background:#0c2b20;padding:7px;font-size:10px}.game-footer{gap:12px;flex-wrap:wrap}.voice-controls{flex-wrap:wrap;justify-content:flex-end}.voice-state{font-size:10px;color:#c9d8cb}.voice-state.online{color:#58e2b8}.voice-mic,.voice-listen{display:inline-flex;align-items:center;gap:5px;border:1px solid #d5b16d77;background:#12382b;color:#e7dfd0;padding:7px 9px;min-height:38px;font-size:10px}.voice-mic:has(svg.lucide-mic){border-color:#5bdbad}.voice-error{color:#ffbca8;font-size:10px}.voice-unavailable button{border:0;background:none;color:var(--gold);text-decoration:underline}.presence-list{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:10px 0;font-size:10px;color:#a9c0af}.presence-list>div{position:relative;border:1px solid #d5b16d40;padding:6px 8px;color:#e5efdf}.presence-list>div.here:before{content:"●";color:#55d9aa;margin-right:5px}.presence-list>div.away{opacity:.55}.moderation-menu{display:none;position:absolute;bottom:100%;left:0;z-index:20;min-width:120px;padding:5px;background:#0d2d23;border:1px solid #d5b16d88;box-shadow:0 5px 12px #0008}.presence-list>div:hover .moderation-menu,.presence-list>div:focus-within .moderation-menu{display:grid}.moderation-menu button{border:0;background:none;color:#f0e6d0;text-align:left;padding:5px;font-size:10px}.moderation-menu button:hover{background:#1d513e}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.deal-sequence,.trick-collect{position:absolute;inset:0;z-index:9;pointer-events:none}.deal-sequence img{position:absolute;top:50%;left:50%;width:24px;height:34px;opacity:0;animation:deal-to-seat .4s cubic-bezier(.2,.75,.3,1) both;animation-delay:calc(var(--deal-index) * 27ms)}.deal-sequence img:nth-child(4n+1){--deal-x: -200px;--deal-y: -15px}.deal-sequence img:nth-child(4n+2){--deal-x: 0px;--deal-y: -130px}.deal-sequence img:nth-child(4n+3){--deal-x: 200px;--deal-y: -15px}.deal-sequence img:nth-child(4n){--deal-x: 0px;--deal-y: 140px}.event-flash{position:absolute;z-index:12;top:48%;left:50%;transform:translate(-50%,-50%);padding:12px 22px;background:#0a271ddf;border:1px solid #f4d593;box-shadow:0 0 36px #d5b16d66;color:#f6dfab;font:28px Italiana,serif;white-space:nowrap;pointer-events:none;animation:event-bloom .85s both}.collect-card{position:absolute;width:73px;height:102px;top:55%;left:50%;animation:collect-trick .55s ease-in both}.collect-card.self{translate:0 60px}.collect-card.opposite{translate:0 -60px}.collect-card.left{translate:-100px 0}.collect-card.right{translate:100px 0}.victory-sparks{position:absolute;z-index:10;inset:20%;pointer-events:none}.victory-sparks i{position:absolute;left:50%;top:50%;width:4px;height:4px;border-radius:50%;background:var(--gold);animation:spark-fly .9s both;animation-delay:calc(var(--spark) * 35ms);--angle: calc(var(--spark) * 22.5deg)}@keyframes room-appear{0%{opacity:0;transform:scale(.94) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes seat-appear{0%{opacity:0;scale:.85}to{opacity:1;scale:1}}@keyframes contract-arrive{0%{opacity:0;translate:0 -15px;scale:.9}to{opacity:1;translate:0 0;scale:1}}@keyframes play-move{0%{opacity:0;scale:.75;translate:0 30px}to{opacity:1;scale:1;translate:0 0}}@keyframes deal-to-seat{0%{opacity:1;transform:translate(0) scale(1.5) rotate(-15deg)}85%{opacity:1}to{opacity:0;transform:translate(var(--deal-x),var(--deal-y)) scale(.8) rotate(7deg)}}@keyframes collect-trick{0%{opacity:1;scale:1}70%{opacity:1}to{opacity:0;scale:.25;translate:var(--collect-x, 0) var(--collect-y, -100px)}}@keyframes event-bloom{0%{opacity:0;scale:.85}20%{opacity:1;scale:1.05}70%{opacity:1;scale:1}to{opacity:0;scale:1.1}}@keyframes score-bloom{50%{text-shadow:0 0 20px #d5b16d;scale:1.1}}@keyframes chat-enter{0%{opacity:0;translate:10px 0}to{opacity:1;translate:0 0}}@keyframes spark-fly{0%{opacity:1;transform:rotate(var(--angle)) translate(0)}to{opacity:0;transform:rotate(var(--angle)) translate(140px)}}html[data-quality=low] .mission-table .table-rim{box-shadow:0 0 0 2px #d5b16d,0 18px 30px #0008}html[data-quality=low] .mission-table .felt-pattern{background-image:none}html[data-quality=low] .ambient{filter:none;opacity:.12}html[data-quality=low] .victory-sparks{display:none}@media(max-width:1100px){.chat-is-open .game-layout{grid-template-columns:minmax(0,1fr)}.chat-panel{height:300px;min-height:300px}.mission-home .hero-orbit{right:-220px}.mission-table{height:430px}}@media(max-width:700px){.mission-home{padding:54px 17px 70px;gap:34px}.mission-home h1{font-size:clamp(58px,12vw,78px)}.mission-home .hero-orbit{top:220px;right:-360px;opacity:.23}.directory{padding:16px}.directory-head{align-items:start}.directory-head h2{font-size:34px}.directory-filters{width:100%}.directory-filters select{width:50%;min-width:0}.table-list-card{grid-template-columns:38px minmax(0,1fr) auto;gap:9px;padding:12px}.table-list-icon{width:37px;height:37px;font-size:22px}.table-list-card .secondary-button{grid-column:2/4;justify-self:stretch}.table-list-main strong{font-size:19px}.table-list-main span{font-size:10px}.status-chip{font-size:9px}.mission-game{padding:12px 9px}.mission-game .game-topline{align-items:start}.mission-game .game-topline h2{font-size:25px}.mission-game .panel-kicker{letter-spacing:.12em}.leave-table{font-size:10px}.mission-table{height:345px;min-height:345px}.mission-table .table-rim{inset:12% 2% 9%;border-width:6px;box-shadow:0 0 0 2px #e2bd77,0 0 0 6px #12231b,0 0 0 8px #8d6635,0 22px 32px #000a}.contract-plaque{top:24%;width:49%;min-height:65px;padding:7px}.contract-plaque span{font-size:7px}.contract-plaque strong{font-size:18px}.contract-plaque small,.contract-plaque em{font-size:7px}.mission-table .played-card,.collect-card{width:48px;height:68px}.mission-table .played-card.opposite{top:48%}.mission-table .played-card.left{left:13%;top:63%}.mission-table .played-card.right{right:13%;top:63%}.mission-table .played-card.self{bottom:15%}.auction-panel{padding:12px}.auction-title strong{font-size:11px}.suit-grid{grid-template-columns:repeat(2,1fr)}.suit-choice{min-height:50px}.suit-choice span{font-size:25px}.amount-grid{grid-template-columns:repeat(3,1fr)}.bid-confirm{flex-wrap:wrap}.bid-confirm button{width:100%}.auction-alternatives button{min-height:44px}.hand-card{transform:none}.game-footer{padding-bottom:env(safe-area-inset-bottom)}.chat-panel{padding:12px}.presence-list{padding-bottom:env(safe-area-inset-bottom)}}@media(max-width:450px){.mission-game .topline-controls{gap:4px}.mission-game .code-pill{max-width:87px;overflow:hidden;text-overflow:ellipsis}.mission-game .leave-table{padding:4px}.mission-table .player-station{min-width:0}.mission-table .station-info strong{max-width:54px}.mission-table .player-station.left{left:-3px}.mission-table .player-station.right{right:-3px}.score-side{min-width:90px}.score-center{min-width:75px}.voice-controls{justify-content:center}.voice-state{width:100%}}@media(prefers-reduced-motion:reduce){.mission-table,.mission-table .player-station,.mission-table .played-card,.contract-plaque,.deal-sequence img,.collect-card,.event-flash,.victory-sparks i,.score-pop .score-side strong,.result-panel.victory,.chat-panel{animation:none!important}.deal-sequence,.trick-collect,.victory-sparks{display:none}}html[data-motion=off] .deal-sequence,html[data-motion=off] .trick-collect,html[data-motion=off] .victory-sparks{display:none}.mission-table .player-station.speaking .station-badge{box-shadow:0 0 0 4px #4ce2b255,0 0 18px #4ce2b2;border-color:#4ce2b2}.presence-list>div.speaking{border-color:#4ce2b2;box-shadow:0 0 12px #4ce2b255}.hand-card .card-face.blocked{filter:brightness(.85) saturate(.9)}.unread-count{position:absolute;top:-6px;right:-6px;display:grid;place-items:center;min-width:17px;height:17px;border-radius:50%;background:var(--gold);color:#0b261d;font-size:10px}@media(max-width:450px){.mission-game .game-topline{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.mission-game .game-topline h2{white-space:nowrap;font-size:25px}.mission-game .topline-controls{justify-content:flex-start}.mission-game .game-topline .panel-kicker{display:block;max-width:100%;overflow-wrap:anywhere}}.table-loading{min-height:calc(100vh - 86px);display:grid;align-content:center;justify-items:center;gap:14px;text-align:center;padding:25px}.table-loading h2{font:clamp(35px,6vw,68px) Italiana,Georgia,serif;margin:0}.table-loading p{color:#a4beac;font-size:12px}.loading-felt{width:min(74vw,560px);height:220px;border:12px solid #70522c;border-radius:50%;background:radial-gradient(ellipse,#185744,#07251b);box-shadow:0 0 0 2px var(--gold),0 18px 45px #000a;position:relative}.loading-felt i{position:absolute;display:block;width:28px;height:38px;background:url(/card-back.svg) center/contain;top:50%;left:50%;transform:translate(-50%,-50%);opacity:.75}.loading-felt i:nth-child(2){translate:-35px -14px}.loading-felt i:nth-child(3){translate:35px -14px}.loading-felt i:nth-child(4){translate:0 30px}.mission-table .player-station.bid-glow{border-color:#f1cc81;box-shadow:0 0 25px #edc97888,0 9px 20px #0009}.deal-sequence img.deal-to-self{--deal-x: 0px;--deal-y: 145px}.deal-sequence img.deal-to-opposite{--deal-x: 0px;--deal-y: -140px}.deal-sequence img.deal-to-left{--deal-x: -220px;--deal-y: -5px}.deal-sequence img.deal-to-right{--deal-x: 220px;--deal-y: -5px}.mission-table .played-card.self{--from-x: 0px;--from-y: 145px}.mission-table .played-card.opposite{--from-x: 0px;--from-y: -145px}.mission-table .played-card.left{--from-x: -180px;--from-y: 0px}.mission-table .played-card.right{--from-x: 180px;--from-y: 0px}@keyframes play-move{0%{opacity:0;scale:.75;translate:var(--from-x) var(--from-y)}to{opacity:1;scale:1;translate:0 0}}html:has(body.table-active),body.table-active,body.table-active #root{height:100%;overflow:hidden}.app-shell.in-table{height:100vh;height:100dvh;height:var(--table-visible-height, 100dvh);min-height:0;display:grid;grid-template-rows:48px minmax(0,1fr);overflow:hidden}.in-table .site-header{width:100%;max-width:none;height:48px;padding:0 16px}.in-table .brand-mark{width:30px;height:30px;font-size:14px}.in-table .brand{font-size:10px;gap:8px}.in-table .header-actions{gap:12px}.mission-game{width:100%;max-width:1800px;height:100%;min-height:0;overflow:hidden;padding:5px 14px max(5px,env(safe-area-inset-bottom));display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:5px}.mission-game .game-topline{min-height:39px;min-width:0;padding:0 2px;gap:8px}.mission-game .game-topline>div:first-child{min-width:0}.mission-game .game-topline .panel-kicker{display:block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:8px}.mission-game .game-topline h2{font-size:23px;margin:1px 0 0;white-space:nowrap}.mission-game .topline-controls{flex:none;gap:5px}.mission-game .code-pill,.mission-game .icon-button{height:34px}.game-layout,.chat-is-open .game-layout{min-height:0;min-width:0;height:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:stretch}.chat-is-open .game-layout{grid-template-columns:minmax(0,1fr) minmax(275px,315px)}.game-core{min-height:0;min-width:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr) auto;align-items:stretch;overflow:hidden}.phase-lobby .game-core{grid-template-rows:auto minmax(0,1fr) auto}.phase-lobby .lobby-heading{margin:0 auto 4px}.phase-lobby .lobby-heading h3{font-size:clamp(25px,3.2vw,38px);margin:3px 0}.phase-lobby .lobby-heading p{margin:0;font-size:11px}.phase-lobby .lobby-grid{width:100%;height:100%;min-height:0;margin:0 auto;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.phase-lobby .lobby-seat{min-height:0;padding:5px}.phase-lobby .lobby-actions{width:100%;min-height:48px;margin:2px auto;align-items:center}.phase-lobby .invite-box{min-width:0}.game-core .scorebar{height:43px;min-height:0;width:100%;margin:0 auto;gap:15px}.game-core .score-side strong{font-size:27px;line-height:1}.game-core .score-side span,.game-core .score-center span{font-size:8px}.game-core .score-progress{margin-top:4px}.mission-table{width:100%;height:100%;min-height:0;max-height:none;align-self:stretch;overflow:hidden}.mission-table .table-rim{inset:13% 9% 9%}.mission-table .player-station{padding:5px 8px;min-width:0}.mission-table .station-badge{width:27px;height:27px;font-size:14px}.mission-table .station-info strong{font-size:11px}.mission-table .station-info span{font-size:8px}.contract-plaque{top:22%;min-height:55px;width:min(245px,48%);padding:5px 8px}.contract-plaque strong{font-size:clamp(16px,2vw,23px);margin:0}.contract-plaque span,.contract-plaque small,.contract-plaque em{font-size:8px}.game-core .action-area{width:100%;min-height:0;gap:3px;padding:0;align-items:stretch}.turn-line{min-height:20px;line-height:1;font-size:11px}.auction-panel{width:100%;max-width:none;min-width:0;padding:7px 9px;display:grid;grid-template-columns:minmax(235px,.78fr) minmax(290px,1.22fr);grid-template-areas:"title title" "history history" "step1 step2" "suits amounts" "alternatives confirm";gap:3px 8px;box-shadow:0 5px 20px #0005}.auction-title{grid-area:title;min-width:0;flex-wrap:nowrap;gap:8px}.auction-title strong{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:11px}.auction-history{grid-area:history;min-width:0;padding:1px 0;max-height:25px}.auction-history span{padding:3px 6px;font-size:9px}.auction-panel>.auction-step{grid-area:step1}.auction-step-row{grid-area:step2;min-height:13px;margin:0}.auction-step{font-size:9px;margin:0}.auction-step-row .quiet-link{font-size:9px}.suit-grid{grid-area:suits;min-width:0;gap:4px}.suit-choice{min-height:62px;gap:2px;flex-direction:column;font-size:10px}.suit-choice span{font-size:23px;line-height:1}.amount-grid{grid-area:amounts;min-width:0;gap:3px}.amount-grid button{min-height:31px;font-size:11px}.auction-alternatives{grid-area:alternatives;align-items:stretch;gap:4px;margin:0;flex-wrap:nowrap}.auction-alternatives button{min-height:38px;padding:0 9px}.bid-confirm{grid-area:confirm;min-width:0;gap:5px;margin:0}.bid-confirm span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.bid-confirm button{min-height:38px;padding:0 10px;flex:none}.auction-wait{grid-column:1 / -1;margin:4px 0}.game-core .hand-fan{--card-w: clamp(54px, min(6.2vw, 9vh), 80px);width:100%;height:calc(var(--card-w) * 1.39 + 2px);padding:2px 5px 0;overflow:visible}.hand-card{width:var(--card-w);height:calc(var(--card-w) * 1.39);flex:0 0 var(--card-w);margin-left:-18px;transform:none}.hand-card:first-child{margin-left:0}.chat-panel{height:100%;min-height:0;min-width:0;padding:10px;overflow:hidden;animation:chat-enter-contained .2s both}@keyframes chat-enter-contained{0%{opacity:0}to{opacity:1}}.chat-head{padding-bottom:5px}.chat-head h3{font-size:22px}.chat-contract{display:block;color:var(--gold);font-size:9px;line-height:1.2}.chat-fairplay{margin:6px 0}.chat-panel>.quiet-link{align-self:start}.chat-messages{overscroll-behavior:contain}.chat-form{flex:none;min-height:44px}.chat-form button{width:44px}.chat-error{color:#ffbca8;font-size:10px}.chat-line.system{color:#b6cdbd;opacity:.8;font-style:italic}.chat-line.system b{color:#9db59e}.game-footer{min-height:43px;margin:0;padding:3px 0 0;border-top:1px solid #d5b16d25;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;position:relative}.in-table .fairplay{display:none}.voice-controls{display:flex;flex-wrap:nowrap;min-width:0;align-items:center;gap:5px}.voice-state{white-space:nowrap;min-width:93px;font-size:10px}.voice-mic,.voice-listen{min-height:36px;white-space:nowrap;padding:4px 8px;font-size:10px}.voice-retry{width:36px;height:36px;flex:none;display:grid;place-items:center;border:1px solid #d5b16d77;color:var(--gold);background:#12382b}.voice-label{white-space:nowrap}.voice-diagnostic{max-width:260px;font-size:10px;color:#ffbca8}.voice-error{max-width:200px;max-height:36px;overflow:hidden}.voice-participants{bottom:42px;max-height:min(300px,55dvh);overflow-y:auto}.presence-drawer{position:relative;flex:none;font-size:10px}.presence-drawer summary{display:grid;place-items:center;cursor:pointer;list-style:none;min-height:36px;padding:0 8px;border:1px solid #d5b16d77;background:#12382b;color:#e7dfd0;white-space:nowrap}.presence-drawer summary::-webkit-details-marker{display:none}.presence-list{position:absolute;z-index:30;right:0;bottom:42px;display:grid;width:min(300px,90vw);max-height:50dvh;overflow:auto;margin:0;padding:10px;background:#09261d;border:1px solid #d5b16d77;box-shadow:0 10px 25px #0009}.presence-list>div{padding:7px}.moderation-menu{inset:0 100% auto auto}@media(max-width:1100px){.game-layout,.chat-is-open .game-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto;gap:4px}.game-core{display:contents}.game-core .scorebar{grid-row:1;height:35px}.mission-table,.chat-panel{grid-row:2;grid-column:1;min-height:0;height:100%}.chat-is-open .mission-table{display:none}.game-core .action-area{grid-row:3;grid-column:1}.phase-lobby .game-core{display:contents}.phase-lobby .lobby-heading{grid-row:1;grid-column:1}.phase-lobby .lobby-grid{grid-row:2;grid-column:1}.phase-lobby .lobby-actions{grid-row:3;grid-column:1}.phase-lobby.chat-is-open .lobby-grid{display:none}.phase-paused .game-layout{display:block;overflow:auto}.phase-paused .game-core{display:flex;overflow:visible}}@media(max-width:700px){.app-shell.in-table{grid-template-rows:40px minmax(0,1fr)}.in-table .site-header{height:40px;padding:0 8px}.in-table .brand{font-size:9px;letter-spacing:.08em}.in-table .brand-mark{width:27px;height:27px}.in-table .header-actions{gap:7px}.in-table .header-link svg{width:15px;height:15px}.mission-game{padding:3px 6px max(3px,env(safe-area-inset-bottom));gap:3px}.mission-game .game-topline{min-height:35px;display:flex;align-items:center}.mission-game .game-topline h2{font-size:20px}.mission-game .game-topline .panel-kicker{font-size:7px}.mission-game .code-pill{display:none}.mission-game .icon-button{width:33px;height:33px}.mission-game .leave-table{font-size:9px}.game-core .scorebar{height:29px;gap:5px}.game-core .score-side{min-width:65px}.game-core .score-side strong{font-size:20px}.game-core .score-side span,.game-core .score-center span{font-size:7px}.game-core .score-center{min-width:70px}.mission-table .table-rim{inset:16% 4% 8%;border-width:5px}.phase-lobby .lobby-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.phase-lobby .lobby-seat{min-height:0}.phase-lobby .lobby-seat strong{font-size:10px}.phase-lobby .lobby-actions{gap:5px}.phase-lobby .lobby-actions .primary-button,.phase-lobby .lobby-actions .secondary-button{min-height:40px;padding:0 7px;font-size:10px}.mission-table .player-station{padding:2px 4px;gap:3px}.mission-table .station-badge{width:20px;height:20px;font-size:11px}.mission-table .station-info strong{max-width:53px;font-size:8px}.mission-table .station-info span{font-size:6px}.mission-table .back-stack{width:15px;height:21px}.contract-plaque{top:26%;width:48%;min-height:46px;padding:3px}.contract-plaque strong{font-size:15px}.contract-plaque span,.contract-plaque small,.contract-plaque em{font-size:6px;letter-spacing:.07em}.mission-table .played-card,.collect-card{width:39px;height:55px}.turn-line{min-height:17px;gap:3px;font-size:9px}.turn-line>span:last-child{width:auto}.auction-panel{grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "history" "step1" "suits" "step2" "amounts" "confirm" "alternatives";gap:2px;padding:4px 6px}.auction-title{min-height:14px}.auction-title strong{font-size:9px}.auction-title .panel-kicker{font-size:8px}.auction-history{max-height:17px}.auction-history span{padding:1px 5px;font-size:8px}.auction-panel>.auction-step,.auction-step-row{display:none}.suit-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:3px}.suit-choice{min-height:44px;flex-direction:row;gap:2px;font-size:9px}.suit-choice span{font-size:19px}.amount-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.amount-grid button{min-height:44px;font-size:10px}.bid-confirm{min-height:44px;flex-wrap:nowrap}.bid-confirm span{font-size:9px}.bid-confirm button{width:auto;min-width:118px;min-height:44px;font-size:10px}.auction-alternatives button{min-height:44px}.game-core .hand-fan{--card-w: calc((100vw + 79px)/8) ;height:calc(var(--card-w) * 1.39 + 2px);padding:1px 0}.hand-card{margin-left:-15px}.chat-panel{padding:5px 7px}.chat-head{padding:0}.chat-head h3{font-size:18px;margin:0}.chat-head .panel-kicker,.chat-fairplay,.chat-panel>.quiet-link,.chat-length{display:none}.chat-messages{margin:2px 0}.chat-panel .chat-line{padding:3px 0}.chat-form{min-height:44px}.game-footer{min-height:47px;gap:3px;padding-top:2px}.voice-controls{flex:1;justify-content:space-between;flex-wrap:wrap;gap:2px}.voice-state{min-width:0;width:65px;font-size:9px;line-height:1.1;white-space:normal}.voice-mic,.voice-listen{min-height:44px;padding:4px;gap:2px;font-size:9px}.voice-mic svg,.voice-listen svg{width:14px;height:14px}.voice-retry{width:35px;height:44px}.voice-label{display:none}.voice-diagnostic,.voice-error{display:block;flex-basis:100%;max-width:none;max-height:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-size:8px}.presence-drawer summary{min-height:44px;padding:0 4px;font-size:9px}.voice-participants{width:min(280px,95vw)}}@media(max-height:450px)and (orientation:landscape){.app-shell.in-table{grid-template-rows:31px minmax(0,1fr)}.in-table .site-header{height:31px;padding:0 7px}.in-table .brand-mark{width:24px;height:24px;font-size:12px}.in-table .header-link{font-size:0}.in-table .header-link svg{width:14px;height:14px}.mission-game{padding:2px 5px max(2px,env(safe-area-inset-bottom));gap:2px}.mission-game .game-topline{min-height:29px}.mission-game .game-topline .panel-kicker{display:none}.mission-game .game-topline h2{font-size:18px}.mission-game .code-pill{display:none}.mission-game .icon-button{width:27px;height:27px}.game-layout,.chat-is-open .game-layout{grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);grid-template-rows:20px minmax(0,1fr);gap:2px 5px}.game-core{display:contents}.game-core .scorebar{grid-column:1 / -1;grid-row:1;height:20px}.game-core .score-side strong{font-size:17px}.game-core .score-side span,.game-core .score-center span{font-size:6px}.mission-table,.chat-panel{grid-column:1;grid-row:2;min-height:0;height:100%}.chat-is-open .mission-table{display:none}.game-core .action-area{grid-column:2;grid-row:2;min-height:0}.mission-table .player-station{padding:1px 3px}.mission-table .station-badge{width:18px;height:18px}.mission-table .station-info strong{font-size:8px}.mission-table .station-info span{font-size:6px}.mission-table .table-rim{inset:16% 4% 8%}.mission-table .player-station.self{bottom:8px}.contract-plaque{top:25%;min-height:42px;width:57%}.contract-plaque strong{font-size:14px}.turn-line{min-height:15px}.auction-panel{grid-template-columns:minmax(0,.38fr) minmax(0,.62fr);grid-template-areas:"title title" "history history" "suits amounts" "alternatives confirm";gap:2px 3px;padding:3px}.auction-title{min-height:12px}.auction-title strong{font-size:8px}.auction-history{max-height:14px}.auction-history span{padding:0 4px;font-size:7px}.auction-panel>.auction-step,.auction-step-row{display:none}.suit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px}.suit-choice{min-height:34px;font-size:8px}.suit-choice span{font-size:15px}.amount-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px}.amount-grid button{min-height:34px;padding:0;font-size:9px}.bid-confirm{min-height:35px}.bid-confirm span{display:none}.bid-confirm button{width:100%;min-width:0;min-height:35px;font-size:9px;padding:0 2px}.auction-alternatives{align-items:stretch}.auction-alternatives button{min-height:35px;padding:0 3px;font-size:8px}.game-core .hand-fan{--card-w: 45px;height:64px;padding:0}.hand-card{margin-left:-8px}.game-footer{min-height:39px}.voice-mic,.voice-listen,.voice-retry,.presence-drawer summary{min-height:36px;height:36px}.voice-state{width:auto;min-width:72px}.voice-label{display:inline-flex}.voice-diagnostic,.voice-error{font-size:8px}.chat-head .panel-kicker,.chat-fairplay,.chat-panel>.quiet-link,.chat-length{display:none}.chat-head h3{font-size:17px;margin:0}.chat-form{min-height:36px}.phase-lobby .game-layout{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr) auto}.phase-lobby .game-core{display:contents}.phase-lobby .lobby-heading h3{font-size:21px}.phase-lobby .lobby-heading p{display:none}.phase-lobby .lobby-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.phase-lobby .lobby-actions{min-height:36px}.phase-paused .game-layout{display:block;overflow:auto}.phase-paused .game-core{display:flex}}@media(prefers-reduced-motion:reduce){.mission-game .chat-panel,.mission-game .mission-table{animation:none}}
