/* Full-bleed artwork and header, with constrained content above the artwork. */
.swap-page main{max-width:none;width:100%;overflow:hidden;min-height:calc(100vh - 150px)}

.swap-page .wave-art{left:0;transform:none;width:100%;max-width:none}
.swap-page .wave-art img{display:block;object-fit:fill}
.page-heading{max-width:850px;margin:0 auto 36px}
.swap-page .page-heading h1{font-size:clamp(34px,4.3vw,54px)}
.swap-page .page-heading h1 span{color:var(--hero-accent)}
.swap-page h2{font-size:22px;margin-bottom:8px}
.swap-page .swap-card{margin-top:0}
.swap-page .swap-card label,.launch-layout label{display:block;font-size:13px;color:var(--swap-muted);margin-bottom:8px}

.support-note{font-size:13px;color:var(--swap-muted)}
.workspace{max-width:1000px;margin:0 auto 32px;text-align:left;background:var(--swap-panel);border:1px solid var(--swap-border);padding:32px;border-radius:2px}
.section-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}.section-heading p{margin:0;font-size:14px}
.tag{display:inline-block;font:11px var(--font-mono);color:var(--swap-muted);border:1px solid var(--swap-border);padding:7px 10px;white-space:nowrap}
.pool-row{display:grid;grid-template-columns:2fr 1fr 1fr 145px;gap:16px;align-items:center;border-bottom:1px solid var(--swap-border);padding:20px 0;font-size:14px}.pool-row small{display:block;color:var(--swap-muted);font-size:12px;margin-top:4px}.pool-labels{font-size:12px;color:var(--swap-muted);padding-top:0}
.position-empty{text-align:center;padding:40px 16px}.position-empty p{max-width:440px;margin:0 auto 24px;font-size:14px}
.network-grid{display:grid;grid-template-columns:1fr 24px 1fr;align-items:center;gap:12px;margin:24px 0}.network-grid select{width:100%;padding:10px 8px}.network-grid>span{text-align:center}.details{font-size:13px}.details div{display:flex;justify-content:space-between;padding:8px 0}.details dt{color:var(--swap-muted)}.details dd{margin:0}.swap-page .field{background:var(--swap-field);border-color:var(--swap-border)}.field select{margin-bottom:16px}
.launch-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;background:transparent;border:0;padding-top:16px}.launch-copy h2{font-size:36px;margin-top:24px;line-height:1.15}.launch-copy p{max-width:330px;font-size:15px}.steps{padding-left:20px;color:var(--swap-muted);font-size:14px}.steps li{padding:10px 0}.launch-layout .panel{background:var(--swap-panel);border-color:var(--swap-border)}.launch-layout input,.launch-layout textarea{width:100%;background:var(--swap-field);border:1px solid var(--swap-border);border-radius:2px;font:inherit;color:inherit;padding:12px;margin-bottom:16px}.launch-layout label{margin-top:16px}.launch-layout small{display:block;color:var(--swap-muted);margin-top:-10px}.launch-layout textarea{resize:vertical}.launch-layout .connect{margin-top:8px}
.balance-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 0 32px}.balance{font-size:38px;margin:0;line-height:1.2}.balance span{font-size:14px;color:var(--swap-muted)}.tabs{display:flex;gap:24px;border-bottom:1px solid var(--swap-border)}.swap-page .tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;padding:12px 0}.swap-page .tabs button[aria-selected="true"]{border-bottom-color:var(--accent)}
.swap-page footer{padding:16px 24px}.swap-page dialog input{width:100%}.swap-page button:focus-visible,.swap-page a:focus-visible,.swap-page textarea:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
@media(max-width:1050px){.workspace{padding:24px}}
@media(max-width:850px){.swap-page main{min-height:calc(100vh - 200px)}.launch-layout{gap:32px}.pool-row{grid-template-columns:2fr 1fr 1fr 130px}}
@media(max-width:600px){.workspace{padding:20px 16px}.section-heading{align-items:flex-start;flex-direction:column;gap:8px}.pool-row{grid-template-columns:minmax(0,1fr) 120px}.pool-row>span,.pool-labels{display:none}.launch-layout{grid-template-columns:1fr;padding:0;gap:20px}.launch-copy h2{font-size:28px}.launch-copy p{max-width:none}.steps{display:none}.balance-summary{flex-wrap:wrap;gap:24px}.balance-summary>div{flex:1;min-width:120px}.balance-summary>button{width:100%}.page-heading{margin-bottom:28px}.swap-page .wave-art{height:500px}.pool-row button{font-size:12px;padding:8px}}

/* Recent launches: first card is the entry to token creation. */
.recent-launches{max-width:var(--content-max-width);margin:48px auto 16px;text-align:left}
.launches-heading{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px}
.swap-page .launches-heading h2{margin:0;font-size:22px}.launches-note{font-size:12px;color:var(--swap-muted)}
.launches-track{display:flex;gap:24px;overflow-x:auto;padding:4px 4px 16px;scroll-snap-type:x proximity;scroll-padding:4px;overscroll-behavior-x:contain}
.launches-track:focus-visible{outline:2px solid var(--gold);outline-offset:4px}
.launch-tile{flex:0 0 calc((100% - 24px)/2);min-width:440px;aspect-ratio:139/86;display:flex;flex-direction:column;border:1px solid var(--swap-border);border-radius:2px;background:var(--swap-panel);overflow:hidden;scroll-snap-align:start}
.create-launch{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;text-decoration:none;background:var(--canvas);padding:20px}
.create-launch:hover{border-color:var(--gold);background:var(--soft)}
.create-launch .icon-plus{width:48px;height:48px;color:var(--swap-muted);mask-image:url('../assets/icon-plus.svg')}
.swap-page .launch-tile h3{font-size:22px;font-weight:600;margin:0}.create-label{font-size:14px;color:var(--muted)}.create-label .icon{margin-left:4px}
.launch-art{flex:1;min-height:0;overflow:hidden;background:#0D0F10;display:grid;place-items:center}.launch-banner{width:100%;height:100%;object-fit:cover}.token-art>img{width:140px;height:140px}
.launch-caption{flex:0 0 88px;display:flex;align-items:center;gap:16px;padding:16px}.launch-caption>img{width:48px;height:48px;flex-shrink:0}.launch-caption>span{margin-left:auto;font-size:11px;color:var(--muted)}
@media(max-width:600px){.recent-launches{margin-top:36px}.launch-tile{flex-basis:100%;min-width:0;aspect-ratio:auto;height:240px}.launch-caption{flex-basis:76px;padding:12px;gap:12px}.launch-caption>img{width:40px;height:40px}.swap-page .launch-tile h3{font-size:20px}.create-launch .icon-plus{width:40px;height:40px}.token-art>img{width:104px;height:104px}.swap-page .launches-heading h2{font-size:20px}}

.order-toolbar{justify-content:flex-start}
.order-toolbar #order-type{min-height:44px;text-transform:none}

/* Pulse Pump snapshot cards; the trailing blur reveals horizontal overflow. */
.launches-viewport{position:relative}
.launches-track{padding-right:72px}
.launches-fade{position:absolute;right:0;top:4px;bottom:16px;width:88px;pointer-events:none;backdrop-filter:blur(5px);background:linear-gradient(90deg,transparent,var(--swap-canvas));mask-image:linear-gradient(90deg,transparent,#000 85%)}
.launches-viewport.at-end .launches-fade{opacity:0}
.launch-tile{position:relative;flex-basis:calc((100% - 24px)/2);min-width:490px}
.launch-trade-link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.launch-caption{gap:12px}
.launch-price{margin-left:auto;font-size:12px;white-space:nowrap}
.launch-price b{font-weight:600}.launch-price sub{font-size:9px}
.launch-caption .trade-exchange{width:26px;height:26px;flex-shrink:0;mask-image:url('../assets/launches/trade-exchange.svg')}
.launch-socials{position:absolute;right:12px;bottom:100px;display:flex;gap:0;flex-wrap:nowrap;background:var(--accent);color:#101114;border:1px solid var(--line);border-radius:2px;z-index:1}
.swap-page .launch-socials a{width:44px;height:44px;min-height:44px;display:grid;place-items:center;padding:0;border:0}
.launch-socials .icon{width:20px;height:20px}.social-x{mask-image:url('../assets/launches/social-x.svg')}.social-website{mask-image:url('../assets/launches/social-website.svg')}.social-discord{mask-image:url('../assets/launches/social-discord.svg')}
html[data-theme="dark"] .launch-socials{background:var(--swap-panel);color:var(--accent);border-color:var(--accent)}
.create-launch{overflow:visible;gap:0}.create-launch:hover{background:var(--canvas);border-color:var(--swap-border)}
.create-launch-action{display:flex;flex-direction:column;align-items:center;gap:16px;color:inherit;text-decoration:none}.create-launch-action:after{content:"";position:absolute;inset:0;z-index:0}
.create-launch-action:focus-visible:after{outline:2px solid var(--gold);outline-offset:2px}
.create-launch .launch-trail{position:absolute;right:24px;top:24px;width:60px;height:32px;opacity:.25;mask-image:url('../assets/launches/logo-trail.svg')}
.launch-cost{position:relative;z-index:1;display:flex;align-items:center;gap:4px;font-size:14px;margin-top:8px}
.swap-page .cost-info{display:grid;place-items:center;border:0;width:44px;height:44px;padding:12px;background:transparent}
.cost-info .icon{width:18px;height:18px;mask-image:url('../assets/launches/cost-info.svg')}
.cost-breakdown{position:absolute;top:40px;left:50%;transform:translateX(-50%);width:240px;margin:0;padding:16px;background:var(--swap-panel);border:1px solid var(--swap-border);box-shadow:2px 3px 0 #0002;z-index:3;font-size:13px}
.cost-breakdown div{display:flex;justify-content:space-between;gap:16px}.cost-breakdown dd{margin:0;font-weight:600}
@media(max-width:600px){.launches-track{padding-right:40px}.launches-fade{width:48px}.launch-tile{flex-basis:100%;min-width:0}.launch-caption{display:grid;grid-template-columns:40px 1fr 26px;grid-template-rows:auto auto;gap:0 10px}.launch-caption>img{grid-row:1/3}.launch-caption h3{grid-column:2}.launch-caption .launch-price{grid-column:2;grid-row:2;margin:0;font-size:11px}.launch-caption .trade-exchange{grid-column:3;grid-row:1/3}.launch-socials{bottom:88px}.create-launch .launch-trail{width:40px;height:24px;top:16px;right:16px}.cost-breakdown{width:220px}}

/* Raised form surface: solid interior, directional edge light and soft depth. */
.swap-page form:is(.swap-card,.panel){
  border:1px solid transparent;
  background:
    linear-gradient(135deg,var(--form-sheen),transparent 48%) padding-box,
    linear-gradient(var(--swap-panel),var(--swap-panel)) padding-box,
    linear-gradient(135deg,var(--form-edge) 0%,var(--form-edge-warm) 12%,var(--swap-border) 38%,var(--swap-border) 100%) border-box;
  box-shadow:var(--form-inset),var(--form-shadow);
}
.swap-page form :is(.swap-field,.field){box-shadow:var(--field-inset)}

.swap-page main{padding-inline:var(--page-gutter)}

/* Token selectors share logos, right-aligned balances and keyboard behavior. */
.asset-picker{min-width:0}.token-balance{margin:0 0 8px;text-align:right;font-size:12px;line-height:1.4;color:var(--swap-muted)}
.token-dropdown{position:relative}.swap-page .token-trigger{display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:8px 12px;background:var(--swap-panel);font-weight:600}
.token-trigger img,.token-options img{flex-shrink:0;width:28px;height:28px;object-fit:contain;border-radius:50%}.token-chevron{margin-left:auto;color:var(--swap-muted)}
.token-options{position:absolute;top:calc(100% + 6px);right:0;min-width:100%;width:max-content;padding:4px;z-index:10;background:var(--swap-panel);border:1px solid var(--swap-border);border-radius:var(--radius);box-shadow:var(--form-shadow)}
.token-options:not([hidden]){display:grid;gap:4px}.swap-page .token-options button{display:flex;align-items:center;gap:12px;min-width:148px;padding:10px 12px;border-color:transparent;text-align:left;background:var(--swap-panel)}
.swap-page .token-options button:hover,.swap-page .token-options button:focus-visible{background:var(--swap-field);border-color:var(--gold);outline-offset:0}.swap-page .token-options button[aria-selected="true"]{border-color:var(--swap-border);font-weight:700}
#bridge-form .asset-picker{max-width:174px;margin:0 0 16px auto}

/* Keep numeric entry without browser stepper buttons in Sell. */
#swap-form #amount{appearance:textfield;-moz-appearance:textfield}
#swap-form #amount::-webkit-inner-spin-button,
#swap-form #amount::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
