:root{--color-blue: #3bb4e8;--color-pink: #e91e8c;--color-pink-light: #f594c2;--color-yellow: #ffe033;--color-yellow-light: #ffe680;--color-gold: #d4af37;--color-green: #1b6b3a;--color-white: #faf8f5;--color-ivory: #ede8e0;--color-gray: #888;--color-teal: #5ab895;--color-error: #dc3545;--tile-red: #c41e3a;--tile-red-light: #d4546e;--tile-green: var(--color-green);--tile-green-dark: #145230;--tile-green-light: #2e9e5e;--tile-green-background: #a8d5b8;--tile-red-background: #f2b5c2;--tile-navy: #1e40af;--tile-navy-light: #4272d4;--tile-orange: #d06026;--tile-purple: #910caf;--tile-pink: var(--color-pink);--tile-amber: #ca8a04;--tile-charcoal: #44403c;--tile-charcoal-light: #78716c;--tile-black: #1c1917;--color-bg: var(--color-blue);--color-bg-card: var(--color-pink);--color-accent: var(--color-yellow);--success-bg: var(--color-yellow);--success-text: var(--color-green);--color-text-primary: var(--color-green);--color-text-on-pink: var(--color-white);--color-text-on-yellow: var(--color-green);--color-text-muted: rgba(255, 255, 255, .8);--font-heading: "Oswald", "Arial Narrow", sans-serif;--font-display: "Archivo Black", "Arial Black", sans-serif;--font-accent: "Playfair Display", Georgia, serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-shadow-heading: 2px 2px 0 var(--color-white);--shadow-card: 4px 4px 0 rgba(0, 0, 0, .2);--radius: 4px}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);background:var(--color-bg);min-height:100vh}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse at 0% 0%,rgba(20,50,220,.6) 0%,transparent 55%),radial-gradient(ellipse at 100% 100%,rgba(20,50,220,.45) 0%,transparent 50%);pointer-events:none;opacity:.4;transition:opacity .5s ease-out}body.glitch-active:before{opacity:1;transition:opacity .06s ease-in}h1,h2,h3{font-family:var(--font-heading);font-style:italic;text-transform:uppercase;color:var(--color-text-primary);text-shadow:var(--text-shadow-heading);letter-spacing:.02em}h1{font-size:3rem;text-shadow:3px 3px 0 var(--color-white);text-align:left}.card-overlay,.card-overlay h1{text-align:center}.prompt{font-family:var(--font-display);font-size:1.1rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-primary)}.card .prompt{font-family:var(--font-body);font-weight:800;color:var(--color-text-on-pink)}.prompt-action,.card .prompt-action{color:var(--color-yellow)}.label-small{font-family:var(--font-body);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--color-green)}.card{position:relative;z-index:1;background:radial-gradient(ellipse at 100% 0%,rgba(20,50,220,.02) 0%,transparent 60%),radial-gradient(ellipse at 0% 100%,rgba(20,50,220,.015) 0%,transparent 55%),var(--color-bg-card);padding:24px;border-radius:var(--radius);box-shadow:var(--shadow-card);isolation:isolate}.card h1,.card h2,.card h3{color:var(--color-text-primary);text-shadow:var(--text-shadow-heading)}.card p{font-family:var(--font-body);font-weight:600;color:var(--color-text-on-pink)}.btn{padding:12px 24px;font-size:16px;font-family:var(--font-display);text-transform:uppercase;border:none;border-radius:var(--radius);cursor:pointer;transition:transform .1s,box-shadow .1s}.btn:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #0003}.btn:active{transform:translate(1px,1px);box-shadow:1px 1px #0003}.btn-primary{background:var(--color-yellow);color:var(--color-pink)}.btn-secondary{background:var(--color-white);color:var(--color-pink)}.btn-danger{background:var(--color-pink);color:var(--color-white);border:2px solid var(--color-white)}.input{padding:12px;font-size:16px;font-weight:600;border:2px solid var(--color-white);border-radius:var(--radius);background:var(--color-white);color:var(--color-pink);width:100%}.input::placeholder{color:var(--color-pink);opacity:.5}.input:focus{outline:none;border-color:var(--color-yellow)}.phone-input.PhoneInput{background:var(--color-white);border:2px solid var(--color-white);border-radius:var(--radius);padding:0 12px}.phone-input.PhoneInput:focus-within{border-color:var(--color-yellow)}.phone-input .PhoneInputInput{padding:12px 0;font-size:16px;font-weight:600;border:none;background:transparent;color:var(--color-pink);outline:none}.phone-input .PhoneInputInput::placeholder{color:var(--color-pink);opacity:.5}.phone-input .PhoneInputCountry{margin-right:8px}.accent-band{background:var(--color-yellow);padding:8px 16px;border-radius:var(--radius);color:var(--color-green);font-family:var(--font-display);font-weight:400;text-transform:uppercase;letter-spacing:.02em}.text-on-blue{color:var(--color-text-primary);text-shadow:var(--text-shadow-heading)}.text-on-pink{color:var(--color-text-on-pink)}.text-on-yellow{color:var(--color-text-on-yellow)}.page-card-nav-btn{position:absolute;top:12px;width:32px;height:32px;border:none;border-radius:6px;background:var(--color-pink-light);color:var(--color-pink);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:none;transition:transform .1s,background .1s}.page-card-nav-btn:hover{transform:translate(-1px,-1px);background:var(--color-white);color:var(--color-pink)}.page-card-nav-btn:active{transform:translate(0);box-shadow:1px 1px #0000001a}.page-card-nav-btn-left{left:12px}.page-card-nav-btn-right{right:12px}.page-card-nav-btn-admin{position:absolute;top:12px;right:52px}.page-card-nav-btn-admin .page-card-nav-btn{position:static}.page-card-nav-icon{width:18px;height:18px}.message-error{color:var(--color-yellow);background:#0003;padding:8px 12px;border-radius:var(--radius)}p.message-success,.message-success{background:var(--color-yellow);color:var(--color-green);padding:16px 24px;border-radius:var(--radius);font-family:var(--font-display);font-size:1.5rem;text-transform:uppercase;text-align:center;box-shadow:4px 4px #0003}.suit-color-a{color:var(--tile-navy)}.suit-color-b{color:var(--tile-red)}.suit-color-c{color:var(--tile-green-light)}:root{--PhoneInput-color--focus: #03b2cb;--PhoneInputInternationalIconPhone-opacity: .8;--PhoneInputInternationalIconGlobe-opacity: .65;--PhoneInputCountrySelect-marginRight: .35em;--PhoneInputCountrySelectArrow-width: .3em;--PhoneInputCountrySelectArrow-marginLeft: var(--PhoneInputCountrySelect-marginRight);--PhoneInputCountrySelectArrow-borderWidth: 1px;--PhoneInputCountrySelectArrow-opacity: .45;--PhoneInputCountrySelectArrow-color: currentColor;--PhoneInputCountrySelectArrow-color--focus: var(--PhoneInput-color--focus);--PhoneInputCountrySelectArrow-transform: rotate(45deg);--PhoneInputCountryFlag-aspectRatio: 1.5;--PhoneInputCountryFlag-height: 1em;--PhoneInputCountryFlag-borderWidth: 1px;--PhoneInputCountryFlag-borderColor: rgba(0,0,0,.5);--PhoneInputCountryFlag-borderColor--focus: var(--PhoneInput-color--focus);--PhoneInputCountryFlag-backgroundColor--loading: rgba(0,0,0,.1)}.PhoneInput{display:flex;align-items:center}.PhoneInputInput{flex:1;min-width:0}.PhoneInputCountryIcon{width:calc(var(--PhoneInputCountryFlag-height) * var(--PhoneInputCountryFlag-aspectRatio));height:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--square{width:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--border{background-color:var(--PhoneInputCountryFlag-backgroundColor--loading);box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor),inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor)}.PhoneInputCountryIconImg{display:block;width:100%;height:100%}.PhoneInputInternationalIconPhone{opacity:var(--PhoneInputInternationalIconPhone-opacity)}.PhoneInputInternationalIconGlobe{opacity:var(--PhoneInputInternationalIconGlobe-opacity)}.PhoneInputCountry{position:relative;align-self:stretch;display:flex;align-items:center;margin-right:var(--PhoneInputCountrySelect-marginRight)}.PhoneInputCountrySelect{position:absolute;top:0;left:0;height:100%;width:100%;z-index:1;border:0;opacity:0;cursor:pointer}.PhoneInputCountrySelect[disabled],.PhoneInputCountrySelect[readonly]{cursor:default}.PhoneInputCountrySelectArrow{display:block;content:"";width:var(--PhoneInputCountrySelectArrow-width);height:var(--PhoneInputCountrySelectArrow-width);margin-left:var(--PhoneInputCountrySelectArrow-marginLeft);border-style:solid;border-color:var(--PhoneInputCountrySelectArrow-color);border-top-width:0;border-bottom-width:var(--PhoneInputCountrySelectArrow-borderWidth);border-left-width:0;border-right-width:var(--PhoneInputCountrySelectArrow-borderWidth);transform:var(--PhoneInputCountrySelectArrow-transform);opacity:var(--PhoneInputCountrySelectArrow-opacity)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon+.PhoneInputCountrySelectArrow{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon--border{box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus),inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon .PhoneInputInternationalIconGlobe{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.debug-log-overlay{position:fixed;inset:0;z-index:50;background:#000c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:24px}.debug-log-panel{background:#000000e6;border-radius:var(--radius);padding:12px;min-width:min(70vw,500px);max-width:90vw;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.debug-log-header{font-size:14px;font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);margin-bottom:8px}.debug-log-content{font-size:11px;font-family:monospace;color:#0f0;overflow-y:auto;line-height:1.4}.debug-log-hint{font-size:13px;color:var(--color-white);opacity:.7}@keyframes flashcard-correct-pulse{0%{transform:scale(1)}25%{transform:scale(1.1)}55%{transform:scale(1.02)}80%{transform:scale(1.06)}to{transform:scale(1.04)}}@keyframes flashcard-wrong-shake{0%,to{transform:translate(0)}12%{transform:translate(-10px)}25%{transform:translate(10px)}37%{transform:translate(-8px)}50%{transform:translate(8px)}62%{transform:translate(-5px)}75%{transform:translate(5px)}87%{transform:translate(-2px)}}.btn.answer-correct{animation:flashcard-correct-pulse .5s ease-out forwards;background:var(--color-yellow);color:var(--color-green);border:none;box-shadow:0 4px 16px #00000040;position:relative;z-index:1}.btn.answer-wrong{animation:flashcard-wrong-shake .5s ease-out forwards;background:var(--color-white);color:var(--color-error);border:none;opacity:.25}.btn.answer-reveal{background:var(--color-yellow);color:var(--color-green);border:none;transform:scale(1.04);box-shadow:0 4px 16px #00000040;position:relative;z-index:1}.btn.answer-dimmed{opacity:.15;pointer-events:none}.quiz-hand-container{container-type:inline-size}@container (max-width: 379px){.quiz-hand-tiles,.quiz-hand-incoming{--tile-size: calc((100cqi - 64px)/4) }}@container (min-width: 380px) and (max-width: 579px){.quiz-hand-tiles,.quiz-hand-incoming{--tile-size: calc((100cqi - 88px)/6.4) }}@container (min-width: 580px){.quiz-hand-tiles{--tile-size: calc((100cqi - 128px) / 10.4)}.quiz-hand-incoming{--tile-size: calc((100cqi - 88px)/6.4) }}.quiz-type-card{display:flex;flex-direction:column;background:var(--color-white);border-radius:4px;padding:20px 16px;cursor:pointer;text-align:left;transition:transform .1s,box-shadow .1s;border:none;width:100%;font-family:var(--font-body)}.quiz-type-card:hover{transform:translate(-2px,-2px);box-shadow:3px 3px #0003}.quiz-type-card:active{transform:translate(1px,1px);box-shadow:1px 1px #0000001a}.quiz-score-badge{color:var(--color-pink);background:var(--color-white);padding:4px 12px 6px;border-radius:4px;font-size:.95rem;font-weight:700;align-self:flex-end;margin-bottom:14px;white-space:nowrap}.tile-xs{--tile-size: 2.65rem}.tile-s{--tile-size: 3.3rem}.tile-m{--tile-size: 3.9rem}.tile-l{--tile-size: 5.1rem}.tile-xl{--tile-size: 10rem}.hand-display-fit-container{container-type:inline-size}@container (min-width: 0px){.hand-display-fit{--tile-size: min(3.3rem, calc((100cqi - 28px) / 5.64))}}.tile-input-fit-container{container-type:inline-size}@container (min-width: 0px){.tile-input-fit{--tile-size: min(5.1rem, calc((100cqi - 6px) / 8.78))}}.tile{position:relative;display:inline-flex;align-items:center;justify-content:center;width:calc(.8 * var(--tile-size, 4rem));height:calc(1.04 * var(--tile-size, 4rem));font-size:var(--tile-size, 4rem);cursor:default;-webkit-user-select:none;user-select:none;overflow:visible}.tile-shell{position:absolute;top:0;left:0;width:100%;height:100%}.tile-face{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:calc(.12 * var(--tile-size, 4rem));box-sizing:border-box}.tile-svg{width:100%;height:100%;display:block}.dots .traditional-red>.border{fill:var(--tile-charcoal)}.dots .traditional-red>.middle{fill:var(--tile-red-light)}.dots .traditional-green>.border{fill:var(--tile-navy)}.dots .traditional-green>.middle{fill:var(--tile-green-light)}.dots .traditional-blue>.border{fill:var(--tile-green-dark)}.dots .traditional-blue>.middle{fill:var(--tile-navy-light)}.dots .traditional-multicolor>.border{fill:var(--tile-navy)}.dots .traditional-multicolor>.middle{fill:var(--tile-green-light)}.dots .traditional-multicolor>.center{fill:var(--tile-red)}.bamboo .traditional-green{fill:var(--tile-green)}.bamboo .traditional-red{fill:var(--tile-red)}.bamboo .traditional-blue{fill:var(--tile-navy)}.characters .traditional-red{fill:var(--tile-red)}.characters .traditional-blue,.winds .traditional-blue{fill:var(--tile-navy)}.dragons .traditional-red{fill:var(--tile-red)}.dragons .traditional-green{fill:var(--tile-green)}.dragons .traditional-blue{fill:var(--tile-navy)}.jokers .traditional-red,.plum .border{fill:var(--tile-red)}.plum .middle{fill:var(--tile-red-light)}.orchid path{fill:var(--tile-purple)}.chrysanthemum path{fill:var(--tile-orange)}.bamboo-flower path{fill:var(--tile-green)}.spring path:first-child{fill:var(--tile-navy)}.spring path:last-child{fill:var(--tile-green)}.summer path{fill:var(--tile-amber)}.autumn path:first-child{fill:var(--tile-navy)}.autumn path:last-child{fill:var(--tile-orange)}.winter path{fill:var(--tile-navy)}.tile-clickable{cursor:pointer}.tile-clickable:hover{transform:scale(1.05)}.tile-disabled{opacity:.3;cursor:not-allowed}.tile-badge{position:absolute;top:calc(-0 * var(--tile-size, 4rem));left:calc(-0 * var(--tile-size, 4rem));display:flex;align-items:center;justify-content:center;--badge-size: calc(.18 * var(--tile-size, 4rem));width:var(--badge-size);height:var(--badge-size);background:none;border-radius:0;font-family:system-ui,sans-serif;font-weight:700;font-size:calc(.14 * var(--tile-size, 4rem));color:#444;line-height:1}.tile-badge-label{transform:translateY(-.02em)}.tile-group{display:inline-flex;flex-wrap:wrap;align-items:flex-start;border-radius:var(--radius, 4px);font-size:var(--tile-size, 4rem);overflow:visible;--tile-gap: calc(.06 * var(--tile-size, 4rem));gap:var(--tile-gap);--base-padding: calc(.1 * var(--tile-size, 4rem));--shadow-padding: calc(.1 * var(--tile-size, 4rem));padding:var(--base-padding) calc(var(--base-padding) + var(--shadow-padding)) calc(var(--base-padding) + var(--shadow-padding)) var(--base-padding);box-sizing:border-box;border:3px solid transparent;--tile-group-row-height: calc(6px + 1.34 * var(--tile-size, 4rem));min-height:var(--tile-group-row-height);background:transparent}.tile-group-placeholder{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:calc(1.31 * var(--tile-size, 4rem));padding:24px;border:2px dashed rgba(255,255,255,.4);border-radius:4px;text-align:center;color:#ffffffb3;box-sizing:border-box}.tile-group-fill{display:flex;width:100%}.tile-group-complete{background:#44aa7740;border:3px solid #4a7}.tile-group-incomplete{background:#96969633;border:3px dashed var(--color-gray)}.tile-group-invalid{background:repeating-linear-gradient(-45deg,rgba(204,68,68,.35),rgba(204,68,68,.35) 4px,transparent 4px,transparent 8px);border:3px dashed var(--color-error)}.tile-group-action{background:var(--color-yellow-light);border:3px solid var(--color-yellow)}.tile-group-exposed{background:#ffffff0f;border-radius:4px}.tile-group-loose{--tile-gap: calc(.16 * var(--tile-size, 4rem))}.quiz-bar-action{position:relative;display:flex;width:100%;overflow:hidden}.quiz-bar-action-active{background:var(--color-yellow-light);padding:8px;box-sizing:border-box}.quiz-bar-action-content{display:flex;flex:1;width:100%}.quiz-bar-action-content>.btn{flex:1;padding:20px 8px;font-size:clamp(16px,4.5vw,22px);border-radius:0}.quiz-bar-action-content>.btn+.btn{border-left:2px solid rgba(0,0,0,.12)}.quiz-bar-action-content>*:not(.btn){flex:1;min-width:0}.quiz-bar-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2;animation:quiz-overlay-appear .2s ease-out}@keyframes quiz-overlay-appear{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.quiz-bar-overlay-correct{background:var(--color-yellow)}.quiz-bar-overlay-content{text-align:center;padding:8px 20px}.quiz-bar-overlay-correct .quiz-bar-overlay-content{font-family:var(--font-heading);font-style:italic;font-weight:900;font-size:clamp(26px,8vw,42px);text-transform:uppercase;color:var(--color-green);letter-spacing:.01em;text-shadow:2px 3px 0 rgba(0,0,0,.1);animation:flashcard-correct-pulse .5s ease-out forwards}.quiz-bar-overlay .message-success,.quiz-bar-overlay .message-error{background:none;padding:0;border-radius:0;box-shadow:none;font-size:inherit;font-family:inherit;font-weight:inherit;text-transform:inherit;color:inherit;letter-spacing:inherit;text-shadow:inherit}.quiz-bar-nav-strip{display:flex;align-items:stretch;width:100%}.quiz-bar-score{display:flex;align-items:center;justify-content:center;min-width:80px;border-right:1px solid rgba(255,255,255,.15);padding:10px 8px;flex-shrink:0}.quiz-bar-score-content{text-align:center;display:flex;flex-direction:column;align-items:center;gap:1px}.quiz-bar-score-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-white);opacity:.5}.quiz-bar-score-fraction{font-family:var(--font-body);font-weight:700;font-size:1.25rem;color:var(--color-white);line-height:1.1}.quiz-bar-score-pct{font-family:var(--font-body);font-size:.75rem;color:var(--color-white);opacity:.6}.quiz-bar-nav-question{flex:1;display:flex;align-items:center;justify-content:center;padding:8px 16px;font-family:var(--font-body);font-weight:700;font-size:clamp(11px,2.8vw,13px);text-transform:uppercase;letter-spacing:.06em;color:var(--color-white);opacity:.65}.quiz-bar-inline-feedback{flex:1;display:flex;align-items:center;justify-content:center;padding:8px 16px;font-family:var(--font-body);font-weight:800;font-size:1rem}.quiz-bar-inline-feedback-correct{color:var(--color-green)}.quiz-bar-inline-feedback-wrong{color:var(--color-error)}.quiz-bar-inline-feedback .message-success,.quiz-bar-inline-feedback .message-error{background:none;padding:0;border-radius:0;box-shadow:none;font-size:inherit;font-family:inherit;font-weight:inherit;color:inherit}.quiz-bar-nav{display:flex;margin-left:auto}.quiz-bar-nav .btn{padding:16px 20px;font-size:clamp(14px,3.5vw,17px);border-radius:0;min-width:80px}.quiz-bar-nav .btn+.btn{border-left:2px solid rgba(0,0,0,.12)}.bottom-bar-fixed{position:fixed;bottom:0;left:0;right:0;z-index:20;display:flex;flex-direction:column;align-items:center;background:var(--color-pink-light);padding-bottom:max(0px,env(safe-area-inset-bottom));box-shadow:0 -4px 12px #00000026}.bottom-bar-inner{display:flex;flex-direction:column;width:100%;max-width:850px}.bottom-bar-actions{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;padding:6px 8px}.bottom-bar-actions-active{background:var(--color-yellow-light);border-bottom:3px solid var(--color-yellow)}[data-console-row]{display:grid;grid-template-columns:minmax(100px,1fr) 3fr;align-items:stretch}@media(min-width:480px){[data-console-row]{grid-template-columns:minmax(100px,1fr) 5fr}}[data-console-sidebar]{display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid rgba(255,255,255,.15);container-type:size}[data-console-sidebar-top],[data-console-sidebar-bottom]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;width:100%;box-sizing:border-box}[data-console-sidebar-top]{border-bottom:1px solid rgba(255,255,255,.15)}[data-console-sidebar-bottom]{gap:4px;padding-bottom:12px}[data-console-sidebar-label]{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--color-white);opacity:.5;white-space:nowrap}[data-console-sidebar] .tile{--tile-size: min(calc((100cqi - 24px) / .9), calc((100cqb - 130px) / 1.14))}[data-console-hand]{container-type:inline-size;flex:1;min-width:0;border:3px solid transparent;box-sizing:border-box}[data-console-hand][data-action]{background:var(--color-yellow-light);border-color:var(--color-yellow)}[data-console-hand-grid]{--console-tile-size: calc((100cqi - 26px) / 4.6);display:grid;grid-template-columns:repeat(5,auto);gap:calc(2px + .15 * var(--console-tile-size));padding:6px 12px 12px 6px;justify-content:start;align-content:start;height:calc(22px + 3.42 * var(--console-tile-size))}[data-console-hand-grid] .tile{--tile-size: var(--console-tile-size)}@container (min-width: 350px){[data-console-hand-grid]{--console-tile-size: calc((100cqi - 30px) / 6.5);grid-template-columns:repeat(7,auto);height:calc(20px + 2.23 * var(--console-tile-size))}}[data-discard-pool]{container-type:inline-size}[data-discard-pool] .tile,[data-discard-pool] .tile-group{--hand-ref: calc((100cqi - 6px) / 4.94);--discard-target: calc(.7 * var(--hand-ref));--discard-n: round(down, (100cqi - 6px) / (.96 * var(--discard-target)), 1);--tile-size: calc((100cqi - 6px) / (.14 + .96 * var(--discard-n)))}@container (min-width: 350px){[data-discard-pool] .tile,[data-discard-pool] .tile-group{--hand-ref: calc((100cqi - 6px) / 6.86)}}.mobile-board{position:fixed;top:var(--board-edge);left:var(--board-edge-left);right:var(--board-edge-right);bottom:var(--board-edge-bottom);overflow:hidden;--board-border: min(6px, 1.2dvh);--bw: calc(100dvw - var(--board-edge-left) - var(--board-edge-right));--bh: calc(100dvh - var(--board-edge) - var(--board-edge-bottom));--op-from-top: calc((var(--bw) - 3dvh) / 13.06);--op-from-sides: calc((var(--bw) - 4dvh - 108px) / 9.22);--op-initial: min(var(--op-from-top), var(--op-from-sides));--hand-from-width: calc((var(--bw) - 4px - 4dvh) / 12.4);--hand-from-ratio: calc( ( .5 * ( var(--bh) - 5.5dvh - 1.04 * var(--op-initial) - 2 * var(--board-border) ) - 5dvh ) / 2.18 );--hand-t: min(var(--hand-from-width), var(--hand-from-ratio));--op-from-panel: calc( (var(--bh) - 18dvh - 2.18 * var(--hand-t) - 2 * var(--board-border)) / 3.56 );--op-normal: min(var(--op-initial), max(0px, var(--op-from-panel)));--top-row-height: calc(5.5dvh + 1.04 * var(--op-normal));--side-width: calc(4.61 * var(--op-normal) + 2dvh);--bottom-height: calc(5dvh + 2.18 * var(--hand-t));--side-panel-height: calc( var(--bh) - var(--top-row-height) - var(--bottom-height) - 2 * var(--board-border) );--hand-tile-size: var(--hand-t);--opponent-tile-size: min(var(--op-normal), var(--hand-t));--melds-w: calc(var(--bw) / 2 - 2px - 3dvh);--melds-h: calc(3dvh + 2.18 * var(--hand-t));--player-meld-t: 0px;--side-row-avail: calc(var(--side-panel-height) - 7.5dvh);--side-col-avail: calc(var(--side-width) - 2dvh);--top-row-avail: calc(var(--bw) - 3dvh);--top-col-avail: calc(var(--top-row-height) - 5dvh);--center-w: calc(var(--bw) - 2 * var(--side-width) - 2 * var(--board-border));--center-avail-h: calc(var(--side-panel-height) - 8dvh);--center-avail-w: calc( (var(--center-w) - 1.5dvh - 2 * var(--board-pad-md)) * .5 - 2px );--center-tile-size: max( 0px, min(calc(var(--center-avail-h) / 1.04), calc(var(--center-avail-w) / .8)) );--side-header-reserve: 6dvh;--board-font-sm: 2dvh;--board-font-md: 2.5dvh;--board-font-lg: 3dvh;--board-gap-sm: .5dvh;--board-gap-md: 1dvh;--board-gap-lg: 2dvh;--board-pad-sm: 1dvh;--board-pad-md: 1.5dvh;--board-edge: max(var(--board-gap-sm), env(safe-area-inset-top));--board-edge-left: max(var(--board-gap-sm), env(safe-area-inset-left));--board-edge-right: max(var(--board-gap-sm), env(safe-area-inset-right));--board-edge-bottom: max(var(--board-gap-sm), env(safe-area-inset-bottom));display:grid;grid-template-columns:var(--side-width) minmax(0,1fr) var(--side-width);grid-template-rows:var(--top-row-height) minmax(0,1fr) var(--bottom-height);max-width:100vw;grid-template-areas:"top    top    top" "left   center right" "bottom bottom bottom";gap:var(--board-border);background:var(--color-pink);font-family:var(--font-body);color:var(--color-white)}.reconnecting-banner{position:absolute;top:0;left:0;right:0;z-index:20;background:var(--color-yellow);color:var(--color-pink);text-align:center;padding:4px 12px;font-family:var(--font-display);text-transform:uppercase;font-size:var(--board-font-md);font-weight:600}.mobile-board.reconnecting .action-btn{pointer-events:none;opacity:.5}.mobile-board-bottom .tile{--tile-size: var(--hand-tile-size)}.mobile-board-bottom .player-melds .tile{--tile-size: var(--player-meld-t)}.mobile-board-top .tile,.mobile-board-top .tile-group,.mobile-board-left .tile,.mobile-board-left .tile-group,.mobile-board-right .tile,.mobile-board-right .tile-group{--tile-size: var(--opponent-tile-size)}.center-last-discard .tile{--tile-size: var(--center-tile-size)}.discard-overlay .tile{--tile-size: var(--discard-tile-size, 0px)}.mobile-board-left{grid-area:left;position:relative;overflow:hidden;background:var(--color-pink-light)}.mobile-board-right{grid-area:right;position:relative;overflow:hidden;background:var(--color-pink-light)}.mobile-board-top{grid-area:top;display:flex;align-items:stretch;gap:6px;background:var(--color-blue)}.mobile-board-center{grid-area:center;min-height:0;display:flex;align-items:stretch;padding:var(--board-pad-sm) var(--board-gap-sm);gap:var(--board-gap-sm);overflow:hidden;background:var(--color-blue)}.center-last-discard{flex:1;min-height:0;overflow:hidden;display:grid;justify-content:center;justify-items:start;align-content:center;gap:var(--board-gap-md)}.center-label{font-size:var(--board-font-md);opacity:.7;white-space:nowrap;line-height:1}.mobile-board-bottom{grid-area:bottom;display:flex;min-width:0;overflow:hidden;background:var(--color-pink-light)}.player-hand-row{flex:0 0 50%;display:flex;flex-direction:column;gap:var(--board-gap-sm);min-width:0;padding:var(--board-gap-sm) var(--board-pad-sm) var(--board-pad-md)}.player-hand-header{display:flex;align-items:center;gap:var(--board-gap-sm)}.mobile-board-bottom-active .player-hand-row{background:var(--color-yellow-light)}.mobile-board-bottom-active .bottom-melds-column:before{display:none}.mobile-board-bottom-active .bottom-player-info,.mobile-board-bottom-active .player-timer{color:var(--color-pink)}.bottom-melds-column{flex:1;display:flex;flex-direction:column;position:relative;overflow:hidden}.bottom-melds-column:before{content:"";position:absolute;left:0;top:5%;bottom:5%;width:2px;background:var(--color-pink)}.mobile-board-bottom .player-melds .meld-group{gap:calc(.06 * var(--player-meld-t))}.bottom-player-info{display:flex;align-items:center;gap:var(--board-gap-sm);font-size:var(--board-font-md);padding:0 var(--board-pad-md);white-space:nowrap;flex-shrink:0}.player-timer{font-size:var(--board-font-lg);font-weight:700;font-family:var(--font-display);color:var(--color-pink);white-space:nowrap;padding:0 var(--board-pad-md);flex-shrink:0;min-height:1lh;margin-left:auto}.player-melds{flex:1;align-self:stretch;display:flex;flex-wrap:wrap;justify-content:center;align-content:center;gap:calc(.3 * var(--player-meld-t));padding:calc(.15 * var(--player-meld-t))}.player-hand{display:flex;flex-wrap:wrap;gap:calc(.1 * var(--hand-tile-size));max-width:100%}.action-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:10;background:#0003}.action-overlay-panel{background:var(--color-pink-light);border-radius:var(--radius);padding:var(--board-pad-md);box-shadow:0 2px 16px #0000004d}.player-actions{display:flex;gap:var(--board-gap-md)}.player-actions .action-btn{padding:var(--board-pad-sm) var(--board-pad-md);font-size:var(--board-font-lg);white-space:nowrap;min-height:10dvh}.discard-overlay{position:fixed;inset:0;z-index:5;background:#000c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;padding:max(2dvh,env(safe-area-inset-top)) max(2dvh,env(safe-area-inset-right)) max(2dvh,env(safe-area-inset-bottom)) max(2dvh,env(safe-area-inset-left));gap:1.5dvh}.discard-overlay-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.discard-overlay-title{font-size:var(--board-font-lg);font-family:var(--font-display);text-transform:uppercase;color:var(--color-white)}.discard-overlay-hint{font-size:var(--board-font-md);color:var(--color-white);opacity:.7}.discard-overlay-grid{flex:1;min-width:0;min-height:0;overflow:hidden;display:grid;grid-template-columns:var(--discard-grid-columns, repeat(auto-fill, 1px));align-content:start;gap:calc(.15 * var(--discard-tile-size, 0px))}.discard-overlay-grid .tile{--tile-size: var(--discard-tile-size, 0px)}.pending-feedback{font-size:var(--board-font-md);color:var(--color-pink);padding:var(--board-pad-sm) var(--board-pad-md);white-space:nowrap}.side-inner{position:absolute;top:50%;left:50%;width:var(--side-panel-height, 100dvh);height:var(--side-width);display:flex;align-items:center;justify-content:center;padding:var(--board-pad-sm) var(--board-pad-md)}.side-left-inner{transform:translate(-50%,-50%) rotate(90deg);padding-left:var(--side-header-reserve)}.side-right-inner{transform:translate(-50%,-50%) rotate(-90deg);padding-right:var(--side-header-reserve)}.side-inner .meld-group{gap:calc(.06 * var(--opponent-tile-size))}.center-buttons{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;justify-content:center;gap:var(--board-gap-sm);padding:0 var(--board-pad-md);container-type:inline-size}.center-buttons-inner{flex:1;min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:4px}.center-btn{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;width:100%;padding:0 var(--board-pad-md);font-size:var(--board-font-md);font-family:var(--font-display);text-transform:uppercase;white-space:nowrap;overflow:hidden;border:none;border-radius:var(--radius);background:var(--color-white);color:var(--color-pink);cursor:pointer;text-align:center}.center-game-info{font-size:var(--board-font-md);opacity:.7;white-space:nowrap;line-height:1}.center-buttons-row{display:flex;gap:4px;flex:1;min-height:0}@container (max-width: 120px){.center-buttons-row{flex-direction:column}}.center-discard-btn{flex-direction:column;gap:0;font-size:var(--board-font-lg);line-height:1.1;white-space:normal}@container (max-width: 120px){.center-discard-btn{font-size:var(--board-font-md)}}.center-icon-btn svg{width:60%;height:60%}.top-opponent{position:relative;display:flex;flex-direction:column;flex:1;min-width:0;overflow:hidden;background:var(--color-pink-light);padding:var(--board-pad-sm) var(--board-pad-md)}.mobile-board .opponent-area-active{background:var(--color-yellow-light)}.mobile-board .opponent-area-active .opponent-header{color:var(--color-pink)}.mobile-board .opponent-area-active .side-header{background:var(--color-yellow-light)}.top-opponent-inner{transform:rotate(180deg);display:flex;align-items:flex-end;justify-content:center;min-height:calc(1.04 * var(--op-normal))}.opponent-header{display:flex;align-items:center;gap:var(--board-gap-sm);font-size:var(--board-font-md);flex-shrink:0;white-space:nowrap}.opponent-wind{font-weight:600;opacity:.8;padding-right:var(--board-gap-sm);border-right:1px solid currentColor}.opponent-name{font-weight:700}.side-header{position:absolute;top:0;left:0;right:0;display:flex;align-items:center;justify-content:flex-start;padding:var(--board-pad-sm) var(--board-pad-sm) var(--board-gap-sm);z-index:1;overflow:hidden;background:var(--color-pink-light)}.opponent-tiles{display:flex;flex-wrap:wrap;align-content:flex-start;gap:calc(.3 * var(--opponent-tile-size));min-width:0;flex:1}.top-opponent-inner .opponent-tiles{flex:none}.side-inner .opponent-tiles{flex-direction:column;flex-wrap:nowrap;align-items:center;align-self:stretch;justify-content:center;gap:calc(.15 * var(--opponent-tile-size))}.meld-group{display:flex;gap:calc(.06 * var(--opponent-tile-size))}.meld-group-hand{flex-wrap:wrap}.center-left{display:flex;flex-direction:column;gap:var(--board-gap-md);align-items:flex-start}.center-actions{display:flex;gap:var(--board-gap-sm)}.board-btn{padding:var(--board-pad-sm) var(--board-pad-md);font-size:var(--board-font-md);font-family:var(--font-display);text-transform:uppercase;border:2px solid var(--color-white);border-radius:var(--radius);background:transparent;color:var(--color-white);cursor:pointer;white-space:nowrap}.action-btn{padding:var(--board-pad-sm) var(--board-pad-md);font-size:var(--board-font-md);font-family:var(--font-display);text-transform:uppercase;border:none;border-radius:var(--radius);cursor:pointer;min-height:8dvh;min-width:18dvh}.action-btn-primary{background:var(--color-yellow);color:var(--color-pink)}.action-btn-secondary{background:var(--color-white);color:var(--color-pink)}.action-btn:disabled{opacity:.5;cursor:default}.opponent-bonus{opacity:.8;display:inline-flex;align-items:center;gap:.15em;padding-left:var(--board-gap-sm);border-left:1px solid currentColor}.side-header .opponent-header{flex:1;min-width:0}.bonus-overlay{position:fixed;inset:0;z-index:5;background:#000c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:2dvh;padding:max(2dvh,env(safe-area-inset-top)) max(2dvh,env(safe-area-inset-right)) max(2dvh,env(safe-area-inset-bottom)) max(2dvh,env(safe-area-inset-left))}.bonus-overlay .tile{--tile-size: min(12dvh, 16dvw)}.bonus-overlay .meld-group{gap:calc(.08*min(12dvh,16dvw))}.bonus-overlay-title{font-size:var(--board-font-lg);font-family:var(--font-display);text-transform:uppercase;color:var(--color-white)}.bonus-overlay-hint{font-size:var(--board-font-md);color:var(--color-white);opacity:.7}.bonus-overlay-tiles{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5dvh}.flowers-overlay-players{display:flex;flex-direction:column;align-items:center;gap:2dvh;overflow-y:auto;min-height:0}.flowers-overlay-player{display:flex;flex-direction:column;align-items:center;gap:1dvh}.flowers-overlay-name{font-size:var(--board-font-md);font-family:var(--font-display);text-transform:uppercase;color:var(--color-white);opacity:.8}.menu-overlay{position:fixed;inset:0;z-index:5;background:#000c;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2dvh;padding:max(2dvh,env(safe-area-inset-top)) max(2dvh,env(safe-area-inset-right)) max(2dvh,env(safe-area-inset-bottom)) max(2dvh,env(safe-area-inset-left))}.menu-overlay-panel{display:flex;flex-direction:column;gap:2px;border-radius:var(--radius);overflow:hidden;min-width:50dvw}.menu-overlay-item{display:flex;align-items:center;gap:2dvh;padding:3dvh 4dvh;background:var(--color-white);color:var(--color-pink);font-size:var(--board-font-lg);font-family:var(--font-display);text-transform:uppercase;border:none;cursor:pointer;text-decoration:none}.menu-overlay-item svg{width:3dvh;height:3dvh;flex-shrink:0}.menu-overlay-hint{font-size:var(--board-font-md);color:var(--color-white);opacity:.7}.compass-grid{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:1fr 1fr 1fr;aspect-ratio:1;max-width:100%;max-height:100%}.compass-cell,.compass-center{display:flex;align-items:center;justify-content:center;min-width:0;min-height:0}.compass-center{overflow:hidden}.compass-cell .winds,.compass-center .winds{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.compass-cell .winds{transform:scale(1.6) translateY(-6%);pointer-events:none}.compass-top{grid-column:2;grid-row:1}.compass-left{grid-column:1;grid-row:2}.compass-center{grid-column:2;grid-row:2;background:var(--tracker-dark);border-radius:var(--radius);margin:20%}.compass-right{grid-column:3;grid-row:2}.compass-bottom{grid-column:2;grid-row:3}.compass-cell .compass-wind-svg,.compass-center .compass-wind-svg{width:100%;height:100%}.compass-center .winds .traditional-blue{fill:var(--tracker-light)}.compass-cell .winds .traditional-blue{fill:var(--tracker-dark)}.compass-cell .compass-wind-text-svg{width:100%;height:100%}.compass-center .compass-wind-text-svg{width:80%;height:80%}.compass-cell .winds .compass-wind-text-svg{fill:var(--tracker-dark)}.compass-center .winds .compass-wind-text-svg{fill:var(--tracker-light)}.compass-top{transform:rotate(180deg)}.compass-right{transform:rotate(-90deg)}.compass-left{transform:rotate(90deg)}.tracker-page{--tracker-dark: var(--color-yellow);--tracker-light: var(--color-pink);min-height:100dvh;display:flex;justify-content:center;background:var(--tracker-light)}.tracker-container{width:100%;max-width:min(100vw,73vh);min-height:100dvh;display:flex;flex-direction:column}.score-panel{flex:0 0 auto;display:flex;flex-direction:column;gap:4px;padding:4px 3vw}.score-row{display:flex;align-items:center;gap:6px}.score-wind-badge{flex:0 0 28px;height:28px;display:flex;align-items:center;justify-content:center;background:#ffe03314;color:var(--tracker-dark);font-family:var(--font-body);font-size:16px;font-weight:700;border-radius:4px}.score-name-input,.score-score-input{padding:6px 8px;font-family:var(--font-body);font-size:16px;color:var(--tracker-dark);background:none;border:1px solid rgba(255,224,51,.2);border-radius:4px;outline:none}.score-name-input::placeholder,.score-score-input::placeholder{color:#ffe03359}.score-name-input:focus,.score-score-input:focus{border-color:#ffe03380}.score-name-input{flex:1;min-width:60px}.score-score-input{flex:0 0 56px;width:0;min-width:0;padding:6px 4px;text-align:center;-moz-appearance:textfield;appearance:textfield}.score-score-input::-webkit-outer-spin-button,.score-score-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tracker-compass-area{flex:1;position:relative;display:flex;align-items:center;justify-content:center;min-height:0}.controls{flex:0 0 auto;display:flex;flex-direction:column;gap:8px;padding:4px 3vw 8px}.controls-top-row{display:flex;align-items:center;gap:8px}.controls-next-deal{flex:1;padding:8px;font-family:var(--font-body);font-size:14px;font-weight:600;color:var(--tracker-dark);background:none;border:1px solid rgba(255,224,51,.3);border-radius:4px;cursor:pointer;opacity:.8}.controls-next-deal:hover{opacity:1;border-color:var(--tracker-dark)}.controls-next-deal:disabled{opacity:.4;cursor:not-allowed}.controls-right-group{margin-left:auto;display:flex;align-items:center;gap:6px}.controls-rotate-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;flex-shrink:0;padding:0;background:none;border:1px solid rgba(255,224,51,.2);border-radius:4px;cursor:pointer;opacity:.7;color:var(--tracker-dark)}.controls-rotate-btn:hover{opacity:1;border-color:var(--tracker-dark)}.controls-rotate-icon{width:18px;height:18px}.controls-icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;padding:0;background:none;border:1px solid rgba(255,224,51,.2);border-radius:4px;cursor:pointer;opacity:.5;color:var(--tracker-dark)}.controls-icon-btn:hover{opacity:.8;border-color:var(--tracker-dark)}.controls-icon-btn-icon{width:14px;height:14px}.controls-bottom-row{display:flex;align-items:center;gap:8px}.controls-direction-label{font-family:var(--font-body);font-size:11px;color:#ffe03380;white-space:nowrap}.controls-direction-row{display:flex;gap:6px}.controls-info-btn{padding:4px 8px;font-family:var(--font-body);font-size:12px;font-weight:600;color:var(--tracker-dark);background:none;border:1px solid rgba(255,224,51,.25);border-radius:4px;cursor:pointer;opacity:.7}.controls-info-btn:hover{opacity:1;border-color:var(--tracker-dark)}.controls-new-game{padding:4px 12px;font-family:var(--font-body);font-size:12px;font-weight:600;color:var(--tracker-dark);background:none;border:1px solid rgba(255,224,51,.2);border-radius:4px;cursor:pointer;opacity:.5;white-space:nowrap}.controls-new-game:hover{opacity:.8;border-color:var(--tracker-dark)}.direction-overlay-backdrop{position:fixed;inset:0;z-index:10;cursor:pointer;background:#ffe033b3}.direction-overlay{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;padding-top:7vh;cursor:pointer;z-index:11;pointer-events:none}.direction-overlay>*{pointer-events:auto}.direction-overlay-content{position:relative;display:flex;align-items:center;justify-content:center}.direction-arrow-svg{width:min(95vw,69vh);color:var(--tracker-light)}.direction-overlay-label{position:absolute;font-family:var(--font-body);font-size:2.5rem;font-weight:700;text-transform:uppercase;color:var(--tracker-light);letter-spacing:.04em;background:var(--tracker-dark);padding:6px 16px;border-radius:4px}.compass-blurred{filter:blur(4px)}.confirm-overlay-backdrop{position:fixed;inset:0;z-index:20}.confirm-overlay{position:fixed;inset:0;z-index:21;display:flex;align-items:center;justify-content:center;pointer-events:none}.confirm-overlay>*{pointer-events:auto}.confirm-box{background:var(--tracker-light);border-radius:8px;padding:24px;display:flex;flex-direction:column;gap:16px;min-width:240px}.confirm-message{font-family:var(--font-body);font-size:1.1rem;font-weight:600;color:var(--tracker-dark);text-align:center;margin:0}.confirm-buttons{display:flex;gap:12px}.confirm-btn-cancel,.confirm-btn-yes{flex:1;padding:10px;font-family:var(--font-body);font-size:14px;font-weight:600;border-radius:4px;border:none;cursor:pointer}.confirm-btn-cancel{background:#ffe0331a;color:var(--tracker-dark)}.confirm-btn-yes{background:var(--tracker-dark);color:var(--tracker-light)}.scoring-toc{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;gap:6px;padding:12px 0;margin-bottom:12px;background:var(--color-bg-card)}.scoring-toc-link{padding:5px 8px;font-size:.65rem;text-decoration:none;cursor:pointer}.scoring-category-header{font-family:var(--font-body);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-yellow);margin-bottom:12px;padding-bottom:4px;border-bottom:2px solid rgba(255,255,255,.15)}.scoring-category-intro{font-size:.85rem;color:#ffffff80;line-height:1.4;margin:0 0 12px}.scoring-rule-card{background:#ffffff1a;border-radius:var(--radius);padding:12px 16px;margin-bottom:8px}.scoring-rule-header{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.scoring-rule-name{font-family:var(--font-body);font-weight:700;color:var(--color-white);font-size:1rem}.scoring-rule-chinese{font-weight:400;color:#ffffffb3;margin-left:8px;font-size:.9rem}.scoring-rule-faan{font-family:var(--font-display);font-size:.8rem;text-transform:uppercase;color:var(--color-yellow);white-space:nowrap}.scoring-rule-description{font-size:.85rem;font-weight:400;color:#ffffffd9;margin:4px 0 0;line-height:1.4}.scoring-rule-stacking-note{font-size:.78rem;font-style:italic;color:#ffffff80;margin:2px 0 0;line-height:1.4}.scoring-rule-examples{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.scoring-rule-example{display:flex;flex-wrap:wrap;gap:6px}.scoring-rule-example-group{display:flex;flex-direction:column;align-items:center}.scoring-rule-example-label{font-size:.7rem;font-weight:600;color:#ffffff80;margin-top:2px;letter-spacing:.02em}.guide-toc{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;gap:6px;padding:12px 0;margin-bottom:12px;background:var(--color-bg-card)}.guide-toc-link{padding:5px 8px;font-size:.65rem;text-decoration:none;cursor:pointer}.guide-section-header{font-family:var(--font-body);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--color-yellow);margin-bottom:12px;padding-bottom:4px;border-bottom:2px solid rgba(255,255,255,.15)}.guide-card{background:#ffffff1a;border-radius:var(--radius);padding:12px 16px;margin-bottom:8px}.guide-type-header{font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#fff9;margin:16px 0 8px}.guide-type-header:first-child{margin-top:0}.guide-category-name{font-weight:700;font-size:.9rem;color:var(--color-white);margin-bottom:8px}.guide-tile-row{display:flex;flex-wrap:wrap}.guide-labeled-tile{display:flex;flex-direction:column;align-items:center;flex:1}.guide-tile-label{font-size:.7rem;font-weight:600;color:#ffffff80;text-align:center;margin-top:10px;letter-spacing:.02em}.guide-meld-name{font-weight:700;font-size:1rem;color:var(--color-white)}.guide-meld-description{font-size:.85rem;color:#ffffffd9;margin:4px 0 0;line-height:1.4}.guide-meld-detail{font-size:.78rem;font-style:italic;color:#ffffff80;margin:2px 0 0}.guide-meld-example{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.guide-text{font-size:.85rem;color:#ffffffd9;line-height:1.5;margin:0 0 8px}.guide-winning-example{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.guide-winning-group{display:flex;flex-direction:column;align-items:center}.guide-winning-group-label{font-size:.7rem;font-weight:600;color:#ffffff80;margin-top:2px;letter-spacing:.02em}.guide-win-methods{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.guide-win-method-name{font-weight:700;font-size:.9rem;color:var(--color-white);margin-bottom:4px}.guide-win-method-description{font-size:.85rem;color:#ffffffd9;line-height:1.4}.guide-step-list{font-size:.85rem;color:#ffffffd9;line-height:1.5;margin:6px 0 0;padding-left:20px}.guide-step-list li{margin-bottom:4px}.guide-step-list li:last-child{margin-bottom:0}.guide-diagram{display:flex;justify-content:center;margin:10px 0 6px}.guide-gate-diagram{display:flex;align-items:center;gap:16px}.guide-gate-group{display:flex;flex-direction:column;align-items:center;gap:8px}.guide-gate-tiles{display:flex;gap:2px}.guide-gate-compact{transform:scale(.85);transform-origin:center;margin:-4px -10px}.guide-gate-label{font-size:.75rem;font-weight:600;color:#ffffff73;letter-spacing:.03em;text-transform:uppercase}.guide-deal-steps{display:flex;justify-content:center;align-items:flex-end;gap:32px}.guide-deal-step{display:flex;flex-direction:column;align-items:center;gap:6px}.guide-deal-step-label{font-size:.65rem;font-weight:600;color:#ffffff73;letter-spacing:.03em;text-transform:uppercase}.guide-direction-row{display:flex;gap:40px;align-items:center;justify-content:center}
