:root{--brand: oklch(.48 .14 158);--brand-hover: oklch(.53 .13 158);--brand-pressed: oklch(.4 .12 158);--brand-subtle: oklch(.94 .04 158);--brand-text: oklch(.98 .005 158);--bg: oklch(.965 .005 155);--surface: oklch(.993 .003 155);--text: oklch(.16 .01 155);--text-secondary: oklch(.38 .015 155);--text-caption: oklch(.5 .012 155);--border: oklch(.9 .008 155);--danger: oklch(.52 .17 25);--danger-bg: oklch(.95 .025 25);--danger-text: oklch(.38 .12 25);--warning-bg: oklch(.95 .04 80);--warning-text: oklch(.38 .1 80);--shadow-sm: 0 1px 2px rgba(15, 35, 25, .05), 0 1px 4px rgba(15, 35, 25, .07);--shadow-md: 0 2px 6px rgba(15, 35, 25, .06), 0 4px 16px rgba(15, 35, 25, .08);--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--space-2xl: 32px;--space-3xl: 48px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-full: 999px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;font-kerning:normal}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{background:var(--bg);color:var(--text)}.app{max-width:480px;margin:0 auto;min-height:100%;padding:var(--space-xl) var(--space-lg);display:flex;flex-direction:column}.header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) 0 var(--space-2xl)}.brand{font-weight:800;color:var(--brand);font-size:1.25rem;letter-spacing:-.03em}.card{background:var(--surface);box-shadow:var(--shadow-sm);border-radius:var(--radius-lg);padding:var(--space-xl);margin-bottom:var(--space-lg);border:1px solid transparent}.card-accent{background:var(--brand-subtle);border-color:#aedabf}.card-danger{background:var(--danger-bg);border-color:#f3bfba}.title{font-size:1.125rem;font-weight:700;margin:0 0 var(--space-xs);letter-spacing:-.01em;color:var(--text)}.subtitle{font-size:.8125rem;color:var(--text-secondary);margin:0;line-height:1.5}.muted{color:var(--text-secondary)}.status-value{font-size:2.5rem;font-weight:800;letter-spacing:-.03em;line-height:1;font-variant-numeric:tabular-nums}.row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.center{text-align:center}.btn{display:block;width:100%;padding:var(--space-lg) var(--space-xl);border:none;border-radius:var(--radius-md);background:var(--brand);color:var(--brand-text);font-size:1rem;font-weight:700;cursor:pointer;box-shadow:var(--shadow-sm);transition:background .15s ease,box-shadow .15s ease}.btn:hover:not(:disabled){background:var(--brand-hover);box-shadow:var(--shadow-md)}.btn:active:not(:disabled){background:var(--brand-pressed);box-shadow:none}.btn:disabled{background:#a0b4a6;color:#e0e7e2;cursor:not-allowed;box-shadow:none}.btn-ghost{background:transparent;color:var(--brand);border:1.5px solid var(--border);box-shadow:none}.btn-ghost:hover:not(:disabled){background:var(--brand-subtle);border-color:var(--brand);box-shadow:none}.btn-danger{background:var(--danger)}.btn-danger:hover:not(:disabled){background:#a21921;box-shadow:var(--shadow-md)}.input{width:100%;padding:var(--space-md) var(--space-lg);border:1.5px solid var(--border);border-radius:var(--radius-md);font-size:1rem;color:var(--text);background:var(--surface);transition:border-color .15s ease,box-shadow .15s ease}.input:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #0070441f;box-shadow:0 0 0 3px oklch(.48 .14 158 / .12)}.label{font-size:.8125rem;font-weight:600;color:var(--text-secondary);margin:var(--space-lg) 0 var(--space-sm);display:block}.badge{display:inline-flex;align-items:center;font-size:.6875rem;font-weight:700;padding:var(--space-xs) var(--space-md);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.06em}.badge.ok{background:var(--brand-subtle);color:var(--brand-pressed)}.badge.busy{background:var(--danger-bg);color:var(--danger-text)}.amounts{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);margin-bottom:var(--space-md)}.amount{padding:var(--space-lg) 0;text-align:center;border:1.5px solid var(--border);border-radius:var(--radius-md);font-weight:700;font-size:1rem;cursor:pointer;background:var(--surface);transition:border-color .15s ease,background .15s ease,color .15s ease}.amount:hover{border-color:var(--brand)}.amount.active{border-color:var(--brand);background:var(--brand);color:var(--brand-text)}.connector{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-lg);border:1.5px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-sm);cursor:pointer;transition:border-color .15s ease,background .15s ease;font-weight:500}.connector:hover:not(.disabled){border-color:var(--brand)}.connector.active{border-color:var(--brand);background:var(--brand-subtle)}.connector.disabled{opacity:.45;cursor:not-allowed}.metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.metric{text-align:center;padding:var(--space-md)}.metric .value{font-size:1.75rem;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.metric .unit{font-size:.6875rem;color:var(--text-secondary);margin-top:var(--space-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.progress{height:var(--space-sm);background:#e0e7e2;border-radius:var(--radius-full);overflow:hidden;margin:var(--space-sm) 0}.progress>span{display:block;height:100%;width:100%;background:var(--brand);border-radius:var(--radius-full);transform-origin:left;transition:transform .4s cubic-bezier(.16,1,.3,1)}.error{background:var(--danger-bg);color:var(--danger-text);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-size:.875rem;margin-bottom:var(--space-lg);font-weight:500;line-height:1.5}.warning{background:var(--warning-bg);color:var(--warning-text);padding:var(--space-md) var(--space-lg);border-radius:var(--radius-md);font-size:.875rem;margin-bottom:var(--space-lg);font-weight:500;line-height:1.5}.spinner{width:28px;height:28px;border:3px solid oklch(.88 .02 155);border-top-color:var(--brand);border-radius:50%;animation:spin .7s linear infinite;margin:var(--space-3xl) auto}@keyframes spin{to{transform:rotate(360deg)}}.footer{text-align:center;padding:var(--space-2xl) 0 var(--space-lg);font-size:.8125rem;color:var(--text-caption);margin-top:auto}.footer a{color:var(--brand);text-decoration:none;font-weight:600;margin:0 var(--space-sm)}.map{height:280px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.sticky-bottom{position:sticky;bottom:0;background:var(--surface);padding:var(--space-lg) 0;margin-top:auto;box-shadow:0 -2px 8px #0f23190f;z-index:10}.sticky-bottom .btn{margin-bottom:var(--space-sm)}.sticky-bottom .subtitle{text-align:center;margin-top:var(--space-xs)}.bottom-sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:100;display:flex;align-items:flex-end;justify-content:center;animation:fadeIn .2s ease}.bottom-sheet{background:var(--surface);border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-xl) var(--space-xl) var(--space-2xl);width:100%;max-width:480px;animation:slideUp .25s ease}.bottom-sheet .title{margin-bottom:var(--space-sm)}.bottom-sheet .subtitle{margin-bottom:var(--space-xl)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes evpulse{0%{transform:scale(1);opacity:.5}to{transform:scale(2.2);opacity:0}}@keyframes evping{0%{transform:scale(1);opacity:.3}to{transform:scale(2.8);opacity:0}}.faq-item{border-bottom:1px solid var(--border)}.faq-item:last-child{border-bottom:none}.faq-q{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) 0;cursor:pointer;font-weight:600;font-size:.875rem;color:var(--text);background:none;border:none;width:100%;text-align:left}.faq-q svg{flex-shrink:0;transition:transform .2s ease}.faq-q.open svg{transform:rotate(180deg)}.faq-a{font-size:.8125rem;color:var(--text-secondary);padding:0 0 var(--space-md);line-height:1.5}.connector-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-lg);border:1.5px solid var(--border);border-radius:var(--radius-md);margin-bottom:var(--space-sm);cursor:pointer;transition:border-color .15s ease,background .15s ease}.connector-card:hover:not(.disabled){border-color:var(--brand)}.connector-card.active{border-color:var(--brand);background:var(--brand-subtle);box-shadow:inset 0 0 0 1.5px var(--brand)}.connector-card.disabled{opacity:.45;cursor:not-allowed}.connector-card .connector-icon{width:40px;height:40px;border-radius:var(--radius-sm);background:var(--brand-subtle);display:flex;align-items:center;justify-content:center;flex-shrink:0}.connector-card.active .connector-icon{background:var(--brand)}.connector-card .connector-info{flex:1;min-width:0}.connector-card .connector-info .title{font-size:.9375rem;margin:0}.connector-card .connector-info .subtitle{font-size:.75rem;margin:var(--space-xs) 0 0}.step-indicators{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg) 0}.step{display:flex;align-items:flex-start;gap:var(--space-md)}.step-dot{width:20px;height:20px;border-radius:50%;border:2px solid var(--border);flex-shrink:0;margin-top:1px;display:flex;align-items:center;justify-content:center}.step-dot.done{background:var(--brand);border-color:var(--brand)}.step-dot.active{border-color:var(--brand);animation:evpulse 1.5s ease infinite}.step-label{font-size:.875rem;font-weight:600;color:var(--text)}.step-sublabel{font-size:.75rem;color:var(--text-secondary);margin-top:2px}.step.pending .step-label{color:var(--text-caption)}.metric-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-sm)}.metric-card{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:var(--space-lg);text-align:center}.metric-card .value{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.metric-card .unit{font-size:.6875rem;color:var(--text-secondary);margin-top:var(--space-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
