@layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono)}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.visible{visibility:visible}.relative{position:relative}.static{position:static}.hidden{display:none}.inline{display:inline}.table{display:table}.shadow{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}:root{--color-bg: #17110c;--color-surface: #241a13;--color-surface-2: #2f2318;--color-felt: #1f4a3a;--color-felt-light: #2c6650;--color-gold: #e3a94e;--color-gold-dim: #c98f3c;--color-gold-ink: #2a1c0f;--color-ember: #c1523a;--color-ember-dim: #9c4531;--color-parchment: #f3e9d8;--color-parchment-dim: #b9a98c;--color-success: #4f9d63;--line: rgba(243, 233, 216, .14);--line-strong: rgba(243, 233, 216, .26);--font-display: "Fraunces", ui-serif, Georgia, serif;--font-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 22px;--radius-pill: 999px;--shadow-card: 0 1px 0 rgba(255, 255, 255, .04) inset, 0 12px 30px -14px rgba(0, 0, 0, .7);--shadow-raised: 0 1px 0 rgba(255, 255, 255, .05) inset, 0 24px 60px -20px rgba(0, 0, 0, .75);--shadow-glow: 0 0 0 1px var(--color-gold), 0 12px 32px -10px rgba(227, 169, 78, .45)}*{box-sizing:border-box}html,body{height:100%}body{margin:0;background:var(--color-bg);color:var(--color-parchment);font-family:var(--font-body);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;letter-spacing:-.01em}button,input,select{font-family:inherit}button{font-family:var(--font-body)}a{color:var(--color-gold)}::selection{background:var(--color-gold);color:var(--color-gold-ink)}*{scrollbar-width:thin;scrollbar-color:var(--color-gold-dim) transparent}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--color-gold-dim);border-radius:var(--radius-pill);border:2px solid transparent;background-clip:content-box}:focus-visible{outline:2px solid var(--color-gold);outline-offset:2px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes softPulse{0%,to{opacity:1}50%{opacity:.72}}.input-field,.select-field,.connection-form input,.message-input{width:100%;padding:.75rem .9rem;border:1px solid var(--line-strong);background:var(--color-bg);color:var(--color-parchment);border-radius:var(--radius-sm);font-size:1rem;transition:border-color .2s,box-shadow .2s;box-sizing:border-box}.input-field::placeholder,.connection-form input::placeholder,.message-input::placeholder{color:var(--color-parchment-dim)}.input-field:focus,.select-field:focus,.connection-form input:focus,.message-input:focus{outline:none;border-color:var(--color-gold);box-shadow:0 0 0 3px #e3a94e2e}.connection-form input:disabled{background:var(--color-surface);cursor:not-allowed}.form-group label,.connection-form label{display:block;color:var(--color-parchment-dim);font-weight:600;margin-bottom:.5rem;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.form-group small{display:block;margin-top:.5rem;color:var(--color-parchment-dim);font-size:.85rem}.btn-primary,.btn-secondary,.btn-danger,.btn-random,.join-btn,.rules-btn,.close-btn,.btn-action,.action-btn{font-family:var(--font-body);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.btn-primary,.join-btn{padding:.875rem 1.5rem;background:var(--color-gold);border:none;color:var(--color-gold-ink);border-radius:var(--radius-sm);font-size:1rem;font-weight:700}.btn-primary:hover,.join-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-glow)}.btn-primary:active,.join-btn:active:not(:disabled){transform:translateY(0)}.join-btn:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:.875rem 1.5rem;background:transparent;border:1px solid var(--line-strong);color:var(--color-parchment);border-radius:var(--radius-sm);font-size:1rem;font-weight:600}.btn-secondary:hover{background:var(--color-surface-2);border-color:var(--color-parchment-dim);transform:translateY(-2px)}.btn-danger{padding:.875rem 1.5rem;background:var(--color-ember-dim);border:none;color:var(--color-parchment);border-radius:var(--radius-sm);font-size:1rem;font-weight:700}.btn-danger:hover{transform:translateY(-2px);box-shadow:0 10px 24px -8px #c1523a8c}.btn-random{padding:.75rem 1rem;border:1px solid var(--line-strong);background:var(--color-bg);color:var(--color-parchment);border-radius:var(--radius-sm);font-size:1.2rem}.btn-random:hover{border-color:var(--color-gold);transform:scale(1.05)}.btn-random:active{transform:scale(.95)}.rules-btn{padding:.5rem 1rem;background:transparent;border:1px solid var(--color-gold-dim);color:var(--color-gold);border-radius:var(--radius-sm);font-size:.85rem;font-weight:600}.rules-btn:hover{background:var(--color-gold);color:var(--color-gold-ink);transform:translateY(-2px)}.close-btn{background:#f3e9d814;border:none;color:var(--color-parchment);font-size:1.3rem;width:35px;height:35px;border-radius:50%;line-height:1}.close-btn:hover{background:#f3e9d829}.btn-action,.action-btn{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:600;background:var(--color-surface-2);color:var(--color-parchment);border:1px solid var(--line-strong)}.btn-action:hover,.action-btn:hover{transform:translateY(-2px);border-color:var(--color-gold-dim)}.btn-action:active,.action-btn:active{transform:translateY(0)}.btn-action.primary,.action-btn.start-btn,.action-btn.roll-btn{background:var(--color-gold);color:var(--color-gold-ink);border-color:var(--color-gold)}.btn-action.success,.action-btn.bank-btn{background:var(--color-success);color:#0e1f14;border-color:var(--color-success)}.btn-action.keep,.action-btn.confirm-btn{background:var(--color-felt-light);color:var(--color-parchment);border-color:var(--color-felt-light)}.btn-action.warning{background:var(--color-gold-dim);color:var(--color-gold-ink);border-color:var(--color-gold-dim)}.btn-action.danger,.action-btn.farkle-btn{background:var(--color-ember-dim);color:var(--color-parchment);border-color:var(--color-ember-dim)}.action-btn.end-turn-btn,.action-btn.reveal-btn{background:transparent;color:var(--color-gold);border-color:var(--color-gold-dim)}.btn-action.large,.action-btn.game-over-btn{padding:1rem 2rem;font-size:1.15rem}.rules-modal{position:fixed;inset:0;background:#0a0704b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-out}.rules-content{background:var(--color-surface);border-radius:var(--radius-md);max-width:800px;width:100%;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow-raised);border:1px solid var(--line);animation:modalSlideIn .25s ease-out}.rules-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--color-surface-2),var(--color-surface));color:var(--color-parchment)}.rules-header h2{margin:0;font-size:1.4rem}.rules-body{overflow-y:auto;padding:1.5rem}.rules-section{margin-bottom:1.75rem}.rules-section:last-child{margin-bottom:0}.rules-section h3{color:var(--color-gold);margin:0 0 .75rem;font-size:1.1rem}.rules-section p,.rules-section ul,.rules-section ol{margin:.5rem 0;color:var(--color-parchment-dim);line-height:1.6}.rules-section ul,.rules-section ol{padding-left:1.5rem}.rules-section li{margin:.5rem 0}.rules-section strong{color:var(--color-parchment)}.combinations-list{display:flex;flex-direction:column;gap:.6rem}.combination-item{display:flex;align-items:center;gap:1rem;padding:.75rem;background:var(--color-bg);border-radius:var(--radius-sm);border:1px solid var(--line)}.combination-item.best{border-color:var(--color-gold-dim);background:linear-gradient(135deg,#e3a94e29,#e3a94e0d)}.combination-item.worst{opacity:.6}.combo-dice{flex-shrink:0}.combo-name{flex:1;font-weight:600;color:var(--color-parchment)}.combo-value{font-weight:700;color:var(--color-gold);font-family:var(--font-mono)}.dice-mini{display:flex;gap:.25rem}.dice-value{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--color-surface-2);border:1px solid var(--color-gold-dim);border-radius:4px;font-weight:700;color:var(--color-gold);font-size:.8rem;font-family:var(--font-mono)}.game-over-overlay{position:fixed;inset:0;background:#0a0704d9;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease-in-out}.game-over-content{background:var(--color-surface);border:1px solid var(--line-strong);border-radius:var(--radius-lg);padding:3rem;max-width:500px;width:90%;text-align:center;box-shadow:var(--shadow-raised);animation:modalSlideIn .35s ease-out}.victory-title,.defeat-title{font-size:2.25rem;margin:0 0 1rem}.victory-title{color:var(--color-gold)}.defeat-title{color:var(--color-parchment-dim)}.victory-message,.defeat-message{font-size:1.15rem;color:var(--color-parchment-dim);margin-bottom:2rem}.victory-stats,.defeat-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:2rem}.stat-item{background:var(--color-bg);border:1px solid var(--line);padding:1rem;border-radius:var(--radius-sm)}.stat-label{display:block;font-size:.8rem;color:var(--color-parchment-dim);margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.04em}.stat-value{display:block;font-size:1.4rem;font-weight:700;color:var(--color-parchment);font-family:var(--font-mono)}.game-over-btn{width:100%}.dice{background:var(--color-surface-2);color:var(--color-parchment);border:1px solid var(--line-strong);box-shadow:var(--shadow-card)}.empty-message{color:var(--color-parchment-dim);text-align:center;padding:2rem;font-style:italic}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000}}}
