:root{--bg: #f4f1e9;--ink: #211f1a;--muted: #8a8478;--line: #e0dccf;--surface: #faf8f2;--accent: #bd5a3c;--accent-soft: #f0e6df;--accent-line: #e3c9bf}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased}.setup{max-width:380px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;gap:18px;align-items:center;justify-content:center;text-align:center;padding:24px}.setup h1{font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:2.8rem;margin:0}.setup p{color:var(--muted);margin:0 0 8px}.setup label{display:flex;gap:10px;align-items:center;color:var(--muted)}input,select{font:inherit;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}input:focus,select:focus{outline:none;border-color:var(--accent)}.btn{font:inherit;padding:11px 18px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink);cursor:pointer;transition:background .12s}.btn:hover{background:#efeae0}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{background:#a94e33}.btn.peligro{color:var(--accent);border-color:var(--accent-line)}.btn.grande{font-size:1.1rem;padding:13px 30px;border-radius:13px}.app{max-width:560px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column;padding:16px 18px 28px}.topbar{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:.8rem;letter-spacing:.04em;margin-bottom:14px}.topbar .marca{font-family:Georgia,Times New Roman,serif;font-size:1.1rem;color:var(--ink);letter-spacing:0}.tag{border:1px solid var(--line);border-radius:999px;padding:2px 10px;margin-left:6px}.tag.falsa,.tag.especial{color:var(--accent);border-color:var(--accent-line)}.especial-aviso{text-align:center}.especial-aviso p{color:var(--muted);margin:10px auto 0;max-width:320px;line-height:1.5}.bid-ciega{font-family:Georgia,Times New Roman,serif;font-size:2.1rem}.oponentes{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.centro{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:20px 0;min-height:150px}.bid-label{font-size:.78rem;letter-spacing:.08em;color:var(--muted)}.bid{font-family:Georgia,Times New Roman,serif;font-weight:400;font-size:4rem;line-height:1;display:flex;gap:14px;align-items:baseline}.bid-x{font-size:1.8rem;color:var(--muted)}.bid-empty{color:var(--line)}.hint{font-size:.85rem;color:var(--muted)}.reveal{max-width:360px;text-align:center;line-height:1.5;background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:12px;padding:12px 16px;color:#6f2f1c}.ficha{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:10px 12px;min-width:118px}.ficha.en-turno{border-color:var(--accent)}.ficha.eliminado{opacity:.4}.ficha-cab{display:flex;justify-content:space-between;gap:10px;font-size:.82rem;color:var(--muted);margin-bottom:8px}.ficha-nombre{color:var(--ink)}.ficha-fila{display:flex;gap:6px;flex-wrap:wrap;min-height:34px;align-items:center;justify-content:center}.ficha-tu{width:100%;max-width:340px;margin:0 auto 14px}.fuera{font-size:.8rem;color:var(--muted)}.dado{width:34px;height:34px;border-radius:8px;background:#fff;border:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);padding:5px}.dado-oculto{background:#ece8dc;border:1px solid var(--line)}.celda{display:flex;align-items:center;justify-content:center}.celda.pip:after{content:"";width:5px;height:5px;border-radius:50%;background:var(--ink)}.dado.dado-as{border-color:var(--accent)}.dado.dado-as .celda.pip:after{background:var(--accent)}.abajo{border-top:1px solid var(--line);padding-top:16px}.controles{display:flex;flex-direction:column;gap:14px;align-items:center}.aviso{margin:0;color:var(--accent);font-size:.9rem}.apuesta-form{display:flex;gap:12px;align-items:center;flex-wrap:wrap;justify-content:center}.stepper{display:flex;align-items:center;gap:10px}.stepper button{width:32px;height:32px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:1.2rem;cursor:pointer}.stepper button:hover{background:#efeae0}.cantidad{font-family:Georgia,Times New Roman,serif;font-size:1.4rem;min-width:26px;text-align:center}.x{color:var(--muted)}.pintas{display:flex;gap:5px}.pinta-btn{width:38px;height:38px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--ink);cursor:pointer;font:inherit}.pinta-btn:hover{background:#efeae0}.pinta-btn.sel{background:var(--ink);border-color:var(--ink);color:var(--bg)}.pinta-btn.as{color:var(--accent)}.pinta-btn.as.sel{background:var(--accent);border-color:var(--accent);color:#fff}.fila-botones{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.esperando{text-align:center;color:var(--muted);font-size:.9rem;margin:8px 0 0}.mano{display:flex;flex-direction:column;gap:6px;align-items:center}.fila{display:flex;gap:8px;justify-content:center}.cacho-wrap{position:relative;display:flex;justify-content:center}.cacho-dados{animation:dados-aparecen 1.5s ease both}.cacho{position:absolute;left:50%;bottom:-6px;width:138px;height:184px;margin-left:-69px;background:#9a4e34;clip-path:polygon(13% 0,87% 0,100% 100%,0 100%);transform:translateY(-55px);opacity:0;z-index:2;pointer-events:none;animation:cacho-bate 1.5s ease both}.cacho:before{content:"";position:absolute;left:0;bottom:0;width:100%;height:9px;background:#7d3d28}@keyframes cacho-bate{0%{transform:translateY(-55px) rotate(0);opacity:0}12%{transform:translateY(0) rotate(0);opacity:1}20%{transform:translateY(-2px) rotate(-3deg)}30%{transform:translateY(0) rotate(3deg)}40%{transform:translateY(-2px) rotate(-2.5deg)}50%{transform:translateY(0) rotate(2.5deg)}60%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(-130px) rotate(0);opacity:0}}@keyframes dados-aparecen{0%{opacity:1}10%{opacity:1}15%{opacity:0}68%{opacity:0}85%{opacity:1}to{opacity:1}}@media (prefers-reduced-motion: reduce){.cacho{display:none}.cacho-dados{animation:none}}
