:root{--bg-0: #07070a;--bg-1: #0b0b10;--bg-2: #111118;--bg-3: #17171f;--line: rgba(255,255,255,.07);--line-strong: rgba(255,255,255,.14);--text-0: #f5f3ee;--text-1: #c6c3bb;--text-2: #8b877d;--text-3: #5a5750;--accent: #f0b429;--accent-2: #ffd166;--accent-ink: #1a1305;--success: #5ee7a6;--danger: #ff6b6b;--warn: #f7b955;--shadow-card: 0 30px 80px -20px rgba(0,0,0,.7), 0 0 0 1px rgba(255,255,255,.04) inset;--shadow-btn: 0 10px 30px -10px rgba(240,180,41,.55);--font-display: "Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-display);color:var(--text-0);background:var(--bg-0);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.app{position:relative;min-height:100vh;display:flex;flex-direction:column;isolation:isolate}.bg-grid{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-3;background-image:linear-gradient(to right,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(to bottom,rgba(255,255,255,.035) 1px,transparent 1px);background-size:56px 56px;-webkit-mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%);mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%)}.bg-glow{position:fixed;z-index:-2;width:50vw;height:50vw;border-radius:50%;filter:blur(120px);opacity:.38;pointer-events:none}.bg-glow--a{top:-10%;right:-15%;background:radial-gradient(circle at 50% 50%,#f0b429 0%,transparent 60%)}.bg-glow--b{bottom:-25%;left:-20%;background:radial-gradient(circle at 50% 50%,#5e3cff 0%,transparent 60%);opacity:.22}.bg-noise{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.9'/></svg>")}.header{display:flex;align-items:center;justify-content:space-between;padding:22px 40px;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);gap:16px}.brand{display:inline-flex;align-items:center;--logo-h: 40px;height:var(--logo-h);flex-shrink:0}.brand__logo{height:var(--logo-h);width:calc(var(--logo-h) * 4);object-fit:contain;object-position:left center;display:block}.nav{display:flex;align-items:center;gap:12px}.chain-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;font-size:12px;color:var(--text-1);font-family:var(--font-mono);letter-spacing:.06em;background:#ffffff05;white-space:nowrap}.chain-badge__dot{width:7px;height:7px;border-radius:50%;background:var(--text-3);box-shadow:0 0 0 3px #ffffff08}.chain-badge__dot.is-ok{background:var(--success);box-shadow:0 0 0 3px #5ee7a626,0 0 10px #5ee7a699}.connect-btn{background:var(--accent);color:var(--accent-ink);border:0;padding:10px 20px;border-radius:10px;font-weight:700;font-size:13px;letter-spacing:.02em;box-shadow:var(--shadow-btn);transition:transform .15s ease,filter .2s ease;white-space:nowrap}.connect-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.05)}.connect-btn:disabled{opacity:.7;cursor:not-allowed}.connect-btn--ok{display:inline-flex;align-items:center;gap:8px;background:#ffffff0a;color:var(--text-0);border:1px solid var(--line-strong);font-family:var(--font-mono);font-weight:500;box-shadow:none}.account-dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 8px #5ee7a699}.account-wrap{position:relative}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10}.account-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:240px;background:#0e0e14fa;border:1px solid var(--line-strong);border-radius:12px;padding:6px;box-shadow:0 20px 50px -10px #000000b3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:11;animation:fadeIn .15s ease-out}.account-menu__row{display:flex;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;background:transparent;border:0;color:var(--text-0);text-align:left;font-size:13px;border-radius:8px;transition:background .15s}.account-menu__row:hover{background:#ffffff0f}.account-menu__row--info{cursor:default;pointer-events:none;flex-direction:column;align-items:flex-start;gap:2px}.account-menu__row--info .muted{color:var(--text-2);font-size:11px;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.account-menu__row--info strong{font-weight:600}.account-menu__row--danger{color:var(--danger)}.account-menu__row--danger:hover{background:#ff6b6b14}.main{flex:1;display:flex;align-items:center;justify-content:center;padding:64px 24px;width:100%}.swap-stack{width:100%;max-width:480px;display:flex;flex-direction:column;gap:16px;animation:rise .9s cubic-bezier(.2,.7,.1,1) both}.swap-card--loading{padding:28px;display:flex;flex-direction:column;gap:14px}.loading-pulse{height:72px;border-radius:14px;background:linear-gradient(90deg,#ffffff08,#ffffff12,#ffffff08);background-size:200% 100%;animation:shimmer 1.4s infinite linear}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.swap-card{background:linear-gradient(180deg,#14141cd9,#0c0c12e6);border:1px solid var(--line-strong);border-radius:24px;padding:22px;box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);animation:rise 1s cubic-bezier(.2,.7,.1,1) both .1s}.swap-card__head{display:flex;align-items:center;justify-content:space-between;padding:2px 4px 18px}.swap-card__title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;letter-spacing:.02em;color:var(--text-0);text-transform:uppercase;font-family:var(--font-mono)}.swap-card__title .dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent)}.icon-btn{background:transparent;border:1px solid var(--line);width:32px;height:32px;border-radius:10px;color:var(--text-1);display:grid;place-items:center;transition:border-color .2s,color .2s}.icon-btn:hover{border-color:var(--line-strong);color:var(--text-0)}.panel{background:var(--bg-2);border:1px solid var(--line);border-radius:18px;padding:16px 18px;transition:border-color .2s}.panel:focus-within{border-color:#f0b42959}.panel__head{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--text-2);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}.panel__bal-wrap{display:flex;align-items:center;gap:8px}.panel__bal{color:var(--text-2)}.max-btn{background:#f0b4291a;color:var(--accent);border:1px solid rgba(240,180,41,.3);padding:2px 8px;border-radius:6px;font-family:var(--font-mono);font-size:10px;font-weight:600;letter-spacing:.08em;transition:background .15s}.max-btn:hover{background:#f0b4292e}.panel__body{display:flex;align-items:center;gap:12px}.panel__amount{flex:1;min-width:0;background:transparent;border:0;outline:0;color:var(--text-0);font-family:var(--font-display);font-size:32px;font-weight:500;letter-spacing:-.02em;padding:2px 0}.panel__amount::placeholder{color:var(--text-3)}.panel__amount[readonly]{color:var(--text-1)}.token-selector{position:relative}.token-pill{display:inline-flex;align-items:center;gap:10px;background:#ffffff0a;border:1px solid var(--line-strong);padding:8px 14px 8px 8px;border-radius:999px;color:var(--text-0);font-weight:600;font-size:15px;transition:background .2s,border-color .2s,transform .15s}.token-pill:hover{background:#ffffff12}.token-pill--locked{cursor:default;background:#ffffff05}.token-pill__logo{width:28px;height:28px;border-radius:50%;background:#22222c;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(255,255,255,.08)}.token-pill__logo img{width:100%;height:100%;object-fit:cover}.token-pill__sym{letter-spacing:.02em}.token-pill__chev{opacity:.6;margin-left:2px}.token-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:220px;background:#0e0e14f2;border:1px solid var(--line-strong);border-radius:14px;padding:6px;box-shadow:0 20px 50px -10px #000000b3;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:20;animation:fadeIn .15s ease-out}.token-menu__row{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:10px;background:transparent;border:0;color:var(--text-0);text-align:left;transition:background .15s}.token-menu__row:hover{background:#ffffff0f}.token-menu__row.is-active{background:#f0b42914}.token-menu__logo{width:30px;height:30px;border-radius:50%;background:#22222c;overflow:hidden;border:1px solid rgba(255,255,255,.08);display:grid;place-items:center}.token-menu__logo img{width:100%;height:100%;object-fit:cover}.token-menu__text{display:flex;flex-direction:column}.token-menu__sym{font-weight:600;font-size:14px}.token-menu__name{font-size:12px;color:var(--text-2)}.flip-wrap{display:flex;justify-content:center;margin:-10px 0;position:relative;z-index:2}.flip-btn{width:40px;height:40px;border-radius:12px;background:var(--bg-3);border:1px solid var(--line-strong);color:var(--text-0);display:grid;place-items:center;transition:transform .35s ease,background .2s;box-shadow:0 6px 20px #00000080}.flip-btn:hover{background:#f0b4291f;transform:rotate(180deg)}.flip-btn:active{transform:rotate(180deg) scale(.95)}.swap-info{margin-top:14px;padding:12px 14px;border:1px dashed var(--line);border-radius:12px;display:flex;flex-direction:column;gap:6px}.swap-info__row{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--text-2);font-family:var(--font-mono);letter-spacing:.04em}.swap-info__row strong{color:var(--text-0);font-weight:500}.swap-info__muted{color:var(--text-3)}.primary-btn{margin-top:16px;width:100%;padding:18px;border:0;border-radius:14px;font-size:15px;font-weight:700;letter-spacing:.02em;background:linear-gradient(180deg,var(--accent-2),var(--accent));color:var(--accent-ink);box-shadow:var(--shadow-btn);transition:transform .15s ease,filter .2s ease,opacity .2s}.primary-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.05)}.primary-btn:disabled,.primary-btn--disabled{cursor:not-allowed;background:#ffffff0f;color:var(--text-2);box-shadow:none;border:1px solid var(--line)}.status{margin-top:12px;padding:10px 14px;border-radius:10px;font-size:13px;font-family:var(--font-mono);display:block;word-break:break-word}.status--ok{background:#5ee7a614;color:var(--success);border:1px solid rgba(94,231,166,.25)}.status--err{background:#ff6b6b14;color:var(--danger);border:1px solid rgba(255,107,107,.25)}.status--warn{background:#f7b95514;color:var(--warn);border:1px solid rgba(247,185,85,.25)}.status--link{background:#f0b4290f;color:var(--accent-2);border:1px solid rgba(240,180,41,.25);text-align:center}.status--link:hover{filter:brightness(1.1)}.price-debug{margin-top:12px;padding:14px 16px;border-radius:12px;border:1px solid rgba(247,185,85,.3);background:linear-gradient(180deg,#f7b9550f,#f7b95505);display:flex;flex-direction:column;gap:4px}.price-debug__title{font-size:12px;font-weight:600;color:var(--warn);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px}.price-debug__row{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:var(--text-2);font-family:var(--font-mono);gap:12px}.price-debug__row span{flex-shrink:0}.price-debug__row code{color:var(--text-0);background:#ffffff0a;padding:2px 6px;border-radius:4px;font-size:11px;word-break:break-all;text-align:right}.price-debug__hint{margin-top:8px;padding-top:8px;border-top:1px dashed rgba(247,185,85,.2);font-size:12px;color:var(--text-1);line-height:1.5}.wc-notice{display:flex;flex-direction:column;gap:6px;padding:12px 14px;margin-bottom:12px;border-radius:10px;border:1px solid rgba(247,185,85,.35);background:linear-gradient(180deg,#f7b95514,#f7b95508);color:var(--text-1);font-size:12.5px;line-height:1.5}.wc-notice strong{color:var(--warn);font-size:13px}.wc-notice a{color:var(--accent-2);border-bottom:1px solid rgba(240,180,41,.4)}.wc-notice a:hover{color:var(--accent);border-color:var(--accent)}.wc-notice code{font-family:var(--font-mono);font-size:11.5px;background:#ffffff0d;padding:1px 5px;border-radius:4px;color:var(--text-0)}.wallet-row--disabled{opacity:.45;cursor:not-allowed!important}.wallet-row--disabled:hover{background:#ffffff05!important}.wallet-row--walletconnect.wallet-row--disabled .wallet-row__meta{color:var(--warn)!important}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#050508bf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;padding:20px;animation:fadeIn .2s ease-out}.modal{width:100%;max-width:420px;background:linear-gradient(180deg,#181820fa,#0e0e14fa);border:1px solid var(--line-strong);border-radius:20px;padding:22px;box-shadow:0 30px 80px -10px #000c;animation:modalRise .25s cubic-bezier(.2,.8,.2,1)}.modal__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.modal__head h3{margin:0;font-size:20px;font-weight:700;letter-spacing:-.01em}.modal__close{background:transparent;border:1px solid var(--line);width:32px;height:32px;border-radius:8px;color:var(--text-1);display:grid;place-items:center;transition:border-color .2s,color .2s}.modal__close:hover{border-color:var(--line-strong);color:var(--text-0)}.modal__sub{margin:0 0 16px;color:var(--text-2);font-size:13px;line-height:1.5}.wallet-list{display:flex;flex-direction:column;gap:6px;max-height:60vh;overflow-y:auto}.wallet-row{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:#ffffff05;color:var(--text-0);text-align:left;transition:background .15s,border-color .15s,transform .1s}.wallet-row:hover:not(:disabled){background:#ffffff0d;border-color:var(--line-strong)}.wallet-row:disabled{opacity:.5;cursor:wait}.wallet-row__icon{width:36px;height:36px;border-radius:10px;background:#ffffff0a;display:grid;place-items:center;overflow:hidden;flex-shrink:0;color:var(--text-1)}.wallet-row__icon img{width:100%;height:100%;object-fit:contain;padding:4px}.wallet-row__text{flex:1;display:flex;flex-direction:column;gap:2px}.wallet-row__name{font-weight:600;font-size:15px}.wallet-row__meta{font-size:11px;color:var(--text-2);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.wallet-row--installed .wallet-row__meta{color:var(--success)}.wallet-row--walletconnect .wallet-row__meta{color:var(--accent)}.wallet-row__chev{font-family:var(--font-mono);color:var(--text-3);font-size:16px;transition:transform .15s,color .15s}.wallet-row:hover:not(:disabled) .wallet-row__chev{color:var(--accent);transform:translate(3px)}.footer{padding:24px 40px;border-top:1px solid var(--line);color:var(--text-2);font-size:12px;font-family:var(--font-mono);display:flex;justify-content:center;gap:18px;align-items:center;letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap}.footer__text{text-align:center}.footer__social{display:inline-flex;align-items:center;gap:10px;padding-left:4px;border-left:1px solid var(--line)}.footer__social-link{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:8px;border:1px solid var(--line);color:var(--text-1);background:#ffffff05;transition:color .15s,border-color .15s,background .15s,transform .15s}.footer__social-link:hover{color:var(--accent);border-color:#f0b42959;background:#f0b42914;transform:translateY(-1px)}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes modalRise{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swap-info__fetching{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--warn);font-family:var(--font-mono);letter-spacing:.04em;padding:4px 2px}.swap-info__spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(247,185,85,.25);border-top-color:var(--warn);animation:spin .9s linear infinite;flex-shrink:0}@media (max-width: 768px){.main{padding:32px 14px}.header{padding:14px 16px;gap:10px}.brand{--logo-h: 30px}.hero__title{font-size:clamp(32px,8vw,54px)}.swap-card{padding:18px;border-radius:20px}.panel{padding:14px;border-radius:16px}.panel__amount{font-size:26px}.swap-card__head{padding:2px 2px 14px}.token-pill{padding:6px 12px 6px 6px;font-size:14px}.token-pill__logo{width:24px;height:24px}.token-menu{min-width:200px}.primary-btn{padding:16px;font-size:14px}.footer{padding:20px 16px;gap:12px;font-size:11px}.footer__social{padding-left:12px}.modal{padding:18px;border-radius:16px}.modal__head h3{font-size:18px}.price-debug{padding:12px 14px}.price-debug__row{font-size:11px}}@media (max-width: 480px){.main{padding:24px 12px}.header{padding:12px 14px}.chain-badge{padding:6px 10px;font-size:11px}.chain-badge__dot{width:6px;height:6px}.brand{--logo-h: 28px}.swap-card{padding:16px;border-radius:18px}.panel{padding:12px 14px}.panel__amount{font-size:22px}.panel__head{font-size:10px;letter-spacing:.06em}.token-pill{padding:5px 10px 5px 5px;font-size:13px;gap:6px}.token-pill__logo{width:22px;height:22px}.token-pill__sym{font-size:13px}.max-btn{padding:2px 6px;font-size:9px}.connect-btn{padding:8px 12px;font-size:12px;border-radius:8px}.swap-info__row{font-size:11px}.swap-info__row strong{font-size:12px}.flip-btn{width:36px;height:36px}.footer{padding:16px 14px;font-size:10px;letter-spacing:.06em}.footer__social-link{width:30px;height:30px}.modal-backdrop{padding:12px}.modal{padding:16px;border-radius:14px}.wallet-row{padding:10px 12px;gap:10px}.wallet-row__icon{width:32px;height:32px}.wallet-row__name{font-size:14px}.wallet-row__meta{font-size:10px}.wc-notice{font-size:11.5px;padding:10px 12px}.account-menu{min-width:220px}}@media (max-width: 360px){.chain-badge{display:none}.connect-btn{padding:7px 10px;font-size:11px}.panel__amount{font-size:20px}.token-pill__sym{font-size:12px}.brand{--logo-h: 26px}}@media (hover: none) and (pointer: coarse){.flip-btn{width:44px;height:44px}.max-btn{padding:4px 10px}.token-pill{padding:8px 14px 8px 8px}.icon-btn{width:36px;height:36px}.connect-btn{padding:11px 18px}.primary-btn{padding:18px}}
