*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;height:100%}
body{background:#1b1f27;font-family:system-ui,sans-serif;overflow:hidden}
#app{height:100%;display:flex;justify-content:center}
.scr{width:100%;max-width:440px;height:100%;position:relative;display:flex;flex-direction:column;overflow:hidden;
 --mut:color-mix(in srgb,var(--ink) 58%,transparent);--line:color-mix(in srgb,var(--ink) 13%,transparent);--t1:color-mix(in srgb,var(--c1) 14%,var(--sf));--t2:color-mix(in srgb,var(--c2) 22%,var(--sf));
 background:var(--bg);color:var(--ink);font-family:var(--fb),system-ui,sans-serif}
.scr .body{flex:1;overflow-y:auto;position:relative;-webkit-overflow-scrolling:touch}.scr .body::-webkit-scrollbar{width:0}
.scr img{background:#fff}
.scr button,.scr input,.scr select,.scr textarea{font-family:inherit}
.sb{height:env(safe-area-inset-top,0);flex:none}
.toast{position:absolute;left:16px;right:16px;bottom:100px;background:#111;color:#fff;padding:12px;border-radius:12px;font-size:13px;opacity:0;transition:.3s;pointer-events:none;z-index:50}
.toast.on{opacity:1}
.ic{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:var(--sw,2);stroke-linecap:var(--lc,round);stroke-linejoin:var(--lj,round);flex:none;vertical-align:middle}
.f{width:100%;padding:12px;font-size:15px;margin-bottom:10px;border:1px solid var(--line);background:var(--sf);color:var(--ink);border-radius:min(var(--r),14px)}
.gpad img{width:60px;height:60px;object-fit:contain;border-radius:8px}
.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.qrw{display:flex;justify-content:center;padding:16px;background:#fff;border-radius:12px;margin:12px 0}
.faq{margin-bottom:4px;border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-weight:700;padding:12px 0}.faq div{padding:0 0 12px;color:var(--mut);font-size:13.5px;line-height:1.45}
.vid{position:relative;height:150px;overflow:hidden;display:flex;align-items:flex-end;padding:12px;color:#fff;cursor:pointer;margin-bottom:10px;background:#222 center/contain no-repeat;border-radius:var(--r)}
.vid::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#000c)}
.vid span{position:relative;font-weight:700;font-size:13px}
.vid .pl{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--c1);color:var(--on1)}
.menu a,.menu button{display:flex;align-items:center;gap:12px;width:100%;padding:14px 0;background:none;border:0;border-bottom:1px solid var(--line);font-weight:700;font-size:14px;color:inherit;cursor:pointer;text-align:left;text-decoration:none}
.logoimg{height:44px;width:44px;object-fit:contain;background:#fff!important;border-radius:min(var(--r),10px);padding:2px;display:block;flex:none;box-shadow:0 1px 4px #0002}
.revista .logoimg,.acciones .logoimg{height:48px;width:48px}
.pw{position:absolute;bottom:6px;left:0;right:0;text-align:center;font-size:9px;opacity:.35;pointer-events:none}
/* bloqueo */
.lock{flex:1;display:flex;flex-direction:column;justify-content:center;padding:32px;background:var(--dk);color:#fff;gap:14px}
.lock h1{font-family:var(--fh);margin:0;font-size:28px}.lock p{opacity:.75;margin:0}
.lock input{padding:14px;font-size:16px;border:0;border-radius:10px}
.lock button{padding:14px;border:0;border-radius:10px;background:var(--c1);color:var(--on1);font-weight:700;font-size:16px;cursor:pointer}
.lock .err{color:#ffb4b4;font-size:13px;min-height:16px}
.load{flex:1;display:grid;place-items:center;color:#aaa;font-size:14px}

/* ============ DIAGNÓSTICO ============ */
.diagnostico{--sw:2.5;--lc:square;--lj:miter;font-family:var(--fb)}
.diagnostico .hd{background:var(--c1);color:var(--on1);display:flex;align-items:center;gap:10px;padding:12px 14px}
.diagnostico .logo{font:900 22px var(--fh);letter-spacing:1px;background:var(--c2);color:var(--c1);padding:2px 10px;transform:skewX(-8deg)}
.diagnostico .hd .t{flex:1;font:600 11px var(--fh);text-transform:uppercase;letter-spacing:1px;opacity:.9}
.diagnostico .hb{background:none;border:0;color:inherit;cursor:pointer;padding:4px}
.diagnostico .body{padding:0 0 100px}
.diagnostico .step{background:var(--c2);color:var(--on2);padding:18px 16px 16px;border-bottom:4px solid var(--dk)}
.diagnostico .step small{font:700 11px var(--fh);letter-spacing:2px;text-transform:uppercase}
.diagnostico .step h1{font:900 26px/1.05 var(--fh);text-transform:uppercase;margin:6px 0 0}
.diagnostico .step p{margin:6px 0 0;font-size:13px}
.diagnostico .prog{display:flex;gap:4px;margin-top:12px}.diagnostico .prog i{flex:1;height:5px;background:currentColor;opacity:.2}.diagnostico .prog i.on{opacity:1}
.diagnostico .zone{display:flex;align-items:center;gap:14px;width:100%;padding:16px;border:0;border-bottom:1px solid var(--line);background:var(--sf);color:var(--ink);cursor:pointer;text-align:left}
.diagnostico .zone .n{font:900 28px var(--fh);color:var(--c1);width:40px}
.diagnostico .zone b{display:block;font:800 16px var(--fh);text-transform:uppercase}.diagnostico .zone em{font-style:normal;font-size:12px;color:var(--mut)}
.diagnostico .row{display:flex;gap:12px;padding:12px 16px;background:var(--sf);border-bottom:1px solid var(--line);cursor:pointer;align-items:center}
.diagnostico .row img{width:60px;height:60px;object-fit:contain;border:1px solid var(--line);flex:none}
.diagnostico .row b{font:800 14px var(--fh);text-transform:uppercase;display:block}.diagnostico .row span{font-size:12px;color:var(--mut)}
.diagnostico .row .eqt{display:inline-block;margin-top:4px;background:var(--dk);color:var(--c2);font:700 10px var(--fh);padding:2px 6px;text-transform:uppercase}
.diagnostico .fab{position:absolute;right:16px;bottom:24px;width:58px;height:58px;background:var(--c1);color:var(--on1);border:3px solid var(--c2);display:grid;place-items:center;cursor:pointer;z-index:5;border-radius:var(--r)}
.diagnostico .drawer{position:absolute;inset:0;background:#0008;z-index:20;display:none}.diagnostico .drawer.on{display:block}
.diagnostico .drawer nav{width:78%;height:100%;background:var(--dk);color:#fff;padding:50px 0 0}
.diagnostico .drawer a{display:flex;gap:14px;align-items:center;padding:15px 22px;color:#fff;text-decoration:none;font:700 14px var(--fh);text-transform:uppercase;letter-spacing:.5px;border-left:4px solid transparent;cursor:pointer}
.diagnostico .drawer a:hover{border-left-color:var(--c2)}
.diagnostico .ficha{background:var(--c2);color:var(--on2);padding:16px;border-bottom:4px solid var(--dk)}
.diagnostico .ficha h1{font:900 24px/1.05 var(--fh);text-transform:uppercase;margin:4px 0}
.diagnostico .ficha img{width:100%;height:170px;object-fit:contain;margin-top:10px;border:2px solid var(--dk)}
.diagnostico .acts{display:grid;grid-template-columns:1fr 1fr}
.diagnostico .acts a,.diagnostico .acts button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--sf);font:800 12px var(--fh);text-transform:uppercase;cursor:pointer;color:var(--ink);text-decoration:none}
.diagnostico .acts .red{background:var(--c1);color:var(--on1)}
.diagnostico .sec{display:flex;gap:12px;padding:14px 16px;background:var(--sf);border-bottom:1px solid var(--line);font-size:13.5px;line-height:1.45}
.diagnostico .sec .n{font:900 20px var(--fh);color:var(--c1)}
.diagnostico .sec b{display:block;font:800 11px var(--fh);letter-spacing:1.5px;text-transform:uppercase;color:var(--mut);margin-bottom:2px}
.diagnostico h2{font:900 15px var(--fh);text-transform:uppercase;letter-spacing:1px;padding:16px 16px 8px;margin:0}
.diagnostico .btn{display:block;width:calc(100% - 32px);margin:12px 16px;padding:14px;background:var(--c1);color:var(--on1);border:0;font:800 14px var(--fh);text-transform:uppercase;letter-spacing:1px;cursor:pointer;text-align:center;text-decoration:none;border-radius:var(--r)}
.diagnostico .gpad .btn{width:100%;margin:6px 0}
.diagnostico .btn.wa{background:#1fa855;color:#fff}
.diagnostico table{width:100%;border-collapse:collapse;font-size:12px;background:var(--sf)}
.diagnostico td,.diagnostico th{border:1px solid var(--line);padding:8px;vertical-align:top;text-align:left}
.diagnostico th{background:var(--dk);color:#fff;font:800 11px var(--fh);text-transform:uppercase}
.diagnostico th.us{background:var(--c1);color:var(--on1)}.diagnostico td.us{background:var(--t2)}
.diagnostico .pad{padding:16px}.diagnostico .f{border:2px solid var(--dk);border-radius:var(--r)}
.diagnostico .srch{display:flex;background:var(--sf);color:var(--ink);margin:0 14px 12px;align-items:center;padding:0 10px;border:2px solid var(--dk)}
.diagnostico .srch input{border:0;outline:0;padding:11px 6px;font:600 15px var(--fb);flex:1;background:none;color:var(--ink)}

/* ============ ETAPAS ============ */
.etapas{--sw:1.8}
.etapas .hd{background:var(--dk);color:#fff;padding:12px 18px 26px;border-radius:0 0 28px 28px}
.etapas .hd .l{display:flex;justify-content:space-between;align-items:center}
.etapas .logo{font:800 26px var(--fh);letter-spacing:-1px}.etapas .logo i{color:var(--c1);font-style:normal}
.etapas .hi{font:500 15px var(--fb);opacity:.8;margin-top:10px}.etapas .hi b{display:block;font:700 22px var(--fh);opacity:1;color:#fff}
.etapas .pill{display:flex;align-items:center;gap:8px;background:var(--sf);color:var(--ink);border-radius:30px;padding:4px 4px 4px 16px;margin-top:14px}
.etapas .pill input{flex:1;border:0;outline:0;font:500 15px var(--fb);padding:8px 0;background:none;color:var(--ink);min-width:0}
.etapas .pill span{width:38px;height:38px;border-radius:50%;background:var(--c1);color:var(--on1);display:grid;place-items:center;flex:none}
.etapas .body{padding:18px 18px 110px}
.etapas h2{font:700 19px var(--fh);margin:6px 0 14px;letter-spacing:-.3px}
.etapas .tl{position:relative;padding-left:44px}
.etapas .tl::before{content:"";position:absolute;left:17px;top:10px;bottom:10px;width:2px;background:repeating-linear-gradient(var(--dk) 0 6px,transparent 6px 11px)}
.etapas .st{position:relative;background:var(--sf);border-radius:var(--r);padding:14px;margin-bottom:14px;box-shadow:0 2px 10px #0000000d}
.etapas .st .dot{position:absolute;left:-44px;top:12px;width:36px;height:36px;border-radius:50%;background:var(--c1);color:var(--on1);font:800 16px var(--fh);display:grid;place-items:center;border:3px solid var(--bg)}
.etapas .st b{font:700 17px var(--fh)}.etapas .st em{font-style:normal;color:var(--mut);font-size:13px;display:block}
.etapas .mini{display:flex;gap:8px;overflow-x:auto;margin-top:10px}.etapas .mini::-webkit-scrollbar{height:0}
.etapas .mini div{flex:none;width:92px;cursor:pointer}.etapas .mini img{width:92px;height:80px;object-fit:contain;border-radius:calc(var(--r)*.7)}
.etapas .mini span{font:600 12px var(--fb);display:block;line-height:1.15;margin-top:4px}
.etapas .bn{position:absolute;left:12px;right:12px;bottom:calc(14px + env(safe-area-inset-bottom,0px));height:66px;background:var(--dk);border-radius:24px;display:flex;align-items:center;justify-content:space-around;color:#999;z-index:6}
.etapas .bn button{background:none;border:0;color:inherit;font:600 10px var(--fb);display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer}
.etapas .bn button.on{color:var(--c1)}
.etapas .bn .c{width:60px;height:60px;border-radius:50%;background:var(--c1);color:var(--on1)!important;margin-top:-34px;border:5px solid var(--bg);justify-content:center}
.etapas .card{display:flex;gap:12px;background:var(--sf);border-radius:var(--r);padding:10px;margin-bottom:10px;cursor:pointer;align-items:center;box-shadow:0 2px 10px #0000000d}
.etapas .card img{width:66px;height:66px;object-fit:contain;border-radius:calc(var(--r)*.7);flex:none}
.etapas .card b{font:700 15px var(--fh);display:block}.etapas .card span{font-size:12.5px;color:var(--mut)}
.etapas .tagy{display:inline-block;background:var(--c1);color:var(--on1)!important;border-radius:20px;font:700 11px var(--fb);padding:2px 8px;margin-top:4px}
.etapas .hero{background:var(--c1);color:var(--on1);border-radius:calc(var(--r)*1.4);padding:18px;text-align:center}
.etapas .hero img{width:100%;height:180px;object-fit:contain;background:transparent;mix-blend-mode:multiply}
.etapas .hero h1{font:800 26px var(--fh);margin:6px 0 0;letter-spacing:-.5px}
.etapas .seg{display:flex;background:var(--line);border-radius:30px;padding:4px;margin:16px 0 10px}
.etapas .seg button{flex:1;border:0;background:none;padding:9px;border-radius:30px;font:700 13px var(--fb);cursor:pointer;color:var(--ink)}
.etapas .seg button.on{background:var(--dk);color:#fff}
.etapas .txt{background:var(--sf);border-radius:var(--r);padding:16px;font-size:15px;line-height:1.5}
.etapas .rep{display:flex;flex-wrap:wrap;gap:8px}
.etapas .rep button{border:1.5px solid var(--dk);background:var(--sf);color:var(--ink);border-radius:30px;padding:7px 12px;font:600 13px var(--fb);cursor:pointer}
.etapas .btn{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;padding:15px;border-radius:30px;border:0;background:var(--c1);color:var(--on1);font:700 16px var(--fb);cursor:pointer;text-decoration:none;margin-top:10px}
.etapas .btn.k{background:var(--dk);color:#fff}.etapas .btn.w{background:var(--sf);color:var(--ink)}.etapas .btn.wa{background:#1fa855;color:#fff}
.etapas .two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.etapas .f{border-radius:16px;border:0;box-shadow:0 2px 10px #0000000d}
.etapas .vs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.etapas .vs>div{background:var(--sf);border-radius:var(--r);padding:10px;text-align:center}
.etapas .vs img{width:100%;height:90px;object-fit:contain}
.etapas .vs .us{background:var(--c1);color:var(--on1)}
.etapas .attr{background:var(--sf);border-radius:var(--r);padding:14px;margin-top:10px;font-size:13.5px}
.etapas .attr h4{margin:0 0 8px;font:700 14px var(--fh)}
.etapas .attr p{margin:0 0 8px;padding-left:10px;border-left:4px solid var(--line)}.etapas .attr p.us{border-color:var(--c1)}
.etapas .back{background:none;border:0;color:#fff;cursor:pointer;display:flex;align-items:center;gap:4px;font:600 15px var(--fb)}

/* ============ REVISTA ============ */
.revista{--sw:1.6}
.revista .hd{padding:12px 18px 0;border-bottom:1px solid var(--line);background:var(--sf)}
.revista .hd .l{display:flex;justify-content:space-between;align-items:center;gap:8px}
.revista .logo{font:italic 800 26px var(--fh);color:var(--c1);letter-spacing:-.5px}
.revista .ib{display:flex;gap:14px;color:var(--c1)}.revista .ib span,.revista .hd .bk2{cursor:pointer;background:none;border:0;color:var(--c1)}
.revista .tabs{display:flex;gap:20px;margin-top:10px;overflow-x:auto}.revista .tabs::-webkit-scrollbar{height:0}
.revista .tabs button{border:0;background:none;padding:10px 0;font:600 13px var(--fb);color:var(--mut);border-bottom:3px solid transparent;cursor:pointer;white-space:nowrap}
.revista .tabs button.on{color:var(--c1);border-color:var(--c1)}
.revista .body{padding:0 0 30px}
.revista .srch{margin:14px 18px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:var(--r);padding:0 12px;color:var(--c1);background:var(--sf)}
.revista .srch input{border:0;outline:0;flex:1;padding:12px 0;font:15px var(--fb);background:none;color:var(--ink)}
.revista .cover{margin:0 18px;background:linear-gradient(135deg,var(--c1),var(--c2));border-radius:var(--r);color:var(--on1);padding:18px;display:flex;gap:10px;align-items:center;cursor:pointer;min-height:170px}
.revista .cover small{font:700 10px var(--fb);letter-spacing:2px;text-transform:uppercase;opacity:.8}
.revista .cover h1{font:italic 800 24px/1.05 var(--fh);margin:6px 0}
.revista .cover img{width:120px;height:140px;object-fit:contain;border-radius:var(--r)}
.revista .shelf h3{display:flex;justify-content:space-between;margin:22px 18px 10px;font:700 15px var(--fh)}
.revista .shelf h3 span{font-size:12px;color:var(--c1);font-weight:600;cursor:pointer}
.revista .sh{display:flex;gap:12px;overflow-x:auto;padding:0 18px}.revista .sh::-webkit-scrollbar{height:0}
.revista .bk{flex:none;width:120px;cursor:pointer}
.revista .bk img{width:120px;height:150px;object-fit:contain;border:1px solid var(--line);border-radius:var(--r)}
.revista .bk b{font:700 12.5px var(--fb);display:block;margin-top:6px;line-height:1.2}.revista .bk span{font-size:11px;color:var(--mut)}
.revista .ph{background:var(--c1);color:var(--on1);padding:14px 18px 60px}
.revista .ph h1{font:italic 800 26px/1.05 var(--fh);margin:10px 0 4px}
.revista .ph small{opacity:.8;font-size:12px}
.revista .circ{width:160px;height:160px;border-radius:50%;background:#fff;margin:-50px auto 0;display:grid;place-items:center;box-shadow:0 6px 20px #0002;overflow:hidden}
.revista .circ img{width:120px;height:120px;object-fit:contain}
.revista details{border-bottom:1px solid var(--line);margin:0 18px}
.revista summary{padding:15px 0;font:700 14px var(--fh);cursor:pointer;list-style:none;display:flex;justify-content:space-between}
.revista summary::-webkit-details-marker{display:none}
.revista summary::after{content:"+";color:var(--c1);font-size:18px}.revista details[open] summary::after{content:"–"}
.revista details p{margin:0 0 14px;font-size:13.5px;line-height:1.55;color:var(--mut)}
.revista .bt{display:flex;gap:8px;margin:16px 18px}
.revista .btn{flex:1;display:block;text-align:center;padding:13px;border-radius:var(--r);background:var(--c1);color:var(--on1);border:0;font:700 13px var(--fb);cursor:pointer;text-decoration:none;width:100%;margin-top:6px}
.revista .btn.o{background:var(--sf);color:var(--c1);border:1.5px solid var(--c1)}.revista .btn.wa{background:#1fa855;color:#fff}
.revista .lst{margin:0 18px}
.revista .li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);cursor:pointer;align-items:center}
.revista .li img{width:52px;height:64px;object-fit:contain;border:1px solid var(--line);border-radius:3px;flex:none}
.revista .li b{font:700 14px var(--fh);display:block}.revista .li span{font-size:12px;color:var(--mut)}
.revista .li .tg{display:inline-block;color:var(--c1);font:700 11px var(--fb);margin-top:3px}
.revista .ln0{width:52px;height:52px;background:var(--t1);color:var(--c1);display:grid;place-items:center;border-radius:3px;font:italic 800 18px var(--fh);flex:none}
.revista .doc{display:flex;gap:12px;align-items:center;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px;cursor:pointer}
.revista .doc i{width:38px;height:46px;background:var(--t1);color:var(--c1);font:800 10px var(--fb);display:grid;place-items:center;font-style:normal;border-radius:3px;flex:none}
.revista .pad{padding:0 18px}.revista .pad h2{font:italic 800 22px var(--fh);color:var(--c1);margin:16px 0 8px}
.revista .cmpc{margin:12px 18px;border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.revista .cmpc h4{margin:0;padding:10px 12px;background:var(--t1);font:700 12px var(--fb);text-transform:uppercase;letter-spacing:1px;color:var(--c1)}
.revista .cmpc p{margin:0;padding:10px 12px;font-size:13px;border-top:1px solid var(--line)}.revista .cmpc p b{display:block;font-size:11px;color:var(--mut)}
.revista .cmpc p.us{background:var(--t1)}

/* ============ MOSTRADOR ============ */
.mostrador{--sw:2.2}
.mostrador .hd{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 10px;gap:8px}
.mostrador .logo{display:flex;align-items:center;gap:6px;font:700 20px var(--fh);letter-spacing:2px;text-transform:uppercase;flex:1;min-width:0}
.mostrador .logo i{background:var(--c1);color:var(--on1);font-style:normal;padding:0 8px}
.mostrador .hd .bk2{background:none;border:0;color:var(--ink);cursor:pointer}
.mostrador .cart{display:flex;align-items:center;gap:6px;background:var(--sf);border:1px solid var(--line);border-radius:var(--r);padding:6px 10px;font:500 12px var(--fb);cursor:pointer;color:var(--ink)}
.mostrador .cart b{background:var(--c1);color:var(--on1);border-radius:10px;padding:0 6px}
.mostrador .body{padding:0 16px 100px}
.mostrador .big{background:var(--sf);border:2px solid var(--c1);border-radius:var(--r);padding:14px;margin:6px 0 16px}
.mostrador .big label{font:500 11px var(--fh);letter-spacing:2px;color:var(--c1);text-transform:uppercase}
.mostrador .big input{width:100%;background:none;border:0;outline:0;color:var(--ink);font:500 21px var(--fh);margin-top:4px}
.mostrador h2{font:500 13px var(--fh);letter-spacing:2px;text-transform:uppercase;color:var(--mut);margin:18px 0 8px}
.mostrador .ln{display:flex;justify-content:space-between;align-items:center;padding:13px 0;border-bottom:1px solid var(--line);cursor:pointer;font:500 14px var(--fb)}
.mostrador .ln b{font:500 12px var(--fh);background:var(--sf);padding:2px 8px;border-radius:3px;color:var(--mut)}
.mostrador .it{display:flex;gap:10px;align-items:center;background:var(--sf);border-radius:var(--r);padding:8px;margin-bottom:8px;cursor:pointer}
.mostrador .it img{width:52px;height:52px;object-fit:contain;border-radius:4px;flex:none}
.mostrador .it b{font:500 15px var(--fh);text-transform:uppercase;letter-spacing:.5px;display:block}.mostrador .it span{font-size:11.5px;color:var(--mut)}
.mostrador .it .add{margin-left:auto;width:36px;height:36px;border-radius:var(--r);background:var(--c1);border:0;color:var(--on1);font:700 20px var(--fb);cursor:pointer;flex:none}
.mostrador .it .eq{display:inline-block;font-size:10px;color:var(--c1);border:1px solid var(--c1);border-radius:3px;padding:0 4px;margin-top:3px}
.mostrador .hs{display:flex;gap:8px;overflow-x:auto}.mostrador .hs::-webkit-scrollbar{height:0}
.mostrador .hs div{flex:none;width:110px;background:var(--sf);border-radius:var(--r);padding:8px;cursor:pointer}
.mostrador .hs img{width:100%;height:80px;object-fit:contain;border-radius:4px}.mostrador .hs b{font:500 12px var(--fh);text-transform:uppercase;display:block;margin-top:4px}
.mostrador .bn{position:absolute;left:0;right:0;bottom:0;background:var(--dk);border-top:1px solid var(--line);display:flex;padding:10px 4px calc(14px + env(safe-area-inset-bottom,0px))}
.mostrador .bn button{flex:1;background:none;border:0;color:var(--mut);font:500 10px var(--fh);letter-spacing:1px;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:3px;cursor:pointer;position:relative}
.mostrador .bn button.on{color:var(--ink)}.mostrador .bn button.on::before{content:"";position:absolute;top:-11px;width:30px;height:3px;background:var(--c1)}
.mostrador .bn i{position:absolute;top:-4px;right:22%;background:var(--c1);color:var(--on1);font:700 10px var(--fb);border-radius:8px;padding:0 5px;font-style:normal}
.mostrador .pimg{background:#fff;border-radius:var(--r);height:200px;display:grid;place-items:center;margin-top:6px}.mostrador .pimg img{height:180px;max-width:90%;object-fit:contain}
.mostrador .pn{font:700 30px/1 var(--fh);text-transform:uppercase;margin:14px 0 6px}
.mostrador .tg{display:inline-block;background:var(--c1);color:var(--on1);font:500 11px var(--fh);letter-spacing:1px;padding:2px 8px;text-transform:uppercase;margin-right:4px}
.mostrador .tg.g{background:var(--sf);color:var(--ink)}
.mostrador .kv{border-top:1px solid var(--line);padding:10px 0;font-size:13.5px;line-height:1.45;color:var(--mut)}.mostrador .kv b{display:block;font:500 11px var(--fh);letter-spacing:2px;color:var(--c1);text-transform:uppercase}
.mostrador .sticky{position:sticky;bottom:0;background:var(--bg);padding:10px 0;display:flex;gap:8px;align-items:center;border-top:1px solid var(--line);margin-top:8px}
.mostrador .qty{display:flex;align-items:center;background:var(--sf);border-radius:var(--r)}.mostrador .qty button{background:none;border:0;color:var(--ink);font:700 18px var(--fb);width:34px;height:44px;cursor:pointer}.mostrador .qty span{width:28px;text-align:center;font:500 16px var(--fh)}
.mostrador .btn{flex:1;display:block;width:100%;text-align:center;padding:14px;background:var(--c1);color:var(--on1);border:0;border-radius:var(--r);font:500 15px var(--fh);letter-spacing:1.5px;text-transform:uppercase;cursor:pointer;text-decoration:none;margin-top:6px}
.mostrador .btn.g{background:var(--sf);color:var(--ink);border:1px solid var(--line);margin-top:0}.mostrador .btn.wa{background:#1fa855;color:#fff}
.mostrador .duel{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;margin-top:10px}
.mostrador .duel>div{background:var(--sf);border-radius:var(--r);padding:10px;text-align:center}.mostrador .duel .us{border:2px solid var(--c1)}
.mostrador .duel img{width:100%;height:90px;object-fit:contain;border-radius:4px}
.mostrador .duel .v{font:700 22px var(--fh);color:var(--c1);background:none;padding:0}
.mostrador .dr{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:8px}.mostrador .dr div{background:var(--sf);border-radius:var(--r);padding:10px;font-size:12px;line-height:1.4;color:var(--mut)}
.mostrador .dr div.us{border-left:3px solid var(--c1)}

/* ============ CHAT ============ */
.chat{--sw:2}
.chat .hd{background:linear-gradient(160deg,var(--dk),color-mix(in srgb,var(--dk) 70%,var(--c1)));color:#fff;display:flex;align-items:center;gap:10px;padding:12px 14px 14px}
.chat .av{width:42px;height:42px;border-radius:50%;background:var(--c1);color:var(--on1);display:grid;place-items:center;font:800 16px var(--fh);border:2px solid var(--c2);flex:none;overflow:hidden}
.chat .av img{width:100%;height:100%;object-fit:contain}
.chat .hd b{display:block;font:700 15px var(--fh)}.chat .hd small{font-size:11px;opacity:.75}.chat .hd small::before{content:"● ";color:#38d27a}
.chat .hd .sp{flex:1}.chat .hd button{background:#ffffff1a;border:0;color:#fff;width:36px;height:36px;border-radius:12px;cursor:pointer;display:grid;place-items:center;flex:none}
.chat .body{padding:14px 12px 96px}
.chat .m{max-width:86%;margin-bottom:10px;font-size:14px;line-height:1.45}
.chat .m.b{background:var(--sf);border-radius:4px var(--r) var(--r) var(--r);padding:11px 13px;box-shadow:0 2px 6px #0000000d}
.chat .m.u{margin-left:auto;background:var(--c1);color:var(--on1);border-radius:var(--r) 4px var(--r) var(--r);padding:10px 13px;width:fit-content}
.chat .chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.chat .chips button{background:var(--sf);border:1.5px solid var(--c1);color:var(--c1);border-radius:20px;padding:7px 12px;font:600 12px var(--fb);cursor:pointer}
.chat .pc{background:var(--sf);border-radius:var(--r);margin:0 0 10px;max-width:86%;overflow:hidden;box-shadow:0 2px 6px #0000000d}
.chat .pc .t{display:flex;gap:10px;padding:10px;align-items:center;cursor:pointer}
.chat .pc img{width:56px;height:56px;object-fit:contain;border-radius:12px;flex:none}
.chat .pc b{font:700 13.5px var(--fh);display:block}.chat .pc span{font-size:11.5px;color:var(--mut)}
.chat .pc .a{display:flex;border-top:1px solid var(--line)}
.chat .pc .a button{flex:1;background:none;border:0;padding:10px;font:700 11.5px var(--fb);color:var(--c1);cursor:pointer}
.chat .pc .a button+button{border-left:1px solid var(--line)}
.chat .inp{position:absolute;left:0;right:0;bottom:0;background:var(--sf);display:flex;align-items:center;gap:8px;padding:10px 12px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}
.chat .inp input{flex:1;border:0;background:var(--bg);border-radius:22px;padding:12px 16px;font:500 15px var(--fb);outline:0;color:var(--ink);min-width:0}
.chat .inp button{width:44px;height:44px;border-radius:50%;background:var(--c1);color:var(--on1);border:0;cursor:pointer;display:grid;place-items:center;flex:none}
.chat .sheet{background:var(--sf);border-radius:calc(var(--r)*1.3);padding:16px;margin-top:4px}
.chat .sheet>img{width:100%;height:180px;object-fit:contain;border-radius:16px}
.chat .sheet h1{font:800 21px var(--fh);margin:12px 0 2px}
.chat .sheet p{font-size:13.5px;line-height:1.5;color:var(--mut)}.chat .sheet h4{margin:14px 0 2px;font:700 12px var(--fh);color:var(--c1);text-transform:uppercase;letter-spacing:.5px}
.chat .btn{display:block;width:100%;text-align:center;padding:14px;border-radius:14px;background:var(--c1);color:var(--on1);border:0;font:700 14px var(--fb);cursor:pointer;text-decoration:none;margin-top:8px}
.chat .btn.o{background:var(--t1);color:var(--dk)}.chat .btn.wa{background:#1fa855;color:#fff}
.chat .gt{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.chat .gt button{background:var(--sf);border:0;border-radius:var(--r);padding:16px 12px;text-align:left;font:700 13px var(--fb);cursor:pointer;color:var(--ink);box-shadow:0 2px 6px #0000000d}
.chat .gt em{display:block;font-style:normal;font-weight:500;font-size:11px;color:var(--mut);margin-top:4px}
.chat .mt{width:100%;border-collapse:collapse;font-size:12px;margin-top:6px}.chat .mt td{padding:6px 4px;border-top:1px solid var(--line);vertical-align:top}.chat .mt td:first-child{font-weight:700;color:var(--c1);width:70px}
.chat .f{border:0}

/* ============ SELECTOR ============ */
.selector{--sw:1.8;--lc:butt;--lj:miter}
.selector .mono{font-family:'IBM Plex Mono',ui-monospace,monospace}
.selector .hd{background:var(--dk);color:#fff;padding:12px 16px 0}
.selector .hd .l{display:flex;align-items:center;gap:10px}
.selector .logo{font:700 24px var(--fh);letter-spacing:3px;text-transform:uppercase}.selector .hd small{font:400 11px 'IBM Plex Mono',monospace;color:var(--c2)}
.selector .hd .bk2{background:none;border:0;color:#fff;cursor:pointer;padding:0}
.selector .tabs{display:flex;margin-top:12px}
.selector .tabs button{flex:1;background:none;border:0;color:var(--c2);padding:10px 0 12px;font:600 11px 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:1px;cursor:pointer;border-bottom:3px solid transparent}
.selector .tabs button.on{color:#fff;border-color:var(--c2);background:#ffffff14}
.selector .body{padding:14px 14px 40px}
.selector .flt{background:var(--sf);border:1px solid var(--line);padding:12px;border-radius:var(--r)}
.selector .flt label{display:block;font:600 10px 'IBM Plex Mono',monospace;letter-spacing:1px;text-transform:uppercase;color:var(--mut);margin-bottom:4px}
.selector .flt select,.selector .flt input{width:100%;padding:9px;border:1px solid var(--line);font:15px var(--fb);background:var(--bg);color:var(--ink);margin-bottom:10px;border-radius:var(--r)}
.selector .ch{display:flex;flex-wrap:wrap;gap:6px}.selector .ch button{border:1px solid var(--c1);background:var(--sf);color:var(--c1);font:600 11px 'IBM Plex Mono',monospace;padding:5px 8px;cursor:pointer;border-radius:var(--r)}
.selector .ch button.on{background:var(--c1);color:var(--on1)}
.selector .cnt{font:600 11px 'IBM Plex Mono',monospace;color:var(--mut);margin:14px 0 6px;display:flex;justify-content:space-between}
.selector table{width:100%;border-collapse:collapse;background:var(--sf);font-size:12.5px}
.selector th{background:var(--c1);color:var(--on1);font:600 10px 'IBM Plex Mono',monospace;letter-spacing:1px;text-transform:uppercase;text-align:left;padding:7px 8px}
.selector td{border-bottom:1px solid var(--line);padding:9px 8px;vertical-align:top}
.selector tr.r{cursor:pointer}.selector tr.r:hover td{background:var(--t1)}
.selector td b{font:600 13px var(--fh);display:block}.selector td small{font:10px 'IBM Plex Mono',monospace;color:var(--mut)}
.selector .code{font:600 11px 'IBM Plex Mono',monospace;color:var(--c1);letter-spacing:1px}
.selector .ds{background:var(--sf);border:1px solid var(--line)}
.selector .ds .top{display:flex;gap:12px;padding:14px;border-bottom:1px solid var(--line)}
.selector .ds .top img{width:96px;height:110px;object-fit:contain;border:1px solid var(--line);flex:none}
.selector .ds h1{font:700 21px/1.1 var(--fh);margin:4px 0}
.selector .dtabs{display:flex;border-bottom:1px solid var(--line);overflow-x:auto}
.selector .dtabs button{flex:none;background:none;border:0;padding:10px 12px;font:600 10.5px 'IBM Plex Mono',monospace;text-transform:uppercase;color:var(--mut);cursor:pointer;border-bottom:2px solid transparent}
.selector .dtabs button.on{color:var(--c1);border-color:var(--c1)}
.selector .kv{display:grid;grid-template-columns:96px 1fr;font-size:13px;border-bottom:1px solid var(--line)}
.selector .kv b{font:600 10px 'IBM Plex Mono',monospace;text-transform:uppercase;color:var(--mut);padding:10px;background:var(--bg)}.selector .kv span{padding:10px;line-height:1.45}
.selector .btns{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:12px}
.selector .btn{display:block;width:100%;text-align:center;padding:12px;background:var(--c1);color:var(--on1);border:0;font:600 12px 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;text-decoration:none;border-radius:var(--r);margin-top:6px}
.selector .btns .btn{margin-top:0}
.selector .btn.o{background:var(--sf);color:var(--c1);border:1px solid var(--c1)}.selector .btn.wa{background:#1fa855;color:#fff}
.selector h2{font:700 16px var(--fh);margin:6px 0 10px}
.selector .us{background:var(--t1)}

/* ============ ACCIONES ============ */
.acciones{--sw:2.2}
.acciones .hd{padding:12px 18px 8px}
.acciones .hd .l{display:flex;justify-content:space-between;align-items:center}
.acciones .logo{min-width:58px;height:40px;padding:0 10px;border-radius:50%;background:var(--c1);color:var(--on1);font:900 15px var(--fh);display:grid;place-items:center;transform:rotate(-6deg)}
.acciones .who{font:800 13px var(--fb);color:var(--mut);text-align:right}.acciones .who b{display:block;color:var(--ink);font-size:15px}
.acciones .rb{background:var(--sf);border:0;border-radius:50%;width:40px;height:40px;cursor:pointer;box-shadow:0 2px 8px #0001;color:var(--ink)}
.acciones .brands{display:flex;gap:8px;overflow-x:auto;margin-top:14px}.acciones .brands::-webkit-scrollbar{height:0}
.acciones .brands button{flex:none;border:0;background:var(--sf);border-radius:30px;padding:9px 16px;font:800 13px var(--fb);cursor:pointer;box-shadow:0 1px 4px #0000000f;color:var(--mut)}
.acciones .brands button.on{background:var(--dk);color:#fff}
.acciones .body{padding:6px 18px 110px}
.acciones h1{font:900 28px/1.05 var(--fh);margin:10px 0 16px;letter-spacing:-.5px}.acciones h1 span{color:var(--c1)}
.acciones .do{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.acciones .do button{aspect-ratio:1;border:0;border-radius:calc(var(--r)*1.1);background:var(--sf);box-shadow:0 4px 16px #0000000d;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:18px;font:900 19px var(--fh);cursor:pointer;color:var(--ink);text-align:left}
.acciones .do button:first-child{background:var(--c1);color:var(--on1)}
.acciones .do em{font-style:normal;font:700 12px var(--fb);opacity:.6}
.acciones .do .ic{width:34px;height:34px}
.acciones .pc{background:var(--sf);border-radius:var(--r);padding:12px;margin-bottom:12px;box-shadow:0 4px 16px #0000000d;display:flex;gap:12px;align-items:center;cursor:pointer}
.acciones .pc img{width:76px;height:76px;object-fit:contain;border-radius:calc(var(--r)*.75);flex:none}
.acciones .pc b{font:900 16px var(--fh);display:block}.acciones .pc span{font-size:12.5px;color:var(--mut)}
.acciones .bc{display:inline-block;font:800 11px var(--fb);background:var(--t1);color:var(--c1);border-radius:20px;padding:2px 9px;margin-bottom:3px}
.acciones .fn{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(20px + env(safe-area-inset-bottom,0px));background:var(--dk);border-radius:40px;display:flex;gap:4px;padding:6px;z-index:6}
.acciones .fn button{border:0;background:none;color:#aaa;border-radius:30px;padding:10px 14px;cursor:pointer;display:flex;align-items:center;gap:6px;font:800 12px var(--fb)}
.acciones .fn button.on{background:var(--c1);color:var(--on1)}
.acciones .big{background:var(--sf);border-radius:calc(var(--r)*1.3);padding:16px;box-shadow:0 4px 16px #0000000d;text-align:center}
.acciones .big img{width:100%;height:200px;object-fit:contain;border-radius:var(--r)}
.acciones .big h2{font:900 26px var(--fh);margin:12px 0 4px}
.acciones .info{background:var(--sf);border-radius:var(--r);padding:16px;margin-top:12px;font-size:14px;line-height:1.5;box-shadow:0 4px 16px #0000000d}
.acciones .info b{display:block;font:900 13px var(--fh);color:var(--c1);margin-bottom:2px}
.acciones .btn{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;padding:16px;border-radius:40px;background:var(--c1);color:var(--on1);border:0;font:900 15px var(--fb);cursor:pointer;text-decoration:none;margin-top:10px}
.acciones .btn.o{background:var(--sf);color:var(--ink);box-shadow:0 4px 16px #0000000d}.acciones .btn.wa{background:#1fa855;color:#fff}
.acciones .tg{display:flex;background:var(--line);border-radius:40px;padding:4px;margin:12px 0}
.acciones .tg button{flex:1;border:0;background:none;border-radius:40px;padding:10px;font:800 13px var(--fb);cursor:pointer;color:var(--ink)}.acciones .tg button.on{background:var(--sf);box-shadow:0 1px 4px #0002}
.acciones .f{border:0;box-shadow:0 4px 16px #0000000d}
.acciones .srch{display:flex;align-items:center;gap:8px;background:var(--sf);border-radius:30px;padding:4px 16px;box-shadow:0 4px 16px #0000000d;margin-bottom:14px}
.acciones .srch input{border:0;outline:0;flex:1;padding:12px 0;font:700 15px var(--fb);background:none;color:var(--ink);min-width:0}

/* ============ RECOMENDADOR ============ */
.recomendador{--sw:2}
.recomendador .hd{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--sf);border-bottom:1px solid var(--line)}
.recomendador .hd .sp{flex:1}.recomendador .hd .t{font:800 16px var(--fh);color:var(--c1)}
.recomendador .ib{background:var(--t1);border:0;color:var(--c1);width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer}
.recomendador .body{padding:18px 18px 40px}
.recomendador .hero{background:var(--c1);color:var(--on1);border-radius:calc(var(--r)*1.4);padding:22px 20px;position:relative;overflow:hidden}
.recomendador .hero::after{content:"";position:absolute;right:-40px;top:-40px;width:160px;height:160px;border-radius:50%;background:#ffffff1f}
.recomendador .hero small{font:700 11px var(--fb);letter-spacing:1.5px;text-transform:uppercase;opacity:.85}
.recomendador .hero h1{font:800 27px/1.1 var(--fh);margin:8px 0 8px}
.recomendador .hero p{margin:0 0 16px;font-size:14px;opacity:.92}
.recomendador .go{background:var(--on1);color:var(--c1);border:0;border-radius:40px;padding:14px 22px;font:800 15px var(--fb);cursor:pointer;display:inline-flex;gap:8px;align-items:center}
.recomendador h2{font:800 17px var(--fh);margin:24px 0 10px}
.recomendador .prog{height:6px;background:var(--line);border-radius:6px;overflow:hidden;margin-bottom:18px}.recomendador .prog i{display:block;height:100%;background:var(--c1);border-radius:6px;transition:.3s}
.recomendador .qn{font:700 12px var(--fb);color:var(--c1);letter-spacing:1px;text-transform:uppercase}
.recomendador .qq{font:800 25px/1.15 var(--fh);margin:6px 0 18px}
.recomendador .opt{display:flex;gap:14px;align-items:center;width:100%;text-align:left;background:var(--sf);border:2px solid var(--line);border-radius:var(--r);padding:16px;margin-bottom:10px;cursor:pointer;color:var(--ink);transition:.15s}
.recomendador .opt:hover{border-color:var(--c1)}.recomendador .opt.on{border-color:var(--c1);background:var(--t1)}
.recomendador .opt .l{width:38px;height:38px;border-radius:50%;background:var(--t1);color:var(--c1);display:grid;place-items:center;font:800 15px var(--fh);flex:none}
.recomendador .opt b{display:block;font:700 16px var(--fh)}.recomendador .opt em{font-style:normal;font-size:12.5px;color:var(--mut)}
.recomendador .nav2{display:flex;justify-content:space-between;margin-top:8px}
.recomendador .lnk{background:none;border:0;color:var(--mut);font:600 14px var(--fb);cursor:pointer;padding:8px 0}
.recomendador .res{background:var(--sf);border-radius:calc(var(--r)*1.3);overflow:hidden;box-shadow:0 8px 30px #0000001a}
.recomendador .res .top{background:var(--c1);color:var(--on1);padding:12px 16px;font:800 12px var(--fb);letter-spacing:1px;text-transform:uppercase;display:flex;justify-content:space-between}
.recomendador .res .in{padding:16px;display:flex;gap:14px;align-items:center}
.recomendador .res img{width:110px;height:120px;object-fit:contain;border-radius:12px;flex:none}
.recomendador .res h1{font:800 22px/1.1 var(--fh);margin:0 0 4px}
.recomendador .match{height:8px;background:var(--line);border-radius:6px;margin:8px 0 4px;overflow:hidden}.recomendador .match i{display:block;height:100%;background:#1f9d55}
.recomendador .why{padding:0 16px 14px}.recomendador .why li{font-size:13.5px;margin:4px 0;list-style:none}.recomendador .why li::before{content:"✓ ";color:#1f9d55;font-weight:800}
.recomendador .why ul{padding:0;margin:0}
.recomendador .btn{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;padding:15px;border-radius:40px;border:0;background:var(--c1);color:var(--on1);font:800 15px var(--fb);cursor:pointer;text-decoration:none;margin-top:10px}
.recomendador .btn.o{background:var(--sf);color:var(--ink);border:2px solid var(--line)}.recomendador .btn.wa{background:#1fa855;color:#fff}
.recomendador .alt{display:flex;gap:12px;align-items:center;background:var(--sf);border-radius:var(--r);padding:10px;margin-bottom:8px;cursor:pointer;border:1px solid var(--line)}
.recomendador .alt img{width:56px;height:56px;object-fit:contain;border-radius:10px;flex:none}
.recomendador .alt b{display:block;font:700 14px var(--fh)}.recomendador .alt span{font-size:12px;color:var(--mut)}
.recomendador .pct{margin-left:auto;font:800 14px var(--fh);color:#1f9d55}
.recomendador .comp{border:2px dashed var(--c1);border-radius:var(--r);padding:12px;display:flex;gap:12px;align-items:center;cursor:pointer;margin-top:10px}
.recomendador .comp img{width:50px;height:50px;object-fit:contain;flex:none}
.recomendador .sheet{position:absolute;inset:0;background:#0007;z-index:30;display:flex;align-items:flex-end}
.recomendador .sheet>div{background:var(--sf);width:100%;border-radius:22px 22px 0 0;padding:10px 20px calc(24px + env(safe-area-inset-bottom,0px))}
.recomendador .sheet .grab{width:40px;height:5px;border-radius:3px;background:var(--line);margin:0 auto 10px}
.recomendador .info{background:var(--sf);border-radius:var(--r);padding:14px;margin-top:10px;font-size:14px;line-height:1.5;border:1px solid var(--line)}
.recomendador .info b{display:block;font:800 12px var(--fb);color:var(--c1);text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}
.recomendador .srch{display:flex;align-items:center;gap:8px;background:var(--sf);border:2px solid var(--line);border-radius:40px;padding:2px 16px;margin-bottom:14px}
.recomendador .srch input{border:0;outline:0;flex:1;padding:12px 0;font:600 15px var(--fb);background:none;color:var(--ink);min-width:0}
.recomendador .hs{display:flex;gap:10px;overflow-x:auto}.recomendador .hs::-webkit-scrollbar{height:0}
.recomendador .hs div{flex:none;width:130px;background:var(--sf);border-radius:var(--r);padding:10px;cursor:pointer;border:1px solid var(--line)}
.recomendador .hs img{width:100%;height:100px;object-fit:contain;border-radius:8px}.recomendador .hs b{font:700 13px var(--fh);display:block;margin-top:6px}

/* ============ ESPECIFICADOR ============ */
.scr.especificador{max-width:1200px;--sw:1.5}
.especificador .hd{display:flex;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);background:var(--sf)}
.especificador .hd .ttl{font:600 12px var(--fb);letter-spacing:2px;text-transform:uppercase;color:var(--mut);border-left:1px solid var(--line);padding-left:12px}
.especificador .hd .sp{flex:1}
.especificador .pj{display:flex;align-items:center;gap:8px;border:1px solid var(--dk);background:var(--sf);color:var(--dk);padding:8px 12px;border-radius:var(--r);font:600 12px var(--fb);cursor:pointer;letter-spacing:.5px;text-transform:uppercase}
.especificador .pj b{background:var(--c1);color:var(--on1);border-radius:10px;padding:0 6px}
.especificador .body{display:flex;flex-direction:column}
.especificador .wrapx{display:grid;grid-template-columns:1fr;flex:1}
.especificador .sideb{display:none;border-right:1px solid var(--line);padding:18px 0;background:var(--sf)}
.especificador .sideb button{display:flex;gap:10px;align-items:center;width:100%;background:none;border:0;border-left:3px solid transparent;padding:11px 18px;font:500 13.5px var(--fb);color:var(--ink);cursor:pointer;text-align:left}
.especificador .sideb button.on{border-left-color:var(--c1);color:var(--c1);font-weight:700;background:var(--t1)}
.especificador .sideb h5{margin:16px 18px 6px;font:600 10px var(--fb);letter-spacing:1.5px;text-transform:uppercase;color:var(--mut)}
.especificador .tabsm{display:flex;overflow-x:auto;border-bottom:1px solid var(--line);background:var(--sf)}.especificador .tabsm::-webkit-scrollbar{height:0}
.especificador .tabsm button{flex:none;background:none;border:0;border-bottom:2px solid transparent;padding:12px 14px;font:600 12px var(--fb);letter-spacing:1px;text-transform:uppercase;color:var(--mut);cursor:pointer}
.especificador .tabsm button.on{color:var(--c1);border-color:var(--c1)}
.especificador .cont{padding:20px 18px 40px;min-width:0}
.especificador h1{font:300 28px/1.15 var(--fh);margin:0 0 6px;letter-spacing:-.3px}.especificador h1 b{font-weight:700}
.especificador .lead{color:var(--mut);font-size:14px;margin:0 0 18px;max-width:640px}
.especificador .lbl{font:600 10.5px var(--fb);letter-spacing:1.5px;text-transform:uppercase;color:var(--mut);margin:16px 0 8px}
.especificador .srch{display:flex;align-items:center;gap:8px;border:1px solid var(--dk);border-radius:var(--r);padding:0 12px;background:var(--sf);max-width:620px}
.especificador .srch input{border:0;outline:0;flex:1;padding:12px 0;font:15px var(--fb);background:none;color:var(--ink);min-width:0}
.especificador .chips{display:flex;flex-wrap:wrap;gap:6px}
.especificador .chips button{border:1px solid var(--line);background:var(--sf);border-radius:var(--r);padding:7px 11px;font:500 12.5px var(--fb);cursor:pointer;color:var(--ink)}
.especificador .chips button.on{background:var(--dk);border-color:var(--dk);color:#fff}
.especificador .grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-top:16px}
.especificador .pc{background:var(--sf);padding:14px;cursor:pointer;display:flex;flex-direction:column;gap:6px;position:relative}
.especificador .pc:hover{background:var(--t1)}
.especificador .pc img{width:100%;height:120px;object-fit:contain}
.especificador .pc b{font:700 14px var(--fh)}.especificador .pc span{font-size:12px;color:var(--mut);line-height:1.3}
.especificador .bd{display:flex;flex-wrap:wrap;gap:4px}.especificador .bd i{font:600 10px var(--fb);font-style:normal;letter-spacing:.5px;text-transform:uppercase;border:1px solid var(--c1);color:var(--c1);padding:2px 6px;border-radius:2px}
.especificador .add{position:absolute;top:8px;right:8px;width:30px;height:30px;border:1px solid var(--line);background:var(--sf);border-radius:var(--r);cursor:pointer;color:var(--c1);font:700 16px var(--fb)}
.especificador .add.on{background:var(--c1);color:var(--on1);border-color:var(--c1)}
.especificador .crumb{font:500 12px var(--fb);color:var(--mut);margin-bottom:12px}.especificador .crumb a{color:var(--c1);cursor:pointer}
.especificador .two{display:grid;grid-template-columns:1fr;gap:20px}
.especificador .pimg{border:1px solid var(--line);background:#fff;display:grid;place-items:center;height:240px}.especificador .pimg img{max-height:210px;max-width:90%;object-fit:contain}
.especificador table{width:100%;border-collapse:collapse;font-size:13.5px}
.especificador td{border-bottom:1px solid var(--line);padding:10px 8px;vertical-align:top;line-height:1.45}
.especificador td:first-child{font:600 10.5px var(--fb);letter-spacing:1px;text-transform:uppercase;color:var(--mut);width:120px}
.especificador th{font:600 10.5px var(--fb);letter-spacing:1px;text-transform:uppercase;color:var(--mut);text-align:left;padding:8px;border-bottom:2px solid var(--dk)}
.especificador .spec{border:1px solid var(--dk);border-left:4px solid var(--c1);padding:14px;font:13px/1.6 'IBM Plex Mono',ui-monospace,monospace;background:var(--sf);white-space:pre-wrap;margin-top:8px}
.especificador .btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.especificador .btn{display:inline-flex;align-items:center;gap:8px;justify-content:center;padding:11px 16px;border-radius:var(--r);border:1px solid var(--dk);background:var(--dk);color:#fff;font:600 13px var(--fb);cursor:pointer;text-decoration:none;letter-spacing:.3px}
.especificador .btn.p{background:var(--c1);border-color:var(--c1);color:var(--on1)}.especificador .btn.o{background:var(--sf);color:var(--dk)}.especificador .btn.wa{background:#1fa855;border-color:#1fa855;color:#fff}
.especificador .gpad .btn{width:100%;margin-top:4px}
.especificador .prow{display:grid;grid-template-columns:56px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.especificador .prow img{width:56px;height:56px;object-fit:contain;border:1px solid var(--line)}
.especificador .prow b{font:700 14px var(--fh);display:block}.especificador .prow span{font-size:12px;color:var(--mut)}
.especificador .x{background:none;border:1px solid var(--line);border-radius:var(--r);width:32px;height:32px;cursor:pointer;color:var(--mut)}
.especificador .empty{border:1px dashed var(--line);padding:24px;text-align:center;color:var(--mut);font-size:14px}
@media(min-width:900px){.especificador .wrapx{grid-template-columns:230px 1fr}.especificador .sideb{display:block}.especificador .tabsm{display:none}.especificador .two{grid-template-columns:minmax(260px,380px) 1fr}.especificador .cont{padding:28px 32px 50px}.especificador h1{font-size:34px}}
@media print{body{background:#fff;overflow:visible}.scr{height:auto;overflow:visible;max-width:none}.scr .body{overflow:visible}.especificador .hd,.especificador .sideb,.especificador .tabsm,.especificador .btns,.especificador .x,.toast{display:none!important}}

/* ============ VITRINA ============ */
.vitrina{--sw:1.9}
.vitrina .hd{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;padding:10px 12px;background:var(--sf)}
.vitrina .hd .c{display:flex;justify-content:center}.vitrina .hd .c .logo{font:800 22px var(--fh);letter-spacing:-.5px;color:var(--ink)}
.vitrina .hd button{background:none;border:0;color:var(--ink);cursor:pointer;width:44px;height:44px;display:grid;place-items:center;position:relative}
.vitrina .hd button i{position:absolute;top:6px;right:4px;background:var(--c1);color:var(--on1);border-radius:9px;font:700 10px var(--fb);padding:0 5px;font-style:normal}
.vitrina .body{padding:0 0 96px;background:var(--bg)}
.vitrina .stories{display:flex;gap:14px;overflow-x:auto;padding:12px 14px 14px;background:var(--sf);border-bottom:1px solid var(--line)}.vitrina .stories::-webkit-scrollbar{height:0}
.vitrina .story{flex:none;width:72px;text-align:center;cursor:pointer;background:none;border:0;color:var(--ink);padding:0}
.vitrina .ring{width:70px;height:70px;border-radius:50%;padding:3px;background:conic-gradient(var(--c1),var(--c2),var(--c1))}
.vitrina .ring img{width:100%;height:100%;border-radius:50%;object-fit:contain;border:3px solid var(--sf)}
.vitrina .story span{display:block;font:600 11px var(--fb);margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vitrina .ttl{display:flex;justify-content:space-between;align-items:baseline;padding:16px 14px 8px}.vitrina .ttl h2{margin:0;font:800 19px var(--fh)}.vitrina .ttl span{font-size:12px;color:var(--mut)}
.vitrina .mas{columns:2;column-gap:10px;padding:0 12px}
.vitrina .tile{break-inside:avoid;margin-bottom:10px;background:var(--sf);border-radius:var(--r);overflow:hidden;cursor:pointer;position:relative;box-shadow:0 2px 10px #0000000d}
.vitrina .tile img{width:100%;object-fit:contain;display:block;padding:10px}
.vitrina .tile .tx{padding:0 10px 10px}.vitrina .tile b{font:700 13.5px var(--fh);display:block;line-height:1.2}.vitrina .tile span{font-size:11px;color:var(--mut)}
.vitrina .heart{position:absolute;top:8px;right:8px;width:32px;height:32px;border-radius:50%;background:#ffffffe6;border:0;display:grid;place-items:center;cursor:pointer;color:#999}
.vitrina .heart.on{color:var(--c1)}.vitrina .heart.on svg{fill:currentColor}
.vitrina .bn{position:absolute;left:0;right:0;bottom:0;background:var(--sf);display:flex;justify-content:space-around;padding:10px 0 calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--line)}
.vitrina .bn button{background:none;border:0;color:var(--mut);cursor:pointer;position:relative;padding:6px 12px}
.vitrina .bn button.on{color:var(--c1)}.vitrina .bn button.on::after{content:"";position:absolute;bottom:-4px;left:50%;width:5px;height:5px;border-radius:50%;background:var(--c1);transform:translateX(-50%)}
.vitrina .pv{position:relative;background:#fff;height:340px;display:grid;place-items:center}.vitrina .pv img{max-height:300px;max-width:85%;object-fit:contain}
.vitrina .pv .bk{position:absolute;top:12px;left:12px;width:40px;height:40px;border-radius:50%;background:#fffe;border:0;cursor:pointer;box-shadow:0 2px 8px #0002;display:grid;place-items:center}
.vitrina .pv .heart{top:12px;right:12px;width:40px;height:40px}
.vitrina .sh{background:var(--sf);border-radius:24px 24px 0 0;margin-top:-22px;position:relative;padding:20px 18px 24px}
.vitrina .sh h1{font:800 25px/1.1 var(--fh);margin:0 0 4px}
.vitrina .tags{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.vitrina .tags span{background:var(--t1);color:var(--c1);border-radius:20px;padding:4px 10px;font:700 11.5px var(--fb)}
.vitrina .sh p{font-size:14px;line-height:1.55;color:var(--mut);margin:6px 0}
.vitrina .sh h4{margin:16px 0 4px;font:800 13px var(--fh)}
.vitrina .btn{display:flex;justify-content:center;align-items:center;gap:8px;width:100%;padding:15px;border-radius:var(--r);border:0;background:var(--c1);color:var(--on1);font:800 15px var(--fb);cursor:pointer;text-decoration:none;margin-top:10px}
.vitrina .btn.o{background:var(--bg);color:var(--ink)}.vitrina .btn.wa{background:#1fa855;color:#fff}
.vitrina .row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}
.vitrina .like{display:flex;gap:10px;overflow-x:auto;margin-top:8px}.vitrina .like::-webkit-scrollbar{height:0}
.vitrina .like div{flex:none;width:110px;cursor:pointer}.vitrina .like img{width:110px;height:110px;object-fit:contain;border-radius:var(--r);border:1px solid var(--line)}
.vitrina .like b{font:700 12px var(--fh);display:block;margin-top:4px}.vitrina .like span{font-size:11px;color:var(--mut)}
.vitrina .st{position:absolute;inset:0;background:#000;z-index:40;color:#fff;display:flex;flex-direction:column}
.vitrina .st .bars{display:flex;gap:4px;padding:14px 12px 8px}.vitrina .st .bars i{flex:1;height:3px;background:#ffffff55;border-radius:2px}.vitrina .st .bars i.on{background:#fff}
.vitrina .st .who{display:flex;align-items:center;gap:10px;padding:0 14px;font:700 14px var(--fb)}
.vitrina .st .who button{margin-left:auto;background:none;border:0;color:#fff;font-size:26px;cursor:pointer}
.vitrina .st .img{flex:1;display:grid;place-items:center;position:relative}
.vitrina .st .img img{max-width:80%;max-height:55vh;object-fit:contain;border-radius:18px;padding:14px}
.vitrina .st .tapl,.vitrina .st .tapr{position:absolute;top:0;bottom:0;width:40%;cursor:pointer}.vitrina .st .tapl{left:0}.vitrina .st .tapr{right:0}
.vitrina .st .cap{padding:16px 20px calc(24px + env(safe-area-inset-bottom,0px))}
.vitrina .st .cap h3{margin:0 0 6px;font:800 24px var(--fh)}.vitrina .st .cap p{margin:0 0 14px;opacity:.85;font-size:14px}
.vitrina .srch{display:flex;align-items:center;gap:8px;background:var(--sf);border-radius:40px;padding:2px 16px;margin:12px;border:1px solid var(--line)}
.vitrina .srch input{border:0;outline:0;flex:1;padding:12px 0;font:600 15px var(--fb);background:none;color:var(--ink);min-width:0}
.vitrina .pad{padding:14px}
