: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;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}.app-shell{flex-direction:column;min-height:100%;display:flex}.app-header{background:var(--color-surface);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.app-header h1{margin:0;font-size:1.05rem;font-weight:700}.app-header .user-badge{color:var(--color-text-muted);font-size:.8rem}.app-main{flex-direction:column;flex:1;gap:1rem;width:100%;max-width:880px;margin:0 auto;padding:1rem;display:flex}.tab-bar{gap:.4rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.tab-bar button{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;white-space:nowrap;border-radius:999px;padding:.5rem .9rem;font-size:.85rem}.tab-bar button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-weight:600}.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}.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);border-radius:8px;flex-direction:column;gap:.15rem;min-height:3.2rem;padding:.3rem .35rem;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 .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)}.calendar-header{justify-content:space-between;align-items:center;gap:.5rem;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}.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}input,select,textarea{color:var(--color-text);background:#232941}}
