/* T-Yel · estilos — © 2026 Yel Martínez · MIT
   Tipografías del sistema: no se carga ningún recurso externo. */
:root {
  --f-title: "Trebuchet MS", "Segoe UI", system-ui, -apple-system, sans-serif;
  --f-body: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html,body{width:100%;height:100%;overflow:hidden;background:#000;font-family:var(--f-body);user-select:none}

#tyel-wrap{width:100vw;height:100vh;height:100dvh;display:flex;flex-direction:column;overflow:hidden;position:fixed;top:0;left:0}

/* ── cabecera: anillas y línea de corte ── */
#tyel-header{flex-shrink:0;position:relative;z-index:1000;background:#252220;box-shadow:0 2px 12px rgba(0,0,0,.7)}
#rings-bar{height:48px;display:flex;align-items:center;justify-content:space-around;padding:0 28px}
.ring{width:26px;height:26px;border-radius:50%;border:4px solid #6a6560;background:radial-gradient(circle at 35% 35%,#5a5550,#2e2a28);box-shadow:inset 0 2px 5px rgba(0,0,0,.6),0 2px 8px rgba(0,0,0,.5);position:relative;flex-shrink:0}
.ring::after{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:9px;height:9px;border-radius:50%;background:#4a4844;box-shadow:inset 0 1px 3px rgba(0,0,0,.7)}
#cut-line{height:18px;background:#1e1b18;display:flex;align-items:center;padding:0 4px;position:relative;overflow:hidden}
#cut-line::before,#cut-line::after{content:'';position:absolute;width:12px;height:12px;border-radius:50%;background:#0a0806;top:50%;transform:translateY(-50%)}
#cut-line::before{left:-6px}
#cut-line::after{right:-6px}
.cut-inner{flex:1;border-top:2px dashed rgba(255,255,255,.2);position:relative;display:flex;align-items:center;justify-content:flex-end}
.cut-txt{font-size:8px;letter-spacing:1.5px;color:rgba(255,255,255,.4);text-transform:uppercase;background:#1e1b18;padding:0 6px;margin-top:-10px}
#acc-stack{position:absolute;top:0;left:0;right:0;pointer-events:none;z-index:990}
.acc-strip{position:absolute;left:0;right:0;top:0;height:48px;display:flex;align-items:center;padding:0 20px;font-family:var(--f-title);font-size:11px;font-weight:800;color:rgba(255,255,255,.85)}

/* ── centro: la hoja ── */
#tyel-main{flex:1;min-height:0;position:relative;overflow:hidden;background:#000}
#stage{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab;outline:none}
#stage.grabbing{cursor:grabbing}
#stage:focus-visible{box-shadow:inset 0 0 0 3px #c9837a}

/* ── pie: botones ── */
#tyel-footer{flex-shrink:0;background:#f4f0ed;display:flex;align-items:center;justify-content:space-around;padding:10px 8px max(16px,env(safe-area-inset-bottom));border-top:1px solid rgba(0,0,0,.09);z-index:1000;min-height:70px;position:relative}
.bb{display:flex;flex-direction:column;align-items:center;gap:4px;background:none;border:none;cursor:pointer;padding:4px 12px;border-radius:12px;font-family:inherit}
.bb:active{background:rgba(0,0,0,.07)}
.bb:focus-visible{outline:3px solid #c9837a;outline-offset:2px}
.bi{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;color:#fff;font-style:normal}
.bl{font-size:11px;font-weight:600;color:#6b645f}

#tyel-reinicio-btn{display:none;position:fixed;bottom:100px;left:0;right:0;z-index:500;justify-content:center;align-items:center}
#tyel-reinicio-btn button{background:#c9837a;color:#fff;border:none;border-radius:50px;padding:16px 40px;font-family:var(--f-title);font-size:16px;font-weight:800;cursor:pointer;box-shadow:0 6px 24px rgba(0,0,0,.4)}
#tyel-reinicio-btn button:focus-visible{outline:3px solid #fff;outline-offset:3px}

/* ── paneles ── */
#tyel-ov{display:none;position:fixed;inset:0;background:rgba(8,6,4,.56);z-index:2000}
#tyel-ov.on{display:block}
.tyel-panel{position:fixed;bottom:-110%;left:0;right:0;background:#faf8f6;border-radius:22px 22px 0 0;padding:16px 18px 28px;z-index:2010;transition:bottom .34s cubic-bezier(.22,.8,.22,1);max-height:80vh;overflow-y:auto;max-width:560px;margin:0 auto}
.tyel-panel.open{bottom:0}
.phan{width:38px;height:4px;background:rgba(0,0,0,.14);border-radius:2px;margin:0 auto 16px}
.ph-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.ptit{font-family:var(--f-title);font-size:13px;font-weight:800;color:#777}
.pcl{background:#e8e4e0;border:none;border-radius:50%;width:30px;height:30px;font-size:16px;cursor:pointer;color:#444;display:flex;align-items:center;justify-content:center}
.dsr{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding:10px 12px;background:#f0ece8;border-radius:12px}
.dsl{font-size:12px;color:#777;font-weight:600;flex-shrink:0}
.dsv{font-family:var(--f-title);font-size:13px;font-weight:800;color:#1a1612;flex:1}
.dsb{display:flex;gap:6px}
.dsb button{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:8px;padding:5px 10px;font-size:12px;font-weight:600;cursor:pointer;color:#444}
textarea{width:100%;min-height:90px;border:1.5px solid rgba(0,0,0,.12);border-radius:10px;padding:10px 12px;font-size:14px;color:#1a1612;background:#fff;resize:none;outline:none;font-family:var(--f-body);user-select:text}
textarea:focus{border-color:#c9837a}
.sbtn{width:100%;margin-top:10px;padding:13px;background:#c9837a;color:#fff;border:none;border-radius:10px;font-family:var(--f-title);font-size:14px;font-weight:800;cursor:pointer}
.xbtn{width:100%;margin-top:8px;padding:11px;background:rgba(0,0,0,.06);color:#a8534a;border:none;border-radius:10px;font-size:13px;cursor:pointer}
.cgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:12px}
.sw{border-radius:50%;cursor:pointer;border:3px solid transparent;transition:transform .12s,border-color .12s;aspect-ratio:1;max-width:46px;width:100%;margin:0 auto;display:block;padding:0}
.sw:active{transform:scale(1.12)}
.sw.sel{border-color:#1a1612}
.egrid{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}
.eb{background:rgba(0,0,0,.04);border:none;border-radius:10px;padding:9px 4px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}
.eb:active{background:rgba(0,0,0,.12)}
.cur-em{text-align:center;font-size:28px;margin-bottom:10px;min-height:36px}
#tyel-toast{position:fixed;bottom:88px;left:50%;transform:translateX(-50%) translateY(12px);background:#1a1612;color:#fff;padding:8px 18px;border-radius:40px;font-size:12px;font-weight:600;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:3000}
#tyel-toast.on{opacity:1;transform:translateX(-50%) translateY(0)}

.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

@media (prefers-reduced-motion: reduce){.tyel-panel{transition:none}#tyel-toast{transition:none}}

#tyel-error{position:absolute;left:12px;right:12px;top:12px;z-index:5;background:rgba(122,31,31,.95);color:#fff;padding:10px 14px;border-radius:10px;font:13px/1.45 var(--f-body);user-select:text;white-space:pre-wrap}
#tyel-error[hidden]{display:none}
