@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root{color-scheme:light;--paper:#f8f7f2;--ink:#263d33;--green:#244d3e;--muted:#747970;--line:#e3e5dc;--orange:#cb704a;font-family:'DM Sans',sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.wrap{width:min(1160px,calc(100% - 80px));margin:auto}.site-header{display:flex;align-items:center;justify-content:space-between;padding:32px 0}.brand{text-decoration:none;display:flex;align-items:center;font-family:Manrope,sans-serif;font-size:23px;font-weight:800;letter-spacing:-1px}.brand-dot{color:var(--orange)}.brand-icon{display:grid;place-items:center;position:relative;background:var(--green);color:white;width:37px;height:39px;border-radius:11px;margin-right:10px;font-size:28px;line-height:1;letter-spacing:-3px;padding-right:4px}.brand-icon span{position:absolute;right:6px;top:0;color:#e8b087}.header-link{font-size:13px;font-weight:700;text-decoration:none;padding:12px 0}.header-link span{margin-left:15px;color:var(--orange);font-size:20px}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:88px;padding:70px 0 48px;align-items:start}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;line-height:1.8;margin:0 0 23px}.intro>.eyebrow{display:flex;align-items:center;gap:9px}.eyebrow>span{width:6px;height:6px;border-radius:50%;background:var(--orange);flex-shrink:0}h1{font-family:Manrope,sans-serif;font-size:clamp(40px,4.4vw,59px);line-height:1.13;letter-spacing:-2.8px;margin:0;font-weight:800}h1 em{font-style:normal;color:var(--orange)}.intro-copy{font-size:15px;line-height:1.85;color:#6b7068;max-width:430px;margin:25px 0}.small-note{display:flex;align-items:center;gap:12px;font-size:12px;font-weight:500}.note-line{height:1px;width:28px;background:var(--orange)}.login-area{padding-top:13px;scroll-margin-top:25px}.login-card{padding:34px 36px 0;background:#fff;border:1px solid #e7e8e0;border-radius:20px;box-shadow:0 16px 50px #243d3309}.welcome-icon{font-size:30px;color:var(--orange);background:#fbf0e6;display:grid;place-items:center;width:51px;height:51px;border-radius:15px;margin-bottom:24px}.card-eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--muted);font-weight:700;margin:0 0 9px}h2{font-family:Manrope,sans-serif}.login-card h2{font-size:30px;letter-spacing:-1.1px;margin:0 0 8px}.card-description{font-size:14px;color:var(--muted);margin:0 0 29px}label{display:block;font-size:12px;font-weight:700;margin:19px 0 9px}input{width:100%;min-height:50px;border:1px solid #dedfd7;border-radius:8px;padding:13px 14px;background:#fdfdfa;color:var(--ink);font-size:16px;transition:border-color .15s}input::placeholder{color:#969a92;font-size:14px}input:focus{outline:2px solid #244d3e30;border-color:var(--green)}.password-field{position:relative}.password-field input{padding-right:65px}.show-password{position:absolute;right:5px;top:3px;min-width:48px;min-height:44px;background:transparent;border:0;font-size:12px;font-weight:700;color:var(--green)}.form-options{display:flex;justify-content:flex-end;margin:5px 0 12px}.text-button{border:0;background:none;font-size:12px;min-height:44px;padding:8px 0;color:var(--muted);text-decoration:underline;text-underline-offset:3px}.submit-button{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--green);color:white;border:0;border-radius:8px;padding:16px 19px;font-weight:600;font-size:14px;min-height:53px}.submit-button:hover{background:#163c2e}.submit-button span{font-size:20px}#form-status{font-size:13px;line-height:1.6;color:var(--green);margin:14px 0}#form-status:empty{margin:0}.card-bottom{border-top:1px solid #eef0e8;margin-top:26px;padding:19px 0;display:flex;align-items:center;justify-content:center;gap:9px;font-size:11px;color:var(--muted)}.card-bottom span{font-size:20px}.preview-note{text-align:center;font-size:11px;line-height:1.7;color:#7d8179;margin:18px 0 0}.illustration{position:relative;height:165px;margin-top:24px;max-width:440px}.ticket{position:absolute;left:50px;top:6px;transform:rotate(-9deg);background:#fffefa;width:135px;height:137px;padding:16px 14px;box-shadow:2px 7px 15px #273b3210;border:1px solid #e9e5d9}.ticket>span{font-size:8px;letter-spacing:1px;font-weight:700}.ticket-rule{border-bottom:1px dashed #dddacc;margin:9px 0}.ticket-row{display:flex;justify-content:space-between;align-items:center;margin-top:7px}.ticket-row i{height:3px;width:65px;background:#e5e7dd}.ticket-row b{font-size:9px;color:#74937c}.ticket small{font-size:8px;color:var(--muted)}.saucer{position:absolute;left:220px;top:48px;width:106px;height:79px;border-radius:50%;background:#e6e8dc;transform:rotate(-15deg);box-shadow:0 4px 5px #263d3309}.cup{position:absolute;z-index:1;left:239px;top:43px;width:64px;height:63px;border-radius:50%;background:#fefcf4;box-shadow:2px 4px 6px #263d3320;transform:rotate(-20deg)}.cup:after{content:'';position:absolute;right:-17px;top:21px;width:19px;height:18px;border:6px solid #fefcf4;border-radius:7px;z-index:-1}.coffee{position:absolute;inset:8px;background:#79543b;border:4px solid #b07d51;border-radius:50%}.handwritten{position:absolute;right:0;bottom:0;font-family:Georgia,serif;font-style:italic;color:#7e887a;font-size:13px;transform:rotate(-5deg)}.privacy{display:flex;gap:24px;padding:31px 35px;background:#eef1e8;border:1px solid #e5e9df;border-radius:13px;margin:12px 0 35px}.privacy-icon{flex-shrink:0;width:44px;height:44px;display:grid;place-items:center;background:#e2e9da;border-radius:50%;margin-top:4px}.privacy-icon svg{width:24px;height:24px}.privacy .eyebrow{font-size:9px;margin:0 0 7px;color:#66785e}.privacy h2{font-size:18px;letter-spacing:-.4px;margin:0 0 10px}.privacy p:not(.eyebrow){font-size:12px;line-height:1.8;color:#67715f;margin:0;max-width:900px}.privacy p.privacy-detail{font-size:11px;margin-top:9px;color:#77816f}.site-footer{border-top:1px solid var(--line);padding:23px 0 28px;display:flex;justify-content:space-between;align-items:center;gap:20px;color:#858980;font-size:10px}.site-footer>span:first-child{font-size:15px;font-weight:700;color:var(--ink)}.site-footer p{margin:0}
@media(min-width:1450px){.hero{padding-top:95px;padding-bottom:65px}}
@media(max-width:1000px){.wrap{width:calc(100% - 48px)}.hero{gap:35px;padding-top:45px;grid-template-columns:1fr 1fr}h1{font-size:44px;letter-spacing:-2px}.login-card{padding:28px 25px 0}.illustration{transform:scale(.88);transform-origin:left top}.eyebrow{font-size:9px;letter-spacing:1px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.site-header{padding:21px 0}.brand{font-size:20px}.brand-icon{width:32px;height:34px;font-size:25px}.header-link{font-size:11px}.header-link span{margin-left:4px}.hero{grid-template-columns:1fr;gap:28px;padding:34px 0 30px}.intro>.eyebrow{font-size:8px;margin-bottom:19px}h1{font-size:45px;max-width:500px;letter-spacing:-2.2px}.desktop-break{display:none}.intro-copy{font-size:14px;margin:20px 0;max-width:490px}.small-note{font-size:11px}.illustration{display:none}.login-area{padding:0;width:100%;max-width:460px;justify-self:center}.login-card{padding:26px 25px 0}.welcome-icon{width:43px;height:43px;font-size:27px;margin-bottom:19px}.login-card h2{font-size:28px}.privacy{padding:23px 19px;gap:13px;margin:4px 0 25px}.privacy-icon{width:32px;height:32px}.privacy-icon svg{width:20px}.privacy h2{font-size:16px;line-height:1.5}.privacy .eyebrow{font-size:8px;letter-spacing:1px}.site-footer{flex-wrap:wrap;gap:12px;padding:20px 0}.site-footer p{order:3;width:100%}.site-footer>span:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Panel principal del negocio */
[hidden]{display:none!important}.demo-hint{padding:12px;background:#f8f3e9;border-radius:8px;font-size:12px;line-height:1.6;color:#756347}.demo-entry{display:block;margin:10px auto 0;min-height:44px;padding:10px 20px;border:1px solid var(--green);border-radius:8px;background:transparent;color:var(--green);font-weight:600}.dashboard{padding:25px 0 40px}.dashboard-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:35px}.demo-badge{font-size:10px;letter-spacing:1px;background:#e9eee3;border-radius:30px;padding:10px 15px;line-height:1.6}.dashboard h1{font-size:clamp(34px,4vw,50px);letter-spacing:-1.8px}.dashboard-copy{color:var(--muted);line-height:1.8;margin:22px 0 30px}.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.module-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:28px;background:white;color:var(--ink);border:1px solid var(--line);border-radius:16px;min-height:240px;transition:box-shadow .2s,border-color .2s}.module-card:hover,.module-card[aria-expanded=true]{border-color:var(--green);box-shadow:0 8px 24px #244d3e0d}.module-icon{display:grid;place-items:center;width:44px;height:44px;background:#edf1e7;border-radius:12px;font-size:25px;color:var(--green);margin-bottom:20px}.module-card:nth-child(2) .module-icon,.module-card:nth-child(4) .module-icon{background:#faf0e7;color:var(--orange)}.module-title{font-family:Manrope,sans-serif;font-size:22px;font-weight:800;letter-spacing:-.6px}.module-copy{font-size:14px;line-height:1.7;color:var(--muted);margin:12px 0 22px;max-width:370px}.module-action{display:flex;justify-content:space-between;width:100%;margin-top:auto;font-weight:600;font-size:13px}.module-action>span{color:var(--orange);font-size:19px}.module-detail{margin-top:26px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:16px}.module-detail h2{margin:0 0 14px}.module-detail>p:not(.eyebrow){font-size:14px;line-height:1.8;color:var(--muted)}.module-detail ol{padding-left:23px;line-height:1.8;font-size:14px}.module-detail li{padding:6px 0}.module-detail .module-notice{padding:14px;background:#f8f3e9;border-radius:8px}.dashboard-notice{text-align:center;color:var(--muted);font-size:12px;line-height:1.8;margin-top:25px}@media(max-width:600px){.module-grid{grid-template-columns:1fr;gap:14px}.module-card{padding:22px;min-height:210px}.module-title{font-size:21px}.dashboard-top{align-items:flex-start;margin-bottom:25px}.demo-badge{font-size:8px;max-width:185px}.dashboard-top .text-button{font-size:11px;flex-shrink:0}.module-detail{padding:22px}.dashboard-copy{font-size:14px}}

/* Altas de mesas y productos: demostración de administración. */
.administration{margin-top:36px;padding-top:30px;border-top:1px solid var(--line)}.admin-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.admin-heading .eyebrow{margin-bottom:7px}.admin-heading h2{margin:0;font-size:28px;letter-spacing:-.8px}.administration>p{font-size:14px;line-height:1.8;color:var(--muted)}.administration .admin-note{font-size:12px;max-width:740px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:22px}.admin-card{background:#fff;padding:26px;border:1px solid var(--line);border-radius:16px;min-width:0}.admin-card h3{margin:0;font-size:19px}.admin-card h4{margin:26px 0 10px;font-size:13px}.admin-card select{width:100%;min-height:50px;border:1px solid #dedfd7;border-radius:8px;background:#fdfdfa;color:var(--ink);padding:12px;font:inherit;font-size:16px}.admin-card select:focus-visible{outline:2px solid var(--green);outline-offset:2px}.admin-card .submit-button{margin-top:20px}.admin-card small{display:block;font-size:11px;line-height:1.6;color:var(--muted);margin-top:6px}.admin-card [role=status]{font-size:13px;line-height:1.7;color:var(--green)}.admin-card [role=status]:empty{margin:0}.admin-list{list-style:none;margin:0;padding:0}.admin-list li{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding:14px 0;font-size:13px;line-height:1.6;overflow-wrap:anywhere}.admin-list li span,.admin-list .empty-list{color:var(--muted)}@media(max-width:700px){.admin-grid{grid-template-columns:1fr}.admin-card{padding:22px}}
