/* =====================================================================
   CAPTURA · móvil primero: campos grandes, texto grande, pulgar cómodo
   ===================================================================== */
.g2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media(max-width:380px){.g2{grid-template-columns:1fr}}

.cap{max-width:760px;margin:0 auto;padding:0 16px calc(120px + var(--safe-b))}
.cap-top{position:sticky;top:0;z-index:30;margin:0 -16px;padding:calc(10px + var(--safe-t)) 16px 10px;display:flex;align-items:center;gap:12px;background:linear-gradient(180deg,rgba(46,5,17,.96),rgba(46,5,17,.82));backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.cap-top .logo{height:40px;width:auto;display:block}
.cap-top .tt{flex:1;min-width:0;line-height:1.15}
.cap-top .tt b{display:block;font-size:.8rem;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-300)}
.cap-top .tt span{font-size:.74rem;color:var(--ink-2);display:flex;align-items:center;gap:7px}
.hero-cap{padding:22px 4px 8px}
.hero-cap h1{font-family:var(--f-title);font-size:1.45rem;color:var(--gold-200);line-height:1.25}
.hero-cap p{color:var(--ink-2);font-size:.92rem;margin-top:6px}

/* Botón de voz principal */
.voz-cta{display:flex;align-items:center;gap:16px;width:100%;padding:18px 20px;margin:14px 0 8px;border-radius:26px;text-align:left;background:linear-gradient(135deg,#f0dfbf 0%,#d5b27c 40%,#b98f55 70%,#e4cba0 100%);color:#3a0716;box-shadow:0 22px 44px -16px rgba(197,158,103,.65),0 1px 0 rgba(255,255,255,.7) inset;transition:transform .15s var(--ease);position:relative;overflow:hidden}
.voz-cta:active{transform:scale(.985)}
.voz-cta::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.45) 50%,transparent 70%);transform:translateX(-120%);animation:brillo 4.5s infinite}
@keyframes brillo{40%,100%{transform:translateX(120%)}}
.voz-cta .mic{flex:none;width:68px;height:68px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(160deg,#6a0f2a,#3a0716);color:var(--gold-200);box-shadow:0 8px 20px -6px rgba(58,7,22,.7),0 0 0 6px rgba(58,7,22,.12)}
.voz-cta b{display:block;font-size:1.28rem;font-weight:800;letter-spacing:.01em}
.voz-cta small{display:block;font-size:.84rem;font-weight:600;opacity:.8;margin-top:2px}

.o-sep{display:flex;align-items:center;gap:12px;margin:18px 0 6px;color:var(--ink-3);font-size:.72rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
.o-sep::before,.o-sep::after{content:"";flex:1;height:1px;background:var(--line)}

/* Formulario */
.form{display:flex;flex-direction:column;gap:20px;margin-top:14px}
.form .field>label{font-size:.78rem}
.form .inp,.form .sel,.form .txa{font-size:1.12rem;padding:16px 18px;border-radius:18px}
.form .txa{min-height:132px;line-height:1.6}
.form .txa.tall{min-height:200px}
.form .txa.nombre{min-height:84px;font-weight:700;font-size:1.2rem}
.form .txa.short{min-height:92px}
.field-tools{display:flex;align-items:center;gap:8px;margin-top:2px;flex-wrap:wrap}
.tool{display:inline-flex;align-items:center;gap:7px;min-height:42px;padding:0 15px;border-radius:999px;font-size:.82rem;font-weight:700;border:1px solid var(--line-2);background:var(--glass);color:var(--ink);transition:transform .12s,background .15s}
.tool:active{transform:scale(.95)}
.tool:hover{background:var(--glass-2)}
.tool.mic-t{background:rgba(213,178,124,.14);border-color:rgba(213,178,124,.55);color:var(--gold-200)}
.tool.ia-t{background:rgba(157,152,255,.12);border-color:rgba(157,152,255,.45);color:#cfccff}
.tool.undo-t{background:rgba(236,93,112,.1);border-color:rgba(236,93,112,.45);color:#ffb3bd}
.tool[disabled]{opacity:.5;pointer-events:none}
.tool.just-fixed{animation:okflash 1s}
@keyframes okflash{30%{box-shadow:0 0 0 6px rgba(76,195,138,.35)}}
.field-count{font-weight:600;letter-spacing:0;text-transform:none;color:var(--ink-3);font-size:.72rem}

/* Segmentado grande (Nivel / Estado) */
.seg{display:grid;gap:8px}
.seg.c4{grid-template-columns:repeat(2,1fr)}
.seg.c5{grid-template-columns:repeat(2,1fr)}
@media(min-width:520px){.seg.c4{grid-template-columns:repeat(4,1fr)}.seg.c5{grid-template-columns:repeat(5,1fr)}}
.seg button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:72px;padding:10px 6px;border-radius:18px;border:1.5px solid var(--line-2);background:rgba(15,2,6,.4);font-weight:700;font-size:.9rem;color:var(--ink-2);transition:all .18s var(--ease)}
.seg button .ic{opacity:.8}
.seg button.on{color:#fff;transform:translateY(-1px)}
.seg button.on[data-c]{border-color:var(--c);background:color-mix(in srgb,var(--c) 22%,transparent);box-shadow:0 8px 22px -10px var(--c)}
.seg button.on .ic{color:var(--c);opacity:1}
.seg button:active{transform:scale(.96)}
.seg.c5 button:last-child:nth-child(odd){grid-column:1/-1}

/* Sugerencias */
.sugs{display:flex;gap:8px;overflow-x:auto;padding:2px 0 4px;margin:0 -2px;scrollbar-width:none}
.sugs::-webkit-scrollbar{display:none}
.sugs .chip{min-height:38px;font-size:.82rem;flex:none}

/* Barra de acción inferior */
.save-bar{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:12px 16px calc(12px + var(--safe-b));background:linear-gradient(180deg,rgba(31,3,11,0),rgba(31,3,11,.92) 28%);display:flex;justify-content:center;pointer-events:none}
.save-bar>div{pointer-events:auto;display:flex;gap:10px;width:min(760px,100%)}
.save-bar .btn-gold{flex:1;min-height:62px;font-size:1.1rem}
.save-bar .btn-icon{width:62px;height:62px;flex:none;background:rgba(36,4,14,.95)}

/* Recientes */
.recent{display:flex;flex-direction:column;gap:10px;margin-top:10px}
.rec{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:var(--glass);border:1px solid var(--line)}
.rec .rn{flex:1;min-width:0}
.rec .rn b{display:block;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rec .rn span{font-size:.76rem;color:var(--ink-3)}
.sync-pill{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:99px}
.sync-pill.ok{color:#72dba5;background:rgba(76,195,138,.12)}.sync-pill.pend{color:#f5c36a;background:rgba(240,178,75,.14)}
.banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:16px;font-size:.88rem;font-weight:600;margin-top:12px}
.banner.warn{background:rgba(240,178,75,.12);border:1px solid rgba(240,178,75,.4);color:#f5d391}
.banner.info{background:rgba(108,182,255,.1);border:1px solid rgba(108,182,255,.35);color:#b9dcff}

/* ===== Hoja de voz ===== */
.voz-sheet .sheet-b{padding-top:2px}
.voz-escucha{display:flex;flex-direction:column;align-items:center;gap:16px;padding:6px 0 4px}
.mic-orb{--lvl:0;position:relative;width:132px;height:132px;display:grid;place-items:center;margin:10px 0 4px}
.mic-orb span{position:relative;z-index:2;width:104px;height:104px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(160deg,#e4cba0,#b98f55);color:#3a0716;box-shadow:0 14px 34px -10px rgba(197,158,103,.8);transform:scale(calc(1 + var(--lvl)*.12));transition:transform .08s}
.mic-orb i{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(213,178,124,.5);opacity:0}
.mic-orb.on i{animation:onda 2.4s infinite}
.mic-orb.on i:nth-child(2){animation-delay:.8s}.mic-orb.on i:nth-child(3){animation-delay:1.6s}
@keyframes onda{0%{transform:scale(.8);opacity:.7}100%{transform:scale(1.5);opacity:0}}
.voz-estado{display:flex;align-items:center;gap:10px;font-size:.95rem}
.voz-estado .mono{color:var(--gold-300);font-weight:800}
.voz-live{width:100%;min-height:170px;max-height:34dvh;overflow:auto;padding:16px 18px;border-radius:20px;background:rgba(15,2,6,.5);border:1.5px solid var(--line-2);font-size:1.15rem;line-height:1.6;white-space:pre-wrap}
.voz-live .prov{color:var(--gold-300);opacity:.75}
.voz-live .ph{color:var(--ink-4)}
.voz-txa{font-size:1.12rem!important;min-height:220px}
.voz-proceso{display:flex;flex-direction:column;align-items:center;gap:14px;padding:46px 10px;text-align:center}
.voz-proceso .ic{color:var(--gold-400)}

/* ===== Login por rol ===== */
.rol-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}
.rol-tabs button{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;border-radius:16px;border:1.5px solid var(--line-2);background:rgba(15,2,6,.35);font-size:.76rem;font-weight:700;color:var(--ink-2);transition:all .18s}
.rol-tabs button.on{background:var(--gold-grad);color:#3a0716;border-color:transparent}
