/* 1+1 Coffee — savollar 3D kubning tomonlarida (ism familiya · tug'ilgan sana · telefon · filial).
   HD bo'lishi uchun filter / will-change ishlatilmaydi. */
.qc-overlay{position:fixed; inset:0; z-index:1000; touch-action:none; overscroll-behavior:none; -webkit-user-select:none; user-select:none; -webkit-tap-highlight-color:transparent; display:flex; flex-direction:column; align-items:center; justify-content:center; padding:18px 12px;
  background:radial-gradient(90% 60% at 15% 0%, rgba(46,158,82,.28), transparent 60%),
             radial-gradient(90% 60% at 85% 100%, rgba(217,164,65,.22), transparent 60%), var(--bg); color:var(--text); animation:qcIn .35s ease; overflow:hidden}
.qc-overlay[hidden]{display:none}
@keyframes qcIn{from{opacity:0}to{opacity:1}}
.qc-close{position:absolute; top:14px; right:14px; width:40px; height:40px; border-radius:50%; font-size:1.05rem; color:var(--text); cursor:pointer;
  background:var(--card); border:1px solid var(--border)}
body.qc-lock{overflow:hidden}
.qc-stage{cursor:grab; padding:30px 0 6px; width:100%; display:flex; justify-content:center}
.qc-stage.is-drag{cursor:grabbing}
.qc-top{display:flex; justify-content:space-between; align-items:center; gap:18px; margin:0 4px 6px; font-size:.78rem; color:var(--text-soft)}
.qc-dots{display:flex; gap:6px}
.qc-dots i{width:22px; height:4px; border-radius:4px; background:var(--border); transition:background .3s}
.qc-dots i.on{background:linear-gradient(90deg,var(--green-light),var(--gold))}
.qc-scene{--s:min(300px, 82vw); width:var(--s); height:var(--s); margin:0 auto; perspective:1000px; position:relative; left:-14px}
.qc-cube{position:absolute; inset:0; transform-style:preserve-3d; transition:transform .42s cubic-bezier(.25,.9,.3,1);
  transform:translateZ(calc(var(--s) / -2)) rotateX(-16deg) rotateY(18deg)}
.qc-cube.is-drag{transition:none}
/* faqat harakat paytida GPU qatlami — tinch turganda matn HD qoladi */
.qc-cube.is-moving{will-change:transform}
.qc-face{position:absolute; inset:0; border-radius:18px; padding:2px; backface-visibility:hidden; -webkit-backface-visibility:hidden;
  background:linear-gradient(150deg,var(--gold),var(--green-light) 55%,var(--green))}
.qc-face:nth-child(2){background:linear-gradient(200deg,var(--green-light),var(--green) 55%,var(--gold))}
.qc-face:nth-child(3){background:linear-gradient(140deg,var(--gold),var(--green) 60%,var(--green-light))}
.qc-face:nth-child(4){background:linear-gradient(170deg,var(--green),var(--gold) 55%,var(--green-light))}
.qc-in{height:100%; border-radius:16px; background:var(--card); display:flex; flex-direction:column;
  justify-content:center; padding:22px 18px; gap:12px; -webkit-font-smoothing:antialiased}
.qc-cap{position:absolute; inset:0; border-radius:18px; backface-visibility:hidden; -webkit-backface-visibility:hidden;
  background:linear-gradient(135deg,var(--gold),var(--green-light) 60%,var(--green))}
.qc-top-f{transform:rotateX(90deg) translateZ(calc(var(--s) / 2))}
.qc-bot-f{transform:rotateX(-90deg) translateZ(calc(var(--s) / 2)); background:var(--forest)}
.qc-f1{transform:rotateY(0deg) translateZ(calc(var(--s) / 2))}
.qc-f2{transform:rotateY(90deg) translateZ(calc(var(--s) / 2))}
.qc-f3{transform:rotateY(180deg) translateZ(calc(var(--s) / 2))}
.qc-f4{transform:rotateY(270deg) translateZ(calc(var(--s) / 2))}
.qc-n{font-size:.72rem; letter-spacing:.2em; text-transform:uppercase; color:var(--green)}
.qc-q{font-size:1.25rem; font-weight:700; line-height:1.25}
.qc-h{font-size:.8rem; color:var(--text-soft); margin-top:-4px}
.qc-in input,.qc-in .qc-phone{width:100%; font:inherit; font-size:1.05rem; color:var(--text); background:var(--bg);
  border:1px solid var(--border); border-radius:12px; padding:13px 14px; outline:none}
.qc-in input:focus{border-color:var(--green-light); box-shadow:0 0 0 3px rgba(46,158,82,.22)}
.qc-phone{display:flex; align-items:center; gap:8px; padding:0 0 0 14px!important}
.qc-phone b{font-weight:600; color:var(--text-soft)}
.qc-phone input{border:0!important; background:transparent!important; padding:13px 12px 13px 0!important; box-shadow:none!important}
.qc-branches{display:grid; grid-template-columns:1fr 1fr; gap:8px}
.qc-branches button{font:inherit; font-size:.92rem; font-weight:600; color:var(--text); padding:12px 8px; border-radius:12px; cursor:pointer;
  background:var(--bg); border:1px solid var(--border); transition:.2s}
.qc-branches button.on{background:linear-gradient(135deg,var(--green-light),var(--green)); border-color:transparent; color:#fff}
.qc-row{display:flex; gap:8px; margin-top:4px}
.qc-btn{flex:1; font:inherit; font-weight:700; font-size:.95rem; padding:13px; border-radius:12px; border:0; cursor:pointer; color:#fff;
  background:linear-gradient(135deg,var(--green-light),var(--green)); box-shadow:0 8px 20px rgba(31,122,67,.35)}
.qc-btn:disabled{opacity:.6; cursor:default}
.qc-back{flex:0 0 auto; font:inherit; font-size:.9rem; padding:13px 14px; border-radius:12px; cursor:pointer; color:var(--text-soft);
  background:transparent; border:1px solid var(--border)}
.qc-err{min-height:1.1em; font-size:.8rem; color:var(--red)}
.qc-floor{height:30px; margin:26px auto 0; width:min(260px,70vw); border-radius:50%;
  background:radial-gradient(ellipse at center, rgba(46,158,82,.45), rgba(217,164,65,.25) 45%, transparent 72%)}
.qc-swipe{text-align:center; font-size:.72rem; color:var(--text-soft); margin-top:6px}
.qc-done{text-align:center}
.qc-done .qc-q{font-size:1.15rem}
.qc-done a{display:block; margin-top:12px; text-decoration:none}
@media (prefers-reduced-motion:reduce){.qc-cube{transition:none}.qc-wrap{animation:none}}

/* davlat tanlash (bayroq) */
.qc-in{position:relative}
.qc-phone{padding:0!important}
.qc-flag{display:flex; align-items:center; gap:6px; flex:0 0 auto; font:inherit; font-size:1rem; font-weight:600; color:var(--text); cursor:pointer;
  background:transparent; border:0; border-right:1px solid var(--border); padding:13px 10px 13px 14px; border-radius:12px 0 0 12px}
.qc-flag:hover{background:rgba(46,158,82,.10)}
.qc-fl{font-size:1.25rem; line-height:1}
.qc-flag i{font-style:normal; font-size:.7rem; color:var(--text-soft)}
.qc-phone input{padding-left:12px!important}
.qc-cl{position:absolute; inset:0; z-index:5; border-radius:16px; background:var(--card); padding:12px; display:flex; flex-direction:column; gap:8px}
.qc-cl[hidden]{display:none}
.qc-cl ul{list-style:none; margin:0; padding:0; overflow-y:auto; flex:1; -webkit-overflow-scrolling:touch}
.qc-cl li{display:flex; align-items:center; gap:10px; padding:9px 8px; border-radius:10px; cursor:pointer; font-size:.92rem; color:var(--text)}
.qc-cl li:hover,.qc-cl li.on{background:rgba(46,158,82,.14)}
.qc-cl li span:nth-child(2){flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}
.qc-cl li em{font-style:normal; color:var(--text-soft); font-size:.85rem}
.qc-cs{padding:10px 12px!important; font-size:.95rem!important}

/* aylantirish butun oynada; maydonlarga yozish va davlatlar ro'yxatini surish ishlayveradi */
.qc-overlay input{-webkit-user-select:text; user-select:text}
.qc-cl ul{touch-action:pan-y; overscroll-behavior:contain}
