@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-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-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--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)}}@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,ui-sans-serif, system-ui, 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{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}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.start\!{inset-inline-start:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.overline{text-decoration-line:overline}.blur{--tw-blur:blur(8px);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,)}.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{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#101919;--ink-soft:#1a2826;--cream:#f4efe3;--paper:#fffdf6;--red:#d64635;--red-dark:#a72f25;--green:#1f6a55;--green-light:#8cae87;--gold:#d6a646;--line:#f4efe324;--muted:#899b96}*{box-sizing:border-box}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}html{background:var(--ink)}body{background:var(--ink);color:var(--cream);margin:0;font-family:Pretendard,Noto Sans KR,Malgun Gothic,sans-serif}button,input{font:inherit}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #d6a646b3}.app-shell{background:radial-gradient(circle at 72% 12%, #32675138, transparent 31%), var(--ink);min-height:100vh}.app-shell.is-table-play{background:#183a31}.topbar{border-bottom:1px solid var(--line);z-index:20;grid-template-columns:1fr auto 1fr;align-items:center;height:86px;padding:0 clamp(22px,4vw,72px);display:grid;position:relative}.brand-button{cursor:pointer;color:inherit;background:0 0;border:0;justify-self:start;padding:0;text-decoration:none}.brand{text-align:left;align-items:center;gap:12px;display:flex}.brand-mark{width:34px;height:34px;color:var(--cream);flex-shrink:0;display:block}.brand strong{color:var(--paper);letter-spacing:-.04em;font-size:21px;display:block}.brand small{color:var(--muted);letter-spacing:.23em;margin-top:2px;font-size:8px;display:block}.legal-chip{border:1px solid var(--line);color:#bdc9c4;letter-spacing:.02em;background:#ffffff06;border-radius:999px;padding:8px 14px;font-size:12px}.green-dot{background:#62c592;border-radius:50%;width:6px;height:6px;margin-right:6px;display:inline-block;box-shadow:0 0 0 3px #62c5921f}.account-strip{justify-self:end;align-items:center;gap:18px;display:flex}.balance-box{text-align:right;border-right:1px solid var(--line);padding-right:18px}.balance-box small{color:var(--muted);margin-bottom:3px;font-size:10px;display:block}.balance-box strong{font-variant-numeric:tabular-nums;font-family:Georgia,Malgun Gothic,serif;font-size:19px}.balance-box i{color:#b7c2bd;margin-left:3px;font-family:inherit;font-size:11px;font-style:normal}.avatar-button{cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;display:flex}.avatar-button span,.player-badge>span{width:33px;height:33px;color:var(--cream);background:#30443f;border:1px solid #ffffff1a;border-radius:50%;place-items:center;font-weight:800;display:grid}.avatar-button b{font-size:13px}.lobby{max-width:1500px;margin:auto;padding:0 clamp(22px,4vw,72px) 60px}.lobby-hero{border-bottom:1px solid var(--line);grid-template-columns:1.08fr .92fr;align-items:center;min-height:455px;display:grid;position:relative;overflow:hidden}.hero-copy{z-index:3;padding:68px 0 60px;position:relative}.eyebrow{color:var(--gold);letter-spacing:.19em;text-transform:uppercase;margin:0 0 15px;font-size:10px;font-weight:800}.hero-copy h1,.auth-card h1{color:var(--paper);letter-spacing:-.06em;margin:0;font-family:Georgia,Batang,serif;font-size:clamp(46px,5vw,72px);font-weight:500;line-height:1.08}.hero-copy h1 em,.auth-card h1 em{color:var(--red);font-style:normal}.hero-copy>p:not(.eyebrow){color:#a5b2ad;max-width:560px;margin:24px 0 30px;font-size:15px;line-height:1.75}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.primary-button{background:var(--red);color:#fff;cursor:pointer;border:0;border-radius:3px;padding:15px 19px;font-size:13px;font-weight:800;transition:transform .2s,background .2s;box-shadow:0 9px 30px #d6463533}.primary-button:hover{background:#e55442;transform:translateY(-2px)}.primary-button span{margin-left:25px;font-size:18px}.primary-button:disabled,button:disabled{cursor:not-allowed;opacity:.48;transform:none}.text-button{color:#7f918b;cursor:pointer;background:0 0;border:0;font-size:12px}.text-button b{color:#d7dedb;margin-top:3px;display:block}.hero-cards{perspective:900px;height:100%;min-height:390px;position:relative}.red-sun{background:radial-gradient(circle at 40% 35%,#ef6652,#b82d25 67%,#7c211d);border-radius:50%;width:330px;height:330px;position:absolute;top:50%;left:50%;transform:translate(-42%,-50%);box-shadow:0 0 100px #d6463529}.hero-real-card{z-index:2;filter:drop-shadow(0 28px 28px #00000059);position:absolute}.hero-real-card .hwatu-card{width:124px;height:204px;box-shadow:none;border-width:4px;border-radius:9px}.card-one{top:24%;left:18%;transform:rotate(-16deg)translateZ(-30px)}.card-two{z-index:4;top:15%;left:43%;transform:rotate(4deg)translateZ(35px)}.card-three{top:31%;left:65%;transform:rotate(17deg)translateZ(-10px)}.lobby-content{grid-template-columns:minmax(0,1fr) 335px;gap:28px;padding-top:40px;display:grid}.rooms-panel{min-width:0}.section-heading{justify-content:space-between;align-items:end;margin-bottom:18px;display:flex}.section-heading .eyebrow{margin-bottom:5px}.section-heading h2{margin:0;font-family:Georgia,Batang,serif;font-size:24px;font-weight:500}.refresh-button,.quiet-button{border:1px solid var(--line);color:#9aaba5;cursor:pointer;background:0 0;border-radius:3px;padding:8px 11px;font-size:11px}.room-list{gap:9px;display:grid}.room-row{background:#ffffff09;border:1px solid #ffffff13;border-radius:4px;grid-template-columns:44px minmax(0,1fr) 110px 74px;align-items:center;gap:15px;min-height:94px;padding:14px 16px;transition:border .2s,background .2s;display:grid}.room-row:hover{background:#ffffff0d;border-color:#d6a64659}.room-number{color:#62736d;text-align:center;border-right:1px solid var(--line);font-family:Georgia,serif;font-size:25px}.room-main>div{align-items:center;gap:8px;display:flex}.status-pill{border-radius:999px;align-items:center;padding:3px 7px;font-size:9px;font-weight:800;display:inline-flex}.status-waiting{color:#6dd3a1;background:#4bbf851a}.status-playing{color:#e6b764;background:#d6a6461f}.status-finished{color:#9da9a5;background:#ffffff12}.room-code{color:#667671;font-size:9px}.room-mode{color:#c9b07a;letter-spacing:.04em;font-size:8px;font-weight:800}.room-main h3{margin:6px 0 3px;font-size:14px}.room-main p{color:#758680;margin:0;font-size:10px}.room-stake{text-align:right}.room-stake small{color:#758680;font-size:9px;display:block}.room-stake strong{font-family:Georgia,Malgun Gothic,serif;font-size:16px}.join-button{color:#e4bf74;cursor:pointer;background:0 0;border:1px solid #d6a64659;border-radius:3px;padding:10px 8px;font-size:11px;font-weight:800}.join-button:hover:not(:disabled){color:var(--ink);background:var(--gold)}.empty-rooms{text-align:center;border:1px dashed #ffffff1f;border-radius:4px;place-content:center;min-height:280px;display:grid}.empty-rooms span{color:#63736e;background:#ffffff0a;border-radius:50%;place-items:center;width:54px;height:54px;margin:0 auto 14px;font-family:Georgia,serif;font-size:24px;display:grid}.empty-rooms h3{margin:0 0 6px;font-size:15px}.empty-rooms p{color:#6f817a;margin:0;font-size:11px}.lobby-aside{align-content:start;gap:18px;display:grid}.money-card,.promise-card{background:#182523;border:1px solid #ffffff17;border-radius:4px;padding:23px}.money-card{background:linear-gradient(145deg,#244b40,#19352f)}.money-card-top{color:#a9bcb5;justify-content:space-between;font-size:10px;display:flex}.money-card-top i{letter-spacing:.12em;color:#7f9d93;font-size:8px;font-style:normal}.money-card>strong{margin:18px 0 4px;font-family:Georgia,Malgun Gothic,serif;font-size:32px;display:block}.money-card>strong small{margin-left:4px;font-size:13px}.money-card>p{color:#83a096;margin:0 0 18px;font-size:10px}.money-card button{cursor:pointer;background:#ffffff17;border:1px solid #ffffff24;border-radius:3px;width:100%;padding:11px;font-size:11px;font-weight:800}.money-card button span{float:right}.promise-card .eyebrow{margin-bottom:12px}.promise-card h3{margin:0 0 20px;font-family:Georgia,Batang,serif;font-size:19px;font-weight:500;line-height:1.45}.promise-card ul{gap:13px;margin:0;padding:0;list-style:none;display:grid}.promise-card li{color:#899b95;border-top:1px solid var(--line);padding-top:11px;font-size:10px}.promise-card li span{color:var(--gold);margin-right:10px;font-family:Georgia,serif}.site-body{flex-direction:column;min-height:100vh;display:flex}.site-shell{flex-direction:column;flex:1 0 auto;min-height:100vh;display:flex}.site-shell__main{flex:1 0 auto}.site-header{z-index:50;min-height:64px;padding:10px clamp(16px,4vw,40px);padding-top:max(10px, env(safe-area-inset-top));border-bottom:1px solid var(--line);background:#101919f0;justify-content:space-between;align-items:center;gap:12px;display:flex;position:relative}.site-header__brand{color:inherit;flex-shrink:0;min-width:0;text-decoration:none}.site-header__end{flex-shrink:0;align-items:center;gap:10px;display:flex;position:relative}.site-header__nav ul{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.site-header__link{min-height:36px;color:var(--muted);white-space:nowrap;border-radius:8px;align-items:center;padding:6px 10px;font-size:13px;font-weight:700;text-decoration:none;transition:color .2s,background .2s;display:inline-flex}.site-header__link:hover{color:var(--cream);background:#ffffff0d}.site-header__link--active{color:var(--paper);background:#ffffff14}.site-header .locale-switcher{padding-top:0}.site-header__menu-btn{border:1px solid var(--line);width:40px;height:40px;color:var(--cream);cursor:pointer;background:#ffffff0a;border-radius:10px;justify-content:center;align-items:center;margin:0;padding:0;transition:background .2s,border-color .2s,color .2s;display:none}.site-header__menu-btn:hover{color:var(--paper);background:#ffffff14;border-color:#ffffff38}.site-header__menu-btn.is-open{color:var(--paper);background:#d6a6461f;border-color:#d6a64673}.site-header__menu-icon{width:16px;height:12px;display:block;position:relative}.site-header__menu-icon span{background:currentColor;border-radius:999px;width:100%;height:1.5px;transition:transform .22s,opacity .18s,top .22s;display:block;position:absolute;left:0}.site-header__menu-icon span:first-child{top:0}.site-header__menu-icon span:nth-child(2){top:5px}.site-header__menu-icon span:nth-child(3){top:10px}.site-header__menu-btn.is-open .site-header__menu-icon span:first-child{top:5px;transform:rotate(45deg)}.site-header__menu-btn.is-open .site-header__menu-icon span:nth-child(2){opacity:0;transform:scaleX(.4)}.site-header__menu-btn.is-open .site-header__menu-icon span:nth-child(3){top:5px;transform:rotate(-45deg)}.brand-lockup{align-items:center;gap:10px;display:flex}.brand-lockup__text strong{color:var(--paper);letter-spacing:-.02em;white-space:nowrap;font-family:Georgia,Batang,serif;font-size:17px;font-weight:700;line-height:1.15;display:block}.brand-lockup__text small{color:#8a9893;letter-spacing:.32em;margin-top:3px;font-family:Georgia,serif;font-size:8px;display:block}@media (max-width:760px){.site-header{gap:8px;min-height:56px;padding-left:14px;padding-right:12px}.site-header .brand-lockup__text small{display:none}.site-header__end{gap:8px}.site-header__menu-btn{border-radius:9px;width:36px;height:36px;display:inline-flex}.site-header__nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transform-origin:100% 0;background:linear-gradient(#24302efa,#16201ffa);border:1px solid #f4efe329;border-radius:14px;min-width:min(228px,100vw - 28px);padding:8px;animation:.18s ease-out site-header-dropdown-in;display:none;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 40px #0000006b,inset 0 0 0 1px #ffffff08}.site-header__nav.is-open{display:block}.site-header__nav:before{content:"";background:#222d2bfa;border-top:1px solid #f4efe329;border-left:1px solid #f4efe329;width:10px;height:10px;position:absolute;top:-6px;right:14px;transform:rotate(45deg)}.site-header__nav ul{flex-direction:column;align-items:stretch;gap:2px}.site-header__link{letter-spacing:-.01em;border-radius:10px;width:100%;min-height:44px;padding:10px 14px;font-size:14px}.site-header__link--active{color:var(--paper);box-shadow:inset 2px 0 0 var(--gold);background:#d6a64624}.locale-switcher__select{min-height:36px;padding:5px 28px 5px 10px;font-size:12px}}@keyframes site-header-dropdown-in{0%{opacity:0;transform:translateY(-6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.site-header__nav{animation:none}.site-header__menu-icon span{transition:none}}.site-footer{border-top:1px solid var(--line);color:#7a8a85;background:#0000002e;flex-shrink:0;font-size:11px;line-height:1.65}.site-footer__inner{gap:20px;max-width:1100px;margin:0 auto;padding:32px clamp(20px,4vw,48px) 36px;display:grid}.site-footer__top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.site-footer__logo{color:inherit;text-decoration:none}.site-footer__logo .brand-lockup__text strong{font-size:16px}.site-footer__logo .brand-lockup__text small{letter-spacing:.08em}.site-footer__tagline{color:var(--muted);margin:6px 0 0;font-size:12px}.site-footer__nav ul{flex-wrap:wrap;gap:8px 18px;margin:0;padding:0;list-style:none;display:flex}.site-footer__nav a{color:#a8b6b1;font-size:12px;font-weight:700;text-decoration:none}.site-footer__nav a:hover{color:var(--cream);text-underline-offset:2px;text-decoration:underline}.site-footer__notices{border:1px solid var(--line);color:#8a9893;background:#ffffff05;border-radius:10px;gap:4px;padding:14px 16px;font-size:10px;display:grid}.site-footer__notices p{margin:0}.site-footer__business{color:#6f7f7a;gap:4px;font-size:10px;font-style:normal;display:grid}.site-footer__business p{margin:0}.site-footer__business a{color:#8a9893;text-underline-offset:2px;text-decoration:underline}.site-footer__bottom{border-top:1px solid var(--line);color:#5f6f6a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-top:16px;font-size:10px;display:flex}.site-footer__bottom p{margin:0}.site-footer__bottom a{color:#7a8a85;text-underline-offset:2px;text-decoration:underline}.cookie-consent{z-index:80;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line);color:var(--cream);background:#121c1a;position:fixed;bottom:0;left:0;right:0}.cookie-consent__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;max-width:1100px;margin:0 auto;display:flex}.cookie-consent__text{color:#c5d0cb;flex:220px;margin:0;font-size:13px;line-height:1.55}.cookie-consent__text a{color:var(--cream);text-underline-offset:2px;text-decoration:underline}.cookie-consent__actions{flex-wrap:wrap;gap:8px;display:flex}.cookie-consent__btn{border:1px solid var(--line);min-height:44px;color:var(--cream);cursor:pointer;background:#ffffff0a;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:700}.cookie-consent__btn--primary{background:var(--green);border-color:#0000}.cookie-consent__btn:hover{filter:brightness(1.08)}body.has-cookie-consent{padding-bottom:140px}@media (min-width:720px){body.has-cookie-consent{padding-bottom:96px}}:is(.site-shell:has(.is-table-play) .cookie-consent,.site-shell:has(.is-sol-play) .cookie-consent,.site-shell:has(.alkkagi-app--play) .cookie-consent,.site-shell:has(.rk-app--play) .cookie-consent){display:none}.legal-page{max-width:760px;margin:0 auto;padding:40px clamp(20px,4vw,48px) 48px}.legal-page__header{margin-bottom:32px}.legal-page__home{color:var(--muted);margin-bottom:20px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.legal-page__home:hover{color:var(--cream)}.legal-page h1{color:var(--paper);letter-spacing:-.03em;margin:0;font-family:Georgia,Batang,serif;font-size:clamp(28px,4vw,36px);font-weight:500}.legal-page__meta{color:var(--muted);margin:10px 0 0;font-size:12px}.legal-page__desc{color:#9aa8a3;margin:12px 0 0;font-size:14px;line-height:1.7}.legal-page__body{gap:28px;display:grid}.legal-page__section h2{color:var(--cream);margin:0 0 12px;font-size:16px;font-weight:800}.legal-page__section p{color:#a5b2ad;margin:0 0 10px;font-size:13px;line-height:1.75}.legal-page__section a,.legal-page .content-guide__qa a{color:var(--gold);text-underline-offset:3px;word-break:break-all;font-weight:700;text-decoration:underline}.legal-page__section a:hover,.legal-page .content-guide__qa a:hover{color:var(--cream)}.legal-page__section ul{color:#a5b2ad;margin:0;padding-left:1.2em;font-size:13px;line-height:1.75}.legal-page__section li+li{margin-top:6px}.legal-page__links{border-top:1px solid var(--line);flex-wrap:wrap;gap:12px 20px;margin-top:40px;padding-top:24px;display:flex}.legal-page__links a{color:var(--muted);font-size:12px;font-weight:700;text-decoration:none}.legal-page__links a:hover{color:var(--cream);text-decoration:underline}.records-page{max-width:840px}.records-page__note{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.5}.records-page__loading,.records-page__empty{border:1px dashed var(--line);color:var(--muted);border-radius:12px;margin:0 0 28px;padding:20px 18px;font-size:15px;line-height:1.55}.records-page__list{gap:14px;margin:0 0 28px;padding:0;list-style:none;display:grid}.records-page__card{border:1px solid var(--line);background:var(--panel,#1a1a1a);border-radius:14px;padding:16px 18px}@supports (color:color-mix(in lab, red, red)){.records-page__card{background:color-mix(in srgb, var(--panel,#1a1a1a) 88%, transparent)}}.records-page__card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;margin-bottom:14px;display:flex}.records-page__game-title{color:var(--paper);letter-spacing:-.02em;margin:0;font-size:18px;font-weight:700}.records-page__play{color:var(--gold);align-items:center;min-height:44px;padding:0 4px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.records-page__play:hover{text-decoration:underline}.records-page__modes{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:560px){.records-page__modes{grid-template-columns:1fr}}.records-page__mode{background:var(--cream);border-radius:10px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}@supports (color:color-mix(in lab, red, red)){.records-page__mode{background:color-mix(in srgb, var(--cream) 4%, transparent)}}.records-page__mode{border:1px solid var(--line)}@supports (color:color-mix(in lab, red, red)){.records-page__mode{border:1px solid color-mix(in srgb, var(--line) 80%, transparent)}}.records-page__mode{min-width:0}.records-page__mode-label{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;font-size:12px;font-weight:700}.records-page__mode-record{color:var(--paper);font-size:16px;font-weight:700}.records-page__mode-rate{color:var(--cream);font-size:14px}.records-page__mode-empty,.records-page__mode-na{color:var(--muted);font-size:15px}.records-page__teaser{border:1px solid var(--gold);border-radius:14px;margin-top:8px;padding:18px 18px 20px}@supports (color:color-mix(in lab, red, red)){.records-page__teaser{border:1px solid color-mix(in srgb, var(--gold) 35%, var(--line))}}.records-page__teaser{background:var(--gold)}@supports (color:color-mix(in lab, red, red)){.records-page__teaser{background:color-mix(in srgb, var(--gold) 8%, transparent)}}.records-page__teaser h2{color:var(--paper);margin:0 0 8px;font-size:16px;font-weight:700}.records-page__teaser p{color:var(--muted);margin:0;font-size:14px;line-height:1.55}.not-found{text-align:center;max-width:560px;margin:0 auto;padding:clamp(48px,10vh,96px) clamp(20px,4vw,48px) 64px}.not-found__code{color:var(--gold);letter-spacing:.04em;margin:0 0 12px;font:700 clamp(40px,8vw,64px)/1 Georgia,Batang,serif}.not-found h1{color:var(--paper);letter-spacing:-.03em;margin:0;font-family:Georgia,Batang,serif;font-size:clamp(24px,4vw,34px);font-weight:500;line-height:1.3}.not-found__desc{color:#9aa8a3;margin:14px 0 0;font-size:15px;line-height:1.7}.not-found__actions{margin-top:28px}.not-found__home{background:var(--red);color:#fff;border-radius:3px;justify-content:center;align-items:center;min-height:44px;padding:12px 22px;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 9px 30px #d6463533}.not-found__home:hover{background:var(--red-dark)}.not-found__links{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:center;gap:12px 20px;margin-top:28px;padding-top:24px;display:flex}.not-found__links a{color:var(--muted);align-items:center;min-height:44px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.not-found__links a:hover{color:var(--cream);text-decoration:underline}.content-guide{max-width:760px;margin:0 auto;padding:36px clamp(20px,4vw,48px) 64px}.content-guide--psy{width:min(100%,42rem);padding-top:8px;padding-bottom:max(48px, env(safe-area-inset-bottom))}.content-guide--flush{max-width:none;margin:36px 0 0;padding:0}.content-guide__heading{color:var(--paper);letter-spacing:-.03em;margin:0 0 20px;font-size:clamp(20px,2.4vw,26px);font-weight:800}.content-guide__block+.content-guide__block,.content-guide__faq{margin-top:28px}.content-guide__block h3,.content-guide__faq>h3{color:var(--cream);margin:0 0 10px;font-size:clamp(15px,1.6vw,17px);font-weight:800}.content-guide__block p,.content-guide__qa p{color:#a5b2ad;overflow-wrap:anywhere;margin:0 0 10px;font-size:clamp(14px,1.4vw,16px);line-height:1.75}.content-guide__block ul{color:#a5b2ad;margin:8px 0 0;padding-left:1.2em;font-size:clamp(14px,1.4vw,16px);line-height:1.75}.content-guide__block li+li{margin-top:6px}.content-guide__qa{border-top:1px solid var(--line);padding:16px 0}.content-guide__qa:first-of-type{border-top:0;padding-top:0}.content-guide__qa h2{color:var(--paper);margin:0 0 8px;font-size:clamp(16px,1.8vw,18px);font-weight:800;line-height:1.45}.site-info__contacts{gap:12px;margin:0 0 32px;padding:0;list-style:none;display:grid}.site-info__contacts li{border:1px solid var(--line);background:#ffffff08;border-radius:12px;gap:4px;padding:12px 14px;display:grid}.site-info__contacts span{color:var(--gold);letter-spacing:.06em;font-size:11px;font-weight:800}.site-info__contacts a,.site-info__contacts strong{color:var(--paper);overflow-wrap:anywhere;font-size:clamp(14px,1.5vw,16px);font-weight:700;text-decoration:none}.site-info__contacts a:hover{text-decoration:underline}.contact-form{border:1px solid var(--line);background:#ffffff08;border-radius:14px;gap:18px;margin:0 0 36px;padding:20px clamp(14px,3vw,22px);display:grid;position:relative}.contact-form__row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.contact-form__field{gap:7px;display:grid}.contact-form__field label{color:var(--gold);letter-spacing:.02em;font-size:12px;font-weight:800}.contact-form__required{color:var(--muted);font-weight:600}.contact-form__field input,.contact-form__field select,.contact-form__field textarea{box-sizing:border-box;border:1px solid var(--line);width:100%;min-height:44px;color:var(--paper);font:inherit;background:#00000040;border-radius:8px;padding:11px 12px;font-size:14px;line-height:1.45}.contact-form__field textarea{resize:vertical;min-height:168px}.contact-form__field input::placeholder,.contact-form__field textarea::placeholder{color:#6f807a}.contact-form__field input:focus,.contact-form__field select:focus,.contact-form__field textarea:focus{outline-offset:1px;outline:2px solid #d6a64673}.contact-form__field select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#9aa8a3 50%),linear-gradient(135deg,#9aa8a3 50%,#0000 50%);background-position:calc(100% - 18px),calc(100% - 12px);background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:34px}.contact-form__field option{color:#12201c;background:#fffdf6}.contact-form__hint{color:#8f9e98;margin:0;font-size:12px;line-height:1.6}.contact-form__hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-form__status{border-radius:8px;margin:0;padding:12px 14px;font-size:13px;line-height:1.55}.contact-form__status--ok{color:#b7e0c8;background:#46966e29;border:1px solid #46966e59}.contact-form__status--err{color:#f0b4ab;background:#d6463524;border:1px solid #d6463559}.contact-form__submit{background:var(--red);color:#fff;cursor:pointer;border:0;border-radius:3px;justify-self:start;min-height:44px;padding:12px 20px;font-size:14px;font-weight:800;box-shadow:0 9px 30px #d6463533}.contact-form__submit:hover:not(:disabled){background:var(--red-dark)}.contact-form__submit:disabled{opacity:.7;cursor:wait}.contact-page__guide{margin-top:8px}@media (max-width:640px){.contact-form__row{grid-template-columns:1fr}.contact-form__submit{justify-self:stretch;width:100%}.content-guide{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}}.game-layout{min-height:calc(100vh - 86px)}.app-shell.is-table-play .game-layout{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.site-shell:has(.is-table-play){z-index:30;top:var(--app-vv-top,0px);left:var(--app-vv-left,0px);width:var(--app-vv-width,100%);height:var(--app-vh,100dvh);max-height:var(--app-vh,100dvh);transform-origin:50%;background:#183a31;min-height:0;margin:0;position:fixed;overflow:hidden;transform:none;container:matgo-play-shell/size}.site-shell:has(.is-table-play) .site-shell__main{flex-direction:column;flex:auto;height:100%;min-height:0;display:flex;overflow:hidden}.site-shell:has(.is-table-play) .app-shell.is-table-play{flex-direction:column;flex:auto;height:100%;min-height:0;display:flex;overflow:hidden}:is(.site-shell:has(.is-table-play) .site-footer,.site-shell:has(.is-table-play) .content-guide){display:none}.app-shell.is-table-play .game-toolbar{flex:none}.app-shell.is-table-play{--floor-card-height:124px;--matgo-floor-min:calc(var(--floor-card-height) + 40px)}.app-shell.is-table-play .game-table-wrap{flex:auto;height:auto;min-height:0;overflow:hidden}.app-shell.is-table-play .game-table{grid-template-rows:auto minmax(var(--matgo-floor-min), 1fr) auto;row-gap:6px;min-height:0;overflow:hidden}.app-shell.is-table-play .opponent-row{min-height:min-content;overflow:clip}.app-shell.is-table-play .opponent-zone{align-items:start;min-height:auto;padding-bottom:8px;overflow:visible}.app-shell.is-table-play .opponent-zone .captured-groups{align-self:start}.app-shell.is-table-play .table-center{align-items:start;min-height:0;padding-top:4px;overflow:hidden}.app-shell.is-table-play .deck-area{place-self:start}.app-shell.is-table-play .floor-cards{overscroll-behavior:none;scrollbar-width:none;align-content:flex-start;min-height:0;max-height:100%;overflow:hidden}.app-shell.is-table-play .floor-cards::-webkit-scrollbar{width:0;height:0;display:none}.app-shell.is-table-play .game-side-panel{min-height:0;overflow-y:auto}.app-shell.is-table-play .self-hand-area{flex:none}@media (hover:hover) and (pointer:fine){.app-shell.is-table-play .self-hand-area{padding-bottom:max(10px, env(safe-area-inset-bottom))}}@media (min-width:1051px) and (max-height:900px){.app-shell.is-table-play .topbar{height:56px}.app-shell.is-table-play .brand-mark{width:28px;height:28px}.app-shell.is-table-play .brand strong{font-size:16px}:is(.app-shell.is-table-play .game-toolbar,.app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff)){height:52px;min-height:52px}.app-shell.is-table-play .game-table{grid-template-rows:auto minmax(0,1fr) auto;row-gap:6px;overflow:hidden}.app-shell.is-table-play .opponent-zone{align-items:start;gap:8px 12px;min-height:auto;padding-top:8px;padding-bottom:8px}.app-shell.is-table-play .opponent-hand .card-back{width:52px;height:86px;margin-left:-22px}.app-shell.is-table-play .table-center{gap:12px;padding:6px 18px}.app-shell.is-table-play .floor-cards{overscroll-behavior:none;--floor-card-width:56px;--floor-card-height:92px;--floor-stack-step:14px;justify-self:center;gap:8px;width:max-content;max-width:100%;min-height:0;max-height:100%;overflow:hidden}.app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),.app-shell.is-table-play .card-back{width:56px;height:92px}.app-shell.is-table-play .floor-triple-stack{--floor-stack-step:14px}.app-shell.is-table-play .player-zone{padding:8px 16px}.app-shell.is-table-play .score-breakdown{display:none}.app-shell.is-table-play .capture-row .hwatu-card,.app-shell.is-table-play .hwatu-card.is-mini{width:36px;height:58px}.app-shell.is-table-play .capture-stack{--capture-card-w:36px;min-height:58px}.app-shell.is-table-play .capture-empty{width:36px;height:58px}.app-shell.is-table-play .my-hand{--hand-w:72px;--hand-h:118px;min-height:118px;padding-top:4px}.app-shell.is-table-play .turn-message p{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:9px;display:-webkit-box;overflow:hidden}}@media (min-width:1051px) and (max-height:760px){.app-shell.is-table-play .topbar{grid-template-columns:auto 1fr auto;height:42px;padding:0 14px}.app-shell.is-table-play .legal-chip,.app-shell.is-table-play .brand small{display:none}.app-shell.is-table-play .brand{gap:8px}.app-shell.is-table-play .brand-mark{width:22px;height:22px}.app-shell.is-table-play .brand strong{font-size:13px}.app-shell.is-table-play .account-strip{gap:10px}.app-shell.is-table-play .balance-box{padding-right:10px}.app-shell.is-table-play .balance-box small{margin:0 6px 0 0;font-size:9px;display:inline}.app-shell.is-table-play .balance-box strong{font-size:15px}.app-shell.is-table-play .balance-box i{font-size:10px}.app-shell.is-table-play .avatar-button span{width:26px;height:26px;font-size:11px}.app-shell.is-table-play .avatar-button b{display:none}.app-shell.is-table-play .my-hand{--hand-w:60px;--hand-h:98px;min-height:100px}.app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),.app-shell.is-table-play .card-back{width:48px;height:78px}.app-shell.is-table-play .floor-cards,.app-shell.is-table-play .floor-triple-stack{--floor-card-width:48px;--floor-card-height:78px;--floor-stack-step:12px}.app-shell.is-table-play .opponent-hand .card-back{width:44px;height:72px;margin-left:-18px}}.game-toolbar{border-bottom:1px solid var(--line);background:#0000001f;grid-template-columns:1fr auto 1fr auto;align-items:center;gap:26px;height:66px;padding:0 clamp(18px,3vw,48px);display:grid}.game-toolbar:has(.matgo-ai-diff){grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"leave title actions""diff diff diff";gap:8px 16px;height:auto;min-height:66px;padding-top:10px;padding-bottom:10px}.game-toolbar:has(.matgo-ai-diff)>.quiet-button:first-child{grid-area:leave}.game-toolbar:has(.matgo-ai-diff) .room-identity{text-align:left;grid-area:title}.game-toolbar:has(.matgo-ai-diff) .matgo-ai-diff{grid-area:diff;justify-content:flex-start}.game-toolbar:has(.matgo-ai-diff) .toolbar-actions{grid-area:actions}@media (min-width:1051px){.game-toolbar:has(.matgo-ai-diff){grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"leave diff actions";align-items:center;gap:10px 14px;min-height:66px;padding-top:0;padding-bottom:0}.game-toolbar:has(.matgo-ai-diff) .room-identity{display:none}.game-toolbar:has(.matgo-ai-diff) .matgo-ai-diff{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.game-toolbar:has(.matgo-ai-diff) .matgo-ai-diff::-webkit-scrollbar{display:none}.game-toolbar:has(.matgo-ai-diff) .toolbar-actions{flex-wrap:nowrap;justify-content:flex-end}.game-toolbar:has(.matgo-ai-diff) .matgo-ai-diff button{white-space:nowrap}.game-toolbar:has(.matgo-ai-diff) .toolbar-actions .quiet-button{white-space:nowrap}}.app-shell.is-ai-mode .balance-box{display:none}.app-shell.is-ai-mode .account-strip{border:0}.toolbar-actions{align-items:center;gap:7px;display:flex}.sound-button{min-width:64px}.room-identity{text-align:center}.room-identity span{color:#697a74;letter-spacing:.17em;font-size:8px;display:block}.room-identity strong{font-size:13px}.stake-display{text-align:right;justify-self:end}.stake-display small{color:#758680;font-size:8px;display:block}.stake-display strong{color:var(--gold);font-size:13px}.game-table-wrap{grid-template:"table side"minmax(0,1fr)"hand hand"/minmax(0,1fr) 270px;min-height:calc(100vh - 152px);display:grid}.game-table-wrap>.game-table{grid-area:table;min-height:0}.game-table-wrap>.game-side-panel{grid-area:side;min-height:0}.game-table-wrap>.self-hand-area{z-index:9;padding:8px 12px max(10px, env(safe-area-inset-bottom), var(--app-chrome-bottom,16px));background:linear-gradient(#183a3100 0%,#183a31 18% 100%);border-top:1px solid #ffffff0f;flex:none;grid-area:hand}.game-table{background:radial-gradient(#2f7055f2,#204d3f 68%,#183a31);border-right:1px solid #ffffff17;grid-template-rows:auto minmax(260px,1.25fr) auto;display:grid;position:relative;overflow:hidden}.game-table:before{content:"";pointer-events:none;z-index:0;border:1px solid #ffffff14;border-radius:48%/42%;position:absolute;inset:18px}.player-zone{z-index:2;padding:14px 22px;transition:background .2s;position:relative}.active-turn{background:linear-gradient(90deg,#0000,#d6a64614,#0000)}.opponent-row{grid-template-columns:1fr;min-width:0;display:grid}.opponent-zone{border-bottom:1px solid #ffffff0f;grid-template-columns:minmax(170px,210px) minmax(0,1fr) minmax(300px,1fr);grid-template-areas:"meta hand captured";align-items:center;gap:14px 18px;min-height:132px;padding-top:16px;padding-bottom:12px;display:grid}.game-table.is-three .opponent-row{grid-template-columns:1fr 1fr}.game-table.is-three .opponent-zone{border-right:1px solid #ffffff0f;grid-template-columns:1fr;grid-template-areas:"meta""hand""captured";align-content:start;min-height:0}.game-table.is-three .opponent-zone:last-child{border-right:0}.game-table.is-three .opponent-hand .card-back{width:54px;height:88px;margin-left:-24px}.game-table.is-three .opponent-hand .card-back>span{font-size:16px}.opponent-meta{grid-area:meta;align-content:center;gap:8px;min-width:0;display:grid}.player-summary{align-items:center;gap:10px;min-width:0;display:flex}.player-badge{align-items:center;gap:10px;display:flex}.player-badge strong{font-size:12px;display:block}.player-badge small{color:#b4c5be;margin-top:3px;font-size:9px;display:block}.player-badge>span{background:#0d2a218c}.score-chip{white-space:nowrap;background:#081c179e;border:1px solid #d6a64661;border-radius:4px;align-items:center;gap:5px;margin-left:auto;padding:5px 7px;display:flex}.score-chip strong{color:#fff8e7;font:800 20px/1 Georgia,Malgun Gothic,sans-serif}.score-chip strong i{color:var(--gold);margin-left:2px;font:800 9px/1 Malgun Gothic,sans-serif}.score-chip>span{color:#aebfb8;font-size:8px}.opponent-hand{grid-area:hand;justify-content:center;align-items:center;min-width:0;padding:4px 0;display:flex;position:relative}.opponent-zone .captured-groups{grid-area:captured;align-self:center}.opponent-hand .card-back{width:72px;height:118px;margin-left:-34px}.opponent-hand .card-back:first-child{margin-left:0}.opponent-hand .card-back>span{font-size:22px}.hand-count-badge{z-index:5;color:#fff4d7;pointer-events:none;background:#0a1814f0;border:1px solid #d6a6468c;border-radius:999px;justify-content:center;align-items:baseline;gap:1px;min-width:34px;padding:4px 7px;font:800 13px/1 Georgia,Malgun Gothic,sans-serif;display:inline-flex;position:absolute;bottom:-2px;right:max(0px,50% - 78px);box-shadow:0 6px 16px #00000059}.hand-count-badge small{color:var(--gold);font:800 8px/1 Malgun Gothic,sans-serif}.captured-groups{grid-template-columns:minmax(0,.72fr) minmax(0,.72fr) minmax(0,.72fr) minmax(0,1.6fr);gap:10px;min-width:0;display:grid}.capture-group{min-width:0}.capture-group[data-capture-kind=junk] .capture-row{justify-content:flex-start}.capture-group[data-capture-kind=junk] .capture-row.is-partial-row:not(:first-child){min-height:calc(var(--capture-card-w) * 1.5)}.capture-stack.is-compact{max-height:calc(var(--capture-card-w) * 1.55 * 2 + 8px);min-height:0;overflow:hidden}.capture-group>span{color:#ffffffc7;margin-bottom:6px;font-size:11px;font-weight:700;display:block}.capture-stack{--capture-overlap:.2;--capture-card-w:52px;--capture-peek:calc(var(--capture-card-w) * (1 - var(--capture-overlap)));flex-direction:column;gap:4px;min-width:0;min-height:86px;display:flex}.capture-row{isolation:isolate;overscroll-behavior:contain;scrollbar-width:none;-webkit-overflow-scrolling:touch;width:100%;max-width:100%;flex-wrap:nowrap;align-items:flex-start;padding-inline-end:calc(var(--capture-card-w) * var(--capture-overlap));display:flex;overflow-x:auto}.capture-row::-webkit-scrollbar{display:none}.capture-row .hwatu-card{margin-left:calc(var(--capture-peek) - var(--capture-card-w));position:relative;box-shadow:0 6px 14px #00000052,-1px 0 #ffffff38}.capture-row .hwatu-card:first-child{margin-left:0}.capture-empty{color:#ffffff45;border:1px dashed #ffffff21;place-items:center;width:52px;height:86px;font-size:8px;font-style:normal;display:grid}.captured-groups .capture-stack{max-height:calc(var(--capture-card-w) * 1.5 * 2 + 12px);overscroll-behavior:contain;overflow-y:auto}.table-center{z-index:3;grid-template-columns:74px minmax(0,1fr) 190px;align-items:center;gap:22px;padding:15px 34px;display:grid;position:relative}.deck-area{justify-items:center;gap:6px;display:grid}.deck-area>span{color:#ffffff80;font-size:8px}.floor-cards{--floor-card-width:76px;--floor-card-height:124px;--floor-stack-step:19px;--floor-stack-y-step:5px;--floor-stack-pad-top:3px;flex-wrap:wrap;place-content:center;justify-self:center;align-items:flex-start;gap:12px;width:max-content;max-width:100%;min-height:245px;display:flex}.floor-month-group{min-width:var(--floor-card-width);min-height:var(--floor-card-height);flex:none;align-items:flex-start;display:flex;position:relative}.floor-month-group.is-row{gap:12px;min-width:0;min-height:0}.app-shell.is-table-play .floor-month-group.is-row{gap:8px}.floor-triple-stack{--stack-count:2;width:calc(var(--floor-card-width) + var(--floor-stack-step) * var(--stack-count));height:calc(var(--floor-card-height) + var(--floor-stack-y-step) * var(--stack-count) + var(--floor-stack-pad-top));padding-top:var(--floor-stack-pad-top);isolation:isolate;align-items:flex-start;display:flex;position:relative;overflow:visible}.floor-stack-card{z-index:calc(var(--stack-index) + 1);flex:0 0 var(--floor-card-width);margin-left:calc((var(--floor-card-width) - var(--floor-stack-step)) * -1);transform:translateY(calc(var(--stack-index) * var(--floor-stack-y-step)));position:relative}.floor-stack-card:first-child{margin-left:0}.floor-stack-card .hwatu-card{box-shadow:0 8px 18px #00000075,-2px 0 #ffffff4d}.turn-message{border-left:1px solid #ffffff1c;align-self:center;padding-left:16px}.turn-message>span{border-radius:999px;padding:4px 8px;font-size:9px;font-weight:800;display:inline-block}.my-turn{color:#172d27;background:var(--gold)}.their-turn{color:#adc0b8;background:#00000029}.turn-timer{vertical-align:middle;letter-spacing:.04em;color:#172d27;background:var(--gold);font-variant-numeric:tabular-nums;border-radius:999px;margin-left:8px;padding:4px 8px;font-size:9px;font-weight:800;display:inline-block}.turn-timer.is-urgent{color:#fff4f1;background:#c44536}.turn-message p{color:#ffffffab;margin:9px 0 0;font-size:10px;line-height:1.5}.self-zone{border-top:1px solid #ffffff0f;align-self:end}.self-meta{grid-template-rows:auto auto;grid-template-columns:200px minmax(0,1fr);align-items:start;gap:8px 16px;display:grid}.self-meta .player-summary{grid-area:1/1}.self-meta .score-breakdown{grid-area:2/1;margin:0}.self-meta .captured-groups{grid-area:1/2/span 2;align-self:center}.my-hand{--hand-w:100px;--hand-h:164px;--hand-overlap:.2;--hand-count:1;--hand-span:calc(1 + (max(var(--hand-count), 1) - 1) * (1 - var(--hand-overlap)));width:min(100%, calc(var(--hand-w) * var(--hand-span)));box-sizing:border-box;flex:0 auto;justify-content:center;align-items:end;min-width:0;max-width:100%;min-height:175px;padding-top:12px;display:flex;container:matgo-hand/inline-size}.my-hand .hwatu-card{flex:none;width:min(var(--hand-w), calc(100cqw / var(--hand-span) * .98))!important;height:min(var(--hand-h), calc(min(var(--hand-w), calc(100cqw / var(--hand-span) * .98)) * 1.64))!important;margin-left:calc(min(var(--hand-w), calc(100cqw / var(--hand-span) * .98)) * var(--hand-overlap) * -1)!important}.my-hand .hwatu-card:first-child{margin-left:0!important}.my-hand .hwatu-card.is-selected{z-index:12;transform:translateY(-18px)}@media (hover:hover) and (pointer:fine){.my-hand .hwatu-card:hover:not(:disabled){z-index:12;transform:translateY(-18px)}}.my-hand .hwatu-card.is-playing{opacity:0}.self-hand-area.is-locked,.my-hand.is-locked{pointer-events:none;touch-action:none}.self-hand-area{flex-direction:row;justify-content:center;align-items:flex-end;gap:10px;min-width:0;display:flex}.self-hand-area:has(.bomb-flip-row) .my-hand{width:min(calc(100% - 136px), calc(var(--hand-w) * var(--hand-span)));max-width:calc(100% - 136px)}.my-hand:empty{height:0;min-height:0;padding:0;overflow:hidden}.bomb-flip-row{flex:none;justify-content:center;align-items:flex-end;padding:0 4px 10px;display:flex}.bomb-flip-button{color:#fff4d7;cursor:pointer;text-align:center;background:#0d1f1beb;border:1px solid #d6a6468c;border-radius:5px;align-self:flex-end;width:auto;min-width:0;max-width:128px;padding:10px 12px;box-shadow:0 12px 30px #00000047}.bomb-flip-button strong,.bomb-flip-button span{display:block}.bomb-flip-button strong{font-size:12px;line-height:1.25}.bomb-flip-button span{color:#a9b9b3;margin-top:4px;font-size:7px;line-height:1.35}.hwatu-card,.card-back{border-radius:7px;flex:none;width:76px;height:124px;position:relative;overflow:hidden;box-shadow:0 8px 18px #00000057}.hwatu-card{color:#241d18;background:#fff7e0;border:2px solid #f5ead4}.card-button{cursor:pointer;padding:0;transition:transform .16s,box-shadow .16s}.card-button.is-selected{box-shadow:0 0 0 3px var(--gold), 0 7px 18px #00000059}.card-back{color:#f4d5b1;background:repeating-linear-gradient(45deg,#0000 0 5px,#ffffff14 5px 6px),#a62f28;border:3px solid #eee3cd;place-items:center;font-family:Georgia,serif;display:grid}.card-back:after{content:"";border:1px solid #ffffff61;position:absolute;inset:6px}.card-back>span{z-index:2;font-size:22px;position:relative}.card-back>b{background:var(--ink);z-index:3;border-radius:999px;place-items:center;min-width:19px;height:19px;font:8px sans-serif;display:grid;position:absolute;bottom:2px;right:3px}.card-back.is-empty{box-shadow:none;background:#ffffff0d;border-style:dashed;border-color:#ffffff47}.card-back.is-empty:after{display:none}.card-back.is-empty>b{color:#ffffff80;background:0 0;min-width:0;height:auto;font:800 15px/1 Georgia,serif;position:static}.card-face{image-rendering:auto;backface-visibility:hidden;background:#fff7e0 url(/cards/hwatu-light-normalized-v4.png) 0 0/1200% 400% no-repeat;position:absolute;inset:0;transform:translateZ(0)}.bonus-card-face{color:#fff3cd;text-align:center;filter:none;background:radial-gradient(circle at 50% 46%,#fff1bd 0 18%,#0000 19%),repeating-radial-gradient(circle at 50% 46%,#0000 0 14px,#ffd76a38 15px 17px),#ae211c;align-content:center;place-items:center;gap:3px;display:grid}.bonus-card-face:before,.bonus-card-face:after{content:"";background:#efc85d;height:2px;position:absolute;left:8%;right:8%}.bonus-card-face:before{top:9%}.bonus-card-face:after{bottom:9%}.bonus-card-face small{z-index:1;letter-spacing:.12em;font:800 7px/1 Georgia,serif;position:relative}.bonus-card-face strong{z-index:1;color:#35110e;font:900 25px/1 Georgia,serif;position:relative}.bonus-card-face b{z-index:1;font-size:7px;position:relative}.bonus-pi-3{background-color:#8b1713}.hwatu-card.is-mini{border-width:1px;border-radius:4px;width:52px;height:86px}.is-mini .bonus-card-face{gap:1px}.is-mini .bonus-card-face small{display:none}.is-mini .bonus-card-face strong{font-size:18px}.is-mini .bonus-card-face b{font-size:5px}.card-role-badge{z-index:4;color:#fff;background:#1e6b53;border-radius:999px;padding:2px 4px;font:800 6px/1.2 Malgun Gothic,sans-serif;position:absolute;bottom:3px;right:3px;box-shadow:0 1px 4px #00000059}.card-role-badge.is-junk{background:var(--red)}.empty-floor{color:#ffffff59;font-size:11px}.played-card-motion{z-index:45;pointer-events:none;will-change:transform;transform-origin:50%;position:fixed}.played-card-motion .hwatu-card{width:100%;height:100%;margin:0;box-shadow:0 15px 32px #0000007a}.played-card-motion.is-matching{animation:.52s cubic-bezier(.22,.72,.2,1) both card-match}.played-card-motion.is-placing{animation:.52s cubic-bezier(.22,.72,.2,1) both card-place}.hwatu-card.is-match-target{z-index:11;animation:.52s ease-out both match-target}.hwatu-card.is-draw-placeholder{visibility:hidden}.hwatu-card.is-floor-ghost{z-index:12;animation:floor-ghost-pulse var(--matgo-scoop-ms,1.68s) ease-out both;outline:2px solid #ffd768eb;box-shadow:0 0 0 4px #ffd76859,0 0 22px #ffcf468c}.hwatu-card.is-floor-ghost.is-scooping{animation:floor-ghost-scoop var(--matgo-scoop-ms,1.68s) cubic-bezier(.22,.72,.2,1) both}.opponent-play-motion{z-index:48;pointer-events:none;transform-origin:50%;will-change:transform, opacity;animation:1.05s cubic-bezier(.22,.72,.2,1) both opponent-card-reveal;position:fixed}.opponent-play-motion .hwatu-card{width:100%;height:100%;margin:0;box-shadow:0 18px 42px #00000094,0 0 0 2px #ffe7ab61}.opponent-play-motion>span{color:#fff7df;opacity:0;background:#0d1d19f5;border:1px solid #d6a6467a;border-radius:999px;width:max-content;max-width:min(290px,82vw);padding:7px 11px;font-size:9px;font-weight:800;animation:1.05s both opponent-card-label;position:absolute;top:calc(100% + 11px);left:50%;transform:translate(-50%);box-shadow:0 9px 26px #00000075}.opponent-play-motion.is-bomb{z-index:49;animation:1.85s cubic-bezier(.22,.72,.2,1) both opponent-bomb-reveal;overflow:visible}.opponent-play-motion.is-bomb>span{background:#5c2a0ef5;border-color:#ffc454b8;animation:1.85s both opponent-bomb-label}.opponent-bomb-fan{justify-content:center;align-items:stretch;width:max-content;max-width:min(240px,72vw);height:100%;display:flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.opponent-bomb-fan .hwatu-card{flex-shrink:0;width:clamp(42px,11vw,64px);height:100%;margin-left:clamp(-18px,-4.5vw,-12px);box-shadow:0 18px 42px #00000094,0 0 0 2px #ffd2648c}.opponent-bomb-fan .hwatu-card:first-child{margin-left:0;transform:rotate(-11deg)translateY(4px)}.opponent-bomb-fan .hwatu-card:nth-child(2){z-index:2;transform:rotate(-1deg)scale(1.04)}.opponent-bomb-fan .hwatu-card:last-child{z-index:1;transform:rotate(10deg)translateY(4px)}.shake-reveal-layer{z-index:50;pointer-events:none;flex-direction:column;justify-content:flex-start;align-items:center;gap:10px;padding:min(36px,9vw) 12px 0;display:flex;position:absolute;inset:0}.shake-reveal-fan{background:#06100ec7;border-radius:14px;justify-content:center;align-items:center;width:max-content;max-width:min(300px,88vw);height:clamp(96px,26vw,132px);padding:10px 12px;animation:1.55s both shake-reveal-pulse;display:flex;box-shadow:0 16px 40px #00000080}.shake-reveal-fan .hwatu-card{background:#fff7e0;flex-shrink:0;margin-left:clamp(-12px,-3vw,-6px);position:relative;transform:rotate(-10deg)translateY(3px);box-shadow:0 12px 28px #0000008c,0 0 0 2px #f5ead4f2;-webkit-filter:none!important;width:clamp(54px,15vw,78px)!important;height:100%!important}.shake-reveal-fan .hwatu-card:first-child{margin-left:0}.shake-reveal-fan .hwatu-card:nth-child(2){z-index:2;transform:rotate(-1deg)scale(1.05)}.shake-reveal-fan .hwatu-card:last-child{z-index:1;transform:rotate(10deg)translateY(3px)}.shake-reveal-fan .hwatu-card .card-face{backface-visibility:visible;filter:none!important;opacity:1!important;transform:none!important}.shake-reveal-label{z-index:2;color:#fff7df;white-space:nowrap;background:#5c2a0ef5;border:1px solid #d6a6468c;border-radius:999px;padding:7px 14px;font-size:11px;font-weight:800;animation:1.55s both opponent-bomb-label;box-shadow:0 8px 22px #0006}.shake-reveal-layer.is-still .shake-reveal-fan,.shake-reveal-layer.is-still .shake-reveal-label{opacity:1;animation:none}@keyframes shake-reveal-pulse{0%{opacity:0;transform:scale(.88)rotate(-3deg)}14%,88%{opacity:1}28%{transform:scale(1.04)rotate(2deg)}42%{transform:scale(1)rotate(-2deg)}56%{transform:scale(1.03)rotate(1.5deg)}70%{transform:scale(1.01)rotate(-1deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes opponent-card-reveal{0%{opacity:.35;transform:translate(0)rotate(5deg)scale(.82)}18%{transform:translate3d(var(--opponent-center-x),var(--opponent-center-y),0) rotate(-2deg) scale(1.18);opacity:1}42%{transform:translate3d(var(--opponent-center-x),var(--opponent-center-y),0) rotate(1deg) scale(1.14);opacity:1}to{transform:translate3d(var(--opponent-target-x),var(--opponent-target-y),0) rotate(0) scale(var(--opponent-target-scale));opacity:1}}@keyframes opponent-bomb-reveal{0%{opacity:.3;transform:translate(0)rotate(4deg)scale(.78)}14%{transform:translate3d(var(--opponent-center-x),var(--opponent-center-y),0) rotate(-1deg) scale(1.26);opacity:1}55%{transform:translate3d(var(--opponent-center-x),var(--opponent-center-y),0) rotate(1deg) scale(1.2);opacity:1}to{transform:translate3d(var(--opponent-target-x),var(--opponent-target-y),0) rotate(0) scale(var(--opponent-target-scale));opacity:1}}@keyframes opponent-card-label{0%,18%,86%,to{opacity:0}28%,78%{opacity:1}}@keyframes opponent-bomb-label{0%,12%,92%,to{opacity:0}18%,84%{opacity:1}}@keyframes card-match{0%{transform:translate(0)rotate(0)scale(1)}58%{transform:translate3d(var(--motion-x),var(--motion-y),0) rotate(-4deg) scale(1.1)}76%{transform:translate3d(var(--motion-x),var(--motion-y),0) rotate(2deg) scale(.94)}to{transform:translate3d(var(--motion-x),var(--motion-y),0) rotate(0) scale(1)}}@keyframes card-place{0%{transform:translate(0)rotate(0)scale(1)}68%{transform:translate3d(var(--motion-x),var(--motion-y),0) rotate(-3deg) scale(1.06)}to{transform:translate3d(var(--motion-x),var(--motion-y),0) rotate(0) scale(1)}}@keyframes match-target{0%,25%{box-shadow:0 8px 18px #00000057}66%{transform:scale(1.08);box-shadow:0 0 0 5px #ffd768f2,0 0 26px #ffcf46e6}to{transform:scale(1);box-shadow:0 0 0 2px #ffd76859,0 8px 18px #00000057}}.draw-card-motion{z-index:47;pointer-events:none;perspective:900px;will-change:transform;animation:1.18s cubic-bezier(.22,.72,.2,1) both draw-flight;position:fixed}.draw-card-motion.is-matching{animation:1.34s cubic-bezier(.22,.72,.2,1) both draw-match-flight}.draw-card-motion.is-placing{animation:1.18s cubic-bezier(.22,.72,.2,1) both draw-place-flight}.draw-card-inner{z-index:2;transform-style:preserve-3d;animation:1.18s ease-in-out both draw-flip;position:absolute;inset:0}.draw-card-motion.is-matching .draw-card-inner{animation:1.34s ease-in-out both draw-match-flip}.draw-card-motion.is-placing .draw-card-inner{animation:1.18s ease-in-out both draw-flip}.draw-card-motion.is-concealed .draw-card-inner,.draw-card-motion.is-placing.is-concealed .draw-card-inner{animation:none;transform:none}.draw-card-back,.draw-card-face{backface-visibility:hidden;position:absolute;inset:0}.draw-card-face{transform:rotateY(180deg)}.draw-card-motion .card-back,.draw-card-motion .hwatu-card{width:100%;height:100%;margin:0;box-shadow:0 17px 38px #0000008c}.draw-card-motion.is-matching .draw-card-face .hwatu-card{box-shadow:0 17px 38px #0000008c,0 0 0 3px #ffd768d9,0 0 28px #ffcf46bf}.draw-card-motion>span{z-index:5;color:#fff7df;opacity:0;background:#0f1b18f2;border:1px solid #d6a64659;border-radius:999px;width:max-content;max-width:min(270px,80vw);padding:7px 10px;font-size:9px;font-weight:800;animation:1.18s both draw-label;position:absolute;top:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 8px 25px #0006}.draw-card-motion.is-matching>span{background:#5c2a0ef5;border-color:#ffd768b8;animation:1.34s both draw-match-label}.draw-card-motion.is-placing>span{animation:1.18s both draw-label}.draw-card-motion.is-jjok{animation:1.58s cubic-bezier(.2,.72,.18,1) both jjok-flight}.draw-card-motion.is-jjok .draw-card-inner{animation:1.58s ease-in-out both jjok-flip}.jjok-pair-card{z-index:1;opacity:0;animation:1.58s both jjok-pair-card;position:absolute;inset:0}.jjok-pair-card .hwatu-card{transform:translate(-11px,7px)rotate(-8deg);box-shadow:0 16px 34px #00000080,0 0 0 2px #ffdb7066}.jjok-burst{z-index:6;color:#fff5ba;text-shadow:0 3px #a52a22,0 0 19px #ffd758f2;white-space:nowrap;opacity:0;font:900 35px/1 Malgun Gothic,sans-serif;animation:1.58s cubic-bezier(.2,.8,.2,1) both jjok-burst;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(-7deg)}.special-burst{z-index:6;color:#fff5ba;text-shadow:0 3px #7a2a16,0 0 18px #ffd25ae6;white-space:nowrap;opacity:0;pointer-events:none;font:900 30px/1 Malgun Gothic,sans-serif;animation:1.18s cubic-bezier(.2,.8,.2,1) both special-burst;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)rotate(-6deg)}.special-burst.jjok-burst{font-size:35px;animation:1.58s cubic-bezier(.2,.8,.2,1) both jjok-burst}.special-burst.match-burst{color:#fff3b0;text-shadow:0 3px #7a4a10,0 0 18px #ffd25af2;font-size:28px;animation:1.34s cubic-bezier(.2,.8,.2,1) both match-burst}.draw-card-motion.is-ttadak .special-burst{color:#ffe7a0;text-shadow:0 3px #8a3a12,0 0 18px #ffb43cf2}.draw-card-motion.is-ppeok .special-burst{color:#ffd0c4;text-shadow:0 3px #6b1c16,0 0 18px #ff785ae6}.draw-card-motion.is-ppeokEat .special-burst{color:#ffc9a8;text-shadow:0 3px #7a2810,0 0 18px #ff8c46f2}.draw-card-motion.is-bomb .special-burst{color:#fff1c2;text-shadow:0 3px #5c3a08,0 0 20px #ffc850f2}.draw-card-motion.is-ssakssuri .special-burst{color:#dff7ff;text-shadow:0 3px #1d4d5c,0 0 18px #78d2ffe6}.draw-card-motion.is-ttadak{animation:1.48s cubic-bezier(.2,.72,.18,1) both ttadak-flight}.draw-card-motion.is-ppeok{animation:1.56s cubic-bezier(.2,.72,.18,1) both ppeok-flight}.draw-card-motion.is-ppeokEat{animation:1.4s cubic-bezier(.2,.72,.18,1) both ppeok-eat-flight}.draw-card-motion.is-bomb{animation:1.64s cubic-bezier(.18,.7,.2,1) both bomb-flight}.draw-card-motion.is-ssakssuri{animation:1.52s cubic-bezier(.2,.72,.18,1) both ssakssuri-flight}.draw-card-motion.is-ttadak .draw-card-inner,.draw-card-motion.is-ppeok .draw-card-inner,.draw-card-motion.is-ppeokEat .draw-card-inner,.draw-card-motion.is-bomb .draw-card-inner,.draw-card-motion.is-ssakssuri .draw-card-inner{animation:1.48s ease-in-out both special-flip}.draw-card-motion.is-bomb .draw-card-inner{animation-duration:1.64s}.draw-card-motion.is-ppeok .draw-card-inner{animation-duration:1.56s}.draw-card-motion.is-ppeokEat .draw-card-inner{animation-duration:1.4s}.draw-card-motion.is-ssakssuri .draw-card-inner{animation-duration:1.52s}.fx-skip-layer{z-index:44;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;place-items:end center;padding-bottom:8px;display:grid;position:absolute;inset:0}.fx-skip-layer>span{color:#ffffff9e;pointer-events:none;background:#0814119e;border:1px solid #ffffff29;border-radius:999px;padding:5px 12px;font-size:9px;font-weight:800}.fx-skip-layer:hover>span,.fx-skip-layer:focus-visible>span{color:#fff7df;border-color:#d6a6468c}.app-shell[data-fx-speed=fast] .opponent-play-motion,.app-shell[data-fx-speed=fast] .opponent-play-motion *,.app-shell[data-fx-speed=fast] .played-card-motion,.app-shell[data-fx-speed=fast] .played-card-motion *,.app-shell[data-fx-speed=fast] .draw-card-motion,.app-shell[data-fx-speed=fast] .draw-card-motion *,.app-shell[data-fx-speed=fast] .hwatu-card.is-floor-ghost,.app-shell[data-fx-speed=fast] .special-fx-layer,.app-shell[data-fx-speed=fast] .special-fx-layer *,.app-shell[data-fx-speed=fast] .shake-reveal-fan,.app-shell[data-fx-speed=fast] .shake-reveal-label{animation-duration:.78s!important}.special-fx-layer.is-ppeok:not(.is-still){animation:.55s ease-in-out table-shake-ppeok}.special-fx-layer.is-ppeokEat:not(.is-still){animation:.5s ease-in-out table-shake-ppeok-eat}.special-fx-layer.is-ttadak:not(.is-still){animation:.45s ease-in-out table-shake-ttadak}.special-fx-layer.is-jjok:not(.is-still){animation:.4s ease-in-out table-shake-jjok}.special-fx-layer.is-bomb:not(.is-still),.special-fx-layer.is-chongtong:not(.is-still){animation:.7s ease-in-out table-shake-bomb}.special-fx-layer.is-ssakssuri:not(.is-still){animation:.55s ease-in-out table-shake-ssakssuri}.special-fx-layer.is-shake:not(.is-still){animation:1.55s ease-in-out table-shake-heundeul}.special-fx-layer.is-threePpeok:not(.is-still){animation:.6s ease-in-out table-shake-ppeok}.special-fx-layer.is-go:not(.is-still){animation:.6s ease-in-out table-shake-go}.special-fx-layer{z-index:40;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0;overflow:hidden}.special-fx-flash{opacity:0;position:absolute;inset:0}.special-fx-layer.is-jjok .special-fx-flash{background:radial-gradient(circle,#ffdc788c,#0000 62%);animation:1.1s ease-out both fx-flash}.special-fx-layer.is-ttadak .special-fx-flash{background:radial-gradient(circle,#ffaa4680,#0000 65%);animation:.95s ease-out both fx-flash}.special-fx-layer.is-ppeok .special-fx-flash{background:radial-gradient(circle,#ff5a467a,#0000 68%);animation:1.15s ease-out both fx-flash}.special-fx-layer.is-ppeokEat .special-fx-flash{background:radial-gradient(circle,#ff965080,#0000 66%);animation:1.05s ease-out both fx-flash}.special-fx-layer.is-bomb .special-fx-flash{background:radial-gradient(circle,#ffd25a9e,#b4281447 42%,#0000 70%);animation:1.25s ease-out both fx-flash}.special-fx-layer.is-ssakssuri .special-fx-flash{background:radial-gradient(circle,#78dcff6b,#0000 68%);animation:1.1s ease-out both fx-flash}.special-fx-layer.is-shake .special-fx-flash{background:radial-gradient(circle,#ffe68c80,#0000 64%);animation:1.55s ease-out both fx-flash}.special-fx-layer.is-shake.has-cards .special-fx-flash{z-index:0;background:radial-gradient(circle,#ffe68c24,#0000 72%)}.special-fx-layer.is-shake.has-cards .special-fx-sparks,.special-fx-layer.is-shake.has-cards .special-fx-ring,.special-fx-layer.is-shake.has-cards .special-fx-shockwave{z-index:0;opacity:.2}.special-fx-layer.is-chongtong .special-fx-flash{background:radial-gradient(circle,#ffd25a9e,#b4281447 42%,#0000 70%);animation:1.25s ease-out both fx-flash}.special-fx-layer.is-go .special-fx-flash{background:radial-gradient(circle,#ffc44694,#b4281438 48%,#0000 70%);animation:1.2s ease-out both fx-flash}.special-fx-layer.is-go.is-go-high .special-fx-flash{background:radial-gradient(circle,#ffa03ca6,#a0141452 46%,#0000 72%)}.special-fx-layer.is-go.is-go-max .special-fx-flash{background:radial-gradient(circle,#ff7828b3,#8c0a1461 44%,#0000 74%)}.special-fx-layer.is-threePpeok .special-fx-flash{background:radial-gradient(circle,#ff5a468c,#0000 68%);animation:1.2s ease-out both fx-flash}.special-fx-shockwave{opacity:0;border:3px solid #ffe696bf;border-radius:50%;width:min(420px,70vw);height:min(420px,70vw);animation:1.15s cubic-bezier(.15,.8,.2,1) both fx-shockwave;position:absolute}.special-fx-layer.is-ppeok .special-fx-shockwave{border-color:#ff785acc}.special-fx-layer.is-ppeokEat .special-fx-shockwave{border-color:#ffa05ad9}.special-fx-layer.is-bomb .special-fx-shockwave{border-width:4px;border-color:#ffd250e6;animation-duration:1.35s}.special-fx-layer.is-ssakssuri .special-fx-shockwave{border-color:#8cdcffcc}.special-fx-layer.is-go .special-fx-shockwave{border-width:4px;border-color:#ffc85aeb;animation-duration:1.3s}.special-fx-layer.is-go.is-go-high .special-fx-shockwave{border-color:#ff963cf2}.special-fx-ring{opacity:0;border:2px solid #ffecaaa6;border-radius:50%;width:90px;height:90px;position:absolute}.special-fx-ring.r1{animation:1.2s ease-out 50ms both fx-ring}.special-fx-ring.r2{width:140px;height:140px;animation:1.2s ease-out .18s both fx-ring}.special-fx-ring.r3{width:190px;height:190px;animation:1.2s ease-out .32s both fx-ring}.special-fx-sparks{position:absolute;inset:0}.special-fx-sparks i{opacity:0;width:8px;height:8px;animation:1.05s ease-out both fx-spark;animation-delay:calc(var(--spark-i) * 28ms);transform:rotate(calc(var(--spark-i) * 36deg)) translateY(0);background:#ffe28a;border-radius:50%;margin:-4px;position:absolute;top:50%;left:50%;box-shadow:0 0 10px #ffd25ae6}.special-fx-layer.is-ppeok .special-fx-sparks i{background:#ff8f78}.special-fx-layer.is-ppeokEat .special-fx-sparks i{background:#ffb078}.special-fx-layer.is-ssakssuri .special-fx-sparks i{background:#9fe7ff}.special-fx-layer.is-bomb .special-fx-sparks i{background:#ffd45c;width:10px;height:10px}.special-fx-layer.is-go .special-fx-sparks i{background:#ffd978;width:9px;height:9px;box-shadow:0 0 12px #ffbe46f2}.special-fx-layer.is-go.is-go-high .special-fx-sparks i{background:#ffb14a}.special-fx-title{z-index:3;color:#fff4c4;letter-spacing:.04em;text-shadow:0 4px #5a140cd9,0 0 28px #ffc850d9;opacity:0;font:900 clamp(42px,8vw,72px)/1 Malgun Gothic,sans-serif;animation:1.35s cubic-bezier(.2,.8,.2,1) both fx-title;position:relative}.special-fx-layer.is-ppeok .special-fx-title{color:#ffd0c4;text-shadow:0 4px #6b1c16,0 0 28px #ff6e50e6}.special-fx-layer.is-ppeokEat .special-fx-title{color:#ffd4b8;text-shadow:0 4px #6b2410,0 0 28px #ff8c46e6;font-size:clamp(36px,7vw,64px)}.special-fx-layer.is-ttadak .special-fx-title{color:#ffe7a0}.special-fx-layer.is-jjok .special-fx-title{color:#fff5ba}.special-fx-layer.is-bomb .special-fx-title,.special-fx-layer.is-chongtong .special-fx-title{color:#fff1c2;font-size:clamp(48px,9vw,80px)}.special-fx-layer.is-threePpeok .special-fx-title{color:#ffd0c4;text-shadow:0 4px #6b1c16,0 0 28px #ff6e50e6;font-size:clamp(44px,8.5vw,76px)}.special-fx-layer.is-ssakssuri .special-fx-title{color:#dff7ff;text-shadow:0 4px #1d4d5c,0 0 28px #78d2ffe6}.special-fx-layer.is-shake .special-fx-title{color:#fff3b8;text-shadow:0 4px #6a4a10,0 0 28px #ffd25af2;animation-name:fx-title-shake;animation-duration:1.55s}.special-fx-layer.is-go .special-fx-title{color:#fff6c8;letter-spacing:.06em;text-shadow:0 5px #7a1c12,0 0 32px #ffbe3cf2;font-size:clamp(48px,11vw,96px);animation-name:fx-title-go;animation-duration:1.45s}.special-fx-layer.is-go.is-go-high .special-fx-title{color:#ffe0a8;text-shadow:0 5px #6b120c,0 0 36px #ff8c28fa;font-size:clamp(52px,12vw,104px)}.special-fx-layer.is-go.is-go-max .special-fx-title{color:#ffd090;text-shadow:0 6px #5a0e0a,0 0 40px #ff641e;font-size:clamp(56px,13vw,112px)}.special-fx-bonus{z-index:4;color:#fff4bd;opacity:0;background:#9d231bf5;border:2px solid #ffe185;border-radius:7px;padding:8px 14px;font:900 16px/1 Malgun Gothic,sans-serif;animation:1.35s .12s both fx-title;position:absolute;top:calc(50% + 58px)}.special-fx-layer.is-still{background:#060e0c66}.special-fx-layer.is-still>i,.special-fx-layer.is-still .special-fx-sparks,.special-fx-layer.is-still .special-fx-motif{display:none}.special-fx-layer.is-still .special-fx-title,.special-fx-layer.is-still .special-fx-bonus{opacity:1;animation-name:none;transform:none}.special-fx-layer.is-still .special-fx-title{font-size:clamp(34px,6vw,56px)}.special-fx-motif{z-index:2;width:180px;height:120px;position:absolute}.special-fx-motif.is-ppeok span,.special-fx-motif.is-ppeokEat span,.special-fx-motif.is-ttadak span,.special-fx-motif.is-jjok span,.special-fx-motif.is-ssakssuri span{background:linear-gradient(160deg,#fff8dceb,#d6aa5a8c);border:2px solid #ffecb4d9;border-radius:6px;width:54px;height:86px;position:absolute;box-shadow:0 10px 24px #00000059}.special-fx-motif.is-ppeok span:first-child{animation:1.2s both motif-stack;top:18px;left:28px;transform:rotate(-18deg)}.special-fx-motif.is-ppeok span:nth-child(2){animation:1.2s 80ms both motif-stack;top:10px;left:62px;transform:rotate(-2deg)}.special-fx-motif.is-ppeok span:nth-child(3){animation:1.2s .16s both motif-stack;top:20px;left:96px;transform:rotate(16deg)}.special-fx-motif.is-ppeokEat span:first-child{animation:1.15s both motif-scoop;top:18px;left:28px;transform:rotate(-18deg)}.special-fx-motif.is-ppeokEat span:nth-child(2){animation:1.15s 70ms both motif-scoop;top:10px;left:62px;transform:rotate(-2deg)}.special-fx-motif.is-ppeokEat span:nth-child(3){animation:1.15s .14s both motif-scoop;top:20px;left:96px;transform:rotate(16deg)}.special-fx-motif.is-ttadak span:first-child{animation:.95s both motif-clash-left;top:16px;left:34px}.special-fx-motif.is-ttadak span:nth-child(2){animation:.95s both motif-clash-right;top:16px;right:34px}.special-fx-motif.is-jjok span:first-child{animation:1.1s both motif-snap-a;top:20px;left:48px;transform:rotate(-8deg)}.special-fx-motif.is-jjok span:nth-child(2){animation:1.1s both motif-snap-b;top:14px;left:78px;transform:rotate(7deg)}.special-fx-motif.is-ssakssuri span{width:42px;height:68px}.special-fx-motif.is-ssakssuri span:first-child{animation:1.2s both motif-sweep;top:30px;left:8px}.special-fx-motif.is-ssakssuri span:nth-child(2){animation:1.2s 60ms both motif-sweep;top:18px;left:48px}.special-fx-motif.is-ssakssuri span:nth-child(3){animation:1.2s .12s both motif-sweep;top:12px;left:88px}.special-fx-motif.is-ssakssuri span:nth-child(4){animation:1.2s .18s both motif-sweep;top:22px;left:128px}.special-fx-motif.is-bomb b{opacity:0;background:#ffd45c;border-radius:50%;width:18px;height:18px;margin:-9px;animation:1.2s ease-out both motif-blast;position:absolute;top:50%;left:50%;box-shadow:0 0 18px #ffc850f2}.special-fx-motif.is-bomb b:first-child{animation-delay:0s}.special-fx-motif.is-bomb b:nth-child(2){animation-delay:80ms}.special-fx-motif.is-bomb b:nth-child(3){animation-delay:.16s}.special-fx-motif.is-bomb b:nth-child(4){animation-delay:.24s}.special-fx-motif.is-shake{width:210px;height:140px}.special-fx-motif.is-shake span{background:linear-gradient(160deg,#fff7e0,#f0d9a8);border:2px solid #f5ead4;border-radius:5px;width:48px;height:78px;position:absolute;box-shadow:0 10px 22px #0006}.special-fx-motif.is-shake span:first-child{animation:1.55s both motif-rattle-a;top:28px;left:34px}.special-fx-motif.is-shake span:nth-child(2){animation:1.55s both motif-rattle-b;top:18px;left:78px}.special-fx-motif.is-shake span:nth-child(3){animation:1.55s both motif-rattle-c;top:30px;left:122px}.special-fx-motif.is-shake i{opacity:0;background:radial-gradient(circle at 30% 30%,#fff9d2,#e8b84a 55%,#b8860b);border-radius:50%;width:10px;height:10px;position:absolute;box-shadow:0 0 10px #ffd25ad9}.special-fx-motif.is-shake i:nth-child(4){animation:1.55s 50ms both motif-bell;top:8px;left:48px}.special-fx-motif.is-shake i:nth-child(5){animation:1.55s .12s both motif-bell;top:0;left:100px}.special-fx-motif.is-shake i:nth-child(6){animation:1.55s .2s both motif-bell;top:10px;left:152px}.special-fx-motif.is-shake.has-cards{z-index:5;filter:drop-shadow(0 10px 22px #0000008c);isolation:isolate;background:#0812108c;border-radius:12px;justify-content:center;align-items:center;width:max-content;max-width:min(280px,84vw);height:auto;min-height:clamp(86px,22vw,124px);padding:8px 10px;display:flex;position:absolute;top:calc(50% - min(118px,34vw));left:50%;transform:translate(-50%)}.special-fx-motif.is-shake.has-cards .hwatu-card{filter:none;background:#fff7e0;flex-shrink:0;width:clamp(48px,13vw,72px);height:clamp(80px,21vw,118px);margin:0 0 0 clamp(-14px,-3.5vw,-8px);animation:1.55s both shake-card-rattle-b;position:relative;box-shadow:0 14px 28px #0000008c,0 0 0 2px #f5ead4eb}.special-fx-motif.is-shake.has-cards .hwatu-card .card-face{filter:none;opacity:1}.special-fx-motif.is-shake.has-cards .hwatu-card:first-child{z-index:1;margin-left:0;animation-name:shake-card-rattle-a}.special-fx-motif.is-shake.has-cards .hwatu-card:nth-child(2){z-index:3;animation-name:shake-card-rattle-b}.special-fx-motif.is-shake.has-cards .hwatu-card:last-child{z-index:2;animation-name:shake-card-rattle-c}.special-fx-layer.is-still.is-shake.has-cards .special-fx-motif.is-shake.has-cards{animation:none;display:flex}.special-fx-layer.is-still.is-shake.has-cards .special-fx-motif.is-shake.has-cards .hwatu-card{opacity:1;animation:none;transform:none}.special-fx-layer.is-still.is-shake.has-cards .special-fx-motif.is-shake.has-cards .hwatu-card:first-child{transform:rotate(-10deg)}.special-fx-layer.is-still.is-shake.has-cards .special-fx-motif.is-shake.has-cards .hwatu-card:nth-child(2){transform:scale(1.02)}.special-fx-layer.is-still.is-shake.has-cards .special-fx-motif.is-shake.has-cards .hwatu-card:last-child{transform:rotate(10deg)}.special-fx-shake-cards{z-index:4;color:#fff7df;white-space:nowrap;opacity:0;background:#5c2a0ef0;border:1px solid #d6a64680;border-radius:999px;margin:0;padding:6px 12px;font-size:10px;font-style:normal;font-weight:800;animation:1.55s both opponent-bomb-label;position:absolute;top:calc(50% + min(64px,18vw));left:50%;transform:translate(-50%);box-shadow:0 8px 22px #0006}.special-fx-layer.is-still .special-fx-shake-cards{opacity:1;animation-name:none}.special-fx-layer.is-shake .special-fx-title{margin-top:min(36px,10vw)}.special-fx-layer.is-shake.has-cards .special-fx-title,.special-fx-layer.is-shake.has-cards .special-fx-shake-cards{display:none}.special-fx-motif.is-go{width:min(220px,56vw);height:min(150px,38vw)}.special-fx-motif.is-go b{opacity:0;border:3px solid #ffdc78d9;border-radius:50%;width:72px;height:72px;margin:-36px;animation:1.35s cubic-bezier(.15,.8,.2,1) both motif-go-ring;position:absolute;top:50%;left:50%}.special-fx-motif.is-go b:first-child{animation-delay:0s}.special-fx-motif.is-go b:nth-child(2){width:110px;height:110px;margin:-55px;animation-delay:.12s}.special-fx-motif.is-go b:nth-child(3){width:150px;height:150px;margin:-75px;animation-delay:.24s}.special-fx-layer.is-go-high .special-fx-motif.is-go b{border-color:#ffaa50e6}.special-fx-layer.is-go-max .special-fx-motif.is-go b{border-width:4px;border-color:#ff8232f2}.score-breakdown{flex-wrap:wrap;gap:6px;margin:4px 0 8px;display:flex}.score-breakdown span{color:#d7e3dc;letter-spacing:.02em;background:#0a1614b8;border:1px solid #d6a64647;border-radius:999px;padding:3px 7px;font-size:8px;font-weight:800}.first-ppeok-bonus{z-index:7;color:#fff4bd;text-align:center;text-shadow:0 2px #500d09cc;white-space:nowrap;opacity:0;background:#9d231bf5;border:2px solid #ffe185;border-radius:7px;gap:3px;min-width:116px;padding:10px 14px;font:900 21px/1 Malgun Gothic,sans-serif;animation:1.45s both first-ppeok-bonus;display:grid;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)rotate(-5deg);box-shadow:0 0 28px #ffcd4bd9}.first-ppeok-bonus small{color:#fff;font-size:12px}.draw-card-motion.is-jjok>span{background:#691d18f5;border-color:#ffd768b3;animation:1.95s both jjok-label}@keyframes draw-flight{0%{transform:translate(0)scale(1)}28%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.14)}55%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.1)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale))}}@keyframes draw-match-flight{0%{transform:translate(0)scale(1)}24%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.12)}48%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.18)}72%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.08)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale))}}@keyframes draw-place-flight{0%{transform:translate(0)scale(1)}30%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.12)}58%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.08)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale))}}@keyframes draw-flip{0%,22%{transform:rotateY(0)}52%,to{transform:rotateY(180deg)}}@keyframes draw-match-flip{0%,18%{transform:rotateY(0)}38%,to{transform:rotateY(180deg)}}@keyframes draw-label{0%,35%,to{opacity:0}48%,77%{opacity:1}}@keyframes draw-match-label{0%,28%,to{opacity:0}40%,78%{opacity:1}}@keyframes match-burst{0%,34%,to{opacity:0}42%{opacity:1;transform:translate(-50%,-50%)rotate(-6deg)scale(.7)}54%,72%{opacity:1;transform:translate(-50%,-78%)rotate(3deg)scale(1.08)}}@keyframes floor-ghost-pulse{0%,55%{opacity:1;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}@keyframes floor-ghost-scoop{0%,42%{opacity:1;transform:scale(1.06)}58%{opacity:1;transform:scale(1.1);box-shadow:0 0 0 5px #ffd768e6,0 0 28px #ffcf46d9}78%{opacity:.85;transform:scale(.92)translateY(8px)}to{opacity:0;transform:scale(.55)translateY(28px)}}@keyframes jjok-flight{0%{transform:translate(0)rotate(0)scale(1)}34%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) rotate(-2deg) scale(1.12)}45%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) rotate(3deg) scale(1.28)}54%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) rotate(-2deg) scale(1.08)}72%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) rotate(0) scale(1.16)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) rotate(0) scale(var(--draw-target-scale))}}@keyframes jjok-flip{0%,13%{transform:rotateY(0)}34%,to{transform:rotateY(180deg)}}@keyframes jjok-pair-card{0%,32%{opacity:0;transform:scale(.92)}38%,to{opacity:1;transform:scale(1)}}@keyframes jjok-burst{0%,40%,72%,to{opacity:0}45%{opacity:1;transform:translate(-50%,-50%)rotate(-7deg)scale(.65)}55%{opacity:1;transform:translate(-50%,-72%)rotate(4deg)scale(1.35)}65%{opacity:1;transform:translate(-50%,-80%)rotate(-2deg)scale(1)}}@keyframes special-burst{0%,28%,to{opacity:0}36%{opacity:1;transform:translate(-50%,-50%)rotate(-6deg)scale(.7)}50%,78%{opacity:1;transform:translate(-50%,-78%)rotate(3deg)scale(1.08)}}@keyframes special-flip{0%,16%{transform:rotateY(0)}42%,to{transform:rotateY(180deg)}}@keyframes ttadak-flight{0%{transform:translate(0)scale(1)}30%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.1)}42%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.34) rotate(-4deg)}52%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.08) rotate(3deg)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale))}}@keyframes ppeok-flight{0%{transform:translate(0)scale(1)}35%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.12)}48%{transform:translate3d(var(--draw-center-x),calc(var(--draw-center-y) - 12px),0) scale(1.3)}60%{transform:translate3d(var(--draw-center-x),calc(var(--draw-center-y) + 8px),0) scale(1.05)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale))}}@keyframes ppeok-eat-flight{0%{transform:translate(0)scale(1)}28%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.1)}44%{transform:translate3d(var(--draw-center-x),calc(var(--draw-center-y) + 6px),0) scale(1.28) rotate(-3deg)}58%{transform:translate3d(calc(var(--draw-center-x) - 8px),calc(var(--draw-center-y) - 14px),0) scale(1.12) rotate(4deg)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale))}}@keyframes bomb-flight{0%{transform:translate(0)scale(1)rotate(0)}28%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.18) rotate(-6deg)}44%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.42) rotate(8deg)}58%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.1) rotate(-3deg)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale)) rotate(0)}}@keyframes ssakssuri-flight{0%{transform:translate(0)scale(1)}34%{transform:translate3d(var(--draw-center-x),var(--draw-center-y),0) scale(1.14)}52%{transform:translate3d(calc(var(--draw-center-x) + 18px),calc(var(--draw-center-y) - 10px),0) scale(1.2) rotate(4deg)}to{transform:translate3d(var(--draw-target-x),var(--draw-target-y),0) scale(var(--draw-target-scale))}}@keyframes table-shake-ppeok{0%,to{transform:translate(0)}20%{transform:translate(-5px,2px)}40%{transform:translate(6px,-2px)}60%{transform:translate(-4px,1px)}80%{transform:translate(3px,-1px)}}@keyframes table-shake-ppeok-eat{0%,to{transform:translate(0)}25%{transform:translate(6px,-3px)}50%{transform:translate(-7px,2px)}75%{transform:translate(4px,-1px)}}@keyframes table-shake-ttadak{0%,to{transform:translate(0)}25%{transform:translate(-7px)}50%{transform:translate(7px)}75%{transform:translate(-3px)}}@keyframes table-shake-jjok{0%,to{transform:translate(0)scale(1)}40%{transform:translate(0)scale(1.015)}70%{transform:translateY(-3px)scale(1.01)}}@keyframes table-shake-bomb{0%,to{transform:translate(0)}15%{transform:translate(-8px,4px)rotate(-.4deg)}35%{transform:translate(9px,-3px)rotate(.5deg)}55%{transform:translate(-6px,2px)}75%{transform:translate(4px,-2px)}}@keyframes table-shake-ssakssuri{0%,to{transform:translate(0)}30%{transform:translate(10px,-2px)}60%{transform:translate(-8px,2px)}80%{transform:translate(4px)}}@keyframes table-shake-heundeul{0%,to{transform:translate(0)rotate(0)}10%{transform:translate(-10px,2px)rotate(-1deg)}22%{transform:translate(12px,-3px)rotate(1.2deg)}34%{transform:translate(-11px,1px)rotate(-.9deg)}46%{transform:translate(10px,-2px)rotate(1deg)}58%{transform:translate(-8px,2px)rotate(-.7deg)}72%{transform:translate(6px,-1px)rotate(.5deg)}86%{transform:translate(-3px,1px)rotate(-.2deg)}}@keyframes table-shake-go{0%,to{transform:translate(0)scale(1)}18%{transform:translate(-4px,2px)scale(1.012)}36%{transform:translate(5px,-2px)scale(1.018)}54%{transform:translate(-3px,1px)scale(1.01)}72%{transform:translate(2px,-1px)scale(1.006)}}@keyframes fx-title-shake{0%{opacity:0;transform:scale(.55)rotate(-12deg)}18%{opacity:1;transform:scale(1.22)rotate(8deg)}32%{opacity:1;transform:scale(1.08)rotate(-7deg)}46%{opacity:1;transform:scale(1.14)rotate(5deg)}60%,78%{opacity:1;transform:scale(1)rotate(-2deg)}to{opacity:0;transform:scale(.92)translateY(-18px)}}@keyframes fx-title-go{0%{opacity:0;transform:scale(.35)rotate(-10deg)translateY(24px)}22%{opacity:1;transform:scale(1.28)rotate(4deg)translateY(0)}40%{opacity:1;transform:scale(.96)rotate(-3deg)}55%{opacity:1;transform:scale(1.08)rotate(2deg)}72%,82%{opacity:1;transform:scale(1)rotate(-1deg)}to{opacity:0;transform:scale(.9)translateY(-22px)}}@keyframes motif-go-ring{0%{opacity:0;transform:scale(.35)}28%{opacity:.95;transform:scale(1)}to{opacity:0;transform:scale(1.55)}}@keyframes motif-rattle-a{0%{opacity:0;transform:translate(-20px,12px)rotate(-22deg)}18%,82%{opacity:1}28%{transform:translate(6px,-4px)rotate(10deg)}42%{transform:translate(-8px,3px)rotate(-14deg)}56%{transform:translate(5px,-2px)rotate(8deg)}70%{transform:translate(-3px,1px)rotate(-6deg)}to{opacity:0;transform:translate(0)rotate(-8deg)}}@keyframes motif-rattle-b{0%{opacity:0;transform:translateY(-18px)rotate(0)}16%,82%{opacity:1}30%{transform:translate(-7px,4px)rotate(-12deg)}44%{transform:translate(8px,-3px)rotate(11deg)}58%{transform:translate(-6px,2px)rotate(-8deg)}72%{transform:translate(4px,-1px)rotate(5deg)}to{opacity:0;transform:translate(0)rotate(0)}}@keyframes motif-rattle-c{0%{opacity:0;transform:translate(20px,12px)rotate(22deg)}18%,82%{opacity:1}28%{transform:translate(-6px,-4px)rotate(-10deg)}42%{transform:translate(8px,3px)rotate(14deg)}56%{transform:translate(-5px,-2px)rotate(-8deg)}70%{transform:translate(3px,1px)rotate(6deg)}to{opacity:0;transform:translate(0)rotate(8deg)}}@keyframes shake-card-rattle-a{0%{opacity:0;transform:translate(-18px,10px)rotate(-18deg)scale(.9)}14%,88%{opacity:1}26%{transform:translate(5px,-3px)rotate(8deg)scale(1.04)}40%{transform:translate(-7px,2px)rotate(-12deg)scale(1)}54%{transform:translate(4px,-2px)rotate(6deg)scale(1.02)}68%{transform:translate(-2px,1px)rotate(-8deg)scale(1)}to{opacity:1;transform:translate(0)rotate(-10deg)scale(1)}}@keyframes shake-card-rattle-b{0%{opacity:0;transform:translateY(-16px)rotate(0)scale(.9)}12%,88%{opacity:1}28%{transform:translate(-6px,3px)rotate(-10deg)scale(1.06)}42%{transform:translate(7px,-2px)rotate(9deg)scale(1.02)}56%{transform:translate(-5px,2px)rotate(-6deg)scale(1.04)}70%{transform:translate(3px,-1px)rotate(3deg)scale(1.02)}to{opacity:1;transform:translate(0)rotate(-1deg)scale(1.04)}}@keyframes shake-card-rattle-c{0%{opacity:0;transform:translate(18px,10px)rotate(18deg)scale(.9)}14%,88%{opacity:1}26%{transform:translate(-5px,-3px)rotate(-8deg)scale(1.04)}40%{transform:translate(7px,2px)rotate(12deg)scale(1)}54%{transform:translate(-4px,-2px)rotate(-6deg)scale(1.02)}68%{transform:translate(2px,1px)rotate(8deg)scale(1)}to{opacity:1;transform:translate(0)rotate(10deg)scale(1)}}@keyframes motif-bell{0%{opacity:0;transform:translateY(8px)scale(.4)}25%{opacity:1;transform:translateY(-6px)scale(1.15)}55%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-14px)scale(.7)}}@keyframes fx-flash{0%{opacity:0}18%{opacity:1}to{opacity:0}}@keyframes fx-shockwave{0%{opacity:.9;transform:scale(.25)}to{opacity:0;transform:scale(1.35)}}@keyframes fx-ring{0%{opacity:.85;transform:scale(.4)}to{opacity:0;transform:scale(1.8)}}@keyframes fx-spark{0%{opacity:0;transform:rotate(calc(var(--spark-i) * 36deg)) translateY(0) scale(.4)}25%{opacity:1}to{opacity:0;transform:rotate(calc(var(--spark-i) * 36deg)) translateY(-118px) scale(1)}}@keyframes fx-title{0%{opacity:0;transform:scale(.55)rotate(-8deg)}28%{opacity:1;transform:scale(1.18)rotate(3deg)}55%,78%{opacity:1;transform:scale(1)rotate(-2deg)}to{opacity:0;transform:scale(.92)translateY(-18px)}}@keyframes motif-stack{0%{opacity:0;transform:translateY(24px)scale(.8)}35%,75%{opacity:1;transform:translateY(0)scale(1)}to{opacity:0;transform:translateY(-10px)scale(.95)}}@keyframes motif-scoop{0%{opacity:0;transform:translateY(0)scale(1)rotate(0)}28%{opacity:1;transform:translateY(-4px)scale(1.05)}55%{opacity:1;transform:translate(18px,-28px)scale(.92)rotate(8deg)}to{opacity:0;transform:translate(42px,-56px)scale(.7)rotate(14deg)}}@keyframes motif-clash-left{0%{opacity:0;transform:translate(-40px)rotate(-12deg)}35%{opacity:1;transform:translate(8px)rotate(-4deg)}55%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0}}@keyframes motif-clash-right{0%{opacity:0;transform:translate(40px)rotate(12deg)}35%{opacity:1;transform:translate(-8px)rotate(4deg)}55%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0}}@keyframes motif-snap-a{0%{opacity:0;transform:translate(-18px,10px)rotate(-14deg)}40%,70%{opacity:1;transform:translate(0)rotate(-8deg)}to{opacity:0}}@keyframes motif-snap-b{0%{opacity:0;transform:translate(18px,-8px)rotate(14deg)}40%,70%{opacity:1;transform:translate(0)rotate(7deg)}to{opacity:0}}@keyframes motif-sweep{0%{opacity:0;transform:translate(-50px)rotate(-10deg)}40%{opacity:1;transform:translate(0)rotate(0)}to{opacity:0;transform:translate(30px)translateY(-16px)}}@keyframes motif-blast{0%{opacity:0;transform:scale(.2)}30%{opacity:1;transform:scale(1.4)}to{opacity:0;transform:scale(3.2)}}@keyframes jjok-label{0%,42%,88%,to{opacity:0}51%,82%{opacity:1}}@keyframes first-ppeok-bonus{0%,40%,to{opacity:0}48%{opacity:1;transform:translate(-50%,-50%)rotate(-5deg)scale(.7)}60%,84%{opacity:1;transform:translate(-50%,-75%)rotate(2deg)scale(1)}}@media (prefers-reduced-motion:reduce){.special-fx-layer{animation:none!important}.special-fx-layer>i,.special-fx-layer .special-fx-sparks,.special-fx-layer .special-fx-motif{opacity:0!important;animation:none!important}.shake-reveal-layer,.shake-reveal-fan,.shake-reveal-fan .hwatu-card,.shake-reveal-label{opacity:1!important;animation:none!important}.special-fx-layer .special-fx-title,.special-fx-layer .special-fx-bonus{opacity:1!important;animation:none!important;transform:none!important}}.game-side-panel{background:#14201f;align-content:start;gap:17px;padding:23px 20px;display:grid}.game-side-panel section{border:1px solid var(--line);background:#ffffff06;border-radius:3px;padding:15px}.side-heading{justify-content:space-between;align-items:center;margin-bottom:13px;display:flex}.side-heading>span{font-size:11px;font-weight:800}.side-heading b{color:#65c99b;letter-spacing:.12em;font-size:7px}.side-heading small{color:#73837e;font-size:8px}.game-facts{gap:10px;margin:0;display:grid}.game-facts div{border-top:1px solid #ffffff0e;justify-content:space-between;padding-top:9px;display:flex}.game-facts dt{color:#71817c;font-size:9px}.game-facts dd{margin:0;font-size:10px;font-weight:800}.stake-grid{grid-template-columns:repeat(5,1fr);gap:7px;display:grid}.stake-grid button{color:#35423f;cursor:pointer;background:#ede7da;border:1px solid #1019191f;border-radius:3px;min-height:61px}.stake-grid button strong{font:800 15px Georgia,Malgun Gothic,serif;display:block}.stake-grid button small{color:#7c8783;font-size:8px}.stake-grid button.selected{color:#fff;background:var(--red);border-color:var(--red);box-shadow:0 7px 18px #d646352e}.stake-grid button.selected small{color:#ffd9d3}.stake-grid.small{grid-template-columns:repeat(3,1fr)}.stake-grid.small button{min-height:34px;font:800 9px sans-serif}.panel-button{width:100%;color:var(--gold);cursor:pointer;background:0 0;border:1px solid #d6a64647;border-radius:3px;margin-top:9px;padding:9px;font-size:9px;font-weight:800}.safety-panel strong{color:#aab8b3;font-size:10px}.safety-panel p{color:#64756f;margin:8px 0 0;font-size:9px;line-height:1.55}.stake-request-banner,.next-stake-banner{z-index:35;color:#182622;background:#fff9ed;border-radius:4px;justify-content:space-between;align-items:center;gap:20px;min-width:430px;padding:12px 14px;display:flex;position:fixed;top:98px;left:50%;transform:translate(-50%);box-shadow:0 15px 45px #0000004d}.stake-request-banner small{color:#78837f;font-size:8px;display:block}.stake-request-banner strong{font-size:12px}.stake-request-banner button{cursor:pointer;color:#38433f;background:#e5dfd4;border:0;border-radius:3px;margin-left:5px;padding:8px 11px;font-size:9px}.stake-request-banner button.accept{background:var(--red);color:#fff}.next-stake-banner{color:#285c49;min-width:auto;font-size:10px;font-weight:800;display:block}.waiting-room{text-align:center;place-content:center;min-height:calc(100vh - 152px);display:grid}.waiting-rings{place-items:center;width:120px;height:120px;margin:0 auto 24px;display:grid;position:relative}.waiting-rings i{border:1px solid #d6a64645;border-radius:50%;animation:2.2s ease-out infinite ring;position:absolute;inset:0}.waiting-rings i:nth-child(2){animation-delay:1.1s}.waiting-rings span{width:64px;height:64px;color:var(--gold);background:#263a35;border-radius:50%;place-items:center;font:26px Georgia,serif;display:grid}@keyframes ring{0%{opacity:1;transform:scale(.5)}to{opacity:0;transform:scale(1.25)}}.waiting-room h2{margin:0 0 9px;font:500 29px Georgia,Batang,serif}.waiting-room>p:not(.eyebrow){color:#778983;font-size:11px}.waiting-stake{border-top:1px solid var(--line);color:#8c9b96;margin:18px auto 0;padding-top:15px;font-size:10px}.waiting-stake strong{color:var(--gold);margin-left:5px}.waiting-seats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:420px;margin:22px auto 0;padding:0;list-style:none;display:grid}.waiting-seats li{background:#ffffff08;border:1px solid #d6a64647;border-radius:6px;place-content:center;gap:4px;min-height:72px;display:grid}.waiting-seats strong{color:var(--paper);font-size:13px}.waiting-seats small{color:#8c9b96;font-size:9px}.invite-share{text-align:left;background:#ffffff0a;border:1px solid #d6a64647;border-radius:8px;width:min(520px,100vw - 40px);margin:22px auto 0;padding:16px 16px 14px}.invite-share__label{color:var(--gold);letter-spacing:.12em;margin:0 0 8px;font-size:10px;font-weight:800}.invite-share__row{flex-wrap:wrap;gap:8px;display:flex}.invite-share input{border:1px solid var(--line);min-width:0;color:var(--paper);background:#00000047;border-radius:4px;flex:180px;padding:10px 12px;font-size:12px}.invite-share__copy,.invite-share__share{white-space:nowrap;cursor:pointer;border:0;border-radius:4px;padding:10px 14px;font-size:12px;font-weight:800}.invite-share__copy{background:var(--gold);color:#1a1200}.invite-share__share{color:var(--gold);background:0 0;border:1px solid #d6a64666}.invite-share__hint{color:#8c9b96;margin:8px 0 0;font-size:11px;line-height:1.5}.invite-share--omok{background:#ffffff8c;border-color:#3c26122e;width:min(460px,100%);margin-top:18px}.invite-share--omok .invite-share__label{color:#7a4e12}.invite-share--omok input{color:#1a1200;background:#fffdf6;border-color:#3c26122e}.invite-share--omok .invite-share__hint{color:#6a5744}.invite-share--othello{background:#ffffff14;border-color:#6dd3a140;width:min(460px,100%);margin-top:18px}.invite-share--othello .invite-share__label{color:#9ad4b8}.invite-share--othello input{color:var(--paper);background:#00000040;border-color:#ffffff1f}.invite-share--othello .invite-share__hint{color:#8c9b96}.invite-share--chess{background:#ffffff14;border-color:#d6a64647;width:min(460px,100%);margin-top:18px}.invite-share--chess .invite-share__label{color:#e6c07a}.invite-share--chess input{color:var(--paper);background:#00000040;border-color:#ffffff1f}.invite-share--chess .invite-share__hint{color:#8c9b96}.decision-overlay{z-index:50;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#060d0cc2;place-items:center;display:grid;position:fixed;inset:0}.decision-card{overscroll-behavior:contain;background:var(--paper);color:#16231f;text-align:center;border-radius:5px;width:min(420px,100vw - 32px);max-height:calc(100dvh - 32px);padding:34px;overflow-y:auto;box-shadow:0 25px 70px #0000006b}.decision-score{background:var(--red);color:#fff;border-radius:50%;place-items:center;width:65px;height:65px;margin:0 auto 18px;font:700 22px Georgia,serif;display:grid}.decision-card h2{margin:0;font:500 29px Georgia,Batang,serif}.decision-card>p{color:#75807c;font-size:11px}.decision-card>div:last-child{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;display:grid}.decision-card button{color:#3d4844;cursor:pointer;background:0 0;border:1px solid #d5cfc3;border-radius:3px;padding:13px;font-size:11px;font-weight:800}.decision-card button.go-button{color:#fff;background:var(--red);border-color:var(--red)}.decision-card button.wide{grid-column:1/-1}.role-choice-card{width:min(460px,100vw - 32px)}.role-choice-preview{justify-content:center;margin:18px 0 0!important;display:flex!important}.role-choice-preview .hwatu-card{width:82px;height:134px}.role-choice-actions{grid-template-columns:1fr 1fr!important;gap:9px!important;margin-top:18px!important;display:grid!important}.role-choice-actions button{align-content:center;gap:5px;min-height:72px;display:grid}.role-choice-actions button strong{font-size:14px}.role-choice-actions button small{opacity:.7;font-size:8px;line-height:1.45}.bomb-choice-card{position:relative}.bomb-choice-card>.modal-close{z-index:1;color:#73807b;cursor:pointer;background:0 0;border:0;border-radius:3px;place-items:center;width:44px;height:44px;padding:0;font-size:28px;font-weight:400;line-height:1;display:grid;position:absolute;top:8px;right:8px}.bomb-choice-card>.modal-close:disabled{opacity:.45;cursor:default}.bomb-choice-preview{justify-content:center;margin-top:18px;display:flex}.bomb-choice-preview .hwatu-card{width:67px;height:109px;margin-left:-12px;transform:rotate(-4deg)}.bomb-choice-preview .hwatu-card:first-child{margin-left:0;transform:rotate(-9deg)}.bomb-choice-preview .hwatu-card:last-child{transform:rotate(5deg)}.floor-pick-card .floor-pick-preview{flex-wrap:wrap;justify-content:center;gap:14px;margin:18px 0 8px;display:flex}.floor-pick-option{cursor:pointer;background:0 0;border:0;border-radius:8px;padding:0;transition:transform .16s,box-shadow .16s}.floor-pick-option:hover:not(:disabled),.floor-pick-option:focus-visible{box-shadow:0 0 0 3px var(--gold), 0 12px 28px #00000059;outline:none;transform:translateY(-6px)}.floor-pick-option:disabled{opacity:.55;cursor:default}.floor-pick-option .hwatu-card{pointer-events:none;width:82px;height:134px;margin:0}.floor-pick-cancel{color:#35423f;cursor:pointer;background:#ede7da;border:1px solid #10191929;border-radius:4px;min-height:44px;margin-top:14px;padding:10px 18px;font-size:13px;font-weight:700}.result-kicker{color:var(--red);letter-spacing:.16em;font-size:9px;font-weight:900}.result-card{width:min(510px,100vw - 32px)}.result-card h2{margin-top:10px}.result-money{background:#eee8da;padding:15px;grid-template-columns:1fr!important;gap:2px!important;margin:18px 0 0!important;display:grid!important}.result-money small{color:#7a8581;font-size:9px}.result-money strong{color:var(--red-dark);font:700 28px Georgia,Malgun Gothic,serif}.settlement-breakdown{text-align:left;background:#ffffff73;border:1px solid #ddd5c7;margin-top:12px;padding:15px}.settlement-title{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.settlement-title strong{color:#26342f;font-size:11px}.settlement-title span{color:#89928f;font-size:8px}.settlement-score-grid{border:1px solid #e1dbd0;grid-template-columns:repeat(3,1fr);margin:12px 0 0;display:grid}.settlement-score-grid>div{text-align:center;border-left:1px solid #e1dbd0;padding:9px 7px}.settlement-score-grid>div:first-child{border-left:0}.settlement-score-grid dt{color:#7c8883;font-size:8px}.settlement-score-grid dd{color:#26342f;margin:3px 0 0;font-size:12px;font-weight:900}.settlement-score-detail,.settlement-factors{flex-wrap:wrap;gap:5px;margin-top:9px;display:flex}.settlement-score-detail span,.settlement-factors span{color:#596560;background:#e9e3d7;border-radius:20px;padding:5px 7px;font-size:8px;font-weight:800}.settlement-score-detail span.named-set{color:var(--red-dark);background:#f5dfd9}.settlement-factors span{color:#315c4c;background:#dfe9e3}.settlement-factors b{color:var(--red-dark)}.settlement-formula{color:#5e6965;border-top:1px dashed #d3ccbf;justify-content:space-between;align-items:center;gap:12px;margin:11px 0 0;padding-top:11px;font-size:10px;display:flex}.settlement-formula strong{color:var(--red-dark);white-space:nowrap;font-size:13px}.settlement-cap{color:#80683f;text-align:center;background:#fff0d5;margin:9px 0 0;padding:8px;font-size:9px;line-height:1.45}.settlement-payments{gap:10px;margin-top:10px;display:grid}.settlement-payment{background:#ffffff59;border:1px solid #e1dbd0;padding:10px}.settlement-payment>strong{color:#26342f;font-size:11px;display:block}.settlement-payment p{color:#5e6965;justify-content:space-between;gap:8px;margin:8px 0 0;font-size:10px;display:flex}.settlement-payment p strong{color:var(--red-dark)}.no-settlement{color:#75807c;margin:14px 0 0;font-size:10px}.result-actions{grid-template-columns:1fr!important;gap:8px!important;margin-top:15px!important;display:grid!important}.waiting-next{color:#71807b;text-align:center;overflow-wrap:anywhere;max-width:100%;margin:0;font-size:10px;line-height:1.5}.bankrupt-overlay{z-index:60}.leave-confirm-overlay{z-index:110}.leave-confirm-card{width:min(420px,100vw - 32px)}.leave-confirm-card>p{overflow-wrap:anywhere;line-height:1.55}.bankrupt-card{width:min(460px,100vw - 32px)}.bankrupt-card h2{margin-top:10px;line-height:1.25}.bankrupt-card>p strong{color:var(--red-dark)}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#050c0bc7;place-items:center;padding:18px;display:grid;position:fixed;inset:0;overflow-y:auto}.modal{color:#182521;background:var(--paper);border-radius:5px;width:min(550px,100%);max-height:calc(100vh - 36px);padding:33px;position:relative;overflow-y:auto;box-shadow:0 28px 80px #00000073}.modal-close{color:#73807b;cursor:pointer;background:0 0;border:0;width:33px;height:33px;font-size:24px;position:absolute;top:13px;right:16px}.modal h2{margin:0 0 23px;font:500 27px Georgia,Batang,serif}.modal label,.modal legend{color:#5f6b67;font-size:10px;font-weight:800}.modal input{color:#192622;background:#fff;border:1px solid #d9d2c5;border-radius:3px;outline:0;width:100%;margin-top:7px;padding:12px}.modal input:focus{border-color:var(--green)}.modal fieldset{border:0;margin:22px 0;padding:0}.modal legend{margin-bottom:8px}.modal-notice,.legal-box{color:#5c6864;background:#eee8dc;gap:9px;margin-bottom:17px;padding:12px;font-size:9px;line-height:1.55;display:flex}.modal-notice p{margin:0}.full-button{width:100%}.full-button span{margin:0}.rules-modal{width:min(760px,100%)}.rules-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.rules-grid article{border:1px solid #ded8cd;padding:16px}.rules-grid article>span{color:var(--red);font:700 13px Georgia,serif}.rules-grid h3{margin:9px 0 6px;font-size:12px}.rules-grid p{color:#6d7975;margin:0;font-size:9px;line-height:1.6}.legal-box{margin:14px 0 0;display:block}.legal-box strong{color:var(--red-dark);font-size:10px;display:block}.legal-box p{margin:5px 0 0}.rules-beginner-heading{color:#182521;letter-spacing:-.01em;margin:0 0 10px;font-size:13px;font-weight:800}.rules-beginner-heading+.rules-grid{margin-bottom:22px}.rules-grid--beginner article{background:#f3f7f2;border-color:#c9d9cf}.rules-grid--beginner p{color:#3f534c;font-size:12px;line-height:1.55}.rules-grid--beginner h3{font-size:13px}.omok-rules-modal .rules-grid article,.yut-rules-modal .rules-grid article,.cannon-rules-modal .rules-grid article{background:#f7f4ee}.omok-rules-modal .rules-grid strong,.yut-rules-modal .rules-grid strong,.cannon-rules-modal .rules-grid strong{color:var(--ink);font-weight:800}.omok-rules-modal .rules-grid p,.yut-rules-modal .rules-grid p,.cannon-rules-modal .rules-grid p{color:#4d5a56;font-size:13px;line-height:1.55}.omok-rules-modal .rules-grid h3,.yut-rules-modal .rules-grid h3,.cannon-rules-modal .rules-grid h3{font-size:14px}.omok-howto-link,.yut-howto-link,.cannon-howto-link{flex-direction:column;align-items:center;margin:22px auto 0;display:inline-flex}@media (max-width:640px){.rules-grid,.omok-rules-modal .rules-grid,.yut-rules-modal .rules-grid,.cannon-rules-modal .rules-grid{grid-template-columns:1fr}}.profile-modal{width:min(410px,100%)}.profile-balance{background:#eee8dc;justify-content:space-between;margin:17px 0;padding:15px;font-size:11px;display:flex}.profile-balance strong{font-family:Georgia,Malgun Gothic,serif}.demo-reset,.ad-cancel{color:#75807c;cursor:pointer;background:0 0;border:0;width:100%;padding:13px;font-size:9px}.ad-modal{text-align:center;width:min(390px,100%)}.ad-stage{color:#fff;background:linear-gradient(155deg,#183f35,#111e1c);place-content:center;min-height:260px;margin:-33px -33px 20px;padding:25px;display:grid}.ad-stage>span{letter-spacing:.24em;color:#8cb0a3;font-size:7px}.ad-mark{width:min(120px,100%);color:var(--gold);letter-spacing:.18em;border:1px solid #d6a64680;justify-items:center;gap:8px;margin:16px auto;padding:12px 10px;font:700 11px/1.1 Segoe UI,system-ui,sans-serif;display:grid}.ad-mark-logo{color:#f3efe6;width:36px;height:36px}.ad-stage p{margin:0;font:500 18px/1.45 Georgia,Batang,serif}.ad-progress{background:#ded8cc;height:3px;margin-bottom:13px}.ad-progress i{background:var(--red);height:100%;transition:width 1s linear;display:block}.ad-count{color:#6f7c77;font-size:10px;display:block}.ad-modal>small{color:#9ca5a2;font-size:8px;line-height:1.5;display:block}.toast{z-index:150;color:#25342f;background:#fffaf0;border-radius:4px;align-items:center;gap:9px;min-width:290px;max-width:calc(100vw - 30px);padding:13px 16px;font-size:11px;font-weight:700;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 16px 50px #00000057}.toast span{color:var(--green)}.loading-screen,.auth-screen{place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.loading-screen{align-content:center;gap:18px}.loading-screen p{color:#778984;letter-spacing:.1em;font-size:10px}.loading-pulse{gap:6px;display:flex}.loading-pulse i{background:var(--red);border-radius:50%;width:7px;height:7px;animation:1.2s infinite pulse}.loading-pulse i:nth-child(2){animation-delay:.2s}.loading-pulse i:nth-child(3){animation-delay:.4s}@keyframes pulse{50%{opacity:.5}}.auth-pattern{background:radial-gradient(circle at 75% 45%,#d6463557 0 170px,#0000 171px),linear-gradient(115deg,#0000 0 57%,#ffffff06 57% 58%,#0000 58%);position:absolute;inset:0}.auth-card{border:1px solid var(--line);background:#101919d1;width:min(600px,100vw - 35px);padding:50px;position:relative;box-shadow:0 30px 90px #0000004d}.auth-card .brand{margin-bottom:45px}.auth-card h1{font-size:clamp(43px,6vw,65px)}.auth-copy{color:#8fa09a;max-width:480px;margin:22px 0;font-size:13px;line-height:1.7}.auth-button{align-items:center;text-decoration:none;display:inline-flex}.safe-note{border-top:1px solid var(--line);color:#6d7e78;margin-top:28px;padding-top:18px;font-size:9px}@media (max-width:1050px){.lobby-hero{grid-template-columns:1fr .72fr}.lobby-content{grid-template-columns:1fr 290px}.hero-cards{transform-origin:50%;transform:scale(.87)}.game-table-wrap{grid-template-columns:1fr;grid-template-areas:"table""hand"}.game-side-panel{display:none}html:not([data-matgo-land="1"]) .game-table{border-right:0;min-height:calc(100vh - 152px)}html:not([data-matgo-land="1"]) .table-center{grid-template-columns:64px 1fr 150px}html:not([data-matgo-land="1"]) .hwatu-card,html:not([data-matgo-land="1"]) .card-back{width:62px;height:102px}html:not([data-matgo-land="1"]) .hwatu-card.is-mini{width:42px;height:69px}html:not([data-matgo-land="1"]) .capture-stack{--capture-card-w:42px;min-height:69px}html:not([data-matgo-land="1"]) .capture-empty{width:42px;height:69px}html:not([data-matgo-land="1"]) .floor-cards,html:not([data-matgo-land="1"]) .floor-triple-stack{--floor-card-width:62px;--floor-card-height:102px;--floor-stack-step:16px}html:not([data-matgo-land="1"]) .app-shell.is-table-play{--matgo-floor-min:150px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-table{grid-template-rows:auto minmax(0,1fr) auto;row-gap:6px;overflow:hidden}html:not([data-matgo-land="1"]) .app-shell.is-table-play .table-center{height:100%;min-height:0;padding-top:4px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .captured-groups .capture-stack{overscroll-behavior:contain;max-height:138px;overflow-y:auto}html:not([data-matgo-land="1"]) .app-shell.is-table-play .floor-cards{overscroll-behavior:none;justify-self:center;width:max-content;max-width:100%;min-height:0;max-height:100%;overflow:hidden}html:not([data-matgo-land="1"]) .opponent-zone{grid-template-columns:minmax(160px,200px) minmax(0,1fr);grid-template-areas:"meta hand""captured captured";align-items:start;min-height:auto;padding-bottom:8px}html:not([data-matgo-land="1"]) .game-table.is-three .opponent-row{grid-template-columns:1fr 1fr}html:not([data-matgo-land="1"]) .game-table.is-three .opponent-zone{grid-template-columns:1fr;grid-template-areas:"meta""hand""captured"}html:not([data-matgo-land="1"]) .opponent-zone .captured-groups{margin-top:4px}html:not([data-matgo-land="1"]) .my-hand{--hand-w:82px;--hand-h:134px;min-height:148px}html:not([data-matgo-land="1"]) .opponent-hand .card-back{width:68px;height:112px;margin-left:-30px}html:not([data-matgo-land="1"]) .opponent-hand .card-back>span{font-size:20px}html:not([data-matgo-land="1"]) .hand-count-badge{right:max(4px,50% - 72px)}html:not([data-matgo-land="1"]) .capture-group>span{font-size:10px}}@media (min-width:761px) and (max-width:1050px) and (orientation:portrait){.app-shell.is-table-play .topbar{height:69px;padding:0 max(15px, env(safe-area-inset-left)) 0 max(15px, env(safe-area-inset-right))}.app-shell.is-table-play .brand-mark{width:30px;height:30px}.app-shell.is-table-play .brand strong{font-size:17px}.app-shell.is-table-play .legal-chip,.app-shell.is-table-play .balance-box,.app-shell.is-table-play .avatar-button b{display:none}:is(.app-shell.is-table-play .game-toolbar,.app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff)){height:auto;min-height:52px;padding:6px max(15px, env(safe-area-inset-right)) 6px max(15px, env(safe-area-inset-left));grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"leave diff actions";gap:6px 10px}.app-shell.is-table-play .stake-display{display:none}.app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff) .room-identity{display:none}.app-shell.is-table-play .game-toolbar>.quiet-button:first-child{grid-area:leave}.app-shell.is-table-play .game-toolbar .matgo-ai-diff{scrollbar-width:none;flex-wrap:nowrap;grid-area:diff;justify-content:flex-start;gap:4px;overflow-x:auto}.app-shell.is-table-play .game-toolbar .matgo-ai-diff::-webkit-scrollbar{display:none}.app-shell.is-table-play .game-toolbar .toolbar-actions{scrollbar-width:none;flex-wrap:nowrap;grid-area:actions;overflow-x:auto}.app-shell.is-table-play .game-toolbar .toolbar-actions::-webkit-scrollbar{display:none}.app-shell.is-table-play .matgo-ai-diff button{white-space:nowrap;padding:6px 9px;font-size:11px}.app-shell.is-table-play .toolbar-actions .quiet-button{padding:7px 9px;font-size:10px}.app-shell.is-table-play .game-table-wrap{flex:auto;min-height:0}.app-shell.is-table-play .game-table{grid-template-rows:auto minmax(0,1fr) auto;row-gap:6px;height:100%;min-height:0;overflow:hidden}.app-shell.is-table-play .table-center{grid-template-columns:52px minmax(0,1fr);gap:6px;height:100%;min-height:0;padding:6px 12px}.app-shell.is-table-play .floor-cards{overscroll-behavior:none;justify-self:center;width:max-content;max-width:100%;min-height:0;max-height:100%;overflow:hidden}.app-shell.is-table-play .captured-groups .capture-stack{max-height:calc(var(--capture-card-w) * 1.5 * 2 + 12px);overscroll-behavior:contain;overflow-y:auto}.app-shell.is-table-play .opponent-zone{align-items:start;gap:6px 10px;min-height:auto;padding-top:8px;padding-bottom:8px}.app-shell.is-table-play .player-zone{padding:8px 14px}.app-shell.is-table-play .self-zone{flex-direction:column;gap:4px;min-height:0;padding-bottom:0;display:flex}.app-shell.is-table-play .self-hand-area{z-index:8;padding:6px 0 max(10px, env(safe-area-inset-bottom));background:linear-gradient(#183a3100 0%,#183a31 22% 100%);flex:none;position:sticky;bottom:0}.app-shell.is-table-play .my-hand{min-height:106px;padding-top:0}.app-shell.is-table-play .my-hand:empty{height:0;min-height:0;padding:0;overflow:hidden}.app-shell.is-table-play .my-hand{--hand-w:62px;--hand-h:102px}.app-shell.is-table-play .opponent-hand{min-height:64px;padding-right:32px}.app-shell.is-table-play .opponent-hand .card-back{width:54px;height:88px;margin-left:-24px}.app-shell.is-table-play .opponent-hand .card-back>span{font-size:16px}.app-shell.is-table-play .capture-row .hwatu-card,.app-shell.is-table-play .hwatu-card.is-mini,.app-shell.is-table-play .capture-empty{width:34px;height:56px}.app-shell.is-table-play .capture-stack{--capture-card-w:34px;min-height:56px}.app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),.app-shell.is-table-play .card-back{width:52px;height:84px}.app-shell.is-table-play .floor-cards,.app-shell.is-table-play .floor-triple-stack{--floor-card-width:52px;--floor-card-height:84px;--floor-stack-step:13px}.app-shell.is-table-play .self-meta{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px 12px}.app-shell.is-table-play .self-meta .player-summary{grid-area:1/1}.app-shell.is-table-play .self-meta .score-breakdown{grid-area:2/1}.app-shell.is-table-play .self-meta .captured-groups{grid-area:1/2/span 2}.app-shell.is-table-play .game-table.is-three .opponent-hand .card-back{width:44px;height:72px;margin-left:-20px}.app-shell.is-table-play .game-table.is-three .capture-row .hwatu-card,.app-shell.is-table-play .game-table.is-three .hwatu-card.is-mini{width:30px;height:48px}.app-shell.is-table-play .game-table.is-three .capture-stack{--capture-card-w:30px;min-height:48px}}@media (min-width:761px) and (max-width:1050px) and (max-height:820px){html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-hand-area{z-index:8;position:sticky;bottom:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand{--hand-w:62px;--hand-h:102px;min-height:106px;padding-top:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand:empty{height:0;min-height:0;padding:0;overflow:hidden}html:not([data-matgo-land="1"]) .app-shell.is-table-play .opponent-hand .card-back{width:54px;height:88px;margin-left:-24px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .app-shell.is-table-play .hwatu-card.is-mini,html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-empty{width:34px;height:56px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-stack{--capture-card-w:34px;min-height:56px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .captured-groups .capture-stack{max-height:calc(var(--capture-card-w) * 1.5 * 2 + 12px)}}@media (max-width:760px){.topbar{grid-template-columns:1fr auto;height:69px;padding:0 15px}.brand-mark{width:30px;height:30px}.brand strong{font-size:17px}.legal-chip,.balance-box,.avatar-button b{display:none}.lobby{padding:0 15px 35px}.lobby-hero{min-height:510px;display:block}.hero-copy{padding:45px 0 0}.hero-copy h1{font-size:43px}.hero-copy>p:not(.eyebrow){max-width:380px;font-size:12px}.hero-cards{opacity:.6;width:330px;height:300px;position:absolute;bottom:-60px;right:-55px}.red-sun{width:230px;height:230px}.hero-real-card .hwatu-card{border-width:3px;width:83px;height:137px}.lobby-content{grid-template-columns:1fr;padding-top:28px}.lobby-aside{grid-template-columns:1fr}.room-row{grid-template-columns:34px 1fr 70px;padding:12px 10px}.room-stake{display:none}.join-button{grid-area:1/3}.room-main h3{white-space:nowrap;text-overflow:ellipsis;max-width:190px;overflow:hidden}.room-identity{text-align:left}.stake-display{font-size:9px}.rules-grid{grid-template-columns:1fr}.stake-grid{grid-template-columns:repeat(3,1fr)}.modal{padding:26px 20px}.ad-stage{margin:-26px -20px 20px}.hero-actions{flex-direction:column;align-items:flex-start;gap:13px}:is(html:not([data-matgo-land="1"]) .game-toolbar,html:not([data-matgo-land="1"]) .game-toolbar:has(.matgo-ai-diff)){grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"leave title stake""actions actions actions";gap:6px 8px;height:auto;min-height:55px;padding:6px 10px}html:not([data-matgo-land="1"]) .game-toolbar:has(.matgo-ai-diff){grid-template-areas:"leave title title""diff diff diff""actions actions actions"}html:not([data-matgo-land="1"]) .game-toolbar>.quiet-button:first-child{grid-area:leave}html:not([data-matgo-land="1"]) .game-toolbar .room-identity{grid-area:title}html:not([data-matgo-land="1"]) .game-toolbar .stake-display{grid-area:stake}html:not([data-matgo-land="1"]) .game-toolbar .toolbar-actions{grid-area:actions}html:not([data-matgo-land="1"]) .game-toolbar .matgo-ai-diff{grid-area:diff}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff){grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"leave diff actions";gap:6px 8px;min-height:48px;padding:5px 10px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff) .room-identity{display:none}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-toolbar .matgo-ai-diff{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:4px;overflow-x:auto}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-toolbar .matgo-ai-diff::-webkit-scrollbar{display:none}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-toolbar .toolbar-actions{scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-toolbar .toolbar-actions::-webkit-scrollbar{display:none}html:not([data-matgo-land="1"]) .app-shell.is-table-play .matgo-ai-diff button{white-space:nowrap;padding:6px 8px;font-size:10px}html:not([data-matgo-land="1"]) .toolbar-actions{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;gap:5px;overflow-x:auto}html:not([data-matgo-land="1"]) .toolbar-actions::-webkit-scrollbar{display:none}html:not([data-matgo-land="1"]) .toolbar-actions .quiet-button{white-space:nowrap;flex:none;min-height:40px;padding:8px 10px;font-size:11px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .matgo-ai-diff button{min-height:36px;padding:6px 10px;font-size:11px}html:not([data-matgo-land="1"]) .sound-button{min-width:0}html:not([data-matgo-land="1"]) .invite-share{width:min(520px,100vw - 28px);padding:14px 12px 12px}html:not([data-matgo-land="1"]) .invite-share input{flex-basis:100%}html:not([data-matgo-land="1"]) .invite-share__copy,html:not([data-matgo-land="1"]) .invite-share__share{flex:calc(50% - 4px)}html:not([data-matgo-land="1"]) .stake-request-banner,html:not([data-matgo-land="1"]) .next-stake-banner{min-width:calc(100vw - 24px);top:77px}html:not([data-matgo-land="1"]) .game-layout{min-height:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .topbar{display:none}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-layout{flex-direction:column;flex:auto;height:auto;min-height:0;display:flex;overflow:hidden}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-table-wrap{flex:auto;grid-template:"table"minmax(0,1fr)"hand"/1fr;min-height:0}html:not([data-matgo-land="1"]) .game-table{grid-template-rows:auto minmax(0,1fr) auto;row-gap:6px;height:100%;min-height:0;overflow:hidden}html:not([data-matgo-land="1"]) .captured-groups .capture-stack{max-height:calc(var(--capture-card-w) * 1.5 * 2 + 12px);overscroll-behavior:contain;overflow-y:auto}html:not([data-matgo-land="1"]) .floor-cards{overscroll-behavior:none;align-content:flex-start;justify-self:center;width:max-content;max-width:100%;min-height:0;max-height:100%;overflow:hidden}html:not([data-matgo-land="1"]) .player-zone{padding:8px 10px}html:not([data-matgo-land="1"]) .opponent-zone{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-template-areas:"meta hand""captured captured";align-content:start;align-items:start;gap:6px 8px;min-height:auto;padding-top:8px;padding-bottom:8px}html:not([data-matgo-land="1"]) .opponent-meta{gap:4px}html:not([data-matgo-land="1"]) .opponent-zone .captured-groups{align-self:start;width:100%;margin-top:0}html:not([data-matgo-land="1"]) .opponent-hand{justify-content:flex-end;min-height:54px;padding:2px 28px 6px 0}html:not([data-matgo-land="1"]) .opponent-hand .card-back{border-radius:5px;width:36px;height:58px;margin-left:-22px}html:not([data-matgo-land="1"]) .opponent-hand .card-back:first-child{margin-left:0}html:not([data-matgo-land="1"]) .opponent-hand .card-back>span{font-size:13px}html:not([data-matgo-land="1"]) .opponent-hand .card-back:nth-child(n+7){display:none}html:not([data-matgo-land="1"]) .hand-count-badge{min-width:40px;padding:5px 8px;font-size:15px;position:absolute;bottom:0;right:0}html:not([data-matgo-land="1"]) .hand-count-badge small{font-size:9px}html:not([data-matgo-land="1"]) .player-badge>span{width:28px;height:28px}html:not([data-matgo-land="1"]) .player-badge strong{text-overflow:ellipsis;white-space:nowrap;max-width:72px;font-size:11px;overflow:hidden}html:not([data-matgo-land="1"]) .player-badge small{font-size:8px}html:not([data-matgo-land="1"]) .score-chip{padding:4px 6px}html:not([data-matgo-land="1"]) .score-chip strong{font-size:16px}html:not([data-matgo-land="1"]) .score-breakdown{gap:4px;margin:2px 0 0}html:not([data-matgo-land="1"]) .score-breakdown span{padding:2px 5px;font-size:7px}html:not([data-matgo-land="1"]) .captured-groups{grid-template-columns:minmax(0,.68fr) minmax(0,.68fr) minmax(0,.68fr) minmax(0,1.7fr);gap:4px;width:100%}html:not([data-matgo-land="1"]) .capture-group>span{margin-bottom:3px;font-size:9px}html:not([data-matgo-land="1"]) .capture-stack{--capture-card-w:28px;gap:3px;min-height:44px}html:not([data-matgo-land="1"]) .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .hwatu-card.is-mini{border-width:1px;border-radius:3px;width:28px;height:44px}html:not([data-matgo-land="1"]) .capture-empty{width:28px;height:44px;font-size:7px}html:not([data-matgo-land="1"]) .card-role-badge{padding:1px 3px;font-size:5px;bottom:1px;right:1px}html:not([data-matgo-land="1"]) .self-zone{flex-direction:column;gap:4px;min-height:auto;padding-bottom:4px;display:flex;overflow:visible}html:not([data-matgo-land="1"]) .self-meta{flex:none;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 8px;display:grid}html:not([data-matgo-land="1"]) .self-meta .player-summary{grid-area:1/1}html:not([data-matgo-land="1"]) .self-meta .score-breakdown{grid-area:2/1}html:not([data-matgo-land="1"]) .self-meta .captured-groups{grid-area:1/2/span 2;width:auto}html:not([data-matgo-land="1"]) .game-table-wrap>.self-hand-area{padding:4px 8px max(8px, env(safe-area-inset-bottom), var(--app-chrome-bottom,48px));margin:0}html:not([data-matgo-land="1"]) .my-hand{min-height:var(--hand-h,78px);--hand-w:48px;--hand-h:78px;flex:none;justify-content:center;padding-top:2px;overflow:visible}html:not([data-matgo-land="1"]) .my-hand .hwatu-card{touch-action:manipulation}html:not([data-matgo-land="1"]) .table-center{grid-template-rows:minmax(0,1fr) auto;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:4px;height:100%;min-height:0;padding:6px 8px;overflow:hidden}html:not([data-matgo-land="1"]) .turn-message{text-align:center;border-left:0;grid-column:1/-1;min-height:26px;padding:0}html:not([data-matgo-land="1"]) .turn-message p{margin-top:4px;font-size:9px}html:not([data-matgo-land="1"]) .floor-cards{overscroll-behavior:none;--floor-card-width:40px;--floor-card-height:64px;--floor-stack-step:11px;--floor-stack-y-step:3px;align-content:flex-start;place-self:stretch stretch;gap:6px;width:100%;max-width:100%;min-height:0;max-height:none;overflow:visible}html:not([data-matgo-land="1"]) .floor-month-group.is-row{gap:6px}html:not([data-matgo-land="1"]) .floor-triple-stack{--floor-card-width:42px;--floor-card-height:68px;--floor-stack-step:11px;--floor-stack-y-step:3px}html:not([data-matgo-land="1"]) .hwatu-card:not([data-card-zone=hand]):not(.is-mini),html:not([data-matgo-land="1"]) .card-back{width:42px;height:68px}html:not([data-matgo-land="1"]) .deck-area>span{font-size:7px}html:not([data-matgo-land="1"]) .my-hand .hwatu-card.is-selected{transform:translateY(-12px)}@media (hover:hover) and (pointer:fine){html:not([data-matgo-land="1"]) .my-hand .hwatu-card:hover:not(:disabled){transform:translateY(-12px)}}html:not([data-matgo-land="1"]) .bomb-flip-button{width:auto;min-width:0;max-width:112px;margin:0;padding:8px 10px}html:not([data-matgo-land="1"]) .self-hand-area:has(.bomb-flip-row) .my-hand{width:min(calc(100% - 120px), calc(var(--hand-w) * var(--hand-span)));max-width:calc(100% - 120px)}html:not([data-matgo-land="1"]) .bomb-flip-row{padding-bottom:6px}html:not([data-matgo-land="1"]) .game-table.is-three .opponent-row{gap:0}html:not([data-matgo-land="1"]) .game-table.is-three .opponent-zone{gap:4px;padding:6px 6px 4px}html:not([data-matgo-land="1"]) .game-table.is-three .opponent-hand{min-height:44px;padding-right:26px}html:not([data-matgo-land="1"]) .game-table.is-three .opponent-hand .card-back{width:28px;height:46px;margin-left:-18px}html:not([data-matgo-land="1"]) .game-table.is-three .hand-count-badge{min-width:34px;padding:4px 6px;font-size:13px}html:not([data-matgo-land="1"]) .game-table.is-three .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .game-table.is-three .hwatu-card.is-mini{width:28px;height:44px}html:not([data-matgo-land="1"]) .game-table.is-three .capture-stack{--capture-card-w:28px;gap:2px;min-height:44px}}@media (max-width:760px) and (orientation:portrait){html:not([data-matgo-land="1"]) .app-shell.is-table-play{--floor-card-width:36px;--floor-card-height:58px;--matgo-floor-min:calc(var(--floor-card-height) + 24px)}html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-table{grid-template-rows:minmax(0, auto) minmax(var(--matgo-floor-min), 1fr) minmax(0, auto);row-gap:6px;overflow:hidden}html:not([data-matgo-land="1"]) .app-shell.is-table-play .opponent-row{min-height:min-content;max-height:none;overflow:visible}html:not([data-matgo-land="1"]) .app-shell.is-table-play .opponent-zone{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);grid-template-areas:"meta hand""captured captured";gap:4px 8px;min-height:auto;max-height:none;padding-top:6px;padding-bottom:8px;overflow:visible}html:not([data-matgo-land="1"]) .app-shell.is-table-play .opponent-hand{min-height:40px;padding:0 26px 2px 0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .opponent-hand .card-back{width:30px;height:48px;margin-left:-18px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .score-breakdown{margin:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .captured-groups .capture-stack,html:not([data-matgo-land="1"]) .app-shell.is-table-play .captured-groups .capture-stack.is-compact{max-height:calc(var(--capture-card-w) * 1.55 * 2 + 8px);overflow:hidden}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-stack{--capture-card-w:24px;gap:2px;min-height:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-group:not([data-capture-kind=junk]) .capture-stack{min-height:38px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-empty,html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .app-shell.is-table-play .hwatu-card.is-mini{width:24px;height:38px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-zone{flex-direction:column;gap:2px;min-height:0;max-height:none;padding-top:4px;padding-bottom:6px;display:flex;overflow:visible}html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-meta{flex:none;grid-template:"summary breakdown""captured captured"/minmax(0,1fr) auto;align-items:center;gap:4px 8px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-meta .player-summary{grid-area:summary;min-width:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-meta .score-breakdown{flex-wrap:wrap;grid-area:breakdown;justify-content:flex-end;margin:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-meta .captured-groups{grid-area:auto/1/auto/-1;width:100%}html:not([data-matgo-land="1"]) .app-shell.is-table-play .table-center{grid-template-columns:36px minmax(0,1fr);grid-template-rows:minmax(var(--matgo-floor-min), 1fr) auto;justify-content:flex-start;align-items:start;gap:6px;height:100%;min-height:0;padding:6px 8px 4px;overflow:visible}html:not([data-matgo-land="1"]) .app-shell.is-table-play .turn-message{text-align:center;border-left:0;grid-column:1/-1;min-height:0;padding:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .turn-message p{margin-top:2px;font-size:9px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .floor-cards{min-height:var(--floor-card-height,52px);overscroll-behavior:none;--floor-card-width:36px;--floor-card-height:58px;--floor-stack-step:10px;--floor-stack-y-step:3px;flex-wrap:wrap;place-content:flex-start center;place-self:start stretch;gap:6px;width:100%;max-width:100%;max-height:none;overflow:visible}html:not([data-matgo-land="1"]) .app-shell.is-table-play .floor-month-group.is-row{gap:6px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),html:not([data-matgo-land="1"]) .app-shell.is-table-play .card-back{width:var(--floor-card-width,36px);height:var(--floor-card-height,58px)}html:not([data-matgo-land="1"]) .app-shell.is-table-play .floor-triple-stack{--floor-card-width:inherit;--floor-card-height:inherit;--floor-stack-step:10px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-hand-area{z-index:9;padding:6px 8px max(14px, env(safe-area-inset-bottom), var(--app-chrome-bottom,88px));background:linear-gradient(#183a3100 0%,#183a31 22% 100%);flex:none;order:0;margin:0;position:relative;bottom:auto}html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand{min-height:var(--hand-h,74px);--hand-w:46px;--hand-h:74px;flex:none;padding-top:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand:empty{height:0;min-height:0;padding:0;overflow:hidden}html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand .hwatu-card.is-selected{transform:translateY(-10px)}@media (hover:hover) and (pointer:fine){html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand .hwatu-card:hover:not(:disabled){transform:translateY(-10px)}}html:not([data-matgo-land="1"]) .app-shell.is-table-play .bomb-flip-button{max-width:108px;padding:7px 8px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .self-hand-area:has(.bomb-flip-row) .my-hand{width:min(calc(100% - 116px), calc(var(--hand-w) * var(--hand-span)));max-width:calc(100% - 116px)}html:not([data-matgo-land="1"]) .app-shell.is-table-play .captured-groups{grid-template-rows:auto auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px 6px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-group[data-capture-kind=junk]{grid-column:1/-1}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-group[data-capture-kind=junk]>span{margin-bottom:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-group[data-capture-kind=junk] .capture-stack{gap:1px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-group[data-capture-kind=junk] .capture-stack:not(.is-compact){overscroll-behavior:contain;-webkit-overflow-scrolling:touch;max-height:84px;overflow-y:auto}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-group[data-capture-kind=junk] .capture-stack.is-compact{max-height:calc(var(--capture-card-w) * 1.55 * 2 + 8px);overflow:hidden}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-group[data-capture-kind=junk] .capture-row{padding-inline-end:0}html:not([data-matgo-land="1"]) .app-shell.is-table-play .opponent-zone .capture-group[data-capture-kind=junk] .capture-row{padding-inline-start:42px}}@media (max-width:400px){html:not([data-matgo-land="1"]) .toolbar-actions .quiet-button{letter-spacing:0;padding:8px 7px;font-size:9px}html:not([data-matgo-land="1"]) .sound-button{min-width:0}html:not([data-matgo-land="1"]) .opponent-hand .card-back:nth-child(n+6){display:none}html:not([data-matgo-land="1"]) .my-hand{--hand-w:44px;--hand-h:72px}html:not([data-matgo-land="1"]) .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .hwatu-card.is-mini{width:26px;height:40px}html:not([data-matgo-land="1"]) .capture-stack{--capture-card-w:26px;gap:2px;min-height:40px}html:not([data-matgo-land="1"]) .floor-cards{--floor-card-width:28px;--floor-card-height:46px;--floor-stack-step:7px;min-height:0}html:not([data-matgo-land="1"]) .hwatu-card,html:not([data-matgo-land="1"]) .card-back{width:28px;height:46px}html:not([data-matgo-land="1"]) .floor-triple-stack{--floor-card-width:28px;--floor-card-height:46px;--floor-stack-step:7px}html:not([data-matgo-land="1"]) .app-shell.is-table-play{--floor-card-width:28px;--floor-card-height:46px;--matgo-floor-min:calc(var(--floor-card-height) * 2 + 12px)}html:not([data-matgo-land="1"]) .app-shell.is-table-play .floor-cards{--floor-card-width:28px;--floor-card-height:46px;--floor-stack-step:7px;min-height:var(--matgo-floor-min)}html:not([data-matgo-land="1"]) .app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),html:not([data-matgo-land="1"]) .app-shell.is-table-play .card-back{width:28px;height:46px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .floor-triple-stack{--floor-card-width:28px;--floor-card-height:46px;--floor-stack-step:7px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand{--hand-w:42px;--hand-h:68px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .app-shell.is-table-play .hwatu-card.is-mini{width:28px;height:44px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-stack{--capture-card-w:28px;min-height:44px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-empty{width:28px;height:44px}}@media (max-width:400px) and (max-height:700px){html:not([data-matgo-land="1"]) .app-shell.is-table-play .game-table{grid-template-rows:auto minmax(0,1fr) auto;row-gap:4px;overflow:hidden}html:not([data-matgo-land="1"]) .self-meta{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 8px}html:not([data-matgo-land="1"]) .self-meta .player-summary{grid-area:1/1}html:not([data-matgo-land="1"]) .self-meta .score-breakdown{grid-area:2/1}html:not([data-matgo-land="1"]) .self-meta .captured-groups{grid-area:1/2/span 2}html:not([data-matgo-land="1"]) .captured-groups .capture-stack,html:not([data-matgo-land="1"]) .app-shell.is-table-play .captured-groups .capture-stack{max-height:calc(var(--capture-card-w) * 1.5 * 2 + 10px)}html:not([data-matgo-land="1"]) .turn-message{min-height:0}html:not([data-matgo-land="1"]) .turn-message p{margin-top:2px;font-size:8px}html:not([data-matgo-land="1"]) .opponent-zone{padding-top:5px;padding-bottom:4px}html:not([data-matgo-land="1"]) .opponent-hand{min-height:42px;padding:2px 24px 4px 0}html:not([data-matgo-land="1"]) .opponent-hand .card-back{width:30px;height:48px;margin-left:-18px}html:not([data-matgo-land="1"]) .opponent-hand .card-back>span{font-size:11px}html:not([data-matgo-land="1"]) .hand-count-badge{min-width:34px;padding:3px 6px;font-size:12px}html:not([data-matgo-land="1"]) .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .hwatu-card.is-mini{width:22px;height:34px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-row .hwatu-card,html:not([data-matgo-land="1"]) .app-shell.is-table-play .hwatu-card.is-mini{width:26px;height:42px}html:not([data-matgo-land="1"]) .capture-stack{--capture-card-w:22px;min-height:34px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-stack{--capture-card-w:26px;min-height:42px}html:not([data-matgo-land="1"]) .capture-empty{width:22px;height:34px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .capture-empty{width:26px;height:42px}html:not([data-matgo-land="1"]) .capture-group>span{margin-bottom:2px;font-size:8px}html:not([data-matgo-land="1"]) .my-hand{--hand-w:40px;--hand-h:66px;min-height:72px;padding-top:3px}html:not([data-matgo-land="1"]) .app-shell.is-table-play .my-hand{--hand-w:40px;--hand-h:66px}html:not([data-matgo-land="1"]) .hwatu-card,html:not([data-matgo-land="1"]) .card-back{width:34px;height:56px}html:not([data-matgo-land="1"]) .floor-cards,html:not([data-matgo-land="1"]) .floor-triple-stack{--floor-card-width:34px;--floor-card-height:56px;--floor-stack-step:9px}html:not([data-matgo-land="1"]) .self-zone{padding-top:4px}}html[data-matgo-land="1"] .app-shell.is-table-play{--floor-card-height:62px;--matgo-floor-min:calc(var(--floor-card-height) + 28px);height:100%;max-height:none;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .game-table:before{inset:8px}html[data-matgo-land="1"] .app-shell.is-table-play .topbar{display:none}html[data-matgo-land="1"] .app-shell.is-table-play .brand-mark{width:26px;height:26px}html[data-matgo-land="1"] .app-shell.is-table-play .brand strong{font-size:15px}html[data-matgo-land="1"] .app-shell.is-table-play .legal-chip,html[data-matgo-land="1"] .app-shell.is-table-play .balance-box,html[data-matgo-land="1"] .app-shell.is-table-play .avatar-button b{display:none}html[data-matgo-land="1"] .app-shell.is-table-play .game-layout{flex:auto;height:auto;min-height:0;overflow:hidden}:is(html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar,html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff)){height:32px;min-height:32px;padding:2px max(8px, env(safe-area-inset-right)) 2px max(8px, env(safe-area-inset-left));grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"leave diff actions";gap:4px 6px}html[data-matgo-land="1"] .app-shell.is-table-play .stake-display{display:none}html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff) .room-identity{display:none}html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar>.quiet-button:first-child{grid-area:leave}html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar .room-identity{text-align:left;grid-area:diff}html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar .toolbar-actions{grid-area:actions;overflow-x:auto}html[data-matgo-land="1"] .app-shell.is-table-play .matgo-ai-diff{flex-wrap:nowrap;grid-area:diff;justify-content:flex-start;gap:4px;overflow-x:auto}html[data-matgo-land="1"] .app-shell.is-table-play .matgo-ai-diff button{white-space:nowrap;padding:5px 8px;font-size:10px}html[data-matgo-land="1"] .app-shell.is-table-play .game-table-wrap{flex:auto;grid-template:"table"minmax(0,1fr)"hand"/1fr;height:auto;min-height:0}html[data-matgo-land="1"] .app-shell.is-table-play .game-table{grid-template-rows:minmax(0, auto) minmax(var(--matgo-floor-min), 1fr) minmax(0, auto);row-gap:4px;height:100%;min-height:0;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .opponent-row{min-height:min-content;max-height:none;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .opponent-zone,html[data-matgo-land="1"] .app-shell.is-table-play .self-zone{min-height:auto;max-height:none;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .captured-groups .capture-stack,html[data-matgo-land="1"] .app-shell.is-table-play .captured-groups .capture-stack.is-compact{max-height:calc(var(--capture-card-w) * 1.55 * 2 + 8px);overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .floor-cards{overscroll-behavior:none;--floor-card-width:40px;--floor-card-height:64px;--floor-stack-step:11px;justify-self:stretch;gap:8px;width:100%;max-width:100%;max-height:none;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .game-side-panel{display:none}html[data-matgo-land="1"] .app-shell.is-table-play .player-zone{padding-top:2px;padding-bottom:2px;padding-left:max(8px, env(safe-area-inset-left));padding-right:max(8px, env(safe-area-inset-right))}html[data-matgo-land="1"] .app-shell.is-table-play .score-breakdown{display:none}html[data-matgo-land="1"] .app-shell.is-table-play .opponent-zone{grid-template-columns:auto minmax(0,1fr) minmax(0,1.35fr);grid-template-areas:"meta hand captured";align-items:start;gap:2px 6px;min-height:auto;padding-top:4px;padding-bottom:6px;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .game-table.is-three .opponent-zone{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"meta captured""hand hand";padding:2px 4px}html[data-matgo-land="1"] .app-shell.is-table-play .opponent-hand{min-height:28px;padding:0 18px 0 0}html[data-matgo-land="1"] .app-shell.is-table-play .opponent-hand .card-back{width:26px;height:40px;margin-left:-14px}html[data-matgo-land="1"] .app-shell.is-table-play .game-table.is-three .opponent-hand .card-back{width:26px;height:40px;margin-left:-12px}html[data-matgo-land="1"] .app-shell.is-table-play .hand-count-badge{min-width:28px;padding:2px 5px;font-size:11px}html[data-matgo-land="1"] .app-shell.is-table-play .player-badge>span{width:22px;height:22px}html[data-matgo-land="1"] .app-shell.is-table-play .player-badge strong{max-width:56px;font-size:10px}html[data-matgo-land="1"] .app-shell.is-table-play .score-chip{padding:2px 4px}html[data-matgo-land="1"] .app-shell.is-table-play .score-chip strong{font-size:13px}html[data-matgo-land="1"] .app-shell.is-table-play .captured-groups{grid-template-columns:minmax(0,.62fr) minmax(0,.62fr) minmax(0,.62fr) minmax(0,1.75fr);gap:2px}html[data-matgo-land="1"] .app-shell.is-table-play .capture-group{flex-direction:column;min-width:0;display:flex;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .capture-group>span{z-index:1;white-space:nowrap;flex:none;margin-bottom:1px;font-size:7px;line-height:1.1;position:relative}html[data-matgo-land="1"] .app-shell.is-table-play .capture-stack{--capture-card-w:24px;gap:1px;min-height:36px}html[data-matgo-land="1"] .app-shell.is-table-play .capture-row .hwatu-card,html[data-matgo-land="1"] .app-shell.is-table-play .hwatu-card.is-mini{width:24px;height:36px}html[data-matgo-land="1"] .app-shell.is-table-play .game-table.is-three .capture-stack{--capture-card-w:22px;min-height:34px}html[data-matgo-land="1"] .app-shell.is-table-play .game-table.is-three .capture-row .hwatu-card,html[data-matgo-land="1"] .app-shell.is-table-play .game-table.is-three .hwatu-card.is-mini{width:22px;height:34px}html[data-matgo-land="1"] .app-shell.is-table-play .capture-empty{width:20px;height:30px;font-size:5px}html[data-matgo-land="1"] .app-shell.is-table-play .self-zone{padding-bottom:max(2px, env(safe-area-inset-bottom));flex-direction:column;gap:1px;min-height:auto;max-height:none;display:flex;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .self-meta{flex:none;grid-template-columns:auto minmax(0,1fr);gap:4px 8px;display:grid}html[data-matgo-land="1"] .app-shell.is-table-play .self-meta .player-summary{grid-area:1/1}html[data-matgo-land="1"] .app-shell.is-table-play .self-meta .captured-groups{grid-area:1/2}html[data-matgo-land="1"] .app-shell.is-table-play .table-center{grid-template-columns:28px minmax(0,1fr);justify-content:flex-start;align-items:start;gap:6px;height:100%;min-height:0;padding:4px 6px 0;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .turn-message{text-align:center;border-left:0;grid-column:1/-1;min-height:0;padding:0}html[data-matgo-land="1"] .app-shell.is-table-play .turn-message p{display:none}html[data-matgo-land="1"] .app-shell.is-table-play .floor-cards{min-height:var(--floor-card-height,62px);overscroll-behavior:none;--floor-card-width:40px;--floor-card-height:64px;--floor-stack-step:11px;align-content:flex-start;place-self:start stretch;gap:8px;width:100%;max-width:100%;max-height:none;overflow:visible}html[data-matgo-land="1"] .app-shell.is-table-play .floor-month-group.is-row{gap:6px}html[data-matgo-land="1"] .app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),html[data-matgo-land="1"] .app-shell.is-table-play .card-back{width:var(--floor-card-width,40px);height:var(--floor-card-height,64px)}html[data-matgo-land="1"] .app-shell.is-table-play .floor-triple-stack{--floor-card-width:inherit;--floor-card-height:inherit;--floor-stack-step:11px}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand{min-height:var(--hand-h,68px);--hand-w:42px;--hand-h:68px;flex:none;padding-top:1px}html[data-matgo-land="1"] .app-shell.is-table-play .self-hand-area,html[data-matgo-land="1"] .app-shell.is-table-play .game-table-wrap>.self-hand-area{z-index:9;padding:1px 6px max(12px, env(safe-area-inset-bottom), var(--app-chrome-bottom,28px));background:linear-gradient(#183a3100 0%,#183a31 28% 100%);flex:none;order:0;margin:0;position:relative}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand .hwatu-card{touch-action:manipulation}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand:empty{height:0;min-height:0;padding:0;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand .hwatu-card.is-selected{transform:translateY(-8px)}@media (hover:hover) and (pointer:fine){html[data-matgo-land="1"] .app-shell.is-table-play .my-hand .hwatu-card:hover:not(:disabled){transform:translateY(-8px)}}html[data-matgo-land="1"] .app-shell.is-table-play .bomb-flip-button{max-width:100px;padding:6px 8px}html[data-matgo-land="1"] .app-shell.is-table-play .self-hand-area:has(.bomb-flip-row) .my-hand{width:min(calc(100% - 108px), calc(var(--hand-w) * var(--hand-span)));max-width:calc(100% - 108px)}html[data-matgo-land="1"] .app-shell.is-table-play .bomb-flip-row{padding-bottom:4px}html[data-matgo-land="1"] .app-shell.is-table-play .decision-card{width:min(480px,100% - 24px);max-height:calc(var(--app-vh,100dvh) - 16px);overflow-y:auto}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand,body.matgo-force-landscape .app-shell.is-table-play .my-hand{--hand-w:42px;--hand-h:68px}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand .hwatu-card,body.matgo-force-landscape .app-shell.is-table-play .my-hand .hwatu-card{touch-action:manipulation}@media (orientation:landscape) and (max-height:500px){.app-shell.is-table-play .topbar{display:none}.app-shell.is-table-play .game-table{grid-template-rows:minmax(0, auto) minmax(var(--matgo-floor-min), 1fr) minmax(0, auto);row-gap:4px;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand,body.matgo-force-landscape .app-shell.is-table-play .my-hand{--hand-w:40px;--hand-h:64px}.app-shell.is-table-play .my-hand .hwatu-card{touch-action:manipulation}}@media (max-height:380px){:is(html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar,html[data-matgo-land="1"] .app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff)){height:28px;min-height:28px}html[data-matgo-land="1"] .app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),html[data-matgo-land="1"] .app-shell.is-table-play .card-back{width:34px;height:54px}html[data-matgo-land="1"] .app-shell.is-table-play .floor-cards{--floor-card-width:34px;--floor-card-height:54px;--floor-stack-step:9px;min-height:var(--floor-card-height,54px)}html[data-matgo-land="1"] .app-shell.is-table-play .floor-triple-stack{--floor-card-width:34px;--floor-card-height:54px;--floor-stack-step:9px}html[data-matgo-land="1"] .app-shell.is-table-play .my-hand{--hand-w:38px;--hand-h:62px;min-height:62px}html[data-matgo-land="1"] .app-shell.is-table-play .capture-row .hwatu-card,html[data-matgo-land="1"] .app-shell.is-table-play .hwatu-card.is-mini{width:22px;height:34px}html[data-matgo-land="1"] .app-shell.is-table-play .capture-stack{--capture-card-w:22px;min-height:34px}html[data-matgo-land="1"] .app-shell.is-table-play .captured-groups .capture-stack{max-height:calc(var(--capture-card-w) * 1.5 * 2 + 8px)}html[data-matgo-land="1"] .app-shell.is-table-play .self-hand-area,html[data-matgo-land="1"] .app-shell.is-table-play .game-table-wrap>.self-hand-area{padding-bottom:max(8px, env(safe-area-inset-bottom), var(--app-chrome-bottom,16px))}html[data-matgo-land="1"] .app-shell.is-table-play{--matgo-floor-min:calc(var(--floor-card-height,54px) + 20px)}html[data-matgo-land="1"] .app-shell.is-table-play .game-table{grid-template-rows:minmax(0, auto) minmax(var(--matgo-floor-min), 1fr) minmax(0, auto);row-gap:4px;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .opponent-row{min-height:0;max-height:32%;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .table-center{align-items:start;padding-top:4px;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .floor-cards{min-height:var(--floor-card-height,54px);align-content:flex-start;overflow:hidden}html[data-matgo-land="1"] .app-shell.is-table-play .opponent-zone{padding-bottom:6px}html[data-matgo-land="1"] .app-shell.is-table-play .captured-groups .capture-stack.is-compact{max-height:calc(var(--capture-card-w) * 1.55 * 2 + 8px);overflow:hidden}}body.matgo-force-landscape{background:var(--ink);overflow:hidden!important}body.matgo-force-landscape .site-shell:has(.is-table-play){z-index:40;width:var(--force-land-w,100dvh);height:var(--force-land-h,100dvw);transform-origin:50%;max-width:none;max-height:none;margin:0;position:fixed;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)rotate(90deg);container:matgo-play-shell/size}body.matgo-force-landscape .site-shell:has(.is-table-play) .site-shell__main{width:100%;height:100%;min-height:0;max-height:none}body.matgo-force-landscape .site-shell:has(.is-table-play) .app-shell.is-table-play{width:100%;height:100%;min-height:0;max-height:none}body.matgo-force-landscape .app-shell.is-table-play .topbar{padding-top:max(4px, env(safe-area-inset-right));padding-left:max(10px, env(safe-area-inset-top));padding-right:max(10px, env(safe-area-inset-bottom))}:is(body.matgo-force-landscape .app-shell.is-table-play .game-toolbar,body.matgo-force-landscape .app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff)){padding-left:max(10px, env(safe-area-inset-top));padding-right:max(10px, env(safe-area-inset-bottom))}body.matgo-force-landscape .app-shell.is-table-play .self-zone{padding-bottom:max(12px, env(safe-area-inset-left), var(--app-chrome-bottom,16px))}body.matgo-force-landscape .app-shell.is-table-play .self-hand-area{padding-top:max(4px, env(safe-area-inset-right));padding-bottom:max(14px, env(safe-area-inset-left), var(--app-chrome-bottom,16px));padding-left:max(10px, env(safe-area-inset-top));padding-right:max(10px, env(safe-area-inset-bottom))}body.matgo-force-landscape .app-shell.is-table-play .my-hand{padding-bottom:0}@container matgo-play-shell (max-height:430px){.app-shell.is-table-play{--matgo-floor-min:calc(var(--floor-card-height,54px) + 16px)}:is(.app-shell.is-table-play .game-toolbar,.app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff)){height:26px;min-height:26px}.app-shell.is-table-play .game-table:before{inset:4px}.app-shell.is-table-play .game-table{grid-template-rows:minmax(0, auto) minmax(var(--matgo-floor-min), 1fr) minmax(0, auto);row-gap:2px}.app-shell.is-table-play .opponent-row{min-height:0;max-height:30%;overflow:hidden}.app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),.app-shell.is-table-play .card-back{width:32px;height:52px}.app-shell.is-table-play .floor-cards{--floor-card-width:32px;--floor-card-height:52px;--floor-stack-step:8px;min-height:var(--floor-card-height,52px);gap:2px}.app-shell.is-table-play .floor-triple-stack{--floor-card-width:32px;--floor-card-height:52px;--floor-stack-step:8px}.app-shell.is-table-play .my-hand{--hand-w:36px;--hand-h:58px;min-height:58px}.app-shell.is-table-play .capture-row .hwatu-card,.app-shell.is-table-play .hwatu-card.is-mini{width:20px;height:32px}.app-shell.is-table-play .capture-stack{--capture-card-w:20px;min-height:32px}.app-shell.is-table-play .captured-groups .capture-stack,.app-shell.is-table-play .captured-groups .capture-stack.is-compact{max-height:calc(var(--capture-card-w) * 1.55 * 2 + 6px);overflow:hidden}.app-shell.is-table-play .opponent-zone{padding-top:0;padding-bottom:2px}.app-shell.is-table-play .player-zone{padding-top:0;padding-bottom:0}.app-shell.is-table-play .self-zone{min-height:0;max-height:26%;padding-bottom:0;overflow:hidden}.app-shell.is-table-play .table-center{padding-top:2px;padding-bottom:0}.app-shell.is-table-play .self-hand-area,.app-shell.is-table-play .game-table-wrap>.self-hand-area{padding-top:0;padding-bottom:max(6px, env(safe-area-inset-bottom), var(--app-chrome-bottom,12px))}}@container matgo-play-shell (max-height:320px){.app-shell.is-table-play{--matgo-floor-min:calc(var(--floor-card-height,46px) + 10px)}:is(.app-shell.is-table-play .game-toolbar,.app-shell.is-table-play .game-toolbar:has(.matgo-ai-diff)){height:24px;min-height:24px}.app-shell.is-table-play .matgo-ai-diff button,.app-shell.is-table-play .toolbar-actions .quiet-button{padding:2px 6px;font-size:9px}.app-shell.is-table-play .hwatu-card:not([data-card-zone=hand]):not(.is-mini),.app-shell.is-table-play .card-back{width:28px;height:46px}.app-shell.is-table-play .floor-cards{--floor-card-width:28px;--floor-card-height:46px;--floor-stack-step:7px;min-height:var(--floor-card-height,46px)}.app-shell.is-table-play .floor-triple-stack{--floor-card-width:28px;--floor-card-height:46px;--floor-stack-step:7px}.app-shell.is-table-play .my-hand{--hand-w:32px;--hand-h:52px;min-height:52px}.app-shell.is-table-play .opponent-hand .card-back{width:22px;height:34px;margin-left:-12px}.app-shell.is-table-play .turn-message{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.lobby__header{text-align:center;padding:28px 20px 8px}.lobby__header-row{text-align:left;justify-content:space-between;align-items:flex-start;gap:16px;max-width:1100px;margin:0 auto;display:flex}.lobby__header-row>div:first-child{text-align:center;flex:1}.locale-switcher{flex-shrink:0;margin:0;padding-top:8px;display:inline-flex}.locale-switcher__select{appearance:none;box-sizing:border-box;border:1px solid var(--line);max-width:100%;min-height:36px;color:var(--paper);font:inherit;cursor:pointer;background-color:#ffffff0a;background-image:linear-gradient(45deg,#0000 50%,#9aa8a3 50%),linear-gradient(135deg,#9aa8a3 50%,#0000 50%);background-position:calc(100% - 16px),calc(100% - 10px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:999px;padding:7px 30px 7px 12px;font-size:12px;font-weight:700;line-height:1.2;transition:background-color .2s,border-color .2s,color .2s}.locale-switcher__select:hover{color:var(--cream);background-color:#ffffff14;border-color:#fff3}.locale-switcher__select:focus{outline-offset:1px;outline:2px solid #d6a64673}.locale-switcher__select option{color:#1a1f1e;background:#fff}.lobby__title{color:var(--paper);margin:0;font:700 clamp(36px,5vw,52px)/1.1 Georgia,Batang,serif}.lobby__subtitle{color:var(--muted);margin:8px 0 0;font-size:14px}.lobby__tabs{flex-wrap:wrap;justify-content:center;gap:6px;padding:0 20px 28px;display:flex}.lobby__tab{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;padding:9px 18px;font-size:13px;font-weight:700;transition:background .2s,color .2s,border-color .2s}.lobby__tab:hover{color:var(--cream);border-color:#fff3}.lobby__tab--active{background:var(--red);color:#fff;border-color:var(--red)}.lobby__grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;max-width:1100px;margin:0 auto;padding:0 20px 40px;display:grid}.home-intro{border-top:1px solid var(--line);max-width:1100px;margin:0 auto;padding:8px 20px 64px}.home-intro__inner{max-width:42rem;margin:0 auto}.home-intro__header{padding:28px 0 8px}.home-intro__header h2{color:var(--paper);letter-spacing:-.02em;margin:0;font:700 clamp(22px,3vw,28px)/1.25 Georgia,Batang,serif}.home-intro__header>p,.home-intro__block p{color:#9aa8a3;margin:12px 0 0;font-size:14px;line-height:1.75}.home-intro__links{margin-top:14px!important;font-size:13px!important}.home-intro__links a{color:var(--cream);font-weight:700;text-decoration:none}.home-intro__links a:hover{text-decoration:underline}.home-intro__block{padding:20px 0 0}.home-intro__block h3{color:var(--paper);margin:0;font-size:15px;font-weight:700}.home-intro__block ul{color:#9aa8a3;margin:10px 0 0;padding-left:1.15em;font-size:14px;line-height:1.75}.home-intro__block li+li{margin-top:6px}.home-intro__notices{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;margin-top:8px;padding:18px 16px}.home-intro__faq{margin-top:28px;padding-top:8px}.home-intro__faq-heading{color:var(--paper);margin:0 0 8px;font:700 clamp(20px,2.6vw,24px)/1.25 Georgia,Batang,serif}.home-intro__qa{border-top:1px solid #ffffff12;padding:16px 0}.home-intro__qa:first-of-type{border-top:0}.home-intro__qa h3{color:var(--cream);margin:0;font-size:14px;font-weight:700;line-height:1.45}.home-intro__qa p{color:#9aa8a3;margin:8px 0 0;font-size:13px;line-height:1.7}@media (max-width:760px){.home-intro{padding:4px 4px 48px}.home-intro__notices{padding:16px 14px}}.game-card__wrapper{color:inherit;text-decoration:none;display:block}.game-card__wrapper--disabled{opacity:.6;cursor:not-allowed}.game-card{background:#ffffff09;border:1px solid #ffffff17;border-radius:10px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative;overflow:hidden}.game-card__wrapper:not(.game-card__wrapper--disabled) .game-card:hover{border-color:#d6a64666;transform:translateY(-4px);box-shadow:0 12px 32px #0000004d}.game-card__thumbnail{background:var(--card-color);height:148px;position:relative;overflow:hidden}.game-card__image{object-fit:cover;object-position:center}.game-card__body{padding:16px}.game-card__title{margin:0;font-size:16px;font-weight:800}.game-card__desc{color:var(--muted);margin:6px 0 0;font-size:12px}.game-card__badge{color:#aaa;background:#0000008c;border-radius:999px;padding:4px 9px;font-size:10px;font-weight:800;position:absolute;top:10px;right:10px}.game-card__badge--new{background:var(--gold);color:#1a1200}.matgo-mode-lobby{text-align:center;max-width:720px;margin:0 auto;padding:clamp(48px,10vh,88px) 24px 60px}.matgo-mode-lobby h1{letter-spacing:-.05em;color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(40px,6vw,64px);font-weight:500}.matgo-mode-lead{color:var(--muted);margin:14px 0 28px;font-size:15px}.matgo-mode-cards{grid-template-columns:1fr 1fr;gap:14px;display:grid}button.matgo-mode-card,.matgo-mode-card{appearance:none;text-align:left;cursor:pointer;width:100%;color:var(--paper);font:inherit;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:10px;justify-items:start;gap:8px;margin:0;padding:24px 20px 20px;transition:border-color .2s,transform .2s,background .2s;display:grid}button.matgo-mode-card:hover,.matgo-mode-card:hover{background:#ffffff14;border-color:#d6a64673;transform:translateY(-2px)}.matgo-mode-card strong{font-size:18px;font-weight:800}.matgo-mode-card>span{color:var(--muted);font-size:13px;line-height:1.5}.matgo-mode-card--pvp{border-color:#1f6a5580}.matgo-mode-note{color:#667671;margin:22px 0 0;font-size:11px}.matgo-ai-diff{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.matgo-ai-diff button{appearance:none;border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:3px;padding:7px 10px;font-size:11px;font-weight:700}.matgo-ai-diff button.is-active{background:var(--green);color:#fff;border-color:var(--green)}@media (max-width:640px){.matgo-mode-cards{grid-template-columns:1fr}}.omok-app{background:radial-gradient(ellipse 80% 50% at 50% -10%, #1f6a5547, transparent 55%), radial-gradient(circle at 90% 80%, #d6a64614, transparent 40%), var(--ink);min-height:100dvh}.omok-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;height:72px;padding:0 clamp(16px,4vw,48px);display:flex}.omok-brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.omok-brand strong{color:var(--paper);letter-spacing:-.03em;font-size:18px;display:block}.omok-brand small{color:var(--muted);letter-spacing:.22em;margin-top:2px;font-size:9px;display:block}.omok-diff{flex-wrap:wrap;gap:6px;display:flex}button.omok-diff__btn,.omok-diff__btn{appearance:none;border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:3px;padding:8px 12px;font-size:12px;font-weight:700}button.omok-diff__btn.is-active,.omok-diff__btn.is-active{background:var(--green);color:#fff;border-color:var(--green)}.omok-main{max-width:1100px;margin:0 auto;padding:28px clamp(16px,4vw,48px) 48px}.omok-panel{grid-template-columns:minmax(220px,280px) minmax(0,1fr);align-items:center;gap:28px;display:grid}.omok-eyebrow{color:var(--gold);letter-spacing:.18em;margin:0 0 8px;font-size:10px;font-weight:800}.omok-meta h1{letter-spacing:-.05em;color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(36px,5vw,52px);font-weight:500}.omok-message{color:#a5b2ad;min-height:2.8em;margin:16px 0 12px;font-size:14px;line-height:1.65}.omok-timer{color:#b7c2bd;align-items:center;gap:8px;margin:0 0 18px;font-size:12px;font-weight:700;display:flex}.omok-timer .turn-timer{margin-left:0}.omok-panel.is-won .omok-message{color:#6dd3a1}.omok-panel.is-lost .omok-message{color:#ef8b7d}.omok-panel.is-draw .omok-message{color:var(--gold)}.omok-legend{color:#b7c2bd;gap:10px;margin-bottom:22px;font-size:13px;display:grid}.omok-legend span{align-items:center;gap:10px;display:flex}.omok-legend .omok-stone{flex-shrink:0;width:18px;height:18px}.omok-restart{justify-content:center;width:100%}.omok-board-wrap{background:linear-gradient(160deg,#c9a56a 0%,#a67c42 45%,#8b6534 100%);border-radius:6px;place-items:center;width:100%;max-width:min(540px,100%);margin-inline:auto;padding:clamp(8px,1.5vw,20px);display:grid;box-shadow:inset 0 1px #ffffff40,0 24px 48px #00000059}.omok-board{aspect-ratio:1;grid-template-columns:repeat(var(--size), 1fr);grid-template-rows:repeat(var(--size), 1fr);background:linear-gradient(#3c26128c 1px, transparent 1px) 0 calc(50% / var(--size)) / 100% calc(100% / var(--size)), linear-gradient(90deg, #3c26128c 1px, transparent 1px) calc(50% / var(--size)) 0 / calc(100% / var(--size)) 100%, #d4a574;touch-action:manipulation;border:1px solid #3c261259;width:100%;max-width:min(100%,72dvh,540px);display:grid;position:relative}.baduk-board-wrap{max-width:min(640px,100%)}.baduk-board{max-width:min(100%,85dvh,640px)}.baduk-hoshi{pointer-events:none;background:#28180abf;border-radius:50%;width:18%;min-width:4px;height:18%;min-height:4px;position:absolute}.baduk-actions{flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-top:12px;display:flex}.baduk-ai-ready{color:#8fd4b0;margin:0 0 8px;font-size:12px;font-weight:700}.baduk-rules-line,.baduk-capture-line{color:#9aa8a3;margin:0 0 10px;font-size:12px;line-height:1.45}.baduk-capture-line{margin-top:8px}@media (max-width:640px){.baduk-board-wrap{max-width:min(100%,96vw);padding:clamp(6px,2vw,12px)}.baduk-board{max-width:min(100%,92vw,72dvh)}.baduk-actions{justify-content:center}.baduk-actions .omok-diff__btn,.baduk-actions .omok-restart{min-width:88px;min-height:40px}}.omok-cell{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative}.omok-cell:disabled{cursor:default;opacity:1;transform:none}.omok-cell.is-forbidden{cursor:not-allowed}.omok-cell:focus-visible{outline-offset:-2px;outline:2px solid #fff4d7e6}.omok-cell.is-win{background:#d6a64647}.omok-cell.is-hover:after{content:"";pointer-events:none;border:1px solid #ffffff6b;border-radius:50%;position:absolute;inset:20%}.omok-stone{aspect-ratio:1;opacity:1;border-radius:50%;flex-shrink:0;width:78%;height:78%;display:block;box-shadow:0 2px 5px #00000073,inset 0 1px 2px #ffffff2e}.omok-cell .omok-stone{width:auto;height:auto;position:absolute;inset:11%}.omok-stone--black{background-color:#0a0a0a;background-image:radial-gradient(circle at 32% 28%,#3a3a3a,#111 45%,#000 78%)}.omok-stone--white{background-color:#f5f2ea;background-image:radial-gradient(circle at 32% 28%,#fff,#e8e2d6 55%,#bfb6a6 88%);box-shadow:0 2px 5px #0006,inset 0 0 0 1px #00000029}.omok-stone.is-pulse{animation:.35s ease-out omok-place}.omok-ghost{opacity:.28;pointer-events:none}.omok-x{opacity:.55;width:38%;height:38%;position:absolute}.omok-x:before,.omok-x:after{content:"";background:#8b1e1e;border-radius:1px;position:absolute;inset:45% 0}.omok-x:before{transform:rotate(45deg)}.omok-x:after{transform:rotate(-45deg)}.omok-cell.is-last .omok-stone:after{content:"";background:var(--red);border-radius:50%;width:18%;height:18%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.omok-forbid{text-align:left;background:#00000038;border:1px solid #d6a64647;border-radius:6px;margin:0 0 16px;padding:12px 14px}.omok-forbid__lead{color:#d7e3dc;margin:0 0 10px;font-size:12px;line-height:1.55}.omok-forbid__lead strong{color:var(--gold)}.omok-forbid__list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.omok-forbid__list li{gap:2px;display:grid}.omok-forbid__list strong{color:#fff4d7;font-size:12px;font-weight:800}.omok-forbid__list span{color:#9aaaa4;font-size:11px;line-height:1.5}.omok-board-hint{color:#dce7e1;text-align:center;margin:10px 0 0;font-size:11px;line-height:1.45}.omok-menu .omok-forbid{width:100%;max-width:520px;margin:0 0 22px}.omok-error{color:#ef8b7d;margin:0 0 12px;font-size:13px}.omok-info{color:#aab7b2;margin:0;font-size:12px;line-height:1.55}.omok-actions{gap:10px;display:grid}.omok-waiting{text-align:center;color:#3c2612;align-content:center;place-items:center;min-height:280px;padding:24px 16px;font-size:15px;display:grid}.omok-waiting strong{letter-spacing:.08em;font-family:Georgia,serif}.omok-menu{text-align:center;justify-items:center;max-width:720px;margin-left:auto;margin-right:auto;padding-top:clamp(36px,8vh,72px);display:grid}.omok-menu h1{letter-spacing:-.05em;color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(40px,6vw,56px);font-weight:500}.omok-menu-lead{color:var(--muted);margin:12px 0 28px;font-size:15px}.omok-rules{color:var(--muted);margin:18px 0 0;font-size:12px;line-height:1.5}.omok-menu-cards{grid-template-columns:1fr 1fr;gap:14px;width:100%;display:grid}.baduk-menu-cards{grid-template-columns:minmax(0,420px);justify-content:center}button.omok-mode-card,.omok-mode-card{appearance:none;text-align:left;cursor:pointer;width:100%;color:var(--paper);font:inherit;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:10px;justify-items:start;gap:4px;margin:0;padding:22px 20px 20px;transition:border-color .2s,transform .2s,background .2s;display:grid}button.omok-mode-card:hover,.omok-mode-card:hover{background:#ffffff14;border-color:#d6a64673;transform:translateY(-2px)}.omok-mode-icon{align-items:center;gap:6px;margin-bottom:10px;display:flex}.omok-mode-icon .omok-stone{width:22px;height:22px}.omok-mode-card strong{margin:0;font-size:18px;font-weight:800;display:block}.omok-mode-card>span{color:var(--muted);font-size:13px;line-height:1.45}.omok-mode-card--pvp{border-color:#1f6a5580}@media (max-width:640px){.omok-menu-cards{grid-template-columns:1fr}}.omok-lobby{max-width:820px}.omok-lobby__head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.omok-lobby h1{margin:0;font-family:Georgia,Batang,serif;font-size:clamp(28px,4vw,40px);font-weight:500}.omok-lobby__sub{color:var(--muted);margin:8px 0 0;font-size:13px}.omok-lobby__controls{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.omok-nick{color:var(--muted);gap:4px;font-size:11px;display:grid}.omok-nick input{border:1px solid var(--line);color:var(--cream);background:#ffffff0a;border-radius:3px;min-width:140px;padding:10px 12px}.omok-resume{color:#e4bf74;cursor:pointer;background:#d6a64614;border:1px solid #d6a64659;border-radius:3px;width:100%;margin-bottom:14px;padding:12px;font-size:13px;font-weight:700}.omok-room-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.omok-room-empty{text-align:center;color:var(--muted);border:1px dashed #ffffff1f;border-radius:4px;padding:36px 16px;font-size:13px}.omok-room-row{background:#ffffff09;border:1px solid #ffffff13;border-radius:4px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.omok-room-row strong{font-size:14px;display:block}.omok-room-row p{color:#758680;margin:4px 0 0;font-size:11px}.omok-status{border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.omok-status--waiting{color:#6dd3a1;background:#4bbf851a}.omok-status--playing{color:#e6b764;background:#d6a6461f}.omok-status--finished{color:#9da9a5;background:#ffffff12}@keyframes omok-place{0%{opacity:.85;transform:scale(.55)}to{opacity:1;transform:scale(1)}}.omok-result-overlay{z-index:60}.omok-result-card{width:min(360px,100vw - 32px)}.omok-result-card h2{letter-spacing:-.04em;margin:8px 0 10px;font:500 clamp(36px,7vw,48px) Georgia,Batang,serif}.omok-result-card.is-won h2{color:#1f6a55}.omok-result-card.is-lost h2{color:var(--red-dark)}.omok-result-card.is-draw h2{color:#8a6a28}.omok-result-card>p{color:#75807c;margin:0;font-size:13px;line-height:1.55}.omok-result-card .result-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;display:grid!important}.omok-result-card .result-actions .wide{grid-column:1/-1}@media (max-width:860px){.omok-panel{grid-template-columns:1fr;gap:14px}.omok-meta{text-align:center}.omok-legend{justify-items:center}.omok-restart{max-width:240px;margin:0 auto}.omok-room-row{grid-template-columns:minmax(0,1fr) auto}.omok-room-row .omok-status{display:none}}@media (max-width:640px){.omok-app{min-height:100dvh;padding-bottom:env(safe-area-inset-bottom)}.omok-topbar{height:auto;min-height:56px;padding:8px max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left));padding-top:max(8px, env(safe-area-inset-top));flex-wrap:wrap;gap:8px}.omok-brand strong{font-size:15px}.omok-brand small{display:none}.omok-diff{flex:1;justify-content:flex-end;gap:4px}.omok-diff__btn{padding:7px 9px;font-size:11px}.omok-main{padding:12px max(6px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(6px, env(safe-area-inset-left))}.omok-panel{align-items:stretch;gap:12px}.omok-board-wrap{order:-1}.omok-meta h1{font-size:clamp(26px,8vw,34px)}.omok-message{min-height:0;margin:8px 0;font-size:13px;line-height:1.5}.omok-timer{justify-content:center;margin:0 0 10px;font-size:11px}.omok-legend{flex-wrap:wrap;justify-content:center;gap:10px 16px;margin-bottom:10px;font-size:12px;display:flex}.omok-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.omok-restart{width:auto;min-width:140px;max-width:none;padding:10px 16px;font-size:13px}.omok-actions .omok-diff__btn{padding:10px 14px}.omok-board-wrap{border-radius:4px;width:100%;max-width:none;padding:6px}.omok-board{max-width:min(100%,68dvh,100vw - 24px)}.omok-board-hint{padding:0 6px;font-size:10px}.omok-forbid{margin:0 0 10px;padding:10px 12px}.omok-forbid__lead{margin-bottom:8px;font-size:11px}.omok-forbid__list{gap:6px}.omok-forbid__list strong{font-size:11px}.omok-forbid__list span{font-size:10px}.omok-rules{margin:12px 0 0;padding:0 4px;font-size:10px}.omok-waiting{min-height:200px;padding:18px 12px;font-size:14px}.invite-share--omok{width:100%;margin-top:18px}.omok-menu{justify-items:stretch;padding-top:28px}.omok-menu h1{font-size:clamp(34px,10vw,44px)}.omok-menu-lead{margin:10px 0 20px;font-size:14px}.omok-mode-card{padding:18px 16px}.omok-mode-card strong{font-size:16px}.omok-lobby__head{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:16px}.omok-lobby__controls{flex-direction:column;align-items:stretch;width:100%}.omok-nick{width:100%}.omok-nick input{width:100%;min-width:0}.omok-lobby__controls .primary-button,.omok-lobby__controls .omok-diff__btn{justify-content:center;width:100%}.omok-room-row{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:12px}.omok-room-row .join-button,.omok-room-row button{padding:8px 12px;font-size:12px}.omok-result-card .result-actions{grid-template-columns:1fr}.omok-result-card .result-actions .wide{grid-column:auto}}@media (orientation:landscape) and (max-height:520px){.omok-topbar{min-height:0;padding-top:max(4px, env(safe-area-inset-top));padding-bottom:4px}.omok-main{padding-top:8px;padding-bottom:max(12px, env(safe-area-inset-bottom))}.omok-panel{grid-template-columns:minmax(160px,220px) minmax(0,1fr);align-items:center;gap:12px}.omok-board-wrap{order:0;max-width:min(100%,78dvh);padding:4px}.omok-board{max-width:min(100%,78dvh,100vw - 200px)}.omok-meta h1{font-size:clamp(22px,5vh,30px)}.omok-forbid{display:none}.omok-message{margin:4px 0;font-size:12px}.omok-legend{margin-bottom:8px}.omok-rules{display:none}}@media (max-width:400px){.omok-diff__btn{padding:6px 7px;font-size:10px}.omok-board-wrap{padding:4px}.omok-board{max-width:min(100%,70dvh,100vw - 16px)}}.othello-app{background:radial-gradient(ellipse 80% 50% at 50% -10%, #1f6a5552, transparent 55%), radial-gradient(circle at 12% 78%, #d6a6461a, transparent 42%), var(--ink);min-height:100dvh}.othello-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:0 clamp(16px,4vw,48px);display:flex}.othello-brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.othello-brand strong{color:var(--paper);letter-spacing:-.03em;font-size:18px;display:block}.othello-brand small{color:var(--muted);letter-spacing:.22em;margin-top:2px;font-size:9px;display:block}.othello-diff{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}button.othello-diff__btn,.othello-diff__btn{appearance:none;border:1px solid var(--line);color:var(--paper);cursor:pointer;background:#ffffff0a;border-radius:0;min-height:36px;padding:8px 12px;font:700 12px/1 inherit}button.othello-diff__btn.is-active,.othello-diff__btn.is-active{background:var(--green);color:#fff;border-color:var(--green)}.othello-main{max-width:1100px;margin:0 auto;padding:28px clamp(16px,4vw,48px) 48px}.othello-panel{grid-template-columns:minmax(200px,280px) minmax(0,1fr);align-items:start;gap:28px;display:grid}.othello-eyebrow{color:var(--gold);letter-spacing:.18em;margin:0 0 8px;font-size:10px;font-weight:800}.othello-meta h1{color:var(--paper);letter-spacing:-.03em;margin:0;font:800 clamp(28px,4vw,40px)/1.05 Georgia,Times New Roman,serif}.othello-message{color:#a5b2ad;min-height:2.8em;margin:16px 0 12px;font-size:14px;line-height:1.65}.othello-timer{color:#b7c2bd;align-items:center;gap:8px;margin:0 0 18px;font-size:12px;font-weight:700;display:flex}.othello-timer .turn-timer{margin-left:0}.othello-panel.is-won .othello-message{color:#6dd3a1}.othello-panel.is-lost .othello-message{color:#ef8b7d}.othello-panel.is-draw .othello-message{color:var(--gold)}.othello-legend{color:#b7c2bd;gap:10px;margin-bottom:22px;font-size:13px;display:grid}.othello-legend span{align-items:center;gap:10px;display:flex}.othello-restart{justify-content:center;width:100%}.othello-score{color:#c5d0cb;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;margin:14px 0 0;font-size:13px;font-weight:700;display:grid}.othello-score__side{white-space:nowrap;align-items:center;gap:8px;display:flex}.othello-score__side .othello-disc{width:16px;height:16px}.othello-score__bar{background:#ffffff1f;height:8px;overflow:hidden}.othello-score__bar i{background:linear-gradient(90deg,#1a1a1a,#3d3d3d);height:100%;display:block}.othello-board-wrap{justify-self:center;width:min(100%,560px)}.othello-board-hint{text-align:center;color:#8c9b96;margin:10px 0 0;font-size:12px;line-height:1.45}.othello-coords{color:#7f8c87;letter-spacing:.04em;text-transform:uppercase;-webkit-user-select:none;user-select:none;font:700 11px/1 Georgia,serif;display:grid}.othello-coords--cols{text-align:center;grid-template-columns:repeat(8,1fr);margin-bottom:6px;padding-left:22px}.othello-coords--rows{text-align:center;grid-template-rows:repeat(8,1fr);align-items:center;width:18px;margin-right:4px}.othello-board-row{align-items:stretch;display:flex}.othello-board{--size:8;grid-template-columns:repeat(var(--size), 1fr);aspect-ratio:1;perspective:720px;background:linear-gradient(145deg,#1f6a55,#164f40);border:3px solid #0f3a2e;flex:1;gap:2px;padding:4px;display:grid;box-shadow:inset 0 0 0 1px #ffffff14,0 18px 40px #00000059}.othello-cell{appearance:none;cursor:pointer;touch-action:manipulation;transform-style:preserve-3d;background:#0000001f;border:0;place-items:center;padding:0;display:grid;position:relative}.othello-cell:disabled{cursor:default}.othello-cell.is-legal{background:#0000002e}.othello-cell.is-flip{background:#d6a64638}.othello-cell.is-hover{background:#6dd3a129}.othello-disc{backface-visibility:hidden;border-radius:50%;width:min(78%,52px);height:min(78%,52px);display:inline-block;box-shadow:0 2px 6px #00000059}.othello-disc--black{background:radial-gradient(circle at 32% 28%,#555,#111 55%,#000)}.othello-disc--white{background:radial-gradient(circle at 32% 28%,#fff,#e8e8e8 55%,#cfcfcf);box-shadow:0 2px 6px #00000047,inset 0 0 0 1px #00000014}.othello-disc.is-place{animation:.28s ease-out othello-place}.othello-disc.is-flipping{animation:.42s ease-in-out both othello-flip;animation-delay:var(--flip-delay,0s)}.othello-ghost{opacity:.34;pointer-events:none}.othello-hint{background:#6dd3a1d9;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 2px #6dd3a140}.othello-cell.is-last .othello-disc:after{content:"";background:var(--gold);opacity:.9;border-radius:50%;position:absolute;inset:38%}.othello-disc{position:relative}@keyframes othello-place{0%{opacity:.35;transform:scale(.45)}70%{opacity:1;transform:scale(1.06)}to{opacity:1;transform:scale(1)}}@keyframes othello-flip{0%{transform:rotateY(0)scale(1)}45%{transform:rotateY(90deg)scale(.92)}55%{transform:rotateY(90deg)scale(.92)}to{transform:rotateY(180deg)scale(1)}}.othello-rules-line{text-align:center;color:#758680;margin:18px 0 0;font-size:12px}.othello-tm-note{text-align:center;color:#8a9690;word-break:keep-all;max-width:36em;margin:10px auto 0;font-size:12px;line-height:1.5}.othello-howto-link{margin:22px auto 0;display:inline-flex}.othello-error{color:#ef8b7d;margin:0 0 12px;font-size:13px}.othello-actions{gap:10px;display:grid}.othello-waiting{text-align:center;color:#a5b2ad;border:1px dashed var(--line);background:#ffffff08;place-content:center;gap:16px;min-height:280px;padding:28px;display:grid}.othello-waiting strong{letter-spacing:.08em;font-family:Georgia,serif}.othello-menu{text-align:center;max-width:720px;padding-top:48px}.othello-menu h1{color:var(--paper);margin:0;font:800 clamp(40px,7vw,64px)/1 Georgia,Times New Roman,serif}.othello-menu-lead{color:var(--muted);margin:12px 0 28px;font-size:15px}.othello-menu-cards{grid-template-columns:1fr 1fr;gap:14px;display:grid}button.othello-mode-card,.othello-mode-card{appearance:none;border:1px solid var(--line);color:var(--paper);text-align:left;cursor:pointer;background:#ffffff0a;gap:10px;min-height:44px;padding:22px 20px;transition:border-color .15s,transform .15s,background .15s;display:grid}button.othello-mode-card:hover,.othello-mode-card:hover{background:#1f6a5524;border-color:#1f6a55b3;transform:translateY(-2px)}.othello-mode-icon{gap:8px;margin-bottom:4px;display:flex}.othello-mode-icon .othello-disc{width:28px;height:28px}.othello-mode-card strong{margin:0;font-size:18px;font-weight:800;display:block}.othello-mode-card>span{color:var(--muted);font-size:13px;line-height:1.45}.othello-mode-card--pvp{border-color:#1f6a5580}.othello-lobby{max-width:820px}.othello-lobby__head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px;display:flex}.othello-lobby h1{color:var(--paper);margin:0;font:800 clamp(28px,4vw,40px)/1.05 Georgia,Times New Roman,serif}.othello-lobby__sub{color:var(--muted);margin:8px 0 0;font-size:13px}.othello-lobby__controls{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.othello-nick{color:var(--muted);gap:4px;font-size:11px;display:grid}.othello-nick input{border:1px solid var(--line);width:140px;color:var(--paper);font:inherit;background:#ffffff0a;min-height:44px;padding:10px 12px}.othello-resume{color:#6dd3a1;cursor:pointer;background:#4bbf8514;border:1px solid #6dd3a159;width:100%;min-height:44px;margin-bottom:12px;padding:12px;font:700 13px inherit}.othello-room-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.othello-room-empty{text-align:center;color:#758680;border:1px dashed var(--line);padding:28px}.othello-room-row{border:1px solid var(--line);color:var(--paper);background:#ffffff08;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.othello-room-row strong{font-size:14px;display:block}.othello-room-row p{color:#758680;margin:4px 0 0;font-size:11px}.othello-status{white-space:nowrap;padding:6px 10px;font-size:11px;font-weight:700}.othello-status--waiting{color:#6dd3a1;background:#4bbf851a}.othello-status--playing{color:#e6b764;background:#d6a6461f}.othello-status--finished{color:#9da9a5;background:#ffffff12}.othello-rules-modal .rules-grid article{background:#f7f4ee}.othello-rules-modal .rules-grid strong{color:var(--ink);font-weight:800}.othello-result-overlay{z-index:80}.othello-result-card{color:#182521;text-align:center;background:#f7f4ee;border:1px solid #ded8cd;width:min(420px,100vw - 32px);padding:28px 24px 22px}.othello-result-card .result-kicker{color:#8a6a28;letter-spacing:.18em;margin-bottom:10px;font:800 10px/1 inherit;display:block}.othello-result-card h2{color:#182521;margin:0 0 10px;font:800 28px/1.1 Georgia,Times New Roman,serif}.othello-result-card.is-won h2{color:#1f6a55}.othello-result-card.is-lost h2{color:#b44b3c}.othello-result-card.is-draw h2{color:#8a6a28}.othello-result-card>p{color:#75807c;margin:0;font-size:13px;line-height:1.55}.othello-result-card .result-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:22px;display:grid!important}.othello-result-card .result-actions .wide{grid-column:1/-1}@media (max-width:860px){.othello-menu-cards{grid-template-columns:1fr}.othello-panel{grid-template-columns:1fr;gap:18px}.othello-meta{text-align:center}.othello-legend{justify-items:center}.othello-restart{max-width:240px;margin:0 auto}.othello-room-row{grid-template-columns:minmax(0,1fr) auto}.othello-room-row .othello-status{display:none}.othello-coords--cols{padding-left:16px}}@media (max-width:640px){.othello-app{padding-bottom:env(safe-area-inset-bottom)}.othello-topbar{height:auto;min-height:56px;padding:8px 12px;padding-top:max(8px, env(safe-area-inset-top));flex-wrap:wrap;gap:8px}.othello-brand strong{font-size:15px}.othello-brand small{display:none}.othello-diff{flex:1;justify-content:flex-end;gap:4px}.othello-diff__btn{min-height:36px;padding:7px 9px;font-size:11px}.othello-main{padding:12px 6px 20px;padding-bottom:max(20px, env(safe-area-inset-bottom))}.othello-panel{align-items:stretch;gap:12px}.othello-board-wrap{order:-1;width:min(100%,100vw - 28px)}.othello-meta h1{font-size:clamp(26px,8vw,34px)}.othello-message{min-height:0;margin:8px 0;font-size:13px;line-height:1.5}.othello-timer{justify-content:center;margin:0 0 10px;font-size:11px}.othello-legend{flex-wrap:wrap;justify-content:center;gap:10px 16px;margin-bottom:10px;font-size:12px;display:flex}.othello-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.othello-restart{width:auto;min-width:140px;max-width:none;padding:10px 16px;font-size:13px}.othello-actions .othello-diff__btn{padding:10px 14px}.othello-menu{padding-top:28px}.othello-lobby__controls{width:100%}.othello-nick input{width:min(100%,180px)}}@media (prefers-reduced-motion:reduce){.othello-disc.is-place,.othello-disc.is-flipping{animation:none}}.chess-app{background:radial-gradient(ellipse 80% 50% at 50% -10%, #d6a6462e, transparent 55%), radial-gradient(circle at 12% 78%, #b5886329, transparent 42%), var(--ink);min-height:100dvh;overflow-x:clip}.chess-topbar{min-height:72px;padding:max(10px, env(safe-area-inset-top)) clamp(12px, 4vw, 48px) 10px;border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.chess-brand{color:inherit;align-items:center;gap:12px;min-width:0;text-decoration:none;display:flex}.chess-brand strong{color:var(--paper);letter-spacing:-.03em;font-size:clamp(16px,1.2vw + 14px,18px);display:block}.chess-brand small{color:var(--muted);letter-spacing:.22em;margin-top:2px;font-size:9px;display:block}.chess-diff{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}button.chess-diff__btn,.chess-diff__btn{appearance:none;border:1px solid var(--line);color:var(--paper);cursor:pointer;background:#ffffff0a;border-radius:0;min-height:40px;padding:10px 12px;font:700 12px/1 inherit}button.chess-diff__btn.is-active,.chess-diff__btn.is-active{background:var(--gold);color:#1a1200;border-color:var(--gold)}.chess-main{max-width:1100px;padding:28px clamp(12px, 4vw, 48px) max(48px, env(safe-area-inset-bottom));margin:0 auto}.chess-panel{grid-template-columns:minmax(200px,280px) minmax(0,1fr);align-items:start;gap:28px;display:grid}.chess-eyebrow{color:var(--gold);letter-spacing:.18em;margin:0 0 8px;font-size:10px;font-weight:800}.chess-meta h1{color:var(--paper);letter-spacing:-.04em;margin:0;font-family:Georgia,Batang,serif;font-size:clamp(28px,3vw,40px);font-weight:500}.chess-message{color:#a5b2ad;min-height:2.8em;margin:16px 0 12px;font-size:14px;line-height:1.65}.chess-timer{color:#b7c2bd;align-items:center;gap:8px;margin:0 0 18px;font-size:12px;font-weight:700;display:flex}.chess-timer .turn-timer{margin-left:0}.chess-panel.is-won .chess-message{color:#6dd3a1}.chess-panel.is-lost .chess-message{color:#ef8b7d}.chess-panel.is-draw .chess-message{color:var(--gold)}.chess-legend{color:#b7c2bd;gap:10px;margin-bottom:22px;font-size:13px;display:grid}.chess-legend>span{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.chess-restart{justify-content:center;align-items:center;width:auto;min-width:160px;display:inline-flex}.chess-restart-row{justify-content:center;width:100%;display:flex}.chess-captured{flex-wrap:wrap;align-items:center;gap:2px;min-height:22px;display:flex}.chess-captured--empty{color:#6d7874;font-size:12px}.chess-captured .chess-glyph{font-size:18px;line-height:1}.chess-board-wrap{justify-self:center;width:min(100%,560px);min-width:0;max-width:100%}.chess-coords{color:#8c9b96;text-transform:lowercase;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:700;display:grid}.chess-coords--cols{text-align:center;grid-template-columns:repeat(8,1fr);margin-bottom:4px;padding-left:18px;padding-right:18px}.chess-coords--rows{flex:0 0 18px;grid-template-rows:repeat(8,1fr);place-items:center;width:18px}.chess-coords--rows-spacer{visibility:hidden;pointer-events:none}.chess-board-row{align-items:stretch;min-width:0;max-width:100%;display:flex}.chess-board{aspect-ratio:1;touch-action:manipulation;border:3px solid #4a3424;flex:auto;grid-template-rows:repeat(8,minmax(0,1fr));grid-template-columns:repeat(8,minmax(0,1fr));width:auto;min-width:0;display:grid;position:relative;box-shadow:0 16px 48px #00000061}.chess-cell{appearance:none;cursor:pointer;border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative}.chess-cell:disabled{cursor:default}.chess-cell.is-light{background:#f0d9b5}.chess-cell.is-dark{background:#b58863}.chess-cell.is-last.is-light{background:#f6eb73}.chess-cell.is-last.is-dark{background:#d9c44a}.chess-cell.is-selected{box-shadow:inset 0 0 0 3px #d4a017}.chess-cell.is-check{box-shadow:inset 0 0 0 3px #c0392b,inset 0 0 18px #c0392b73}.chess-cell.is-promo-target{box-shadow:inset 0 0 0 3px #1f6a55}.chess-glyph{pointer-events:none;-webkit-user-select:none;user-select:none;font-size:clamp(22px,5.4vw,44px);line-height:1;display:block}.chess-glyph--w{color:#f7f1e4;text-shadow:0 1px #2b2118,0 0 1px #1a140e,0 2px 2px #00000059}.chess-glyph--b{color:#1c1410;text-shadow:0 1px #ffffff40}.chess-glyph.is-pulse{animation:.35s ease-out chess-place}.chess-cell.is-anim-hidden .chess-glyph{opacity:0}.chess-fly{z-index:4;width:12.5%;height:12.5%;left:calc(var(--from-c) * 12.5%);top:calc(var(--from-r) * 12.5%);pointer-events:none;will-change:left, top;place-items:center;transition:left .28s cubic-bezier(.22,1,.36,1),top .28s cubic-bezier(.22,1,.36,1);display:grid;position:absolute}.chess-fly.is-at-dest{left:calc(var(--to-c) * 12.5%);top:calc(var(--to-r) * 12.5%)}.chess-fly .chess-glyph{font-size:clamp(22px,5.4vw,44px)}.chess-sound-btn{white-space:nowrap}.chess-hint{pointer-events:none;background:#14100c52;border-radius:50%;width:28%;height:28%}.chess-hint--capture{background:0 0;border:3px solid #c0392b8c;width:78%;height:78%}@keyframes chess-place{0%{transform:scale(.72)}to{transform:scale(1)}}.chess-promo-bar{border:1px solid var(--line);background:#ffffff0f;margin-top:12px;padding:12px}.chess-promo-bar p{color:var(--paper);margin:0 0 10px;font-size:13px;font-weight:700}.chess-promo-bar__row{flex-wrap:wrap;align-items:stretch;gap:8px;display:flex}.chess-promo-bar__btn{border:1px solid var(--line);cursor:pointer;background:#1c2422;flex:64px;place-items:center;gap:2px;min-height:64px;padding:8px 6px;display:grid}.chess-promo-bar__btn .chess-glyph{font-size:28px}.chess-promo-bar__btn small{color:var(--muted);font-size:10px;font-weight:700}.chess-promo-bar__cancel{border:1px solid var(--line);min-height:64px;color:var(--paper);cursor:pointer;background:0 0;padding:8px 14px;font-weight:700}.chess-rules-line{text-align:center;color:#758680;margin:18px 0 0;font-size:12px}.chess-howto-link{margin-top:22px}.chess-error{color:#ef8b7d;margin:0 0 12px;font-size:13px}.chess-actions{gap:10px;display:grid}.chess-waiting{text-align:center;min-height:240px;color:var(--paper);border:1px dashed var(--line);background:#ffffff0a;align-content:center;place-items:center;padding:24px 16px;display:grid}.chess-waiting strong{letter-spacing:.08em;font-family:Georgia,serif}.chess-menu{text-align:center;padding-top:48px}.chess-menu h1{color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(36px,6vw,64px);font-weight:500}.chess-menu-lead{color:var(--muted);margin:12px 0 28px;font-size:15px}.chess-menu-cards{grid-template-columns:1fr 1fr;gap:14px;max-width:640px;margin:0 auto;display:grid}button.chess-mode-card,.chess-mode-card{appearance:none;text-align:left;border:1px solid var(--line);color:var(--paper);cursor:pointer;background:#ffffff0a;gap:8px;min-height:140px;padding:22px 20px;display:grid}button.chess-mode-card:hover,.chess-mode-card:hover{background:#d6a64614;border-color:#d6a64680}.chess-mode-icon{gap:8px;display:flex}.chess-mode-icon .chess-glyph{font-size:28px}.chess-mode-card strong{margin:0;font-size:18px;font-weight:800;display:block}.chess-mode-card>span{color:var(--muted);font-size:13px;line-height:1.45}.chess-mode-card--pvp{border-color:#d6a64666}.chess-lobby{max-width:820px}.chess-lobby__head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-bottom:22px;display:flex}.chess-lobby h1{color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(28px,4vw,40px);font-weight:500}.chess-lobby__sub{color:var(--muted);margin:8px 0 0;font-size:13px}.chess-lobby__controls{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.chess-nick{color:var(--muted);gap:4px;font-size:11px;display:grid}.chess-nick input{border:1px solid var(--line);color:var(--paper);background:#ffffff0f;width:min(180px,100%);min-height:40px;padding:10px 12px}.chess-resume{width:100%;color:var(--paper);cursor:pointer;background:#d6a64614;border:1px solid #d6a64659;margin-bottom:14px;padding:12px;font-weight:700}.chess-room-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.chess-room-empty{text-align:center;color:#8c9b96;border:1px dashed var(--line);padding:28px 16px}.chess-room-row{border:1px solid var(--line);background:#ffffff0a;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:14px 16px;display:grid}.chess-room-row strong{font-size:14px;display:block}.chess-room-row p{color:#758680;margin:4px 0 0;font-size:11px}.chess-status{white-space:nowrap;padding:4px 8px;font-size:11px;font-weight:800}.chess-status--waiting{color:#6dd3a1;background:#4bbf851a}.chess-status--playing{color:#e6b764;background:#d6a6461f}.chess-status--finished{color:#9da9a5;background:#ffffff12}.chess-rules-modal .rules-grid article{background:#f7f4ee}.chess-rules-modal .rules-grid strong{color:var(--ink);font-weight:800}.janggi-app{overflow-x:clip}.janggi-app .chess-panel.janggi-panel{align-items:start;min-width:0}.janggi-setup{flex-wrap:wrap;gap:6px;margin:0 0 14px;display:flex}.janggi-setup-panel{width:100%;margin:0 0 16px}.janggi-setup-panel__lead{color:#b7c2bd;margin:0 0 10px;font-size:13px;line-height:1.45}.janggi-setup-panel .janggi-setup{margin-bottom:12px}.janggi-setup .chess-diff__btn{flex:calc(50% - 6px);min-width:0;padding-left:8px;padding-right:8px;font-size:11px}.janggi-app .chess-legend .janggi-token{flex:0 0 28px;width:28px;height:28px;font-size:13px;display:grid}.janggi-captured .janggi-token{flex:0 0 22px;width:22px;max-width:none;height:22px;font-size:11px}.janggi-mode-icon{align-items:center;gap:8px;display:flex}.janggi-board-wrap{justify-self:center;width:min(100%,560px);min-width:0;max-width:100%;display:grid}.janggi-coords{color:#8c9b96;-webkit-user-select:none;user-select:none;font-size:11px;font-weight:700;display:grid}.janggi-coords--cols{text-align:center;grid-template-columns:repeat(9,minmax(0,1fr));margin-bottom:4px;padding-left:18px;padding-right:18px}.janggi-coords--rows{flex:0 0 18px;grid-template-rows:repeat(10,minmax(0,1fr));place-items:center;width:18px}.janggi-coords--rows-spacer{visibility:hidden;pointer-events:none}.janggi-board-row{align-items:stretch;min-width:0;max-width:100%;display:flex}.janggi-board{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));grid-template-rows:repeat(var(--rows), minmax(0, 1fr));aspect-ratio:9/10;background:linear-gradient(#482a128c 1px, transparent 1px) 0 calc(50% / var(--rows)) / 100% calc(100% / var(--rows)), linear-gradient(90deg, #482a128c 1px, transparent 1px) calc(50% / var(--cols)) 0 / calc(100% / var(--cols)) 100%, #e4c48a;touch-action:manipulation;border:6px solid #c9a05a;outline:2px solid #5c3a1a;flex:auto;width:auto;min-width:0;display:grid;position:relative;box-shadow:0 18px 40px #00000059}.janggi-palace{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.janggi-palace line{stroke:#482a12b3;stroke-width:.45px;vector-effect:non-scaling-stroke}.janggi-cell{z-index:1;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;place-items:center;min-width:0;min-height:0;padding:0;display:grid;position:relative}.janggi-cell:disabled{cursor:default}.janggi-cell.is-selected{box-shadow:inset 0 0 0 2px #d4a017}.janggi-cell.is-last{background:#d6a64647}.janggi-cell.is-check{box-shadow:inset 0 0 0 2px #c0392b,inset 0 0 12px #c0392b66}.janggi-cell.is-anim-hidden .janggi-token{opacity:0}.janggi-token{aspect-ratio:1;clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);-webkit-user-select:none;user-select:none;pointer-events:none;flex:none;place-items:center;width:36px;height:36px;font-family:Noto Serif KR,Batang,Georgia,serif;font-size:16px;font-weight:800;line-height:1;display:grid;box-shadow:0 1px 3px #00000059}.janggi-board .janggi-token{width:72%;max-width:none;height:auto;font-size:clamp(11px,3.6vw,20px)}.janggi-token--c{color:#1a6b38;background:radial-gradient(circle at 30% 25%,#f6f1e4,#d9c9a4 70%)}.janggi-token--h{color:#b42318;background:radial-gradient(circle at 30% 25%,#f8efe6,#e2c9a6 70%)}.janggi-token.is-pulse{animation:.35s ease-out chess-place}.janggi-fly{z-index:4;width:11.1111%;height:10%;left:calc(var(--from-c) * (100% / 9));top:calc(var(--from-r) * (100% / 10));pointer-events:none;will-change:left, top;place-items:center;transition:left .24s cubic-bezier(.22,1,.36,1),top .24s cubic-bezier(.22,1,.36,1);display:grid;position:absolute}.janggi-fly.is-at-dest{left:calc(var(--to-c) * (100% / 9));top:calc(var(--to-r) * (100% / 10))}.janggi-fly .janggi-token{width:72%;max-width:none;height:auto;font-size:clamp(11px,3.6vw,20px)}.janggi-hint{aspect-ratio:1;background:#2e6e4873;border-radius:50%;width:22%}.janggi-hint--capture{clip-path:polygon(30% 0,70% 0,100% 30%,100% 70%,70% 100%,30% 100%,0 70%,0 30%);background:0 0;border-radius:0;width:auto;position:absolute;inset:8%;box-shadow:inset 0 0 0 2px #c0392bb3}@media (max-width:820px){.janggi-board-wrap{order:-1;width:100%}.janggi-coords--cols{padding-left:16px;padding-right:16px}.janggi-coords--rows{flex-basis:16px;width:16px}.janggi-board .janggi-token{font-size:clamp(11px,3.8vw,18px)}.janggi-setup{justify-content:stretch}.janggi-app .chess-panel.janggi-panel{align-items:stretch}.janggi-app .chess-main,.janggi-app .chess-topbar{padding-left:max(10px, env(safe-area-inset-left));padding-right:max(10px, env(safe-area-inset-right))}}@media (max-width:380px){.janggi-coords{font-size:9px}.janggi-coords--cols{padding-left:12px;padding-right:12px}.janggi-coords--rows{flex-basis:12px;width:12px}.janggi-app .chess-diff{justify-content:center}}@media (orientation:landscape) and (max-height:560px){.janggi-app.chess-app{flex-direction:column;height:100dvh;max-height:100dvh;display:flex;overflow:hidden}.janggi-app .chess-panel.janggi-panel{flex:auto;grid-template-columns:minmax(96px,22vw) minmax(0,1fr);align-items:stretch;gap:8px;height:100%;min-height:0;display:grid}.janggi-app .chess-main{min-height:0;padding-top:4px;padding-bottom:max(4px, env(safe-area-inset-bottom));flex-direction:column;flex:auto;width:100%;max-width:none;display:flex}.janggi-app .chess-main>.chess-panel{flex:auto;min-height:0}.janggi-app .chess-rules-line{display:none}.janggi-app .janggi-board-wrap{flex-direction:column;order:0;place-self:stretch center;width:auto;max-width:100%;height:100%;min-height:0;max-height:100%;display:flex}.janggi-app .janggi-coords--cols{display:none}.janggi-app .janggi-board-row{flex:auto;height:100%;min-height:0}.janggi-app .janggi-coords--rows{flex-basis:12px;width:12px;font-size:8px}.janggi-app .janggi-board{aspect-ratio:9/10;flex:0 auto;width:auto;max-width:100%;height:100%;max-height:100%}.janggi-app .janggi-board .janggi-token,.janggi-app .janggi-fly .janggi-token{font-size:clamp(12px,5.5dvh,18px)}.janggi-app .chess-topbar{min-height:0;padding-top:max(2px, env(safe-area-inset-top));flex:none;gap:6px;padding-bottom:2px}.janggi-app .chess-topbar .chess-diff__btn{min-height:32px;padding:6px 8px;font-size:10px}.janggi-app .chess-brand small{display:none}.janggi-app .chess-message{min-height:0;margin:4px 0;font-size:12px}.janggi-app .chess-legend{margin-bottom:6px}.janggi-app .chess-eyebrow{margin-bottom:4px}.janggi-app .chess-meta h1{font-size:clamp(18px,3.5vw,26px)}.janggi-app .chess-meta{overscroll-behavior:contain;min-height:0;max-height:100%;overflow-y:auto}}@media (orientation:landscape) and (max-height:420px){.janggi-app .chess-panel.janggi-panel{grid-template-columns:minmax(88px,20vw) minmax(0,1fr);gap:6px}.janggi-app .chess-meta h1{font-size:clamp(16px,3vw,22px)}}@media (max-width:820px){.chess-menu-cards{grid-template-columns:1fr}.chess-panel{flex-direction:column;grid-template-columns:1fr;align-items:stretch;gap:14px;display:flex}.chess-panel .chess-board-wrap{order:-1;width:100%}.chess-meta{text-align:center;width:100%}.chess-legend{justify-items:center}.chess-restart-row{justify-content:center;width:100%;display:flex}.chess-restart{justify-content:center;align-items:center;width:auto;min-width:min(70vw,240px);max-width:100%;margin:0;display:inline-flex}.chess-actions{flex-direction:column;align-items:center;gap:10px;display:flex}.chess-room-row{grid-template-columns:minmax(0,1fr) auto}.chess-room-row .chess-status{display:none}.chess-coords--cols{padding-left:18px;padding-right:18px}.chess-board-wrap{width:100%}.chess-glyph{font-size:clamp(20px,8vw,40px)}.chess-topbar{gap:8px}.chess-diff{gap:4px}button.chess-diff__btn,.chess-diff__btn{min-height:38px;padding:8px 10px;font-size:11px}.chess-sound-btn{min-width:0}.chess-main{padding-top:16px;padding-left:max(12px, env(safe-area-inset-left));padding-right:max(12px, env(safe-area-inset-right))}.chess-topbar{padding-left:max(12px, env(safe-area-inset-left));padding-right:max(12px, env(safe-area-inset-right))}.chess-message{min-height:0;margin:10px 0;font-size:13px}.chess-meta h1{font-size:clamp(24px,5vw,34px)}.chess-promo-bar{bottom:max(8px, env(safe-area-inset-bottom));z-index:2;position:sticky}}@media (orientation:landscape) and (max-height:560px){.chess-app .chess-topbar{min-height:0;padding-top:max(4px, env(safe-area-inset-top));padding-bottom:4px;padding-left:max(10px, env(safe-area-inset-left));padding-right:max(10px, env(safe-area-inset-right))}.chess-app .chess-main{padding-top:8px;padding-bottom:max(8px, env(safe-area-inset-bottom));padding-left:max(10px, env(safe-area-inset-left));padding-right:max(10px, env(safe-area-inset-right))}.chess-app .chess-panel{grid-template-columns:minmax(120px,30vw) minmax(0,1fr);align-items:start;gap:10px;display:grid}.chess-app .chess-panel .chess-board-wrap{order:0;justify-self:end;width:min(100%,100dvh - 88px);max-width:100%;max-height:calc(100dvh - 88px)}.chess-app .chess-board-row{max-height:calc(100dvh - 108px)}.chess-app .chess-board{aspect-ratio:1;width:auto;max-width:100%;max-height:calc(100dvh - 108px)}.chess-app .chess-coords--cols{padding-left:14px;padding-right:14px}.chess-app .chess-coords--rows{flex-basis:14px;width:14px}.chess-app .chess-glyph,.chess-app .chess-fly .chess-glyph{font-size:clamp(16px,4.2vh,36px)}.chess-app .chess-message{min-height:0;margin:6px 0;font-size:12px}.chess-app .chess-legend{gap:6px;margin-bottom:8px;font-size:12px}.chess-app .chess-meta{overscroll-behavior:contain;text-align:left;max-height:calc(100dvh - 80px);overflow-y:auto}.chess-app .chess-meta h1{font-size:clamp(20px,4vw,28px)}.chess-app .chess-legend{justify-items:start}.chess-app .chess-restart-row,.chess-app .chess-actions{align-items:flex-start}.chess-app .chess-restart{width:100%;min-width:0}.chess-app .chess-promo-bar{margin-top:8px;padding:8px;position:static}.chess-app .chess-promo-bar__btn,.chess-app .chess-promo-bar__cancel{min-height:48px}.chess-app .chess-diff{justify-content:flex-end}.chess-app .chess-rules-line{margin-top:8px}}.psy-app{--psy-accent:#f06292;background:radial-gradient(ellipse 70% 45% at 50% -8%, var(--psy-accent), transparent 55%), radial-gradient(circle at 88% 88%, #d6a6461a, transparent 42%), var(--ink);min-height:100dvh}@supports (color:color-mix(in lab, red, red)){.psy-app{background:radial-gradient(ellipse 70% 45% at 50% -8%, color-mix(in srgb, var(--psy-accent) 28%, transparent), transparent 55%), radial-gradient(circle at 88% 88%, #d6a6461a, transparent 42%), var(--ink)}}.psy-topbar{min-height:64px;padding:max(10px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;display:flex}.psy-brand{color:inherit;align-items:center;gap:12px;min-width:0;text-decoration:none;display:flex}.psy-brand strong{color:var(--paper);letter-spacing:-.03em;font-size:clamp(16px,1.2vw + 14px,20px);display:block}.psy-brand small{color:var(--muted);letter-spacing:.16em;margin-top:2px;font-size:clamp(10px,.3vw + 9px,12px);display:block}.psy-topbar__link{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:3px;flex:none;padding:10px 14px;font-size:13px;font-weight:700;text-decoration:none}.psy-main{width:min(100%,42rem);padding:28px max(16px, env(safe-area-inset-right)) max(56px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));margin:0 auto}.psy-eyebrow{color:var(--gold);letter-spacing:.16em;margin:0 0 10px;font-size:clamp(11px,.25vw + 10px,13px);font-weight:800}.psy-intro,.psy-quiz,.psy-result{text-align:center}.psy-intro{flex-direction:column;justify-content:flex-start;min-height:0;padding-bottom:16px;display:flex}@media (max-height:740px){.psy-intro{justify-content:flex-start;min-height:0;padding-top:8px}}.psy-intro h1,.psy-result h1{letter-spacing:-.05em;color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(30px,2.4vw + 22px,52px);font-weight:500;line-height:1.25}.psy-quiz h1{letter-spacing:-.04em;color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(24px,1.6vw + 18px,36px);font-weight:500;line-height:1.4}.psy-lead,.psy-result__summary{color:#a5b2ad;margin:16px 0 0;font-size:clamp(16px,.5vw + 14px,19px);line-height:1.75}.psy-meta{color:var(--muted);margin:14px 0 0;font-size:clamp(13px,.35vw + 12px,16px);font-weight:700}.psy-type-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:28px 0 32px;padding:0;list-style:none;display:grid}.psy-type-preview li{color:#d7dedb;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:44px;padding:8px 12px;font-size:clamp(13px,.3vw + 12px,15px);display:flex}.psy-cta,a.psy-cta{appearance:none;background:var(--psy-accent);color:#fff;min-width:min(100%,220px);min-height:52px;font:inherit;cursor:pointer;box-shadow:0 10px 28px var(--psy-accent);border:0;border-radius:4px;justify-content:center;align-items:center;padding:14px 24px;font-size:clamp(15px,.35vw + 14px,17px);font-weight:800;text-decoration:none;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.psy-cta,a.psy-cta{box-shadow:0 10px 28px color-mix(in srgb, var(--psy-accent) 35%, transparent)}}.psy-cta:disabled{opacity:.48;cursor:not-allowed}.psy-quiz{text-align:left}.psy-quiz__head{justify-content:space-between;align-items:end;gap:12px;display:flex}.psy-step{color:var(--muted);margin:0;font-size:clamp(13px,.25vw + 12px,15px);font-weight:700}.psy-progress{background:#ffffff14;border-radius:999px;height:8px;margin:14px 0 22px;display:block;overflow:hidden}.psy-progress span{background:var(--psy-accent);border-radius:inherit;height:100%;transition:width .2s;display:block}.psy-choices{gap:10px;margin-top:22px;display:grid}.psy-choice{appearance:none;width:100%;min-height:56px;color:var(--paper);font:inherit;text-align:left;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:10px;padding:16px 18px;font-size:clamp(15px,.4vw + 14px,18px);font-weight:700;transition:border-color .2s,background .2s,transform .15s}.psy-choice.is-selected,.psy-choice:hover:not(:disabled){border-color:var(--psy-accent)}@supports (color:color-mix(in lab, red, red)){.psy-choice.is-selected,.psy-choice:hover:not(:disabled){border-color:color-mix(in srgb, var(--psy-accent) 70%, white)}}.psy-choice.is-selected,.psy-choice:hover:not(:disabled){background:var(--psy-accent)}@supports (color:color-mix(in lab, red, red)){.psy-choice.is-selected,.psy-choice:hover:not(:disabled){background:color-mix(in srgb, var(--psy-accent) 16%, #ffffff0d)}}.psy-quiz__nav{justify-content:space-between;align-items:center;gap:12px;margin-top:18px;display:flex}.psy-text-btn,.psy-text-link{appearance:none;color:#8c9b96;font:inherit;cursor:pointer;background:0 0;border:0;font-size:clamp(13px,.25vw + 12px,15px);text-decoration:none}.psy-status{color:var(--gold);font-size:13px}.psy-result__badge{background:var(--psy-accent);border-radius:50%;place-items:center;width:clamp(76px,8vw,96px);height:clamp(76px,8vw,96px);margin:8px auto 16px;display:grid}@supports (color:color-mix(in lab, red, red)){.psy-result__badge{background:color-mix(in srgb, var(--psy-accent) 22%, #182019)}}.psy-result__badge{border:1px solid var(--psy-accent)}@supports (color:color-mix(in lab, red, red)){.psy-result__badge{border:1px solid color-mix(in srgb, var(--psy-accent) 45%, transparent)}}.psy-result__badge{font-size:clamp(34px,4vw,44px)}.psy-result__kicker{color:var(--muted);letter-spacing:.08em;margin:0;font-size:clamp(13px,.25vw + 12px,15px)}.psy-result h1{color:var(--psy-accent);margin-top:8px}@supports (color:color-mix(in lab, red, red)){.psy-result h1{color:color-mix(in srgb, var(--psy-accent) 55%, var(--paper))}}.psy-result__sub{color:#e4bf74;margin:12px 0 0;font-size:clamp(16px,.45vw + 14px,19px);font-weight:700}.psy-result__traits{flex-wrap:wrap;justify-content:center;gap:8px;margin:22px 0 0;padding:0;list-style:none;display:flex}.psy-result__traits li{color:#d7dedb;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;padding:8px 14px;font-size:clamp(13px,.3vw + 12px,15px)}.psy-insight{text-align:left;margin:28px 0 0}.psy-insight>h2{color:var(--paper);margin:0 0 12px;font-size:clamp(17px,.4vw + 15px,20px)}.psy-insight__grid{grid-template-columns:minmax(0,1fr);gap:10px;display:grid}.psy-insight article{background:#ffffff09;border:1px solid #ffffff14;border-radius:10px;min-width:0;padding:14px 16px}.psy-insight article h3{color:var(--gold);margin:0;font-size:13px;font-weight:800}.psy-insight article p,.psy-insight article ul{color:#d7dedb;overflow-wrap:anywhere;margin:8px 0 0;font-size:clamp(14px,.3vw + 13px,16px);line-height:1.65}.psy-insight article ul{padding-left:18px}.psy-insight__caution{background:#dc97400b!important}.psy-insight__actions{margin-top:10px}.psy-share{text-align:left;background:#ffffff09;border:1px solid #ffffff17;border-radius:10px;margin:28px 0 0;padding:16px}.psy-share__label{color:#e4bf74;margin:0 0 10px;font-size:clamp(13px,.25vw + 12px,14px);font-weight:800}.psy-share__row{flex-wrap:wrap;gap:8px;display:flex}.psy-share input{border:1px solid var(--line);min-width:0;color:var(--cream);font:inherit;background:#0003;border-radius:3px;flex:180px;padding:12px;font-size:clamp(13px,.25vw + 12px,14px)}.psy-share__copy,.psy-share__native{appearance:none;font:inherit;cursor:pointer;border:1px solid #d6a64666;border-radius:3px;min-height:44px;padding:12px 14px;font-size:13px;font-weight:800}.psy-share__copy{background:var(--gold);color:#1a1200;border-color:var(--gold)}.psy-share__native{color:#e4bf74;background:0 0}.psy-share__hint{color:#8c9b96;margin:10px 0 0;font-size:clamp(12px,.2vw + 11px,13px);line-height:1.5}.psy-result__actions{justify-items:center;gap:14px;margin-top:28px;display:grid}.psy-others{text-align:left;margin-top:40px}.psy-others h2{color:var(--paper);margin:0 0 12px;font-size:clamp(15px,.3vw + 14px,17px)}.psy-others ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.psy-others a{min-height:48px;color:var(--cream);background:#ffffff08;border:1px solid #ffffff14;border-radius:8px;align-items:center;gap:10px;padding:12px 14px;font-size:clamp(14px,.3vw + 13px,16px);font-weight:700;text-decoration:none;display:flex}.psy-hint{color:var(--muted);margin:8px 0 0;font-size:clamp(13px,.25vw + 12px,14px);line-height:1.5}.psy-vibe{color:var(--psy-accent);margin:14px 0 0}@supports (color:color-mix(in lab, red, red)){.psy-vibe{color:color-mix(in srgb, var(--psy-accent) 70%, var(--paper))}}.psy-vibe{font-size:clamp(15px,.4vw + 14px,18px);font-weight:700;line-height:1.55}.psy-roles{text-align:left;gap:10px;margin:24px 0 0;display:grid}.psy-roles>div{background:#ffffff09;border:1px solid #ffffff14;border-radius:10px;padding:12px 14px}.psy-roles dt{color:var(--gold);letter-spacing:.06em;margin:0;font-size:12px;font-weight:800}.psy-roles dd{color:#d7dedb;margin:6px 0 0;font-size:clamp(14px,.3vw + 13px,16px);line-height:1.6}.psy-extra{text-align:left;margin:24px 0 0}.psy-extra h2,.psy-palette h2,.psy-match h2{color:var(--paper);margin:0 0 10px;font-size:clamp(15px,.3vw + 14px,17px)}.psy-extra ul{color:#d7dedb;margin:0;padding-left:18px;font-size:14px;line-height:1.7}.psy-extra--caution p{color:#a5b2ad;margin:0;font-size:14px;line-height:1.7}.psy-palette{text-align:left;margin:24px 0 0}.psy-palette ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.psy-palette li{text-align:center;color:#d7dedb;justify-items:center;gap:8px;font-size:12px;display:grid}.psy-lucky{border:1px solid var(--psy-accent);grid-template-columns:auto 1fr;align-items:center;gap:14px;margin:22px 0 0;padding:14px 16px;display:grid}@supports (color:color-mix(in lab, red, red)){.psy-lucky{border:1px solid color-mix(in srgb, var(--psy-accent) 35%, transparent)}}.psy-lucky{background:var(--psy-accent);border-radius:12px}@supports (color:color-mix(in lab, red, red)){.psy-lucky{background:color-mix(in srgb, var(--psy-accent) 10%, #ffffff08)}}.psy-lucky{text-align:left}.psy-lucky__label{color:var(--gold);margin:0;font-size:12px;font-weight:800}.psy-lucky strong{margin-top:4px;font-size:18px;display:block}.psy-lucky p{color:#a5b2ad;margin:6px 0 0;font-size:13px;line-height:1.55}.psy-swatch{border:2px solid #ffffff47;border-radius:50%;flex:none;width:56px;height:56px;box-shadow:inset 0 0 0 1px #00000047}.psy-swatch--lg{width:72px;height:72px}.psy-choices--swatches{grid-template-columns:repeat(2,minmax(0,1fr))}.psy-choice--swatch{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:118px;padding:14px 10px;font-size:14px;display:flex}.psy-match{text-align:left;margin:28px 0 0}.psy-match__grid{gap:10px;display:grid}.psy-match__card{color:inherit;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:10px;gap:4px;padding:14px 16px;text-decoration:none;display:grid}.psy-match__card span{letter-spacing:.06em;font-size:11px;font-weight:800}.psy-match__card strong{font-size:15px}.psy-match__card p{color:#a5b2ad;margin:0;font-size:13px;line-height:1.5}.psy-match__card--best span{color:#6dd3a1}.psy-match__card--caution span{color:#ef8b7d}.psy-others--cloud ul{flex-wrap:wrap;gap:8px;display:flex}.psy-others--cloud a{border-radius:999px;min-height:40px;padding:8px 12px;font-size:13px}@media (max-width:480px){.psy-brand small{display:none}.psy-cta,a.psy-cta{width:100%}.psy-share__row{grid-template-columns:1fr 1fr;display:grid}.psy-share input{grid-column:1/-1}.psy-type-preview li{white-space:normal;text-align:center;border-radius:12px;flex-direction:column;gap:4px;height:auto;min-height:62px;padding:10px 8px;font-size:12px;line-height:1.35}}@media (min-width:640px){.psy-type-preview{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.psy-topbar{min-height:72px;padding-left:clamp(16px,4vw,48px);padding-right:clamp(16px,4vw,48px)}.psy-choices--swatches.is-dense{grid-template-columns:repeat(4,minmax(0,1fr))}.psy-insight__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.psy-match__grid{grid-template-columns:1fr 1fr}}@media (min-width:768px){.psy-main{width:min(100%,46rem);padding-top:40px}.content-guide--psy{width:min(100%,46rem)}.psy-choices{gap:12px}.psy-choice{min-height:60px;padding:18px 20px}.psy-others ul{grid-template-columns:1fr 1fr}.psy-others--cloud ul{grid-template-columns:none;display:flex}}@media (min-width:1100px){.psy-main{width:min(100%,50rem);padding-top:48px;padding-bottom:80px}.content-guide--psy{width:min(100%,50rem)}.psy-cta,a.psy-cta{min-width:240px;min-height:56px}}@media (hover:hover) and (pointer:fine){.psy-choice:hover:not(:disabled){transform:translateY(-1px)}.psy-others a:hover{border-color:#d6a64666}}.cannon-app{min-height:100dvh;color:var(--paper);background:radial-gradient(80% 50% at 50% -5%,#4a9fd438,#0000 55%),radial-gradient(circle at 90% 85%,#e85d3a24,#0000 40%),linear-gradient(#0b1412 0%,#121c19 100%);flex-direction:column;display:flex;position:relative}.cannon-topbar{height:64px;padding:0 clamp(12px,3vw,40px);padding-top:env(safe-area-inset-top);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080e0c8c;border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.cannon-brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.cannon-brand strong{letter-spacing:-.03em;font-size:17px;display:block}.cannon-brand small{color:var(--muted);letter-spacing:.18em;margin-top:2px;font-size:9px;display:block}.cannon-main{width:min(100%,1100px);padding:20px clamp(12px,3vw,40px) 28px;padding-bottom:max(28px, env(safe-area-inset-bottom));flex-direction:column;flex:1;gap:14px;margin:0 auto;display:flex}.cannon-main--menu,.cannon-main--pick{justify-content:center;max-width:780px}.cannon-main--pick{max-width:900px}.cannon-hero-panel{background:linear-gradient(160deg,#4a9fd429,#0000 45%),linear-gradient(20deg,#e85d3a1a,#0000 40%),#ffffff08;border:1px solid #ffffff1a;border-radius:20px;gap:16px;padding:28px 24px;display:grid;box-shadow:0 20px 50px #00000047}.cannon-eyebrow{color:#7ec8ea;letter-spacing:.18em;margin:0;font-size:11px;font-weight:800}.cannon-main h1{letter-spacing:-.045em;text-shadow:0 2px #00000040;margin:0;font-size:clamp(32px,6vw,48px)}.cannon-lead{color:var(--muted);max-width:36em;margin:0;font-size:14px;line-height:1.65}.cannon-diff{flex-wrap:wrap;gap:8px;display:flex}.cannon-diff__btn,button.cannon-diff__btn{color:var(--paper);cursor:pointer;background:#00000040;border:1px solid #ffffff1f;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:700}.cannon-diff__btn.is-active{color:#fff;background:linear-gradient(#3ecf9a,#1f8f68);border-color:#2fbf6a;box-shadow:0 6px 16px #2eb46e59}.cannon-btn,button.cannon-btn{color:var(--paper);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:12px;min-height:44px;padding:12px 18px;font-size:14px;font-weight:700}.cannon-btn:disabled{opacity:.45;cursor:not-allowed}.cannon-btn--primary{color:#fff;background:linear-gradient(#ff7a4d,#e04828);border-color:#ff8a5c;box-shadow:0 8px 20px #e0482859}.cannon-btn--cta{justify-self:start;min-width:160px}.cannon-btn--fire{letter-spacing:.12em;border-radius:14px;width:100%;min-height:52px;font-size:17px}.cannon-actions{flex-wrap:wrap;gap:10px;display:flex}.cannon-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.cannon-card,button.cannon-card{text-align:left;color:inherit;cursor:pointer;background:linear-gradient(#ffffff0f,#ffffff05),#141c1a;border:1px solid #ffffff1a;border-radius:16px;flex-direction:column;align-items:flex-start;gap:6px;min-height:220px;padding:14px 12px 16px;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.cannon-card:hover{transform:translateY(-2px)}.cannon-card.is-active{border-color:var(--cannon-accent,#3ecf9a);box-shadow:inset 0 0 0 1px var(--cannon-accent,#3ecf9a), 0 12px 28px #00000059}.cannon-card__art{pointer-events:none;background:#6eb8e0;border-radius:12px;width:100%;height:118px;margin-bottom:4px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1f}.cannon-card__art canvas{width:100%;height:100%;display:block}.cannon-card strong{font-size:17px}.cannon-card span{color:var(--muted);font-size:12px;line-height:1.4}.cannon-card small{color:#8a9691;font-size:11px;line-height:1.35}.cannon-main--play{gap:10px;max-width:1200px;min-height:0}.cannon-hud-top{flex-wrap:wrap;align-items:center;gap:8px 12px;display:flex}.cannon-wind,.cannon-pill{background:#00000059;border:1px solid #ffffff1a;border-radius:12px;align-items:baseline;gap:8px;padding:8px 12px;font-size:12px;display:inline-flex}.cannon-wind__label,.cannon-pill span{color:var(--muted);letter-spacing:.08em;font-weight:800}.cannon-wind.is-right strong{color:#ff7a4d}.cannon-wind.is-left strong{color:#4ec4ff}.cannon-wind.is-calm strong{color:#d0d8d4}.cannon-message{color:#c5d0cb;flex:1;min-width:12em;margin:0;font-size:13px;font-weight:600}.cannon-stage{aspect-ratio:1000/320;touch-action:none;background:#0a1210;border:2px solid #ffffff1f;border-radius:18px;flex:auto;width:100%;height:auto;min-height:160px;max-height:min(46dvh,460px);margin-inline:auto;overflow:hidden;box-shadow:0 0 0 1px #00000059,0 18px 40px #0006,inset 0 1px #fff3}.cannon-canvas{width:100%;height:100%;display:block}.cannon-vs{grid-template-columns:1fr 1fr;gap:8px;font-size:13px;display:grid}.cannon-vs__side{border:1px solid #ffffff1a;border-left:4px solid var(--cannon-accent,#3ecf9a);background:#00000047;border-radius:12px;justify-content:space-between;gap:8px;padding:10px 12px;display:flex}.cannon-vs__side strong{flex-direction:column;gap:2px;display:flex}.cannon-vs__side em{letter-spacing:.12em;color:var(--muted);font-size:10px;font-style:normal;font-weight:800}.cannon-controls{background:#00000047;border:1px solid #ffffff14;border-radius:16px;gap:10px;padding:12px;display:grid}.cannon-move{justify-content:space-between;align-items:center;gap:8px;display:flex}.cannon-move__gauge{color:var(--muted);font-size:12px;font-weight:700}.cannon-move__gauge b{color:#7ec8ea;font-size:14px}.cannon-slider{color:var(--muted);gap:4px;font-size:12px;font-weight:700;display:grid}.cannon-slider b{color:var(--paper)}.cannon-slider input[type=range]{accent-color:#7ec8ea;width:100%;height:28px}.cannon-slider--power input[type=range]{accent-color:#ff7a4d}.cannon-result-banner{background:linear-gradient(#ffd2781f,#00000040);border:1px solid #ffd27840;border-radius:16px;justify-items:center;gap:12px;padding:16px;display:grid}.cannon-result-banner strong{letter-spacing:-.03em;font-size:22px}.cannon-rotate,.landscape-gate{z-index:80;padding:24px;padding-top:max(24px, env(safe-area-inset-top));background:#080e0cf0;place-items:center;display:grid;position:fixed;inset:0}.landscape-gate{z-index:160}body.matgo-table-lock{background:#183a31;overflow:hidden}body.matgo-table-lock .content-guide,body.matgo-table-lock .site-footer{display:none}html.matgo-chrome-open{overscroll-behavior-y:contain;height:auto!important;overflow:hidden auto!important}html.matgo-chrome-open body.matgo-table-lock{overscroll-behavior-y:contain;min-height:100%;height:auto!important;overflow:hidden visible!important}.safari-chrome-tip{z-index:170;left:50%;bottom:max(10px, env(safe-area-inset-bottom), var(--app-chrome-bottom,16px));color:#fff4d7;pointer-events:auto;touch-action:none;background:#081612f0;border:1px solid #d6a64673;border-radius:14px;grid-template-columns:1fr auto;grid-template-areas:"text dismiss""swipe swipe";gap:8px 10px;width:min(560px,100vw - 16px);padding:10px 12px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 10px 28px #0006}.safari-chrome-tip p{grid-area:text;margin:0;font-size:12px;font-weight:600;line-height:1.45}.safari-chrome-tip__dismiss{color:#183a31;cursor:pointer;background:#d6a646;border:0;border-radius:999px;grid-area:dismiss;align-self:start;padding:6px 12px;font-size:11px;font-weight:800}.safari-chrome-tip__swipe{color:#e8fff2;letter-spacing:-.02em;touch-action:none;-webkit-user-select:none;user-select:none;background:#28785873;border:1px dashed #7ec8a0b3;border-radius:12px;grid-area:swipe;place-items:center;min-height:44px;font-size:13px;font-weight:800;display:grid}html[data-matgo-land="1"] .safari-chrome-tip{top:max(36px, env(safe-area-inset-top));width:min(640px,100vw - 12px);padding:8px 10px;bottom:auto}html[data-matgo-land="1"] .safari-chrome-tip p{font-size:11px}html[data-matgo-land="1"] .safari-chrome-tip__swipe{min-height:40px;font-size:12px}html[data-matgo-land="1"],html[data-matgo-land="1"] body{background:#183a31}.cannon-rotate__card,.landscape-gate__card{text-align:center;justify-items:center;gap:12px;width:min(100%,380px);display:grid}.cannon-rotate__icon,.landscape-gate__icon{background:#7ec8e826;border:1px solid #7ec8e859;border-radius:16px;place-items:center;width:64px;height:64px;font-size:28px;animation:2.4s ease-in-out infinite cannon-spin-hint;display:grid}@keyframes cannon-spin-hint{0%,to{transform:rotate(0)}40%{transform:rotate(90deg)}60%{transform:rotate(90deg)}}.cannon-rotate__card strong,.landscape-gate__card strong{font-size:20px}.cannon-rotate__card p,.landscape-gate__card p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.landscape-gate__card .primary-button{justify-content:center;width:100%}.landscape-gate__dismiss{width:100%;min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #ffffff2e;border-radius:10px;font-size:13px;font-weight:700}.landscape-gate__dismiss:hover{color:#fff;border-color:#ffffff59}.cannon-home-quiet{color:var(--muted);font-size:13px}.cannon-keys{text-align:center;color:var(--muted);grid-column:1/-1;margin:2px 0 0;font-size:11px;line-height:1.5}.cannon-keys kbd{color:#d5e0db;background:#ffffff0f;border:1px solid #ffffff29;border-radius:4px;min-width:1.4em;margin:0 1px;padding:1px 5px;font:700 10px ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;display:inline-block}@media (pointer:coarse){.cannon-keys{display:none}}.cannon-controls--touch{gap:8px}.cannon-touch-pad{gap:6px;display:grid}.cannon-touch-pad__move,.cannon-touch-pad__angle{grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;display:grid}.cannon-pad-btn,button.cannon-pad-btn{min-height:44px;color:var(--paper);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#ffffff14;border:1px solid #ffffff24;border-radius:12px;font-size:15px;font-weight:800}.cannon-pad-btn:disabled{opacity:.4}.cannon-pad-btn:active:not(:disabled){background:#7ec8e838;border-color:#7ec8e873}.cannon-charge,button.cannon-charge{color:#fff;letter-spacing:.02em;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:linear-gradient(#3a2218,#1c1210);border:1px solid #ff8c5a73;border-radius:14px;width:100%;min-height:52px;margin-top:8px;font-size:14px;font-weight:800;position:relative;overflow:visible}.cannon-charge:disabled{opacity:.45;cursor:not-allowed}.cannon-charge__track{border-radius:inherit;pointer-events:none;position:absolute;inset:0;overflow:hidden}.cannon-charge__fill{pointer-events:none;will-change:width;background:linear-gradient(90deg,#ffb347,#ff5a2f 55%,#ff3b1f);width:0%;height:100%;position:absolute;inset:0 auto 0 0;box-shadow:inset 0 0 12px #ffffc840}.cannon-charge.is-charging{border-color:#ff8a5c;box-shadow:0 0 0 1px #ff783c59,0 10px 24px #ff502840}.cannon-charge__label{z-index:1;text-shadow:0 1px 2px #0000008c;position:relative}.cannon-charge__mark{z-index:4;pointer-events:none;width:20px;height:18px;position:absolute;top:-18px;transform:translate(-50%)}.cannon-charge__mark:before{content:"";background:#ff3b30;border-radius:1px;width:3px;height:9px;margin-left:-1.5px;position:absolute;top:0;left:50%;box-shadow:0 1px 2px #0006}.cannon-charge__mark:after{content:"";filter:drop-shadow(0 1px 2px #00000073);border-top:11px solid #ff3b30;border-left:9px solid #0000;border-right:9px solid #0000;width:0;height:0;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.cannon-touch-hint{text-align:center;color:var(--muted);margin:0;font-size:11px;line-height:1.45}@media (max-width:760px){.cannon-cards{grid-template-columns:1fr}.cannon-card__art{height:128px}.cannon-topbar{height:auto;min-height:52px;padding:8px 12px}.cannon-brand small{display:none}.cannon-hero-panel{padding:22px 16px}.cannon-main--play{min-height:0;padding-top:8px;padding-bottom:max(12px, env(safe-area-inset-bottom));flex:1;gap:6px}.cannon-stage{aspect-ratio:auto;flex:auto;width:100%;height:auto;min-height:150px;max-height:min(44dvh,340px)}.cannon-controls,.cannon-vs,.cannon-hud-top{flex-shrink:0}.cannon-hud-top{gap:6px 8px}.cannon-message{flex-basis:100%;min-width:0;font-size:12px}.cannon-vs{font-size:12px}.cannon-vs__side{padding:6px 8px}.cannon-controls{gap:8px;padding:8px}.cannon-controls--touch{gap:6px;padding:8px}.cannon-pad-btn,button.cannon-pad-btn{border-radius:10px;min-height:40px;font-size:14px}.cannon-charge,button.cannon-charge{border-radius:12px;min-height:46px;margin-top:4px;font-size:13px}.cannon-charge__mark{height:16px;top:-16px}.cannon-touch-hint{font-size:10px;line-height:1.35;display:none}.cannon-wind,.cannon-pill{padding:6px 10px}}@media (max-width:760px) and (min-height:700px){.cannon-stage{max-height:min(46dvh,360px)}}@media (orientation:landscape) and (max-height:520px){.cannon-main--play{padding-top:8px;padding-bottom:max(10px, env(safe-area-inset-bottom));gap:6px}.cannon-stage{min-height:120px;max-height:min(42dvh,260px)}.cannon-controls--desk{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(140px,.9fr);align-items:end;gap:8px}.cannon-controls--desk .cannon-move{grid-column:1/2}.cannon-controls--desk .cannon-slider{grid-column:2/3}.cannon-controls--desk .cannon-charge{grid-column:3/4;align-self:stretch;min-height:52px;margin-top:0}.cannon-controls--desk .cannon-keys{grid-column:1/-1}.cannon-controls--touch{grid-template-columns:minmax(0,1.4fr) minmax(140px,.9fr);align-items:stretch;gap:8px;display:grid}.cannon-controls--touch .cannon-touch-pad{grid-column:1}.cannon-controls--touch .cannon-charge{grid-column:2;align-self:stretch;min-height:100%;margin-top:0}.cannon-controls--touch .cannon-touch-hint{grid-column:1/-1}.cannon-lead{display:none}.cannon-card__art{height:72px}.cannon-card{min-height:0;padding:10px}.cannon-main--pick{padding-top:8px;padding-bottom:max(10px, env(safe-area-inset-bottom));justify-content:flex-start}.cannon-cards{gap:8px}.cannon-vs{font-size:12px}.cannon-hud-top{gap:6px}}.quiz-choice.is-correct{background:#89dbb339;border-color:#6dd3a1}.quiz-choice.is-wrong{background:#f2a39834;border-color:#ef8b7d}.quiz-choice:disabled{cursor:default;transform:none}.quiz-emoji{text-align:center;letter-spacing:.04em;word-break:break-word;margin:0 0 12px;font-size:clamp(44px,9vw,72px);line-height:1.3}.quiz-explain{color:#d7dedb;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:10px;margin:16px 0 0;padding:14px 16px;font-size:clamp(14px,.3vw + 13px,16px);line-height:1.65}.quiz-next{width:auto;min-width:0;min-height:48px;box-shadow:none;padding:12px 18px}.quiz-score{letter-spacing:-.04em;color:var(--paper);margin:4px 0 8px;font-size:clamp(44px,6vw,68px);font-weight:800;line-height:1}.quiz-score span{color:var(--muted);font-size:.42em;font-weight:700}.psy-result .quiz-review{text-align:left;margin:32px 0 0}.quiz-review h2{color:var(--paper);justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 14px;font-size:clamp(16px,.35vw + 14px,18px);display:flex}.quiz-review h2 span{color:#ef8b7d;letter-spacing:0;font-size:13px;font-weight:800}.quiz-review ol{gap:14px;margin:0;padding:0;list-style:none;display:grid}.quiz-review li{background:#ffffff0e;border:1px solid #ffffff24;border-radius:14px;padding:16px 16px 14px}.quiz-review__prompt{color:var(--paper);align-items:flex-start;gap:10px;margin:0;font-size:clamp(16px,.4vw + 14px,18px);font-weight:800;line-height:1.45;display:flex}.quiz-review__num{color:#ffb4aa;background:#ef8b7d2e;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;margin-top:1px;font-size:12px;font-weight:800;display:grid}.quiz-review__emoji{margin-bottom:4px;font-size:clamp(26px,4vw,34px);font-weight:400;line-height:1.2;display:block}.quiz-review__answers{gap:8px;margin:14px 0 0;display:grid}.quiz-review__answers div{border-radius:10px;grid-template-columns:3.2rem minmax(0,1fr);align-items:start;gap:8px;padding:10px 12px;display:grid}.quiz-review__answers dt{letter-spacing:.02em;margin:0;padding-top:1px;font-size:12px;font-weight:800}.quiz-review__answers dd{overflow-wrap:anywhere;margin:0;font-size:clamp(14px,.3vw + 13px,16px);font-weight:700;line-height:1.45}.quiz-review__mine{background:#ef8b7d1f;border:1px solid #ef8b7d47}.quiz-review__mine dt,.quiz-review__mine dd{color:#ffb4aa}.quiz-review__key{background:#6dd3a11f;border:1px solid #6dd3a147}.quiz-review__key dt,.quiz-review__key dd{color:#9be7c3}.quiz-review__explain{color:#c5d0cc;background:#00000038;border-radius:10px;margin:12px 0 0;padding:12px 14px;font-size:clamp(14px,.3vw + 13px,16px);line-height:1.65}@media (max-width:480px){.quiz-next{width:100%}.psy-quiz__nav{flex-wrap:wrap}.quiz-review li{padding:14px 12px 12px}.quiz-review__answers div{grid-template-columns:2.8rem minmax(0,1fr);padding:9px 10px}}@media (min-width:640px){.quiz-review__answers{grid-template-columns:1fr 1fr;gap:10px}}@media (min-width:768px){.quiz-review li{padding:18px 18px 16px}}.yut-app{background:radial-gradient(ellipse 70% 45% at 50% -8%, #c45c2638, transparent 55%), radial-gradient(circle at 88% 78%, #d6a6461a, transparent 42%), var(--ink);min-height:100dvh;overflow-x:clip}.yut-topbar{min-height:72px;padding:10px clamp(16px,4vw,48px);padding-left:max(clamp(16px, 4vw, 48px), env(safe-area-inset-left));padding-right:max(clamp(16px, 4vw, 48px), env(safe-area-inset-right));border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.yut-brand{color:inherit;align-items:center;gap:12px;min-width:0;text-decoration:none;display:flex}.yut-brand strong{color:var(--paper);letter-spacing:-.03em;font-size:18px;display:block}.yut-brand small{color:var(--muted);letter-spacing:.22em;margin-top:2px;font-size:9px;display:block}.yut-topbar__tools{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}button.yut-quiet,.yut-quiet{appearance:none;border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:3px;min-height:44px;padding:8px 12px;font-size:12px;font-weight:700}.yut-main{max-width:1100px;padding:28px clamp(16px,4vw,48px) 56px;padding-left:max(clamp(16px, 4vw, 48px), env(safe-area-inset-left));padding-right:max(clamp(16px, 4vw, 48px), env(safe-area-inset-right));padding-bottom:max(56px, env(safe-area-inset-bottom));margin:0 auto}.yut-eyebrow{color:var(--gold);letter-spacing:.18em;margin:0 0 8px;font-size:10px;font-weight:800}.yut-main h1{letter-spacing:-.05em;color:var(--paper);margin:0;font-family:Georgia,Batang,serif;font-size:clamp(32px,5vw,52px);font-weight:500}.yut-lead,.yut-hint,.yut-rules{color:#a5b2ad;font-size:14px;line-height:1.65}.yut-lead{max-width:36em;margin:12px 0 22px}.yut-rules{margin:22px 0 0;font-size:12px}.yut-menu-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}button.yut-mode-card,.yut-mode-card{appearance:none;text-align:left;cursor:pointer;color:var(--paper);font:inherit;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:10px;justify-items:start;gap:6px;min-height:44px;margin:0;padding:22px 18px 18px;transition:border-color .2s,transform .2s,background .2s;display:grid}button.yut-mode-card:hover{border-color:#d6a64673;transform:translateY(-2px)}.yut-mode-card strong{font-size:17px}.yut-mode-card span{color:var(--muted);font-size:13px;line-height:1.45}.yut-mode-card--pvp{border-color:#c45c2680}.yut-choice{gap:8px;margin:0 0 16px;display:grid}.yut-choice>span{color:var(--muted);letter-spacing:.06em;font-size:12px;font-weight:800}.yut-choice>div{flex-wrap:wrap;gap:8px;display:flex}button.yut-choice__btn,.yut-choice__btn{appearance:none;border:1px solid var(--line);color:var(--muted);font:inherit;cursor:pointer;background:0 0;border-radius:999px;min-height:44px;padding:10px 16px;font-size:13px;font-weight:800}button.yut-choice__btn.is-active{color:#fff8e8;background:#c45c26;border-color:#c45c26}.yut-names{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:8px 0 20px;display:grid}.yut-names label{color:var(--muted);gap:4px;font-size:11px;display:grid}.yut-names input{border:1px solid var(--line);color:var(--paper);background:#ffffff0a;border-radius:6px;min-height:44px;padding:10px 12px}button.yut-btn,.yut-btn{appearance:none;border:1px solid var(--line);color:var(--paper);font:inherit;cursor:pointer;background:#ffffff0f;border-radius:6px;min-height:44px;padding:12px 18px;font-size:14px;font-weight:800}button.yut-btn--primary,.yut-btn--primary{color:#fff8e8;background:#c45c26;border-color:#c45c26}.yut-actions{flex-wrap:wrap;gap:10px;margin-top:12px;display:flex}.yut-players{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;margin:0 0 12px;padding:0;list-style:none;display:grid}.yut-player{border:1px solid #ffffff14;border-left:4px solid var(--yut-color,var(--gold));background:#ffffff0a;border-radius:8px;gap:2px;margin:0;padding:10px 12px;display:grid}.yut-player b{font-size:14px}.yut-player span{color:var(--muted);font-size:11px}.yut-player.is-turn{background:#c45c261f;box-shadow:0 0 0 1px #c45c2659}.yut-player.is-win{border-color:var(--gold)}.yut-message{color:#d7dedb;min-height:1.5em;margin:0 0 14px;font-size:15px;line-height:1.55}.yut-timer-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.yut-play{grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr);align-items:start;gap:20px;display:grid}.yut-board-col{width:100%;min-width:0}.yut-board-wrap{width:100%;max-width:min(560px,100%);margin:0 auto;overflow:visible}.yut-board{filter:drop-shadow(0 18px 28px #00000059);width:100%;height:auto;display:block;overflow:visible}.yut-line{fill:none;stroke:#8a5a32;stroke-width:1.15px;stroke-linejoin:round}.yut-line--diag{stroke:#a56b3a;stroke-width:1.05px}.yut-station{fill:#f4e4c4;stroke:#6b3e22;stroke-width:.55px}.yut-station.is-corner{fill:#efe0b8;stroke-width:.7px}.yut-station.is-dest{fill:#ffe08a;stroke:#c45c26}.yut-label{fill:#6b3e22;text-anchor:middle;font-size:3.2px;font-weight:800}.yut-mal-count{fill:#fff8e8;text-anchor:middle;pointer-events:none;font-size:2.2px;font-weight:800}.yut-mal-hit{cursor:default}.yut-mal-hit.is-legal{cursor:pointer}.yut-mal-hitbox{fill:#0000;stroke:none;pointer-events:all}.yut-mal-stack .yut-mal-disk{transform-box:fill-box;transform-origin:50%}.yut-mal-stack.is-pulse .yut-mal-disk{filter:drop-shadow(0 0 1.2px #fff8e8);animation:1.1s ease-in-out infinite yut-pulse}.yut-mal-badge{pointer-events:none}.yut-mal-ghost{pointer-events:none;filter:drop-shadow(0 1px 1.4px #00000059)}.yut-mal-ghost__bob.is-hop{animation:.16s ease-out yut-mal-hop}.yut-legal-ring{fill:none;stroke:#c45c26;stroke-width:.45px;stroke-dasharray:1.4 1.1}@keyframes yut-pulse{50%{transform:scale(1.08)}}@keyframes yut-mal-hop{0%{opacity:.85;transform:translateY(1.2px)scale(.92)}45%{opacity:1;transform:translateY(-2.4px)scale(1.06)}to{opacity:1;transform:translateY(0)scale(1)}}.yut-trays{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:12px;display:grid}.yut-tray{background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;padding:8px 10px}.yut-tray small{color:var(--muted);margin-bottom:6px;font-size:11px;display:block}.yut-tray>div{flex-wrap:wrap;align-items:center;gap:6px;min-height:28px;display:flex}.yut-tray__empty{color:#667671;font-size:11px}button.yut-tray__mal,.yut-tray__mal{background:var(--yut-color,#c45c26);cursor:pointer;border:2px solid #fff8e8;border-radius:50%;flex:none;width:28px;height:28px;padding:0}button.yut-tray__mal:disabled{opacity:.38;cursor:default}button.yut-tray__mal.is-legal{outline:2px solid #ffe08a;animation:1.1s ease-in-out infinite yut-pulse}.yut-side{width:100%;min-width:0}.yut-stage{background:linear-gradient(#482a1673,#14100c80);border:1px solid #d6a6462e;border-radius:12px;justify-items:center;gap:12px;min-height:220px;padding:28px 14px 14px;display:grid;overflow:visible}.yut-sticks{perspective:600px;justify-content:center;align-items:flex-end;gap:clamp(6px,2vw,16px);width:100%;min-height:130px;padding-top:36px;display:flex;overflow:visible}.yut-stick{perspective:420px;flex:none;width:clamp(20px,5.5vw,30px);height:clamp(76px,18vw,118px)}.yut-stick__inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .28s;position:relative}.yut-stick.is-flat:not(.is-spinning) .yut-stick__inner{transform:rotateX(8deg)rotate(-8deg)}.yut-stick.is-back:not(.is-spinning) .yut-stick__inner{transform:rotateX(188deg)rotate(7deg)}.yut-stick.is-spinning.is-flat .yut-stick__inner--1{animation:1.12s cubic-bezier(.14,.72,.22,1) both yut-tumble-flat-1}.yut-stick.is-spinning.is-flat .yut-stick__inner--2{animation:1.18s cubic-bezier(.14,.72,.22,1) both yut-tumble-flat-2}.yut-stick.is-spinning.is-flat .yut-stick__inner--3{animation:1.08s cubic-bezier(.14,.72,.22,1) both yut-tumble-flat-3}.yut-stick.is-spinning.is-back .yut-stick__inner--1{animation:1.12s cubic-bezier(.14,.72,.22,1) both yut-tumble-back-1}.yut-stick.is-spinning.is-back .yut-stick__inner--2{animation:1.18s cubic-bezier(.14,.72,.22,1) both yut-tumble-back-2}.yut-stick.is-spinning.is-back .yut-stick__inner--3{animation:1.08s cubic-bezier(.14,.72,.22,1) both yut-tumble-back-3}.yut-stick__face{backface-visibility:hidden;border-radius:9px;position:absolute;inset:0;box-shadow:0 10px 16px #00000047}.yut-stick__face--flat{background:linear-gradient(90deg,#5a32162e,#0000 18% 82%,#5a32162e),linear-gradient(#f3d7a4,#e4be7a 55%,#c9964e);border:1px solid #5a321659}.yut-stick__grain{border-radius:inherit;background-image:repeating-linear-gradient(90deg,#0000 0 5px,#6e461e1f 5px 6px);height:100%;display:block}.yut-stick__face--back{color:#d7b07a;background:linear-gradient(#3a2414,#24160d);border:1px solid #1a1008;place-items:center;gap:6px;font-size:13px;font-weight:800;display:grid;transform:rotateX(180deg)}.yut-stick__face--back span{opacity:.85}.yut-stick.is-marked .yut-stick__face--back b{color:#f4efe3;letter-spacing:.04em;font-size:11px;position:absolute;bottom:10px}@keyframes yut-tumble-flat-1{0%{transform:rotateX(0)rotate(0)translateY(0)scale(.96)}22%{transform:rotateX(280deg)rotate(-38deg)translateY(-52px)scale(1.05)}55%{transform:rotateX(620deg)rotate(24deg)translateY(-14px)}78%{transform:rotateX(980deg)rotate(-12deg)translateY(6px)}to{transform:rotateX(1080deg)rotate(-8deg)translateY(0)}}@keyframes yut-tumble-flat-2{0%{transform:rotateX(40deg)rotate(12deg)translateY(-10px)}20%{transform:rotateX(-220deg)rotate(40deg)translateY(-46px)}58%{transform:rotateX(-700deg)rotate(-16deg)translateY(-6px)}to{transform:rotateX(-1080deg)rotate(-8deg)translateY(0)}}@keyframes yut-tumble-flat-3{0%{transform:rotateX(-20deg)translate(-8px)}25%{transform:rotateX(340deg)rotate(-22deg)translateY(-56px)translate(10px)}to{transform:rotateX(1080deg)rotate(-8deg)translateY(0)translate(0)}}@keyframes yut-tumble-back-1{0%{transform:rotateX(0)rotate(0)translateY(0)}22%{transform:rotateX(300deg)rotate(32deg)translateY(-54px)}to{transform:rotateX(1260deg)rotate(7deg)translateY(0)}}@keyframes yut-tumble-back-2{0%{transform:rotateX(30deg)translateY(-6px)}24%{transform:rotateX(-260deg)rotate(-36deg)translateY(-48px)}to{transform:rotateX(-1260deg)rotate(7deg)translateY(0)}}@keyframes yut-tumble-back-3{0%{transform:rotateX(-15deg)}28%{transform:rotateX(380deg)rotate(18deg)translateY(-58px)}to{transform:rotateX(1260deg)rotate(7deg)translateY(0)}}.yut-flash{color:#fff3d4;text-shadow:0 6px 18px #00000073;margin:0;font-family:Georgia,Batang,serif;font-size:clamp(28px,5vw,40px);font-weight:600;animation:.35s yut-pop}.yut-flash--yut,.yut-flash--mo{color:#ffd36a}.yut-flash--backdo{color:#9ec7ff}@keyframes yut-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}button.yut-throw-btn,.yut-throw-btn{appearance:none;color:#fff8e8;width:min(100%,240px);min-height:52px;font:inherit;cursor:pointer;background:linear-gradient(#e07a3a,#c45c26);border:0;border-radius:999px;font-size:16px;font-weight:800;box-shadow:0 10px 24px #c45c2652}button.yut-throw-btn.is-bonus{color:#2a1c0c;background:linear-gradient(#f0c35a,#d6a646);animation:1s ease-in-out infinite yut-bonus}button.yut-throw-btn:disabled{opacity:.45;box-shadow:none}@keyframes yut-bonus{50%{transform:scale(1.04)}}.yut-pending{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}button.yut-chip,.yut-chip{appearance:none;min-width:52px;min-height:44px;color:var(--paper);font:inherit;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:999px;padding:8px 14px;font-size:15px;font-weight:800}button.yut-chip.is-on{background:#c45c26;border-color:#c45c26}button.yut-chip--yut.is-on,button.yut-chip--mo.is-on{color:#2a1c0c;background:#d6a646;border-color:#d6a646}.yut-result-banner{background:#d6a6461a;border:1px solid #d6a64647;border-radius:10px;margin-top:18px;padding:16px}.yut-result-banner strong{font-size:18px;display:block}.yut-lobby__head{margin-bottom:18px}.yut-lobby__controls{gap:12px;margin-bottom:18px;display:grid}.yut-nick{color:var(--muted);gap:4px;font-size:11px;display:grid}.yut-nick input{border:1px solid var(--line);color:var(--paper);background:#ffffff0a;border-radius:6px;min-height:44px;padding:10px 12px}.yut-error{color:#ef8b7d;font-size:13px}.yut-resume{color:#9be7c3;width:100%;font:inherit;cursor:pointer;background:#6dd3a114;border:1px solid #6dd3a14d;border-radius:8px;margin:0 0 14px;padding:12px;font-weight:800}.yut-room-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.yut-room-empty,.yut-room-row{background:#ffffff0a;border:1px solid #ffffff14;border-radius:8px;padding:14px 16px}.yut-room-row{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;display:grid}.yut-room-row p{color:var(--muted);margin:4px 0 0;font-size:12px}.yut-status{font-size:11px;font-weight:800}.yut-status--waiting{color:#6dd3a1}.yut-status--playing{color:#e6b764}.yut-wait{gap:12px;max-width:560px;display:grid}.yut-host-settings{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;padding:14px}@media (max-width:860px){.yut-play{grid-template-columns:1fr;gap:14px}.yut-side{order:-1}.yut-menu-cards{grid-template-columns:1fr}.yut-stage{min-height:0;padding:20px 12px 12px}.yut-sticks{min-height:108px;padding-top:28px}.yut-board-wrap{max-width:min(480px,100%)}}@media (max-width:640px){.yut-names{grid-template-columns:1fr}.yut-room-row{grid-template-columns:minmax(0,1fr) auto}.yut-room-row .join-button{grid-column:1/-1}.yut-topbar{min-height:0;padding:10px max(14px, env(safe-area-inset-right)) 10px max(14px, env(safe-area-inset-left))}.yut-brand small{display:none}.yut-brand strong{font-size:16px}.yut-main{padding:16px max(14px, env(safe-area-inset-right)) max(36px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left))}.yut-players{grid-template-columns:repeat(2,minmax(0,1fr))}.yut-stick{width:clamp(18px,7vw,24px);height:clamp(68px,20vw,96px)}.yut-sticks{gap:6px;min-height:96px}.yut-flash{font-size:clamp(24px,8vw,34px)}.yut-throw-btn{width:100%;min-height:48px}.yut-message{word-break:keep-all;overflow-wrap:anywhere;font-size:14px}.yut-timer-row{align-items:stretch}.yut-trays{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:380px){.yut-players{grid-template-columns:1fr}.yut-quiet{padding:8px 10px;font-size:11px}}@media (prefers-reduced-motion:reduce){.yut-stick.is-spinning .yut-stick__inner,.yut-mal-stack.is-pulse .yut-mal-disk,.yut-mal-ghost__bob.is-hop,button.yut-tray__mal.is-legal,button.yut-throw-btn.is-bonus{animation:none!important}}.bj-app{background:radial-gradient(ellipse 90% 55% at 50% -8%, #125a3a73, transparent 55%), radial-gradient(circle at 85% 70%, #d6a64614, transparent 40%), var(--ink);min-height:100vh;overflow-x:hidden}.bj-topbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:72px;padding:10px clamp(14px,4vw,48px);display:flex}.bj-brand{color:inherit;align-items:center;gap:12px;min-width:0;text-decoration:none;display:flex}.bj-brand strong{color:var(--paper);letter-spacing:-.03em;font-size:18px;display:block}.bj-brand small{color:var(--muted);letter-spacing:.22em;margin-top:2px;font-size:9px;display:block}.bj-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.bj-diff{flex-wrap:wrap;gap:6px;display:flex}button.bj-tool-btn,.bj-tool-btn{appearance:none;border:1px solid var(--line);color:var(--paper);cursor:pointer;background:#ffffff0a;border-radius:0;min-height:44px;padding:10px 12px;font:700 12px/1 inherit}button.bj-tool-btn.is-active,.bj-tool-btn.is-active{background:var(--green);color:#fff;border-color:var(--green)}.bj-main{max-width:1080px;padding:24px clamp(14px, 4vw, 48px) max(40px, env(safe-area-inset-bottom));margin:0 auto}.bj-eyebrow{color:var(--gold);letter-spacing:.18em;margin:0 0 8px;font-size:10px;font-weight:800}.bj-menu h1,.bj-table__rail h1{color:var(--paper);letter-spacing:-.03em;margin:0;font:800 clamp(30px,5vw,44px)/1.05 Georgia,Times New Roman,serif}.bj-menu-lead{color:#a5b2ad;max-width:36ch;margin:14px 0 22px;font-size:15px;line-height:1.6}.bj-diff--menu{margin-bottom:10px}.bj-menu-hint{color:#758680;margin:0 0 22px;font-size:13px}.bj-menu-cards{grid-template-columns:minmax(0,360px);gap:14px;display:grid}button.bj-mode-card,.bj-mode-card{appearance:none;text-align:left;min-height:44px;color:var(--paper);cursor:pointer;background:linear-gradient(160deg,#1f6a5538,#ffffff08);border:1px solid #1f6a558c;border-radius:0;gap:8px;padding:22px 20px;display:grid}button.bj-mode-card:hover,.bj-mode-card:hover{border-color:var(--green);background:linear-gradient(160deg,#1f6a5552,#ffffff0d)}.bj-mode-card strong{font-size:18px;font-weight:800}.bj-mode-card>span{color:var(--muted);font-size:13px;line-height:1.5}.bj-mode-icon{gap:8px;margin-bottom:6px;display:flex}.bj-mini-card{color:#1a1a1a;background:#f4f1ea;border:1px solid #0000001f;place-items:center;width:42px;height:58px;font:800 12px/1 Georgia,serif;display:inline-grid;box-shadow:0 4px 10px #00000040}.bj-mini-card--red{color:#c0392b}.bj-howto-link{margin:22px 0 0;display:inline-flex}.bj-rules-line{text-align:center;color:#758680;word-break:keep-all;margin:18px 0 0;font-size:12px}.bj-table{grid-template-columns:minmax(200px,260px) minmax(0,1fr);align-items:start;gap:22px;display:grid}.bj-table__rail{min-width:0}.bj-stats{gap:10px;margin:16px 0 0;display:grid}.bj-stats>div{color:#a5b2ad;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0;font-size:12px;display:flex}.bj-stats strong{color:var(--paper);font-variant-numeric:tabular-nums;font-size:16px}.bj-message{color:#a5b2ad;word-break:keep-all;min-height:2.8em;margin:16px 0 12px;font-size:14px;line-height:1.65}.bj-table.is-win .bj-message,.bj-table.is-blackjack .bj-message{color:#6dd3a1}.bj-table.is-lose .bj-message{color:#ef8b7d}.bj-table.is-push .bj-message{color:var(--gold)}.bj-result{letter-spacing:.04em;border:1px solid;justify-content:center;align-items:center;min-height:44px;margin:0 0 12px;padding:8px 16px;font:800 18px/1 Georgia,Times New Roman,serif;display:inline-flex}.bj-result--win,.bj-result--blackjack{color:#6dd3a1;background:#6dd3a11a}.bj-result--lose{color:#ef8b7d;background:#ef8b7d1a}.bj-result--push{color:var(--gold);background:#d6a6461a}.bj-felt{background:radial-gradient(at 50% 40%,#ffffff14,#0000 55%),linear-gradient(160deg,#1b6b4a 0%,#0f3f2d 55%,#0a2d20 100%);border:3px solid #0a2a1e;gap:18px;min-width:0;padding:clamp(16px,3vw,28px);display:grid;box-shadow:inset 0 0 0 1px #ffffff14,inset 0 0 40px #00000040,0 18px 40px #00000059}.bj-felt__mid{text-align:center;color:#d6a6468c;letter-spacing:.16em;-webkit-user-select:none;user-select:none;font:700 11px/1 Georgia,serif}.bj-hand__meta{color:#d7e4dd;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.bj-hand__label{letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.bj-hand__total{color:#f2f6f3;font:700 14px/1 Georgia,serif}.bj-hand__cards{-webkit-overflow-scrolling:touch;flex-wrap:wrap;gap:8px;min-height:clamp(84px,22vw,118px);padding-bottom:4px;display:flex;overflow:auto hidden}.bj-hand__item{flex:none}.bj-card{--bj-card-w:clamp(54px, 14vw, 78px);width:var(--bj-card-w);height:calc(var(--bj-card-w) * 1.4);color:#1a1a1a;-webkit-user-select:none;user-select:none;background:linear-gradient(165deg,#fffef9,#ebe6dc);border-radius:8px;animation:.35s ease-out both bj-deal;position:relative;box-shadow:0 6px 14px #00000047,inset 0 0 0 1px #00000014}.bj-card--red{color:#c0392b}.bj-card--black{color:#1a1a1a}.bj-card--back{background:repeating-linear-gradient(135deg,#163d2f 0 6px,#1f5642 6px 12px);border:2px solid #d6a646}.bj-card__pattern{background:radial-gradient(circle at 30% 30%,#ffffff1f,#0000 40%),repeating-linear-gradient(45deg,#0000 0 4px,#00000014 4px 5px);border:1px solid #d6a64673;border-radius:4px;position:absolute;inset:6px}.bj-card--slot{box-shadow:none;background:#0000002e;border:1px dashed #ffffff2e;animation:none}.bj-card__corner{justify-items:center;gap:1px;font:800 11px/1 Georgia,serif;display:grid;position:absolute}.bj-card__corner b{font-size:clamp(11px,2.8vw,14px)}.bj-card__corner i{font-size:clamp(10px,2.4vw,12px);font-style:normal}.bj-card__corner--tl{top:6px;left:6px}.bj-card__corner--br{bottom:6px;right:6px;transform:rotate(180deg)}.bj-card__pip{place-items:center;font-size:clamp(22px,6vw,34px);line-height:1;display:grid;position:absolute;inset:0}@keyframes bj-deal{0%{opacity:0;transform:translateY(-10px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes bj-reveal{0%{opacity:.35;transform:rotateY(90deg)scale(.96)}to{opacity:1;transform:rotateY(0)scale(1)}}.bj-card--reveal{transform-style:preserve-3d;animation:.42s ease-out both bj-reveal}.bj-controls{grid-column:1/-1;justify-items:stretch;gap:12px;margin-top:4px;display:grid}.bj-bets{flex-wrap:wrap;gap:8px;display:flex}button.bj-chip,.bj-chip{appearance:none;color:#1a1408;cursor:pointer;background:radial-gradient(circle at 35% 30%,#ffe7a8,#d6a646 55%,#a67b2a);border:2px solid #d6a646a6;border-radius:999px;min-width:56px;min-height:44px;padding:10px 14px;font:800 14px/1 inherit}button.bj-chip.is-active,.bj-chip.is-active{outline-offset:2px;outline:2px solid #fff}button.bj-chip:disabled,.bj-chip:disabled{opacity:.4;cursor:not-allowed}.bj-custom{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;max-width:420px;display:grid}.bj-custom label{color:#a5b2ad;white-space:nowrap;font-size:12px;font-weight:700}.bj-custom input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--paper);background:#00000040;padding:8px 12px;font:700 14px/1 inherit}.bj-actions{flex-wrap:wrap;gap:8px;display:flex}button.bj-action,.bj-action{appearance:none;border:1px solid var(--line);min-width:96px;min-height:48px;color:var(--paper);cursor:pointer;background:#ffffff0f;border-radius:0;padding:12px 18px;font:800 14px/1 inherit}button.bj-action:disabled,.bj-action:disabled{opacity:.4;cursor:not-allowed}button.bj-action--primary,.bj-action--primary{background:var(--green);border-color:var(--green);color:#fff}button.bj-action--quiet,.bj-action--quiet{background:#ffffff0a;min-width:64px}.bj-waiting{color:#a5b2ad;align-items:center;min-height:44px;margin:0;font-size:14px;display:flex}.bj-rules-modal .rules-grid{margin-top:8px}.bj-rules-modal .rules-grid h3{font-size:14px}.bj-rules-modal .rules-grid p{color:#4d5a56;font-size:13px;line-height:1.55}.bj-rules-modal .legal-box p{font-size:13px;line-height:1.55}.bj-confirm-modal{width:min(420px,100%);padding:28px 22px}.bj-confirm-modal h2{margin:0 0 12px;font:700 22px/1.25 Georgia,Times New Roman,serif}.bj-confirm-body{color:#5c6864;margin:0 0 20px;font-size:14px;line-height:1.55}.bj-confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.bj-confirm-actions .bj-action{color:#182521;background:#f3eee4;border-color:#d9d2c5}.bj-confirm-actions .bj-action--primary{color:#fff;background:var(--green);border-color:var(--green)}@media (max-width:860px){.bj-table{grid-template-columns:1fr}.bj-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bj-stats>div{background:#0000002e;border:1px solid #ffffff0f;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px}}@media (max-width:640px){.bj-brand small{display:none}.bj-brand strong{font-size:16px}.bj-topbar{min-height:0;padding:10px max(14px, env(safe-area-inset-right)) 10px max(14px, env(safe-area-inset-left))}.bj-toolbar{justify-content:flex-start;width:100%}.bj-diff{width:100%}.bj-diff .bj-tool-btn{text-align:center;flex:1 1 0}.bj-main{padding:16px max(14px, env(safe-area-inset-right)) max(36px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left))}.bj-custom{grid-template-columns:1fr}.bj-actions{grid-template-columns:1fr 1fr;display:grid}.bj-actions .bj-action--primary{grid-column:1/-1}.bj-controls .bj-action--primary{width:100%}.bj-felt{padding:14px}.bj-card{--bj-card-w:clamp(48px, 16vw, 64px)}.bj-rules-modal{padding:22px 16px}.bj-rules-modal .rules-grid{grid-template-columns:1fr}.modal-close{width:44px;height:44px;top:8px;right:8px}}@media (max-width:380px){.bj-stats{grid-template-columns:1fr}.bj-tool-btn{padding:8px 10px;font-size:11px}}@media (prefers-reduced-motion:reduce){.bj-card,.bj-card--reveal{animation:none!important}}.uno-app{--uno-felt:#1a5c3a;--uno-felt-deep:#0f3d26;--uno-ink:#f4f1ea;--uno-muted:#f4f1eab8;--uno-accent:#f0c000;background:radial-gradient(ellipse 90% 60% at 50% 20%, #247a4c 0%, transparent 55%), linear-gradient(165deg, var(--uno-felt) 0%, var(--uno-felt-deep) 100%);min-height:100dvh;color:var(--uno-ink);flex-direction:column;display:flex}.uno-topbar{padding:12px max(16px, env(safe-area-inset-right)) 8px max(16px, env(safe-area-inset-left));justify-content:space-between;align-items:center;gap:12px;min-height:52px;display:flex}.uno-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.uno-brand strong{letter-spacing:-.03em;font-size:17px;display:block}.uno-brand small{color:var(--uno-muted);letter-spacing:.18em;margin-top:2px;font-size:9px;display:block}.uno-topbar__actions{flex-wrap:wrap;gap:8px;display:flex}.uno-main{padding:8px max(16px, env(safe-area-inset-right)) max(20px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));flex-direction:column;flex:1;min-height:0;display:flex}.uno-main--menu{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:28px;width:100%;max-width:920px;margin:0 auto;display:grid}.uno-eyebrow{letter-spacing:.2em;color:var(--uno-accent);margin:0 0 8px;font-size:11px;font-weight:700}.uno-hero h1{letter-spacing:-.04em;margin:0 0 12px;font-size:clamp(36px,8vw,56px);line-height:1.05}.uno-lead{max-width:36em;color:var(--uno-muted);word-break:keep-all;margin:0 0 12px;font-size:15px;line-height:1.55}.uno-tm-note{max-width:40em;color:var(--uno-muted);opacity:.9;word-break:keep-all;margin:0 0 20px;font-size:12px;line-height:1.5}.uno-diff{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.uno-diff__btn,button.uno-diff__btn{min-width:72px;min-height:44px;color:var(--uno-ink);cursor:pointer;background:#0000002e;border:1px solid #ffffff38;border-radius:10px;padding:0 16px;font-weight:600}.uno-diff__btn.is-active{background:var(--uno-accent);color:#1a1a1a;border-color:#0000}.uno-btn,button.uno-btn{min-height:44px;color:var(--uno-ink);cursor:pointer;background:#00000038;border:1px solid #ffffff40;border-radius:10px;padding:0 16px;font-size:14px;font-weight:650}.uno-btn:disabled{opacity:.4;cursor:not-allowed}.uno-btn--primary{color:#122;background:#f4f1ea;border-color:#0000}.uno-btn--ghost{background:0 0}.uno-btn--cta{min-width:160px}.uno-btn--uno{letter-spacing:.04em;background:#e23b2e;border-color:#0000;min-width:88px;font-weight:800}.uno-btn--uno.is-urgent{animation:.9s ease-in-out infinite uno-pulse;box-shadow:0 0 0 3px #f0c0008c}@keyframes uno-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.uno-menu-preview{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:20px;display:flex}.uno-menu-preview .uno-card{transform:rotate(-6deg)}.uno-menu-preview .uno-card:nth-child(2){transform:rotate(4deg)translateY(-8px)}.uno-menu-preview .uno-card:nth-child(3){transform:rotate(-2deg)}.uno-menu-preview .uno-card:nth-child(4){transform:rotate(8deg)translateY(6px)}.uno-card{--uno-w:72px;--uno-h:108px;width:var(--uno-w);height:var(--uno-h);-webkit-user-select:none;user-select:none;border:2px solid #f7f4ee;border-radius:10px;flex-shrink:0;position:relative;overflow:hidden;box-shadow:0 6px 16px #00000047}.uno-card--sm{--uno-w:42px;--uno-h:62px;border-width:1.5px;border-radius:7px}.uno-card--face{background:var(--uno-face,#333)}.uno-card--wild{background:#1a1a1a}.uno-card__corner{font-weight:800;font-size:calc(var(--uno-w) * .22);color:#fff;text-shadow:0 1px #00000040;line-height:1;position:absolute}.uno-card__corner--tl{top:6px;left:7px}.uno-card__corner--br{bottom:6px;right:7px;transform:rotate(180deg)}.uno-card--sm .uno-card__corner{font-size:10px;top:3px;left:4px}.uno-card--sm .uno-card__corner--br{inset:auto 4px 3px auto}.uno-card__badge{background:#f7f4ee;border-radius:50%/46%;place-items:center;display:grid;position:absolute;inset:18% 12%}.uno-card__center{font-size:calc(var(--uno-w) * .42);color:var(--uno-face,#222);font-weight:900;line-height:1}.uno-card--sm .uno-card__center{font-size:16px}.uno-card__wild-pie{background:conic-gradient(#e23b2e 0 25%, #f0c000 0 50%, #2f9e44 0 75%, #1c7ed6 0);border-radius:50%;width:70%;height:70%;box-shadow:inset 0 0 0 2px #111}.uno-card--wild4 .uno-card__corner{color:#f0c000}.uno-card--back{background:linear-gradient(145deg,#ffffff14,#0000 40%),radial-gradient(circle at 30% 25%,#3a6cff,#1a2a8a 55%,#0d1548);place-items:center;display:grid}.uno-card__back-mark{font-weight:900;font-size:calc(var(--uno-w) * .28);letter-spacing:.02em;color:#f0c000;text-shadow:0 2px #0a1030;transform:rotate(-12deg)}.uno-card--sm .uno-card__back-mark{font-size:11px}.uno-card__stack-n{color:#fff;font-size:10px;font-weight:700;position:absolute;bottom:4px;right:5px}.uno-main--play{padding-top:0}.uno-table{flex:1;grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;width:100%;max-width:1100px;min-height:0;margin:0 auto;display:grid}.uno-table__mid{grid-template-columns:minmax(72px,140px) minmax(0,1fr) minmax(72px,140px);align-items:center;gap:8px;min-height:0;display:grid}.uno-seat{background:#00000029;border:1px solid #0000;border-radius:14px;flex-direction:column;align-items:center;gap:6px;min-width:0;padding:8px;display:flex}.uno-seat.is-active{border-color:var(--uno-accent);box-shadow:0 0 0 1px #f0c00059}button.uno-seat{font:inherit;color:inherit;cursor:pointer;appearance:none;width:100%}button.uno-seat.is-tappable{background:#f0c00024;border-color:#f0c000;animation:.85s ease-in-out infinite uno-tap-glow}.uno-seat__tap-hint{color:#1a1a1a;background:var(--uno-accent);letter-spacing:.04em;border-radius:999px;padding:2px 8px;font-size:11px;font-style:normal;font-weight:800}.uno-seat__timer{background:#ffffff26;border-radius:999px;width:100%;max-width:120px;height:4px;overflow:hidden}.uno-seat__timer i{transform-origin:0;background:var(--uno-accent);border-radius:inherit;width:100%;height:100%;display:block}.uno-seat__meta{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:8px;font-size:13px;display:flex}.uno-seat__meta strong{font-size:14px}.uno-seat__meta span{color:var(--uno-muted)}.uno-seat__uno{color:var(--uno-accent);letter-spacing:.06em;font-size:11px;font-style:normal;font-weight:800}.uno-seat__cards{justify-content:center;align-items:center;min-height:62px;display:flex;position:relative}.uno-seat__cards.is-pulse{animation:.65s uno-seat-pulse}.uno-seat__card-wrap{margin-left:calc(var(--i,0) * -22px)}.uno-seat__card-wrap:first-child{margin-left:0}.uno-seat--left .uno-seat__cards,.uno-seat--right .uno-seat__cards{flex-direction:column}.uno-seat--left .uno-seat__card-wrap,.uno-seat--right .uno-seat__card-wrap{margin-left:0;margin-top:calc(var(--i,0) * -36px)}.uno-seat--left .uno-seat__card-wrap:first-child,.uno-seat--right .uno-seat__card-wrap:first-child{margin-top:0}.uno-seat__more{color:var(--uno-muted);margin-left:6px;font-size:12px;font-weight:700}@keyframes uno-tap-glow{0%,to{box-shadow:0 0 #f0c00059}50%{box-shadow:0 0 0 6px #f0c0001f}}@keyframes uno-seat-pulse{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}.uno-center{justify-content:center;align-items:center;gap:clamp(16px,5vw,36px);min-height:140px;display:flex;position:relative}.uno-pile{color:inherit;cursor:default;background:0 0;border:none;flex-direction:column;align-items:center;gap:8px;padding:0;display:flex}button.uno-pile--deck{cursor:pointer;min-width:44px;min-height:44px}button.uno-pile--deck:disabled{cursor:not-allowed;opacity:.7}.uno-pile__label{color:var(--uno-muted);font-size:12px;font-weight:600}.uno-pile--discard{position:relative}.uno-pile--discard.is-played .uno-card{animation:.42s cubic-bezier(.22,.8,.28,1) uno-discard-land}.uno-pile--deck.is-draw .uno-card{animation:.38s uno-deck-draw}.uno-dir{color:var(--uno-accent);vertical-align:middle;margin-left:6px;font-size:14px;display:inline-block}.uno-dir.is-cw{animation:.7s uno-spin-cw}.uno-dir.is-ccw{animation:.7s uno-spin-ccw}.uno-fx{z-index:5;pointer-events:none;letter-spacing:.06em;color:#fff8e7;text-shadow:0 3px #00000059,0 0 22px #f0c0008c;white-space:nowrap;font-size:clamp(28px,8vw,44px);font-weight:900;animation:.9s cubic-bezier(.2,.85,.25,1) both uno-fx-pop;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.uno-fx--skip,.uno-fx--catch{color:#ffb4a8}.uno-fx--draw2,.uno-fx--wild4{color:#ffe08a}.uno-fx--reverse{color:#9ad0ff}.uno-fx--uno{color:#fff36a}.uno-table.is-fx-reverse .uno-dir{animation-duration:.9s}.uno-color-dot{border:2px solid #fff;border-radius:50%;width:18px;height:18px;transition:background .25s,transform .25s;position:absolute;top:-4px;right:-4px;box-shadow:0 2px 6px #00000059}.uno-pile--discard.is-played .uno-color-dot{animation:.45s uno-color-pop}.uno-color-dot--red{background:#e23b2e}.uno-color-dot--yellow{background:#f0c000}.uno-color-dot--green{background:#2f9e44}.uno-color-dot--blue{background:#1c7ed6}.uno-status{text-align:center;word-break:keep-all;flex-direction:column;gap:4px;padding:4px 8px;font-size:15px;display:flex}.uno-status__urgent{color:#ffe08a;font-size:13px;font-weight:800}.uno-status__log{color:var(--uno-muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}@keyframes uno-discard-land{0%{opacity:.55;transform:translateY(-18px)scale(1.08)rotate(-6deg)}to{opacity:1;transform:none}}@keyframes uno-deck-draw{0%{transform:translateY(0)scale(1)}45%{transform:translateY(-10px)scale(1.05)}to{transform:none}}@keyframes uno-fx-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}25%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}70%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-42%)scale(1.05)}}@keyframes uno-color-pop{0%{transform:scale(.6)}60%{transform:scale(1.25)}to{transform:scale(1)}}@keyframes uno-spin-cw{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes uno-spin-ccw{0%{transform:rotate(0)}to{transform:rotate(-360deg)}}.uno-hand-bar{flex-direction:column;gap:10px;min-width:0;display:flex}.uno-hand-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.uno-hand{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;overscroll-behavior-x:contain;justify-content:safe center;gap:0;margin-top:-8px;padding:22px 8px 16px;display:flex;overflow:auto visible}.uno-hand__item{margin-left:calc(var(--hand-i,0) * -10px);flex-shrink:0}.uno-hand__item:first-child{margin-left:0}.uno-hand__card{cursor:pointer;scroll-snap-align:center;opacity:.55;background:0 0;border:none;flex-shrink:0;min-width:44px;min-height:44px;padding:0;transition:transform .15s,opacity .15s}.uno-hand__card:disabled{cursor:default}.uno-hand__card.is-playable{opacity:1;filter:drop-shadow(0 8px 12px #00000059);transform:translateY(-10px)}.uno-hand__card.is-playable:hover,.uno-hand__card.is-playable:focus-visible{outline:none;transform:translateY(-16px)scale(1.04)}.uno-hand__card.is-drawn{outline:2px solid var(--uno-accent);outline-offset:3px;border-radius:12px}.uno-hand .uno-card{--uno-w:clamp(64px, 18vw, 84px);--uno-h:clamp(96px, 27vw, 126px)}.uno-modal-backdrop{z-index:80;padding:max(16px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));background:#08100cb8;place-items:center;display:grid;position:fixed;inset:0}.uno-modal{color:#f4f1ea;background:#14281c;border:1px solid #ffffff1f;border-radius:18px;width:min(560px,100%);max-height:min(86dvh,720px);padding:24px 22px 28px;position:relative;overflow:auto;box-shadow:0 24px 60px #00000073}.uno-modal h2{letter-spacing:-.03em;margin:0 0 16px;font-size:24px}.uno-modal__close{width:44px;height:44px;color:inherit;cursor:pointer;background:0 0;border:none;font-size:28px;line-height:1;position:absolute;top:10px;right:12px}.uno-rules-grid{gap:14px;display:grid}.uno-rules-grid article{background:#ffffff0d;border-radius:12px;padding:12px 12px 14px}.uno-rules-grid span{letter-spacing:.14em;color:var(--uno-accent);margin-bottom:4px;font-size:11px;font-weight:700;display:block}.uno-rules-grid h3{margin:0 0 6px;font-size:16px}.uno-rules-grid p{color:#f4f1ead1;word-break:keep-all;margin:0;font-size:14px;line-height:1.55}.uno-modal--color{text-align:center;width:min(400px,100%)}.uno-color-pick{grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;display:grid}.uno-color-pick__btn,button.uno-color-pick__btn{color:#fff;cursor:pointer;text-shadow:0 1px #00000040;border:none;border-radius:12px;min-height:52px;font-size:15px;font-weight:800}.uno-color-pick__btn--red{background:#e23b2e}.uno-color-pick__btn--yellow{color:#222;text-shadow:none;background:#f0c000}.uno-color-pick__btn--green{background:#2f9e44}.uno-color-pick__btn--blue{background:#1c7ed6}.uno-toast{left:50%;top:max(64px, calc(env(safe-area-inset-top) + 52px));z-index:90;color:#fff;pointer-events:none;text-align:center;word-break:keep-all;background:#0a140eeb;border-radius:999px;max-width:min(90vw,420px);padding:12px 18px;font-size:14px;font-weight:650;animation:.25s uno-toast-in;position:fixed;bottom:auto;transform:translate(-50%)}@keyframes uno-toast-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.uno-flash{z-index:85;background:#08100cc7;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:24px;display:flex;position:fixed;inset:0}.uno-flash strong{letter-spacing:-.04em;font-size:clamp(32px,10vw,52px)}@media (max-width:820px){.uno-main--menu{grid-template-columns:1fr;gap:18px}.uno-menu-preview{order:-1;padding:8px}.uno-table__mid{grid-template-columns:minmax(64px,100px) minmax(0,1fr) minmax(64px,100px)}.uno-seat--left .uno-seat__cards,.uno-seat--right .uno-seat__cards{max-height:none;overflow:visible}.uno-seat--left .uno-seat__card-wrap,.uno-seat--right .uno-seat__card-wrap{margin-top:calc(var(--i,0) * -28px)}}@media (max-width:560px){.uno-brand small{display:none}.uno-topbar__actions .uno-btn{padding:0 12px;font-size:13px}.uno-table{grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:8px}.uno-table__mid{grid-template-rows:auto auto;grid-template-columns:1fr 1fr}.uno-center{order:-1;grid-column:1/-1;min-height:110px;position:relative}.uno-seat--left,.uno-seat--right{flex-direction:row;justify-content:space-between;padding:6px}.uno-seat--left .uno-seat__cards,.uno-seat--right .uno-seat__cards{flex-direction:row;min-height:52px;max-height:none}.uno-seat--left .uno-seat__card-wrap,.uno-seat--right .uno-seat__card-wrap{margin-top:0;margin-left:calc(var(--i,0) * -18px)}.uno-seat--left .uno-seat__card-wrap:first-child,.uno-seat--right .uno-seat__card-wrap:first-child{margin-left:0}.uno-hand .uno-card{--uno-w:clamp(56px, 18vw, 70px);--uno-h:clamp(84px, 27vw, 105px)}.uno-hand__item{margin-left:calc(var(--hand-i,0) * -14px)}.uno-hand__item:first-child{margin-left:0}.uno-fx{font-size:clamp(24px,9vw,36px)}}@media (max-height:520px) and (orientation:landscape){.uno-topbar{min-height:44px;padding-top:6px;padding-bottom:4px}.uno-main--play{padding-bottom:8px}.uno-table{gap:4px}.uno-center{gap:12px;min-height:88px}.uno-card{--uno-w:52px;--uno-h:78px}.uno-card--sm{--uno-w:34px;--uno-h:50px}.uno-hand .uno-card{--uno-w:52px;--uno-h:78px}.uno-seat__cards{min-height:50px}.uno-status{padding:2px 6px;font-size:13px}.uno-hand{padding:12px 4px 8px}}@media (prefers-reduced-motion:reduce){.uno-btn--uno.is-urgent,.uno-hand__card,button.uno-seat.is-tappable,.uno-pile--discard.is-played .uno-card,.uno-pile--deck.is-draw .uno-card,.uno-fx,.uno-dir,.uno-seat__cards.is-pulse,.uno-toast{transition:none!important;animation:none!important}}.poker-shell{--poker-felt:#0f3d2e;--poker-felt-deep:#0a2a20;--poker-rail:#6b3f24;--poker-gold:#d4b56a;--poker-ink:#e8efe9;--poker-muted:#9bb0a4;min-height:100dvh;color:var(--poker-ink);background:radial-gradient(90% 60% at 50% 0,#285a4659,#0000 55%),linear-gradient(165deg,#0c1612 0%,#15241c 45%,#0b1210 100%);overflow-x:hidden}.poker-topbar{min-height:56px;padding:10px max(16px, env(safe-area-inset-right)) 10px max(16px, env(safe-area-inset-left));border-bottom:1px solid #ffffff0f;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.poker-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.poker-brand strong{letter-spacing:-.02em;font-size:17px;display:block}.poker-brand small{color:var(--poker-muted);letter-spacing:.14em;margin-top:2px;font-size:10px;font-weight:700;display:block}.poker-quiet{min-height:44px;color:var(--poker-ink);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:8px;padding:0 14px;font-size:13px;font-weight:600}.poker-quiet:hover{background:#ffffff14}.poker-quiet:focus-visible,.poker-act:focus-visible,.poker-preset:focus-visible,.poker-diff__btn:focus-visible{outline:2px solid var(--poker-gold);outline-offset:2px}.poker-top-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.poker-diff-tag{color:var(--poker-gold);background:#d4b56a26;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700}.poker-menu{max-width:520px;padding:36px max(18px, env(safe-area-inset-right)) 48px max(18px, env(safe-area-inset-left));text-align:center;margin:0 auto}.poker-menu h1{letter-spacing:-.02em;margin:0 0 12px;font:600 clamp(28px,6vw,40px) Georgia,Batang,serif}.poker-menu__lead{max-width:36em;color:var(--poker-muted);word-break:keep-all;margin:0 auto 28px;font-size:15px;line-height:1.7}.poker-diff{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:22px;display:flex}.poker-diff__btn{min-width:88px;min-height:44px;color:var(--poker-ink);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:10px;padding:0 16px;font-weight:700}.poker-diff__btn.is-active{color:var(--poker-gold);background:#d4b56a2e;border-color:#d4b56a8c}.poker-start{width:min(100%,280px);min-height:48px}.poker-main{padding:12px max(14px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));gap:14px;max-width:960px;margin:0 auto;display:grid}.poker-status{color:var(--poker-muted);background:#00000047;border:1px solid #ffffff0f;border-radius:12px;gap:4px;margin:0;padding:10px 14px;font-size:13px;display:grid}.poker-status strong{color:var(--poker-gold)}.poker-status__msg{color:var(--poker-ink);word-break:keep-all;overflow-wrap:anywhere;font-size:14px;font-weight:600}.poker-thinking{color:var(--poker-gold);font-size:13px;font-weight:700}.poker-table-wrap{width:100%;padding:4px 2px 8px;overflow:visible}.poker-felt{background:radial-gradient(ellipse 70% 55% at 50% 45%, #1a5c44 0%, var(--poker-felt) 55%, var(--poker-felt-deep) 100%);min-height:320px;box-shadow:inset 0 0 0 10px var(--poker-rail), inset 0 0 0 14px #00000040, 0 18px 40px #00000073;border-radius:28px;grid-template-columns:1fr 1fr;grid-template-areas:"community community""left right""hero hero";gap:12px 10px;padding:18px 14px 22px;display:grid;position:relative}.poker-community{grid-area:community;justify-items:center;gap:10px;padding-top:4px;display:grid}.poker-pot-badge{color:var(--poker-gold);letter-spacing:.06em;background:#00000073;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:800}.poker-board{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.poker-seat--left{grid-area:left;justify-self:start}.poker-seat--right{grid-area:right;justify-self:end}.poker-seat--hero{grid-area:hero;justify-self:center}.poker-seat{background:#00000047;border:1px solid #ffffff14;border-radius:14px;justify-items:center;gap:6px;min-width:0;padding:10px;transition:box-shadow .2s,border-color .2s;display:grid}.poker-seat.is-turn{border-color:#d4b56aa6;animation:1.6s ease-in-out infinite poker-turn-pulse;box-shadow:0 0 0 2px #d4b56a40}.poker-seat.is-folded{opacity:.55}.poker-seat.is-allin{border-color:#dc5a5a8c;box-shadow:0 0 0 2px #dc5a5a33}.poker-seat.is-winner{background:#d4b56a1f;border-color:#d4b56ad9;box-shadow:0 0 0 2px #d4b56a59}.poker-allin-badge{color:#ffb4b4;letter-spacing:.04em;background:#b43c3c59;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:800}.poker-seat__meta{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;font-size:13px;display:flex}.poker-seat__stack{color:var(--poker-muted);font-size:12px}.poker-btn-chip{color:#111;background:#f2f2f2;border-radius:50%;place-items:center;width:22px;height:22px;font-size:11px;font-weight:900;display:inline-grid}.poker-seat__cards{align-items:center;gap:6px;min-height:64px;display:flex;position:relative}.poker-seat__folded{color:#f0a0a0;letter-spacing:.08em;pointer-events:none;background:#0000008c;border-radius:6px;width:fit-content;margin:0 auto;padding:2px 8px;font-size:11px;font-weight:800;position:absolute;inset:auto 0 0}.poker-seat__bet{color:var(--poker-gold);background:#d4b56a33;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;animation:.28s ease-out both poker-chip-in}.poker-seat__hand{color:var(--poker-muted);font-size:11px}.poker-card{-webkit-user-select:none;user-select:none;width:clamp(42px,11vw,58px);height:clamp(60px,15.5vw,82px);transform-style:preserve-3d;background:linear-gradient(160deg,#fffef8,#f0ebe0);border:1px solid #0000001f;border-radius:8px;grid-template-rows:auto 1fr;padding:5px 6px;font-family:Georgia,Times New Roman,serif;animation:.32s ease-out both poker-deal;display:grid;position:relative;box-shadow:0 4px 10px #00000040}.poker-card--red{color:#c0392b}.poker-card--black{color:#1a1a1a}.poker-card__rank{font-size:clamp(13px,3.2vw,16px);font-weight:700;line-height:1}.poker-card__suit{place-items:center;font-size:clamp(18px,4.5vw,26px);line-height:1;display:grid}.poker-card--back{background:repeating-linear-gradient(45deg,#1e3a5f 0 6px,#254a75 6px 12px);border-color:#fff3}.poker-card--slot{box-shadow:none;background:#0000002e;border:1px dashed #ffffff2e;animation:none}.poker-card--folded{opacity:.35;filter:grayscale(.6);transform:translateY(4px)rotate(-4deg)}.poker-card--flip{animation:.45s ease-out both poker-flip}.poker-actions{background:#00000059;border:1px solid #ffffff14;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:stretch;gap:8px;padding:12px;display:flex}.poker-actions.is-disabled{opacity:.55;pointer-events:none}.poker-actions--waiting{min-height:56px;color:var(--poker-muted);justify-content:center;align-items:center;font-size:14px;font-weight:600}.poker-act{min-width:72px;min-height:48px;color:var(--poker-ink);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff24;border-radius:10px;padding:0 14px;font-size:14px;font-weight:800}.poker-act:disabled{opacity:.4;cursor:not-allowed}.poker-act--fold{color:#f0a0a0;border-color:#dc5a5a73}.poker-act--check,.poker-act--call{color:#a8e0c4;border-color:#64b48c73}.poker-act--raise{color:var(--poker-gold);background:#d4b56a33;border-color:#d4b56a80}.poker-act--allin{color:#ffb4b4;background:#b43c3c40;border-color:#dc5a5a80}.poker-bet-box{flex:220px;gap:8px;min-width:min(100%,220px);display:grid}.poker-presets{flex-wrap:wrap;gap:6px;display:flex}.poker-preset{min-width:44px;min-height:44px;color:var(--poker-ink);cursor:pointer;background:#ffffff0d;border:1px solid #ffffff1f;border-radius:8px;padding:0 12px;font-size:12px;font-weight:700}.poker-preset.is-active{border-color:var(--poker-gold);color:var(--poker-gold)}.poker-slider{color:var(--poker-muted);gap:4px;font-size:12px;display:grid}.poker-slider input[type=range]{width:100%;accent-color:var(--poker-gold)}.poker-endbar{text-align:center;background:#0006;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:14px;display:flex}.poker-endbar p{word-break:keep-all;flex:100%;margin:0;font-size:14px}.poker-result-card{color:var(--poker-gold);background:#d4b56a1f;border:1px solid #d4b56a59;border-radius:10px;flex:100%;gap:4px;padding:10px 12px;font-size:13px;font-weight:600;display:grid}.poker-result-card strong{color:var(--poker-ink);font-size:15px}.poker-rules-modal{max-width:min(720px,100%)}.poker-rules-modal .rules-grid p{font-size:13px;line-height:1.55}@media (min-width:860px){.poker-felt{border-radius:36px;grid-template-columns:1fr 1.4fr 1fr;grid-template-areas:"left community right"".hero.";min-height:420px;padding:28px 28px 32px}.poker-seat--left,.poker-seat--right{place-self:center}}@media (max-width:640px){.poker-felt{min-height:0;box-shadow:inset 0 0 0 6px var(--poker-rail), inset 0 0 0 9px #00000040, 0 12px 28px #0006;border-radius:22px;padding:12px 8px 16px}.poker-brand small{display:none}.poker-act{flex:calc(50% - 8px);min-height:48px}.poker-bet-box{flex:100%}.poker-top-actions{gap:6px}.poker-quiet{padding:0 10px;font-size:12px}}@media (prefers-reduced-motion:reduce){.poker-seat{transition:none;animation:none!important}.poker-card,.poker-seat__bet{animation:none!important}}@keyframes poker-deal{0%{opacity:0;transform:translateY(-10px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes poker-flip{0%{opacity:.4;transform:rotateY(90deg)scale(.94)}to{opacity:1;transform:rotateY(0)scale(1)}}@keyframes poker-chip-in{0%{opacity:0;transform:translateY(8px)scale(.85)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes poker-turn-pulse{0%,to{box-shadow:0 0 0 2px #d4b56a33}50%{box-shadow:0 0 0 3px #d4b56a73}}.sol-app{--sol-felt:#176b45;--sol-felt-deep:#0c3d28;--sol-gap:clamp(2px, .7vw, 10px);--sol-card-w:min(72px, 18vw);--sol-peek-down:clamp(11px, 3vw, 16px);--sol-peek-up:clamp(22px, 5.4vw, 28px);--sol-waste-fan:-52%;min-height:100dvh;color:var(--cream);background:radial-gradient(ellipse 90% 55% at 50% -8%, #278c5873, transparent 55%), linear-gradient(165deg, var(--sol-felt) 0%, var(--sol-felt-deep) 100%);flex-direction:column;display:flex;overflow-x:hidden}.sol-topbar{padding:10px max(12px, env(safe-area-inset-right)) 8px max(12px, env(safe-area-inset-left));border-bottom:1px solid #ffffff14;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;min-height:52px;display:flex}.sol-brand{min-width:0;color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.sol-brand strong{letter-spacing:-.03em;font-size:17px;display:block}.sol-brand small{color:#f4efe3b3;letter-spacing:.18em;margin-top:2px;font-size:9px;display:block}.sol-topbar__end{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.sol-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:100%;display:flex}.sol-app .locale-switcher{padding-top:0}.sol-app .locale-switcher__select{color:#f4efe3e6}button.sol-btn,.sol-btn{appearance:none;color:var(--paper);cursor:pointer;touch-action:manipulation;background:#0000002e;border:1px solid #ffffff29;border-radius:0;min-height:44px;padding:10px 12px;font:700 12px/1 inherit}button.sol-btn:disabled{opacity:.4;cursor:not-allowed}.sol-btn__short{display:none}button.sol-btn--accent{border-color:var(--gold);color:#f7e7b4}button.sol-btn--cta{background:var(--gold);border-color:var(--gold);color:#1a1408;min-height:52px;padding:14px 28px;font-size:15px;font-weight:800}.sol-main{width:min(100%,920px);padding:16px max(12px, env(safe-area-inset-right)) max(36px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));min-width:0;margin:0 auto}.sol-main--menu{max-width:560px}.sol-eyebrow{color:var(--gold);letter-spacing:.18em;margin:0 0 8px;font-size:10px;font-weight:800}.sol-main h1{color:var(--paper);letter-spacing:-.03em;word-break:keep-all;margin:0;font:800 clamp(32px,6vw,48px)/1.05 Georgia,Times New Roman,serif}.sol-lead{color:#d5e6dc;word-break:keep-all;overflow-wrap:anywhere;max-width:46ch;margin:14px 0 22px;font-size:15px;line-height:1.65}.sol-draw{flex-wrap:wrap;gap:8px;display:flex}.sol-draw__btn{appearance:none;min-height:44px;color:var(--paper);cursor:pointer;background:#0003;border:1px solid #ffffff2e;padding:10px 16px;font:800 13px/1 inherit}.sol-draw__btn.is-active{background:var(--gold);border-color:var(--gold);color:#1a1408}.sol-draw-hint{color:#f4efe3b3;margin:10px 0 22px;font-size:13px;line-height:1.5}.sol-menu-preview{--sol-card-w:min(72px, 18vw);justify-content:flex-start;gap:10px;max-width:100%;margin-top:28px;padding-bottom:8px;display:flex;overflow-x:auto}.sol-menu-preview .sol-card{transform:rotate(-8deg)}.sol-menu-preview .sol-card:nth-child(2){transform:rotate(4deg)translateY(-8px)}.sol-menu-preview .sol-card:nth-child(3){transform:rotate(-2deg)}.sol-menu-preview .sol-card:nth-child(4){transform:rotate(10deg)translateY(6px)}.sol-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:10px;display:grid}.sol-stats>div{background:#0003;border:1px solid #ffffff14;flex-direction:column;gap:4px;min-width:0;padding:8px 10px;display:flex}.sol-stats span{color:#f4efe3a6;letter-spacing:.04em;font-size:11px;font-weight:700}.sol-stats strong{color:var(--paper);font-variant-numeric:tabular-nums;font-size:16px}.sol-mode-chip{color:#f4efe3b3;letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:700}.sol-status{color:#d5e6dc;word-break:keep-all;overflow-wrap:anywhere;min-height:2.6em;margin:0 0 12px;font-size:13px;line-height:1.5}.sol-felt{background:radial-gradient(at 50% 30%,#ffffff12,#0000 55%),linear-gradient(#1b7a4e 0%,#0f4a30 100%);border:3px solid #0a2a1e;width:100%;min-width:0;padding:clamp(8px,1.6vw,16px);box-shadow:inset 0 0 0 1px #ffffff14,0 18px 40px #00000047}.sol-felt .sol-card{aspect-ratio:5/7;width:100%;height:auto}.sol-top-row,.sol-tableau{gap:var(--sol-gap);grid-template-columns:repeat(7,minmax(0,1fr));align-items:start;display:grid}.sol-top-row{margin-bottom:clamp(10px,2.4vw,18px)}.sol-spacer{min-width:0}.sol-col{flex-direction:column;align-items:stretch;min-width:0;display:flex}.sol-col.is-hint .sol-card--slot,.sol-pile.is-hint .sol-card,.sol-pile--stock.is-hint .sol-card{box-shadow:0 0 0 2px var(--gold), 0 6px 14px #00000047}.sol-col.is-reject .sol-card,.sol-col.is-reject .sol-card--slot,.sol-pile.is-reject .sol-card,.sol-pile.is-reject .sol-card--slot{animation:.28s sol-reject-shake}button.sol-pile,.sol-pile{appearance:none;width:100%;min-width:0;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;justify-items:center;gap:4px;padding:0;display:grid}button.sol-pile:disabled{cursor:default}.sol-pile__label{color:#f4efe3b3;letter-spacing:.06em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;font-weight:700;overflow:hidden}.sol-waste-wrap{min-width:0}.sol-waste{align-items:flex-start;min-width:0;display:flex}.sol-waste__item{cursor:pointer;touch-action:manipulation;background:0 0;border:0;flex:0 0 100%;width:100%;padding:0}.sol-waste__item:not(:first-child){margin-left:var(--sol-waste-fan)}.sol-waste__item--top{z-index:2}.sol-stack-card{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:0 0;border:0;width:100%;padding:0;line-height:0;display:block}.sol-stack-card:active{cursor:grabbing}.sol-waste__item--top{touch-action:none;cursor:grab}.sol-waste__item--top:active{cursor:grabbing}.sol-stack-card.is-dragging-source,.sol-waste__item--top.is-dragging-source,.sol-pile.is-dragging-source{opacity:.28;pointer-events:none}.sol-stack-card.is-dragging-source .sol-card,.sol-waste__item--top.is-dragging-source .sol-card,.sol-pile.is-dragging-source .sol-card{box-shadow:none;transform:none}.sol-stack-card.is-over-down{margin-top:calc(var(--sol-peek-down) - 100%)}.sol-stack-card.is-over-up{margin-top:calc(var(--sol-peek-up) - 100%)}.sol-card{width:var(--sol-card-w);height:calc(var(--sol-card-w) * 1.4);color:#1a1a1a;-webkit-user-select:none;user-select:none;background:linear-gradient(165deg,#fffef9,#ebe6dc);border-radius:clamp(4px,1.2vw,8px);max-width:100%;position:relative;box-shadow:0 5px 12px #00000047,inset 0 0 0 1px #00000014}.sol-card--red{color:#c0392b}.sol-card--black{color:#1a1a1a}.sol-card--back{background:repeating-linear-gradient(135deg,#163d2f 0 6px,#1f5642 6px 12px);border:2px solid #d6a646}.sol-card__pattern{border:1px solid #d6a64673;border-radius:3px;position:absolute;inset:5px}.sol-card--slot{box-shadow:none;background:#0000002e;border:1px dashed #ffffff38;place-items:center;display:grid}.sol-card__ghost{color:#ffffff47;font-size:clamp(14px,5vw,28px);line-height:1}.sol-card__ghost.is-red{color:#c0392b59}.sol-card__corner{justify-items:center;gap:0;font:800 10px/1 Georgia,serif;display:grid;position:absolute}.sol-card__corner b{font-size:clamp(9px,2.4vw,13px)}.sol-card__corner i{font-size:clamp(8px,2vw,11px);font-style:normal}.sol-card__corner--tl{top:3px;left:4px}.sol-card__corner--br{bottom:3px;right:4px;transform:rotate(180deg)}.sol-card__pip{place-items:center;font-size:clamp(14px,4.4vw,28px);line-height:1;display:grid;position:absolute;inset:0}.sol-card.is-selected{transform:translateY(-3px);box-shadow:0 0 0 2px #f4e27a,0 8px 16px #00000059}.sol-card.is-hint{box-shadow:0 0 0 2px var(--gold), 0 8px 16px #0000004d}.sol-card.is-dim{filter:saturate(.85)}.sol-card.is-flipping{animation:.32s sol-card-flip}.sol-felt.is-dragging,.sol-felt.is-busy{touch-action:none}.sol-col.is-drop-hover .sol-card--slot,.sol-pile.is-drop-hover .sol-card,.sol-pile.is-drop-hover .sol-card--slot{box-shadow:0 0 0 2px var(--gold), 0 6px 14px #00000047}.sol-drag-ghost{z-index:300;pointer-events:none;filter:drop-shadow(0 14px 28px #00000073);will-change:left, top;position:fixed;transform:translate(-50%,-18%)}.sol-drag-ghost.is-flying{transition:left .16s cubic-bezier(.2,.8,.2,1),top .16s cubic-bezier(.2,.8,.2,1)}.sol-run-ghost{width:min(72px,18vw);position:relative}.sol-run-ghost__card{width:100%}.sol-run-ghost__card:not(:first-child){margin-top:calc(var(--sol-peek-up) - 100%)}.sol-run-ghost .sol-card{aspect-ratio:5/7;width:100%;height:auto}body.sol-body-dragging{touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden}@keyframes sol-card-flip{0%{opacity:.55;transform:scaleX(.15)rotateY(-70deg)}55%{opacity:1;transform:scaleX(1.04)rotateY(8deg)}to{transform:none}}@keyframes sol-reject-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.sol-win{inset:auto 12px max(16px, env(safe-area-inset-bottom));z-index:40;width:min(420px,100% - 24px);color:var(--paper);text-align:center;word-break:keep-all;background:#0c1c16f0;border:1px solid #d6a64673;gap:8px;margin:0 auto;padding:18px 16px;display:grid;position:fixed;left:50%;transform:translate(-50%)}.sol-win strong{color:var(--gold);font:800 22px/1.2 Georgia,Times New Roman,serif}.sol-win p{color:#d5e6dc;margin:0;font-size:14px}.sol-win__actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:8px;display:flex}.sol-rules-modal{max-width:min(720px,100%)}.sol-rules-modal .rules-grid p{color:#4d5a56;font-size:13px;line-height:1.55}.sol-rules-modal .rules-grid h3{font-size:14px}.sol-rules-modal .legal-box p{font-size:13px;line-height:1.55}:is(.site-shell:has(.is-sol-play) .site-footer,.site-shell:has(.is-sol-play) .content-guide){display:none}.sol-app.is-sol-play{min-height:100dvh;max-height:100dvh;overflow:hidden}.sol-app.is-sol-play .sol-topbar{flex:none}.sol-app.is-sol-play .sol-main--play{width:min(100%,920px);min-height:0;padding-bottom:max(12px, env(safe-area-inset-bottom));flex-direction:column;flex:auto;display:flex;overflow:hidden}.sol-app.is-sol-play .sol-felt{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.sol-app.is-sol-play .sol-top-row{flex:none}.sol-app.is-sol-play .sol-tableau{flex:auto;align-items:stretch;min-height:0;max-height:none;overflow:hidden}.sol-app.is-sol-play .sol-col{-webkit-overflow-scrolling:touch;scrollbar-width:thin;justify-content:flex-end;min-height:0;max-height:100%;overflow:hidden auto}.sol-status__short{display:none}@media (max-width:640px){.sol-rules-modal{padding:22px 16px}.sol-rules-modal .rules-grid{grid-template-columns:1fr}}@media (max-width:760px){.sol-brand small{display:none}.sol-brand strong{font-size:15px}.sol-btn{min-height:40px;padding:8px 9px;font-size:11px}.sol-btn__full{display:none}.sol-btn__short{display:inline}.sol-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.sol-pile__label{display:none}.sol-felt{padding:8px 6px 12px}.sol-menu-preview{--sol-card-w:min(56px, 20vw)}.sol-app{--sol-waste-fan:-46%}.sol-main--play{max-height:none;padding-bottom:max(12px, env(safe-area-inset-bottom))}.sol-status__full{display:none}.sol-status__short{display:inline}.sol-status{min-height:0;margin-bottom:8px;font-size:12px}.sol-topbar{gap:6px 10px;padding-top:8px;padding-bottom:6px}.sol-toolbar{gap:4px}}@media (max-width:420px){.sol-app{--sol-peek-down:10px;--sol-peek-up:22px;--sol-waste-fan:-40%}.sol-card__corner--br{display:none}.sol-card__pip{font-size:clamp(12px,5.5vw,18px)}.sol-toolbar{gap:4px}.sol-btn{min-height:38px;padding:7px 8px;font-size:11px}.sol-app.is-sol-play .sol-topbar__end{flex:100%;justify-content:flex-start}.sol-app.is-sol-play .sol-toolbar{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;max-width:100%;overflow-x:auto}.sol-app.is-sol-play .sol-toolbar::-webkit-scrollbar{display:none}.sol-app.is-sol-play .sol-btn{white-space:nowrap;flex:none}}@media (pointer:coarse){.sol-app{--sol-peek-up:max(26px, 5.4vw)}}@media (max-height:700px) and (orientation:landscape){.sol-app{--sol-peek-down:8px;--sol-peek-up:16px}.sol-app.is-sol-play .sol-topbar{min-height:0;padding-top:4px;padding-bottom:4px}.sol-brand strong{font-size:14px}.sol-btn{min-height:34px;padding:5px 8px;font-size:11px}.sol-btn__full{display:none}.sol-btn__short{display:inline}.sol-main{padding-top:4px;padding-bottom:6px}.sol-stats{gap:4px;margin-bottom:4px}.sol-stats>div{flex-direction:row;justify-content:space-between;align-items:baseline;gap:8px;padding:4px 8px}.sol-stats span{font-size:10px}.sol-stats strong{font-size:13px}.sol-status,.sol-mode-chip{display:none}.sol-felt{padding:4px 6px 6px}.sol-top-row{margin-bottom:6px}.sol-pile__label{display:none}.sol-app.is-sol-play .sol-tableau{max-height:none}}@media (prefers-reduced-motion:reduce){.sol-card.is-selected{transform:none}.sol-card.is-flipping,.sol-col.is-reject .sol-card,.sol-pile.is-reject .sol-card,.sol-drag-ghost.is-flying{transition:none!important;animation:none!important}}.oc-app{--oc-felt:#1a3d5c;--oc-felt-deep:#0f2840;--oc-ink:#f4f1ea;--oc-muted:#f4f1eab8;--oc-accent:#ffd54f;background:radial-gradient(ellipse 80% 50% at 50% 0%, #ffd54f14, transparent), linear-gradient(165deg, var(--oc-felt) 0%, var(--oc-felt-deep) 100%);min-height:100dvh;color:var(--oc-ink);flex-direction:column;display:flex}.oc-topbar{padding:10px 16px;padding-top:max(10px, env(safe-area-inset-top));border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;gap:12px;display:flex}.oc-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.oc-brand strong{letter-spacing:-.03em;font-size:17px;display:block}.oc-brand small{color:var(--oc-muted);letter-spacing:.06em;text-transform:uppercase;font-size:11px;display:block}.oc-topbar__actions{flex-wrap:wrap;gap:8px;display:flex}.oc-main{flex-direction:column;flex:1;min-width:0;padding:16px;display:flex}.oc-main--menu{text-align:center;justify-content:center;align-items:center;gap:24px;padding-bottom:32px}.oc-eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--oc-accent);margin:0 0 8px;font-size:11px}.oc-hero h1{letter-spacing:-.04em;margin:0 0 12px;font-size:clamp(2rem,8vw,2.75rem)}.oc-lead{max-width:36ch;color:var(--oc-muted);margin:0 auto 20px;font-size:15px;line-height:1.55}.oc-diff{flex-wrap:wrap;justify-content:center;gap:8px;margin-bottom:18px;display:flex}.oc-diff__btn,button.oc-diff__btn{color:var(--oc-ink);cursor:pointer;background:#0003;border:1px solid #fff3;border-radius:999px;padding:8px 16px;font-size:14px}.oc-diff__btn.is-active{background:var(--oc-accent);color:#1a1a1a;border-color:#0000;font-weight:600}.oc-btn,button.oc-btn{color:var(--oc-ink);cursor:pointer;background:#00000040;border:1px solid #ffffff2e;border-radius:10px;min-height:44px;padding:10px 16px;font-size:14px}.oc-btn:disabled{opacity:.4;cursor:not-allowed}.oc-btn--primary{background:var(--oc-accent);color:#1a1a1a;border-color:#0000;font-weight:600}.oc-btn--ghost{background:0 0}.oc-btn--cta{min-width:160px}.oc-btn--call{letter-spacing:.02em;background:#c62828;border-color:#ef5350;font-weight:700}.oc-btn--call.is-urgent{animation:.9s ease-in-out infinite oc-pulse;box-shadow:0 0 0 3px #ef535059}@keyframes oc-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.oc-menu-preview{opacity:.85;flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.oc-menu-preview .oc-card{transform:rotate(-6deg)}.oc-menu-preview .oc-card:nth-child(2){transform:rotate(4deg)translateY(-8px)}.oc-menu-preview .oc-card:nth-child(3){transform:rotate(-2deg)}.oc-menu-preview .oc-card:nth-child(4){transform:rotate(8deg)translateY(6px)}.oc-card{--oc-w:72px;--oc-h:108px;width:var(--oc-w);height:var(--oc-h);border-radius:8px;flex-shrink:0;position:relative;box-shadow:0 2px 8px #00000059,inset 0 0 0 1px #00000014}.oc-card--sm{--oc-w:42px;--oc-h:62px;border-radius:5px}.oc-card--face{background:#faf8f5}.oc-card--red{color:#c62828}.oc-card--black{color:#1a1a1a}.oc-card__corner{line-height:1;font-size:calc(var(--oc-w) * .18);flex-direction:column;align-items:center;font-weight:700;display:flex;position:absolute}.oc-card__corner em{font-style:normal;font-size:calc(var(--oc-w) * .22)}.oc-card__corner--tl{top:5px;left:6px}.oc-card__corner--br{bottom:5px;right:6px;transform:rotate(180deg)}.oc-card--sm .oc-card__corner{font-size:9px;top:3px;left:4px}.oc-card--sm .oc-card__corner em{font-size:11px}.oc-card--sm .oc-card__corner--br{inset:auto 4px 3px auto}.oc-card__center{font-size:calc(var(--oc-w) * .38);place-items:center;display:grid;position:absolute;inset:0}.oc-card--sm .oc-card__center{font-size:18px}.oc-card--back{background:linear-gradient(135deg,#1565c0 0%,#0d47a1 50%,#1565c0 100%);border:2px solid #ffffff26}.oc-card__back-mark{font-size:calc(var(--oc-w) * .42);color:#ffffffe6;place-items:center;font-style:italic;font-weight:800;display:grid;position:absolute;inset:0}.oc-card--sm .oc-card__back-mark{font-size:18px}.oc-card__stack-n{color:#fff;background:#00000073;border-radius:4px;padding:1px 5px;font-size:11px;font-weight:700;position:absolute;bottom:4px;right:6px}.oc-main--play{min-height:0;padding-top:0;overflow:hidden auto}.oc-table{flex:1;grid-template-rows:auto minmax(0,1fr) auto auto;gap:10px;width:100%;max-width:1100px;min-height:0;margin:0 auto;display:grid}.oc-table__mid{grid-template-columns:minmax(72px,140px) minmax(0,1fr) minmax(72px,140px);align-items:center;gap:8px;min-width:0;min-height:0;display:grid}.oc-seat{text-align:center;min-width:0;color:inherit;font:inherit;background:#0000002e;border:1px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:6px;padding:8px;display:flex}button.oc-seat{cursor:default;appearance:none;width:100%}button.oc-seat.is-tappable{cursor:pointer;background:#c6282840;border-color:#ef5350;animation:.9s ease-in-out infinite oc-pulse}.oc-seat.is-active{border-color:var(--oc-accent);box-shadow:0 0 0 1px #ffd54f4d}.oc-seat--top{grid-column:1/-1;width:100%;max-width:min(280px,100%);margin:0 auto}.oc-seat--left{justify-self:start;width:100%;max-width:140px}.oc-seat--right{justify-self:end;width:100%;max-width:140px}.oc-seat__meta{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:6px;font-size:13px;display:flex}.oc-seat__meta strong{font-size:14px}.oc-seat__meta span{color:var(--oc-muted)}.oc-seat__call{color:var(--oc-accent);font-size:12px;font-style:normal;font-weight:700}.oc-seat__tap-hint{color:#ef5350;font-size:12px;font-style:normal;font-weight:700}.oc-seat__cards{justify-content:center;align-items:center;max-width:100%;min-height:62px;display:flex;position:relative;overflow:hidden}.oc-seat__card-wrap{margin-left:calc(var(--i,0) * -22px);flex-shrink:0}.oc-seat__card-wrap:first-child{margin-left:0}.oc-seat--left .oc-seat__cards,.oc-seat--right .oc-seat__cards{flex-direction:column}.oc-seat--left .oc-seat__card-wrap,.oc-seat--right .oc-seat__card-wrap{margin-left:0;margin-top:calc(var(--i,0) * -36px)}.oc-seat--left .oc-seat__card-wrap:first-child,.oc-seat--right .oc-seat__card-wrap:first-child{margin-top:0}.oc-seat__more{color:var(--oc-muted);flex-shrink:0;margin-left:6px;font-size:12px;font-weight:700}.oc-center{flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(12px,4vw,32px);min-height:clamp(120px,28vw,150px);display:flex}.oc-pile{cursor:default;color:inherit;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;min-width:44px;min-height:44px;padding:4px;display:flex}button.oc-pile--deck{cursor:pointer}button.oc-pile--deck:disabled{cursor:not-allowed;opacity:.65}.oc-pile--discard{cursor:default;position:relative}.oc-pile.is-flash .oc-card{animation:.38s cubic-bezier(.22,1,.36,1) oc-card-arrive}.oc-pile--deck.is-flash .oc-card{animation:.32s ease-out oc-deck-pulse}@keyframes oc-card-arrive{0%{opacity:.35;transform:translateY(-18px)scale(.92)}to{opacity:1;transform:none}}@keyframes oc-deck-pulse{0%{transform:scale(1)}40%{transform:scale(.94)translateY(4px)}to{transform:scale(1)}}.oc-pile__label{color:var(--oc-muted);text-align:center;word-break:keep-all;max-width:min(100px,28vw);font-size:11px;font-weight:600;line-height:1.35}.oc-suit-dot{border:2px solid #ffffff80;border-radius:50%;width:14px;height:14px;position:absolute;top:-4px;right:-4px}.oc-suit-dot--hearts,.oc-suit-dot--diamonds{background:#c62828}.oc-suit-dot--clubs,.oc-suit-dot--spades{background:#1a1a1a}.oc-status{text-align:center;word-break:keep-all;flex-direction:column;flex-shrink:0;gap:4px;min-height:44px;padding:4px 8px;font-size:clamp(13px,3.5vw,15px);display:flex}.oc-status--warn{color:#ef5350;font-weight:600}.oc-status__log{color:var(--oc-muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 4px;font-size:12px;overflow:hidden}.oc-hand-bar{min-width:0;padding-bottom:max(8px, env(safe-area-inset-bottom));flex-direction:column;flex-shrink:0;gap:10px;display:flex}.oc-hand-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.oc-hand{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;overscroll-behavior-x:contain;gap:8px;margin-top:-8px;padding:22px 4px 16px;display:flex;overflow:auto visible}.oc-hand__item{flex-shrink:0}.oc-hand__card{cursor:pointer;scroll-snap-align:center;opacity:.55;background:0 0;border:none;flex-shrink:0;min-width:44px;min-height:44px;padding:0;transition:transform .15s,opacity .15s}.oc-hand__card:disabled{cursor:default}.oc-hand__card.is-playable{opacity:1;filter:drop-shadow(0 8px 12px #00000059);transform:translateY(-10px)}.oc-hand__card.is-playable:hover,.oc-hand__card.is-playable:focus-visible{outline:none;transform:translateY(-16px)scale(1.04)}.oc-hand__card.is-drawn{outline:2px solid var(--oc-accent);outline-offset:3px;border-radius:12px}.oc-hand .oc-card{--oc-w:clamp(64px, 18vw, 84px);--oc-h:clamp(96px, 27vw, 126px)}.oc-modal-backdrop{z-index:80;background:#081018b8;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.oc-modal{background:#1e3350;border:1px solid #ffffff1f;border-radius:16px;width:100%;max-width:520px;max-height:90dvh;padding:24px;position:relative;overflow-y:auto}.oc-modal__close{width:36px;height:36px;color:inherit;cursor:pointer;background:#ffffff1a;border:none;border-radius:8px;font-size:22px;position:absolute;top:12px;right:12px}.oc-modal h2{margin:0 0 16px;font-size:1.35rem}.oc-rules-grid{gap:14px;display:grid}.oc-rules-grid article{background:#0003;border-radius:10px;padding:12px}.oc-rules-grid span{color:var(--oc-accent);font-size:11px;font-weight:700}.oc-rules-grid h3{margin:4px 0 6px;font-size:15px}.oc-rules-grid p{color:var(--oc-muted);margin:0;font-size:14px;line-height:1.5}.oc-suit-pick{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.oc-suit-call{width:100%;margin-bottom:14px}.oc-suit-pick__btn{color:inherit;cursor:pointer;background:#00000040;border:2px solid #ffffff26;border-radius:12px;flex-direction:column;align-items:center;gap:6px;min-height:72px;padding:16px;font-size:14px;display:flex}.oc-suit-pick__btn span{font-size:28px}.oc-suit-pick__btn--hearts,.oc-suit-pick__btn--diamonds{color:#ef5350}.oc-suit-pick__btn:hover,.oc-suit-pick__btn:focus-visible{border-color:var(--oc-accent);outline:none}.oc-toast{bottom:max(112px, calc(env(safe-area-inset-bottom) + 96px));z-index:90;color:#fff;pointer-events:none;text-align:center;word-break:keep-all;background:#000000d9;border-radius:999px;max-width:min(90vw,420px);padding:10px 20px;font-size:14px;animation:.25s ease-out oc-toast-in;position:fixed;left:50%;transform:translate(-50%)}@keyframes oc-toast-in{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.oc-flash{z-index:85;background:#081018e0;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:fixed;inset:0}.oc-flash strong{font-size:clamp(1.5rem,6vw,2.25rem)}@media (max-width:820px){.oc-main{padding:12px}.oc-table__mid{grid-template-columns:minmax(64px,100px) minmax(0,1fr) minmax(64px,100px)}.oc-seat--left .oc-seat__card-wrap,.oc-seat--right .oc-seat__card-wrap{margin-top:calc(var(--i,0) * -28px)}}@media (max-width:560px){.oc-brand small{display:none}.oc-brand strong{font-size:15px}.oc-btn{padding:8px 12px;font-size:13px}.oc-table{grid-template-rows:auto auto minmax(0,1fr) auto auto;gap:8px}.oc-table__mid{grid-template-rows:auto auto;grid-template-columns:1fr 1fr;gap:6px}.oc-center{order:-1;grid-column:1/-1;min-height:110px}.oc-seat--left,.oc-seat--right{text-align:left;flex-direction:row;justify-content:space-between;align-items:center;max-width:none}.oc-seat--left .oc-seat__meta,.oc-seat--right .oc-seat__meta{justify-content:flex-start}.oc-seat--left .oc-seat__cards,.oc-seat--right .oc-seat__cards{flex-direction:row;min-height:0;overflow:visible}.oc-seat--left .oc-seat__card-wrap,.oc-seat--right .oc-seat__card-wrap{margin-top:0;margin-left:calc(var(--i,0) * -18px)}.oc-seat--left .oc-seat__card-wrap:first-child,.oc-seat--right .oc-seat__card-wrap:first-child{margin-left:0}.oc-seat--top .oc-seat__card-wrap{margin-left:calc(var(--i,0) * -18px)}.oc-pile__label{max-width:72px;font-size:10px}.oc-hand .oc-card{--oc-w:clamp(58px, 20vw, 72px);--oc-h:clamp(88px, 30vw, 108px)}.oc-hand{padding-top:18px;padding-bottom:12px}}@media (max-width:420px){.oc-card__corner--br{display:none}.oc-topbar{padding:8px 10px;padding-top:max(8px, env(safe-area-inset-top))}.oc-topbar__actions .oc-btn--ghost{padding:8px 10px}.oc-btn--sound{font-size:12px}}@media (max-height:700px) and (orientation:landscape){.oc-main--play{padding:6px 12px}.oc-center{gap:12px;min-height:96px}.oc-hand .oc-card{--oc-w:clamp(52px, 14vh, 68px);--oc-h:clamp(78px, 21vh, 102px)}.oc-hand{padding-top:14px;padding-bottom:8px}.oc-status{min-height:36px;font-size:13px}.oc-seat__cards{min-height:48px}.oc-seat--left .oc-seat__card-wrap,.oc-seat--right .oc-seat__card-wrap{margin-top:calc(var(--i,0) * -24px)}.oc-toast{bottom:max(88px, calc(env(safe-area-inset-bottom) + 72px))}}@media (max-height:720px) and (orientation:portrait){.oc-main--play{padding:8px 10px}.oc-table{gap:6px}.oc-center{min-height:96px}.oc-seat__cards{min-height:48px}.oc-hand .oc-card{--oc-w:clamp(52px, 16vw, 68px);--oc-h:clamp(78px, 24vw, 102px)}.oc-hand{padding-top:14px;padding-bottom:8px}.oc-status{min-height:32px;font-size:12px}.oc-toast{bottom:max(100px, calc(env(safe-area-inset-bottom) + 84px))}}@media (prefers-reduced-motion:reduce){.oc-btn--call.is-urgent,button.oc-seat.is-tappable{animation:none}.oc-hand__card.is-playable{transform:none}.oc-pile.is-flash .oc-card,.oc-pile--deck.is-flash .oc-card,.oc-toast{animation:none}}.rk-app{min-height:100dvh;color:var(--paper);background:linear-gradient(165deg,#0f1a12 0%,#1a2e1f 45%,#0d1410 100%)}.rk-app--play{flex-direction:column;height:100%;min-height:0;display:flex;overflow:hidden}.site-shell:has(.rk-app--play) .rk-app--play{flex:auto;height:100%;min-height:0;overflow:hidden}body.rk-body-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none;touch-action:none}body.rk-body-dragging .rk-tile{cursor:grabbing}.rk-topbar{padding:12px 16px;padding-top:max(12px, env(safe-area-inset-top,0px));padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;display:flex}.rk-topbar__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rk-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:flex}.rk-brand strong{letter-spacing:-.03em;font-size:17px;display:block}.rk-brand small{color:var(--muted);letter-spacing:.22em;margin-top:2px;font-size:9px;display:block}.rk-main{width:100%;max-width:960px;margin:0 auto;padding:20px 16px 32px}.rk-main--play{max-width:none;min-height:0;padding:8px 12px 0;padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(12px, env(safe-area-inset-right,0px));flex-direction:column;flex:1;margin:0;display:flex}.rk-main--menu h1,.rk-main--setup h1,.rk-main--lobby h1{margin:8px 0 12px;font-size:clamp(1.6rem,5vw,2.2rem)}.rk-eyebrow{color:#7cb87a;letter-spacing:.18em;text-transform:uppercase;font-size:11px}.rk-lead{color:var(--muted);max-width:52ch;margin-bottom:12px;line-height:1.55}.rk-tm-note{color:var(--muted);opacity:.9;max-width:56ch;margin:0 0 20px;font-size:12px;line-height:1.5}.rk-btn{color:var(--paper);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff29;border-radius:10px;min-height:44px;padding:10px 14px;font-size:14px}.rk-btn:disabled{opacity:.45;cursor:not-allowed}.rk-btn--primary{color:#fff;background:#2f9e44;border-color:#2f9e44}.rk-btn--ghost{background:0 0}.rk-btn--mini{border-radius:8px;min-height:36px;padding:6px 10px;font-size:12px}.rk-btn--mini.is-active{background:#2f9e4459;border-color:#2f9e44}.rk-menu-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-bottom:20px;display:grid}.rk-menu-card{text-align:left;color:inherit;cursor:pointer;background:#00000038;border:1px solid #ffffff1f;border-radius:14px;min-height:88px;padding:18px}.rk-menu-card strong{margin-bottom:6px;font-size:18px;display:block}.rk-menu-card span{color:var(--muted);font-size:13px}.rk-menu-tags{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rk-menu-tags li{color:#fff;border-radius:999px;padding:6px 12px;font-size:12px}.rk-menu-tags__joker{background:linear-gradient(135deg,#7048e8,#e03131)}.rk-choice{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.rk-choice>span{min-width:48px;color:var(--muted);font-size:14px}.rk-choice__btn{color:var(--paper);cursor:pointer;background:0 0;border:1px solid #ffffff24;border-radius:999px;min-height:40px;padding:8px 14px}.rk-choice__btn.is-active{background:#2f9e44;border-color:#2f9e44}.rk-tile{cursor:grab;touch-action:none;border:2px solid #ffffffd9;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:58px;padding:0;font-size:18px;font-weight:700;transition:transform .18s,box-shadow .18s,opacity .15s,outline-color .15s;display:flex;position:relative}.rk-rack .rk-tile{touch-action:pan-x}.rk-tile:active{cursor:grabbing}.rk-tile.is-dragging-source{opacity:.35;transform:scale(.94)}.rk-tile--sm{width:36px;height:48px;font-size:15px}.rk-tile--face{background:var(--rk-face,linear-gradient(145deg, #7048e8, #9775fa));color:#fff}.rk-tile--joker{color:#fff;background:linear-gradient(145deg,#7048e8 0%,#e03131 100%)}.rk-tile.is-selected{outline-offset:2px;outline:3px solid #ffd43b;transform:translateY(-4px)}.rk-tile.is-just-placed{animation:.34s cubic-bezier(.22,.82,.28,1) rk-place-pop}.rk-tile.is-recent-play{outline-offset:2px;z-index:1;outline:3px solid #ffd43b;animation:1.1s ease-in-out 4 rk-recent-pulse;box-shadow:0 0 0 2px #ffd43b47,0 0 14px #ffd43b8c}.rk-meld.is-recent-play{background:#ffd43b1f;box-shadow:inset 0 0 0 1px #ffd43b73}@keyframes rk-place-pop{0%{opacity:.55;transform:scale(.82)translateY(-10px)}55%{opacity:1;transform:scale(1.06)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes rk-recent-pulse{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.rk-tile--back{background:repeating-linear-gradient(45deg,#1e3a2a,#1e3a2a 6px,#264d35 6px 12px);border-color:#fff3}.rk-tile__back-mark{letter-spacing:.08em;opacity:.7;font-size:10px}.rk-tile__stack{font-size:9px;position:absolute;bottom:2px;right:4px}.rk-opponents{flex-shrink:0;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-bottom:8px;display:grid}.rk-table-scroll{-webkit-overflow-scrolling:touch;flex:1;width:100%;min-width:0;min-height:0;margin-bottom:8px;padding-right:2px;overflow:hidden auto}.rk-turn-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.rk-seat{background:#0000002e;border:1px solid #ffffff1a;border-radius:12px;padding:10px}.rk-seat.is-active{border-color:#ffd43b;box-shadow:inset 0 0 0 1px #ffd43b}.rk-seat strong{margin-right:6px}.rk-seat span{color:var(--muted);font-size:13px}.rk-seat em{color:#7cb87a;margin-left:6px;font-size:11px;font-style:normal}.rk-seat__tiles{flex-wrap:wrap;align-items:center;gap:2px;margin-top:8px;display:flex}.rk-table-wrap{box-sizing:border-box;background:#2f9e441f;border:1px solid #2f9e4459;border-radius:16px;width:100%;min-width:0;max-width:100%;min-height:100px;padding:8px}.rk-turn{color:#d8f3dc;flex:1;min-width:0;margin:0;font-size:14px;line-height:1.35}.rk-table{box-sizing:border-box;grid-template-columns:repeat(auto-fill,minmax(min(100%,10.5rem),1fr));align-items:start;gap:6px 8px;width:100%;max-width:100%;display:grid}.rk-table__empty{color:var(--muted);grid-column:1/-1;margin:0;font-size:14px}.rk-meld-row{flex-direction:column;gap:2px;min-width:0;max-width:100%;display:flex}.rk-meld{box-sizing:border-box;background:#00000026;border-radius:8px;flex-wrap:wrap;align-items:center;gap:2px;width:max-content;max-width:100%;padding:3px 4px;transition:background .15s,outline-color .15s,box-shadow .15s;display:flex}.rk-table .rk-tile--sm{border-radius:6px;width:32px;height:42px;font-size:13px}.rk-meld__slot{align-items:center;gap:1px;display:inline-flex}.rk-insert-caret{background:#8ce99a;border-radius:2px;flex-shrink:0;width:3px;height:34px;box-shadow:0 0 8px #8ce99ab3}.rk-meld.is-drop-target,.rk-drop-new.is-drop-target,.rk-rack-dock.is-drop-target{background:#2f9e4447;outline:2px solid #8ce99a;box-shadow:inset 0 0 0 1px #8ce99a59}.rk-meld.is-invalid{outline:2px dashed #e03131}.rk-meld__warn{color:#ffb3b3;padding-left:4px;font-size:11px}.rk-drop-new{text-align:center;color:var(--muted);border:2px dashed #ffffff38;border-radius:10px;grid-column:1/-1;justify-content:center;align-items:center;min-height:40px;padding:8px 10px;font-size:12px;transition:background .15s,outline-color .15s;display:flex}.rk-opening{color:#ffb3b3;margin:10px 0 0;font-size:13px}.rk-opening.is-ok{color:#8ce99a}.rk-opening--warn{color:#ffd43b;margin-top:6px}.rk-rack-wrap{border-top:1px solid #ffffff1a;padding-top:14px}.rk-rack-dock{padding:10px 4px max(8px, env(safe-area-inset-bottom,0px), var(--app-chrome-bottom,0px));background:#080e0aeb;border-top:1px solid #ffffff1f;border-radius:14px 14px 0 0;flex-shrink:0;transition:background .15s,outline-color .15s}.rk-main--play:has(.rk-actions-dock) .rk-rack-dock{padding-bottom:8px}.rk-rack-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:0 4px;display:flex}.rk-rack-meta__left{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.rk-opened-tag{color:#7cb87a;border:1px solid #7cb87a73;border-radius:999px;padding:2px 8px;font-size:11px;font-style:normal}.rk-rack-sort{flex-wrap:wrap;gap:6px;display:flex}.rk-rack{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;scrollbar-width:thin;gap:6px;padding:4px 4px 8px;display:flex;overflow-x:auto}.rk-rack .rk-tile{scroll-snap-align:start}.rk-actions-dock{padding:8px 0 max(8px, env(safe-area-inset-bottom,0px), var(--app-chrome-bottom,0px));background:linear-gradient(#0000,#0d1410fa 24%);flex-shrink:0}.rk-actions{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.rk-actions .rk-btn--primary{grid-column:span 1}.rk-drag-ghost{z-index:200;pointer-events:none;filter:drop-shadow(0 8px 16px #00000073);will-change:left, top;align-items:flex-end;gap:3px;transition:filter .15s;display:flex;position:fixed;transform:translate(-50%,-60%)}.rk-drag-ghost__more{color:#fff;background:#000000bf;border-radius:999px;margin-left:2px;padding:2px 6px;font-size:11px}.rk-pool{color:var(--muted);font-size:13px}.rk-log{color:var(--muted);margin-top:16px;font-size:12px}.rk-log ul{margin:8px 0 0;padding-left:18px}.rk-modal-backdrop{z-index:100;background:#000000b8;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.rk-modal{background:#152018;border:1px solid #ffffff1f;border-radius:16px;width:100%;max-width:520px;max-height:85dvh;padding:24px;position:relative;overflow:auto}.rk-modal__close{color:var(--muted);cursor:pointer;background:0 0;border:none;min-width:44px;min-height:44px;font-size:24px;position:absolute;top:12px;right:12px}.rk-rules article{margin-bottom:14px}.rk-rules h3{margin:0 0 4px;font-size:15px}.rk-rules p{color:var(--muted);margin:0;font-size:14px;line-height:1.5}.rk-toast{bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:90;color:#fff;text-align:center;pointer-events:none;background:#000000e0;border-radius:999px;max-width:min(92vw,420px);padding:10px 18px;font-size:14px;position:fixed;left:50%;transform:translate(-50%)}.rk-flash{z-index:85;background:#081018e0;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:24px;display:flex;position:fixed;inset:0}.rk-flash strong{font-size:clamp(1.5rem,6vw,2.25rem)}.rk-flash__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.rk-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.rk-field input{color:var(--paper);background:#00000040;border:1px solid #ffffff24;border-radius:10px;min-height:44px;padding:10px 12px}.rk-lobby-actions{flex-wrap:wrap;gap:8px;margin-bottom:20px;display:flex}.rk-room-panel{background:#0003;border:1px solid #ffffff1f;border-radius:14px;margin-bottom:20px;padding:16px}.rk-room-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.rk-room-list li{background:#0000002e;border:1px solid #ffffff14;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.rk-room-list span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.rk-error{color:#ff8787;font-size:14px}@media (max-width:760px){.rk-brand small{display:none}.rk-topbar{padding:10px 12px;padding-top:max(10px, env(safe-area-inset-top,0px));padding-left:max(12px, env(safe-area-inset-left,0px));padding-right:max(12px, env(safe-area-inset-right,0px));flex-wrap:wrap}.rk-topbar__actions{gap:6px}.rk-tile{width:40px;height:52px;font-size:16px}.rk-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.rk-actions .rk-btn{width:100%;min-height:44px}.rk-actions .rk-btn--primary{order:-1;grid-column:1/-1}.rk-toast{bottom:calc(118px + env(safe-area-inset-bottom,0px))}}@media (max-width:420px){.rk-tile{width:38px;height:50px;font-size:15px}.rk-tile--sm{width:32px;height:42px;font-size:13px}.rk-table .rk-tile--sm{width:28px;height:36px;font-size:12px}.rk-seat__tiles .rk-tile{width:26px;height:34px}.rk-main--play{padding:6px 8px 0}.rk-rack{gap:4px}.rk-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.rk-opponents{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:6px}.rk-seat{padding:8px}.rk-table{grid-template-columns:repeat(auto-fill,minmax(min(100%,9.25rem),1fr));gap:4px 6px}.rk-table-wrap{padding:6px}.rk-insert-caret{height:30px}}@media (max-height:560px) and (orientation:landscape){.rk-app--play .rk-topbar{padding:6px 10px;padding-top:max(6px, env(safe-area-inset-top,0px));padding-left:max(10px, env(safe-area-inset-left,0px));padding-right:max(10px, env(safe-area-inset-right,0px))}.rk-opponents{margin-bottom:4px}.rk-seat__tiles{display:none}.rk-rack-dock{padding-top:6px}.rk-actions-dock{padding-top:4px}.rk-tile{width:34px;height:44px;font-size:14px}.rk-tile--sm{width:28px;height:36px;font-size:12px}.rk-table .rk-tile--sm{width:26px;height:34px;font-size:11px}.rk-table{grid-template-columns:repeat(auto-fill,minmax(min(100%,8.5rem),1fr));gap:4px 6px}.rk-meld{padding:2px 3px}.rk-insert-caret{height:28px}}@media (prefers-reduced-motion:reduce){.rk-tile,.rk-meld,.rk-drop-new,.rk-rack-dock,.rk-drag-ghost,.rk-tile.is-just-placed,.rk-tile.is-recent-play{transition:none;animation:none}}.sudoku-app{--sudoku-ink:#1a2a32;--sudoku-paper:#f3f0e8;--sudoku-line:#9aa8b0;--sudoku-accent:#0d7377;--sudoku-soft:#e4eef0;height:100dvh;min-height:100dvh;max-height:100dvh;color:var(--sudoku-ink);background:radial-gradient(80% 50% at 50% -10%,#0d73772e,#0000 55%),linear-gradient(165deg,#e8f2f3 0%,#f6f3ec 42%,#ebe6dc 100%);flex-direction:column;display:flex;overflow:hidden auto}.sudoku-topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff73;border-bottom:1px solid #1a2a3214;flex-wrap:wrap;flex:none;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px clamp(12px,3vw,24px);display:flex}.sudoku-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.sudoku-brand strong{letter-spacing:-.02em;font-size:15px;display:block}.sudoku-brand small{letter-spacing:.12em;color:var(--sudoku-accent);font-size:11px;display:block}.sudoku-topbar__end{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.sudoku-app .locale-switcher{padding-top:0}.sudoku-app .locale-switcher__select{color:#1a2a32d9;background-color:#ffffffb8;background-image:linear-gradient(45deg,#0000 50%,#1a2a328c 50%),linear-gradient(135deg,#1a2a328c 50%,#0000 50%);border-color:#1a2a322e}.sudoku-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.sudoku-btn{min-height:40px;color:var(--sudoku-ink);cursor:pointer;background:#ffffffbf;border:1px solid #1a2a3224;border-radius:10px;padding:8px 12px;font-size:13px}.sudoku-btn:hover:not(:disabled){border-color:var(--sudoku-accent)}.sudoku-btn:disabled{opacity:.45;cursor:not-allowed}.sudoku-btn.is-active{background:var(--sudoku-accent);border-color:var(--sudoku-accent);color:#fff}.sudoku-btn--ghost{color:#1a2a32b8;background:0 0;border-color:#0000;min-height:36px;padding:6px 10px}.sudoku-btn--ghost:hover:not(:disabled){background:#ffffff8c;border-color:#1a2a3224}.sudoku-btn--ghost.is-active{color:var(--sudoku-accent);background:#0d737729;border-color:#0d737759}.sudoku-menu{flex-direction:column;gap:16px;width:min(640px,100%);margin:0 auto;padding:clamp(24px,5vw,48px) clamp(16px,4vw,28px) 48px;display:flex}.sudoku-eyebrow{letter-spacing:.16em;color:var(--sudoku-accent);margin:0;font-size:12px;font-weight:700}.sudoku-title{letter-spacing:-.03em;margin:0;font-size:clamp(2rem,6vw,3rem);line-height:1.1}.sudoku-lead{color:#1a2a32c7;max-width:40rem;margin:0;font-size:clamp(.95rem,2.5vw,1.05rem);line-height:1.55}.sudoku-daily-card{background:linear-gradient(145deg,#0d73771a,#0000 55%),#ffffffd1;border:1px solid #0d737747;border-radius:16px;margin-top:4px;padding:16px clamp(14px,3vw,18px)}.sudoku-daily-card__top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px 16px;display:flex}.sudoku-daily-card__kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--sudoku-accent);margin:0;font-size:12px;font-weight:700}.sudoku-daily-card__date{letter-spacing:-.02em;margin:4px 0 0;font-size:1.15rem;font-weight:700}.sudoku-daily-card__stats{color:#1a2a32b3;flex-wrap:wrap;gap:6px 10px;margin:0;padding:0;font-size:12px;list-style:none;display:flex}.sudoku-daily-card__stats li{background:#0d73771a;border-radius:999px;padding:4px 8px}.sudoku-daily-card__lead{color:#1a2a32b8;margin:10px 0 0;font-size:13px;line-height:1.45}.sudoku-daily-card__done{color:var(--sudoku-accent);margin:0;font-size:14px;font-weight:600}.sudoku-free{margin-top:4px;padding-top:4px}.sudoku-free__title{margin:0;font-size:1rem;font-weight:700}.sudoku-free__lead{color:#1a2a32a6;margin:4px 0 0;font-size:13px}.sudoku-cta--secondary{background:#1a2a32e0}.sudoku-cta--secondary:hover:not(:disabled){filter:brightness(1.08)}.sudoku-win__note{font-size:12px;margin-top:10px!important}.sudoku-diff{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:8px;display:grid}.sudoku-diff__btn{text-align:left;cursor:pointer;min-height:88px;color:inherit;background:#ffffffb3;border:1px solid #1a2a321f;border-radius:14px;flex-direction:column;gap:6px;padding:14px 12px;display:flex}.sudoku-diff__btn strong{font-size:15px}.sudoku-diff__btn span{color:#1a2a32a6;font-size:12px;line-height:1.4}.sudoku-diff__btn.is-active{border-color:var(--sudoku-accent);background:#fff;box-shadow:0 0 0 2px #0d737733}.sudoku-menu__actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:8px;display:flex}.sudoku-btn--continue{min-height:48px;padding:12px 18px;font-weight:600}.sudoku-btn__short{display:none}.sudoku-btn__full{display:inline}.sudoku-cta{background:var(--sudoku-accent);color:#fff;cursor:pointer;border:none;border-radius:12px;min-height:48px;padding:12px 22px;font-size:15px;font-weight:700}.sudoku-cta:disabled{opacity:.6;cursor:wait}.sudoku-cta:hover:not(:disabled){filter:brightness(1.05)}.sudoku-generating-overlay{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:all;background:#f3f0e88c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.sudoku-generating-overlay p{color:var(--sudoku-ink);background:#fff;border:1px solid #1a2a321f;border-radius:12px;margin:0;padding:14px 22px;font-weight:600}.sudoku-app.is-generating .sudoku-play{pointer-events:none;-webkit-user-select:none;user-select:none}.sudoku-play{width:min(640px,100%);padding:12px clamp(12px, 3vw, 20px) max(12px, env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;gap:8px;min-width:0;min-height:0;margin:0 auto;display:flex}.sudoku-play__chrome{flex-direction:column;flex:none;gap:6px;display:flex}.sudoku-stats{color:#1a2a32b3;flex-wrap:wrap;gap:10px 16px;font-size:13px;display:flex}.sudoku-stats strong{color:var(--sudoku-ink)}.sudoku-stats__diff{color:var(--sudoku-accent);margin-left:auto;font-weight:700}.sudoku-play__nav{flex-wrap:wrap;justify-content:flex-end;gap:4px 8px;margin-top:-4px;display:flex}.sudoku-hint-line{color:#1a2a329e;margin:0;font-size:13px;line-height:1.45}.sudoku-given-note{color:#1a2a329e;text-align:center;flex:none;min-height:1.25em;margin:0;font-size:12px;line-height:1.4}.sudoku-play__dock{flex-direction:column;flex:none;justify-content:flex-start;width:min(100%,36rem);min-height:7.5rem;margin:4px auto 0;display:flex}.sudoku-board-slot{flex:1 1 0;justify-content:center;align-items:center;width:100%;min-height:12rem;display:flex;container-type:size}.sudoku-board{aspect-ratio:1;border:2px solid var(--sudoku-ink);background:var(--sudoku-paper);touch-action:manipulation;border-radius:4px;grid-template-rows:repeat(9,minmax(0,1fr));grid-template-columns:repeat(9,minmax(0,1fr));width:min(100%,36rem);max-width:100%;max-height:100%;margin:0 auto;display:grid;overflow:hidden;container-type:inline-size}@supports (width:1cqh){.sudoku-board{width:min(100cqw,100cqh,36rem);max-height:none}}.sudoku-cell{cursor:pointer;width:100%;min-width:0;height:100%;min-height:0;color:inherit;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #1a2a322e;border-top:none;border-left:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex;position:relative}.sudoku-cell:focus{outline:none}.sudoku-cell:focus-visible{outline:2px solid var(--sudoku-accent);outline-offset:-2px;z-index:2}.sudoku-cell.has-thick-r{border-right:2px solid var(--sudoku-ink)}.sudoku-cell.has-thick-b{border-bottom:2px solid var(--sudoku-ink)}.sudoku-cell:nth-child(9n){border-right:none}.sudoku-cell:nth-child(n+73){border-bottom:none}.sudoku-cell.is-peer{background:var(--sudoku-soft)}.sudoku-cell.is-same{background:#0d737729}.sudoku-cell.is-selected{box-shadow:inset 0 0 0 2px var(--sudoku-accent);z-index:1;background:#0d737747}.sudoku-cell.is-hint{animation:.9s sudoku-hint-flash}.sudoku-cell.is-input .sudoku-cell__value,.sudoku-cell.is-input .sudoku-cell__notes{animation:.28s sudoku-input-pop}.sudoku-cell.is-reject{animation:.36s sudoku-reject-shake}.sudoku-cell__value{font-variant-numeric:tabular-nums;font-size:clamp(15px,11cqi,24px);font-weight:650;line-height:1}.sudoku-cell.is-given .sudoku-cell__value{color:#102028;font-weight:800}.sudoku-cell:not(.is-given) .sudoku-cell__value{color:var(--sudoku-accent)}.sudoku-cell.is-conflict .sudoku-cell__value{color:#c0392b}.sudoku-cell.is-conflict.is-reject{background:#c0392b24}.sudoku-cell__notes{box-sizing:border-box;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);width:100%;height:100%;padding:1px;display:grid}.sudoku-cell__notes i{color:#1a2a328c;justify-content:center;align-items:center;font-size:clamp(9px,3.4cqi,12px);font-style:normal;line-height:1;display:flex}.sudoku-pad{flex:none;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%;margin:0;display:grid}.sudoku-pad__btn{cursor:pointer;min-height:48px;color:var(--sudoku-ink);touch-action:manipulation;background:#fff;border:1px solid #1a2a3224;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:6px 4px;font-size:18px;font-weight:700;display:flex}.sudoku-pad__btn small{color:#1a2a3273;font-size:10px;font-weight:600;line-height:1}.sudoku-pad__btn.is-full{opacity:1}.sudoku-pad__btn.is-full small{color:var(--sudoku-accent);opacity:.85}.sudoku-pad__btn:hover:not(:disabled){border-color:var(--sudoku-accent)}.sudoku-pad__btn:disabled{opacity:.4;cursor:not-allowed}.sudoku-pad__btn--erase{flex-direction:row;grid-column:span 1;font-size:13px;font-weight:600}.sudoku-win{text-align:center;box-sizing:border-box;background:#ffffffeb;border:1px solid #0d737740;border-radius:16px;flex:none;width:100%;margin-top:0;padding:16px;animation:.35s sudoku-win-in}.sudoku-win h2{margin:0 0 6px;font-size:1.4rem}.sudoku-win p{color:#1a2a32b8;margin:0}.sudoku-win__meta{font-size:13px;margin-top:8px!important}.sudoku-win__actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.sudoku-modal{z-index:80;background:#101c2273;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.sudoku-modal__card{width:min(520px,100%);max-height:min(85dvh,720px);color:var(--sudoku-ink);background:#fff;border-radius:18px;padding:20px 18px 18px;overflow:auto}.sudoku-modal__card h2{margin:0 0 14px;font-size:1.25rem}.sudoku-rules{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.sudoku-rules li{gap:12px;display:flex}.sudoku-rules li>span{background:var(--sudoku-soft);width:28px;height:28px;color:var(--sudoku-accent);border-radius:8px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex}.sudoku-rules strong{margin-bottom:4px;display:block}.sudoku-rules p{color:#1a2a32bf;margin:0;font-size:14px;line-height:1.5}.sudoku-rules-note{color:#1a2a32a6;margin:14px 0;font-size:13px;line-height:1.45}@keyframes sudoku-hint-flash{0%,to{background:#0d737747}40%{background:#ffc1078c}}@keyframes sudoku-input-pop{0%{opacity:.55;transform:scale(.82)}to{opacity:1;transform:scale(1)}}@keyframes sudoku-reject-shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}@keyframes sudoku-win-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:899px){.sudoku-diff{grid-template-columns:1fr}.sudoku-diff__btn{min-height:64px}.sudoku-toolbar .sudoku-btn{min-height:40px;padding:8px 10px;font-size:12px}.sudoku-btn__full{display:none}.sudoku-btn__short{display:inline}.sudoku-stats__diff{width:100%;margin-left:0}.sudoku-hint-line{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sudoku-board-slot{min-height:10rem}.sudoku-play__dock{min-height:7.25rem}.sudoku-pad{z-index:5;padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px));background:linear-gradient(#f6f3ec00 0%,#f6f3eceb 18%,#f6f3ec 40%);margin-top:0;position:sticky;bottom:0}.sudoku-pad__btn{min-height:46px}}@media (min-width:561px) and (max-width:899px){.sudoku-diff{grid-template-columns:repeat(3,minmax(0,1fr))}.sudoku-diff__btn{min-height:72px}.sudoku-board{width:min(100%,32rem)}@supports (width:1cqh){.sudoku-board{width:min(100cqw,100cqh,32rem)}}}@media (max-height:480px) and (orientation:landscape){.sudoku-play{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(160px,220px);align-items:stretch;gap:8px 14px;width:min(960px,100%);display:grid}.sudoku-play__chrome{grid-column:1/-1}.sudoku-board-slot{grid-area:2/1;min-height:0}.sudoku-play__dock--pad{grid-area:2/2;align-self:center;width:100%;min-height:0;margin:0}.sudoku-play__dock--win{grid-area:3/1/auto/-1;width:100%;min-height:0}.sudoku-pad{background:0 0;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin:0;padding:0;position:static}.sudoku-pad__btn--erase{grid-column:span 2}.sudoku-given-note{grid-column:1/-1}.sudoku-cell__notes i{font-size:clamp(8px,3.6cqi,11px)}}@media (min-width:720px){.sudoku-modal{align-items:center}}@media (prefers-reduced-motion:reduce){.sudoku-cell.is-hint,.sudoku-cell.is-input .sudoku-cell__value,.sudoku-cell.is-input .sudoku-cell__notes,.sudoku-cell.is-reject,.sudoku-win{animation:none}}.g2048-app{--g2048-ink:#3d2b1f;--g2048-paper:#faf6ef;--g2048-board:#bbada0;--g2048-empty:#cdc1b4;--g2048-accent:#ed9b2f;--g2048-soft:#f3e6d4;background:radial-gradient(120% 80% at 10% -10%, #ed9b2f2e, transparent 55%), radial-gradient(90% 70% at 100% 0%, #bbada059, transparent 50%), var(--g2048-paper);min-height:100dvh;color:var(--g2048-ink);box-sizing:border-box;padding:12px 16px 28px}.g2048-topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.g2048-brand{color:inherit;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.g2048-brand strong{letter-spacing:-.02em;font-size:15px;display:block}.g2048-brand small{letter-spacing:.12em;color:var(--g2048-accent);font-size:11px;display:block}.g2048-topbar__end{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.g2048-app .locale-switcher{padding-top:0}.g2048-app .locale-switcher__select{color:#3d2b1fd9;background-color:#ffffffb8;background-image:linear-gradient(45deg,#0000 50%,#3d2b1f8c 50%),linear-gradient(135deg,#3d2b1f8c 50%,#0000 50%);border-color:#3d2b1f38}.g2048-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.g2048-btn{color:var(--g2048-ink);cursor:pointer;touch-action:manipulation;background:#ffffffb8;border:1px solid #3d2b1f38;border-radius:10px;min-height:40px;padding:8px 12px;font-size:13px}.g2048-btn:hover:not(:disabled){border-color:var(--g2048-accent)}.g2048-btn:disabled{opacity:.45;cursor:not-allowed}.g2048-btn--ghost{background:0 0;border-color:#3d2b1f2e}.g2048-btn--ghost:hover:not(:disabled){background:#ffffff8c}.g2048-btn--continue{min-height:48px;padding:10px 18px;font-size:15px}.g2048-btn__short{display:none}.g2048-btn__full{display:inline}.g2048-menu{text-align:center;max-width:36rem;margin:28px auto 0}.g2048-eyebrow{letter-spacing:.16em;color:var(--g2048-accent);margin:0 0 8px;font-size:12px;font-weight:700}.g2048-title{letter-spacing:-.04em;margin:0 0 10px;font-size:clamp(2.2rem,8vw,3.4rem);line-height:1.05}.g2048-lead{color:#3d2b1fc7;max-width:34rem;margin:0 auto 12px;font-size:15px;line-height:1.55}.g2048-tm-note{color:#3d2b1f9e;word-break:keep-all;max-width:34rem;margin:0 auto 22px;font-size:12px;line-height:1.5}.g2048-menu__actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.g2048-cta{background:var(--g2048-accent);color:#1f140c;cursor:pointer;touch-action:manipulation;border:none;border-radius:12px;min-height:48px;padding:12px 22px;font-size:15px;font-weight:700}.g2048-cta:hover{filter:brightness(1.05)}.g2048-play{flex-direction:column;gap:12px;max-width:28rem;margin:0 auto;display:flex}.g2048-play__chrome{flex-direction:column;gap:8px;display:flex}.g2048-stats{color:#3d2b1fb8;flex-wrap:wrap;gap:10px 16px;font-size:13px;display:flex}.g2048-stats strong{color:var(--g2048-ink)}.g2048-play__nav{flex-wrap:wrap;gap:8px;display:flex}.g2048-hint-line{color:#3d2b1fad;margin:0;font-size:13px;line-height:1.45}.g2048-stats__score{align-items:baseline;gap:6px;display:inline-flex;position:relative}.g2048-score-pop{color:var(--g2048-accent);pointer-events:none;white-space:nowrap;font-size:13px;font-weight:800;animation:.7s forwards g2048-score-pop;position:absolute;top:-2px;left:calc(100% + 6px)}.g2048-board-slot{touch-action:none;-webkit-user-select:none;user-select:none;width:min(100%,26rem,100dvh - 13.5rem);margin:0 auto;position:relative}.g2048-board{--g2048-gap:clamp(6px, 1.8vw, 10px);--g2048-pad:clamp(8px, 2vw, 12px);gap:var(--g2048-gap);padding:var(--g2048-pad);background:var(--g2048-board);aspect-ratio:1;box-sizing:border-box;border-radius:14px;grid-template-rows:repeat(4,minmax(0,1fr));grid-template-columns:repeat(4,minmax(0,1fr));width:100%;display:grid;position:relative;container:g2048-board/inline-size}.g2048-slot{background:var(--g2048-empty);border-radius:8px;min-width:0;min-height:0}.g2048-tile{z-index:1;color:#776e65;width:calc((100% - 2 * var(--g2048-pad) - 3 * var(--g2048-gap)) / 4);height:calc((100% - 2 * var(--g2048-pad) - 3 * var(--g2048-gap)) / 4);left:calc(var(--g2048-pad) + (var(--g2048-c) * ((100% - 2 * var(--g2048-pad) - 3 * var(--g2048-gap)) / 4 + var(--g2048-gap))));top:calc(var(--g2048-pad) + (var(--g2048-r) * ((100% - 2 * var(--g2048-pad) - 3 * var(--g2048-gap)) / 4 + var(--g2048-gap))));box-sizing:border-box;border-radius:8px;justify-content:center;align-items:center;font-size:clamp(1.05rem,14cqi,2rem);font-weight:800;line-height:1;transition:left .15s ease-in-out,top .15s ease-in-out;display:flex;position:absolute}.g2048-tile span{pointer-events:none}.g2048-tile.is-2{background:#eee4da}.g2048-tile.is-4{background:#ede0c8}.g2048-tile.is-8{color:#f9f6f2;background:#f2b179}.g2048-tile.is-16{color:#f9f6f2;background:#f59563}.g2048-tile.is-32{color:#f9f6f2;background:#f67c5f}.g2048-tile.is-64{color:#f9f6f2;background:#f65e3b}.g2048-tile.is-128{color:#f9f6f2;background:#edcf72;font-size:clamp(.95rem,12cqi,1.7rem)}.g2048-tile.is-256{color:#f9f6f2;background:#edcc61;font-size:clamp(.95rem,12cqi,1.7rem)}.g2048-tile.is-512{color:#f9f6f2;background:#edc850;font-size:clamp(.95rem,12cqi,1.7rem)}.g2048-tile.is-1024{color:#f9f6f2;background:#edc53f;font-size:clamp(.85rem,11cqi,1.45rem)}.g2048-tile.is-2048plus{color:#f9f6f2;background:#edc22e;font-size:clamp(.8rem,10cqi,1.35rem);box-shadow:inset 0 0 0 2px #ffffff59}.g2048-tile.is-spawn{animation:.2s g2048-spawn}.g2048-tile.is-merge{z-index:2;animation:.2s g2048-merge}.g2048-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:14rem;margin:0 auto;display:grid}.g2048-pad__btn{min-height:48px;color:var(--g2048-ink);cursor:pointer;touch-action:manipulation;background:#fffc;border:1px solid #3d2b1f2e;border-radius:12px;font-size:16px}.g2048-pad__btn:hover:not(:disabled){border-color:var(--g2048-accent)}.g2048-pad__btn:disabled{opacity:.45;cursor:not-allowed}.g2048-pad__spacer{visibility:hidden;min-height:1px}.g2048-result{z-index:6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-sizing:border-box;background:#3d2b1f6b;border-radius:14px;justify-content:center;align-items:center;padding:12px;animation:.35s g2048-banner-in;display:flex;position:absolute;inset:0}.g2048-result__card{text-align:center;overscroll-behavior:contain;background:#fffffff5;border:1px solid #3d2b1f1f;border-radius:14px;width:min(100%,18rem);max-height:min(100%,22rem);padding:16px;overflow:auto;box-shadow:0 12px 36px #1e140c2e}.g2048-result--win .g2048-result__card{border-color:#ed9b2f73}.g2048-result__card h2{margin:0 0 6px;font-size:clamp(1.1rem,4.5vw,1.35rem)}.g2048-result__card p{color:#3d2b1fb8;margin:0;font-size:14px;line-height:1.45}.g2048-result__meta{font-size:13px;margin-top:8px!important}.g2048-result__actions{flex-wrap:wrap;justify-content:center;gap:8px;margin-top:14px;display:flex}.g2048-modal{z-index:40;background:#1e140c73;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.g2048-modal__card{background:var(--g2048-paper);width:min(100%,28rem);max-height:min(88dvh,40rem);color:var(--g2048-ink);border-radius:16px;padding:18px 18px 16px;overflow:auto}.g2048-modal__card h2{margin:0 0 14px;font-size:1.25rem}.g2048-rules{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.g2048-rules li{gap:12px;display:flex}.g2048-rules li>span{background:var(--g2048-soft);color:#a86a12;border-radius:8px;flex:none;place-items:center;width:2rem;height:2rem;font-size:12px;font-weight:800;display:grid}.g2048-rules strong{margin-bottom:4px;display:block}.g2048-rules p{color:#3d2b1fbf;margin:0;font-size:14px;line-height:1.5}.g2048-rules-note{color:#3d2b1fa6;margin:14px 0;font-size:13px;line-height:1.45}@keyframes g2048-spawn{0%{opacity:.4;transform:scale(.55)}to{opacity:1;transform:scale(1)}}@keyframes g2048-merge{0%{transform:scale(1)}50%{transform:scale(1.12)}to{transform:scale(1)}}@keyframes g2048-banner-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes g2048-score-pop{0%{opacity:0;transform:translateY(4px)}20%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-12px)}}@media (max-width:560px){.g2048-toolbar .g2048-btn{min-height:40px;padding:8px 10px;font-size:12px}.g2048-btn__full{display:none}.g2048-btn__short{display:inline}.g2048-hint-line{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.g2048-board-slot{width:min(100%,100dvh - 12.5rem)}.g2048-pad{z-index:5;max-width:none;padding:10px 0 calc(10px + env(safe-area-inset-bottom,0px));background:linear-gradient(to top, var(--g2048-paper) 70%, transparent);position:sticky;bottom:0}.g2048-pad__btn{min-height:52px}}@media (max-height:640px){.g2048-board-slot{width:min(100%,26rem,100dvh - 11rem)}.g2048-play{gap:8px}.g2048-pad__btn{min-height:44px}}@media (orientation:landscape) and (max-height:520px){.g2048-app{padding-bottom:12px}.g2048-board-slot{width:min(100%,100dvh - 7.5rem)}.g2048-pad{background:0 0;max-width:12rem;padding:0;position:static}.g2048-pad__btn{min-height:40px}.g2048-result{z-index:30;padding:max(12px, env(safe-area-inset-top,0px)) 16px max(12px, env(safe-area-inset-bottom,0px));border-radius:0;position:fixed;inset:0}.g2048-result__card{max-height:min(80dvh,22rem);padding:12px}}@media (max-width:380px){.g2048-result{z-index:30;padding:max(12px, env(safe-area-inset-top,0px)) 16px max(12px, env(safe-area-inset-bottom,0px));border-radius:0;position:fixed;inset:0}}@media (min-width:720px){.g2048-modal{align-items:center}}@media (hover:hover) and (pointer:fine) and (min-width:900px){.g2048-pad{opacity:.72}}@media (prefers-reduced-motion:reduce){.g2048-tile{transition:none}.g2048-tile.is-spawn,.g2048-tile.is-merge,.g2048-result,.g2048-score-pop{animation:none}.g2048-score-pop{opacity:0}}.alkkagi-app{min-height:100dvh;color:var(--paper);background:radial-gradient(70% 45% at 50% -8%,#c4a06a33,#0000 55%),radial-gradient(circle at 12% 88%,#50321859,#0000 42%),linear-gradient(#1a1510 0%,#0f0c09 100%);flex-direction:column;display:flex}.site-shell:has(.alkkagi-app--play){height:100dvh;height:var(--app-vh,100dvh);max-height:100dvh;max-height:var(--app-vh,100dvh);overflow:hidden}.site-shell:has(.alkkagi-app--play) .site-shell__main{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.site-shell:has(.alkkagi-app--play) .alkkagi-app--play{flex:auto;height:100%;min-height:0;overflow:hidden}:is(.site-shell:has(.alkkagi-app--play) .site-footer,.site-shell:has(.alkkagi-app--play) .content-guide){display:none}.alkkagi-topbar{min-height:56px;padding:8px clamp(12px,3vw,40px);padding-top:max(8px, env(safe-area-inset-top));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c09068c;border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.alkkagi-brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:flex}.alkkagi-brand strong{letter-spacing:-.03em;font-size:17px;display:block}.alkkagi-brand small{color:var(--muted);letter-spacing:.18em;margin-top:2px;font-size:9px;display:block}.alkkagi-main{width:min(100%,920px);padding:20px clamp(12px,3vw,40px) 28px;padding-bottom:max(28px, env(safe-area-inset-bottom));flex-direction:column;flex:1;gap:14px;min-height:0;margin:0 auto;display:flex}.alkkagi-main--menu{justify-content:center;max-width:640px}.alkkagi-main--play{flex:1;width:100%;min-height:0}.alkkagi-app--play .alkkagi-main--play{overflow:hidden}.alkkagi-hero-panel{background:linear-gradient(150deg,#c4a06a2e,#0000 50%),#ffffff08;border:1px solid #ffffff1a;border-radius:20px;gap:16px;padding:clamp(22px,4vw,32px) clamp(18px,3vw,28px);display:grid;box-shadow:0 20px 50px #00000047}.alkkagi-eyebrow{color:#e8a840;letter-spacing:.18em;margin:0;font-size:11px;font-weight:800}.alkkagi-main h1{letter-spacing:-.045em;margin:0;font-size:clamp(32px,7vw,48px)}.alkkagi-lead{color:var(--muted);max-width:38em;margin:0;font-size:14px;line-height:1.65}.alkkagi-diff{flex-wrap:wrap;gap:8px;display:flex}.alkkagi-diff__btn{min-height:40px;color:var(--paper);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff24;border-radius:10px;padding:0 14px;font-size:13px;font-weight:700}.alkkagi-diff__btn.is-active{color:#1a1208;background:#c4a06a;border-color:#c4a06a}.alkkagi-cta{color:#1a1208;cursor:pointer;background:linear-gradient(#e8b86a,#c48a3a);border:none;border-radius:12px;width:fit-content;min-height:48px;padding:0 22px;font-size:15px;font-weight:800}.alkkagi-ghost{min-height:40px;color:var(--paper);cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:10px;padding:0 14px;font-size:13px;font-weight:700}.alkkagi-hint{color:var(--muted);margin:0;font-size:13px;line-height:1.55}.alkkagi-hud{gap:8px;display:grid}.alkkagi-score{color:#d8cbb8;flex-wrap:wrap;justify-content:space-between;gap:10px 16px;font-size:13px;font-weight:700;display:flex}.alkkagi-score__side{align-items:center;gap:8px;display:inline-flex}.alkkagi-dot{border-radius:50%;width:14px;height:14px;display:inline-block;box-shadow:inset 0 -2px 3px #00000059}.alkkagi-dot--white{background:radial-gradient(circle at 35% 30%,#fff,#cfc8bc)}.alkkagi-dot--black{background:radial-gradient(circle at 35% 30%,#555,#111)}.alkkagi-message{color:#c9bba6;min-height:1.5em;margin:0;font-size:14px;line-height:1.5}.alkkagi-message.is-result{color:#e8a840;font-weight:700}.alkkagi-power{color:#e8a840;margin:0;font-size:12px;font-weight:800}.alkkagi-power.is-cancel{color:#b8aea0}.alkkagi-board-wrap{touch-action:none;border:1px solid #ffffff14;border-radius:16px;flex:auto;width:100%;height:min(72vw,420px);min-height:0;max-height:min(78dvh,640px);position:relative;overflow:hidden}.alkkagi-app--play .alkkagi-board-wrap{height:auto;max-height:none}.alkkagi-canvas{touch-action:none;cursor:crosshair;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.alkkagi-result-bar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:10px;display:flex}@media (max-width:520px){.alkkagi-main{padding-top:12px;padding-bottom:max(16px, env(safe-area-inset-bottom));gap:10px}.alkkagi-board-wrap{height:min(88vw,380px);max-height:min(58dvh,520px)}.alkkagi-app--play .alkkagi-board-wrap{height:auto;max-height:none}.alkkagi-cta{text-align:center;width:100%}.alkkagi-ghost,.alkkagi-diff__btn{min-height:44px}}@media (min-width:521px) and (max-width:1024px){.alkkagi-board-wrap{height:min(64vw,520px);max-height:min(70dvh,560px)}.alkkagi-app--play .alkkagi-board-wrap{height:auto;max-height:none}}@media (orientation:landscape) and (max-height:560px){.alkkagi-topbar{min-height:0;padding-top:max(4px, env(safe-area-inset-top));padding-bottom:4px}.alkkagi-main{padding-top:8px;padding-bottom:max(8px, env(safe-area-inset-bottom));gap:8px}.alkkagi-hud{gap:4px}.alkkagi-message{min-height:0;font-size:13px}.alkkagi-hint{font-size:12px}.alkkagi-board-wrap{height:min(100%, calc(var(--app-vh,100dvh) - 140px));max-height:calc(var(--app-vh,100dvh) - 140px)}.alkkagi-app--play .alkkagi-board-wrap{height:auto;max-height:none}.alkkagi-cta,.alkkagi-ghost{min-height:40px}}.alkkagi-mode-grid{grid-template-columns:1fr;gap:10px;display:grid}@media (min-width:520px){.alkkagi-mode-grid{grid-template-columns:1fr 1fr}}.alkkagi-mode-card{text-align:left;color:inherit;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:14px;gap:6px;min-height:88px;padding:16px;display:grid}.alkkagi-mode-card strong{font-size:16px}.alkkagi-mode-card span{color:var(--muted);font-size:13px;line-height:1.45}.alkkagi-mode-card--pvp{background:#e8a84014;border-color:#e8a84059}.alkkagi-input{width:100%;min-height:40px;color:var(--paper);background:#00000040;border:1px solid #ffffff29;border-radius:10px;margin-top:6px;padding:0 12px;display:block}.alkkagi-room-list{gap:8px;max-height:240px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.alkkagi-room-btn{text-align:left;width:100%}.alkkagi-invite-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.alkkagi-diff__btn:disabled,.alkkagi-cta:disabled,.alkkagi-ghost:disabled{opacity:.45;cursor:not-allowed}.adsense-unit{text-align:center;max-width:min(100%,728px);margin:16px auto}.adsense-unit--placeholder{color:#ffffff59;letter-spacing:.08em;border:1px dashed #ffffff2e;place-items:center;min-height:90px;font-size:.75rem;display:grid}.guides-index{max-width:720px}.guides-index__eyebrow{color:var(--gold);letter-spacing:.19em;text-transform:uppercase;margin:0 0 10px;font-size:11px;font-weight:800}.guides-index.legal-page h1{font-size:clamp(30px,5vw,40px)}.guides-index .legal-page__desc{color:#c2cdc8;max-width:36em;font-size:15px;line-height:1.75}.guides-index__grid{grid-template-columns:1fr;gap:14px;margin:8px 0 0;padding:0;list-style:none;display:grid}.guides-index__card{background:linear-gradient(180deg, #ffffff0e, #ffffff05), var(--ink-soft);color:inherit;border:1px solid #f4efe329;border-radius:10px;grid-template-columns:52px minmax(0,1fr);align-items:start;gap:4px 16px;padding:22px 20px 20px;text-decoration:none;transition:border-color .2s,background .2s,transform .2s;display:grid;box-shadow:inset 0 1px #ffffff0a}.guides-index__card:hover{background:linear-gradient(#d6a64614,#ffffff08),#1f302d;border-color:#d6a64673;transform:translateY(-1px)}.guides-index__num{width:44px;height:44px;color:var(--gold);background:#d6a6461a;border:1px solid #d6a64647;border-radius:10px;grid-row:1/span 3;place-items:center;margin-top:2px;font-family:Georgia,Batang,serif;font-size:16px;font-weight:700;line-height:1;display:grid}.guides-index__body{grid-column:2;min-width:0}.guides-index__body h2{color:var(--paper);letter-spacing:-.03em;margin:0 0 10px;font-family:Georgia,Batang,serif;font-size:clamp(20px,3vw,24px);font-weight:500;line-height:1.3}.guides-index__body p{color:#d2dbd7;margin:0;font-size:15px;line-height:1.7}.guides-index__meta{color:#8fa099;letter-spacing:.01em;margin-top:14px;font-size:12px;display:block}.guides-index__cta{color:#f0d089;letter-spacing:.01em;background:#d6a6461f;border:1px solid #d6a64659;border-radius:999px;grid-column:2;justify-self:start;align-items:center;gap:6px;margin-top:14px;padding:8px 12px;font-size:13px;font-weight:800;display:inline-flex}.guides-index__card:hover .guides-index__cta{color:#ffe6a8;background:#d6a64633;border-color:#d6a6468c}.guides-notices{margin:8px 0 28px}.guides-notices__heading{color:var(--paper);letter-spacing:-.02em;margin:0 0 12px;font-family:Georgia,Batang,serif;font-size:clamp(18px,3vw,22px);font-weight:500}.guides-notices__list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.guides-notices__card{background:linear-gradient(180deg, #d6a6461a, #ffffff05), var(--ink-soft);border:1px solid #d6a64647;border-radius:10px;padding:18px 18px 16px}.guides-notices__date{color:var(--gold);letter-spacing:.04em;margin-bottom:8px;font-size:12px;font-weight:700;display:inline-block}.guides-notices__title{color:var(--paper);margin:0 0 8px;font-size:clamp(17px,3vw,20px);font-weight:600;line-height:1.35}.guides-notices__body{color:#c8d2cd;margin:0 0 14px;font-size:14.5px;line-height:1.7}.home-shortcut{gap:10px;max-width:28rem;display:grid}.home-shortcut__hint{color:#aebbb5;margin:0;font-size:13px;line-height:1.55}.home-shortcut__btn{appearance:none;color:#ffe6a8;letter-spacing:.01em;cursor:pointer;background:#d6a6462e;border:1px solid #d6a64680;border-radius:10px;justify-content:center;align-items:center;width:fit-content;max-width:100%;min-height:44px;padding:10px 16px;font-size:14px;font-weight:800;display:inline-flex}.home-shortcut__btn:hover{background:#d6a64647}.home-shortcut__btn:disabled{opacity:.65;cursor:wait}.home-shortcut__btn--secondary{color:#d2dbd7;background:0 0;border-color:#f4efe338;font-weight:700}.home-shortcut__ios{background:#0000002e;border:1px solid #f4efe31f;border-radius:8px;margin:0;padding:12px 14px}.home-shortcut__ios-title{color:var(--paper);margin:0 0 8px;font-size:13px;font-weight:700}.home-shortcut__ios ol{color:#c8d2cd;margin:0 0 12px;padding-left:1.2em;font-size:13px;line-height:1.65}.home-shortcut__ios li+li{margin-top:4px}.home-shortcut__status{color:#9fd4b8;margin:0;font-size:13px;line-height:1.5}@media (max-width:560px){.guides-notices__card{padding:16px 14px 14px}.home-shortcut__btn{width:100%}}.guides-detail .legal-page__desc{color:#c2cdc8;font-size:15px;line-height:1.75}.guides-detail .legal-page__section p,.guides-detail .legal-page__section li{color:#c8d2cd;font-size:14.5px;line-height:1.8}.guides-detail .content-guide--flush{margin-top:36px}@media (max-width:560px){.guides-index__card{grid-template-columns:40px minmax(0,1fr);gap:2px 12px;padding:18px 14px 16px}.guides-index__num{border-radius:8px;width:36px;height:36px;font-size:14px}.guides-index__body h2{font-size:19px}.guides-index__body p{font-size:14px}}.content-guide__block--rules{border-left:3px solid #fff3;padding-left:14px}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@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-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}
