/* ============================================================
   STARSEED CAFÉ · VASO 3D + ETIQUETA 3D + SELECTOR DE LOCAL +
   VENTANAS DE CUENTA DE PEDIDO
   ============================================================ */

/* ---- BARRA DE ACCIÓN SUPERIOR (sincronizada, todas las secciones) ---- */
.topbar{position:sticky;top:var(--headh,72px);z-index:19;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;
  padding:10px clamp(16px,3vw,34px);backdrop-filter:blur(16px) saturate(1.2);
  background:linear-gradient(180deg,color-mix(in srgb,var(--bg-1,#121a13) 88%,transparent),color-mix(in srgb,var(--bg-0,#0d130e) 40%,transparent));
  border-bottom:1px solid var(--stroke);box-shadow:0 8px 22px rgba(0,0,0,.22)}
.tb-elx{display:flex;align-items:center;gap:11px;min-width:0}
.tb-dot{width:18px;height:18px;border-radius:50%;flex:none;box-shadow:0 0 14px var(--elx,currentColor);background:#9FE870}
.tb-elxtx{min-width:0}
.tb-elxtx b{font-family:var(--serif);font-size:17px;display:block;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40vw}
.tb-elxtx span{font-size:12.5px;color:var(--ink-soft);font-family:var(--mono)}
.tb-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.tb-btn{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 17px;border-radius:14px;font-size:14.5px;font-weight:700;
  background:var(--glass);border:1px solid var(--stroke);color:var(--ink);cursor:pointer;white-space:nowrap;
  transition:.18s var(--ease-elastic,cubic-bezier(.34,1.56,.64,1))}
.tb-btn:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent) 50%,transparent)}
.tb-btn.ic{width:48px;justify-content:center;padding:0;font-size:19px;color:var(--neon-coral)}
.tb-btn.add{background:color-mix(in srgb,var(--accent) 16%,var(--glass));border-color:color-mix(in srgb,var(--accent) 42%,transparent)}
.tb-btn.cart{font-family:var(--mono)}
.tb-btn.cart b{font-family:var(--serif);font-size:16px}
.tb-btn.go{background:var(--grad-solar);color:#fff;border-color:transparent;box-shadow:var(--halo-amber)}
.alq-hint{font-size:12px;color:var(--ink-mute);text-align:center;margin-top:12px;font-family:var(--mono)}
@media (max-width:680px){
  .topbar{top:0;padding:8px 12px;gap:8px}
  .tb-elxtx b{max-width:46vw;font-size:15px}
  .tb-btn{height:42px;padding:0 12px;font-size:13.5px}
  .tb-btn.add span{display:none}
}

/* ---- botón selector de local (header) ---- */
.locbtn{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:var(--r-pill);
  background:var(--glass);border:1px solid var(--stroke);font-size:12.5px;font-weight:600;color:var(--ink-soft);
  cursor:pointer;transition:.16s var(--ease-soft,ease);max-width:190px;white-space:nowrap;overflow:hidden}
.locbtn:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent) 50%,transparent);color:var(--ink)}
.locbtn .pin{width:9px;height:9px;border-radius:50%;background:var(--accent,#F6A21E);box-shadow:0 0 8px var(--accent,#F6A21E);flex:none}
.locbtn b{font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis}

/* ---- VASO 3D en "Tu Elixir" ---- */
.cup3d{position:relative;width:100%;aspect-ratio:1/1.04;display:grid;place-items:center;perspective:1100px;margin-bottom:6px}
.cup3d-aura{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:78%;height:70%;z-index:0;border-radius:50%;
  background:radial-gradient(circle,color-mix(in srgb,var(--elx,#9FE870) 55%,transparent),transparent 70%);filter:blur(34px);opacity:.6;
  animation:cupbreath 6s var(--ease-soft,ease-in-out) infinite}
@keyframes cupbreath{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.5}50%{transform:translate(-50%,-50%) scale(1.08);opacity:.72}}
.cup3d-shadow{position:absolute;left:50%;bottom:5%;transform:translateX(-50%);width:54%;height:5%;z-index:0;border-radius:50%;
  background:radial-gradient(ellipse,rgba(0,0,0,.55),transparent 72%);filter:blur(6px)}
.cup3d-frame{position:relative;z-index:1;width:86%;aspect-ratio:1/1;display:grid;place-items:center;
  animation:cupfloat 7s var(--ease-soft,ease-in-out) infinite}
.cup3d-img{width:100%;height:100%;object-fit:contain;
  filter:drop-shadow(0 26px 30px rgba(0,0,0,.55)) drop-shadow(0 0 26px color-mix(in srgb,var(--elx,#9FE870) 26%,transparent))}
@keyframes cupfloat{0%,100%{transform:translateY(0) rotateZ(-.4deg)}50%{transform:translateY(-2%) rotateZ(.4deg)}}

/* etiqueta IMPRESA sobre el área real del vaso (posición/tamaño por vaso) */
.cup3d-print{position:absolute;z-index:2;overflow:hidden;container-type:size;
  display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2% 4%;
  color:var(--ink,#241608);transform:perspective(360px) rotateX(4deg);transform-origin:center}
.cup3d-print.curve-high{transform:perspective(300px) rotateX(5deg)}
.cup3d-print.curve-low{transform:perspective(520px) rotateX(2deg)}
.cup3d-print::before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(90deg,rgba(0,0,0,.16),transparent 14%,transparent 86%,rgba(0,0,0,.16))}/* curvatura del cilindro */
.cup3d-print.on-dark::before{background:linear-gradient(90deg,rgba(0,0,0,.34),transparent 14%,transparent 86%,rgba(0,0,0,.34))}
.c3p-glyph{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5;mix-blend-mode:multiply;pointer-events:none}
.cup3d-print.on-dark .c3p-glyph{mix-blend-mode:screen;opacity:.6}
.c3p-tx{position:relative;z-index:1;max-width:97%}
.c3p-name{font-family:var(--serif);font-weight:700;line-height:1.02;color:var(--ink);font-size:clamp(12px,7cqw,21px);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-shadow:0 1px 1px rgba(255,255,255,.3)}
.cup3d-print.on-dark .c3p-name{text-shadow:0 1px 5px rgba(0,0,0,.65)}
.c3p-by{font-family:var(--mono);font-size:clamp(8px,3.6cqw,12px);opacity:.82;margin-top:1px;color:var(--ink)}
.c3p-stats{font-family:var(--mono);font-size:clamp(8px,3.6cqw,12px);margin-top:2px;color:var(--ink);opacity:.95}
.c3p-stats b{font-weight:800}
.cup3d-print.wide{flex-direction:row;gap:5%;justify-content:center}
.cup3d-print.wide .c3p-tx{text-align:left;max-width:74%}
.cup3d-zone{position:absolute;z-index:3;top:2.5%;left:50%;transform:translateX(-50%);font-size:11.5px;font-family:var(--mono);color:var(--ink);
  background:rgba(0,0,0,.5);border:1px solid var(--glass-hi);padding:3px 12px;border-radius:99px;white-space:nowrap}

@media (prefers-reduced-motion:reduce){.cup3d-aura,.cup3d-frame{animation:none !important}}

/* SCROLL del lado "Tu Elixir" (stage) en escritorio cuando su contenido es alto */
@media (min-width:1025px){
  .cwrap .stage{max-height:calc(100vh - 92px);overflow-y:auto;overflow-x:hidden;padding-right:6px;scrollbar-width:thin}
  .cwrap .stage::-webkit-scrollbar{width:8px}
}

/* ---- niveladores (energía/enfoque/calma) en elixires y publicaciones ---- */
.lvl{display:flex;flex-direction:column;gap:6px;margin:10px 0}
.lvl-row{display:grid;grid-template-columns:22px 66px 1fr 36px;align-items:center;gap:9px}
.lvl-ic{font-size:16px;text-align:center;line-height:1}
.lvl-nm{font-family:var(--mono);font-size:11.5px;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.04em}
.lvl-bar{height:9px;border-radius:99px;background:var(--stroke-soft);overflow:hidden;box-shadow:inset 0 0 0 1px var(--stroke)}
.lvl-bar i{display:block;height:100%;border-radius:99px;transition:width .5s var(--ease-organic,ease)}
.lvl-n{font-family:var(--serif);font-weight:700;font-size:15px;text-align:right}

/* ---- tipografías y elementos más grandes (legibilidad general) ---- */
.panel .h{font-size:clamp(24px,3.4vw,34px)}
.panel .sub{font-size:15.5px;max-width:72ch}
.block>.bt{font-size:13px}
.ichip{font-size:14px;padding:9px 15px}
.fcard-name{font-size:16.5px}
.fcard-taste{font-size:12px}
.tg{font-size:12.5px}
.barrow{font-size:13px}
.elx h4{font-size:19px}
.elx .tag{font-size:12px}
.elx p{font-size:13.5px}
.elx-stat span{font-size:11.5px}
.cafe-hero .cafe-hero-tx h2{font-size:clamp(22px,3.2vw,32px)}
.ss-post-id b,.ordwin-it b{font-size:16px}
.fcard-btn{font-size:13px;height:38px}
.locbtn{font-size:13px}

/* ---- publicaciones enriquecidas (como elixires de la casa) ---- */
.cpost.rich .seed{gap:7px}
.cpost-mid{display:flex;flex-direction:column;align-items:center;gap:2px;margin:2px 0}
.cpost-mid .cpost-tri{margin:0}
.cpost .cpost-tri svg{width:92px}
.cpost-mid .lvl{width:100%;margin:4px 0 0}
.cpost-ings{font-size:11.5px;color:var(--ink-soft);line-height:1.5;text-align:center}
.cpost-ings b{color:var(--accent);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;margin-right:5px}
.cpost-stat{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin-top:2px}
.cpost-stat span{font-size:11px;font-weight:700;background:var(--glass);border:1px solid var(--stroke);border-radius:99px;padding:3px 10px}

/* ---- selector de local (modal) ---- */
.locpick{max-width:760px}
.locpick-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin-top:6px}
.loccard{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--stroke);cursor:pointer;background:var(--glass);
  transition:transform .2s var(--ease-elastic,cubic-bezier(.34,1.56,.64,1)),border-color .2s,box-shadow .25s;text-align:center;padding-bottom:10px}
.loccard:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(0,0,0,.4)}
.loccard.on{border-color:var(--ac,#F6A21E);box-shadow:0 0 0 1.5px var(--ac,#F6A21E),0 12px 30px rgba(0,0,0,.4)}
.loccard-cup{width:100%;aspect-ratio:1/1;object-fit:contain;background:radial-gradient(circle at 50% 40%,color-mix(in srgb,var(--ac) 18%,transparent),transparent 70%),var(--cacao,#241810)}
.loccard-n{font-family:var(--serif);font-size:14px;font-weight:600;margin-top:8px}
.loccard-m{font-size:10px;color:var(--ink-mute);font-family:var(--mono);padding:2px 10px 0;line-height:1.4}
.loccard .on-chip{position:absolute;top:8px;right:8px;background:var(--ac,#F6A21E);color:#10140e;font-size:10px;font-weight:800;padding:2px 8px;border-radius:99px}

/* ---- confirmación de añadir al pedido ---- */
.ordconf{max-width:560px}
.ordconf-top{display:flex;gap:16px;align-items:center;margin:6px 0 14px}
.ordconf-cup{width:120px;flex:none;position:relative}
.ordconf-cup .cup3d{aspect-ratio:1/1.04}
.ordconf-info b{font-family:var(--serif);font-size:19px;display:block}
.ordconf-info .sub{font-size:12px;color:var(--ink-soft);font-family:var(--mono);margin-top:2px}
.ordconf-info .ings{font-size:12px;color:var(--ink-soft);margin-top:8px;line-height:1.5}
.ordconf-stats{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.ordconf-stats span{font-size:11px;font-weight:700;background:var(--glass);border:1px solid var(--stroke);border-radius:99px;padding:4px 10px}
.ordconf-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}

/* ---- ventana de cuenta de pedido ---- */
.ordwin{max-width:640px}
.ordwin-list{display:flex;flex-direction:column;gap:10px;margin:6px 0 14px;max-height:48vh;overflow:auto}
.ordwin-item{display:flex;align-items:center;gap:12px;padding:9px 11px;border-radius:15px;background:var(--glass);border:1px solid var(--stroke)}
.ordwin-cup{width:54px;height:62px;flex:none;position:relative;border-radius:12px;overflow:hidden;background:var(--cacao,#241810);display:grid;place-items:center}
.ordwin-cup img{width:100%;height:100%;object-fit:contain}
.ordwin-cup .mini-elx{position:absolute;left:50%;bottom:14%;transform:translateX(-50%);width:60%;height:4px;border-radius:99px;background:var(--elx,#9FE870);box-shadow:0 0 8px var(--elx,#9FE870)}
.ordwin-it{flex:1;min-width:0}
.ordwin-it b{font-family:var(--serif);font-size:14.5px;display:block;line-height:1.15}
.ordwin-it small{font-size:11px;color:var(--ink-mute);font-family:var(--mono)}
.ordwin-it .ings{font-size:11px;color:var(--ink-soft);margin-top:3px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.ordwin-price{font-family:var(--serif);font-size:16px;flex:none}
.ordwin-del{margin-left:0}
.ordwin-acts{display:flex;flex-direction:column;gap:6px;flex:none}
/* sub-pestañas y filtros de Elixires / Mis bebidas */
.subtabs{display:flex;gap:8px;margin:0 0 12px;flex-wrap:wrap}
.subtab{padding:10px 18px;border-radius:var(--r-pill);font-size:14px;font-weight:700;background:var(--glass);border:1px solid var(--stroke);color:var(--ink-soft);cursor:pointer;transition:.16s}
.subtab.on{background:var(--grad-solar);color:#fff;border-color:transparent;box-shadow:var(--halo-amber)}
.filterbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 16px;padding:10px 12px;border-radius:14px;background:var(--glass);border:1px solid var(--stroke)}
.filterbar label{font-size:11px;font-family:var(--mono);color:var(--ink-mute);text-transform:uppercase;letter-spacing:.05em}
.filterbar select{padding:8px 11px;border-radius:10px;background:var(--bg-0);border:1px solid var(--stroke);color:var(--ink);font-family:var(--sans);font-size:13px}
.folderrow{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 14px}
.foldchip{padding:7px 13px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--stroke);font-size:12.5px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:.15s}
.foldchip.on{background:color-mix(in srgb,var(--accent) 18%,transparent);border-color:color-mix(in srgb,var(--accent) 55%,transparent);color:var(--ink)}
.myfav-acts{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.myfav-acts .mini{font-size:11.5px}
.ordwin-total{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-radius:16px;
  background:linear-gradient(120deg,color-mix(in srgb,var(--accent) 16%,var(--glass-strong)),var(--glass));border:1px solid var(--stroke);margin-bottom:14px}
.ordwin-total .lbl{font-size:12px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-soft)}
.ordwin-total .amt{font-family:var(--serif);font-size:28px;font-weight:600}
.ordwin-total .sub{font-size:11px;color:var(--ink-mute);text-align:right}
.ordwin-foot{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.ordwin-empty{text-align:center;color:var(--ink-mute);font-size:13px;padding:24px;border:1px dashed var(--stroke);border-radius:16px}

/* ============================================================
   v17 · scroll dual Alquimista · tamaños · etiqueta completa ·
   selector de añadir · auth (invitado/métodos/rostro) · agente inline
   ============================================================ */

/* --- Alquimista/Exocórtex: preview (externo) y editor con scroll independiente --- */
@media (min-width:921px){
  .cwrap:not(.no-stage){align-items:start}
  .cwrap:not(.no-stage) .stage{position:sticky;top:calc(var(--headh,72px) + 10px);max-height:calc(100vh - var(--headh,72px) - 26px);overflow-y:auto;overflow-x:hidden;padding-right:6px;scrollbar-width:thin;scrollbar-color:var(--stroke) transparent}
  .cwrap:not(.no-stage) .panel{max-height:calc(100vh - var(--headh,72px) - 26px);overflow-y:auto;overflow-x:hidden;padding-right:4px;scrollbar-width:thin;scrollbar-color:var(--stroke) transparent}
  .cwrap:not(.no-stage) .stage::-webkit-scrollbar,.cwrap:not(.no-stage) .panel::-webkit-scrollbar{width:8px}
  .cwrap:not(.no-stage) .stage::-webkit-scrollbar-thumb,.cwrap:not(.no-stage) .panel::-webkit-scrollbar-thumb{background:var(--stroke);border-radius:99px}
}

/* --- selector de tamaño del vaso (en el preview y en el selector de añadir) --- */
.sizebar{display:flex;gap:8px;margin:4px 0 2px}
.sizeb{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 6px;border-radius:13px;background:var(--glass);border:1px solid var(--stroke);color:var(--ink-soft);font-weight:700;font-size:13px;cursor:pointer;transition:.15s}
.sizeb small{font-size:10px;font-family:var(--mono);color:var(--ink-mute);font-weight:400}
.sizeb.on{background:color-mix(in srgb,var(--accent) 20%,transparent);border-color:color-mix(in srgb,var(--accent) 60%,transparent);color:var(--ink)}
.cuplabel-btn{width:100%;justify-content:center;margin-top:2px}

/* --- etiqueta inteligente completa --- */
.cuplabel-card{max-width:760px}
.cuplabel-h{font-family:var(--serif);font-size:26px;margin:2px 0 1px}
.cuplabel-by{font-size:12.5px;color:var(--ink-soft);margin-bottom:12px}
.cuplabel-grid{display:grid;grid-template-columns:minmax(180px,1fr) 1.25fr;gap:18px}
@media (max-width:680px){.cuplabel-grid{grid-template-columns:1fr}}
.cuplabel-cupwrap .cup3d-frame{max-width:280px;margin:0 auto}
.cuplabel-loc{margin-top:10px;text-align:center;font-size:12px;color:var(--ink-soft)}
.cuplabel-sheet{display:flex;flex-direction:column;gap:12px}
.cls-top{display:flex;gap:14px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cls-glyph{width:200px;height:200px;max-width:54vw;filter:drop-shadow(0 6px 22px color-mix(in srgb,var(--elx,#9FE870) 45%,transparent))}
.cls-qr{display:flex;flex-direction:column;align-items:center;gap:4px}
.cls-qr .cls-qr-canvas{width:120px;height:120px;background:#fff;border-radius:10px;padding:6px;box-shadow:0 4px 16px rgba(0,0,0,.35)}
.cls-qr small{font-size:10px;color:var(--ink-mute);font-family:var(--mono)}
.cls-tri{display:flex;justify-content:center}
.cls-tri .trichart{width:180px;height:auto}
.cls-data{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.cls-data>div{display:flex;flex-direction:column;padding:8px 10px;border-radius:12px;background:var(--glass);border:1px solid var(--stroke)}
.cls-data b{font-size:10.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute)}
.cls-data span{font-size:15px;font-weight:700}
.cls-ings{padding:10px 12px;border-radius:12px;background:var(--glass);border:1px solid var(--stroke)}
.cls-ings b{display:block;font-size:10.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);margin-bottom:3px}
.cls-ings p{font-size:13.5px;color:var(--ink-soft);margin:0}
.cls-syn{font-size:12.5px;color:var(--neon-lime,#9FE870);font-weight:600}
.cls-note{font-size:11px;color:var(--ink-mute);margin:0}

/* --- selector al añadir bebida (editar / añadir / pedir + tamaño + vaso) --- */
.adddrink-card{max-width:560px}
.adddrink-top{display:flex;gap:14px;align-items:flex-start;margin:8px 0 12px}
.adddrink-cup{flex:none;width:140px}
.adddrink-cup .cup3d-frame{max-width:140px}
.adddrink-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}
.adddrink-name{font-family:var(--serif);font-size:18px;font-weight:600}
.adddrink-stats{display:flex;gap:6px;flex-wrap:wrap}
.adddrink-stats span{font-size:11.5px;font-family:var(--mono);padding:3px 8px;border-radius:99px;background:var(--glass);border:1px solid var(--stroke);color:var(--ink-soft)}
.adddrink-opt{margin:8px 0}
.adddrink-opt>label{display:block;font-size:11px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--ink-mute);margin-bottom:5px}
.seg{display:flex;gap:7px;flex-wrap:wrap}
.segb{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 12px;border-radius:13px;background:var(--glass);border:1px solid var(--stroke);color:var(--ink-soft);font-weight:700;font-size:13px;cursor:pointer;transition:.15s}
.segb small{font-size:10px;font-family:var(--mono);color:var(--ink-mute);font-weight:400}
.segb.on{background:color-mix(in srgb,var(--gc,#F6A21E) 20%,transparent);border-color:color-mix(in srgb,var(--gc,#F6A21E) 60%,transparent);color:var(--ink)}
.segb.vaso{padding:6px}
.segb.vaso img{width:42px;height:48px;object-fit:contain}
.segb.vaso span{font-size:11px}
.adddrink-actions{display:flex;gap:9px;flex-wrap:wrap;justify-content:flex-end;margin-top:8px}

/* --- inicio de sesión: invitado + métodos + rostro beta --- */
.ss-guest-btn{font-size:16px;font-weight:700}
.ss-authseg{display:flex;gap:6px;margin:16px 0 12px;background:var(--glass);border:1px solid var(--stroke);border-radius:14px;padding:5px}
.ss-authtab{flex:1;padding:9px 8px;border-radius:10px;background:transparent;border:0;color:var(--ink-soft);font-size:12.5px;font-weight:700;cursor:pointer;transition:.15s}
.ss-authtab.on{background:color-mix(in srgb,var(--accent-2,#C9A8FF) 22%,transparent);color:var(--ink)}
.ss-methods{display:flex;gap:7px;flex-wrap:wrap}
.ss-method{flex:1;min-width:90px;padding:9px 8px;border-radius:11px;background:var(--glass);border:1px solid var(--stroke);color:var(--ink-soft);font-size:12.5px;font-weight:600;cursor:pointer;transition:.15s}
.ss-method.on{background:color-mix(in srgb,var(--neon-lime,#9FE870) 18%,transparent);border-color:color-mix(in srgb,var(--neon-lime,#9FE870) 55%,transparent);color:var(--ink)}
.ss-facebox{display:flex;flex-direction:column;align-items:center;gap:10px;padding:22px;border:1px dashed var(--stroke);border-radius:16px;margin:6px 0 10px}
.ss-facering{width:84px;height:84px;border-radius:50%;display:grid;place-items:center;font-size:38px;color:var(--accent-2,#C9A8FF);border:2px solid color-mix(in srgb,var(--accent-2,#C9A8FF) 50%,transparent);box-shadow:0 0 0 6px color-mix(in srgb,var(--accent-2,#C9A8FF) 12%,transparent),inset 0 0 24px color-mix(in srgb,var(--accent-2,#C9A8FF) 20%,transparent);animation:facescan 2.6s var(--ease-soft,ease) infinite}
@keyframes facescan{0%,100%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent-2,#C9A8FF) 12%,transparent),inset 0 0 24px color-mix(in srgb,var(--accent-2,#C9A8FF) 20%,transparent)}50%{box-shadow:0 0 0 12px color-mix(in srgb,var(--accent-2,#C9A8FF) 6%,transparent),inset 0 0 36px color-mix(in srgb,var(--accent-2,#C9A8FF) 34%,transparent)}}
.ss-facebadge{font-size:11px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2,#C9A8FF)}
@media (prefers-reduced-motion:reduce){.ss-facering{animation:none}}

/* --- agente IA inline (pestaña Exocórtex) · mismo agente que el flotante --- */
.exo-agent{margin-top:6px}
.ssa-inline{position:relative;display:flex;flex-direction:column;height:min(68vh,620px);border:1px solid var(--stroke);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,var(--glass-strong),var(--glass));box-shadow:var(--shadow-card,0 20px 60px rgba(0,0,0,.4))}
.ssa-inline-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--stroke);background:var(--glass-strong)}
.ssa-inline-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}
.ssa-inline .ssa-foot{border-top:1px solid var(--stroke)}
.ssa-inline .ssa-settings{border-radius:20px}

/* v18 · pedido agrupado por persona + estados del local */
.ordwin-group{margin-bottom:14px;border:1px solid var(--stroke);border-radius:16px;padding:10px 10px 4px;background:var(--glass)}
.ordwin-ghead{display:flex;align-items:center;gap:9px;margin-bottom:8px}
.ordwin-ghead b{font-family:var(--serif);font-size:16px}
.ordwin-gsub{margin-left:auto;font-size:12px;font-family:var(--mono);color:var(--ink-soft)}
.ordwin-state{margin-top:6px;align-self:flex-start;font-size:11px;font-weight:700;font-family:var(--mono);padding:3px 10px;border-radius:99px;background:color-mix(in srgb,var(--sc,#7FB8FF) 16%,transparent);border:1px solid color-mix(in srgb,var(--sc,#7FB8FF) 55%,transparent);color:var(--sc,#7FB8FF);cursor:pointer;transition:.15s}
.ordwin-state:hover{filter:brightness(1.15)}
.whoseg .segb{min-width:84px}
.ss-roles{display:flex;gap:7px;flex-wrap:wrap}
.ss-rolechip{font-size:11px;font-weight:700;font-family:var(--mono);padding:3px 10px;border-radius:99px;background:var(--glass);border:1px solid var(--stroke);color:var(--ink-soft)}
.ss-rolechip.host{background:color-mix(in srgb,var(--ambar,#F6A21E) 18%,transparent);border-color:color-mix(in srgb,var(--ambar,#F6A21E) 55%,transparent);color:var(--ambar,#F6A21E)}
.ss-lock{opacity:.5;font-size:14px;padding:0 6px}

/* v21 · banner "tu bebida está lista" */
.ssnet-ready{position:fixed;left:50%;top:18px;transform:translate(-50%,-26px);z-index:200;display:flex;align-items:center;gap:12px;max-width:92vw;padding:12px 16px;border-radius:16px;background:linear-gradient(120deg,color-mix(in srgb,var(--neon-lime,#9FE870) 26%,var(--glass-strong)),var(--glass-strong));border:1px solid color-mix(in srgb,var(--neon-lime,#9FE870) 55%,var(--stroke));box-shadow:0 18px 50px rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:.4s var(--ease-elastic,ease)}
.ssnet-ready.show{opacity:1;transform:translate(-50%,0);pointer-events:auto}
.ssnet-ready .rb-ic{font-size:22px;color:var(--neon-lime,#9FE870)}
.ssnet-ready .rb-tx b{display:block;font-family:var(--serif);font-size:16px;line-height:1.1}
.ssnet-ready .rb-tx small{font-size:12px;color:var(--ink-soft)}
.ssnet-ready .rb-x{margin-left:6px;background:none;border:0;color:var(--ink-mute);font-size:16px;cursor:pointer}

/* v22 · historial de pedidos */
.ss-hist-card{border:1px solid var(--stroke);border-radius:14px;padding:12px;margin-bottom:10px;background:var(--glass)}
.ss-hist-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px}
.ss-hist-top b{font-family:var(--mono);font-size:13px}
.ss-hist-when{font-size:11px;color:var(--ink-mute);white-space:nowrap}
.ss-hist-items{font-size:12.5px;color:var(--ink-soft);margin:6px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ss-hist-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:12.5px}

/* v23 · pantalla de inicio de sesión / registro / staff */
.login-card{max-width:460px}
.login-hero{text-align:center;margin-bottom:6px}
.login-hero img{width:70px;height:70px;border-radius:50%;box-shadow:var(--halo-amber,0 0 30px rgba(246,162,30,.5))}
.login-hero h3{font-family:var(--serif);font-size:25px;margin:8px 0 2px}
.login-hero .muted{font-size:12.5px}
.login-stafficon{width:64px;height:64px;margin:0 auto;border-radius:50%;display:grid;place-items:center;font-size:30px;color:var(--logic,#FFBF00);border:2px solid color-mix(in srgb,var(--logic,#FFBF00) 50%,transparent);box-shadow:inset 0 0 22px color-mix(in srgb,var(--logic,#FFBF00) 22%,transparent)}
.login-h{font-family:var(--serif);font-size:21px;text-align:center;margin:6px 0 4px}
.login-fld{margin-bottom:9px}
.login-user{font-size:16px;padding:13px 18px;margin-top:2px}
.login-face{margin-top:9px;font-size:13.5px}
.login-face small{color:var(--ink-mute);font-weight:400}
.linkbtn{display:block;width:100%;margin:10px 0 0;background:none;border:0;color:var(--ink-soft);font-size:13px;cursor:pointer;text-align:center;font-family:var(--sans)}
.linkbtn:hover{color:var(--ink)}
.login-sep{display:flex;align-items:center;gap:10px;margin:16px 0 10px;color:var(--ink-mute);font-size:10.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em}
.login-sep::before,.login-sep::after{content:"";flex:1;height:1px;background:var(--stroke)}
.staffbtn{display:block;margin:0 auto;padding:6px 14px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--stroke);color:var(--ink-mute);font-size:12px;font-weight:600;cursor:pointer;transition:.15s}
.staffbtn:hover{color:var(--ink);border-color:color-mix(in srgb,var(--logic,#FFBF00) 50%,transparent)}
.login-err{color:#FF8A5C;font-size:12px;min-height:15px;margin:4px 0 6px;text-align:center}
.login-note{font-size:11px;margin-top:12px;text-align:center}

/* v24 · ingrediente agotado en el local (visible, marcado) */
.ichip.ago,.fcard.ago{opacity:.6;filter:grayscale(.35)}
.ago-badge{display:inline-block;margin-left:6px;font-size:9.5px;font-weight:700;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;padding:2px 6px;border-radius:99px;background:color-mix(in srgb,#FF8A5C 22%,transparent);border:1px solid color-mix(in srgb,#FF8A5C 55%,transparent);color:#FF8A5C;vertical-align:middle}
.fcard.ago .fcard-btn.add{opacity:.55}

/* v25 · buscador universal */
.search-card{max-width:560px}
.search-in{width:100%;font-size:16px;padding:13px 14px;margin:10px 0 12px}
.search-res{max-height:54vh;overflow:auto;display:flex;flex-direction:column;gap:5px}
.search-row{display:grid;grid-template-columns:auto 1fr;grid-template-areas:"cat nm""cat sub";gap:1px 10px;align-items:center;text-align:left;padding:9px 11px;border-radius:12px;background:var(--glass);border:1px solid var(--stroke);cursor:pointer;transition:.12s;width:100%}
.search-row:hover{border-color:color-mix(in srgb,var(--accent-2,#C9A8FF) 55%,transparent);background:var(--glass-strong)}
.search-cat{grid-area:cat;align-self:center;font-size:9.5px;font-family:var(--mono);text-transform:uppercase;letter-spacing:.04em;color:var(--ink-mute);background:var(--bg-0);border:1px solid var(--stroke);border-radius:99px;padding:3px 8px;white-space:nowrap}
.search-nm{grid-area:nm;font-weight:600;font-size:14px}
.search-sub{grid-area:sub;font-size:11.5px;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* v26 · barra de búsqueda en cabecera */
.searchbar{display:flex;align-items:center;gap:8px;height:38px;width:min(260px,28vw);padding:0 14px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--stroke);color:var(--ink-mute);cursor:text;transition:.15s;font-family:var(--sans)}
.searchbar:hover{border-color:color-mix(in srgb,var(--accent-2,#C9A8FF) 50%,transparent);color:var(--ink-soft)}
.searchbar .sb-ic{font-size:16px;flex:none}
.searchbar .sb-tx{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media (max-width:780px){.searchbar{width:38px;justify-content:center;padding:0}.searchbar .sb-tx{display:none}}

/* v26 · ventana de presentación de StarSeed OS */
.os-card{max-width:680px}
.os-hero{position:relative;text-align:center;padding:6px 4px 12px}
.os-glow{position:absolute;left:20%;right:20%;top:-30px;height:180px;background:radial-gradient(circle at 50% 0,color-mix(in srgb,var(--accent-2,#C9A8FF) 30%,transparent),transparent 70%);filter:blur(22px);z-index:0;pointer-events:none}
.os-hero>*{position:relative;z-index:1}
.os-hero img{width:72px;height:72px;border-radius:50%;box-shadow:var(--halo-amber,0 0 30px rgba(246,162,30,.5))}
.os-eyebrow{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--accent-2,#C9A8FF);margin-top:8px}
.os-hero h2{font-family:var(--serif);font-size:clamp(22px,3.4vw,30px);margin:4px 0 6px}
.os-hero p{font-size:14px;color:var(--ink-soft);max-width:56ch;margin:0 auto;line-height:1.5}
.os-tri{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0}
@media(max-width:620px){.os-tri{grid-template-columns:1fr}}
.os-tcard{padding:14px;border-radius:16px;background:var(--glass);border:1px solid color-mix(in srgb,var(--c,#9FE870) 40%,var(--stroke))}
.os-tcard .os-sym{font-size:24px;color:var(--c,#9FE870)}
.os-tcard b{display:block;font-family:var(--serif);font-size:16px;margin:4px 0 3px}
.os-tcard small{font-size:12px;color:var(--ink-soft);line-height:1.45}
.os-areas-h{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-mute);margin:6px 0 8px}
.os-arow{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:14px}
.os-area{font-size:12.5px;padding:6px 12px;border-radius:var(--r-pill);background:var(--glass);border:1px solid var(--stroke);color:var(--ink-soft)}
.os-phases{font-size:13px;color:var(--ink-soft);margin-bottom:14px}
.os-foot{display:flex;flex-direction:column;align-items:center;gap:6px}
.os-cta{font-size:15px;padding:12px 20px;text-decoration:none}

/* ============================================================
   v6.8 · ETIQUETA INTELIGENTE 3D POR LOCAL
   Cada vaso imprime su etiqueta en SU zona natural, con la
   cultura del lugar: geoglifo · barras E/F/C · QR · Safe-Blend.
   ============================================================ */

/* chip del local: abajo del vaso, nunca sobre la etiqueta */
.cup3d-zone{top:auto;bottom:3.5%;left:50%;transform:translateX(-50%);
  background:rgba(10,14,9,.72);backdrop-filter:blur(8px);padding:5px 13px;border-radius:999px;
  border:1px solid color-mix(in srgb,var(--accent,#E9C46A) 45%,transparent);color:#f2e7c8;
  box-shadow:0 4px 14px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.12);font-size:11px}

/* placa: relieve 3D real sobre la curva del vaso */
.cup3d-print{
  display:grid;grid-template-columns:auto 1fr;gap:4cqw;align-items:center;padding:4cqh 5cqw;
  box-shadow:inset 0 2px 6px rgba(255,255,255,.28), inset 0 -3px 8px rgba(0,0,0,.32), 0 4px 12px rgba(0,0,0,.35);
}
.cup3d-print.wide{grid-template-columns:auto 1fr auto}
.cup3d-print::before{ /* curvatura: luz cilíndrica */
  content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;
  background:linear-gradient(90deg, rgba(0,0,0,.28), rgba(255,255,255,.16) 18%, rgba(255,255,255,.05) 50%, rgba(255,255,255,.14) 82%, rgba(0,0,0,.3));
  mix-blend-mode:overlay;
}
.c3p-glyph{width:clamp(26px,22cqh,64px);height:auto;aspect-ratio:1;filter:drop-shadow(0 1px 3px rgba(0,0,0,.4))}
.c3p-tx{min-width:0;text-align:center}
.c3p-by{font-family:var(--mono);font-size:clamp(7px,3cqw,10px);opacity:.85;color:var(--ink)}
.c3p-bars{display:flex;flex-direction:column;gap:1.2cqh;margin:1.5cqh 0}
.c3p-bars .cb{height:max(2px,1.8cqh);border-radius:99px;background:rgba(0,0,0,.18);overflow:hidden}
.cup3d-print.on-dark .c3p-bars .cb{background:rgba(255,255,255,.16)}
.c3p-bars .cb i{display:block;height:100%;border-radius:99px}
.c3p-bars .cb.e i{background:#F6A21E}.c3p-bars .cb.f i{background:#C9A8FF}.c3p-bars .cb.r i{background:#9FE870}
.c3p-warn,.c3p-safe{font-family:var(--mono);font-size:clamp(6.5px,2.8cqw,9.5px);margin-top:1cqh;font-weight:700}
.c3p-warn{color:#a33}.cup3d-print.on-dark .c3p-warn{color:#ffb3a0}
.c3p-safe{color:#2d6b22}.cup3d-print.on-dark .c3p-safe{color:#bff0a8}
.c3p-qrwrap{display:grid;place-items:center}
.c3p-qr{width:clamp(22px,20cqh,58px);height:auto;aspect-ratio:1;background:rgba(255,255,255,.0);border-radius:6%;image-rendering:pixelated}
.cup3d-print:not(.wide) .c3p-qrwrap{grid-column:1 / -1;justify-self:center}

/* ---- piel cultural por local ---- */
.cup3d-print.zone-madrid{ /* pergamino solar castizo */
  background:linear-gradient(180deg,#f2e3bd,#e3cd96), repeating-linear-gradient(90deg, rgba(192,92,59,.10) 0 8px, transparent 8px 16px);
  border:1px solid #b98c3e;
}
.cup3d-print.zone-barcelona{ /* trencadís modernista */
  background:radial-gradient(circle at 18% 30%, rgba(111,230,214,.25) 0 14%, transparent 15%), radial-gradient(circle at 78% 64%, rgba(255,138,92,.25) 0 12%, transparent 13%), radial-gradient(circle at 52% 18%, rgba(201,168,255,.22) 0 10%, transparent 11%), linear-gradient(180deg,#f4ead0,#e8d8ae);
  border:1px solid #a9842f;
}
.cup3d-print.zone-sevilla{ /* azulejo */
  background:repeating-linear-gradient(0deg, rgba(31,111,160,.12) 0 7px, transparent 7px 14px), repeating-linear-gradient(90deg, rgba(31,111,160,.12) 0 7px, transparent 7px 14px), linear-gradient(180deg,#f7efda,#eadfbe);
  border:1px solid #8c6a2a;
}
.cup3d-print.zone-valencia{ /* cerámica y azahar */
  background:radial-gradient(120% 90% at 50% -20%, rgba(246,162,30,.28), transparent 60%), linear-gradient(180deg,#f6ecd2,#ecd9ab);
  border:1px solid #c08a2e;
}
.cup3d-print.zone-bilbao{ /* hierro y musgo atlántico */
  background:linear-gradient(165deg,#2c3431,#1c2421), repeating-linear-gradient(135deg, rgba(159,232,112,.08) 0 6px, transparent 6px 14px);
  border:1px solid #5C7A4A;
}

/* ============================================================
   v7 · ETIQUETA GRABADA EN EL VASO (no colgante) + layout fino
   ============================================================ */
.cup3d-print{
  transform:none;animation:none;
  grid-template-columns:auto 1fr auto;gap:3cqw;align-items:center;padding:3.5cqh 4cqw;
}
.cup3d-print::after{display:none} /* sin remache: está impresa en el vaso */
.c3p-col{display:grid;place-items:center;min-width:0}
.c3p-name{font-size:clamp(11px,8.5cqh,22px);letter-spacing:.01em}
.c3p-by{font-size:clamp(6.5px,3.4cqh,10px)}
.c3p-ings{font-family:var(--mono);font-size:clamp(6px,3.1cqh,9.5px);opacity:.8;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:.6cqh}
.c3p-bars{flex-direction:row;gap:1.6cqw;margin:1.4cqh 0}
.c3p-bars .cb{flex:1;height:max(2.5px,2.2cqh)}
.c3p-stats{font-size:clamp(7px,3.6cqh,11.5px)}
.c3p-glyph{width:clamp(22px,26cqh,60px)}
.c3p-qr{width:clamp(20px,24cqh,56px)}
/* contenedores diminutos (modal de pedido): esencia solamente */
@container (max-height:64px){
  .c3p-ings,.c3p-by,.c3p-bars,.c3p-warn,.c3p-safe,.c3p-col.r{display:none !important}
  .cup3d-print{grid-template-columns:auto 1fr;padding:2cqh 3cqw}
}
@container (max-width:120px){ .c3p-col.l{display:none !important} .cup3d-print{grid-template-columns:1fr} }

/* Madrid: GRABADO sobre la placa de oro real del arte del vaso */
.cup3d-print.engrave{
  background:linear-gradient(180deg, rgba(255,246,220,.14), rgba(140,100,40,.10) 60%, rgba(60,40,12,.14));
  border:1px solid rgba(110,76,28,.38);
  box-shadow:inset 0 2px 5px rgba(255,255,255,.32), inset 0 -3px 7px rgba(80,52,16,.42);
}
.cup3d-print.engrave .c3p-name,.cup3d-print.engrave .c3p-stats b{color:#3a2a10}
.cup3d-print.engrave *{color:#4a3415}
.cup3d-print.engrave .c3p-name{text-shadow:0 1px 0 rgba(255,250,230,.5), 0 -1px 0 rgba(60,40,10,.35)} /* cincelado */
.cup3d-print.engrave .c3p-bars .cb{background:rgba(60,40,10,.22)}
