:root{--bg:#fff9fc;--surface:#fff;--text:#2d2530;--muted:#746b77;--brand:#ef7fae;--brand-strong:#d75f93;--accent:#b9dcff;--danger:#d65464;--header-bg:#fff2f7;--button-text:#fff;--shadow:0 8px 30px rgba(60,34,55,.08);--radius:20px;--line:#eee4eb}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-rounded,"SF Pro Rounded",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45;padding-bottom:76px}button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}a{color:inherit;text-decoration:none}img,video{max-width:100%;height:auto}h1,h2,h3,p{margin-top:0}
.site-header{position:sticky;top:0;z-index:40;background:color-mix(in srgb,var(--header-bg) 92%,transparent);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.header-row{height:62px;display:flex;align-items:center;gap:12px;padding:8px 14px;max-width:1180px;margin:auto}.brand{font-weight:900;letter-spacing:-.04em;font-size:1.25rem;white-space:nowrap}.brand-heart{color:var(--brand)}.header-spacer{flex:1}.icon-btn{border:0;background:var(--surface);border-radius:999px;width:42px;height:42px;box-shadow:var(--shadow);position:relative;color:var(--text)}.badge-count{position:absolute;right:-4px;top:-5px;background:var(--danger);color:white;min-width:19px;height:19px;border-radius:50%;display:grid;place-items:center;font-size:.7rem;font-weight:800}
.banner{display:block;width:100%;max-height:210px;object-fit:cover}.page{max-width:1180px;margin:auto;padding:14px}.hero{padding:14px 0 6px}.hero h1{font-size:clamp(1.8rem,7vw,3.8rem);line-height:.98;letter-spacing:-.055em;margin-bottom:10px}.hero p{color:var(--muted);max-width:650px}.search-wrap{position:relative;margin:12px 0 14px}.search{width:100%;border:1px solid var(--line);background:var(--surface);padding:16px 18px;border-radius:18px;outline:none;box-shadow:0 6px 20px rgba(60,34,55,.04);font-size:1.02rem}.search:focus{border-color:var(--brand);box-shadow:0 0 0 4px color-mix(in srgb,var(--brand) 15%,transparent)}.suggestions{position:absolute;left:0;right:0;top:calc(100% + 6px);background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden;z-index:30}.suggestion{display:flex;align-items:center;gap:10px;padding:10px;border-bottom:1px solid var(--line)}.suggestion:last-child{border-bottom:0}.suggestion img{width:42px;height:42px;object-fit:cover;border-radius:10px}.suggestion .thumb-placeholder{width:42px;height:42px;border-radius:10px}
.categories{display:flex;gap:8px;overflow:auto;padding:3px 0 13px;scrollbar-width:none}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:9px 13px;white-space:nowrap;color:var(--muted)}.chip.active{background:var(--text);color:var(--surface);border-color:var(--text)}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.product-card{background:var(--surface);border:1px solid var(--line);border-radius:18px;overflow:hidden;min-width:0;box-shadow:0 4px 18px rgba(60,34,55,.035)}.product-card.sold-out{border:1.5px solid var(--danger)}.product-card .media{aspect-ratio:1/1.08;background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 18%,white),color-mix(in srgb,var(--accent) 30%,white));overflow:hidden;position:relative}.product-card .media img{width:100%;height:100%;object-fit:cover}.reserve-label{position:absolute;left:8px;bottom:8px;background:rgba(255,255,255,.9);border:1px solid color-mix(in srgb,var(--danger) 55%,white);color:var(--danger);font-size:.68rem;font-weight:800;border-radius:999px;padding:5px 8px}.card-body{padding:10px}.product-name{font-size:.93rem;margin:0 0 3px;font-weight:800;line-height:1.18}.price{font-weight:900;font-size:1rem}.rating{font-size:.75rem;color:#a77400;margin:4px 0}.review-snippet{font-size:.72rem;color:var(--muted);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:1.8em}.card-actions{display:flex;gap:6px;margin-top:9px}.btn{border:0;border-radius:13px;padding:10px 13px;font-weight:850;background:var(--brand);color:var(--button-text);transition:transform .14s ease,filter .14s ease}.btn:active{transform:scale(.96)}.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--line)}.btn.danger{background:var(--danger)}.btn.small{font-size:.78rem;padding:8px 10px}.btn.block{width:100%}.btn:disabled{opacity:.55;cursor:not-allowed}.tap-cue{animation:tapCue .32s ease}@keyframes tapCue{50%{transform:scale(.92);filter:brightness(1.12)}}
.thumb-placeholder,.media-placeholder{background:linear-gradient(145deg,color-mix(in srgb,var(--brand) 22%,white),color-mix(in srgb,var(--accent) 30%,white));display:grid;place-items:center;color:color-mix(in srgb,var(--brand) 80%,#333);font-size:2rem}.media-placeholder::after{content:'♡'}
.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:68px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(18px);border-top:1px solid var(--line);z-index:45;display:grid;grid-template-columns:repeat(4,1fr);padding:5px 8px max(5px,env(safe-area-inset-bottom))}.nav-item{border:0;background:transparent;color:var(--muted);display:grid;place-items:center;font-size:.67rem;gap:1px}.nav-item span:first-child{font-size:1.2rem}.nav-item.active{color:var(--brand-strong);font-weight:800}
.modal-backdrop{position:fixed;inset:0;background:rgba(20,14,20,.52);backdrop-filter:blur(4px);z-index:80;display:grid;place-items:end center}.modal{background:var(--surface);width:min(100%,600px);max-height:90vh;overflow:auto;border-radius:25px 25px 0 0;padding:18px;box-shadow:0 -18px 60px rgba(0,0,0,.16)}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.close-btn{border:0;background:var(--bg);border-radius:50%;width:36px;height:36px}.tabs{display:grid;grid-template-columns:1fr 1fr;background:var(--bg);border-radius:13px;padding:4px;margin-bottom:15px}.tab-btn{border:0;background:transparent;border-radius:10px;padding:9px;font-weight:800}.tab-btn.active{background:var(--surface);box-shadow:0 2px 8px rgba(0,0,0,.06)}
.form-grid{display:grid;gap:11px}.field{display:grid;gap:5px}.field label{font-size:.78rem;color:var(--muted);font-weight:750}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:12px 13px;border-radius:12px;outline:none}.field textarea{min-height:100px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:9px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0}.segmented{display:grid;grid-template-columns:1fr 1fr;background:var(--bg);border-radius:14px;padding:3px}.segmented input{display:none}.segmented label{padding:9px;border-radius:11px;text-align:center;font-weight:750;font-size:.82rem}.segmented input:checked+label{background:var(--brand);color:var(--button-text)}.notice{background:color-mix(in srgb,var(--accent) 24%,var(--surface));border:1px solid color-mix(in srgb,var(--accent) 50%,var(--line));border-radius:14px;padding:11px 13px;font-size:.85rem}.error{color:var(--danger);font-size:.82rem}.success{color:#237451;font-size:.82rem}
.cart-line{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.cart-line img,.cart-line .thumb-placeholder{width:58px;height:58px;object-fit:cover;border-radius:12px}.qty{display:flex;align-items:center;gap:8px}.qty button{border:1px solid var(--line);background:var(--surface);width:28px;height:28px;border-radius:8px}.total-box{padding:13px;background:var(--bg);border-radius:14px;margin:12px 0}.total-row{display:flex;justify-content:space-between;gap:8px;margin:5px 0}.total-row.final{font-weight:900;font-size:1.12rem;border-top:1px solid var(--line);padding-top:8px;margin-top:8px}
.section{margin:18px 0}.section-title{display:flex;align-items:end;justify-content:space-between;gap:10px;margin-bottom:10px}.section-title h2{font-size:1.15rem;margin:0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px;box-shadow:0 5px 20px rgba(60,34,55,.035)}.stack{display:grid;gap:10px}.muted{color:var(--muted)}.tiny{font-size:.76rem}.pill{display:inline-flex;align-items:center;gap:4px;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:6px 9px;font-size:.75rem;font-weight:800}.vip-pill{background:linear-gradient(120deg,#fff4c8,#f5ddff);border-color:#ead9a8}.progress{height:11px;background:var(--bg);border-radius:999px;overflow:hidden;border:1px solid var(--line)}.progress>span{display:block;height:100%;width:0;background:var(--brand);border-radius:inherit;transition:width .6s ease}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.metric{background:var(--bg);padding:11px;border-radius:14px}.metric strong{display:block;font-size:1.2rem}.timeline{border-left:2px solid var(--line);margin-left:7px;padding-left:15px}.timeline-item{position:relative;padding:0 0 13px}.timeline-item::before{content:'';position:absolute;left:-21px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--brand);border:2px solid var(--surface)}.timeline-item img{margin-top:8px;border-radius:12px;max-height:220px;object-fit:cover}.order-item{display:flex;gap:10px;align-items:center;padding:7px 0}.order-item img,.order-item .thumb-placeholder{width:52px;height:52px;object-fit:cover;border-radius:10px}
.event-banner{padding:12px 14px;border-radius:15px;background:linear-gradient(135deg,color-mix(in srgb,var(--brand) 20%,white),color-mix(in srgb,var(--accent) 35%,white));border:1px solid var(--line)}
.messages{height:280px;overflow:auto;background:var(--bg);padding:10px;border-radius:14px;display:flex;flex-direction:column;gap:8px}.bubble{max-width:82%;padding:9px 11px;border-radius:14px;font-size:.86rem}.bubble.customer{align-self:flex-end;background:var(--brand);color:var(--button-text);border-bottom-right-radius:4px}.bubble.admin,.bubble.system{align-self:flex-start;background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:4px}
/* Product page */.product-shell{max-width:820px;margin:auto}.gallery{position:relative;background:#090909;overflow:hidden;touch-action:pan-y}.slides{display:flex;transition:transform .28s ease}.slide{min-width:100%;display:grid;place-items:center;position:relative;overflow:hidden;min-height:320px}.slide img,.slide video{width:100%;height:auto;max-height:78vh;object-fit:contain;transform-origin:center;user-select:none;-webkit-user-drag:none}.slide video.paused{box-shadow:inset 0 0 0 20px rgba(185,220,255,.38)}.video-loader{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);font-size:22px;animation:spinHeart 1s linear infinite}.video-loader::after{content:'♡';color:var(--accent)}@keyframes spinHeart{to{transform:translate(-50%,-50%) rotate(360deg)}}.gallery-dots{position:absolute;bottom:9px;left:50%;transform:translateX(-50%);display:flex;gap:5px}.gallery-dots span{width:6px;height:6px;background:rgba(255,255,255,.55);border-radius:50%}.gallery-dots .active{background:white;transform:scale(1.25)}.slide-heart{position:absolute;bottom:8px;left:-20px;z-index:3;animation:heartTravel 1.8s ease-out forwards;pointer-events:none}.slide-heart::after{content:'♥';color:#ff91b7;font-size:14px}@keyframes heartTravel{0%{left:-20px;opacity:0;transform:translateY(4px) rotate(-10deg)}15%{opacity:1}100%{left:calc(100% + 20px);opacity:0;transform:translateY(-8px) rotate(12deg)}}.product-detail{padding:16px}.product-detail h1{font-size:1.55rem;letter-spacing:-.03em;margin-bottom:5px}.product-price{font-size:1.35rem;font-weight:950}.sticky-add{position:fixed;left:50%;bottom:calc(8px + env(safe-area-inset-bottom));transform:translate(-50%,18px);width:min(calc(100% - 24px),796px);display:flex;gap:8px;padding:10px;background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:18px;z-index:90;margin:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,transform .22s ease,visibility .22s ease}.sticky-add.tc-show{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}.sticky-add .btn{flex:1}.product-shell{padding-bottom:110px}.lazy-section{min-height:120px}.fullscreen-media{position:fixed!important;inset:0!important;z-index:100!important;background:#000!important;display:grid!important;place-items:center!important}.fullscreen-media img{max-width:100vw!important;max-height:100vh!important}
.heart-particle{position:fixed;z-index:120;pointer-events:none;color:var(--brand);font-size:12px;animation:cartTornado 3s cubic-bezier(.19,.75,.27,1) forwards}@keyframes cartTornado{0%{transform:translate(0,0) scale(.4) rotate(0);opacity:0}15%{opacity:1}55%{transform:translate(var(--mx),var(--my)) scale(1.1) rotate(520deg)}100%{transform:translate(var(--tx),var(--ty)) scale(.15) rotate(980deg);opacity:0}}
/* Admin */.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.topic-card{border:1px solid var(--line);background:var(--surface);border-radius:16px;padding:13px;text-align:left}.topic-card strong{display:block}.topic-card small{color:var(--muted)}.topic-card.active{border-color:var(--brand);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 12%,transparent)}.admin-panel{margin-top:14px}.admin-list{display:grid;gap:8px}.admin-row{background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:10px;display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center}.admin-row img,.admin-row .thumb-placeholder{width:58px;height:58px;object-fit:cover;border-radius:11px}.status-select{max-width:190px}.color-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.color-field{display:flex;align-items:center;justify-content:space-between;background:var(--bg);border-radius:12px;padding:9px}.color-field input{width:46px;height:32px;border:0;background:transparent}.media-strip{display:flex;gap:6px;overflow:auto}.media-thumb{position:relative;flex:0 0 72px}.media-thumb img,.media-thumb video{width:72px;height:72px;object-fit:cover;border-radius:10px}.media-thumb button{position:absolute;right:2px;top:2px;border:0;background:rgba(255,255,255,.9);border-radius:50%;width:24px;height:24px;color:var(--danger)}
.debug-drawer{position:fixed;right:8px;bottom:82px;z-index:200;width:min(92vw,430px);max-height:38vh;overflow:auto;background:#17131a;color:#f6eefa;border-radius:14px;padding:10px;font:12px ui-monospace,monospace;box-shadow:0 10px 40px rgba(0,0,0,.35)}.debug-drawer header{display:flex;justify-content:space-between;margin-bottom:6px}.debug-entry{border-top:1px solid #382d3c;padding:6px 0;white-space:pre-wrap;word-break:break-word}
.rain-heart{position:fixed;top:-30px;z-index:150;pointer-events:none;animation:heartRain 2s linear forwards;color:var(--brand);font-size:clamp(16px,4vw,28px)}@keyframes heartRain{to{transform:translateY(110vh) rotate(520deg);opacity:.2}}
.empty{padding:28px 14px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px}
@media(min-width:720px){body{padding-bottom:0}.bottom-nav{position:sticky;top:62px;bottom:auto;max-width:1180px;margin:auto;border:0;border-bottom:1px solid var(--line);height:54px;grid-template-columns:repeat(4,120px);justify-content:center}.product-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.modal-backdrop{place-items:center}.modal{border-radius:25px;max-height:84vh}.metric-grid{grid-template-columns:repeat(4,1fr)}.admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.desktop-2{grid-template-columns:1fr 1fr}.gallery{border-radius:0 0 24px 24px}.slide{min-height:500px}.sticky-add{bottom:calc(8px + env(safe-area-inset-bottom))}.page{padding:22px}.card-body{padding:12px}.product-name{font-size:1rem}}


/* ==============================================
   ADMIN WEBSITE MEDIA CONTROLS
   ============================================== */

.tc-media-control-panel{
  overflow:hidden;
}

.tc-media-group{
  padding:16px 0;
}

.tc-media-group + .tc-media-group{
  border-top:1px solid var(--line);
}

.tc-media-group > strong{
  display:block;
  margin-bottom:7px;
  font-size:1.05rem;
}

.tc-media-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  min-height:54px;
  padding:7px 0;
  cursor:pointer;
}

.tc-media-row span{
  flex:1;
}


/* toggle */

.tc-media-row input[type="checkbox"]{
  appearance:none;
  -webkit-appearance:none;

  width:50px;
  height:30px;

  flex:0 0 50px;

  border:0;
  border-radius:999px;

  background:#c8c8ce;

  position:relative;

  transition:
    background .2s ease;

  cursor:pointer;
}

.tc-media-row input[type="checkbox"]::after{
  content:"";

  position:absolute;

  width:24px;
  height:24px;

  left:3px;
  top:3px;

  border-radius:50%;

  background:#fff;

  box-shadow:
    0 1px 4px rgba(0,0,0,.28);

  transition:
    transform .2s ease;
}

.tc-media-row input[type="checkbox"]:checked{
  background:var(--brand);
}

.tc-media-row input[type="checkbox"]:checked::after{
  transform:translateX(20px);
}

.tc-media-row input[type="checkbox"]:disabled{
  opacity:.55;
}


@media(min-width:800px){

  .tc-media-group{
    display:grid;

    grid-template-columns:
      repeat(2,minmax(0,1fr));

    gap:0 28px;
  }

  .tc-media-group > strong{
    grid-column:1/-1;
  }

}


/* ==================================================
   PRODUCT MEDIA LONG-PRESS REORDERING
   ================================================== */

#productForm .media-strip{
  overflow:visible;
}

#productForm .media-thumb{
  position:relative;

  cursor:grab;

  user-select:none;
  -webkit-user-select:none;

  -webkit-touch-callout:none;

  /*
   * Vertical page scrolling remains natural.
   * Horizontal movement is available for
   * thumbnail reordering after long-press.
   */
  touch-action:pan-y;

  transition:
    transform .16s ease,
    box-shadow .16s ease,
    opacity .16s ease;
}

#productForm .media-thumb img,
#productForm .media-thumb video{
  pointer-events:none;

  -webkit-user-drag:none;

  user-select:none;
  -webkit-user-select:none;
}

#productForm .media-thumb
[data-delete-media]{
  pointer-events:auto;
}


/* First media = primary image */

#productForm .media-thumb.tc-primary-media{
  outline:
    3px solid
    var(--brand);
}

.tc-primary-badge{
  position:absolute;

  left:5px;
  bottom:5px;

  z-index:5;

  padding:
    4px 7px;

  border-radius:
    999px;

  background:
    var(--brand);

  color:
    var(--button-text,#fff);

  font-size:
    .58rem;

  font-weight:
    900;

  letter-spacing:
    .04em;

  line-height:1;
}


/* Active long-press */

#productForm
.media-thumb.tc-media-dragging{

  cursor:grabbing;

  transform:
    scale(1.08);

  opacity:.88;

  z-index:50;

  box-shadow:
    0 12px 28px
    rgba(0,0,0,.24);
}


#productForm
.media-strip.tc-media-reordering
.media-thumb:not(.tc-media-dragging){

  transition:
    transform .12s ease;
}


.tc-media-reorder-help{
  grid-column:1/-1;

  margin:
    8px 0 7px;
}

.tc-media-reorder-status{
  grid-column:1/-1;

  min-height:21px;

  margin-top:7px;
}


@media(max-width:700px){

  #productForm .media-strip{
    gap:12px;
  }

  #productForm .media-thumb{
    min-width:92px;
    min-height:92px;
  }

}


/* TC GLOBAL SCROLL HEARTS */
.tc-scroll-heart{
  position:fixed;
  z-index:78;
  pointer-events:none;
  user-select:none;
  -webkit-user-select:none;
  left:var(--heart-x);
  font-size:var(--heart-size);
  line-height:1;
  color:var(--brand);
  opacity:0;
  will-change:transform,opacity;
  text-shadow:0 2px 8px rgba(0,0,0,.12);
}

.tc-heart-bottom{
  bottom:-36px;
  animation:
    tcHeartBottomJump
    var(--heart-duration)
    cubic-bezier(.22,.68,.26,1)
    forwards;
}

.tc-heart-top{
  top:-36px;
  animation:
    tcHeartTopRain
    var(--heart-duration)
    cubic-bezier(.23,.72,.34,1)
    forwards;
}

@keyframes tcHeartBottomJump{
  0%{
    opacity:0;
    transform:
      translate3d(0,20px,0)
      scale(.65)
      rotate(-12deg);
  }

  10%{
    opacity:1;
  }

  34%{
    transform:
      translate3d(var(--heart-drift-a),-44vh,0)
      scale(1.1)
      rotate(20deg);
  }

  47%{
    transform:
      translate3d(var(--heart-drift-b),-54vh,0)
      scale(1.18)
      rotate(-18deg);
  }

  74%{
    opacity:1;
    transform:
      translate3d(var(--heart-drift-c),-72px,0)
      scale(1)
      rotate(7deg);
  }

  89%{
    opacity:1;
    transform:
      translate3d(var(--heart-drift-c),-72px,0)
      scale(1)
      rotate(7deg);
  }

  100%{
    opacity:0;
    transform:
      translate3d(var(--heart-drift-c),-72px,0)
      scale(.92)
      rotate(7deg);
  }
}

@keyframes tcHeartTopRain{
  0%{
    opacity:0;
    transform:
      translate3d(0,-12px,0)
      scale(.72)
      rotate(-12deg);
  }

  8%{
    opacity:1;
  }

  19%{
    transform:
      translate3d(var(--heart-drift-a),12vh,0)
      scale(.9)
      rotate(18deg);
  }

  34%{
    transform:
      translate3d(var(--heart-drift-b),29vh,0)
      scale(1.08)
      rotate(-22deg);
  }

  50%{
    transform:
      translate3d(var(--heart-drift-a),48vh,0)
      scale(1)
      rotate(16deg);
  }

  72%{
    opacity:1;
    transform:
      translate3d(var(--heart-drift-c),var(--heart-fall),0)
      scale(1)
      rotate(-5deg);
  }

  89%{
    opacity:1;
    transform:
      translate3d(var(--heart-drift-c),var(--heart-fall),0)
      scale(1)
      rotate(-5deg);
  }

  100%{
    opacity:0;
    transform:
      translate3d(var(--heart-drift-c),var(--heart-fall),0)
      scale(.92)
      rotate(-5deg);
  }
}

/*
  When --header-bg is transparent, make it genuinely transparent
  instead of retaining the glass/blur effect.
*/
html.tc-header-transparent .site-header{
  background:transparent !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

@media (prefers-reduced-motion:reduce){
  .tc-scroll-heart{
    display:none !important;
  }

  .sticky-add{
    transition:none;
  }
}


/* TC HEART CONTROLS PANEL */
.tc-heart-controls-card{
  margin-top:18px;
}

.tc-heart-controls-card .tc-heart-control-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.tc-heart-controls-card .tc-heart-control-head strong{
  display:block;
  font-size:1.05rem;
}

.tc-heart-controls-card .tc-heart-control-head small{
  color:var(--muted);
}

.tc-heart-range-wrap{
  display:grid;
  gap:12px;
}

.tc-heart-range-row{
  display:grid;
  gap:6px;
  background:var(--bg);
  border:1px solid var(--line);
  border-radius:14px;
  padding:12px;
}

.tc-heart-range-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  font-weight:800;
}

.tc-heart-range-value{
  color:var(--brand-strong);
  font-weight:900;
}

.tc-heart-range-row input[type="range"]{
  width:100%;
}

.tc-heart-controls-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.tc-heart-controls-actions .btn{
  flex:1 1 220px;
}

.tc-heart-controls-note{
  color:var(--muted);
  font-size:.82rem;
  line-height:1.35;
}


/* TC RESPONSIVE CLOTHING SIZES V1 */

#productForm .tc-clothing-size-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  width:100%;
  min-width:0;
}


/*
  The existing decorateClothing() function creates
  .product-size-row once quantities are attached.
*/
#productForm .tc-clothing-size-grid .product-size-row{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}


/*
  Keep the checkbox and size label together.
*/
#productForm .tc-clothing-size-toggle{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  min-width:0;
  padding:8px 0;
}


#productForm
.tc-clothing-size-toggle
input[type="checkbox"]{
  flex:0 0 auto;
  width:28px !important;
  height:28px !important;
  min-width:28px;
  margin:0;
}


#productForm
.tc-clothing-size-toggle
span{
  flex:0 0 auto;
  min-width:34px;
  font-size:1rem;
  line-height:1;
}


/*
  Once quantity controls have been added, make each complete
  size entry a stable two-part layout:
  [size + checkbox] [Cantidad]
*/
#productForm
.tc-clothing-size-grid
.product-size-row{
  display:grid !important;
  grid-template-columns:
    minmax(82px,auto)
    minmax(120px,1fr);
  align-items:end !important;
  gap:12px !important;
}


#productForm
.tc-clothing-size-grid
.product-size-row
input[type="number"]{
  width:100% !important;
  min-width:0 !important;
  box-sizing:border-box;
}


/*
  Prevent any internal field from forcing the row wider than
  the phone screen.
*/
#productForm
.tc-clothing-size-grid
.product-size-row
.field{
  min-width:0;
}


/* iPhone / narrow mobile */
@media(max-width:560px){

  #productForm .tc-clothing-size-grid{
    grid-template-columns:1fr;
    gap:12px;
  }

}


/* Larger phones / tablets */
@media(min-width:561px) and (max-width:899px){

  #productForm .tc-clothing-size-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

}


/* Desktop */
@media(min-width:900px){

  #productForm .tc-clothing-size-grid{
    grid-template-columns:
      repeat(3,minmax(0,1fr));
  }

}


/* ============================================================
   PRODUCT CAMERA ACCUMULATOR
   ============================================================ */

.tc-product-photo-controls{
  display:grid;
  gap:7px;
  margin-top:9px;
}


.tc-product-photo-controls
[data-tc-add-more-media]{
  width:100%;
}


.tc-product-photo-controls
[data-tc-media-count]{
  text-align:left;
  padding-left:3px;
}
