:root{color-scheme:light;--surface-base: #F7F5F0;--surface-raised: #FFFDFA;--surface-overlay: #FFFFFF;--surface-sunken: #EFEDE6;--surface-hover: #F1EFE8;--surface-active: #E9E6DD;--surface-inverse: #1C1B18;--ink: #1C1B18;--ink-secondary: #57534E;--ink-muted: #78716C;--ink-subtle: #A8A29B;--ink-on-accent: #FFFFFF;--ink-inverse: #F7F5F0;--border: #E7E4DD;--border-muted: #F0EEE8;--border-strong: #D6D2C9;--accent-50: #F2F3FB;--accent-100: #E4E7F6;--accent-200: #C9CDED;--accent-300: #A3AADD;--accent-400: #757DC4;--accent-500: #5860AC;--accent-600: #454FA0;--accent-700: #3A4187;--accent-800: #313870;--accent-900: #2B3059;--accent-950: #1B1E3A;--color-accent: var(--accent-600);--color-accent-hover: var(--accent-700);--color-accent-active: var(--accent-800);--color-accent-text: var(--accent-700);--color-accent-border: var(--accent-200);--color-accent-muted: var(--accent-100);--color-accent-subtle: var(--accent-50);--color-on-accent: var(--ink-on-accent);--success: #0F7A46;--success-fg: #0B5C37;--success-bg: #EDF6F0;--success-border: #C9E5D4;--warning: #B7791F;--warning-fg: #7C4A12;--warning-bg: #FDF5E6;--warning-border: #F2DDB0;--danger: #C23934;--danger-fg: #8F2C22;--danger-bg: #FBEEEC;--danger-border: #F2D0CB;--info: #2C6CB0;--info-fg: #1F4E80;--info-bg: #EEF4FB;--info-border: #CADCEF;--color-success: var(--success);--color-warning: var(--warning);--color-error: var(--danger);--color-danger: var(--danger);--color-info: var(--info);--legal-yellow: #F5C542;--legal-yellow-edge: #FFD24A;--legal-yellow-ink: #1A1A1A;--legal-yellow-line: #8F7000;--legal-yellow-rgb: 245, 197, 66;--focus-ring-color: rgba(69, 79, 160, .45);--focus-ring-width: 3px;--focus-ring: 0 0 0 var(--focus-ring-width) var(--focus-ring-color);--focus-ring-danger: 0 0 0 var(--focus-ring-width) rgba(194, 57, 52, .4);--selection-bg: var(--accent-100);--selection-fg: var(--accent-900);--font-serif: "Source Serif 4", "Newsreader", Georgia, "Times New Roman", serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: "JetBrains Mono", "Cascadia Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--font-body: var(--font-sans);--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--leading-none: 1;--leading-tight: 1.15;--leading-snug: 1.3;--leading-normal: 1.5;--leading-relaxed: 1.6;--leading-loose: 1.75;--tracking-tighter: -.02em;--tracking-tight: -.015em;--tracking-snug: -.008em;--tracking-normal: 0;--tracking-wide: .02em;--tracking-wider: .06em;--text-display-size: 4.5rem;--text-display-leading: 1.05;--text-display-weight: var(--font-weight-regular);--text-display-tracking: var(--tracking-tighter);--text-display-family: var(--font-serif);--text-4xl-size: 3rem;--text-4xl-leading: 1.1;--text-4xl-weight: var(--font-weight-semibold);--text-4xl-tracking: var(--tracking-tight);--text-3xl-size: 2.25rem;--text-3xl-leading: 1.15;--text-3xl-weight: var(--font-weight-semibold);--text-3xl-tracking: var(--tracking-tight);--text-2xl-size: 1.75rem;--text-2xl-leading: 1.2;--text-2xl-weight: var(--font-weight-semibold);--text-2xl-tracking: var(--tracking-snug);--text-xl-size: 1.375rem;--text-xl-leading: 1.3;--text-xl-weight: var(--font-weight-semibold);--text-xl-tracking: var(--tracking-snug);--text-lg-size: 1.125rem;--text-lg-leading: var(--leading-relaxed);--text-lg-weight: var(--font-weight-regular);--text-lg-tracking: var(--tracking-normal);--text-base-size: 1rem;--text-base-leading: var(--leading-relaxed);--text-base-weight: var(--font-weight-regular);--text-base-tracking: var(--tracking-normal);--text-sm-size: .875rem;--text-sm-leading: var(--leading-normal);--text-sm-weight: var(--font-weight-regular);--text-sm-tracking: var(--tracking-normal);--text-xs-size: .8125rem;--text-xs-leading: 1.5;--text-xs-weight: var(--font-weight-regular);--text-xs-tracking: var(--tracking-wide);--text-2xs-size: .6875rem;--text-2xs-leading: 1.4;--text-2xs-weight: var(--font-weight-semibold);--text-2xs-tracking: var(--tracking-wider);--space-px: 1px;--space-0-5: .125rem;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 2.5rem;--space-8: 3rem;--space-9: 4rem;--space-10: 5rem;--space-11: 6rem;--space-12: 8rem;--radius-none: 0;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-3xl: 24px;--radius-full: 9999px;--radius-card: 12px;--shadow-xs: 0 1px 2px rgba(28, 27, 24, .04);--shadow-sm: 0 1px 3px rgba(28, 27, 24, .06), 0 1px 2px rgba(28, 27, 24, .04);--shadow-md: 0 4px 12px rgba(28, 27, 24, .08);--shadow-lg: 0 8px 28px rgba(28, 27, 24, .1);--shadow-xl: 0 20px 48px rgba(28, 27, 24, .14);--shadow-card: 0 0 0 1px var(--border), 0 1px 2px rgba(28, 27, 24, .04);--shadow-focus: var(--focus-ring);--shadow-inner: inset 0 1px 2px rgba(28, 27, 24, .06);--duration-instant: 60ms;--duration-fast: .12s;--duration-base: .18s;--duration-slow: .26s;--duration-slower: .4s;--duration-deliberate: .8s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--ease-entrance: cubic-bezier(.16, 1, .3, 1);--ease-exit: cubic-bezier(.4, 0, 1, 1);--ease-heavy: cubic-bezier(.4, 0, .2, 1);--ease-settle: cubic-bezier(.2, .9, .2, 1);--transition-colors: color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);--transition-transform: transform var(--duration-base) var(--ease-standard);--transition-shadow: box-shadow var(--duration-base) var(--ease-standard);--z-base: 0;--z-raised: 10;--z-sticky: 100;--z-header: 200;--z-drawer: 300;--z-dropdown: 400;--z-overlay: 500;--z-modal: 600;--z-command: 650;--z-popover: 700;--z-toast: 800;--z-tooltip: 900;--z-max: 9999;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1200px;--container-2xl: 1440px;--container-content: 1120px;--container-prose: 68ch;--grid-columns: 12;--grid-gutter: var(--space-5);--grid-margin: var(--space-6);--shell-sidebar-width: 264px;--shell-sidebar-width-collapsed: 72px;--shell-header-height: 64px;--shell-footer-height: 40px;--control-height-sm: 32px;--control-height-md: 40px;--control-height-lg: 48px;--control-padding-x: var(--space-4);--table-row-height: 56px;--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--bp-2xl: 1536px;--bridge-card-bg-1: #0F0F1A;--bridge-card-bg-2: #17182E;--bridge-card-bg-3: #21254A;--bridge-card-ink: #F4F4F8;--bridge-card-edge: var(--accent-500);--bridge-card-qr-frame: #FFFFFF}[data-theme=dark]{color-scheme:dark;--surface-base: #131315;--surface-raised: #1A1A1D;--surface-overlay: #202023;--surface-sunken: #0F0F11;--surface-hover: #232327;--surface-active: #2A2A2E;--surface-inverse: #F7F5F0;--ink: #F5F4F1;--ink-secondary: #B4AFA7;--ink-muted: #8A857D;--ink-subtle: #605C55;--ink-on-accent: #14152B;--ink-inverse: #1C1B18;--border: #2C2C2F;--border-muted: #202023;--border-strong: #3A3A3F;--color-accent: #8890DC;--color-accent-hover: #9AA1E6;--color-accent-active: #AEB4ED;--color-accent-text: #A6ACE9;--color-accent-border: rgba(136, 144, 220, .3);--color-accent-muted: rgba(136, 144, 220, .16);--color-accent-subtle: rgba(136, 144, 220, .1);--color-on-accent: var(--ink-on-accent);--success: #34C77B;--success-fg: #7FE0AC;--success-bg: rgba(52, 199, 123, .12);--success-border: rgba(52, 199, 123, .3);--warning: #E0A94E;--warning-fg: #F0C77E;--warning-bg: rgba(224, 169, 78, .12);--warning-border: rgba(224, 169, 78, .3);--danger: #F26D6D;--danger-fg: #F79A9A;--danger-bg: rgba(242, 109, 109, .12);--danger-border: rgba(242, 109, 109, .32);--info: #5AA9FF;--info-fg: #93C6FF;--info-bg: rgba(90, 169, 255, .12);--info-border: rgba(90, 169, 255, .3);--color-success: var(--success);--color-warning: var(--warning);--color-error: var(--danger);--color-danger: var(--danger);--color-info: var(--info);--legal-yellow: #F5C542;--legal-yellow-edge: #FFD24A;--legal-yellow-ink: #1A1A1A;--legal-yellow-line: #FFD24A;--legal-yellow-rgb: 245, 197, 66;--focus-ring-color: rgba(136, 144, 220, .55);--focus-ring: 0 0 0 var(--focus-ring-width) var(--focus-ring-color);--focus-ring-danger: 0 0 0 var(--focus-ring-width) rgba(242, 109, 109, .45);--selection-bg: rgba(136, 144, 220, .28);--selection-fg: var(--ink);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 3px rgba(0, 0, 0, .5), 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 14px rgba(0, 0, 0, .55);--shadow-lg: 0 10px 32px rgba(0, 0, 0, .6);--shadow-xl: 0 24px 56px rgba(0, 0, 0, .7);--shadow-card: 0 0 0 1px var(--border), 0 1px 3px rgba(0, 0, 0, .45);--shadow-focus: var(--focus-ring);--shadow-inner: inset 0 1px 2px rgba(0, 0, 0, .45);--bridge-card-bg-1: #0F0F1A;--bridge-card-bg-2: #17182E;--bridge-card-bg-3: #21254A;--bridge-card-ink: #F4F4F8;--bridge-card-edge: var(--color-accent);--bridge-card-qr-frame: #FFFFFF}::selection{background:var(--selection-bg);color:var(--selection-fg)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility}body{background:var(--surface-base);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base-size);line-height:var(--text-base-leading);letter-spacing:var(--text-base-tracking);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{color:var(--ink);font-weight:var(--font-weight-semibold);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}p{line-height:var(--text-base-leading)}a{color:var(--color-accent-text);text-decoration:none;transition:var(--transition-colors)}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}img,svg,video,canvas{display:block;max-width:100%}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus-ring)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}#root{min-height:100vh}.app{max-width:520px;margin:0 auto;padding:var(--space-5) var(--space-4) var(--space-9)}.app-head{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) 0 var(--space-5)}.app-head .brand{font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-wider);font-size:var(--text-sm-size)}.tabs{display:inline-flex;gap:var(--space-1);background:var(--surface-sunken);padding:var(--space-1);border-radius:var(--radius-full)}.tab{border:none;background:none;padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs-size);font-weight:var(--font-weight-medium);color:var(--ink-secondary);cursor:pointer}.tab.active{background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-xs)}.hero{margin-bottom:var(--space-5)}.hero h1{font-family:var(--font-serif);font-size:var(--text-3xl-size);line-height:1.1;font-weight:var(--font-weight-regular);letter-spacing:var(--tracking-tight)}.hero p{color:var(--ink-secondary);font-size:var(--text-base-size);margin-top:var(--space-2)}.card{background:var(--surface-raised);border-radius:var(--radius-2xl);box-shadow:var(--shadow-card);padding:var(--space-5)}.stack{display:grid;gap:var(--space-4)}.btn{--_h: var(--control-height-md);display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);height:var(--_h);padding:0 var(--space-4);font-size:var(--text-sm-size);font-weight:var(--font-weight-semibold);border-radius:var(--radius-lg);border:1px solid transparent;cursor:pointer;transition:var(--transition-colors)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--color-accent);color:var(--color-on-accent)}.btn-primary:hover:not(:disabled){background:var(--color-accent-hover)}.btn-secondary{background:var(--surface-raised);color:var(--ink);border-color:var(--border-strong)}.btn-block{width:100%}.btn-lg{--_h: var(--control-height-lg);font-size:var(--text-base-size)}.spinner{width:15px;height:15px;border-radius:var(--radius-full);border:2px solid currentColor;border-right-color:transparent;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.field{display:grid;gap:var(--space-1);position:relative}.field label{font-size:var(--text-sm-size);font-weight:var(--font-weight-medium);color:var(--ink-secondary)}.input{height:var(--control-height-md);padding:0 var(--control-padding-x);background:var(--surface-raised);color:var(--ink);border:1px solid var(--border-strong);border-radius:var(--radius-lg);font-size:var(--text-sm-size);width:100%}.input::placeholder{color:var(--ink-muted)}.input:focus-visible{border-color:var(--color-accent);box-shadow:var(--focus-ring)}.form-error{padding:var(--space-3);border-radius:var(--radius-lg);background:var(--danger-bg);color:var(--danger-fg);border:1px solid var(--danger-border);font-size:var(--text-sm-size)}.suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:var(--z-dropdown);background:var(--surface-overlay);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden}.suggestion{display:block;width:100%;text-align:left;border:none;background:none;padding:var(--space-3) var(--space-4);font-size:var(--text-sm-size);color:var(--ink);cursor:pointer}.suggestion:hover{background:var(--surface-hover)}.picked{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm-size);color:var(--ink-secondary)}.picked .dot{width:8px;height:8px;border-radius:var(--radius-full)}.picked .change{margin-left:auto;color:var(--color-accent-text);background:none;border:none;cursor:pointer;font:inherit}.quote{background:var(--surface-sunken);border-radius:var(--radius-lg);padding:var(--space-4);display:grid;gap:var(--space-2)}.quote-row{display:flex;justify-content:space-between;font-size:var(--text-sm-size);color:var(--ink-secondary)}.quote-total{display:flex;justify-content:space-between;align-items:baseline;padding-top:var(--space-2);border-top:1px solid var(--border)}.quote-total .amt{font-family:var(--font-mono);font-size:var(--text-2xl-size);font-weight:var(--font-weight-semibold);color:var(--ink)}.seg{display:inline-flex;background:var(--surface-sunken);border-radius:var(--radius-lg);padding:var(--space-1);gap:var(--space-1)}.seg button{border:none;background:none;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm-size);font-weight:var(--font-weight-medium);color:var(--ink-secondary);cursor:pointer}.seg button.on{background:var(--surface-raised);color:var(--ink);box-shadow:var(--shadow-xs)}.confirm{text-align:center;display:grid;gap:var(--space-3)}.confirm .ref{font-family:var(--font-mono);font-size:var(--text-2xl-size);font-weight:var(--font-weight-semibold)}.confirm .code{font-family:var(--font-mono);letter-spacing:var(--tracking-wider);font-size:var(--text-lg-size);background:var(--surface-sunken);padding:var(--space-2) var(--space-4);border-radius:var(--radius-lg);display:inline-block}.muted{color:var(--ink-muted);font-size:var(--text-sm-size)}.pill{display:inline-flex;align-items:center;gap:var(--space-1);height:26px;padding:0 var(--space-3);border-radius:var(--radius-full);font-size:var(--text-sm-size);font-weight:var(--font-weight-medium);border:1px solid}.pill .dot{width:7px;height:7px;border-radius:var(--radius-full);background:currentColor}.pill.success{color:var(--success-fg);background:var(--success-bg);border-color:var(--success-border)}.pill.warning{color:var(--warning-fg);background:var(--warning-bg);border-color:var(--warning-border)}.pill.info{color:var(--info-fg);background:var(--info-bg);border-color:var(--info-border)}.pill.neutral{color:var(--ink-secondary);background:var(--surface-sunken);border-color:var(--border)}.acct{border:1px solid var(--border-strong);background:var(--surface-raised);color:var(--ink-secondary);height:32px;padding:0 var(--space-3);border-radius:var(--radius-full);font-size:var(--text-xs-size);font-weight:var(--font-weight-medium);cursor:pointer}.acct:hover{background:var(--surface-hover);color:var(--ink)}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1b1857;z-index:var(--z-overlay);display:grid;place-items:center;padding:var(--space-4)}[data-theme=dark] .modal-scrim{background:#0009}.modal{width:100%;max-width:400px;background:var(--surface-overlay);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);padding:var(--space-6);display:grid;gap:var(--space-4)}.modal h2{font-size:var(--text-xl-size)}.modal .toggle-link{text-align:center;font-size:var(--text-sm-size);color:var(--ink-muted)}.modal .toggle-link button{background:none;border:none;color:var(--color-accent-text);font:inherit;cursor:pointer}.modal-close{position:relative;margin-left:auto;margin-top:calc(var(--space-3) * -1);margin-right:calc(var(--space-2) * -1);border:none;background:none;font-size:20px;color:var(--ink-muted);cursor:pointer}
