@import"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,400..700;1,14..32,400..700&family=Inter+Tight:wght@400..700&display=swap";:root{--primary: #181d26;--primary-active: #0d1218;--ink: #181d26;--body: #333840;--muted: #41454d;--hairline: #dddddd;--border-strong: #9297a0;--canvas: #ffffff;--surface-soft: #f8fafc;--surface-strong: #e0e2e6;--surface-dark: #181d26;--surface-dark-elevated: #1d1f25;--signature-coral: #aa2d00;--signature-forest: #0a2e0e;--signature-cream: #f5e9d4;--signature-peach: #fcab79;--signature-mint: #a8d8c4;--signature-yellow: #f4d35e;--signature-mustard: #d9a441;--signature-navy: #181d26;--on-primary: #ffffff;--on-dark: #ffffff;--link: #1b61c9;--link-active: #1a3866;--info: #254fad;--info-border: #458fff;--success: #006400;--success-border: #39bf45;--pricing-ink: #1d1f25;--semantic-profit: var(--success);--semantic-loss: var(--signature-coral);--semantic-attention: var(--signature-mustard);--semantic-attention-fg: #8a5a00;--text-strong: var(--ink);--text-body: var(--body);--text-muted: var(--muted);--text-on-dark: var(--on-dark);--text-link: var(--link);--surface-page: var(--canvas);--surface-card: var(--canvas);--surface-raised: var(--surface-soft);--border-subtle: var(--hairline);--border-disabled: var(--border-strong);--action-primary-bg: var(--primary);--action-primary-bg-active: var(--primary-active);--action-primary-fg: var(--on-primary);--action-secondary-bg: var(--canvas);--action-secondary-fg: var(--ink);--font-display: "Inter Tight", "Haas Groot Disp", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-text: "Inter", "Haas", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-pricing: "Inter", "Inter Display", system-ui, sans-serif;--type-display-xl-size: 48px;--type-display-xl-weight: 500;--type-display-xl-leading: 1.1;--type-display-xl-tracking: 0;--type-display-lg-size: 40px;--type-display-lg-weight: 400;--type-display-lg-leading: 1.2;--type-display-lg-tracking: 0;--type-display-md-size: 32px;--type-display-md-weight: 400;--type-display-md-leading: 1.2;--type-display-md-tracking: 0;--type-title-lg-size: 24px;--type-title-lg-weight: 400;--type-title-lg-leading: 1.35;--type-title-lg-tracking: .12px;--type-title-md-size: 20px;--type-title-md-weight: 400;--type-title-md-leading: 1.5;--type-title-md-tracking: 0;--type-title-sm-size: 18px;--type-title-sm-weight: 500;--type-title-sm-leading: 1.4;--type-title-sm-tracking: 0;--type-label-md-size: 16px;--type-label-md-weight: 500;--type-label-md-leading: 1.4;--type-label-md-tracking: 0;--type-button-size: 16px;--type-button-weight: 500;--type-button-leading: 1.4;--type-button-tracking: 0;--type-body-md-size: 14px;--type-body-md-weight: 400;--type-body-md-leading: 1.25;--type-body-md-tracking: 0;--type-caption-size: 14px;--type-caption-weight: 500;--type-caption-leading: 1.35;--type-caption-tracking: .16px;--type-legal-size: 13.12px;--type-legal-weight: 600;--type-legal-leading: 1.2;--type-legal-tracking: 0;--space-xxs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-xxl: 48px;--space-section: 96px;--radius-xs: 2px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 12px;--radius-pill: 9999px;--radius-full: 9999px;--container-max: 1280px;--container-gutter: 48px;--shadow-button: 0 1px 2px rgba(24, 29, 38, .16), 0 0 0 0 rgba(27, 97, 201, 0);--shadow-focus-ring: 0 0 0 2px rgba(69, 143, 255, .55);--shadow-popover: 0 8px 24px rgba(24, 29, 38, .12), 0 1px 3px rgba(24, 29, 38, .08);--bg: var(--surface-soft);--surface: var(--canvas);--border: var(--hairline);--text: var(--ink);--accent: var(--primary);--danger: var(--signature-coral);--ok: var(--success);--warn: var(--semantic-attention-fg)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--canvas);color:var(--body);font-family:var(--font-text);font-size:var(--type-body-md-size);line-height:var(--type-body-md-leading);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}input,button,select,textarea{font:inherit;color:inherit}a{color:var(--link);text-decoration:none}a:hover{text-decoration:underline}::selection{background:#458fff33}.tnum{font-variant-numeric:tabular-nums}.t-display-xl{font-family:var(--font-display);font-size:var(--type-display-xl-size);font-weight:var(--type-display-xl-weight);line-height:var(--type-display-xl-leading);letter-spacing:var(--type-display-xl-tracking);color:var(--ink)}.t-display-lg{font-family:var(--font-display);font-size:var(--type-display-lg-size);font-weight:var(--type-display-lg-weight);line-height:var(--type-display-lg-leading);letter-spacing:var(--type-display-lg-tracking);color:var(--ink)}.t-display-md{font-family:var(--font-display);font-size:var(--type-display-md-size);font-weight:var(--type-display-md-weight);line-height:var(--type-display-md-leading);letter-spacing:var(--type-display-md-tracking);color:var(--ink)}.t-title-lg{font-family:var(--font-display);font-size:var(--type-title-lg-size);font-weight:var(--type-title-lg-weight);line-height:var(--type-title-lg-leading);letter-spacing:var(--type-title-lg-tracking);color:var(--ink)}.t-title-md{font-family:var(--font-display);font-size:var(--type-title-md-size);font-weight:var(--type-title-md-weight);line-height:var(--type-title-md-leading);letter-spacing:var(--type-title-md-tracking);color:var(--ink)}.t-title-sm{font-family:var(--font-text);font-size:var(--type-title-sm-size);font-weight:var(--type-title-sm-weight);line-height:var(--type-title-sm-leading);letter-spacing:var(--type-title-sm-tracking);color:var(--ink)}.t-label-md{font-family:var(--font-text);font-size:var(--type-label-md-size);font-weight:var(--type-label-md-weight);line-height:var(--type-label-md-leading);letter-spacing:var(--type-label-md-tracking);color:var(--ink)}.t-body-md{font-family:var(--font-text);font-size:var(--type-body-md-size);font-weight:var(--type-body-md-weight);line-height:var(--type-body-md-leading);letter-spacing:var(--type-body-md-tracking);color:var(--body)}.t-caption{font-family:var(--font-text);font-size:var(--type-caption-size);font-weight:var(--type-caption-weight);line-height:var(--type-caption-leading);letter-spacing:var(--type-caption-tracking);color:var(--muted)}.t-legal{font-family:var(--font-text);font-size:var(--type-legal-size);font-weight:var(--type-legal-weight);line-height:var(--type-legal-leading);letter-spacing:var(--type-legal-tracking)}.app-section-title{font-family:var(--font-display);font-size:var(--type-title-md-size);font-weight:500;color:var(--ink);margin:var(--space-xl) 0 var(--space-md)}.app-muted{color:var(--muted)}.app-loss{color:var(--semantic-loss)}.app-profit{color:var(--semantic-profit)}.pre-marker{border-bottom:1px dotted var(--border-strong);cursor:help}.app-scroll{overflow-y:auto;overflow-x:hidden}.app-empty{border:1px dashed var(--hairline);border-radius:var(--radius-md);padding:var(--space-xl);text-align:center;color:var(--muted);background:var(--surface-soft)}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:24px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center}.field{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:8px;margin-bottom:10px}.btn{width:100%;padding:10px 12px;border:none;border-radius:8px;background:var(--accent);color:#fff;cursor:pointer}.btn:disabled{opacity:.6;cursor:default}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--border);width:auto;padding:6px 12px}.error{color:var(--danger);font-size:13px;margin:6px 0}.spacer{flex:1}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.metric{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.metric .label{font-size:13px;color:var(--muted)}.metric .value{font-size:22px;font-weight:500;margin-top:4px}.section-title{font-size:16px;font-weight:500;margin:22px 0 10px}.pill{font-size:12px;padding:2px 8px;border-radius:6px;background:#eee}.muted{color:var(--muted)}.bad{color:var(--danger)}.good{color:var(--ok)}table.legacy{width:100%;border-collapse:collapse;background:var(--surface);border:1px solid var(--border);border-radius:10px;overflow:hidden}
