:root{--accent-text: light-dark(#0066d6, #70b5ff);--felt-pitch: calc(100vw / 18)}body:has(#result):before{content:"";position:fixed;inset:0;z-index:-1;background-color:var(--felt-field);background-image:linear-gradient(to right,var(--felt-rule) 0 1px,transparent 1px),linear-gradient(to bottom,var(--felt-rule) 0 1px,transparent 1px);background-size:var(--felt-pitch) 100%,100% var(--felt-pitch)}body:has(#result) header.site,body:has(#result) footer.site{background:var(--paper)}#result{display:grid;gap:1.5rem;padding-top:1.5rem}.hero-hand{margin-inline:-1.5rem;pointer-events:none}.hero-hand-frame{display:block}.hero-hand canvas{display:block;width:100%;height:100%}.band-hero{display:flex;justify-content:center;padding:.375rem 0;margin-bottom:.375rem}.band-stack{position:relative;display:flex;flex-direction:column;align-items:stretch;width:max-content;transform:rotate(var(--stack-rotate)) skew(var(--stack-skew))}.stack-offset{position:absolute;inset:6px -6px -6px 6px;background:var(--band-offset)}.band{position:relative;display:flex;justify-content:center;box-shadow:inset 0 0 0 1.5px var(--band-rim, transparent)}.band-face{display:block;font-style:italic;font-weight:900;text-transform:uppercase;white-space:nowrap}.band-name{background:var(--band-name-bg);padding:.3125rem 1.25rem;--band-rim: var(--band-name-rim)}.band-name .band-face{color:var(--band-name-text);font-size:1.375rem;letter-spacing:3px}.band-score{background:var(--band-score-bg);padding:.375rem 1.375rem;--band-rim: var(--band-score-rim)}.band-score .band-face{color:var(--band-score-text);text-transform:none;letter-spacing:1px;text-shadow:2px 2px 0 var(--band-score-pop)}.score-number{font-size:2.875rem}.score-unit{font-size:1.1875rem;font-weight:800}.band-han{background:var(--band-han-bg);padding:.25rem .875rem;--band-rim: var(--band-han-rim)}.band-han .band-face{color:var(--band-han-text);font-size:1.1875rem;letter-spacing:2px}.result-section{background:var(--wash);border:1px solid var(--rule);border-radius:.75rem;padding:1rem 1.25rem}.section-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.result-section h2{margin:0;font-size:.8125rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.panel-columns,.column{display:grid;gap:1.5rem;align-content:start}@media(min-width:56rem){main#result{max-width:64rem}.panel-columns{grid-template-columns:1fr 1fr;align-items:start}}.hand-strip{display:grid;justify-items:center;gap:.6rem}.hand-strip .tile-row{flex-wrap:wrap;row-gap:.45rem}.hand-strip .tile{width:clamp(1.6rem,calc((min(100vw,64rem) - 3.5rem - var(--hand-extras, 0rem) - (var(--tiles-half, 7) - 1) * .25rem) / var(--tiles-half, 7)),3.75rem);height:auto;aspect-ratio:32 / 44}@media(min-width:56rem){.hand-strip .tile-row{flex-wrap:nowrap}.hand-strip .tile{width:clamp(1.1rem,calc((min(100vw,64rem) - 3.5rem - var(--hand-extras, 0rem) - (var(--tiles, 14) - 1) * .25rem) / var(--tiles, 14)),3.75rem)}}.win-group{display:inline-flex;margin-left:1.1rem}.tile-row{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.25rem}.call-group{display:inline-flex;gap:.25rem;margin-left:.6rem;padding-left:.6rem;border-left:2px solid var(--rule)}.tile{display:inline-flex;width:2.25rem;height:3.1rem;border:1px solid var(--rule);border-radius:4px;background:#fff;box-shadow:0 1px 2px #0003;overflow:hidden}.tile img{width:86%;height:86%;margin:auto;object-fit:contain}.tile.winning{border-color:var(--green);box-shadow:0 0 0 2px var(--green),inset 0 0 0 1.5px #147650}.tile-fallback{margin:auto;font-size:.75rem;font-weight:700;color:#111827}.indicator-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:1.5rem}.indicator-tiles{display:flex;flex-wrap:wrap;gap:.25rem}.indicator-tiles .tile{width:1.85rem;height:2.55rem}.bills{display:grid;gap:.6rem}.bill{border-bottom:1px solid var(--rule);padding-bottom:.6rem}.bill-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-weight:600}.bill-who{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem;min-width:0}.bill-tag{border:1px solid var(--rule);border-radius:999px;padding:.05rem .5rem;color:var(--muted);font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.bill-tag-dealer{border-color:var(--accent-text);color:var(--accent-text)}.bill-points{font-variant-numeric:tabular-nums;white-space:nowrap}.bill-line{display:flex;justify-content:space-between;gap:1rem;padding:.15rem 0 0 .75rem;color:var(--muted);font-size:.875rem}.bill-line-points{font-variant-numeric:tabular-nums;white-space:nowrap}.bill-note,.shared-note{color:var(--muted);font-size:.8125rem;margin:.25rem 0 0}.base-phrase{color:var(--ink);font-weight:700}.base-mark{font-weight:400}.bill-total{display:flex;justify-content:space-between;gap:1rem;margin-top:.75rem;font-weight:700}.yaku-row,.fu-step{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;border-bottom:1px solid var(--rule);padding:.4rem 0}.yaku-row:first-child{padding-top:0}.yaku-row:last-child{border-bottom:none;padding-bottom:0}.yaku-info{min-width:0}.yaku-name{font-weight:500}.yaku-reason{color:var(--muted);font-size:.8125rem;margin:.15rem 0 0}.yaku-value,.fu-value{color:var(--muted);font-weight:600;white-space:nowrap}.fu-rounding{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.5rem 0 .1rem}.fu-figures{display:inline-flex;align-items:baseline;gap:.4rem;white-space:nowrap}.fu-raw{color:var(--muted);text-decoration:line-through}.fu-arrow{color:var(--muted)}.fu-rounded{font-weight:700}.fu-never{margin:0;font-weight:500}.fu-would-be{color:var(--muted);font-size:.875rem;margin:.5rem 0 0}.fu-ribbon{display:flex;align-items:center;gap:.6rem;margin-top:.75rem}.pill{border:1.5px solid var(--accent-text);color:var(--accent-text);border-radius:999px;padding:.1rem .7rem;font-size:.75rem;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;white-space:nowrap}.limit-callout{display:flex;align-items:center;gap:1rem}.limit-figure{text-align:center}.limit-base{color:var(--accent-text);font-size:1.375rem;font-weight:700;font-variant-numeric:tabular-nums}.limit-label{color:var(--muted);font-size:.6875rem;text-transform:uppercase;letter-spacing:.4px}.base-card{border:1px solid var(--rule);border-radius:.6rem;background:var(--paper);padding:.75rem 1rem}.base-summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;cursor:pointer;list-style:none}.base-summary::-webkit-details-marker{display:none}.disclosure-label{color:var(--accent-text);font-size:.8125rem;font-weight:600}.base-inner{margin-top:.5rem;display:grid;gap:.5rem}.base-inner .yaku-reason{margin:0}.formula{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.75rem;padding:.75rem 0}.factor{display:inline-flex;flex-direction:column;align-items:center;gap:.1rem}.factor-power{display:inline-flex;align-items:flex-start}.factor-value{font-size:1.375rem;font-weight:700;font-variant-numeric:tabular-nums}.factor-exponent{font-size:.75rem;font-weight:700}.factor-label{color:var(--muted);font-size:.6875rem;text-transform:uppercase;letter-spacing:.4px}.operator{color:var(--muted);font-size:1.125rem;align-self:center}.formula-limit{display:flex;flex-direction:column;align-items:center;gap:.3rem;text-align:center}.formula-arrow{color:var(--muted)}.hand-anim-deal .tile-row .tile{animation:deal-in .35s ease-out both;animation-delay:calc(var(--i) * 55ms)}.hand-anim-deal .tile-row .tile.winning{animation:stamp-flat .5s cubic-bezier(.2,1.4,.4,1) 1.15s both,glow-bloom 1.8s ease-in-out 1.75s both}@keyframes deal-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes stamp-flat{0%{opacity:0;transform:scale(2.4)}55%{opacity:1;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes glow-bloom{0%,to{box-shadow:0 0 0 2px var(--green),inset 0 0 0 1.5px #147650}35%{box-shadow:0 0 0 3px var(--green),0 0 22px 8px #4fc596bf,inset 0 0 0 1.5px #147650}70%{box-shadow:0 0 0 2px var(--green),0 0 12px 4px #4fc59666,inset 0 0 0 1.5px #147650}}.hand-anim-flip .tile-row .tile{animation:flip-in .4s ease-out both;animation-delay:calc(var(--i) * 60ms)}.hand-anim-flip .tile-row .tile.winning{animation:stamp-hanko .55s cubic-bezier(.25,1.3,.45,1) 1.3s both,glow-burst 1.1s ease-out 1.95s both}@keyframes flip-in{0%{opacity:0;transform:perspective(400px) rotateY(85deg)}to{opacity:1;transform:perspective(400px) rotateY(0)}}@keyframes stamp-hanko{0%{opacity:0;transform:scale(3) rotate(-14deg)}50%{opacity:1;transform:scale(.92) rotate(3deg)}72%{transform:scale(1.04) rotate(-1deg)}to{opacity:1;transform:none}}@keyframes glow-burst{0%{box-shadow:0 0 0 2px var(--green),inset 0 0 0 1.5px #147650}30%{box-shadow:0 0 0 3px var(--green),0 0 0 7px #4fc59680,inset 0 0 0 1.5px #147650}to{box-shadow:0 0 0 2px var(--green),0 0 0 20px #4fc59600,inset 0 0 0 1.5px #147650}}.hand-anim-sweep .tile-row .tile{animation:sweep-in .3s ease-out both;animation-delay:calc(var(--i) * 30ms)}.hand-anim-sweep .tile-row .tile.winning{animation:drop-bounce .6s ease-out .95s both,glow-shimmer 1.7s ease-in-out 1.6s both}@keyframes sweep-in{0%{opacity:0;transform:translate(-26px)}to{opacity:1;transform:none}}@keyframes drop-bounce{0%{opacity:0;transform:translateY(-160%) scale(1.08)}55%{opacity:1;transform:translateY(7%)}75%{transform:translateY(-4%)}to{opacity:1;transform:none}}@keyframes glow-shimmer{0%,to{box-shadow:0 0 0 2px var(--green),inset 0 0 0 1.5px #147650}15%,50%,85%{box-shadow:0 0 0 2px var(--green),0 0 16px 5px #4fc596a6,inset 0 0 0 1.5px #147650}32%,68%{box-shadow:0 0 0 2px var(--green),0 0 6px 2px #4fc59640,inset 0 0 0 1.5px #147650}}@media(prefers-reduced-motion:reduce){.hand-anim-deal .tile-row .tile,.hand-anim-flip .tile-row .tile,.hand-anim-sweep .tile-row .tile,.hand-anim-deal .tile-row .tile.winning,.hand-anim-flip .tile-row .tile.winning,.hand-anim-sweep .tile-row .tile.winning{animation:none}}
