:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f4f6fb;--color-surface:#fff;--color-border:#dde3ee;--color-text:#1a2233;--color-text-muted:#5b667a;--color-primary:#1d4ed8;--color-primary-dark:#1739a8;--color-danger:#d9364a;--color-success:#1a8a4c;--color-warning:#b8720b;--radius:10px;--shadow:0 1px 3px #141e3c14, 0 1px 2px #141e3c0f;--color-header:#10233f;--color-header-text:#eef2fb;--color-cta:var(--color-success);--color-cta-dark:#157040;--color-accent-warning:var(--color-warning);--sidebar-width:240px;--bottomnav-height:60px;--bottomnav-lift:10px;font-family:-apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;margin:0}button{font-family:inherit}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:1rem}.card h2{margin:0 0 .75rem;font-size:1rem}.card h3{color:var(--color-text-muted);margin:0 0 .5rem;font-size:.9rem}.stack{flex-direction:column;gap:.75rem;display:flex}.row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.field{flex-direction:column;flex:1;gap:.3rem;min-width:0;display:flex}.field label{color:var(--color-text-muted);font-size:.78rem}input,select,textarea{border:1px solid var(--color-border);color:var(--color-text);background:#fff;border-radius:8px;width:100%;padding:.55rem .65rem;font-size:.95rem}input:focus,select:focus,textarea:focus{outline:2px solid var(--color-primary);outline-offset:1px}.btn{cursor:pointer;background:var(--color-primary);color:#fff;border:none;border-radius:8px;padding:.6rem 1.1rem;font-size:.9rem;font-weight:600}.btn:hover{background:var(--color-primary-dark)}.btn:disabled{cursor:not-allowed;background:#a9b3c6}.btn.secondary{background:var(--color-surface);color:var(--color-primary);border:1px solid var(--color-primary)}.btn.danger{background:var(--color-danger)}.btn.small{padding:.35rem .7rem;font-size:.8rem}.btn.link{color:var(--color-primary);background:0 0;padding:0;font-weight:500;text-decoration:underline}table{border-collapse:collapse;width:100%;font-size:.85rem}th,td{text-align:left;border-bottom:1px solid var(--color-border);white-space:nowrap;padding:.5rem .4rem}.table-scroll{overflow-x:auto}.table-scroll.wrap-cells th,.table-scroll.wrap-cells td{white-space:normal;overflow-wrap:anywhere}.selectable-row{cursor:pointer}.selectable-row:hover{background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface))}.selectable-row.selected{background:var(--color-primary)}.selectable-row.selected td{color:#fff}.selectable-row:focus-visible{outline:2px solid var(--color-primary-dark);outline-offset:-2px}.badge{border-radius:999px;padding:.15rem .55rem;font-size:.72rem;font-weight:600;display:inline-block}.badge.draft{color:var(--color-text-muted);background:#eef0f5}.badge.open{color:var(--color-success);background:#e3f3ea}.badge.locked{color:var(--color-warning);background:#fdf1e0}.badge.finalized{color:var(--color-primary);background:#e6ecfc}.badge.canceled{color:var(--color-danger);background:#fbe6e9}.badge.active{color:var(--color-success);background:#e3f3ea}.badge.won{color:var(--color-primary);background:#e6ecfc}.badge.lost{color:var(--color-danger);background:#fbe6e9}.badge.push{color:var(--color-text-muted);background:#eef0f5}.badge.settlement_failed{color:var(--color-warning);background:#fdf1e0}.badge.tone-success{color:var(--color-success);background:#e3f3ea}.badge.tone-warning{color:var(--color-warning);background:#fdf1e0}.badge.tone-danger{color:var(--color-danger);background:#fbe6e9}.badge.tone-muted{color:var(--color-text-muted);background:#eef0f5}.code-reveal{border-radius:var(--radius);border:1px dashed var(--color-primary);background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));margin-top:.75rem;padding:.85rem 1rem}.code-reveal p{margin:0 0 .4rem}.code-value{letter-spacing:.08em;color:var(--color-primary);-webkit-user-select:all;user-select:all;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.4rem;font-weight:700}.inactive-banner{color:var(--color-danger);border:1px solid var(--color-danger);border-radius:var(--radius);background:#fbe6e9;padding:.65rem 1rem;font-size:.85rem;font-weight:600}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:.35rem;display:grid}.calendar-weekday{text-align:center;color:var(--color-text-muted);padding-bottom:.2rem;font-size:.75rem}.calendar-cell{border:1px solid var(--color-border);background:var(--color-surface);text-align:left;border-radius:8px;flex-direction:column;gap:.15rem;width:100%;min-height:3.2rem;padding:.3rem .35rem;font-family:inherit;font-size:.75rem;display:flex}.calendar-cell.empty{background:0 0;border:none}.calendar-cell.today{border-color:var(--color-primary);border-width:2px}.calendar-cell.highlight{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface))}.calendar-cell.clickable{cursor:pointer}.calendar-cell.clickable:hover{border-color:var(--color-primary)}.calendar-cell.selected{border-color:var(--color-primary-dark);background:color-mix(in srgb, var(--color-primary) 16%, var(--color-surface));border-width:2px}.calendar-cell .day-number{color:var(--color-text-muted);font-weight:600}.calendar-cell .day-pnl{font-variant-numeric:tabular-nums;font-weight:700}.calendar-cell .day-pnl.positive{color:var(--color-success)}.calendar-cell .day-pnl.negative{color:var(--color-danger)}.game-count-badge{color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 12%, var(--color-surface));border-radius:999px;align-self:flex-start;padding:.05rem .4rem;font-size:.68rem;font-weight:600}.divider{border:none;border-top:1px solid var(--color-border);margin:0}.calendar-header{flex-direction:column;align-items:flex-start;gap:.4rem;display:flex}@media (prefers-color-scheme:dark){.code-reveal{background:color-mix(in srgb, var(--color-primary) 16%, var(--color-surface))}}.amount{font-variant-numeric:tabular-nums;font-weight:600}.amount.positive{color:var(--color-success)}.amount.negative{color:var(--color-danger)}.error-text{color:var(--color-danger);margin:0;font-size:.85rem}.success-text{color:var(--color-success);margin:0;font-size:.85rem}.muted{color:var(--color-text-muted);font-size:.85rem}.app-layout{min-height:100%;display:flex}.app-content-wrap{flex-direction:column;flex:1;min-width:0;min-height:100%;display:flex}.app-sidebar{width:var(--sidebar-width);background:var(--color-header);color:var(--color-header-text);flex-direction:column;flex-shrink:0;gap:1.25rem;padding:1.25rem .75rem;display:none}.app-brand{padding:0 .5rem;font-size:1.05rem;font-weight:700}.app-brand .app-brand-sub{color:color-mix(in srgb, var(--color-header-text) 70%, transparent);margin-top:.15rem;font-size:.72rem;font-weight:400;display:block}.app-nav--side{flex-direction:column;gap:.2rem;display:flex}.app-sidebar-footer{border-top:1px solid color-mix(in srgb, var(--color-header-text) 20%, transparent);flex-direction:column;gap:.5rem;margin-top:auto;padding:.5rem;font-size:.8rem;display:flex}.app-sidebar-footer .user-badge{color:var(--color-header-text);font-weight:600}.app-topbar{background:var(--color-header);color:var(--color-header-text);justify-content:space-between;align-items:center;gap:.75rem;padding:.85rem 1rem;display:flex}.app-topbar h1{margin:0;font-size:1.05rem;font-weight:700}.app-topbar .app-topbar-back{color:var(--color-header-text);cursor:pointer;background:0 0;border:none;padding:.2rem .3rem .2rem 0;font-size:1.1rem}.app-nav-item{cursor:pointer;color:inherit;background:0 0;border:none;align-items:center;gap:.6rem;font-family:inherit;font-size:.85rem;display:flex}.app-nav--side .app-nav-item{color:color-mix(in srgb, var(--color-header-text) 80%, transparent);border-radius:8px;justify-content:flex-start;padding:.6rem .75rem}.app-nav--side .app-nav-item.active{background:color-mix(in srgb, var(--color-header-text) 16%, transparent);color:var(--color-header-text);font-weight:700}.app-nav--side .app-nav-item svg{flex-shrink:0;width:20px;height:20px}.app-nav-item .app-nav-label{white-space:nowrap}.app-nav-badge{background:var(--color-accent-warning);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:1.1rem;height:1.1rem;padding:0 .3rem;font-size:.65rem;font-weight:700;line-height:1;display:inline-flex}.app-nav--side .app-nav-badge{margin-left:auto}.app-nav--bottom{left:0;right:0;bottom:var(--bottomnav-lift);z-index:20;background:var(--color-surface);border-top:1px solid var(--color-border);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed}.app-nav--bottom .app-nav-item{color:var(--color-text-muted);flex-direction:column;flex:1;gap:.15rem;padding:.4rem .2rem;position:relative}.app-nav--bottom .app-nav-item.active{color:var(--color-primary)}.app-nav--bottom .app-nav-item svg{width:22px;height:22px}.app-nav--bottom .app-nav-label{font-size:.65rem}.app-nav--bottom .app-nav-badge{position:absolute;top:.1rem;right:30%}.app-content{width:100%;max-width:880px;padding:1rem;padding-bottom:calc(var(--bottomnav-height) + 1rem + env(safe-area-inset-bottom) + var(--bottomnav-lift));flex-direction:column;flex:1;gap:1rem;min-width:0;margin:0 auto;display:flex}.app-content.wide{max-width:none}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow);padding:.9rem 1rem}.stat-card.clickable{text-align:left;cursor:pointer;width:100%;color:inherit;font-family:inherit}.stat-card.clickable:hover{border-color:var(--color-primary)}.stat-card .stat-label{color:var(--color-text-muted);margin:0 0 .3rem;font-size:.78rem}.stat-card .stat-value{font-variant-numeric:tabular-nums;margin:0;font-size:1.35rem;font-weight:700}.stat-card .stat-hint{color:var(--color-text-muted);margin:.2rem 0 0;font-size:.72rem}.stat-card.tone-success .stat-value{color:var(--color-success)}.stat-card.tone-warning .stat-value{color:var(--color-warning)}.stat-card.tone-danger .stat-value{color:var(--color-danger)}.stat-card-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;display:grid}.section-header{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.section-header h2{margin:0;font-size:1rem}.section-header .section-sub{color:var(--color-text-muted);font-size:.78rem}.list-menu{flex-direction:column;display:flex}.list-row{text-align:left;cursor:pointer;border:none;border-bottom:1px solid var(--color-border);width:100%;color:var(--color-text);background:0 0;align-items:center;gap:.6rem;padding:.8rem .2rem;font-family:inherit;display:flex}.list-menu .list-row:last-child{border-bottom:none}.list-row .list-row-icon{color:var(--color-text-muted);flex-shrink:0}.list-row .list-row-body{flex:1;min-width:0}.list-row .list-row-label{font-size:.9rem;font-weight:600}.list-row .list-row-desc{color:var(--color-text-muted);margin-top:.1rem;font-size:.76rem}.list-row .list-row-chevron{color:var(--color-text-muted);flex-shrink:0}.child-row{border-bottom:1px solid var(--color-border)}.child-row:last-child{border-bottom:none}.child-row-summary{text-align:left;cursor:pointer;width:100%;color:var(--color-text);background:0 0;border:none;align-items:center;gap:.6rem;padding:.7rem .2rem;font-family:inherit;display:flex}.child-row-body{flex:1;min-width:0}.child-row-name{flex-wrap:wrap;align-items:center;gap:.4rem;font-size:.92rem;font-weight:600;display:flex}.child-row-meta{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:.15rem;font-size:.76rem;display:block;overflow:hidden}.child-row-chevron{color:var(--color-text-muted);flex-shrink:0;transition:transform .15s}.child-row-chevron.expanded{transform:rotate(90deg)}.child-row-detail{padding:0 .2rem 1rem}.segmented{background:var(--color-bg);border:1px solid var(--color-border);border-radius:999px;gap:.2rem;padding:.2rem;display:inline-flex}.segmented button{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:999px;padding:.4rem .9rem;font-family:inherit;font-size:.82rem;font-weight:600}.segmented button.active{background:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow)}.progress{background:var(--color-border);border-radius:999px;width:100%;height:.4rem;overflow:hidden}.progress .progress-fill{background:var(--color-primary);border-radius:999px;height:100%}.progress.tone-warning .progress-fill{background:var(--color-warning)}.progress.tone-danger .progress-fill{background:var(--color-danger)}.avatar{background:color-mix(in srgb, var(--color-primary) 16%, var(--color-surface));width:2rem;height:2rem;color:var(--color-primary);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:inline-flex}.btn.cta{background:var(--color-cta)}.btn.cta:hover{background:var(--color-cta-dark)}.btn.block{width:100%;display:block}.side-select{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.side-select button{border:2px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;gap:.4rem;padding:.9rem .6rem;font-family:inherit;font-size:.9rem;font-weight:600;display:flex}.side-select button.selected{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));color:var(--color-primary)}.side-select button:disabled{cursor:not-allowed;opacity:.6}.info-box{background:color-mix(in srgb, var(--color-primary) 8%, var(--color-surface));border:1px solid color-mix(in srgb, var(--color-primary) 25%, var(--color-border));border-radius:var(--radius);color:var(--color-text-muted);padding:.65rem .85rem;font-size:.82rem}.collapsible{border:1px solid var(--color-border);border-radius:var(--radius)}.collapsible>summary{cursor:pointer;justify-content:space-between;align-items:center;padding:.75rem .9rem;font-size:.9rem;font-weight:700;list-style:none;display:flex}.collapsible>summary::-webkit-details-marker{display:none}.collapsible>summary:after{content:"▾";color:var(--color-text-muted);font-weight:400;transition:transform .15s}.collapsible[open]>summary:after{transform:rotate(180deg)}.collapsible-body{flex-direction:column;gap:.75rem;padding:0 .9rem .9rem;display:flex}.score-input input{text-align:center;padding:.5rem;font-size:1.8rem;font-weight:700}.stepper{color:var(--color-text-muted);align-items:center;gap:.5rem;font-size:.8rem;display:flex}.stepper-sep{background:var(--color-border);flex:0 0 1.5rem;height:1px}.stepper-step{font-weight:600}.stepper-step.active{color:var(--color-primary)}.stepper-step.done{color:var(--color-success)}.role-select{grid-template-columns:1fr 1fr;gap:.6rem;display:grid}.role-select button{border:2px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);color:var(--color-text);text-align:left;cursor:pointer;align-items:center;gap:.5rem;padding:.85rem .8rem;font-family:inherit;display:flex}.role-select button.selected{border-color:var(--color-primary);background:color-mix(in srgb, var(--color-primary) 10%, var(--color-surface));color:var(--color-primary)}.role-select-desc{color:var(--color-text-muted);font-size:.75rem;font-weight:400;display:block}@media (width>=768px){.app-sidebar{display:flex}.app-topbar,.app-nav--bottom{display:none}.app-content{max-width:1040px;padding:1.5rem}.app-content.wide{max-width:none}}.auth-shell{justify-content:center;align-items:center;min-height:100%;padding:1.5rem;display:flex}.auth-card{width:100%;max-width:380px}.auth-mode-switch{gap:.5rem;margin-bottom:1rem;display:flex}.auth-mode-switch button{flex:1}.empty-state{color:var(--color-text-muted);text-align:center;padding:1.5rem .5rem;font-size:.9rem}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-bg:#12151f;--color-surface:#1b2030;--color-border:#2c3345;--color-text:#e7ebf5;--color-text-muted:#9aa4bd;--color-primary:#5b8cf0;--color-primary-dark:#7ba1f5;--color-header:#0a1626;--color-header-text:#dbe4f7;--color-cta-dark:#1fa25f}input,select,textarea{color:var(--color-text);background:#232941}}
