:root,:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#0e0d0b;--bg-surface:#14120e;--bg-elevated:#191611;--bg-card:#201c15;--bg-hover:#2a251c;--border-subtle:#2c2820;--border-default:#453e30;--border-strong:#5f553f;--border-focus:#f0b429;--text-primary:#f4efe3;--text-secondary:#b0a58c;--text-muted:#837a63;--text-disabled:#5f553f;--accent:#f0b429;--accent-hover:#ffc94d;--accent-dim:#f0b4291a;--accent-border:#f0b42959;--accent-focus-ring:#f0b42940;--accent-contrast:#1f1503;--buy:#3ddc8e;--buy-hover:#6ceaab;--buy-dim:#3ddc8e17;--buy-dim-md:#3ddc8e29;--buy-border:#3ddc8e4d;--buy-border-strong:#3ddc8e8c;--buy-contrast:#04241a;--sell:#ff6b5e;--sell-hover:#ff9187;--sell-dim:#ff6b5e17;--sell-dim-md:#ff6b5e29;--sell-border:#ff6b5e4d;--sell-border-strong:#ff6b5e8c;--sell-contrast:#2b0703;--warn:#e8890c;--warn-dim:#e8890c1f;--warn-border:#e8890c59;--player-a:#7cb7ff;--player-b:#ff9ad5;--grid-line:#f4efe307;--shadow-xs:2px 2px 0 #00000059;--shadow-sm:3px 3px 0 #0006;--shadow-md:5px 5px 0 #00000073;--shadow-lg:8px 8px 0 #00000080}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-base:#f5f0e4;--bg-surface:#ede6d4;--bg-elevated:#fffdf6;--bg-card:#faf6ea;--bg-hover:#f1eadb;--border-subtle:#ddd3bc;--border-default:#c2b598;--border-strong:#8f8266;--border-focus:#8a5a00;--text-primary:#211c12;--text-secondary:#5d5340;--text-muted:#7d7159;--text-disabled:#a99c80;--accent:#8a5a00;--accent-hover:#6e4700;--accent-dim:#8a5a0017;--accent-border:#8a5a0059;--accent-focus-ring:#8a5a0038;--accent-contrast:#fffdf6;--buy:#0d7a42;--buy-hover:#0a5f34;--buy-dim:#0d7a4217;--buy-dim-md:#0d7a4226;--buy-border:#0d7a4259;--buy-border-strong:#0d7a428c;--buy-contrast:#fffdf6;--sell:#c22f21;--sell-hover:#9e2314;--sell-dim:#c22f2114;--sell-dim-md:#c22f2124;--sell-border:#c22f2159;--sell-border-strong:#c22f218c;--sell-contrast:#fffdf6;--warn:#a05a00;--warn-dim:#a05a001c;--warn-border:#a05a0059;--player-a:#1d5fd6;--player-b:#b12a86;--grid-line:#211c120b;--shadow-xs:2px 2px 0 #211c121a;--shadow-sm:3px 3px 0 #211c121f;--shadow-md:5px 5px 0 #211c1224;--shadow-lg:8px 8px 0 #211c1229}:root{--font-sans:"Space Grotesk", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", "Cascadia Code", monospace;--text-2xs:clamp(.65rem, .62rem + .1vw, .7rem);--text-xs:clamp(.7rem, .68rem + .1vw, .75rem);--text-sm:clamp(.8rem, .77rem + .15vw, .875rem);--text-base:clamp(.9rem, .86rem + .2vw, 1rem);--text-md:clamp(1rem, .95rem + .25vw, 1.1rem);--text-lg:clamp(1.1rem, 1.02rem + .4vw, 1.3rem);--text-xl:clamp(1.25rem, 1.12rem + .6vw, 1.55rem);--text-2xl:clamp(1.5rem, 1.25rem + 1.1vw, 2rem);--text-display:clamp(1.6rem, 1.2rem + 2vw, 2.4rem);--space-2xs:4px;--space-xs:8px;--space-sm:12px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:2px;--radius-md:4px;--radius-lg:6px;--radius-xl:8px;--radius-pill:999px;--tap-target:44px;--size-icon-md:36px;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease:cubic-bezier(.4, 0, .2, 1);--transition-fast:.1s var(--ease);--transition-base:.16s var(--ease);--transition-slow:.26s var(--ease-out);--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--shell-sticky-offset:112px}*,:before,:after{box-sizing:border-box}html{background:var(--bg-base);scroll-behavior:smooth;-moz-text-size-adjust:100%;text-size-adjust:100%;overflow-wrap:break-word;min-height:100%;transition:background-color var(--transition-base)}body{min-height:100vh;color:var(--text-primary);background:var(--bg-base);background-image:linear-gradient(var(--grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--grid-line) 1px, transparent 1px);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-size:56px 56px;background-attachment:fixed;margin:0;line-height:1.5}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);letter-spacing:-.02em;color:var(--text-primary);margin:0;font-weight:700;line-height:1.2}button,input,select{font-family:var(--font-sans);font-size:var(--text-base)}button{cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast), opacity var(--transition-fast)}button:disabled,fieldset:disabled button,fieldset:disabled input,fieldset:disabled select{cursor:not-allowed;opacity:.38!important;box-shadow:none!important;transform:none!important}fieldset{border:0;min-width:0;margin:0;padding:0}dd{margin-inline-start:0}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,[tabindex]:focus-visible,.custom-select__trigger:focus-visible,.copy-button:focus-visible,.quick-chip:focus-visible,.stepper-input__button:focus-visible,.sticky-action-bar button:focus-visible{outline:2px solid var(--border-focus)!important;outline-offset:2px!important;box-shadow:0 0 0 4px var(--accent-focus-ring)!important}.skip-link{top:var(--space-xs);left:var(--space-xs);z-index:2000;min-height:var(--tap-target);border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border-strong);color:var(--text-primary);box-shadow:var(--shadow-md);transform:translateY(calc(-100% - var(--space-md)));opacity:0;pointer-events:none;transition:transform var(--transition-base), opacity var(--transition-base);align-items:center;padding:10px 16px;font-weight:600;text-decoration:none;display:inline-flex;position:absolute}.skip-link:focus,.skip-link:focus-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.sr-only,.announcer{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.game-shell{width:min(1400px, calc(100% - var(--space-xl)));min-height:100vh;padding:calc(var(--space-lg) + var(--safe-top)) var(--safe-right) calc(var(--space-lg) + var(--safe-bottom)) var(--safe-left);gap:var(--space-lg);flex-direction:column;margin:0 auto;display:flex}.game-shell__header{align-items:flex-start;gap:var(--space-sm);padding-bottom:var(--space-md);border-bottom:2px solid var(--text-primary);flex-direction:column;display:flex}.game-shell__title{font-size:var(--text-2xl);letter-spacing:.04em;text-transform:uppercase;color:var(--text-primary);margin:0;font-weight:700}.game-shell__title:before{content:"▲";color:var(--accent);vertical-align:.1em;margin-right:.5em;font-size:.7em}.game-shell__layout{gap:var(--space-lg);grid-template-columns:1fr;align-items:start;display:grid}.game-shell__layout--has-scoreboard .game-shell__main{order:-1}.game-shell__layout--centered{flex:1;justify-content:center;align-items:center;display:flex}.game-shell__layout--centered .game-shell__main{width:100%;max-width:600px;min-height:0}.phase-panel,.item-panel,.trading-panel,.settlement-panel,.setup-form__fieldset,.scoreboard,.action-log{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-elevated);padding:var(--space-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-base), box-shadow var(--transition-base)}.game-shell__main{justify-content:stretch;gap:var(--space-md);flex-direction:column;min-height:420px;display:flex}.game-shell__sidebar{gap:var(--space-md);flex-direction:column;display:flex}.status-strip{align-items:center;gap:var(--space-sm);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;flex-wrap:wrap;font-weight:500;display:flex}.game-shell__header-controls{align-items:center;gap:var(--space-md);display:flex}.theme-toggle{width:var(--tap-target);height:var(--tap-target);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-secondary);box-shadow:var(--shadow-xs);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;position:relative}.theme-toggle:hover{border-color:var(--border-strong);background:var(--bg-hover);color:var(--text-primary)}.theme-toggle:active{box-shadow:none;transform:translate(1px,1px)}.theme-toggle__icon{transition:opacity var(--transition-base), transform var(--transition-base);position:absolute}.theme-toggle__icon--sun{opacity:0;transform:rotate(-90deg)scale(.5)}.theme-toggle__icon--moon,:root[data-theme=light] .theme-toggle__icon--sun{opacity:1;transform:rotate(0)scale(1)}:root[data-theme=light] .theme-toggle__icon--moon{opacity:0;transform:rotate(90deg)scale(.5)}.phase-chip{border-radius:var(--radius-sm);background:var(--accent-dim);border:1px solid var(--accent-border);min-height:26px;color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;justify-content:center;align-items:center;padding:3px 10px;font-weight:600;display:inline-flex}.phase-chip--settlement,.phase-chip--gameOver{background:var(--buy-dim);border-color:var(--buy-border);color:var(--buy)}.phase-chip--error,.phase-chip--roundForfeited{background:var(--sell-dim);border-color:var(--sell-border);color:var(--sell)}.play-stack{gap:var(--space-md);display:grid}.room-controls{gap:var(--space-md);padding:var(--space-md);border:1px dashed var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);word-break:break-all;overflow-wrap:break-word;display:grid}.room-controls>.collapsible-region__toggle{box-shadow:none;min-height:0;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;background:0 0;border:none;padding:0;font-weight:600}.room-controls>.collapsible-region__toggle:hover{color:var(--text-primary)}.room-controls>.collapsible-region__body{gap:var(--space-md);margin-top:0;display:grid}.room-controls__summary{gap:var(--space-xs);display:grid}.room-controls__summary h2,.room-controls__summary p{margin:0}.room-controls__summary h2{font-size:var(--text-lg);font-weight:700}.room-controls__summary p,.room-copy{color:var(--text-secondary);line-height:1.5}.room-controls__presence{gap:var(--space-xs);flex-wrap:wrap;display:flex}.room-controls__presence-pill{border:1px solid var(--border-default);border-radius:var(--radius-sm);background:var(--bg-elevated);min-height:28px;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;align-items:center;padding:4px 10px;font-weight:600;line-height:1.2;display:inline-flex}.room-controls__presence-pill[data-state=connected]{border-color:var(--buy-border);background:var(--buy-dim);color:var(--buy)}.room-controls__presence-pill[data-state=disconnected]{border-color:var(--sell-border);background:var(--sell-dim);color:var(--sell)}.invite-box{gap:var(--space-xs);display:grid}.room-actions{flex-direction:column;gap:10px;width:100%;display:flex}.room-actions>*,.room-actions button{width:100%}@media (min-width:768px){.room-actions{flex-flow:wrap;align-items:center}.room-actions>*,.room-actions button{width:auto}}.room-error{margin:0}.form-field.room-checkbox-field,.room-checkbox-field{flex-direction:row;grid-column:span 2;justify-content:flex-start;align-items:center;gap:10px}.form-field__checkbox{width:var(--tap-target);height:var(--tap-target);max-width:20px;max-height:20px;accent-color:var(--accent);cursor:pointer}.setup-form__grid--single{grid-template-columns:1fr}.phase-panel{gap:var(--space-md);place-content:center stretch;display:grid}.phase-panel h2{font-size:var(--text-xl);line-height:1.2}.eyebrow{color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;margin:0;font-weight:600}.eyebrow:before{content:"// ";color:var(--text-muted)}.setup-form{width:100%}.setup-form__fieldset{border:1px solid var(--border-default);box-shadow:var(--shadow-md)}.setup-form__legend{font-size:var(--text-xl);letter-spacing:-.01em;margin-bottom:var(--space-sm);color:var(--text-primary);padding:0 4px;font-weight:700}.setup-form__grid{gap:var(--space-md);grid-template-columns:1fr;display:grid}.form-field{flex-direction:column;gap:6px;display:flex}.form-field__label{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.form-field__control{width:100%;min-height:var(--tap-target);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);font-size:max(16px, var(--text-base));transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);padding:10px 14px}.form-field__control:hover{border-color:var(--border-strong)}.form-field__control:focus{border-color:var(--border-focus);background:var(--bg-elevated);box-shadow:0 0 0 3px var(--accent-focus-ring);outline:none}select.form-field__control{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%23837a63'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px;padding-right:40px}.form-field--custom-select{flex-direction:column;gap:6px;display:flex}.custom-select__trigger{width:100%;min-height:var(--tap-target);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);color:var(--text-primary);font-size:var(--text-base);text-align:left;transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast);cursor:pointer;outline:none;justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.custom-select__trigger:hover{border-color:var(--border-strong)}.custom-select__trigger[aria-expanded=true],.custom-select__trigger[data-focused=true]{border-color:var(--border-focus);background:var(--bg-elevated);box-shadow:0 0 0 3px var(--accent-focus-ring)}.custom-select__value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.custom-select__arrow{width:16px;height:16px;stroke:var(--text-muted);transition:transform var(--transition-base), stroke var(--transition-base);margin-left:var(--space-xs);flex-shrink:0}.custom-select__trigger[aria-expanded=true] .custom-select__arrow{stroke:var(--accent);transform:rotate(180deg)}.custom-select__popover-anchor{position:relative}.custom-select__popover-wrapper{z-index:1000;margin-top:4px;position:absolute;top:100%;left:0;right:0}.custom-select__popover{background:var(--bg-elevated);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-md);transform-origin:top;width:100%;animation:popover-in .12s var(--ease-out);overflow:hidden}@keyframes popover-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.custom-select__listbox{scrollbar-width:thin;scrollbar-color:var(--border-default) transparent;outline:none;flex-direction:column;gap:2px;max-height:260px;padding:4px;display:flex;overflow-y:auto}.custom-select__item{min-height:var(--tap-target);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-base);cursor:pointer;transition:background-color var(--transition-fast), color var(--transition-fast);outline:none;justify-content:space-between;align-items:center;padding:10px 12px;display:flex}.custom-select__item[data-focused=true]{background:var(--bg-hover);color:var(--text-primary)}.custom-select__item[data-selected=true],.custom-select__item[data-selected=true][data-focused=true]{background:var(--accent-dim);color:var(--accent);font-weight:600}.form-field__error,.setup-form__error,.market-maker-form__error,.spread-width-form__error,.state-error{color:var(--sell);font-size:var(--text-sm);margin-top:var(--space-2xs);align-items:center;gap:6px;font-weight:500;display:flex}.form-field__error:before,.setup-form__error:before,.market-maker-form__error:before,.spread-width-form__error:before,.state-error:before{content:"⚠";font-size:var(--text-sm)}.setup-form__submit,.market-maker-form__submit,.spread-width-form__submit,.settlement-panel__continue,.primary-button{min-height:var(--tap-target);border-radius:var(--radius-md);font-family:var(--font-sans);font-weight:700;font-size:var(--text-base);text-transform:uppercase;letter-spacing:.05em;background:var(--accent);color:var(--accent-contrast);box-shadow:var(--shadow-xs);margin-top:var(--space-xs);border:1px solid #0000;padding:10px 20px}.setup-form__submit:hover,.market-maker-form__submit:hover,.spread-width-form__submit:hover,.settlement-panel__continue:hover,.primary-button:hover{background:var(--accent-hover);box-shadow:var(--shadow-sm)}.setup-form__submit:active,.market-maker-form__submit:active,.spread-width-form__submit:active,.settlement-panel__continue:active,.primary-button:active{box-shadow:none;transform:translate(2px,2px)}.secondary-button{min-height:var(--tap-target);border:1px solid var(--border-strong);border-radius:var(--radius-md);font-family:var(--font-sans);font-weight:700;font-size:var(--text-base);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-elevated);color:var(--text-primary);box-shadow:var(--shadow-xs);margin-top:var(--space-xs);padding:10px 20px}.secondary-button:hover{background:var(--bg-hover);border-color:var(--text-primary)}.secondary-button:active{box-shadow:none;transform:translate(2px,2px)}.danger-button{min-height:var(--tap-target);border-radius:var(--radius-md);font-family:var(--font-sans);font-weight:700;font-size:var(--text-base);text-transform:uppercase;letter-spacing:.05em;background:var(--sell);color:var(--sell-contrast);box-shadow:var(--shadow-xs);margin-top:var(--space-xs);border:1px solid #0000;padding:10px 20px}.danger-button:hover{background:var(--sell-hover);box-shadow:var(--shadow-sm)}.danger-button:active{box-shadow:none;transform:translate(2px,2px)}.loading-line{background:var(--border-subtle);width:100%;height:3px;margin:var(--space-md) 0;position:relative;overflow:hidden}.loading-line:after{background:var(--accent);width:40%;animation:load 1.4s var(--ease) infinite;content:"";position:absolute;inset:0}@keyframes load{0%{transform:translate(-100%)}to{transform:translate(250%)}}.scoreboard{gap:var(--space-md);flex-direction:column;display:flex}.scoreboard__header{border-bottom:2px solid var(--text-primary);padding-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.scoreboard__title{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;font-size:var(--text-xs);color:var(--text-primary);margin:0;font-weight:700}.scoreboard__round{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;font-weight:600}.scoreboard__scores,.scoreboard__roles,.trading-panel__roles,.settlement-panel__details,.item-panel__details,.final-score{gap:var(--space-xs);margin:0;display:grid}.scoreboard__player,.scoreboard__role,.trading-panel__role,.settlement-panel__detail,.item-panel__detail,.final-score>div{justify-content:space-between;align-items:center;gap:var(--space-sm);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-card);transition:border-color var(--transition-fast), background-color var(--transition-fast);padding:10px 12px;display:flex}.scoreboard__player--leading{border-color:var(--buy-border);background:var(--buy-dim)}.scoreboard__leader-badge{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--buy);background:var(--buy-dim);border:1px solid var(--buy-border);border-radius:var(--radius-sm);margin-left:var(--space-xs);text-transform:uppercase;letter-spacing:.06em;vertical-align:middle;padding:1px 5px;font-weight:700}.scoreboard__player:hover,.scoreboard__role:hover,.trading-panel__role:hover,.settlement-panel__detail:hover,.item-panel__detail:hover{border-color:var(--border-default)}.scoreboard dt,.trading-panel dt,.settlement-panel dt,.item-panel dt,.final-score dt{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.scoreboard dd,.trading-panel dd,.settlement-panel dd,.item-panel dd,.final-score dd{font-family:var(--font-mono);font-weight:600;font-size:var(--text-base);color:var(--text-primary);margin:0}.scoreboard__scores .scoreboard__player:first-child dd{color:var(--player-a)}.scoreboard__scores .scoreboard__player:nth-child(2) dd{color:var(--player-b)}.item-panel{gap:var(--space-md);flex-direction:column;display:flex;position:relative;overflow:hidden}.item-panel:before{content:"";background:var(--accent);width:4px;position:absolute;top:0;bottom:0;left:0}.item-panel__header{padding-left:var(--space-xs);flex-direction:column;gap:4px;display:flex}.item-panel__category{color:var(--accent);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.14em;margin:0;font-weight:600}.item-panel__title{font-size:var(--text-lg);color:var(--text-primary);margin:0;font-weight:700;line-height:1.25}.item-panel__detail{padding:var(--space-sm) var(--space-md);flex-direction:column;align-items:flex-start;gap:4px}.item-panel__detail dt{color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:500}.item-panel__detail dd{font-family:var(--font-sans);font-size:var(--text-base);color:var(--text-primary);text-align:left;font-weight:400;line-height:1.5}.item-panel__details .item-panel__detail:nth-child(2) dd{font-family:var(--font-mono);font-size:var(--text-xl);color:var(--accent);font-weight:700}.market-maker-form__fieldset,.spread-width-form__fieldset{box-shadow:none;gap:var(--space-md);background:0 0;border:none;flex-direction:column;padding:0;display:flex}.market-maker-form__legend{font-size:var(--text-lg);color:var(--text-primary);margin-bottom:var(--space-xs);font-weight:700}.market-maker-form__grid{gap:var(--space-md);grid-template-columns:1fr;display:grid}.spread-width-form,.trading-panel{gap:var(--space-md);flex-direction:column;display:flex}.trading-panel__header{justify-content:space-between;align-items:center;gap:var(--space-xs);border-bottom:2px solid var(--text-primary);padding-bottom:var(--space-sm);flex-wrap:wrap;display:flex}.trading-panel__title{font-size:var(--text-lg);margin:0;font-weight:700}.trading-panel__quote{font-family:var(--font-mono);font-weight:600;font-size:var(--text-sm);color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border-default);border-radius:var(--radius-sm);padding:4px 10px}.trading-panel__actions{gap:var(--space-sm);grid-template-columns:1fr;display:grid}.trading-panel__button{border-radius:var(--radius-md);min-height:56px;font-family:var(--font-sans);font-weight:700;font-size:var(--text-md);text-transform:uppercase;letter-spacing:.06em;justify-content:center;align-items:center;gap:var(--space-xs);box-shadow:var(--shadow-sm);border:1px solid #0000;display:flex}.trading-panel__button--buy{background:var(--buy);color:var(--buy-contrast)}.trading-panel__button--buy:hover:not(:disabled){background:var(--buy-hover);box-shadow:var(--shadow-md)}.trading-panel__button--buy:active:not(:disabled){box-shadow:none;transform:translate(2px,2px)}.trading-panel__button--sell{background:var(--sell);color:var(--sell-contrast)}.trading-panel__button--sell:hover:not(:disabled){background:var(--sell-hover);box-shadow:var(--shadow-md)}.trading-panel__button--sell:active:not(:disabled){box-shadow:none;transform:translate(2px,2px)}.settlement-panel{gap:var(--space-md);flex-direction:column;display:flex}.settlement-panel__header{border-bottom:2px solid var(--text-primary);padding-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.settlement-panel__round{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.settlement-panel__title{font-size:var(--text-lg);margin:0;font-weight:700}.settlement-panel__disabled-reason{margin:calc(-1 * var(--space-xs)) 0 0;color:var(--warn);font-size:var(--text-sm);line-height:1.45}.settlement-panel__forced-note{align-items:center;gap:var(--space-2xs);border-radius:var(--radius-sm);background:var(--warn-dim);border:1px solid var(--warn-border);color:var(--warn);font-size:var(--text-sm);margin:0;padding:6px 10px;font-weight:500;line-height:1.45;display:flex}.settlement-panel__details .settlement-panel__detail:nth-child(4) dd{color:var(--player-a)}.settlement-panel__details .settlement-panel__detail:nth-child(5) dd{color:var(--player-b)}.action-log{gap:var(--space-md);flex-direction:column;max-height:600px;display:flex}.action-log__title{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--text-primary);border-bottom:2px solid var(--text-primary);padding-bottom:var(--space-sm);margin:0;font-weight:700}.action-log__list{scrollbar-width:thin;scrollbar-color:var(--border-default) transparent;flex-direction:column;gap:6px;max-height:480px;margin:0;padding-left:0;list-style:none;display:flex;overflow-y:auto}.action-log__list::-webkit-scrollbar{width:4px}.action-log__list::-webkit-scrollbar-thumb{background-color:var(--border-default);border-radius:2px}.action-log__item{padding:var(--space-xs) var(--space-sm);border-left:2px solid var(--border-default);transition:border-color var(--transition-fast), background-color var(--transition-fast);background:0 0;flex-direction:column;gap:2px;display:flex}.action-log__item:hover{background:var(--bg-card);border-left-color:var(--accent)}.action-log__meta{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:500}.action-log__message{font-size:var(--text-sm);color:var(--text-secondary);margin:0;line-height:1.4}.action-log__empty{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-sm);text-align:center;padding:var(--space-xl) 0}.final-score{gap:var(--space-md);margin-bottom:var(--space-md);grid-template-columns:repeat(2,1fr);display:grid}.final-score dt{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:var(--space-2xs);font-weight:500}.final-score dd{font-size:var(--text-xl);color:var(--player-a);font-weight:700}.final-score>div:nth-child(2) dd{color:var(--player-b)}.turn-banner{justify-content:center;align-items:center;gap:var(--space-sm);width:100%;min-height:var(--tap-target);border-radius:var(--radius-md);background:var(--accent-dim);border:1px dashed var(--accent-border);color:var(--accent);font-weight:700;font-size:var(--text-base);letter-spacing:.01em;text-align:center;padding:10px 16px;display:flex}.turn-banner--waiting{background:var(--bg-surface);border-color:var(--border-default);color:var(--text-muted);font-weight:500}.turn-banner--buy{background:var(--buy-dim);border-color:var(--buy-border);color:var(--buy)}.turn-banner--sell{background:var(--sell-dim);border-color:var(--sell-border);color:var(--sell)}.turn-countdown{justify-content:center;align-items:center;gap:var(--space-2xs);margin:calc(var(--space-2xs) * -1) auto 0;border-radius:var(--radius-sm);background:var(--bg-surface);border:1px solid var(--border-default);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;padding:2px 10px;font-weight:600;display:flex}.turn-countdown[data-urgent=true]{background:var(--sell-dim);border-color:var(--sell-border);color:var(--sell)}.phase-stepper{align-items:center;gap:var(--space-xs);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.phase-stepper__step{border-radius:var(--radius-sm);border:1px solid var(--border-subtle);min-height:28px;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;transition:border-color var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);background:0 0;align-items:center;gap:6px;padding:4px 10px;font-weight:500;display:inline-flex}.phase-stepper__step[data-state=active],.phase-stepper__step[aria-current=step]{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:700}.phase-stepper__step[data-state=complete]{border-color:var(--buy-border);color:var(--buy);background:0 0;text-decoration:line-through;text-decoration-thickness:1px}.stepper-input{border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-card);align-items:stretch;display:inline-flex;overflow:hidden}.stepper-input__button{min-width:var(--tap-target);min-height:var(--tap-target);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-lg);transition:background-color var(--transition-fast), color var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-weight:600;line-height:1;display:inline-flex}.stepper-input__button:hover{background:var(--bg-hover);color:var(--text-primary)}.stepper-input__button:active{background:var(--accent-dim);color:var(--accent)}.stepper-input__field{width:100%;min-width:56px;min-height:var(--tap-target);border:none;border-left:1px solid var(--border-default);border-right:1px solid var(--border-default);color:var(--text-primary);font-family:var(--font-mono);font-size:max(16px, var(--text-md));text-align:center;appearance:textfield;background:0 0;font-weight:600}.stepper-input__field::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.stepper-input__field::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.copy-button{min-height:var(--tap-target);min-width:var(--tap-target);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-primary);font-family:var(--font-mono);font-weight:600;font-size:var(--text-sm);box-shadow:var(--shadow-xs);transition:border-color var(--transition-fast), background-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.copy-button:hover{border-color:var(--text-primary);background:var(--bg-hover)}.copy-button:active{box-shadow:none;transform:translate(1px,1px)}.copy-button[data-copied=true]{border-color:var(--buy-border-strong);color:var(--buy);background:var(--buy-dim)}.quick-chip{border-radius:var(--radius-sm);border:1px solid var(--border-default);background:var(--bg-card);min-height:36px;color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);transition:border-color var(--transition-fast), background-color var(--transition-fast), color var(--transition-fast);justify-content:center;align-items:center;padding:6px 14px;font-weight:500;display:inline-flex}.quick-chip:hover{border-color:var(--border-strong);background:var(--bg-hover);color:var(--text-primary)}.quick-chip[aria-pressed=true],.quick-chip[data-active=true]{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:700}.quick-chip-group{gap:var(--space-xs);flex-wrap:wrap;display:flex}.toast{align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);background:var(--bg-elevated);border:1px solid var(--border-strong);color:var(--text-primary);font-size:var(--text-sm);box-shadow:var(--shadow-md);padding:12px 16px;font-weight:500;display:flex}.toast--success{border-color:var(--buy-border-strong);color:var(--buy)}.toast--error{border-color:var(--sell-border-strong);color:var(--sell)}.toast-region{left:50%;bottom:calc(var(--space-lg) + var(--safe-bottom));z-index:1500;gap:var(--space-xs);width:min(420px, calc(100% - var(--space-xl)));pointer-events:none;flex-direction:column;display:flex;position:fixed;transform:translate(-50%)}.toast-region>*{pointer-events:auto}.collapsible-region__toggle{justify-content:space-between;align-items:center;gap:var(--space-sm);width:100%;min-height:var(--tap-target);border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--bg-elevated);color:var(--text-secondary);font-weight:600;font-size:var(--text-base);transition:border-color var(--transition-fast), color var(--transition-fast);padding:10px 14px;display:flex}.collapsible-region__toggle:hover{border-color:var(--border-strong);color:var(--text-primary)}.collapsible-region__toggle[aria-expanded=false]+.collapsible-region__body{display:none}.collapsible-region__body{margin-top:var(--space-sm)}.bottom-sheet{z-index:1400;max-height:80vh;padding:var(--space-lg) var(--space-lg) calc(var(--space-lg) + var(--safe-bottom));border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);border-top:2px solid var(--border-strong);background:var(--bg-elevated);box-shadow:var(--shadow-lg);transition:transform var(--transition-slow);position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%)}.bottom-sheet[data-open=true],.bottom-sheet.is-open{transform:translateY(0)}.bottom-sheet__handle{width:36px;height:3px;margin:0 auto var(--space-md);border-radius:var(--radius-pill);background:var(--border-strong)}.bottom-sheet__backdrop{z-index:1390;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0e0d0bb3;position:fixed;inset:0}.sticky-action-bar{z-index:900;gap:var(--space-sm);width:100%;padding:var(--space-sm) var(--space-md) calc(var(--space-sm) + var(--safe-bottom));margin-top:var(--space-md);background:linear-gradient(to bottom, transparent 0%, var(--bg-base) 40%);border-top:1px solid var(--border-subtle);display:flex;position:sticky;bottom:0}.sticky-action-bar>*{flex:1 1 0;margin-top:0}.amazon-link{color:var(--accent);text-decoration:underline;-webkit-text-decoration-color:var(--accent-border);text-decoration-color:var(--accent-border);text-underline-offset:3px;transition:color var(--transition-fast);align-items:center;gap:6px;font-weight:600;display:inline-flex}.amazon-link:hover{color:var(--accent-hover);text-decoration-color:currentColor}.scraped-items-list{margin:var(--space-xs) 0 0;flex-direction:column;gap:4px;width:100%;padding:0;list-style:none;display:flex}.scraped-items-list li{border-radius:var(--radius-sm);background:var(--bg-card);border:1px solid var(--border-subtle);font-size:var(--text-sm);color:var(--text-muted);transition:border-color var(--transition-fast), background-color var(--transition-fast);justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.scraped-items-list li.source-of-truth{border-color:var(--accent-border);background:var(--accent-dim);color:var(--text-primary)}.scraped-item-title{text-align:left;text-overflow:ellipsis;white-space:nowrap;max-width:60%;overflow:hidden}.scraped-item-price{font-family:var(--font-mono);color:var(--text-primary);font-weight:600}.scraped-items-list li.source-of-truth .scraped-item-price{color:var(--accent)}.source-badge{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--accent);background:var(--accent-dim);border:1px solid var(--accent-border);border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.06em;margin-left:var(--space-xs);padding:1px 5px;font-weight:700}@media (min-width:768px){.game-shell{width:min(1400px, calc(100% - var(--space-2xl)));padding:calc(var(--space-xl) + var(--safe-top)) var(--safe-right) calc(var(--space-xl) + var(--safe-bottom)) var(--safe-left)}.game-shell__header{justify-content:space-between;align-items:center;gap:var(--space-lg);flex-direction:row}.setup-form__grid{grid-template-columns:repeat(2,1fr)}.setup-form__grid--single{grid-template-columns:1fr}.market-maker-form__grid{grid-template-columns:repeat(2,1fr)}.trading-panel__actions{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.game-shell__layout--has-scoreboard{grid-template-columns:280px 1fr}.game-shell__layout--has-action-log{grid-template-columns:1fr 300px}.game-shell__layout--has-scoreboard .game-shell__main{order:0}.game-shell__sidebar{top:calc(var(--safe-top) + var(--shell-sticky-offset));max-height:calc(100vh - var(--safe-top) - var(--shell-sticky-offset) - var(--space-md));position:sticky;overflow-y:auto}}@media (min-width:1080px){.game-shell{width:min(1400px, calc(100% - var(--space-2xl)))}.game-shell__title{font-size:var(--text-2xl)}.game-shell__layout--has-scoreboard{grid-template-columns:280px 1fr}.game-shell__layout--has-action-log{grid-template-columns:1fr 320px}.game-shell__layout--has-scoreboard.game-shell__layout--has-action-log{grid-template-columns:280px 1fr 320px}.game-shell__main{min-height:560px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.loading-line:after{opacity:.5;width:100%;animation:none}.custom-select__popover{animation:none}.bottom-sheet,.skip-link{transition:none}}
