/* token-launcher.css */
#main > section > div > div { display:grid; grid-template-columns:minmax(0,1fr) 310px; align-items:start; gap:32px; }
#main > section > div > div > div { min-width:0; width:auto; }
#main > section > div > div > div:last-child { margin-top:126px; }
#main h1 { font-size:32px; line-height:1.15; }
#main #launcher-form { margin-top:28px; }
#main #launcher-form label { display:block; margin-bottom:7px; color:#59606b; }
#main #launcher-form .tl-image-upload { display:flex; }
#main .text-acid, #review-dialog .text-acid { color:#c68c4a; }
#main [id$="-error"], #review-dialog [role="alert"] { color:#a12222; font-size:12px; margin-top:5px; }
#main [aria-invalid="true"] { border-color:#a12222; }
#main #token-image { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; z-index:1; }
#main #remove-image { z-index:2; padding:6px; background:#fff; border:1px solid #10131a; }
#main #image-preview { pointer-events:none; }
#main #image-upload-box:focus-within { outline:2px solid #c68c4a; outline-offset:3px; }
#main #overview-receive { max-width:140px; font-size:11px; }
#main dl > div { margin-top:12px; gap:12px; padding-bottom:9px; }
#main #token-buy { padding-right:52px; }
#main button, #review-dialog button { cursor:pointer; }
#main button:focus-visible, #review-dialog button:focus-visible { outline:2px solid #c68c4a; outline-offset:3px; }
#main #btn-reset { min-height:32px; }
#main #draft-status { color:#c68c4a; }
.tl-submission-note { margin-top:16px; font-size:11px; line-height:1.6; color:#59606b; }
.tl-sol-input { position:relative; }
.tl-sol-input input { padding-right:52px; }
.tl-sol-input span { position:absolute; right:12px; top:50%; transform:translateY(-50%); font:11px var(--font-mono),monospace; color:#59606b; }
.tl-dot { display:inline-block; width:6px; height:6px; margin-right:4px; border-radius:50%; background:#b8bec6; }
.tl-dot.connected { background:#c68c4a; }
.tl-status { margin-top:16px; padding:12px; border:1px solid #c5c9ce; background:#f1f3f5; color:#59606b; font:11px/1.55 var(--font-mono),monospace; overflow-wrap:anywhere; }
.tl-status[data-kind="error"] { border-color:#a12222; color:#861c1c; background:#f8eeee; }
.tl-status[data-kind="warning"] { border-color:#8b6c19; color:#68500f; background:#f8f3e5; }
.tl-status[data-kind="success"] { border-color:#c68c4a; color:#855026; background:#f4e8dc; }
.tl-status a, #prepared-costs a { color:#855026; text-decoration:underline; text-underline-offset:2px; }
.tl-consent { display:flex; gap:10px; align-items:flex-start; padding:12px; border:1px solid #c68c4a; background:#f4e8dc; color:#855026; font-size:12px; line-height:1.5; }
.tl-consent input { flex:none; margin-top:3px; accent-color:#c68c4a; }
#prepared-costs { grid-column:1 / -1; padding-top:4px; }
#prepared-costs > div { display:flex; justify-content:space-between; gap:16px; padding:8px 0; border-bottom:1px solid #d6dbe1; }
#prepared-costs dd { text-align:right; font-family:var(--font-mono),monospace; color:#10131a; }
.tl-input::placeholder { color:#7c858f; opacity:1; }
#review-dialog { width:min(540px,calc(100vw - 24px)); max-width:540px; max-height:calc(100dvh - 24px); margin:auto; padding:8px; border:0; background:transparent; color:#10131a; overflow:auto; }
#review-dialog > div { max-height:none; }
#review-dialog p, #review-dialog span { overflow-wrap:anywhere; }
#review-dialog dl > div { gap:16px; }
#review-dialog #review-website { text-transform:none; }
#review-dialog button:disabled { cursor:not-allowed; opacity:.55; }
#recovery-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 12px; }
#recovery-actions.hidden { display: none; }
#review-dialog::backdrop { background:rgba(16,19,26,.55); }
@media (max-width:1100px) {
  #main > section > div > div { grid-template-columns:minmax(0,1fr) 280px; gap:24px; }
}
@media (max-width:900px) {
  #main > section > div > div { grid-template-columns:minmax(0,1fr); }
  #main > section > div > div > div:last-child { margin-top:8px; }
  #main > section > div > div > div:last-child > div { position:static; }
}
.tl-grid-top {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .tl-grid-top { grid-template-columns: 120px minmax(0,1fr); }
}

.tl-grid-details {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media (min-width: 640px) {
  .tl-grid-details { grid-template-columns: repeat(6,minmax(0,1fr)); }
  .tl-grid-details > div:nth-child(-n+2) { grid-column:span 3; }
  .tl-grid-details > div:nth-child(n+3):nth-child(-n+5) { grid-column:span 2; }
}
.tl-span-2 { grid-column: 1 / -1; }

.tl-input {
  width: 100%;
  background-color: #f8f9fb;
  border: 1px solid #b8bec6;
  color: #10131a;
  padding: 0.6rem 0.75rem;
  font-size: 0.875rem;
  outline: none;
  transition: border-color 0.2s;
  font-family: inherit;
}
.tl-input:focus {
  border-color: #c68c4a;
  box-shadow:0 0 0 1px #c68c4a;
}

.tl-image-upload {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  border: 1px dashed #7c858f;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  transition: border-color 0.2s;
  overflow: hidden;
  cursor: pointer;
}
.tl-image-upload:hover {
   border-color: #c68c4a;
}

#review-dialog::backdrop {
  background-color: rgba(5, 5, 5, 0.8);
  backdrop-filter: blur(4px);
}

.tl-commodity-list-wrap:focus-visible { outline: 2px solid #c68c4a; outline-offset: -2px; }
#commodity-pairing { margin-top: 32px; padding-top: 8px; }
.commodity-pairing-layout { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:16px; }
.commodity-market-panel { min-width:0; height:310px; overflow:hidden; border:1px solid #c5c9ce; background:#f8f9fb; }
#commodity-list-container { height:100%; overflow-y:auto; scrollbar-width:thin; }
#commodity-list-container table { width:100%; border-collapse:collapse; }
#commodity-list-container thead { position:sticky; top:0; z-index:1; background:#eef0f3; }
#commodity-list-container th { padding:10px 8px; font:9px var(--font-mono),monospace; color:#727b85; letter-spacing:.1em; }
#commodity-list .commodity-row { cursor:pointer; outline:none; }
#commodity-list .commodity-row td { padding:8px; border-bottom:1px solid #e0e3e7; }
#commodity-list .commodity-row td:first-child { width:28px; }
#commodity-list .commodity-row td:last-child { font:10px var(--font-mono),monospace; white-space:nowrap; text-align:right; }
#commodity-list .commodity-row td:first-child > div { width:12px; height:12px; border:1px solid #b8bec6; border-radius:50%; }
#commodity-list .commodity-row img { width:24px; height:24px; flex-shrink:0; object-fit:contain; }
#commodity-list .commodity-row:hover { background:#f0f2f5; }
#commodity-list .commodity-row[aria-checked="true"] { background:#f4e8dc; }
#commodity-list .commodity-row[aria-checked="true"] td:first-child > div { background:#e1ad6d; border-color:#c68c4a; box-shadow:inset 0 0 0 2px #f4e8dc; }
#commodity-list .commodity-row:focus-visible { outline:2px solid #c68c4a; outline-offset:-2px; }
#commodity-list-container[data-disabled] { opacity:.5; }
#commodity-empty { padding:28px 12px; text-align:center; }
#commodity-preview { min-width:0; min-height:220px; overflow:hidden; }
#commodity-preview > .absolute { opacity:.035; }
#commodity-preview .relative.w-20 { width:80px; height:80px; margin-bottom:20px; }
#pairing-token-img { width:80px; height:80px; object-fit:cover; background:#e8ebef; }
#pairing-commodity-img { position:absolute; width:40px; height:40px; bottom:-8px; right:-8px; object-fit:contain; background:#f8f9fb; }
#pairing-token-ticker { color:#c68c4a; }
#overview-pairing { max-width:170px; text-align:right; }
@media (max-width:1100px) {
  .commodity-pairing-layout { grid-template-columns:minmax(0,1fr); }
  #commodity-preview { min-height:200px; }
}
