:root{--color-bg: #121213;--color-surface: #1a1a1b;--color-surface-sunken: #0e0e0f;--color-border: #3a3a3c;--color-border-strong: #565758;--color-text: #e7e7e7;--color-text-muted: #818384;--color-text-inverse: #121213;--color-accent: #c0392b;--color-accent-strong: #e0594b;--color-brand-blue-glow: #024c80;--color-brand-blue: #00234e;--color-brand-blue-deep: #011a42;--color-brand-blue-abyss: #00000a;--gradient-page-bg: linear-gradient( 180deg in oklch, var(--color-brand-blue) 0%, var(--color-brand-blue-deep) 40%, var(--color-brand-blue-abyss) 100% );--color-cursor: #ffd700;--color-cell-unrevealed-bg: #3a3a3c;--color-cell-unrevealed-fg: #e7e7e7;--color-cell-revealed-direct-bg: #6aaa64;--color-cell-revealed-direct-fg: #ffffff;--color-cell-revealed-mirror-bg: #c9b458;--color-cell-revealed-mirror-fg: #ffffff;--color-cell-revealed-locked-bg: #d33a2c;--color-cell-revealed-locked-fg: #ffffff;--color-cell-pivot-border: #888;--color-key-bg: #818384;--color-key-fg: #ffffff;--color-key-bg-hover: #6a6c6e;--color-key-used-bg: #3a3a3c;--color-key-used-fg: #565758;--color-error: #c0392b;--color-success: var(--color-cell-revealed-direct-bg);--color-strike-hint: #ff8c00;--color-strike-spaces: #0a84ff;--font-family-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", sans-serif;--font-family-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", monospace;--font-family-display: var(--font-family-sans);--font-size-2xs: .6875rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.75rem;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 700;--line-height-tight: 1.15;--line-height-base: 1.5;--letter-spacing-display: .01em;--space-2xs: 2px;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--space-4xl: 64px;--cell-size: clamp(14px, 4vw, 28px);--cell-gap: clamp(2px, .4vw, 4px);--sep-space-width: clamp(4px, 1.2vw, 10px);--sep-punct-width: clamp(6px, 1.6vw, 14px);--key-height: clamp(32px, 5.3vh, 39px);--key-min-width: 28px;--key-max-width: 48px;--content-max-width: 560px;--masthead-max-width: 720px;--border-width-thin: 1px;--border-width-thick: 2px;--border-radius-sm: 4px;--border-radius-md: 6px;--border-radius-lg: 12px;--border-radius-pill: 9999px;--clip-path-octagon: polygon( 29.3% 0%, 70.7% 0%, 100% 29.3%, 100% 70.7%, 70.7% 100%, 29.3% 100%, 0% 70.7%, 0% 29.3% );--shadow-sm: 0 1px 2px rgb(0 0 0 / .06);--shadow-md: 0 4px 12px rgb(0 0 0 / .1);--shadow-lg: 0 12px 36px rgb(0 0 0 / .18);--duration-instant: 80ms;--duration-fast: .15s;--duration-base: .25s;--duration-slow: .4s;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--z-base: 0;--z-keyboard: 10;--z-toast: 50;--z-modal-overlay: 100;--z-modal: 110}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{color-scheme:dark;font-family:var(--font-family-sans);font-size:16px;line-height:var(--line-height-base);color:var(--color-text);background:var(--gradient-page-bg) fixed;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;text-rendering:optimizeLegibility}body{min-height:100dvh;background:var(--gradient-page-bg) fixed;overscroll-behavior-y:none}img,svg,video,canvas{display:block;max-width:100%}button{font:inherit;color:inherit;background:none;border:none;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;-moz-user-select:none;user-select:none}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}:focus{outline:none}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--border-radius-sm)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:1ms!important;animation-iteration-count:1!important;transition-duration:1ms!important;scroll-behavior:auto!important}}:root{--player-ribbon-trigger-height: 28px;--player-ribbon-size: calc( var(--player-ribbon-trigger-height) + var(--space-xs) + var(--space-sm) + var(--border-width-thin) )}.app{display:flex;flex-direction:column;height:100dvh;min-height:100dvh}.player-ribbon{flex:0 0 auto;width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);background:transparent;border-bottom:var(--border-width-thin) solid var(--color-border)}.app__middle{flex:1 1 0;min-height:calc(3 * var(--cell-size) + 2 * var(--cell-gap) + 2 * var(--space-xs) + 2 * var(--space-md));width:100%;max-width:960px;margin-inline:auto;display:flex;flex-direction:column;padding:var(--space-md) var(--space-md);align-items:center;justify-content:flex-start;overflow-y:auto}.app__bottom{flex:0 0 auto;width:100%;max-width:960px;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-md) var(--space-md)}.player-ribbon__header{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-md) var(--space-sm)}.app__hero{width:100%;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm)}@media (max-height: 500px){.app__hero{flex-direction:row;align-items:center;justify-content:center;gap:var(--space-md);padding:0 var(--space-md)}.app__hero>.app__masthead-stage{flex:0 0 auto;width:auto;margin-inline:0;height:clamp(80px,25dvh,150px);aspect-ratio:1600 / 640;max-width:50%}.app__hero>.app__masthead-stage>.app__masthead{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.app__hero>.topbar{flex:1 1 0;min-width:0;min-height:0}}.player-ribbon__toolbar{width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-sm)}.app__toolbar>.puzzle-status{justify-self:center}.puzzle-status{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-variant-numeric:tabular-nums}.puzzle-status__id{font-weight:var(--font-weight-bold);color:var(--color-text)}.puzzle-status__sep{margin:0 var(--space-2xs)}@media (max-width: 500px){.puzzle-status__countdown-word{display:none}}.app__masthead-stage{position:relative;display:block;width:min(var(--masthead-max-width),100%,75dvh);margin-inline:auto;padding:0;border:0;background:transparent;line-height:0;cursor:pointer}.app__masthead-stage:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}.app__masthead-stage--static{cursor:default}.app__masthead{width:100%;height:auto;display:block}.masthead-particles{position:absolute;inset:0;pointer-events:none;overflow:hidden}.masthead-particles__layer{position:absolute;inset:0}.masthead-particles canvas{width:100%!important;height:100%!important}.app__title{font-family:var(--font-family-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-display);text-transform:uppercase}.app__main{width:100%;max-width:960px;margin-inline:auto;display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-lg) var(--space-md);align-items:center;justify-content:flex-start}.app__footer{width:100%;padding:var(--space-md);font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;border-top:var(--border-width-thin) solid var(--color-border)}@media (max-height: 600px){.hint{min-height:auto!important;gap:var(--space-2xs)}.hint__remaining{font-size:var(--font-size-2xs, var(--font-size-xs))}}.app__footer a{color:inherit;text-decoration:underline}.stack{display:flex;flex-direction:column;gap:var(--space-md)}.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);width:100%}.hint{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);text-align:center;width:100%}.hint__button{font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.04em;text-transform:uppercase;background:var(--color-surface);color:var(--color-text);padding:var(--space-sm) var(--space-md);border:var(--border-width-thin) solid var(--color-border-strong);border-radius:var(--border-radius-md);transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),opacity var(--duration-base) var(--ease-out)}.hint__button:hover:not(:disabled){background:var(--color-surface-sunken)}.hint__button--fade{opacity:0;pointer-events:none}.hint__cost{font-weight:var(--font-weight-regular);opacity:.75;margin-left:var(--space-xs)}.hint__text{font-size:var(--font-size-base);font-style:italic;max-width:64ch}.hint__label{font-style:normal;font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.06em;font-size:var(--font-size-xs);margin-right:var(--space-xs);color:var(--color-text-muted)}.board-scroll{width:100%;display:flex;flex-direction:column;align-items:center}.no-puzzle-today{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm);text-align:center;padding:var(--space-xl) var(--space-md);width:100%}.no-puzzle-today__title{font-size:clamp(20px,4vw,32px);font-weight:var(--font-weight-bold);color:var(--color-text);margin:0}.no-puzzle-today__sub{font-size:var(--font-size-sm);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0}.no-puzzle-today__countdown{font-family:var(--font-family-mono);font-size:clamp(40px,12vw,96px);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text);margin:0;line-height:1.1}.board{display:flex;flex-direction:column;gap:var(--cell-gap);align-items:center;width:100%;padding-block:var(--space-xs)}.row{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--cell-gap);white-space:nowrap;perspective:800px}.row--active{position:relative;z-index:1}@keyframes row-shake{0%,to{transform:translate(0)}15%{transform:translate(-6px)}30%{transform:translate(6px)}45%{transform:translate(-5px)}60%{transform:translate(4px)}80%{transform:translate(-2px)}}.row--shake{animation:row-shake .32s ease-in-out}@media (prefers-reduced-motion: reduce){.row--shake{animation:none}}.row--paid{position:relative;opacity:.4}.row--paid:after{content:"";position:absolute;left:calc(-1 * var(--cell-size));right:calc(-1 * var(--cell-size));top:50%;border-top:3px solid var(--color-strike-hint);pointer-events:none}.row--paid-spaces:after{border-top-color:var(--color-strike-spaces)}.board--bare .sep--space,.board--bare .sep--punct{display:none}.topbar{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);width:100%;min-height:calc(var(--key-height) + 2 * var(--space-xs) + 1.6em + 1.4em)}.reveal-buttons{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:var(--space-md);width:100%;min-height:var(--key-height)}@media (max-width: 380px){.reveal-buttons{flex-direction:column;align-items:center}}.hint-display{display:flex;align-items:center;justify-content:center;text-align:center;width:100%;min-height:1.6em}.status-line{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;text-align:center;width:100%;margin:0}.cell{display:inline-grid;place-items:center;width:var(--cell-size);height:var(--cell-size);flex-shrink:0;font-size:calc(var(--cell-size) * .6);font-weight:var(--font-weight-bold);text-transform:uppercase;line-height:1;border:var(--border-width-thick) solid var(--color-border);background:transparent;color:var(--color-text);border-radius:var(--border-radius-sm);transition:border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.cell--filled{border-color:var(--color-border-strong)}.cell--revealing{animation:tile-flip var(--reveal-duration, .4s) cubic-bezier(.5,0,.5,1) var(--reveal-delay, 0ms) both;transition:none;backface-visibility:hidden}@keyframes tile-flip{0%{transform:rotateY(0)}50%{transform:rotateY(90deg)}to{transform:rotateY(0)}}@media (prefers-reduced-motion: reduce){.cell--revealing{animation:none}}.cell--active{position:relative;z-index:1;outline:var(--border-width-thick) solid var(--color-cursor);outline-offset:2px;animation:cursor-pulse 4s var(--ease-in-out) infinite}@keyframes cursor-pulse{0%,to{box-shadow:0 0 0 0 transparent}50%{box-shadow:0 0 16px 6px color-mix(in srgb,var(--color-cursor) 80%,transparent)}}@media (prefers-reduced-motion: reduce){.cell--active{animation:none}}.cell--pivot{border-style:solid;border-color:var(--color-cell-pivot-border)}.cell--green{background:var(--color-cell-revealed-direct-bg);color:var(--color-cell-revealed-direct-fg);border-color:var(--color-cell-revealed-direct-bg)}.cell--yellow{background:var(--color-cell-revealed-mirror-bg);color:var(--color-cell-revealed-mirror-fg);border-color:var(--color-cell-revealed-mirror-bg)}.cell--red{background:var(--color-cell-revealed-locked-bg);color:var(--color-cell-revealed-locked-fg);border-color:var(--color-cell-revealed-locked-bg);clip-path:var(--clip-path-octagon)}.cell--gray{background:var(--color-key-used-bg);color:var(--color-key-used-fg);border-color:var(--color-key-used-bg)}.cell--empty{background:#000;border-color:#000}.sep{display:inline-grid;place-items:center;height:var(--cell-size);font-size:calc(var(--cell-size) * .6);font-weight:var(--font-weight-bold);color:var(--color-text-muted);line-height:1}.sep--space{width:var(--sep-space-width)}.sep--punct{width:var(--sep-punct-width)}.keyboard{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-xs);width:100%;max-width:var(--content-max-width);-webkit-user-select:none;-moz-user-select:none;user-select:none}.keyboard__row{display:flex;justify-content:center;gap:var(--space-xs)}.key{flex:1 1 var(--key-min-width);min-width:0;max-width:var(--key-max-width);height:var(--key-height);display:grid;place-items:center;background:var(--color-key-bg);color:var(--color-key-fg);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);text-transform:uppercase;border-radius:var(--border-radius-sm);transition:background var(--duration-fast) var(--ease-out),color var(--duration-fast) var(--ease-out)}.key:hover:not(:disabled){background:var(--color-key-bg-hover)}.key:active:not(:disabled){transform:scale(.96)}.key:disabled{opacity:.55;cursor:not-allowed}.key--util{flex-basis:calc(var(--key-min-width) * 1.5);max-width:calc(var(--key-max-width) * 1.4);font-size:var(--font-size-base);text-transform:none}.key--green{background:var(--color-cell-revealed-direct-bg);color:var(--color-cell-revealed-direct-fg)}.key--yellow{background:var(--color-cell-revealed-mirror-bg);color:var(--color-cell-revealed-mirror-fg)}.key--red{background:var(--color-cell-revealed-locked-bg);color:var(--color-cell-revealed-locked-fg);clip-path:var(--clip-path-octagon)}.key--gray{background:var(--color-key-used-bg);color:var(--color-key-used-fg)}.app__keyboard-row{display:flex;flex-direction:row;align-items:center;gap:var(--space-md);width:100%}.app__keyboard-row>.keyboard{flex:1 1 0;min-width:0}.app__keyboard-row>.keyboard>.keyboard__row--util{display:none}.app__keyboard-row>.next-puzzle{flex:1 1 0;min-width:0}.next-puzzle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2xs);text-align:center;padding:0 var(--space-sm)}.next-puzzle__label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin:0}.next-puzzle__hms{font-family:var(--font-family-mono);font-size:clamp(24px,7vw,56px);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text);margin:0;line-height:1.1}.hint--end{gap:var(--space-2xs)}.hint__title{font-family:var(--font-family-display);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-display);text-transform:uppercase;color:var(--color-accent)}.hint__answer{font-size:var(--font-size-base);font-style:italic;line-height:var(--line-height-tight);max-width:40ch}.hint__byline{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center;margin-top:var(--space-2xs)}.hint__stats{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em}@media (max-height: 500px){:root{--cell-size: clamp(14px, 3vw, 22px);--key-height: clamp(24px, 7vh, 30px)}.topbar{min-height:0;gap:var(--space-2xs)}.reveal-buttons{flex-direction:row;flex-wrap:nowrap;gap:var(--space-sm);min-height:0}.hint__button{padding:var(--space-2xs) var(--space-sm);font-size:var(--font-size-xs);white-space:nowrap}.hint__cost{display:none}.hint-display{min-height:1em;font-size:var(--font-size-xs)}.status-line{font-size:var(--font-size-2xs)}.hint--end{gap:0}.hint__title{font-size:var(--font-size-base)}.hint__answer{font-size:var(--font-size-sm);max-width:100%}.hint__byline,.hint__stats{font-size:var(--font-size-2xs);margin-top:0}}.sharegrid{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);width:100%;margin-top:var(--space-md);padding:var(--space-md);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--border-radius-md);color:var(--color-text)}.sharegrid__image-wrap{flex:0 0 auto;aspect-ratio:1 / 1;width:100%;max-width:clamp(180px,40vh,420px);align-self:center;border-radius:var(--border-radius-md);overflow:hidden}.sharegrid__image{display:block;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.sharegrid__controls{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-sm)}.app--middle-clipped .sharegrid__image-wrap{max-width:clamp(160px,28vh,240px)}@media (max-width: 480px),(max-height: 600px){.sharegrid__image-wrap{max-width:clamp(140px,40vh,420px)}.app--middle-clipped .sharegrid__image-wrap{max-width:clamp(120px,28vh,240px)}}.sharegrid__actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:var(--space-sm)}.sharegrid__action{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);color:var(--color-text);background:var(--color-surface);border:var(--border-width-thin) solid var(--color-border-strong);border-radius:var(--border-radius-md);padding:var(--space-xs) var(--space-sm);cursor:pointer;font-family:var(--font-family-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.02em;min-width:6.5em;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.sharegrid__action:hover{background:var(--color-surface-sunken)}.sharegrid__action:focus-visible{outline:var(--border-width-thick) solid var(--color-accent);outline-offset:2px}.sharegrid__icon-svg{display:block}.howto-trigger{display:inline-flex;align-items:center;justify-content:center;height:var(--player-ribbon-trigger-height);padding:0 var(--space-sm);font-family:var(--font-family-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);letter-spacing:.02em;line-height:1;color:var(--color-text);background:transparent;border:var(--border-width-thin) solid var(--color-border-strong);border-radius:var(--border-radius-md);cursor:pointer;white-space:nowrap;justify-self:start;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.howto-trigger:hover{background:var(--color-surface-sunken);border-color:var(--color-text)}.howto-trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (max-width: 500px){.howto-trigger.howto-trigger{width:var(--player-ribbon-trigger-height);height:var(--player-ribbon-trigger-height);padding:0;border-radius:50%}.howto-trigger__label{display:none}.howto-trigger:before{content:"?";font-size:var(--font-size-base);font-weight:var(--font-weight-bold);line-height:1}}.howto-dialog{--cell-size: 36px;width:min(420px,calc(100vw - 2 * var(--space-md)));max-height:calc(100dvh - 2 * var(--space-xl));padding:0;margin:auto;background:var(--color-surface);color:var(--color-text);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--border-radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.howto-dialog::backdrop{background:#0000008c}.howto-dialog__close{position:absolute;top:var(--space-sm);right:var(--space-sm);display:inline-grid;place-items:center;width:32px;height:32px;padding:0;font-size:var(--font-size-xl);line-height:1;color:var(--color-text);background:transparent;border:0;border-radius:var(--border-radius-pill);cursor:pointer;z-index:1}.howto-dialog__close:hover{background:var(--color-surface-sunken)}.howto-dialog__close:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.howto-dialog__body{max-height:calc(100dvh - 2 * var(--space-xl));overflow-y:auto;padding:var(--space-xl) var(--space-lg) var(--space-lg)}.howto-dialog__title{margin:0 0 var(--space-xs);font-family:var(--font-family-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-display)}.howto-dialog__lede{margin:0 0 var(--space-md);color:var(--color-text-muted)}.howto-dialog__heading{margin:var(--space-lg) 0 var(--space-2xs);font-size:var(--font-size-base);font-weight:var(--font-weight-bold)}.howto-dialog p{margin:0 0 var(--space-sm)}.howtoplay__row{display:flex;align-items:center;gap:var(--cell-gap);margin:var(--space-sm) 0 0}.howtoplay__pivot-list{list-style:none;margin:var(--space-sm) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-sm)}.howtoplay__pivot-list li{display:flex;align-items:center;gap:var(--space-md)}.howtoplay__pivot-list .howtoplay__row{margin:0}.howtoplay__pivot-label{font-size:var(--font-size-sm);color:var(--color-text-muted);min-width:6.5em}.howtoplay__legend{list-style:none;margin:var(--space-sm) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-sm)}.howtoplay__legend li{display:flex;align-items:center;gap:var(--space-md)}.howtoplay__hint-demo{display:flex;justify-content:center;margin:var(--space-sm) 0}.howtoplay__hint-demo .hint__button{pointer-events:none}.howtoplay__hint-example{margin:var(--space-sm) 0 0;padding:var(--space-sm) var(--space-md);background:var(--color-surface-sunken);border-radius:var(--border-radius-sm)}.howtoplay__hint-example em{font-style:italic}.howtoplay__hint-example .hint__label{margin-right:var(--space-xs)}.juice-overlay-root{position:fixed;inset:0;z-index:80;pointer-events:none;overflow:visible}.juice-particle-root{position:fixed;inset:0;pointer-events:none;overflow:visible}.juice-particle-root canvas{pointer-events:none}.juice-halo{position:absolute;pointer-events:none;opacity:0;transform-origin:center center;will-change:opacity,transform,filter}.juice-halo--score-reward{z-index:2;border-radius:999px;background:radial-gradient(ellipse at center,#fffff5e6,#ffeb9b94 34%,#ff8a2c47 57%,#ff8a2c00 78%);mix-blend-mode:screen}.juice-trail{position:fixed;inset:0;z-index:3;pointer-events:none;overflow:visible}.juice-trail__path{pointer-events:none;fill:none;stroke:#e6c065;stroke-linecap:round;stroke-linejoin:round;opacity:0;will-change:opacity,stroke-dashoffset;filter:drop-shadow(0 0 8px rgb(230 192 101 / .5))}.juice-trail--match-zero .juice-trail__path{stroke:#72a2cb;filter:drop-shadow(0 0 6px rgb(114 162 203 / .35))}.juice-trail--match-reward .juice-trail__path{stroke:#ffd77e;filter:drop-shadow(0 0 8px rgb(255 215 126 / .58)) drop-shadow(0 0 16px rgb(255 172 64 / .28))}.juice-trail--match-dragon .juice-trail__path{stroke:#ff9756;filter:drop-shadow(0 0 9px rgb(255 151 86 / .7)) drop-shadow(0 0 20px rgb(224 89 75 / .42))}.juice-trail--match-warning .juice-trail__path{stroke:#7cb1dd;filter:drop-shadow(0 0 7px rgb(124 177 221 / .42))}.juice-halo--match-tile-clear,.juice-halo--match-dragon-clear{z-index:2;border-radius:18px;mix-blend-mode:screen}.juice-halo--match-tile-clear{background:radial-gradient(ellipse at center,#ffecaebd,#e6c06557 42%,#e6c06500 78%)}.juice-halo--match-dragon-clear{background:radial-gradient(ellipse at center,#fff0c4db,#ff97567a 38%,#e0594b00 80%)}.juice-halo--match-timer-low,.juice-halo--match-timer-final,.juice-halo--match-timer-timeout{z-index:4;border-radius:999px;mix-blend-mode:screen}.juice-halo--match-timer-low{background:radial-gradient(ellipse at center,#ffdb965c,#e8b45c33 46%,#e8b45c00 78%)}.juice-halo--match-timer-final,.juice-halo--match-timer-timeout{background:radial-gradient(ellipse at center,#ffeec2b8,#d34c436b 44%,#d34c4300 80%)}.juice-halo--match-group-reward,.juice-halo--match-group-reward-jackpot,.juice-halo--match-large-clear-reward,.juice-halo--match-dragon-group-reward,.juice-halo--match-board-lock{z-index:2;border-radius:18px;mix-blend-mode:screen}.juice-halo--match-group-reward{background:radial-gradient(ellipse at center,#ffecaea3,#e6c06552 45%,#e6c06500 80%)}.juice-halo--match-group-reward-jackpot,.juice-halo--match-large-clear-reward{background:radial-gradient(ellipse at center,#fffae8b8,#ffc66057 38%,#e6c0651f 64%,#e6c06500 86%)}.juice-halo--match-dragon-group-reward{background:radial-gradient(ellipse at center,#fff0c4d1,#ff975675 38%,#e0594b33 62%,#e0594b00 84%)}.juice-halo--match-board-lock{border:2px solid rgb(166 218 229 / .38);background:radial-gradient(ellipse at center,#bee8ee29,#75aebe1a 52%,#75aebe00 82%)}.match-odometer{display:inline-flex;align-items:flex-start;height:1em;line-height:1;font-variant-numeric:tabular-nums}.match-strip{display:inline-block;vertical-align:top;width:.62em;height:1em;line-height:1;overflow:hidden;animation:matchSlotFadeIn .4s ease-out backwards}.match-strip__stack{display:flex;flex-direction:column;will-change:transform}.match-strip__glyph{height:1em;line-height:1;text-align:center}.match-strip-sep{display:inline-block;vertical-align:top;height:1em;line-height:1;width:.62em;text-align:center;animation:matchSlotFadeIn .4s ease-out backwards}@keyframes matchSlotFadeIn{0%{opacity:0}to{opacity:1}}:root{--match-fall-duration: .5s;--match-clear-duration: .35s;--match-fall-ease: cubic-bezier(.55, .05, .55, .95);--match-floater-duration: 2.4s;--match-floater-admonish-duration: 1.2s;--match-board-bg: transparent;--match-cell-bg: var(--color-cell-unrevealed-bg);--match-tile-radius: var(--border-radius-md);--match-tile-ring-width: clamp(.5px, 2cqi, 2px);--match-tile-ring-color: var(--color-brand-blue-glow);--match-tile-dragon-bg-strength: 18%;--match-tile-dragon-inset-strength: .5;--match-tile-dragon-inset-color: color-mix(in srgb, var(--color-accent) 30%, transparent);--match-tile-dragon-halo-blur: clamp(4px, 14cqi, 22px);--match-tile-dragon-halo-color: color-mix(in srgb, var(--color-accent-strong) 85%, transparent);--match-tile-dragon-halo-inner-blur: clamp(2px, 5cqi, 8px);--match-tile-dragon-halo-inner-color: var(--color-accent-strong);--match-tile-selected-ring-width: 3px;--match-tile-selected-color-neutral: rgb(91 160 230);--match-tile-selected-color-scoring: rgb(230 192 101);--match-tile-selected-glow-blur: 12px;--match-tile-selected-glow-alpha: 50%}.match-app{display:flex;flex-direction:column;height:100dvh;min-height:100dvh;width:100%;background:transparent;color:var(--color-text);font-family:var(--font-family-sans)}.match-app--minimal{--match-design-vmin: 800px;--match-scale: clamp(.5, calc(100vmin / var(--match-design-vmin)), 2);--match-board-gap: calc(24px * var(--match-scale));--match-edge-pad: calc(16px * var(--match-scale));--match-min-cell-px: 44px;--board-min-size: calc(6 * var(--match-min-cell-px));--board-frac-square: .75;--board-frac-extreme: 1;--board-frac-saturation: 2;--board-frac-blend: clamp( 0, calc( (var(--viewport-aspect-ratio, 1) - 1) / (var(--board-frac-saturation) - 1) ), 1 );--board-frac: calc( var(--board-frac-square) + (var(--board-frac-extreme) - var(--board-frac-square)) * var(--board-frac-blend) );--match-layout-vmin: min(100vw, calc(100dvh - var(--player-ribbon-size)));--board-axis: calc( var(--match-layout-vmin) - 2 * var(--match-edge-pad) - 2 * var(--match-board-gap) );--board-size: max( var(--board-min-size), calc(var(--board-axis) * var(--board-frac)) )}.match-app--minimal .match-app__middle{flex:1 1 0;display:grid;grid-template-rows:1fr auto 1fr;grid-template-columns:1fr auto 1fr;padding:var(--match-edge-pad);gap:var(--match-board-gap);min-width:0;min-height:0;overflow:hidden}.match-app--minimal .match-app__board-area{grid-row:2;grid-column:2;align-self:center;justify-self:center;width:var(--board-size);height:var(--board-size);display:flex;align-items:center;justify-content:center;min-width:0;min-height:0;position:relative;overflow:visible}.match-app__board-area,.match-app__board-area *,.match-app__board-area *:before,.match-app__board-area *:after{-moz-user-select:none;user-select:none;-webkit-user-select:none}.match-app__board-area{-webkit-touch-callout:none}.match-app--minimal .match-app__board-area:has(.match-tile--clearing){z-index:6}.match-app--minimal .match-app__below-board{display:contents}.match-app--minimal .match-app__rules-summary{grid-row:2;grid-column:1;align-self:center;justify-self:end;max-width:min(24ch,100%);min-width:0;margin-inline-end:var(--space-xs);color:var(--color-text);text-align:right;overflow-wrap:anywhere;z-index:4}.match-app__rules-summary,.match-app__rules-summary *,.match-app__rules-summary *:before,.match-app__rules-summary *:after{-moz-user-select:none;user-select:none;-webkit-user-select:none}.match-app__rules-name{font-weight:var(--font-weight-bold);font-size:clamp(18px,2.4cqw,30px);line-height:1.05}.match-app__rules-description{margin:var(--space-xs) 0 0;font-size:clamp(12px,1.35cqw,16px);line-height:1.25;color:var(--color-text-muted)}.match-app--minimal .match-app__top-hud{--match-masthead-left: 0px;--match-masthead-width: 100%;grid-row:1 / -1;grid-column:1 / -1;align-self:start;justify-self:stretch;height:max(0px,calc((100% - var(--board-size) - 2 * var(--match-board-gap)) / 2 + var(--match-edge-pad)));margin-block-start:calc(-1 * var(--match-edge-pad));display:grid;grid-template-columns:max-content minmax(0,1fr) max-content;-moz-column-gap:var(--match-board-gap);column-gap:var(--match-board-gap);align-items:start;min-width:0;min-height:0;overflow:visible;pointer-events:none;position:relative;z-index:5;container-type:size}.match-app--minimal .match-app__hud-slot{height:100%;min-width:0;min-height:0;display:flex;align-items:flex-end;pointer-events:none;position:relative;z-index:2}.match-app--minimal .match-app__timer-slot{grid-column:1;justify-content:flex-start}.match-app--minimal .match-app__limit-hud{display:inline-flex;align-items:flex-end;gap:clamp(16px,2.8cqw,32px)}.match-app--minimal .match-app__score-slot{grid-column:3;justify-content:flex-end;max-width:min(50cqw,50vw);overflow:visible}.match-app--minimal .match-app__timer-slot .match-clock,.match-app--minimal .match-app__timer-slot .match-move-counter{padding:0;font-size:min(clamp(22px,calc(var(--match-cell-px, var(--match-min-cell-px)) * .56),48px),max(20px,calc((100cqh - var(--match-edge-pad)) * .62)));text-align:left}.match-app--minimal .match-app__score-slot .match-app__big-score{width:100%;display:flex;align-items:flex-end;justify-content:flex-end;min-width:0;overflow:visible;font-size:min(clamp(24px,calc(var(--match-cell-px, var(--match-min-cell-px)) * .72),64px),max(20px,calc((100cqh - var(--match-edge-pad)) * .72)));text-align:right}.match-app--minimal .match-app__masthead-slot{position:absolute;inset-block:0;left:var(--match-masthead-left);width:var(--match-masthead-width);height:100%;min-width:0;min-height:0;display:flex;align-items:flex-start;justify-content:center;overflow:hidden;pointer-events:none;z-index:1;container-type:size;transition:left .18s ease,width .18s ease}.match-app--layout-motion-suppressed .match-app__masthead-slot,.match-app--layout-motion-suppressed .match-app__masthead-stage,.match-app--layout-motion-suppressed .match-app__trace-fit,.match-app--layout-motion-suppressed .match-app__sequence-tile{transition:none!important}.match-app--minimal.match-app--portrait .match-app__trace-row{--match-trace-strip-bleed: max(4px, .22em);grid-row:3;grid-column:2;align-self:start;justify-self:stretch;width:100%;display:flex;align-items:flex-start;justify-content:center;height:auto;overflow:hidden}.match-app--minimal.match-app--portrait .match-app__trace-row--row .match-app__sequence-row--row{height:calc(1em + 2 * var(--match-trace-strip-bleed))}.match-app--minimal.match-app--portrait .match-app__below-board{grid-row:3;grid-column:2;align-self:start;justify-self:stretch;display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);width:100%;max-height:100%;min-width:0;overflow:hidden}.match-app--minimal.match-app--portrait .match-app__below-board .match-app__trace-row{width:100%}.match-app--minimal.match-app--portrait .match-app__below-board .match-app__rules-summary{width:100%;max-width:var(--board-size);margin-inline-end:0;color:var(--color-text);text-align:center;overflow:hidden;z-index:4}.match-app--minimal.match-app--portrait .match-app__below-board .match-app__rules-name{font-size:clamp(17px,5vw,24px)}.match-app--minimal.match-app--portrait .match-app__below-board .match-app__rules-description{font-size:clamp(11px,3vw,14px)}.match-app--minimal.match-app--landscape .match-app__trace-row{grid-row:2;grid-column:3;align-self:start;justify-self:start;min-width:0;height:auto}.match-app--minimal .match-app__trace-row{opacity:1;margin:0}.match-app--minimal.match-app--landscape .match-app__middle{grid-template-rows:minmax(0,1fr) auto 0}.match-app--minimal.match-app--landscape .match-app__top-hud{height:max(0px,calc(100% - var(--board-size) - var(--match-board-gap) + var(--match-edge-pad)))}.match-app--minimal.match-app--landscape .match-app__trace-row{padding-top:calc(var(--match-cell-px, var(--match-min-cell-px)) * .05);max-height:var(--board-size);align-items:flex-start;justify-content:flex-start}.match-app--minimal.match-app--landscape .match-app__sequence-row--column-start{font-size:clamp(32px,calc(var(--match-cell-px, var(--match-min-cell-px)) * .67),62px);--tile-step: calc(1em + var(--space-sm))}@media (orientation: landscape) and (max-height: 430px){.match-app--minimal.match-app--landscape{--player-ribbon-trigger-height: 24px;--player-ribbon-size: 29px}.match-app--minimal.match-app--landscape .player-ribbon{gap:0}.match-app--minimal.match-app--landscape .player-ribbon__header{padding:2px var(--space-sm)}.match-app--minimal.match-app--landscape .player-ribbon__toolbar{gap:var(--space-xs)}.match-app--minimal.match-app--landscape .howto-trigger{font-size:var(--font-size-xs)}.match-app--minimal.match-app--landscape .match-app__middle{row-gap:0;-moz-column-gap:var(--match-board-gap);column-gap:var(--match-board-gap)}.match-app--minimal.match-app--landscape .match-app__top-hud{height:max(0px,calc(100% - var(--board-size) + var(--match-edge-pad)))}}.match-app__big-score-fit,.match-app__trace-fit{display:inline-block;transition:transform var(--duration-base) var(--ease-out)}.match-app__big-score-impact{position:relative;display:inline-block;transform-origin:center center;will-change:transform}.match-app__big-score-fit{position:relative;z-index:1}.match-app--minimal .match-app__score-slot .match-app__big-score-fit,.match-app--minimal .match-app__score-slot .match-app__big-score-impact{transform-origin:right bottom}.match-app--minimal.match-app--portrait .match-app__trace-fit{transform-origin:center top}.match-app--minimal.match-app--landscape .match-app__trace-fit{transform-origin:left top}.match-app__masthead-stage{position:relative;display:flex;align-items:flex-start;justify-content:center;width:100%;aspect-ratio:1600 / 640;height:auto;min-width:0;padding:0;border:0;background:transparent;line-height:0;transition:width .18s ease}.match-app__masthead{width:100%;height:100%;display:block;-o-object-fit:contain;object-fit:contain;-o-object-position:top center;object-position:top center}.match-app__toolbar-actions{grid-column:3;justify-self:end;display:inline-flex;align-items:center;gap:var(--space-xs);min-width:0;white-space:nowrap}.match-app__toolbar{position:relative}.match-app__ribbon-warning{grid-column:1 / -1;position:absolute;left:50%;transform:translate(-50%);max-width:calc(100% - (2*clamp(148px,24vw,192px)));min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--color-error);font-family:var(--font-family-sans);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);line-height:1.05;text-align:center;text-transform:uppercase;white-space:nowrap;-moz-user-select:none;user-select:none;-webkit-user-select:none}.match-app__ribbon-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;height:var(--player-ribbon-trigger-height);padding:0 var(--space-sm);font-family:var(--font-family-sans);font-size:var(--font-size-sm);font-weight:var(--font-weight-bold);line-height:1;color:var(--color-text);background:transparent;border:var(--border-width-thin) solid var(--color-border-strong);border-radius:var(--border-radius-md);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.match-app__ribbon-button:hover{background:var(--color-surface-sunken);border-color:var(--color-text)}.match-app__ribbon-button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.match-clock,.match-move-counter{margin:0;padding:var(--space-2xs) var(--space-lg);font-family:var(--font-family-mono);font-size:clamp(22px,calc(var(--match-cell-px, var(--match-min-cell-px)) * .58),56px);font-weight:var(--font-weight-bold);line-height:1;letter-spacing:0;color:var(--color-text);font-variant-numeric:tabular-nums;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.match-clock--urgent,.match-move-counter--urgent{color:var(--color-error)}.match-clock--warning,.match-move-counter--warning{color:var(--color-cell-revealed-mirror-bg)}.match-app__middle{flex:1 1 0;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1%;min-height:0;overflow:hidden}.match-app__trace-row{flex:0 0 auto;width:100%;height:clamp(39px,7.7vw,62px);display:flex;justify-content:center;align-items:center;margin-top:var(--space-sm);margin-bottom:var(--space-sm);opacity:0;pointer-events:none;transition:opacity .5s var(--ease-out)}.match-app__trace-row--active{opacity:1;transition:opacity var(--duration-base) var(--ease-out)}@media (max-width: 500px){.match-app__big-score{font-size:clamp(32px,11vw,56px)}}.match-app__big-score{font-family:var(--font-family-mono);font-size:min(clamp(40px,10vw,88px),var(--match-cell-px, 88px));font-weight:var(--font-weight-bold);line-height:1;letter-spacing:.02em;color:#e6c065;font-variant-numeric:tabular-nums;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.match-app__practice-score{display:inline-block;font-family:var(--font-family-sans);font-size:.52em;font-weight:var(--font-weight-bold);letter-spacing:0;color:#e6c065}.match-app__big-score-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.match-app__board-area{flex:1 1 0;width:100%;min-height:0;display:flex;align-items:center;justify-content:center}.match-board{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none}.match-board__inner{position:relative;background:var(--match-board-bg);border-radius:var(--border-radius-lg);padding:0;box-shadow:var(--shadow-sm)}.match-board--reshuffling .match-tile{transition:transform .8s var(--ease-in-out),box-shadow var(--duration-fast) var(--ease-out)}.match-board--resizing .match-tile,.match-board--resizing .match-board__connector path{transition:none!important}.match-board__connector{position:absolute;inset:0;pointer-events:none;overflow:visible;z-index:3}.match-board__connector path{stroke-linecap:round;stroke-linejoin:round;fill:none;transition:stroke 80ms var(--ease-out),filter .12s var(--ease-out)}.match-board__connector-group{opacity:.7;transition:opacity 80ms var(--ease-out)}.match-board__connector--invalid path,.match-board__connector--zero path{stroke:#5ba0e6}.match-board__connector--invalid .match-board__connector-dot,.match-board__connector--zero .match-board__connector-dot{fill:#5ba0e6}.match-board__connector--positive path,.match-board__connector--dragon path{stroke:#e6c065}.match-board__connector--positive .match-board__connector-dot,.match-board__connector--dragon .match-board__connector-dot{fill:#e6c065}.match-board__connector--ghost .match-board__connector-group{opacity:.38}.match-board__connector--ghost path{filter:none}.match-tile-glyph{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;box-sizing:border-box;background:var(--match-cell-bg);border-radius:var(--match-tile-radius);overflow:hidden;box-shadow:0 0 0 var(--match-tile-ring-width) var(--match-tile-ring-color)}.match-tile-glyph--dragon{--match-tile-ring-color: var(--color-accent);background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent) var(--match-tile-dragon-bg-strength),var(--match-cell-bg)) 0%,var(--match-cell-bg) 100%);box-shadow:0 0 0 var(--match-tile-ring-width) var(--match-tile-ring-color),inset 0 0 0 calc(var(--match-tile-ring-width) * var(--match-tile-dragon-inset-strength)) var(--match-tile-dragon-inset-color),0 0 var(--match-tile-dragon-halo-inner-blur) var(--match-tile-dragon-halo-inner-color),0 0 var(--match-tile-dragon-halo-blur) var(--match-tile-dragon-halo-color)}.match-tile-glyph__img{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.match-tile{position:absolute;top:0;left:0;display:flex;align-items:center;justify-content:center;box-sizing:border-box;border-radius:var(--match-tile-radius);container-type:inline-size;transition:transform var(--match-fall-duration) var(--match-fall-ease),opacity var(--match-clear-duration) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);will-change:transform,opacity;pointer-events:auto}.match-tile__visual{--match-tile-selection-shadow: 0 0 0 0 rgb(0 0 0 / 0);position:relative;display:flex;width:100%;height:100%;border-radius:var(--match-tile-radius);pointer-events:none;transform-origin:center;transition:box-shadow var(--duration-fast) var(--ease-out);will-change:transform,opacity,filter,box-shadow}.juice-tile-surface-wash{position:absolute;inset:0;z-index:2;border-radius:inherit;background:#fff;opacity:0;pointer-events:none}.match-tile--dragon{z-index:1}.match-tile--dragon:not(.match-tile--selected):not(.match-tile--clearing) .match-tile-glyph--dragon{animation-name:match-dragon-board-breathe;animation-duration:var(--match-tile-dragon-breathe-duration);animation-timing-function:cubic-bezier(.37,0,.63,1);animation-iteration-count:infinite;animation-delay:var(--match-tile-dragon-breathe-delay, 0ms);animation-fill-mode:both}@keyframes match-dragon-board-breathe{0%,to{background:linear-gradient(135deg,color-mix(in srgb,var(--color-accent) var(--match-tile-dragon-bg-strength),var(--match-cell-bg)) 0%,var(--match-cell-bg) 100%);box-shadow:0 0 0 var(--match-tile-ring-width) var(--match-tile-ring-color),inset 0 0 0 calc(var(--match-tile-ring-width) * var(--match-tile-dragon-inset-strength)) var(--match-tile-dragon-inset-color),0 0 var(--match-tile-dragon-halo-inner-blur) var(--match-tile-dragon-halo-inner-color),0 0 var(--match-tile-dragon-halo-blur) var(--match-tile-dragon-halo-color)}50%{background:linear-gradient(135deg,color-mix(in srgb,rgb(108 10 18) 24%,var(--match-cell-bg)) 0%,var(--match-cell-bg) 100%);box-shadow:0 0 0 var(--match-tile-ring-width) #5c080f,inset 0 0 0 calc(var(--match-tile-ring-width) * var(--match-tile-dragon-inset-strength)) #760c1238,0 0 var(--match-tile-dragon-halo-inner-blur) #e0302480,0 0 var(--match-tile-dragon-halo-blur) #e030246c}}.match-tile--clearing{z-index:9;pointer-events:none}.match-tile--selected{--match-tile-ring-width: 0;z-index:1}.match-tile--selected .match-tile__visual,.match-tile--selected-invalid .match-tile__visual,.match-tile--selected-zero .match-tile__visual{--match-tile-selection-shadow: 0 0 0 var(--match-tile-selected-ring-width) var(--match-tile-selected-color-neutral);box-shadow:var(--match-tile-selection-shadow)}.match-tile--selected-positive .match-tile__visual,.match-tile--selected-dragon .match-tile__visual{--match-tile-selection-shadow: 0 0 0 var(--match-tile-selected-ring-width) var(--match-tile-selected-color-scoring), 0 0 var(--match-tile-selected-glow-blur) color-mix(in srgb, var(--match-tile-selected-color-scoring) var(--match-tile-selected-glow-alpha), transparent);box-shadow:var(--match-tile-selection-shadow)}.match-tile--dragon.match-tile--selected{--match-tile-dragon-halo-blur: clamp(6px, 18cqi, 28px);--match-tile-dragon-halo-color: rgb(224 89 75 / .92);--match-tile-dragon-halo-inner-blur: clamp(3px, 7cqi, 11px);--match-tile-dragon-halo-inner-color: rgb(255 72 48 / 1)}.match-tile--dragon.match-tile--selected .match-tile__visual{box-shadow:var(--match-tile-selection-shadow),0 0 clamp(5px,9cqi,14px) #ff4830c7,0 0 clamp(10px,22cqi,32px) #e0594b9e}.match-tile--clearing.match-tile--selected{z-index:9}#match-floater-layer{position:fixed;inset:0;pointer-events:none;z-index:100}.match-floater{position:absolute;pointer-events:none;transform-origin:center center;display:flex;flex-direction:column;align-items:center;gap:6px;white-space:nowrap;transform:translate(-50%,-50%)}.match-floater--admonish{animation:match-floater-admonish var(--match-floater-admonish-duration) cubic-bezier(.2,.6,.4,1) forwards}@keyframes match-floater-admonish{0%{transform:translate(-50%,-50%) scale(.7);opacity:0}12%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(2);opacity:0}}.match-floater__total{font-weight:var(--font-weight-bold);line-height:1;text-shadow:0 2px 2px rgb(0 0 0 / .85),0 5px 12px rgb(0 0 0 / .72),0 0 22px rgb(0 0 0 / .62)}.match-floater--score .match-floater__total{font-size:calc(var(--font-size-xl) * 2)}.match-floater--admonish .match-floater__total{font-size:calc(var(--font-size-xl) * 1.25);letter-spacing:.05em}.match-floater--positive .match-floater__total,.match-floater--dragon .match-floater__total{color:#e6c065;text-shadow:0 0 14px rgb(230 192 101 / .55),0 2px 2px rgb(0 0 0 / .88),0 5px 14px rgb(0 0 0 / .76),0 0 24px rgb(0 0 0 / .64)}.match-floater--all-same .match-floater__total,.match-floater--invalid .match-floater__total{color:#5ba0e6}.match-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:var(--color-accent);color:var(--color-text-inverse);font-family:inherit;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);padding:var(--space-xs) var(--space-lg);border-radius:var(--border-radius-pill);cursor:pointer;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-instant) var(--ease-out)}.match-button:hover{background:var(--color-accent-strong)}.match-button:active{transform:translateY(1px)}.match-button--secondary{background:var(--color-surface-sunken);color:var(--color-text);border:var(--border-width-thin) solid var(--color-border)}.match-button--secondary:hover{background:var(--color-key-bg-hover)}.match-app__score-breakdown-shell{position:relative;display:inline-flex;align-items:flex-end;justify-content:flex-end;pointer-events:auto}.match-app__score-breakdown-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;padding:0;margin:0;cursor:pointer;display:block;color:inherit;font:inherit;border-radius:var(--border-radius-md);position:relative;z-index:2;-moz-user-select:none;user-select:none;-webkit-user-select:none}.match-app__score-breakdown-trigger:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.match-app__score-breakdown-popover{position:absolute;z-index:14;top:calc(100% + var(--space-sm));right:0;opacity:0;pointer-events:none;transform:translateY(-6px) scale(.94);transform-origin:top right;transition:opacity .14s var(--ease-out),transform .18s var(--ease-out);will-change:opacity,transform}.match-app__score-breakdown-popover--open{opacity:1;pointer-events:auto;transform:translateY(0) scale(1)}@media (max-width: 500px){.match-app__score-breakdown-popover{top:calc(100% + var(--space-xs))}}.match-app__sequence{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);margin:var(--space-sm) auto 0;padding:var(--space-md) var(--space-lg);width:-moz-fit-content;width:fit-content;max-width:100%;background:var(--color-surface);border:var(--border-width-thin) solid var(--color-border);border-radius:var(--border-radius-md)}.match-app__score-breakdown-card{width:min(380px,calc(100vw - 2 * var(--match-edge-pad)));padding:clamp(12px,1.6vw,18px) clamp(14px,2vw,22px);gap:clamp(8px,1.1vw,12px);margin:0;justify-content:center;max-width:calc(100vw - 2 * var(--match-edge-pad));box-shadow:var(--shadow-lg)}.match-app__score-breakdown-card .match-app__sequence-group{width:100%;gap:4px}.match-app__score-breakdown-card .match-app__sequence-heading{font-size:clamp(9px,1.15vw,12px);letter-spacing:.08em}.match-app__score-breakdown-card .match-app__sequence-row{font-size:clamp(22px,3vw,30px);--tile-step: calc(1em + 8px) }.match-app__score-breakdown-card{--match-tile-radius: 4px}.match-app__score-breakdown-card .match-app__bar-row{width:100%;max-width:320px;grid-template-columns:5ch minmax(0,1fr) 5ch;-moz-column-gap:8px;column-gap:8px}.match-app__score-breakdown-card .match-app__bar-num{font-size:clamp(11px,1.35vw,14px)}.match-app__score-breakdown-card .match-app__seq-bar{width:100%;height:clamp(7px,.9vw,10px)}.match-app__score-breakdown-card .match-app__sequence-caption{font-size:clamp(13px,1.55vw,16px)}.match-app__sequence-row{--tile-step: calc(1em + var(--space-sm));position:relative;width:100%;height:1em;font-size:clamp(39px,7.7vw,62px);line-height:1}.match-app__sequence-row--row{--tile-count: 1;width:calc(var(--tile-count) * 1em + (var(--tile-count) - 1) * var(--space-sm))}.match-app__sequence-row--column-start{--tile-count: 1;width:1em;height:calc(var(--tile-count) * 1em + (var(--tile-count) - 1) * var(--space-sm))}.match-app__sequence-tile{position:absolute;top:50%;left:50%;width:1em;height:1em;display:inline-flex;align-items:center;justify-content:center;text-align:center;container-type:inline-size;transform:translate(-50%,-50%) translate(var(--tile-pos, 0px));transition:transform var(--duration-base) var(--ease-out);animation:match-sequence-tile-enter var(--duration-base) var(--ease-out)}.match-app__sequence-row--column-start .match-app__sequence-tile{top:0;left:50%;transform:translate(-50%) translateY(var(--tile-pos, 0px))}@keyframes match-sequence-tile-enter{0%{opacity:0}to{opacity:1}}.match-app__sequence-tile--placeholder{visibility:hidden}.match-app__sequence-caption{font-family:var(--font-family-mono);font-size:calc(var(--font-size-sm) * 1.5);font-weight:var(--font-weight-bold);letter-spacing:.02em;color:var(--color-text-muted);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.match-app__sequence--idle .match-app__sequence-caption,.match-app__sequence--building .match-app__sequence-caption,.match-app__sequence--invalid .match-app__sequence-caption{color:#5ba0e6}.match-app__sequence--invalid .match-app__sequence-caption{letter-spacing:.06em}.match-app__sequence--zero .match-app__sequence-caption{color:#bebebe}.match-app__sequence--positive .match-app__sequence-caption,.match-app__sequence--dragon .match-app__sequence-caption,.match-app__sequence--positive .match-app__bar-num--right,.match-app__sequence--dragon .match-app__bar-num--right{color:#e6c065}.match-app__sequence-group{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs)}.match-app__sequence-heading{font-family:var(--font-family-sans);font-size:clamp(9px,.85vw,11px);font-weight:var(--font-weight-bold);letter-spacing:.16em;color:var(--color-text-muted);opacity:.65;text-transform:uppercase;text-align:center;line-height:1}.match-app__bar-row{display:grid;grid-template-columns:6ch auto 6ch;align-items:center;-moz-column-gap:var(--space-sm);column-gap:var(--space-sm)}.match-app__bar-num{font-family:var(--font-family-mono);font-size:clamp(12px,1.45vw,17px);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-text-muted);line-height:1}.match-app__bar-num--left{text-align:right}.match-app__bar-num--right{text-align:left}.match-app__seq-bar{display:block;font-size:clamp(39px,7.7vw,62px);width:calc(4.5em + 8 * var(--space-sm));height:clamp(8px,1vw,12px);max-width:100%}.match-dialog{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:var(--space-xl);background:radial-gradient(circle at center,rgb(230 192 101 / .16),transparent 38%),#050810ad;backdrop-filter:blur(3px)}.match-dialog__panel{width:min(92vw,460px);display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl);border:var(--border-width-thick) solid rgb(230 192 101);border-radius:var(--border-radius-lg);background:linear-gradient(180deg,rgb(255 255 255 / .06),transparent 58%),var(--color-surface);box-shadow:0 18px 60px #0000008c,0 0 34px #e6c06540;text-align:center}.match-dialog__title{margin:0;color:#e6c065;font-family:var(--font-family-mono);font-size:clamp(25px,6vw,40px);font-weight:var(--font-weight-bold);line-height:1;letter-spacing:0;text-shadow:0 2px 2px rgb(0 0 0 / .82),0 0 22px rgb(230 192 101 / .38)}.match-dialog--game-over .match-dialog__title{font-size:clamp(42px,10vw,76px);line-height:.9}.match-dialog__body{display:flex;flex-direction:column;gap:var(--space-sm)}.match-dialog__message{max-width:32ch;margin:0;color:var(--color-text);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.match-dialog__reason{color:var(--color-text);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.match-dialog__score{color:#e6c065;font-family:var(--font-family-mono);font-size:clamp(28px,7vw,48px);font-weight:var(--font-weight-bold);line-height:1;font-variant-numeric:tabular-nums;text-shadow:0 2px 2px rgb(0 0 0 / .82),0 0 18px rgb(230 192 101 / .32)}.match-dialog__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-sm)}.match-dialog__button{min-width:8ch}.match-dialog__button--primary{background:var(--color-brand-blue-glow);color:var(--color-text)}.match-dialog__button--primary:hover{background:color-mix(in srgb,var(--color-brand-blue-glow) 84%,white)}.match-dialog__button--secondary{background:var(--color-surface-sunken);color:var(--color-text);border:var(--border-width-thin) solid var(--color-border)}.match-dialog__button--secondary:hover{background:var(--color-key-bg-hover)}.match-howtoplay__caption{font-size:var(--font-size-xs)!important;color:var(--color-text-muted)}.match-howtoplay__row{display:flex;gap:var(--space-xs);align-items:center;margin:var(--space-xs) 0}.match-howtoplay__mini{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;flex:none;container-type:inline-size}.match-howtoplay__tile-table{border-collapse:collapse;margin:var(--space-xs) 0;font-size:var(--font-size-sm)}.match-howtoplay__tile-table td{padding:var(--space-2xs) var(--space-sm) var(--space-2xs) 0;vertical-align:middle;border-bottom:var(--border-width-thin) solid var(--color-border)}.match-howtoplay__tile-table td:first-child{width:36px}.match-howtoplay__tile-table td:last-child{padding-right:var(--space-md)}@media (max-width: 500px){.match-app__toolbar{grid-template-columns:auto minmax(0,1fr) auto}.match-app__toolbar-actions{gap:var(--space-2xs)}.match-app__ribbon-warning{grid-column:2;position:static;justify-self:center;max-width:100%;transform:none;font-size:var(--font-size-2xs)}.match-app__ribbon-button{height:var(--player-ribbon-trigger-height);padding:0 var(--space-xs);font-size:var(--font-size-xs)}}@media (prefers-reduced-motion: reduce){.match-tile,.match-floater,.match-banner,.match-tile--clearing,.match-app__sequence,.match-app__score-breakdown-popover,.match-app__score-breakdown-trigger{animation-duration:1ms!important;transition-duration:1ms!important}.match-tile--dragon .match-tile-glyph--dragon{animation:none!important}}
