*,*::before,*::after{box-sizing:border-box}*{margin:0}@media(prefers-reduced-motion: no-preference){html{interpolate-size:allow-keywords}}body{font-family:var(--font-family-primary);font-size:var(--font-size-base);line-height:1.5;-webkit-font-smoothing:antialiased}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6{text-wrap:balance}#root,#__next{isolation:isolate}html{overscroll-behavior-y:contain;-webkit-text-size-adjust:100%}button,input,textarea,select{font-size:16px}@media(prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}}:root{--color-neutral-100: rgb(255, 255, 255);--color-neutral-200: rgb(182, 191, 193);--color-neutral-300: rgb(162, 176, 173);--color-neutral-400: rgb(161, 163, 154);--color-neutral-500: rgb(52, 69, 76);--color-neutral-600: rgb(17, 19, 20);--color-background: var(--color-neutral-100);--color-surface: var(--color-neutral-200);--color-surface-alt: var(--color-neutral-300);--color-text-primary: var(--color-neutral-600);--color-text-secondary: var(--color-neutral-500);--color-text-tertiary: var(--color-neutral-400);--color-border: var(--color-neutral-400);--color-divider: var(--color-neutral-500);--color-idle: rgb(28, 66, 134);--color-success: rgb(26, 116, 68);--color-warning: rgb(243, 162, 87);--color-danger: rgb(221, 64, 39);--color-interactive: var(--color-neutral-500);--color-interactive-hover: var(--color-neutral-400);--color-interactive-active: var(--color-neutral-300);--color-interactive-disabled: var(--color-neutral-200);--color-board-primary: rgb(113, 80, 47);--color-board-secondary: rgb(243, 162, 87);--color-board-secondary-alt: rgb(187, 113, 37);--color-player-1: rgb(84, 112, 118);--color-player-2: rgb(255, 239, 174);--color-player-1: rgb(0, 0, 0);--color-player-2: rgb(255, 255, 255);--color-valid-move: rgb(235, 83, 36)}.dark{--color-background: var(--color-neutral-600);--color-surface: var(--color-neutral-500);--color-surface-alt: var(--color-neutral-400);--color-text-primary: var(--color-neutral-100);--color-text-secondary: var(--color-neutral-200);--color-text-tertiary: var(--color-neutral-300);--color-border: var(--color-neutral-400);--color-divider: var(--color-neutral-300);--color-interactive: var(--color-neutral-400);--color-interactive-hover: var(--color-neutral-300);--color-interactive-active: var(--color-neutral-200);--color-interactive-disabled: var(--color-neutral-500);--color-board-primary: rgb(75, 51, 23);--color-board-secondary: rgb(187, 113, 37);--color-board-secondary-alt: rgb(243, 162, 87)}:root{--font-family-primary: "Inter", "Helvetica Neue", "Arial", sans-serif;--font-family-mono: "Courier New", "Courier", monospace;--font-size-xs: 1rem;--font-size-sm: 1.125rem;--font-size-base: 1.375rem;--font-size-lg: 1.625rem;--font-size-xl: 2.25rem;--font-size-xxl: 2.75rem;--font-weight-regular: 400;--font-weight-semibold: 500;--letter-spacing-tight: -0.02em;--letter-spacing-wide: 0.05em;--space-0: 0;--space-1: 0.5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 2.5rem;--space-6: 3rem;--space-8: 4rem;--space-10: 5rem;--space-12: 6rem;--space-16: 8rem;--z-base: 0;--z-piece: 10;--z-selected: 20;--z-overlay: 30;--z-cursor: 40;--z-modal: 50;--z-tooltip: 60;--radius-sm: 0.25rem;--radius: 0.5rem;--radius-md: 0.75rem;--radius-lg: 1rem;--radius-full: 9999px;--border-width: 1px;--border-style: solid;--border-color: var(--color-border);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);--shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);--focus-ring: 0 0 0 2px var(--color-interactive);--focus-ring-offset: 2px;--transition-fast: 150ms ease;--transition-base: 200ms ease;--transition-slow: 300ms ease}html{height:100%;-webkit-text-size-adjust:100%;font-size:16px;font-size:clamp(13px,3.4vw,16px)}body{height:100%;line-height:1.5;-webkit-font-smoothing:antialiased;font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);color:var(--color-text-primary);background-color:var(--color-background)}.app-container{display:flex;width:100vw;height:100vh;width:100dvw;height:100dvh}.game-page{display:grid;grid-template-columns:1fr auto 1fr;grid-template-rows:1fr;width:100%;height:100%;background:var(--color-background);--min-side-space: 3rem;--board-max-width: calc(100dvw - (2 * var(--min-side-space)));--board-max-height: 100dvh;--board-width: min( calc(var(--board-max-height) * 4 / 3), /* Height-based 4:3 */ var(--board-max-width), /* Width constraint */ 1024px /* Max size cap */ );--board-height: min( var(--board-max-height), calc(var(--board-width) * 3 / 4), 768px )}.game-grid{display:grid;min-width:var(--min-side-space);align-items:center}.game-container{display:flex;width:var(--board-width);height:var(--board-height);max-width:var(--board-width);max-height:var(--board-height)}@media(orientation: portrait){.game-page{grid-template-columns:1fr;grid-template-rows:1fr auto 1fr;--board-max-width: 100dvw;--board-max-height: calc(100dvh - (2 * var(--min-side-space)));--board-size: min( var(--board-max-width), /* Full width */ var(--board-max-height), /* Height constraint */ 1024px /* Max size cap */ );--board-width: var(--board-size);--board-height: var(--board-size)}.game-grid{min-height:var(--min-side-space);min-width:auto}.game-container{margin:0 auto}}.game-elements{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;font-size:clamp(.75rem,2vw,1rem)}:root{--component-max-width: 1200px;--modal-width: min(90vw, 500px);--button-height: var(--space-6)}@media(max-width: 768px){:root{--modal-width: 95vw;--button-height: var(--space-8)}}.hidden{display:none !important}.btn-group{display:flex;gap:var(--space-3)}.btn{display:inline-flex;align-items:center;justify-content:center;height:var(--button-height);padding:0 var(--space-2);border:var(--border-width) var(--border-style) rgba(0,0,0,0);border-radius:var(--radius-sm);font-family:var(--font-family-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;cursor:pointer;white-space:nowrap;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);text-decoration:none;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--color-interactive);color:var(--color-background)}@media(hover: hover){.btn:hover:not(:disabled){background-color:var(--color-interactive-hover);box-shadow:var(--shadow)}.btn:active:not(:disabled){background-color:var(--color-interactive-active);box-shadow:var(--shadow-sm);transform:translateY(1px)}}.btn--secondary{background-color:var(--color-interactive-disabled);color:var(--color-text-primary);border-color:var(--color-border)}@media(hover: hover){.btn--secondary:hover:not(:disabled){background-color:var(--color-interactive-active);box-shadow:var(--shadow)}.btn--secondary:active:not(:disabled){background-color:var(--color-interactive-hover);transform:translateY(1px)}}.btn--danger{background-color:var(--color-danger);color:var(--color-background)}@media(hover: hover){.btn--danger:hover:not(:disabled){background-color:var(--color-warning);box-shadow:var(--shadow)}.btn--danger:active:not(:disabled){background-color:var(--color-success);box-shadow:var(--shadow-sm);transform:translateY(1px)}}.btn--small{height:var(--space-5);padding:0 var(--space-1);font-size:var(--font-size-sm)}.btn--large{height:var(--space-8);padding:0 var(--space-3);font-size:var(--font-size-base)}.btn--full{width:100%}.btn--link{background:none;border:none;color:var(--color-interactive);padding:0;height:auto;box-shadow:none;text-decoration:underline;text-transform:none;letter-spacing:normal;font-size:inherit;font-weight:inherit;white-space:normal;word-break:break-word;min-height:auto}@media(hover: hover){.btn--link:hover:not(:disabled){color:var(--color-interactive-hover);background:none;box-shadow:none;transform:none}.btn--link:active:not(:disabled){color:var(--color-interactive-active);transform:none}}.btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn:disabled,.btn[data-disabled]{opacity:.7;box-shadow:none;transform:none}.icon{display:inline-flex;align-items:center;justify-content:center;width:3rem;height:3rem;padding:var(--space-1);font-size:clamp(1.25rem,1.5vw,1.5rem);transition:all var(--transition-fast)}.icon:first-child{margin-top:0}.icon:last-child{margin-bottom:0}.icon--settings svg{transform:scale(1.6)}@media(orientation: portrait){.icon{width:3.4rem;height:3.4rem;font-size:clamp(.875rem,1.2vw,1rem)}}.icon[data-selected]:not(.icon--rotate){color:var(--color-valid-move)}.icon--rotate{transform:rotate(-90deg)}.icon--rotate[data-selected]{transform:rotate(90deg)}.icon--forfeit{color:var(--color-danger)}.icon--status{padding:0}.icon--status[data-status=connected]{color:var(--color-success)}.icon--status[data-status=connecting]{color:var(--color-warning)}.icon--status[data-status=disconnected],.icon--status[data-status=error]{cursor:pointer;border:var(--border-width) var(--border-style);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.icon--status[data-status=disconnected]:hover,.icon--status[data-status=error]:hover{background:var(--color-danger);color:var(--color-background)}.icon--status[data-status=disconnected]{color:var(--color-text-tertiary);border-color:var(--color-text-tertiary)}.icon--status[data-status=disconnected]:hover{background:var(--color-text-tertiary)}.icon--status[data-status=error]{color:var(--color-danger);border-color:var(--color-danger)}.icon--status[data-status=error]:hover{background:var(--color-danger)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.4);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);cursor:pointer}.modal-overlay:not([data-visible]){display:none !important}.modal{position:relative;width:var(--modal-width);max-height:90vh;background-color:var(--color-background);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;display:flex;flex-direction:column;cursor:default}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-1) var(--space-3);border-bottom:var(--border-width) var(--border-style) var(--color-border)}.modal-title{font-family:var(--font-family-primary);font-size:var(--font-size-xxl);line-height:var(--font-size-xxl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.modal-close{background:none;border:none;font-size:var(--font-size-lg);color:var(--color-text-secondary);cursor:pointer;padding:0;width:var(--space-6);height:var(--space-6);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);transition:all var(--transition-fast)}@media(hover: hover){.modal-close:hover{background-color:var(--color-surface);color:var(--color-text-primary)}}.modal-close:focus-visible{outline:none;box-shadow:var(--focus-ring)}.modal-body{flex:1;padding:var(--space-3);overflow-y:auto}.modal-footer{margin-top:var(--space-3)}.section{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-3);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-sm)}.item{display:flex;justify-content:space-between;align-items:center}.item>span{font-size:var(--font-size-sm)}.item .icon{flex-shrink:0}.form-group{margin-bottom:var(--space-3)}.form-help{font-size:var(--font-size-sm)}.checkbox-label{cursor:pointer}.checkbox-label input[type=checkbox]{margin-right:var(--space-1)}.form-label{display:block;margin-bottom:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-regular);color:var(--color-text-secondary)}.form-input{width:100%;height:var(--space-6);padding:0 var(--space-3);background-color:var(--color-background);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-family-primary);font-size:var(--font-size-sm);color:var(--color-text-primary);transition:all var(--transition-fast)}.form-input::placeholder{color:var(--color-text-tertiary)}@media(hover: hover){.form-input:hover:not(:focus):not(:disabled){border-color:var(--color-interactive)}}.form-input:focus{outline:none;border-color:var(--color-interactive-hover);box-shadow:var(--focus-ring)}.form-input:invalid:not(:focus):not(:placeholder-shown){border-color:var(--color-danger)}.form-error{margin-top:var(--space-1);font-size:var(--font-size-sm);color:var(--color-danger)}.card{padding:var(--space-3);background:var(--color-surface);text-align:center;border-radius:var(--radius-sm);border:var(--border-width) var(--border-style) var(--color-border)}.content-primary{color:var(--color-text-primary)}.content-secondary{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary)}.badge{display:inline-block;border-radius:var(--radius-full);font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:var(--letter-spacing-wide)}.badge[data-variant=success]{color:var(--color-success)}.badge[data-variant=danger]{color:var(--color-danger)}.page{width:100%;min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;grid-template-columns:1fr;grid-template-areas:"header" "content" "footer"}main{display:flex;flex-direction:row;align-items:center;justify-content:center}.home-row{display:flex;flex-direction:column;align-items:center;margin:var(--space-2)}header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-2);border-bottom:var(--border-width) var(--border-style) var(--color-border)}.header__left,.header__right{display:flex;align-items:center}header .icon{margin:0}footer{display:flex;flex-direction:column;text-align:center;justify-content:center}.page-links,.footer-links{display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center;margin:var(--space-2) 0 0 0}.page-links .btn--link,.footer-links .btn--link{text-decoration:none;margin:var(--space-2) var(--space-3) 0 var(--space-3)}.copyright,.footer-links .btn--link{font-size:var(--font-size-xs);line-height:var(--font-size-xs)}.copyright{margin:var(--space-2) 0}.version-info{display:block;font-size:var(--font-size-xs);color:var(--color-text-secondary);font-family:var(--font-family-mono);user-select:all;cursor:pointer}@media(orientation: portrait){.page{display:flex;flex-direction:column}header{position:absolute;top:0;left:0;width:100%}main{flex-direction:column;flex-grow:1}.home-row{margin-bottom:var(--space-2)}.home-row:last-child{margin-bottom:0}}.language-selector-widget{display:flex;align-items:center;gap:var(--space-2);margin-right:var(--space-1)}.language-selector-widget:dir(rtl){margin:0 0 0 var(--space-1)}.language-select{appearance:none;background-color:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:var(--space-1) 0 var(--space-1) var(--space-1);font-size:var(--font-size-sm);font-family:var(--font-family-primary);cursor:pointer;transition:all var(--transition-fast);background-image:url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%23808080' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-1) center;min-height:44px}.language-select:dir(rtl){padding:var(--space-1) var(--space-1) var(--space-1) 0}.language-select:hover{background-color:var(--color-surface-hover);border-color:var(--color-accent)}.language-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 2px var(--color-accent-alpha)}.language-select option{background-color:var(--color-background);color:var(--color-text-primary)}.logo{width:100%;max-width:500px;height:auto;color:var(--color-text-primary)}.slogan{text-align:center}@media(orientation: landscape){.logo{max-width:300px}}.queue-message{color:var(--color-danger);text-align:center;margin-top:var(--space-1)}.play-controls-container{text-align:center}.rating-history{margin-top:var(--space-4)}.rating-history-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-3);color:var(--color-text-primary)}.rating-history-empty{text-align:center;padding:var(--space-4);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.rating-history-list{border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.rating-history-item{padding:var(--space-3);border-bottom:var(--border-width) var(--border-style) var(--color-border)}.rating-history-item:last-child{border-bottom:none}@media(hover: hover){.rating-history-item:hover{background-color:var(--color-surface)}}.rating-history-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-1)}.rating-history-item-meta{display:flex;justify-content:space-between;align-items:center;font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.rating-history-game-id{font-family:var(--font-family-mono);font-size:var(--font-size-sm)}.rating-change-positive{color:var(--color-success);font-weight:var(--font-weight-semibold)}.rating-change-negative{color:var(--color-danger);font-weight:var(--font-weight-semibold)}.rating-history-refresh{margin-top:var(--space-3);width:100%}.practice-game-section{display:flex;flex-direction:column;align-items:center;margin:var(--space-1) 0}.difficulty-selector{margin-top:var(--space-2);padding:var(--space-3);border:var(--border-width) var(--border-style) var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);width:100%;max-width:300px}.difficulty-controls{margin-bottom:var(--space-3)}.difficulty-controls label{display:block;margin-bottom:var(--space-2);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.difficulty-level{font-weight:var(--font-weight-semibold);color:var(--color-accent)}.difficulty-slider{width:100%;margin-top:var(--space-1)}.difficulty-actions{display:flex;gap:var(--space-2);justify-content:center}.last-game-result{display:flex;margin-bottom:var(--space-1)}.user-profile-panel{display:inline-flex;align-items:center;gap:var(--space-1)}.user-profile-name{display:inline-flex;font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--font-size-sm);max-width:112px;overflow-wrap:anywhere}.section-intro{margin-bottom:var(--space-3)}.user-info{margin-bottom:var(--space-3)}.user-info-name{display:block;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-1)}.user-info-email{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.user-stats{margin-bottom:var(--space-3)}.stats-summary{display:flex;gap:var(--space-3);margin-bottom:var(--space-3)}.stat-item{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.stat-value{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.stats-breakdown{font-size:var(--font-size-sm);color:var(--color-text-tertiary)}.breakdown-line{margin-bottom:var(--space-1)}[data-stat=wins]{color:var(--color-success);font-weight:var(--font-weight-semibold)}[data-stat=losses]{color:var(--color-danger);font-weight:var(--font-weight-semibold)}[data-stat=separator]{margin:0 var(--space-1);color:var(--color-text-secondary)}.convert-account-info{padding:var(--space-3);margin:var(--space-3) 0;color:var(--color-warning);border-radius:var(--radius-sm);border:var(--border-width) var(--border-style) var(--color-warning);font-size:var(--font-size-sm);text-align:center}.user-logout-error{padding:var(--space-3);margin:var(--space-3) 0;color:var(--color-danger);border-radius:var(--radius-sm);border:var(--border-width) var(--border-style) var(--color-danger);font-size:var(--font-size-sm);text-align:center}.auth-error{padding:var(--space-1);margin:var(--space-1) 0;color:var(--color-danger);border-radius:var(--radius-sm);border:var(--border-width) var(--border-style) var(--color-danger);font-size:var(--font-size-sm);text-align:center}.game-info,.game-controls{display:flex;flex-direction:column;width:100%;height:100%;align-items:center;justify-content:center;gap:var(--space-2)}@media(orientation: portrait){.game-controls,.game-info{flex-direction:row;height:100%;gap:var(--space-1)}}@media(max-width: 374px){.game-info,.game-controls{gap:var(--space-1)}.icon{width:2rem;height:2rem}}.player-container{position:relative;display:flex;width:100%;justify-content:center;align-items:center;font-size:clamp(.75rem,2vw,1rem);line-height:1.2;gap:var(--space-half, 0.25rem);flex-direction:column}.player-container[data-current-turn]::after{content:"";position:absolute;left:5%;bottom:-7%;width:90%;height:7px;background:var(--color-valid-move);border-radius:7px;transition:all var(--transition-fast)}.player-container[data-current-turn]:last-child::after{bottom:auto;top:-3%}.player-container:last-child{flex-direction:column-reverse}.rating-details{color:var(--color-text-tertiary);letter-spacing:.025em;text-align:center}.player-row{display:flex;align-items:center;justify-content:center;gap:var(--space-1)}.player-name{font-family:var(--font-family-primary);font-size:clamp(1rem,4vw,1.5rem);font-weight:var(--font-weight-medium);overflow-wrap:anywhere;color:var(--color-text-primary)}.player-id{font-family:var(--font-family-mono)}.player-identification{display:flex}.player-country{display:flex}.flag-icon{width:clamp(16px,3vw,32px);height:clamp(12px,2.25vw,24px);display:inline-block;vertical-align:middle;object-fit:cover}.identification-icon{width:clamp(16px,3vw,32px);height:clamp(16px,3vw,32px);display:inline-block;vertical-align:middle}.timer-container{display:flex;flex-direction:column;justify-content:center;align-items:center;width:90%;margin:0 5%;padding:var(--space-1);background:var(--color-board-primary);border-radius:var(--radius-sm)}.timer-bar{display:flex;justify-content:flex-end;align-items:flex-end;width:100%;height:clamp(25px,3.4vw,43px);overflow:hidden;border-radius:var(--radius-sm);background:var(--color-board-secondary);margin:0 0 var(--space-1) 0}.timer-bar:last-child{margin-bottom:0}.timer-bar-progress{height:100%;width:var(--progress-percent, 100%);background:var(--color-valid-move);transition:width .3s linear;will-change:width}@media(orientation: portrait){.game-elements{flex-direction:row}.player-container{font-size:clamp(.7rem,1.8vw,.9rem)}.player-container[data-current-turn]::after{left:15%;width:70%;bottom:-14%}.player-container[data-current-turn]:last-child::after{top:auto;bottom:-10%}.player-container:last-child{flex-direction:column}.timer-container{flex-direction:row;height:90%;margin:5% 0}.timer-bar{height:100%;margin:0 var(--space-1) 0 0}.timer-bar:last-child{margin-right:0}.timer-bar-progress{width:100%;height:var(--progress-percent, 100%);transition-property:height;will-change:height}}.turn-time{font-family:var(--font-family-mono);font-size:var(--font-size-base);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.btn-timer{background:var(--color-success);color:var(--color-background);cursor:pointer;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);transition:all var(--transition-fast);box-shadow:var(--shadow-sm);max-width:fit-content;border:none;border-radius:var(--radius-sm)}@media(hover: hover){.btn-timer:hover:not(:disabled){background:var(--color-warning);box-shadow:var(--shadow)}.btn-timer:active:not(:disabled){background:var(--color-danger);box-shadow:var(--shadow-sm);transform:translateY(1px)}}.btn-timer:focus-visible{outline:none;box-shadow:var(--focus-ring)}.btn-timer:disabled{opacity:.5;cursor:not-allowed;transform:none}.messages-overlay{position:fixed;top:50%;left:50%;transform:translate(-50%, -50%);z-index:var(--z-overlay);cursor:pointer;background:var(--color-background);border-radius:var(--radius-sm);padding:var(--space-2);opacity:.77;font-family:var(--font-family-primary);font-size:var(--font-size-xxl);line-height:var(--font-size-xxl);text-align:center;width:max-content;max-width:52%}@media(orientation: portrait){.messages-overlay{max-width:77%}}.btn--player-info-queue{white-space:normal;padding:var(--space-1) 0;font-size:var(--font-size-sm);height:auto;width:88%;margin:var(--space-1)}
