:root{--pink-dark:#b3607a;--pink:#d98aa3;--pink-light:#f6d9e2;--cream:#fdf1e3;--ink:#3a2430;--green:#3d8b5f;--amber:#c98b1a;--radius:16px}*{box-sizing:border-box}body{margin:0;font-family:Nunito,Segoe UI,system-ui,sans-serif;background:linear-gradient(180deg,var(--pink-light) 0,#fff 220px);color:var(--ink)}.hero{background:var(--pink-dark);color:#fff;padding:22px 20px 30px;text-align:center;border-bottom-left-radius:32px;border-bottom-right-radius:32px}.hero h1{margin:0 0 10px;font-size:1.9rem;font-weight:900;letter-spacing:.5px}.hero p{margin:14px auto 0;max-width:480px;opacity:.95;font-size:1rem}.carousel{position:relative;max-width:420px;margin:0 auto;border-radius:20px;overflow:hidden;box-shadow:0 10px 28px rgba(0,0,0,.28);background:#1d1117}.carousel-track{position:relative;aspect-ratio:4/3}.carousel-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;opacity:0;z-index:0;transition:opacity .6s ease}.carousel-slide.active{opacity:1;z-index:1}.carousel-dots{position:absolute;bottom:10px;left:0;right:0;display:flex;justify-content:center;gap:6px;z-index:2}.carousel-dot{width:7px;height:7px;border-radius:999px;background:hsla(0,0%,100%,.45);border:none;padding:0;cursor:pointer;transition:background .2s ease,width .2s ease}.carousel-dot.active{background:#fff;width:18px;border-radius:999px}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.35);color:#fff;border:none;width:32px;height:32px;border-radius:999px;font-size:1.1rem;line-height:1;cursor:pointer;z-index:2;display:flex;align-items:center;justify-content:center}.carousel-arrow.prev{left:10px}.carousel-arrow.next{right:10px}.container{max-width:720px;margin:0 auto;padding:20px 16px 60px}.card{background:#fff;border-radius:var(--radius);padding:20px;box-shadow:0 4px 16px rgba(179,96,122,.12);margin-bottom:20px}.info-grid{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:8px}.info-pill{border-radius:999px;padding:8px 16px;font-weight:700;font-size:.92rem;color:var(--pink-dark)}.info-pill,.pix-box{background:var(--cream)}.pix-box{border-radius:12px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:10px}.pix-key{font-family:monospace;font-size:.85rem;word-break:break-all}.btn{border:none;border-radius:10px;padding:10px 16px;font-weight:800;cursor:pointer;font-size:.95rem;transition:transform .1s ease}.btn:active{transform:scale(.97)}.btn-primary{background:var(--pink-dark);color:#fff}.btn-secondary{background:#fff;color:var(--pink-dark);border:2px solid var(--pink-dark)}.btn:disabled{opacity:.5;cursor:not-allowed}.legend{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:14px;font-size:.85rem}.legend-item{display:flex;align-items:center;gap:6px}.dot{width:12px;height:12px;border-radius:4px}.dot-disponivel{background:#e8e8e8;border:1px solid #ccc}.dot-reservado{background:var(--amber)}.dot-pago{background:var(--green)}.search-row{display:flex;gap:8px;margin-bottom:14px}.search-row input{flex:1 1;padding:10px 12px;border-radius:10px;border:2px solid var(--pink-light);font-size:1rem}.grid-numbers{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));grid-gap:8px;gap:8px}.num-btn{aspect-ratio:1;border-radius:10px;border:none;font-weight:800;font-size:.85rem;cursor:pointer;background:#efefef;color:#777}.num-btn.disponivel{background:#fff;color:var(--ink);border:2px solid var(--pink-light)}.num-btn.reservado{background:var(--amber);color:#fff;cursor:not-allowed}.num-btn.pago{background:var(--green);color:#fff;cursor:not-allowed}.num-btn.selected{outline:3px solid var(--pink-dark)}.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.45);display:flex;align-items:center;justify-content:center;padding:16px;z-index:50}.modal{background:#fff;border-radius:var(--radius);padding:24px;max-width:420px;width:100%;max-height:90vh;overflow-y:auto}.modal h3{margin-top:0}.field{margin-bottom:14px}.field label{display:block;font-weight:700;margin-bottom:6px;font-size:.9rem}.field input{width:100%;padding:10px 12px;border-radius:10px;border:2px solid var(--pink-light);font-size:1rem}.error-msg{color:#b3261e;font-size:.88rem;margin:6px 0 0}.success-box{text-align:center;padding:10px 0}.whatsapp-link{display:inline-block;margin-top:14px;background:#25d366;color:#fff;padding:12px 20px;border-radius:10px;text-decoration:none;font-weight:800}.footer-note{text-align:center;font-size:.82rem;color:#8a7580;margin-top:24px}.admin-link{text-align:center;margin-top:10px}.admin-link a{color:#bbb;font-size:.75rem;text-decoration:none}