*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Kanit,Inter,system-ui,-apple-system,sans-serif;background:#faf9fa;color:#280d5f;min-width:320px;-webkit-font-smoothing:antialiased}#root{min-height:100vh;display:flex;flex-direction:column}:root{--c-purple: #7645d9;--c-purple-light: #9b6fe8;--c-cyan: #1fc7d4;--c-dark: #1a1033;--c-text: #280d5f;--c-muted: #7a6eaa;--c-border: #e8e3f0;--c-surface: #f6f4fc;--c-surface2: #ede8f5;--c-white: #ffffff;--c-success: #1a9e3f;--c-error: #d63868;--c-warn: #b68200;--radius-card: 28px;--radius-input: 18px;--radius-btn: 16px;--shadow-card: 0 8px 40px rgba(118, 69, 217, .13), 0 2px 8px rgba(0,0,0,.06);--shadow-menu: 0 12px 48px rgba(0, 0, 0, .16), 0 0 0 1px rgba(0,0,0,.05);--transition: all .18s cubic-bezier(.4,0,.2,1)}*,*:before,*:after{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;background:var(--c-surface);color:var(--c-text)}.page{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse 60% 40% at 10% -5%,rgba(31,199,212,.12) 0%,transparent 60%),radial-gradient(ellipse 50% 35% at 90% 0%,rgba(118,69,217,.1) 0%,transparent 60%),#f6f4fc}.header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;height:68px;padding:0 28px;background:#ffffffe0;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(118,69,217,.1)}.headerLeft{display:flex;align-items:center;gap:20px}.logo{display:flex;align-items:center}.headerBrand{font-size:20px;font-weight:800;background:linear-gradient(135deg,var(--c-cyan),var(--c-purple));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.03em}.nav{display:flex;gap:2px;background:var(--c-surface);border-radius:14px;padding:4px}.navLink{border:none;background:none;font-size:14px;font-weight:700;color:var(--c-muted);padding:7px 18px;border-radius:10px;cursor:pointer;transition:var(--transition);letter-spacing:.01em}.navLink:hover{color:var(--c-text)}.navLink.active{background:var(--c-white);color:var(--c-purple);box-shadow:0 2px 8px #7645d926}.headerRight{display:flex;align-items:center;gap:10px}.chainBadge{font-size:12px;font-weight:700;padding:6px 14px;border-radius:20px;background:linear-gradient(135deg,#1fc7d41f,#7645d91f);color:var(--c-purple);letter-spacing:.02em;border:1px solid rgba(118,69,217,.15)}.walletBtn{border:none;font-size:14px;font-weight:700;padding:10px 22px;border-radius:var(--radius-btn);cursor:pointer;transition:var(--transition);color:#fff;background:linear-gradient(135deg,var(--c-cyan) 0%,var(--c-purple) 100%);letter-spacing:.01em}.walletBtn:hover{opacity:.9;transform:translateY(-1px);box-shadow:0 6px 20px #7645d94d}.walletBtn.connected{background:var(--c-surface2);color:var(--c-purple);display:flex;align-items:center;gap:6px}.walletBtn.connected:hover{background:#d7cdf0;transform:none;box-shadow:none}.walletArrow{transition:transform .15s}.langWrap{position:relative}.langBtn{display:flex;align-items:center;gap:5px;padding:7px 12px;border-radius:var(--radius-btn);border:1.5px solid var(--c-border);background:var(--c-white);color:var(--c-text);font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition);white-space:nowrap}.langBtn:hover{border-color:var(--c-purple);color:var(--c-purple)}.langMenu{position:absolute;top:calc(100% + 8px);right:0;min-width:160px;background:var(--c-white);border-radius:16px;box-shadow:var(--shadow-menu);padding:6px;z-index:110;animation:fadeDown .15s ease-out}.langMenuItem{display:block;width:100%;border:none;background:none;font-size:13px;font-weight:600;color:var(--c-text);padding:9px 12px;border-radius:10px;cursor:pointer;text-align:left;transition:var(--transition)}.langMenuItem:hover{background:var(--c-surface)}.langMenuItemActive{color:var(--c-purple);background:#7645d914}.walletWrap{position:relative}.walletMenu{position:absolute;top:calc(100% + 10px);right:0;min-width:210px;background:var(--c-white);border-radius:20px;box-shadow:var(--shadow-menu);padding:8px;z-index:100;animation:fadeDown .15s ease-out}@keyframes fadeDown{0%{opacity:0;transform:translateY(-8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.walletMenuAddr{font-size:12px;font-weight:600;color:var(--c-muted);padding:8px 12px;border-bottom:1px solid var(--c-border);margin-bottom:4px;letter-spacing:.04em}.walletMenuItem{display:flex;align-items:center;gap:10px;width:100%;border:none;background:none;font-size:14px;font-weight:600;color:var(--c-text);padding:10px 12px;border-radius:12px;cursor:pointer;transition:var(--transition)}.walletMenuItem:hover{background:var(--c-surface)}.walletMenuItem.danger{color:var(--c-error)}.walletMenuItem.danger:hover{background:#ffe6ef}.main{flex:1;display:flex;justify-content:center;align-items:flex-start;padding:48px 16px 96px}.card{width:100%;max-width:440px;background:var(--c-white);border-radius:var(--radius-card);padding:28px;box-shadow:var(--shadow-card);border:1px solid rgba(118,69,217,.07)}.cardTitle{margin-bottom:22px}.cardTitle h2{font-size:22px;font-weight:800;color:var(--c-text);margin:0;letter-spacing:-.02em}.subtitle{font-size:13px;color:var(--c-muted);margin:4px 0 0;font-weight:500}.inputPanel{background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:var(--radius-input);padding:14px 16px;transition:border-color .15s}.inputPanel:focus-within{border-color:#7645d966;box-shadow:0 0 0 3px #7645d912}.inputPanel.small{margin-bottom:10px}.inputHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.inputLabel{font-size:12px;font-weight:700;color:var(--c-muted);text-transform:uppercase;letter-spacing:.06em}.inputBal{font-size:12px;color:var(--c-muted);cursor:pointer;font-weight:600;transition:color .12s}.inputBal:hover{color:var(--c-purple)}.inputRow{display:flex;align-items:center;gap:10px}.inputRow input,.inputPanel>input{flex:1;border:none;background:transparent;font-size:24px;font-weight:700;color:var(--c-text);outline:none;min-width:0;letter-spacing:-.02em}.inputRow input::placeholder,.inputPanel>input::placeholder{color:#cbc5de}.tokenBtn{display:flex;align-items:center;gap:7px;flex-shrink:0;border:none;background:var(--c-surface2);padding:8px 12px 8px 8px;border-radius:40px;cursor:pointer;transition:var(--transition);white-space:nowrap;min-width:0}.tokenBtn:hover{background:#d7cdf0;transform:scale(1.02)}.tokenBtn:active{transform:scale(.98)}.tokenAvatar{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;overflow:hidden}.tokenBtnSymbol{font-size:15px;font-weight:800;color:var(--c-purple);letter-spacing:-.01em}.tokenBtnChevron{color:var(--c-muted);flex-shrink:0}.tokenSelect{border:none;background:var(--c-surface2);color:var(--c-purple);font-size:14px;font-weight:700;padding:9px 12px;border-radius:var(--radius-btn);cursor:pointer;outline:none;appearance:none;-webkit-appearance:none;min-width:80px;text-align:center}.tokenSelect:hover{background:#d7cdf0}.switchRow{display:flex;justify-content:center;margin:-6px 0;position:relative;z-index:1}.switchBtn{width:42px;height:42px;border:4px solid var(--c-white);border-radius:14px;background:var(--c-surface2);color:var(--c-purple);display:grid;place-items:center;cursor:pointer;transition:var(--transition);box-shadow:0 2px 8px #7645d926}.switchBtn:hover{background:var(--c-purple);color:#fff;transform:rotate(180deg);box-shadow:0 4px 16px #7645d959}.slippageRow{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--c-muted);margin-top:14px;font-weight:600}.slippageBtns{display:flex;align-items:center;gap:4px}.slipBtn{border:none;font-size:12px;font-weight:700;padding:6px 11px;border-radius:10px;background:var(--c-surface);color:var(--c-muted);cursor:pointer;transition:var(--transition)}.slipBtn.active{background:var(--c-purple);color:#fff}.slipBtn:hover:not(.active){background:var(--c-surface2);color:var(--c-text)}.slipBtn:disabled{opacity:.45;cursor:not-allowed}.slipInput{width:48px;border:1.5px solid var(--c-border);border-radius:10px;text-align:center;font-size:12px;font-weight:700;padding:5px 4px;outline:none;color:var(--c-text);background:var(--c-white);transition:border-color .12s}.slipInput:focus{border-color:var(--c-purple)}.quoteInfo{display:flex;justify-content:space-between;font-size:13px;color:var(--c-muted);padding:10px 0;border-top:1px dashed var(--c-border);margin-top:6px;font-weight:600}.quoteInfo.routeInfo .routePath{font-size:.85rem;text-align:right;max-width:68%;word-break:break-word}.actionBtn{width:100%;border:none;padding:18px;border-radius:20px;font-size:16px;font-weight:800;color:#fff;background:linear-gradient(135deg,var(--c-cyan) 0%,var(--c-purple) 100%);cursor:pointer;margin-top:14px;transition:var(--transition);letter-spacing:.01em;position:relative;overflow:hidden}.actionBtn:after{content:"";position:absolute;inset:0;background:#fff0;transition:background .15s}.actionBtn:hover:not(:disabled):after{background:#ffffff14}.actionBtn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #7645d959}.actionBtn:active:not(:disabled){transform:translateY(0)}.actionBtn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.actionBtn.remove{background:linear-gradient(135deg,#ed4b9e,var(--c-purple))}.liqWrap{display:grid;gap:4px}.protocolTabs{display:flex;background:var(--c-surface);border:1.5px solid var(--c-border);border-radius:18px;padding:4px;gap:4px;margin-bottom:14px}.protocolTab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 8px;border-radius:14px;border:none;background:transparent;cursor:pointer;transition:background .18s,box-shadow .18s}.protocolTab:disabled{opacity:.38;cursor:not-allowed}.protocolTabActive{background:var(--c-purple);box-shadow:0 2px 12px #7645d961}.protocolTabLabel{font-size:15px;font-weight:800;color:var(--c-muted);line-height:1;transition:color .18s}.protocolTabActive .protocolTabLabel{color:#fff}.protocolTabSub{font-size:10px;font-weight:600;color:var(--c-muted);line-height:1;transition:color .18s}.protocolTabActive .protocolTabSub{color:#ffffffb8}.feeTierGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}.feeTierCard{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:14px 6px 11px;border-radius:14px;border:1.5px solid var(--c-border);background:var(--c-surface);cursor:pointer;transition:border-color .15s,background .15s}.feeTierCard:hover{border-color:var(--c-purple);background:#7645d90d}.feeTierCardActive{border-color:var(--c-purple)!important;background:#7645d917!important}.feeTierBadge{position:absolute;top:-9px;left:50%;transform:translate(-50%);font-size:9px;font-weight:800;background:linear-gradient(135deg,var(--c-purple),var(--c-cyan));color:#fff;padding:2px 8px;border-radius:20px;white-space:nowrap;letter-spacing:.03em}.feeTierPct{font-size:14px;font-weight:800;color:var(--c-text);line-height:1;transition:color .15s}.feeTierCardActive .feeTierPct{color:var(--c-purple)}.feeTierDesc{font-size:10px;font-weight:600;color:var(--c-muted);text-align:center;line-height:1.3}.pairRow{display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:14px}.pairPlus{font-size:20px;font-weight:800;color:var(--c-border)}.lpInfo{text-align:center;font-size:14px;color:var(--c-muted);margin-bottom:14px;font-weight:600}.lpInfo strong{color:var(--c-text)}.liqForm h3{font-size:15px;font-weight:800;color:var(--c-text);margin:10px 0 12px;text-transform:uppercase;letter-spacing:.06em}.poolRateInfo{font-size:13px;font-weight:600;color:var(--c-muted);background:var(--c-surface);padding:11px 14px;border-radius:14px;margin-bottom:10px;border:1px solid var(--c-border);line-height:1.5}.poolRateInfo.newPool{background:#fffbea;color:var(--c-warn);border-color:#b6820033}.divider{border:none;border-top:1px solid var(--c-border);margin:18px 0}.bottomNav{display:none}.v3PosList{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.v3PosCard{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:14px;border:1.5px solid var(--c-border);background:var(--c-surface);cursor:pointer;text-align:left;transition:border-color .15s,background .15s;width:100%}.v3PosCard:hover{border-color:var(--c-purple);background:#7645d90f}.v3PosCardActive{border-color:var(--c-purple)!important;background:#7645d91a!important}.v3PosId{font-size:13px;font-weight:700;color:var(--c-purple);flex-shrink:0}.v3PosLiq{font-size:12px;color:#6e6083;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v3PosFeeBadge{font-size:10px;font-weight:700;background:#1fc7d426;color:#1fc7d4;padding:2px 7px;border-radius:20px;flex-shrink:0}.v3RemovePctRow{display:flex;align-items:center;gap:6px;margin-bottom:14px}.pctBtn{padding:7px 13px;border-radius:20px;border:1.5px solid var(--c-border);background:var(--c-surface);color:#6e6083;font-size:13px;font-weight:700;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.pctBtn:hover{border-color:var(--c-purple);color:var(--c-purple)}.pctBtnActive{border-color:var(--c-purple)!important;background:#7645d91f!important;color:var(--c-purple)!important}.pctInput{width:66px;padding:7px 10px;border-radius:20px;border:1.5px solid var(--c-border);background:var(--c-surface);color:var(--c-text);font-size:13px;font-weight:700;text-align:center;outline:none;transition:border-color .15s}.pctInput:focus{border-color:var(--c-purple)}.toast{margin-top:16px;padding:14px 16px;border-radius:16px;font-size:13px;font-weight:600;word-break:break-all;line-height:1.5;background:var(--c-surface2);color:var(--c-purple);animation:toastIn .2s ease-out}@keyframes toastIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.toast.success{background:#e6f9ee;color:var(--c-success)}.toast.error{background:#ffe6ef;color:var(--c-error)}.toast.pending{background:#e4f3fd;color:#1d8acf}.pickerOverlay{position:fixed;inset:0;background:#0a061c8c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);z-index:200;display:flex;align-items:center;justify-content:center;padding:16px;animation:overlayIn .18s ease-out}@keyframes overlayIn{0%{opacity:0}to{opacity:1}}.pickerSheet{background:var(--c-white);border-radius:28px;width:100%;max-width:400px;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-menu);animation:sheetIn .2s cubic-bezier(.34,1.56,.64,1);overflow:hidden}@keyframes sheetIn{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.pickerHeader{display:flex;align-items:center;justify-content:space-between;padding:22px 22px 16px;flex-shrink:0}.pickerTitle{font-size:18px;font-weight:800;color:var(--c-text);letter-spacing:-.02em}.pickerClose{width:34px;height:34px;border:none;background:var(--c-surface);border-radius:50%;cursor:pointer;display:grid;place-items:center;color:var(--c-muted);transition:var(--transition);flex-shrink:0}.pickerClose:hover{background:var(--c-surface2);color:var(--c-text)}.pickerSearchWrap{padding:0 16px 14px;flex-shrink:0}.pickerSearch{width:100%;border:1.5px solid var(--c-border);border-radius:16px;padding:12px 16px;font-size:15px;font-weight:600;outline:none;color:var(--c-text);background:var(--c-surface);transition:border-color .12s,box-shadow .12s}.pickerSearch:focus{border-color:var(--c-purple);box-shadow:0 0 0 3px #7645d91a}.pickerSearch::placeholder{color:#c5bedd}.pickerList{overflow-y:auto;flex:1;padding:0 8px 12px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.pickerList::-webkit-scrollbar{width:4px}.pickerList::-webkit-scrollbar-thumb{background:var(--c-border);border-radius:2px}.pickerItem{display:flex;align-items:center;gap:12px;width:100%;border:none;background:none;padding:12px 14px;border-radius:16px;cursor:pointer;transition:var(--transition);text-align:left}.pickerItem:hover{background:var(--c-surface)}.pickerItem:active{transform:scale(.98)}.pickerItemActive{background:var(--c-surface)!important}.pickerItemIcon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;flex-shrink:0;overflow:hidden;box-shadow:0 2px 8px #00000026}.pickerItemInfo{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.pickerItemSymbol{font-size:15px;font-weight:800;color:var(--c-text);letter-spacing:-.01em}.pickerItemName{font-size:12px;font-weight:500;color:var(--c-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pickerItemBal{font-size:13px;font-weight:700;color:var(--c-muted);flex-shrink:0}.pickerItemCheck{flex-shrink:0}.pickerEmpty{text-align:center;padding:32px 16px;color:var(--c-muted);font-size:14px;font-weight:600}@media(max-width:600px){.header{height:auto;padding:12px 16px;flex-wrap:wrap;gap:10px}.headerLeft{flex-wrap:wrap;gap:10px}.nav{display:none}.main{padding:20px 12px 96px}.bottomNav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-top:1px solid rgba(118,69,217,.1);padding:8px 0;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))}.bottomNavItem{flex:1;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 8px;border:none;background:none;color:var(--c-muted);font-size:11px;font-weight:700;cursor:pointer;transition:color .15s;letter-spacing:.02em}.bottomNavItem svg{transition:transform .18s}.bottomNavItem.active{color:var(--c-purple)}.bottomNavItem.active svg{transform:scale(1.12)}.card{padding:20px 16px;border-radius:24px}.inputRow input{font-size:20px}.feeTierGrid{grid-template-columns:repeat(2,1fr)}.slippageRow{flex-direction:column;align-items:flex-start;gap:8px}.pairRow{flex-direction:column;gap:8px}.pairRow .tokenBtn{width:100%;justify-content:center;padding:12px 18px;border-radius:16px}.chainBadge,.langBtn span,.langBtn .walletArrow{display:none}.langBtn{padding:7px 9px;gap:0}.walletBtn{font-size:12px;padding:8px 12px}.pickerOverlay{align-items:flex-end;padding:0;background:#0a061c99}.pickerSheet{max-width:100%;max-height:88vh;border-radius:28px 28px 0 0;animation:sheetUp .25s cubic-bezier(.32,1,.4,1)}@keyframes sheetUp{0%{transform:translateY(60px);opacity:.7}to{transform:translateY(0);opacity:1}}.pickerHeader{padding:18px 18px 12px}.pickerItem{padding:14px}.pickerItemIcon{width:44px;height:44px}.pickerSheet:before{content:"";display:block;width:40px;height:4px;background:#ddd;border-radius:2px;margin:12px auto -4px;flex-shrink:0}}
