/* adaptx-mega-configurator — v77 prototip stilleri, .axmc-root altına kapsandı */
.axmc-root{
    --pink:#D4537E; --dark:#2b2b2e; --mid:#4d4d4f; --light:#f3f3f3;
    --panel:#ffffff; --line:#e4e4e6; --ink:#26262a; --studio:#e9e6e1;
  }
.axmc-root, .axmc-root *{box-sizing:border-box; margin:0; padding:0;}
.axmc-root{font-family:"Segoe UI",system-ui,-apple-system,sans-serif; background:#fafafa; color:var(--ink);}
.axmc-root .wrap{display:grid; grid-template-columns:1fr 340px; gap:16px; padding:16px 22px; max-width:1500px; margin:0 auto;}
@media(max-width:980px){
.axmc-root .wrap{grid-template-columns:1fr;}
}
.axmc-root .viewer{position:sticky; top:14px; align-self:start; height:calc(100vh - 140px); min-height:420px; max-height:820px; background:var(--studio); border:1px solid var(--line); border-radius:10px; overflow:hidden;}
@media(max-width:980px){
.axmc-root .viewer{position:relative; top:0; height:60vh; min-height:360px;}
}
.axmc-root .viewer canvas{display:block;}
.axmc-root .dims b{color:var(--pink);}
.axmc-root .panel{background:var(--panel); border:1px solid var(--line); border-radius:10px; padding:16px 16px 12px;}
.axmc-root .panel h2{font-size:12px; text-transform:uppercase; letter-spacing:1.2px; color:var(--pink); margin:14px 0 8px;}
.axmc-root .panel h2:first-child{margin-top:0;}
.axmc-root .ctl{margin-bottom:10px;}
.axmc-root .ctl label{display:flex; justify-content:space-between; font-size:13px; margin-bottom:3px; color:#444;}
.axmc-root .ctl label output{font-variant-numeric:tabular-nums; color:#111; font-weight:600;}
.axmc-root .ctl input[type=range]{width:100%; accent-color:var(--pink);}
.axmc-root .srow{display:flex; align-items:center; gap:8px;}
.axmc-root .srow input[type=range]{flex:1;}
.axmc-root .step{width:28px; height:28px; flex:0 0 28px; border-radius:8px; border:1px solid var(--line);
    background:#fff; color:#555; font-size:16px; font-weight:700; line-height:1; cursor:pointer;
    display:flex; align-items:center; justify-content:center; user-select:none; transition:all .12s;}
.axmc-root .step:hover{border-color:var(--pink); color:var(--pink);}
.axmc-root .step:active{background:var(--pink); color:#fff; border-color:var(--pink);}
.axmc-root .ctl select{width:100%; padding:5px 6px; font-size:13px; border:1px solid var(--line); border-radius:6px; background:#fff;}
.axmc-root details.acc{border:1px solid var(--line); border-radius:10px; margin-bottom:10px; background:#fff; overflow:hidden;}
.axmc-root details.acc summary{cursor:pointer; padding:10px 12px; font-size:12.5px; font-weight:700; letter-spacing:.6px;
    text-transform:uppercase; color:var(--pink); background:#fdf7f9; user-select:none; list-style:none;}
.axmc-root details.acc summary::before{content:'▸ '; color:#c9c; color:var(--pink);}
.axmc-root details.acc[open] summary::before{content:'▾ ';}
.axmc-root details.acc .accbody{padding:10px 12px 6px;}
.axmc-root .subhdr{font-size:11px; letter-spacing:1px; text-transform:uppercase; color:#8b8b92; margin:10px 0 6px;}
.axmc-root .price{background:linear-gradient(135deg,#D4537E,#b8406a); color:#fff; border-radius:10px; padding:14px 16px; margin-bottom:12px;}
.axmc-root .price .big{font-size:24px; font-weight:800; letter-spacing:.3px;}
.axmc-root .price .sub{font-size:11.5px; opacity:.85; margin-top:3px;}
.axmc-root .row{display:flex; gap:10px;}
.axmc-root .row .ctl{flex:1;}
.axmc-root .toggle{display:flex; align-items:center; gap:8px; font-size:13.5px; margin:6px 0; cursor:pointer; user-select:none;}
.axmc-root .toggle input{accent-color:var(--pink); width:16px; height:16px;}
.axmc-root .swatches{display:flex; gap:8px;}
.axmc-root .sw{width:34px; height:34px; border-radius:8px; border:2px solid transparent; cursor:pointer;}
.axmc-root .sw.active{border-color:var(--pink); box-shadow:0 0 0 2px #d4537e33;}
.axmc-root .note{font-size:11.5px; color:#888; margin-top:10px; line-height:1.5;}
.axmc-root .jsonsec{max-width:1500px; margin:0 auto; padding:0 22px 30px;}
.axmc-root .jsonsec h2{font-size:13px; text-transform:uppercase; letter-spacing:1.2px; color:var(--mid); margin:6px 0 12px;}
.axmc-root .jsonsec h2 button{float:right; font-size:12px;}
.axmc-root .cards{display:grid; grid-template-columns:repeat(auto-fill,minmax(320px,1fr)); gap:12px;}
.axmc-root .card{background:#fff; border:1px solid var(--line); border-radius:10px; overflow:hidden; display:flex; flex-direction:column;}
.axmc-root .card.dis{opacity:.45;}
.axmc-root .card .head{display:flex; align-items:center; padding:8px 12px; background:var(--dark); color:#fff; font-size:13px; font-weight:600;}
.axmc-root .card .head em{font-style:normal; font-weight:400; opacity:.7; margin-left:8px; font-size:11.5px;}
.axmc-root .card .head button{margin-left:auto;}
.axmc-root button.dl{background:var(--pink); color:#fff; border:none; border-radius:6px; padding:5px 11px; font-size:12px; cursor:pointer;}
.axmc-root button.dl:hover{filter:brightness(1.08);}
.axmc-root .card pre{font-family:Consolas,Menlo,monospace; font-size:11px; line-height:1.45; padding:10px 12px; overflow:auto; max-height:260px; color:#333; background:#fcfcfd;}
.axmc-root /* --- 3B üstü katmanlar --- */
  .labels{position:absolute; inset:0; overflow:hidden; pointer-events:none; z-index:5;}
.axmc-root .chip{position:absolute; transform:translate(-50%,-50%); background:#ffffff; border:1px solid #e3e3e7;
    box-shadow:0 2px 10px rgba(30,30,40,.10); border-radius:999px; padding:3px 11px;
    font-size:12px; font-weight:600; color:#3a3a3e; white-space:nowrap; pointer-events:none;}
.axmc-root .chip.dim b{color:var(--pink); font-weight:700;}
.axmc-root .chip.gap{background:var(--pink); color:#fff; border-color:var(--pink); box-shadow:0 3px 12px rgba(212,83,126,.35);}
.axmc-root .chip.gapl{background:#fff; color:var(--pink); border-color:#f0c3d2; font-weight:700;}
.axmc-root .chip.act{pointer-events:auto; cursor:pointer; width:30px; height:30px; padding:0;
    display:flex; align-items:center; justify-content:center; font-size:16px; font-weight:700;
    border-radius:50%; transition:transform .12s, background .12s;}
.axmc-root .chip.add{background:var(--pink); color:#fff; border-color:var(--pink);}
.axmc-root .chip.add:hover{transform:translate(-50%,-50%) scale(1.15);}
.axmc-root .chip.del{background:#fff; color:#b6482f; border-color:#ecc9c9; font-size:13px;}
.axmc-root /* v76 — seçili raf tutamağı: sürükleme YALNIZ buradan başlar */
  .chip.grip{pointer-events:auto; cursor:ns-resize; background:var(--pink); color:#fff;
    border-color:var(--pink); width:46px; height:30px; padding:0; display:flex;
    align-items:center; justify-content:center; font-size:15px; letter-spacing:2px;
    box-shadow:0 3px 12px rgba(212,83,126,.4); touch-action:none;}
.axmc-root .snack{position:absolute; left:50%; bottom:16px; transform:translateX(-50%); z-index:9;
    background:#2b2b2e; color:#fff; font-size:13px; padding:10px 12px 10px 16px; border-radius:10px;
    display:none; align-items:center; gap:14px; box-shadow:0 6px 22px rgba(0,0,0,.28); white-space:nowrap;}
.axmc-root .snack.on{display:flex;}
.axmc-root .snack button{background:none; border:none; color:#ffb3cd; font-weight:700; font-size:13px;
    cursor:pointer; padding:4px 8px; border-radius:6px;}
.axmc-root .snack button:hover{background:#ffffff1a;}
.axmc-root .chip.del:hover{background:#c0392b; border-color:#c0392b; color:#fff; transform:translate(-50%,-50%) scale(1.1);}
.axmc-root .vtool{position:absolute; top:12px; right:12px; display:flex; gap:8px; z-index:6;}
.axmc-root .vbtn{background:#fff; border:1px solid var(--line); border-radius:8px; padding:6px 13px; font-size:12.5px;
    color:#444; cursor:pointer; box-shadow:0 1px 5px rgba(0,0,0,.07); transition:all .15s;}
.axmc-root .vbtn:hover{border-color:#c9c9cf;}
.axmc-root .vbtn.on{background:var(--pink); color:#fff; border-color:var(--pink);}
.axmc-root .hint{position:absolute; left:14px; bottom:12px; z-index:5; font-size:11.5px; color:#8a8a90;
    background:#ffffffd9; padding:5px 10px; border-radius:6px;}
.axmc-root .vbtn.mob{display:none;}
@media(max-width:980px), (pointer:coarse){
.axmc-root .vtool{top:auto; bottom:10px; right:8px; left:8px; justify-content:flex-end; flex-wrap:wrap; gap:6px;}
.axmc-root .vbtn{padding:7px 11px; font-size:11.5px;}
.axmc-root .vbtn.mob{display:block;}
.axmc-root .hint{display:none;}
.axmc-root .chip{font-size:10.5px; padding:2px 8px;}
.axmc-root .chip.act{width:44px; height:44px; font-size:19px;}
.axmc-root /* parmak hedefi: ~44px (Apple/Google önerisi) */
    .chip.grip{width:58px; height:40px; font-size:17px;}
.axmc-root .snack{left:8px; right:8px; bottom:64px; transform:none; white-space:normal; justify-content:space-between;}
.axmc-root .step{width:38px; height:38px; flex-basis:38px; font-size:18px;}
.axmc-root .viewer canvas{touch-action:none;}
}

/* snackbar açıkken ipucu metni gizlenir (ikisi de sol altta çakışıyordu) */
.axmc-root .snack.on ~ .hint{display:none;}
/* --- GLB kontrol diline uyum: select alanları --- */
.axmc-root .ctl select{
  height:38px; width:100%; border:1px solid #d0d0d0; border-radius:6px;
  background:#fff; font-size:13.5px; padding:6px 8px;
}
.axmc-root .adaptx-glb-control{margin-bottom:12px;}
/* --- ürün sayfası entegrasyonu (adaptx-product-page-layout figürü + form) --- */
.axv2-viewer .axmc-root.axmc-in-figure{height:100%; background:transparent;}
.axv2-viewer .axmc-root .viewer{position:relative; top:0; height:100%; min-height:420px; max-height:none;}
.axmc-root.axmc-in-form{background:transparent;}
.axmc-root.axmc-in-form .panel{border:none; padding:0; margin-bottom:14px;}
/* v0.9.5: stüdyo zemini bir ton derin — beyaz ürün siluetini yutmasın.
   (3B sahne arka planı core.js'te 0xd6d2cb; burası WebGL boyanana kadarki renk.) */
.axmc-root .viewer{background:#d6d2cb;}
/* --- v0.8.0 kademeler: çip seçici + duraklı slider ipucu --- */
.axmc-root .axmc-chips{display:flex; flex-wrap:wrap; gap:8px;}
.axmc-root .axmc-chip{
  flex:1 1 auto; min-width:84px; height:42px; padding:0 14px; cursor:pointer;
  border:1px solid #d0d0d0; border-radius:6px; background:#fff;
  font-size:14px; font-weight:500; color:#222; line-height:40px;
}
.axmc-root .axmc-chip:hover{border-color:#9a9a9a;}
.axmc-root .axmc-chip.is-selected{border-color:#D4537E; box-shadow:inset 0 0 0 1px #D4537E; color:#D4537E;}
.axmc-root .adaptx-glb-slider-row.axmc-stepped{margin-bottom:18px;}
.axmc-root .axmc-track{position:relative; flex:1; display:block;}
.axmc-root .axmc-track .adaptx-glb-slider{width:100%;}
.axmc-root .axmc-marks{position:absolute; left:0; right:0; top:0; bottom:0; pointer-events:none;}
/* yasak aralık: rayın üstünü gri kapatır — kulp buraya oturamaz */
.axmc-root .axmc-band{position:absolute; top:12px; height:6px;
  background:repeating-linear-gradient(135deg,#cbcbcb 0 3px,#e9e9e9 3px 6px); border-radius:1px;}
.axmc-root .axmc-tick{position:absolute; top:11px; transform:translateX(-50%); text-align:center;}
.axmc-root .axmc-tick i{display:block; width:1px; height:8px; margin:0 auto; background:#b6b6b6;}
.axmc-root .axmc-tick b{display:block; margin-top:2px; font-size:11px; font-weight:500; color:#8a8a8a; white-space:nowrap;}
.axmc-root .axmc-step-hint{margin-top:6px; font-size:12px; color:#777;}
.axmc-root .axmc-fixed-val{
  height:42px; line-height:42px; padding:0 12px; border:1px solid #ececec;
  border-radius:6px; background:#fafafa; font-size:14px; color:#444;
}
@media(max-width:980px){
  /* figür mobilde sabit oranlı ve overflow:hidden — GLB gibi %100 doldur,
     60vh/min-height dayatma figürü taşırıp paneli eziyordu */
  .axv2-viewer .axmc-root .viewer{height:100%; min-height:0;}
}
