/* ═══════════════════════════════════════
   ARC SHOP
═══════════════════════════════════════ */
.shop-hero{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-bottom:24px;}
.shop-balance-pill{display:flex;align-items:center;gap:10px;
  padding:10px 18px;background:rgba(201,168,76,.06);border:1px solid var(--b3);border-radius:4px;}
.shop-balance-pill-lbl{font-family:'Space Mono',monospace;font-size:0.50rem;letter-spacing:3px;color:var(--dim);}
.shop-balance-pill-val{font-family:'Sora',sans-serif;font-size:1.02rem;font-weight:700;color:var(--acc2);}

.shop-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;}
@media(max-width:960px){.shop-grid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:600px){.shop-grid{grid-template-columns:repeat(2,1fr);}}

.shop-card{
  background:linear-gradient(160deg,rgba(201,168,76,.06) 0%,#09090d 100%);
  border:1px solid var(--b);
  display:flex;flex-direction:column;
  position:relative;overflow:hidden;
  transition:border-color .25s,box-shadow .3s,transform .2s;
  border-radius:6px;
  animation:fadeIn .4s ease both;
}
.shop-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--b3),transparent);
  transform:scaleX(0);transition:transform .4s;}
.shop-card:hover{border-color:rgba(201,168,76,.3);box-shadow:0 12px 36px rgba(0,0,0,.6);transform:translateY(-2px);}
.shop-card:hover::before{transform:scaleX(1);}
.shop-card.owned-card{border-color:rgba(0,216,120,.2);background:linear-gradient(160deg,rgba(0,216,120,.04) 0%,#09090d 100%);}


.shop-img{
  width:100%;aspect-ratio:4/3;
  background:linear-gradient(135deg,rgba(201,168,76,.1),rgba(6,6,10,.95));
  display:flex;align-items:center;justify-content:center;
  font-size:3.20rem;border-bottom:1px solid var(--b);
  position:relative;overflow:hidden;
}
.shop-img::after{content:'';position:absolute;inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.04),transparent 60%);pointer-events:none;}
.shop-img::before{
  content:'DEMO ITEM';
  position:absolute;
  top:50%;left:50%;
  transform:translate(-50%,-50%) rotate(-30deg);
  font-family:'Bebas Neue',sans-serif;
  font-size:1.6rem;
  letter-spacing:6px;
  color:rgba(255,50,50,.16);
  pointer-events:none;
  z-index:2;
  white-space:nowrap;
  user-select:none;
  text-shadow:0 0 8px rgba(255,50,50,.08);
}
.shop-img .item-emoji{position:relative;z-index:1;filter:drop-shadow(0 4px 12px rgba(0,0,0,.5));transition:transform .3s;}
.shop-card:hover .item-emoji{transform:scale(1.12);}

.shop-info{padding:12px 13px 14px;display:flex;flex-direction:column;gap:7px;flex:1;}
.shop-name{font-size:0.84rem;font-weight:600;line-height:1.3;color:var(--white);}
.shop-price-row{display:flex;align-items:center;justify-content:space-between;}
.shop-price{font-family:'Space Mono',monospace;font-size:0.70rem;letter-spacing:2px;color:var(--acc2);}
.shop-owned-badge{font-family:'Space Mono',monospace;font-size:0.46rem;letter-spacing:2px;
  color:var(--green);padding:2px 7px;border:1px solid rgba(0,216,120,.3);background:rgba(0,216,120,.06);border-radius:2px;}
.shop-buy-btn{
  width:100%;padding:10px 6px;margin-top:4px;
  font-family:'Space Mono',monospace;font-size:0.54rem;letter-spacing:2.5px;
  border:1px solid var(--b3);
  background:linear-gradient(135deg,rgba(201,168,76,.14),rgba(201,168,76,.04));
  color:var(--acc);cursor:pointer;transition:all .25s;border-radius:3px;
  display:flex;align-items:center;justify-content:center;gap:6px;
}
.shop-buy-btn:hover:not(:disabled){
  background:linear-gradient(135deg,var(--acc),var(--acc3));
  color:#000;border-color:var(--acc);box-shadow:0 4px 16px rgba(201,168,76,.3);
}
.shop-buy-btn.owned{background:rgba(0,216,120,.06);border-color:rgba(0,216,120,.28);color:var(--green);cursor:default;}
.shop-buy-btn:disabled{opacity:.5;cursor:not-allowed;}
.shop-buy-btn .bsp{width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;
  border-radius:50%;animation:spin .7s linear infinite;display:none;}
.shop-buy-btn.loading .bsp{display:block;}
.shop-buy-btn.loading .bst{display:none;}

/* ── ARCWORLD WATERMARK ON CARDS ── */
.card-watermark {
  position:absolute;bottom:8px;left:50%;transform:translateX(-50%);
  font-family:'Space Mono',monospace;font-size:0.75rem;letter-spacing:5px;
  color:rgba(220,190,100,.85);z-index:9;pointer-events:none;white-space:nowrap;
  text-transform:uppercase;text-shadow:0 0 12px rgba(201,168,76,.45);
}
/* More visible in studio context */
#customize .card-watermark,
#studioPreview .card-watermark {
  font-size:0.42rem;
  color:rgba(255,255,255,.38);
  letter-spacing:5px;
  text-shadow:0 0 10px rgba(201,168,76,.2);
}

.home-link{font-family:'Space Mono',monospace;font-size:0.56rem;letter-spacing:3px;
  color:rgba(232,244,248,0.45);text-decoration:none;padding:5px 10px;border:1px solid rgba(0,210,180,0.15);
  transition:all .2s;white-space:nowrap;}
.home-link:hover{color:#00fff0;border-color:rgba(0,255,240,0.4);}

/* ── ARCWORLD LOGO ── */
.arcworld-logo{font-family:'Bebas Neue',sans-serif;font-size:1.65rem;letter-spacing:4px;
  display:flex;align-items:center;gap:10px;text-decoration:none;color:#e8f4f8;}
.arcworld-logo-spin{color:#00d2b4;font-size:1.00rem;animation:spin 6s linear infinite;display:inline-block;}
.arcworld-logo .aw-world{color:#00fff0;}

/* ── CENTER TITLE ── */
@keyframes titlePulse{
  0%,100%{filter:drop-shadow(0 0 8px rgba(0,255,240,.5));opacity:.85;}
  50%{filter:drop-shadow(0 0 28px rgba(0,255,240,1));opacity:1;}
}
.topbar-center-title{
  position:absolute;left:50%;transform:translateX(-50%);
  display:flex;align-items:center;gap:10px;
  pointer-events:none;white-space:nowrap;
  animation:titlePulse 2.8s ease-in-out infinite;
}
.topbar-center-title .title-text{
  font-family:'Bebas Neue',sans-serif;font-size:1.40rem;letter-spacing:7px;
  background:linear-gradient(135deg,#00fff0,#7fffee,#00fff0);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;
}
.topbar-center-title .beta-badge{
  font-family:'Space Mono',monospace;font-size:0.50rem;letter-spacing:2px;
  color:rgba(0,255,240,.9);border:1px solid rgba(0,255,240,.5);
  padding:2px 6px;border-radius:3px;background:rgba(0,255,240,.08);
  -webkit-text-fill-color:rgba(0,255,240,.9);
  vertical-align:middle;
}

/* ── PREMIUM CARD SHOP ITEM ── */
.premium-card{grid-column:1/-1!important;}
.premium-card-inner{display:grid;grid-template-columns:1.1fr 1fr;gap:0;min-height:280px;}
@media(max-width:700px){.premium-card-inner{grid-template-columns:1fr;}}
.premium-card-img-wrap{position:relative;overflow:hidden;border-radius:8px 0 0 8px;}
.premium-card-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;}
.premium-card:hover .premium-card-img{transform:scale(1.03);}
.premium-lock-overlay{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(3px);
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;
  border-radius:8px 0 0 8px;}
.premium-lock-icon{font-size:2.90rem;filter:drop-shadow(0 0 12px rgba(167,139,250,.6));}
.premium-lock-text{font-family:'Bebas Neue',sans-serif;font-size:1.70rem;letter-spacing:6px;color:#a78bfa;
  text-shadow:0 0 20px rgba(167,139,250,.5);}
.premium-lock-sub{font-family:'Space Mono',monospace;font-size:0.50rem;letter-spacing:2px;
  color:rgba(232,244,248,.4);text-align:center;padding:0 20px;}
.premium-unlocked-badge{position:absolute;top:14px;left:14px;
  font-family:'Space Mono',monospace;font-size:0.52rem;letter-spacing:2px;
  padding:5px 12px;background:rgba(0,216,120,.12);border:1px solid rgba(0,216,120,.4);
  color:var(--green);border-radius:3px;}
.premium-card-info{padding:28px 30px;display:flex;flex-direction:column;gap:12px;
  background:linear-gradient(135deg,rgba(124,58,237,.08),rgba(6,6,10,.95));}
.premium-title{font-family:'Sora',sans-serif;font-size:1.20rem;font-weight:700;line-height:1.3;
  background:linear-gradient(135deg,#e0d0ff,#a78bfa);
  -webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.premium-desc{font-size:0.85rem;color:rgba(232,244,248,.55);line-height:1.7;font-weight:300;}
.premium-features{display:flex;flex-direction:column;gap:6px;}
.premium-feat{font-family:'Space Mono',monospace;font-size:0.52rem;letter-spacing:1px;
  color:rgba(167,139,250,.7);}
.premium-price-row{display:flex;align-items:center;gap:16px;margin-top:8px;flex-wrap:wrap;}
.premium-price{font-family:'Bebas Neue',sans-serif;font-size:2.10rem;letter-spacing:3px;color:#a78bfa;
  text-shadow:0 0 20px rgba(167,139,250,.4);}
.premium-price span{font-size:1.10rem;color:rgba(167,139,250,.6);}
.premium-buy-btn{flex:1;padding:13px 20px;font-family:'Space Mono',monospace;font-size:0.58rem;
  letter-spacing:2px;cursor:pointer;transition:all .25s;border-radius:4px;
  background:linear-gradient(135deg,rgba(124,58,237,.2),rgba(124,58,237,.06));
  border:1px solid rgba(167,139,250,.5);color:#a78bfa;
  display:flex;align-items:center;justify-content:center;gap:6px;}
.premium-buy-btn:hover{background:linear-gradient(135deg,#7c3aed,#a78bfa);color:#fff;
  box-shadow:0 0 30px rgba(167,139,250,.4);border-color:transparent;}
.premium-buy-btn .bsp{width:14px;height:14px;border:2px solid currentColor;border-top-color:transparent;
  border-radius:50%;animation:spin .7s linear infinite;display:none;}
.premium-buy-btn.loading .bsp{display:block;}
.premium-buy-btn.loading .bst{display:none;}
.premium-apply-btn{padding:13px 24px;font-family:'Space Mono',monospace;font-size:0.58rem;
  letter-spacing:2px;cursor:pointer;border-radius:4px;
  background:linear-gradient(135deg,#7c3aed,#a78bfa);color:#fff;border:none;
  box-shadow:0 0 20px rgba(167,139,250,.3);transition:all .25s;}
.premium-apply-btn:hover{box-shadow:0 0 40px rgba(167,139,250,.6);transform:translateY(-1px);}

.lco-price-row{display:flex;align-items:center;justify-content:center;margin:4px 0;}
.lco-price{font-family:'Bebas Neue',sans-serif;font-size:2.10rem;letter-spacing:4px;color:#a78bfa;text-shadow:0 0 20px rgba(167,139,250,.5);}
.lco-price span{font-size:1.10rem;color:rgba(167,139,250,.6);}
.lco-buy-btn{
  font-family:'Space Mono',monospace;font-size:0.58rem;letter-spacing:2px;
  padding:12px 28px;cursor:pointer;border-radius:4px;margin-top:4px;
  background:linear-gradient(135deg,#7c3aed,#a78bfa);
  border:none;color:#fff;
  box-shadow:0 0 24px rgba(167,139,250,.4);
  transition:all .25s;display:flex;align-items:center;gap:8px;
}
.lco-buy-btn:hover{box-shadow:0 0 40px rgba(167,139,250,.7);transform:translateY(-1px);}
.lco-buy-btn.loading{opacity:.7;pointer-events:none;}
.lco-buy-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.4);
  border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;display:none;}
.lco-buy-btn.loading .lco-buy-spinner{display:block;}
.lco-features{display:flex;flex-direction:column;gap:5px;margin-top:10px;}
.lco-feat{font-family:'Space Mono',monospace;font-size:0.48rem;letter-spacing:1px;color:rgba(167,139,250,.6);}

/* ── SECTION DIVIDER ── */
.section-head{display:flex;align-items:center;gap:16px;margin-bottom:18px;}
.section-head-line{flex:1;height:1px;background:linear-gradient(90deg,var(--b2),transparent);}
.section-head-title{font-family:'Space Mono',monospace;font-size:0.54rem;letter-spacing:4px;color:var(--acc3);}


  /* ═══════════ ARC STUDIO — HORIZONTAL EXPANSION ═══════════ */
  #customize {
    margin-bottom: 18px;
    border: 1px solid var(--b);
    border-radius: 10px;
    overflow: hidden;
    background: #07070b;
    position: relative;
  }

  /* Studio header */
  .studio-header {
    padding: 16px 24px;
    border-bottom: 1px solid var(--b);
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: rgba(0,0,0,.35);
    backdrop-filter: blur(8px);
    position: relative;
    z-index: 5;
  }
  .studio-header::before {
    content:'';
    position:absolute;top:0;left:0;right:0;height:1px;
    background:linear-gradient(90deg,transparent,rgba(201,168,76,.35),transparent);
  }
  .studio-eyebrow {
    font-family:'Space Mono',monospace;
    font-size:0.48rem;
    letter-spacing:5px;
    color:var(--acc3);
    margin-bottom:2px;
  }
  .studio-title {
    font-family:'Orbitron',sans-serif;
    font-size:0.92rem;
    font-weight:600;
    color:var(--white);
    letter-spacing:2px;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .studio-title-gem {
    width:7px;height:7px;
    background:var(--acc);
    clip-path:polygon(50% 0%,100% 50%,50% 100%,0% 50%);
    animation:gemPulse 3s ease-in-out infinite;
  }
  @keyframes gemPulse {
    0%,100%{box-shadow:0 0 0 0 var(--ca);}
    50%{box-shadow:0 0 12px 3px var(--ca);}
  }
  .studio-header-right {
    display:flex;align-items:center;gap:10px;
  }
  .studio-toggle-btn {
    display:flex;align-items:center;gap:8px;
    padding:8px 18px;
    font-family:'Space Mono',monospace;
    font-size:0.52rem;
    letter-spacing:3px;
    border:1px solid var(--b3);
    background:rgba(201,168,76,.06);
    color:var(--acc);
    cursor:pointer;
    border-radius:4px;
    transition:all .25s;
    position:relative;
    overflow:hidden;
  }
  .studio-toggle-btn::before {
    content:'';
    position:absolute;inset:0;
    background:linear-gradient(90deg,transparent,rgba(201,168,76,.08),transparent);
    transform:translateX(-100%);
    transition:transform .35s;
  }
  .studio-toggle-btn:hover::before { transform:translateX(100%); }
  .studio-toggle-btn:hover { background:rgba(201,168,76,.14);border-color:var(--acc); }
  .studio-toggle-btn.active {
    background:rgba(201,168,76,.12);
    border-color:var(--acc);
    color:var(--acc2);
    box-shadow:0 0 20px rgba(201,168,76,.15);
  }
  .toggle-arrow {
    font-size:0.80rem;
    transition:transform .35s cubic-bezier(.23,1,.32,1);
    display:inline-block;
  }
  .studio-toggle-btn.active .toggle-arrow { transform:rotate(180deg); }

  .studio-reset-btn {
    padding:8px 14px;
    font-family:'Space Mono',monospace;
    font-size:0.48rem;
    letter-spacing:2px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(255,255,255,.02);
    color:rgba(232,244,248,.3);
    cursor:pointer;
    border-radius:4px;
    transition:all .2s;
  }
  .studio-reset-btn:hover { color:var(--dim);border-color:rgba(255,255,255,.16); }

  /* ─── Studio body: horizontal flex container ─── */
  .studio-body {
    display:flex;
    flex-direction:row;
    align-items:stretch;
    min-height:440px;
    position:relative;
    overflow:hidden;
  }

  /* ─── LEFT: Editor Panel — collapses/expands horizontally ─── */
  .studio-editor {
    flex-shrink:0;
    width:0;
    overflow:hidden;
    border-right:0px solid var(--b);
    background:#080810;
    transition:width .42s cubic-bezier(.23,1,.32,1), border-right-width .42s;
    position:relative;
  }
  .studio-editor.open {
    width:380px;
    border-right-width:1px;
  }
  .studio-editor-inner {
    width:380px;
    height:100%;
    overflow-y:auto;
    padding:24px 22px;
    scrollbar-width:thin;
    scrollbar-color:rgba(201,168,76,.2) transparent;
  }
  .studio-editor-inner::-webkit-scrollbar{width:3px;}
  .studio-editor-inner::-webkit-scrollbar-thumb{background:rgba(201,168,76,.2);border-radius:2px;}

  /* ─── RIGHT: Card Preview — always visible, always centered ─── */
  .studio-preview {
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:32px 24px;
    background:radial-gradient(ellipse at 50% 40%, rgba(201,168,76,.04) 0%, transparent 65%);
    position:relative;
    min-width:0;
  }
  .studio-preview::before {
    content:'';
    position:absolute;
    inset:0;
    background:
      linear-gradient(rgba(201,168,76,.015) 1px, transparent 1px),
      linear-gradient(90deg, rgba(201,168,76,.015) 1px, transparent 1px);
    background-size:40px 40px;
    pointer-events:none;
    opacity:.6;
  }

  /* ─── Editor Section blocks ─── */
  .ed-section {
    margin-bottom:20px;
  }
  .ed-label {
    font-family:'Space Mono',monospace;
    font-size:0.47rem;
    letter-spacing:4px;
    color:var(--acc3);
    margin-bottom:10px;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .ed-label::after {
    content:'';
    flex:1;
    height:1px;
    background:linear-gradient(90deg,var(--b2),transparent);
  }

  /* Theme pills — single row horizontal scroll */
  .theme-scroll-wrap {
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: thin;
    scrollbar-color: rgba(201,168,76,.2) transparent;
    padding-bottom: 3px;
    margin-right: -4px;
  }
  .theme-scroll-wrap::-webkit-scrollbar { height: 2px; }
  .theme-scroll-wrap::-webkit-scrollbar-track { background: transparent; }
  .theme-scroll-wrap::-webkit-scrollbar-thumb { background: rgba(201,168,76,.2); border-radius: 2px; }
  .theme-scroll {
    display: flex;
    flex-wrap: nowrap;
    gap: 5px;
    width: max-content;
    padding-right: 4px;
  }
  .theme-pill {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 7px;
    padding: 6px 12px;
    font-family:'Space Mono',monospace;
    font-size:0.42rem;
    letter-spacing:2px;
    border:1px solid var(--b);
    background:rgba(255,255,255,.02);
    color:var(--dim);
    cursor:pointer;
    border-radius:3px;
    text-align:left;
    transition:all .18s;
    flex-shrink: 0;
    white-space: nowrap;
  }
  .theme-preview {
    display: inline-block;
    width: 18px;
    height: 18px;
    border-radius: 2px;
    border: 1px solid rgba(255,255,255,.06);
    flex-shrink: 0;
  }
  .theme-pill:hover { border-color:var(--b3); color:var(--acc); background:rgba(201,168,76,.06); }
  .theme-pill.on { border-color:var(--acc); color:var(--acc2); background:rgba(201,168,76,.1); box-shadow:0 0 8px rgba(201,168,76,.15); }
  .theme-pill.on .theme-preview { border-color: rgba(201,168,76,.45); }

  /* Glow color picker */
  .glow-row {
    display:flex;
    align-items:center;
    gap:10px;
  }
  .glow-inp {
    width:38px;height:38px;
    border:1px solid var(--b2);
    border-radius:4px;
    background:transparent;
    cursor:pointer;
    padding:2px;
    transition:border-color .2s;
  }
  .glow-inp:hover { border-color:var(--acc); }
  .glow-swatches {
    display:flex;gap:5px;flex-wrap:wrap;
  }
  .glow-swatch {
    width:22px;height:22px;
    border-radius:3px;
    cursor:pointer;
    border:1.5px solid transparent;
    transition:all .18s;
    position:relative;
  }
  .glow-swatch:hover,.glow-swatch.on { border-color:#fff; transform:scale(1.15); }
  .glow-swatch.on::after {
    content:'';
    position:absolute;inset:-3px;
    border:1px solid rgba(255,255,255,.4);
    border-radius:4px;
  }

  /* Segmented controls */
  .seg-ctrl {
    display:flex;
    gap:4px;
    flex-wrap:wrap;
  }
  .seg-btn {
    padding:6px 11px;
    font-family:'Space Mono',monospace;
    font-size:0.46rem;
    letter-spacing:2px;
    border:1px solid var(--b);
    background:rgba(255,255,255,.02);
    color:var(--dim2);
    cursor:pointer;
    border-radius:3px;
    transition:all .18s;
    white-space:nowrap;
  }
  .seg-btn:hover { border-color:var(--b3); color:var(--dim); }
  .seg-btn.on {
    border-color:var(--acc);
    color:var(--acc2);
    background:rgba(201,168,76,.1);
    box-shadow:inset 0 0 10px rgba(201,168,76,.06);
  }

  /* Nickname input */
  .studio-nick-inp {
    width:100%;
    padding:9px 12px;
    background:rgba(0,0,0,.5);
    border:1px solid var(--b);
    color:var(--white);
    font-family:'Space Mono',monospace;
    font-size:0.72rem;
    letter-spacing:2px;
    outline:none;
    border-radius:4px;
    transition:border-color .2s;
  }
  .studio-nick-inp:focus { border-color:var(--acc3); box-shadow:0 0 12px rgba(201,168,76,.1); }
  .studio-nick-inp::placeholder { color:var(--dim2); }

  /* Border slider */
  .studio-slider {
    -webkit-appearance:none;
    width:100%;
    height:3px;
    background:linear-gradient(90deg,var(--acc3),var(--acc));
    border-radius:2px;
    outline:none;
    cursor:pointer;
  }
  .studio-slider::-webkit-slider-thumb {
    -webkit-appearance:none;
    width:16px;height:16px;
    border-radius:50%;
    background:var(--acc2);
    border:2px solid #07070b;
    box-shadow:0 0 10px rgba(201,168,76,.4);
    cursor:pointer;
    transition:box-shadow .2s;
  }
  .studio-slider::-webkit-slider-thumb:hover { box-shadow:0 0 18px rgba(201,168,76,.6); }

  /* Preview label */
  .preview-label {
    font-family:'Space Mono',monospace;
    font-size:0.46rem;
    letter-spacing:4px;
    color:rgba(201,168,76,.4);
    margin-bottom:14px;
    text-align:center;
    display:flex;align-items:center;gap:10px;
    width:100%;
    justify-content:center;
  }
  .preview-label::before,.preview-label::after {
    content:'';flex:0 0 28px;height:1px;background:rgba(201,168,76,.2);
  }

  /* Preview share bar */
  .preview-actions {
    display:flex;gap:7px;margin-top:16px;flex-wrap:wrap;justify-content:center;
  }
  .pact-btn {
    padding:7px 13px;
    font-family:'Space Mono',monospace;
    font-size:0.48rem;
    letter-spacing:2px;
    border:1px solid var(--b);
    background:rgba(255,255,255,.02);
    color:var(--dim);
    cursor:pointer;
    border-radius:3px;
    transition:all .2s;
  }
  .pact-btn:hover { border-color:var(--b3);color:var(--acc);background:rgba(201,168,76,.06); }

  /* Locked notice inside editor */
  .studio-locked {
    display:none;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:14px;
    padding:48px 24px;
    text-align:center;
    min-height:380px;
    width:380px;
  }

/* ═══════════════════════════════════════
   DRAGGABLE TAP-TO-PAY CARD
═══════════════════════════════════════ */

/* Floating card - always visible, draggable */
#floatingPayCard {
  position: fixed;
  width: 90px;
  height: 58px;
  border-radius: 8px;
  z-index: 99999;
  cursor: grab;
  transition: filter .2s, transform .2s;
  user-select: none;
  filter: drop-shadow(0 6px 18px rgba(201,168,76,.5));
  transform: rotate(-6deg);
}
#floatingPayCard:hover { filter: drop-shadow(0 8px 28px rgba(201,168,76,.75)); }
#floatingPayCard.fpc-dragging {
  cursor: grabbing;
  transform: rotate(-3deg) scale(1.06);
  filter: drop-shadow(0 12px 32px rgba(201,168,76,.8));
  transition: none;
}
#floatingPayCard.fpc-tap {
  animation: fpcTap .38s cubic-bezier(.36,.07,.19,.97);
}
@keyframes fpcTap {
  0%   { transform:rotate(-6deg) scale(1); }
  35%  { transform:rotate(0deg) scale(1.14); filter:drop-shadow(0 4px 36px rgba(201,168,76,1)); }
  70%  { transform:rotate(-4deg) scale(0.95); }
  100% { transform:rotate(-6deg) scale(1); }
}

/* Card inner */
.fpc-inner {
  width:100%; height:100%;
  border-radius:8px; overflow:hidden;
  border:1.5px solid rgba(201,168,76,.6);
  background:linear-gradient(135deg,#0a0a14,#10101e);
  position:relative;
}
.fpc-inner::before {
  content:''; position:absolute; inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.08) 0%,transparent 55%);
}
.fpc-accent-line {
  position:absolute; top:0; left:0; right:0; height:1.5px;
  background:linear-gradient(90deg,transparent,var(--acc,#c9a84c),transparent); z-index:4;
}
.fpc-logo {
  position:absolute; top:5px; left:6px;
  display:flex; align-items:center; gap:3px; z-index:5;
}
.fpc-logo svg { width:11px; height:11px; }
.fpc-logo-txt {
  font-family:'Space Mono',monospace; font-size:0.30rem;
  letter-spacing:2px; color:rgba(201,168,76,.9); font-weight:700;
}
.fpc-chip {
  position:absolute; bottom:8px; left:6px;
  width:13px; height:9px; border-radius:2px;
  background:linear-gradient(135deg,#c9a84c,#e8d27a);
  box-shadow:0 1px 4px rgba(0,0,0,.5); z-index:5;
}
.fpc-mc { position:absolute; bottom:8px; right:6px; display:flex; z-index:5; }
.fpc-mc-c { width:10px; height:10px; border-radius:50%; }
.fpc-mc-l { background:rgba(255,80,0,.7); margin-right:-3px; }
.fpc-mc-r { background:rgba(255,160,0,.6); }
.fpc-emoji {
  position:absolute; top:4px; right:5px;
  font-size:.78rem; z-index:5; opacity:.85;
}
.fpc-num {
  position:absolute; bottom:20px; left:6px;
  font-family:'Space Mono',monospace; font-size:0.28rem;
  letter-spacing:1px; color:rgba(255,255,255,.3); z-index:5;
}

/* NFC rings */
.fpc-nfc {
  position:absolute; bottom:7px; left:50%;
  transform:translateX(-50%);
  width:18px; height:18px; pointer-events:none; z-index:6;
}
.fpc-nfc-ring {
  position:absolute; border:1.5px solid rgba(201,168,76,.8);
  border-radius:50%; top:50%; left:50%;
  transform:translate(-50%,-50%) scale(0);
  animation:nfcRing 1.4s ease-out infinite;
}
.fpc-nfc-ring:nth-child(1){width:7px;height:7px;animation-delay:0s;}
.fpc-nfc-ring:nth-child(2){width:12px;height:12px;animation-delay:.22s;}
.fpc-nfc-ring:nth-child(3){width:18px;height:18px;animation-delay:.44s;}
@keyframes nfcRing {
  0%  {transform:translate(-50%,-50%) scale(0);opacity:1;}
  60% {opacity:.4;}
  100%{transform:translate(-50%,-50%) scale(1);opacity:0;}
}

/* "KARTLA ÖDEMEK İÇİN..." hint overlay on shop cards */
.drag-hint {
  position:absolute; inset:0; z-index:18;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:5px; opacity:0; transition:opacity .22s; border-radius:6px; pointer-events:none;
  background:rgba(0,0,0,.0);
}
/* Show hint only when draggable card hovers over the shop card */
.shop-card.fpc-hover-active .drag-hint {
  opacity:1;
  background:rgba(0,0,0,.60);
  backdrop-filter:blur(3px);
}
.dh-icon { font-size:2rem; animation:dhi .9s ease-in-out infinite alternate; }
@keyframes dhi { from{transform:scale(1) rotate(-5deg);}to{transform:scale(1.1) rotate(5deg);} }
.dh-txt {
  font-family:'Space Mono',monospace; font-size:0.44rem; letter-spacing:2px;
  color:var(--acc2,#e8d27a); text-align:center; line-height:1.6;
  text-shadow:0 0 12px rgba(201,168,76,.6);
}

/* Green flash on successful purchase */
.shop-card.tap-success::after {
  content:''; position:absolute; inset:0; border-radius:6px;
  background:rgba(0,216,120,.18);
  animation:tapSuccessFlash .6s ease forwards; z-index:25; pointer-events:none;
}
@keyframes tapSuccessFlash { 0%{opacity:1;} 100%{opacity:0;} }
