@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#0a2018;--green:#124b36;--lime:#dcfa78;--bg:#f6f7f2;--line:#e2e8de;--muted:#62756a}
html{width:100%;overflow-x:clip}body{width:100%;max-width:100%;overflow-x:clip;font-size:16px;line-height:1.5;background:var(--bg)}
button,input,select{font:inherit}button{touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #88c85d;outline-offset:2px}
.app,.app>main,.page,.view,.grid>* , .studio>* , .restaurants>* , .cards>* , .head>* , .row>*{min-width:0}
.app{grid-template-columns:250px minmax(0,1fr)}.side{background:#09231a;padding:26px 16px}.brand{width:194px;height:auto;margin:5px 7px 34px;object-fit:contain}.nav{gap:5px}.nav button{display:flex;align-items:center;gap:12px;border-radius:12px;padding:13px 14px;font-size:14px;line-height:1.3;transition:background .2s,transform .2s,color .2s}.nav button:before{display:none}.nav button:hover{transform:translateX(3px)}.nav button.active{background:#23513b;color:#fff}.nav-icon{width:21px;height:21px;flex:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;fill:none}.nav button.active .nav-icon{color:var(--lime)}.foot{line-height:1.7;letter-spacing:.03em}.top{height:78px;padding:0 clamp(22px,4vw,52px);gap:16px}.top strong{font-size:12px;letter-spacing:.08em;color:#75857b}.top strong span{font-size:14px;color:#173e2b;letter-spacing:0}.select{max-width:100%;min-height:44px;padding:9px 34px 9px 13px;border-radius:10px;color:#13382a;background:#f3f7f0}.page{max-width:1250px;padding:clamp(24px,3.5vw,46px) clamp(22px,4vw,52px) 80px}.view.active{animation:rise .35s ease both}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.12em}.title{font-size:clamp(31px,3.3vw,48px);line-height:1.12;letter-spacing:-.055em;margin:8px 0 12px}.sub{font-size:16px;max-width:620px}.head{gap:16px;margin-bottom:26px}.head h2,.card h2{letter-spacing:-.04em;line-height:1.2}.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:44px;border-radius:10px;padding:10px 16px;font-size:14px;white-space:normal;text-align:center;transition:transform .18s,box-shadow .18s,filter .18s}.btn:hover{transform:translateY(-2px);box-shadow:0 7px 18px #0e3c2825}.btn:active{transform:scale(.98)}.btn.lime{background:var(--lime)}.btn.ghost{background:#eaf1e8}.cards{gap:14px;margin:25px 0}.card,.restaurant{border-radius:18px;border-color:var(--line);box-shadow:0 4px 24px #0b311409}.card{padding:clamp(18px,2vw,25px)}.stat{min-height:136px;display:flex;flex-direction:column;justify-content:space-between}.stat b{font-size:clamp(27px,2.7vw,36px);line-height:1.1}.stat span,.small{font-size:13px;line-height:1.4}.restaurants{gap:16px}.restaurant{transition:transform .2s,box-shadow .2s;overflow:hidden}.restaurant:hover{transform:translateY(-4px);box-shadow:0 13px 28px #102e1820}.hero{height:142px}.logo-circle{width:54px;height:54px}.tag{font-size:11px}.rb{padding:18px}.rb h3{font-size:20px}.rb p{font-size:13px}.numbers{gap:20px;flex-wrap:wrap}.numbers b{font-size:18px}.numbers span{font-size:12px}.tabs{gap:6px;overflow:visible;margin-bottom:22px}.tabs button{font-size:14px;padding:13px 14px;white-space:normal;line-height:1.2;border-bottom-width:3px}.tabs button:hover{color:var(--green)}.row{gap:12px}.row>div{min-width:0}.rlogo{flex:none}.table{font-size:14px}.table td,.table th{padding:14px 10px}.table th{font-size:12px}.studio{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:22px;align-items:start}.field{margin-bottom:16px}.field label{font-size:14px;margin-bottom:7px}.field input,.field select{min-height:46px;padding:11px 12px;font-size:15px;background:#fff}.field input[type=file]{padding:7px}.field input[type=file]::file-selector-button{border:0;border-radius:7px;background:#eaf1e9;color:#124b36;padding:8px 10px;font:700 13px Manrope,sans-serif;margin-right:10px}.phone{width:100%;max-width:360px;border-width:7px;border-radius:28px;box-shadow:0 22px 36px #0e321c25}.passhead{height:135px;align-items:start}.passhead img{width:48px;height:48px}.passhead img.peak-on-card{background:transparent;border:0;border-radius:0;padding:0;width:130px;height:52px;filter:drop-shadow(0 2px 5px #001b11a0)}.pass{margin:0 10px 10px;padding:18px}.pass h3{font-size:24px}.stamps{display:flex;flex-wrap:wrap;gap:5px}.stamp{width:25px;height:25px;flex:none}.qline{line-height:1.5}.preview{border-radius:8px;font-size:12px}.toast{bottom:24px;right:24px;max-width:min(360px,calc(100vw - 32px));box-shadow:0 16px 35px #08291840}.mobile-nav,.mobile-pane-picker{display:none}
.client-layout{display:grid;grid-template-columns:minmax(0,390px) minmax(0,1fr);gap:clamp(28px,6vw,88px);align-items:center;max-width:950px;margin:auto}.iphone{width:100%;max-width:360px;padding:8px;border-radius:45px;background:#14231c;box-shadow:0 22px 55px #16371d2b}.iphone-screen{position:relative;min-height:686px;overflow:hidden;border-radius:38px;background:#f8faf6;color:#14241c}.island{position:absolute;z-index:2;top:8px;left:50%;transform:translateX(-50%);width:96px;height:25px;border-radius:20px;background:#14231c}.iphone-status{height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 24px;font-size:12px;font-weight:800}.customer-app{padding:22px 18px 24px}.customer-app-head{display:flex;align-items:center;justify-content:space-between}.customer-app-head img{width:42px;height:42px;object-fit:contain;border-radius:11px;background:white;padding:4px;border:1px solid var(--line)}.customer-app-head span{font:10px DM Mono;letter-spacing:.08em;color:#65766c}.hello{margin:29px 0 3px;color:#586d60;font-size:13px}.customer-app h2{font-size:22px;line-height:1.18;letter-spacing:-.04em;margin:0 0 18px}.wallet-visual{overflow:hidden;border-radius:18px;background:#104432;color:white;box-shadow:0 15px 28px #0a36262d}.wallet-photo{height:104px;background-size:cover;background-position:center;display:flex;align-items:start;justify-content:flex-end;padding:13px;position:relative}.wallet-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,#0522166b);pointer-events:none}.wallet-photo img{position:relative;z-index:1;width:105px;height:42px;object-fit:contain;filter:drop-shadow(0 2px 5px #001b1199)}.wallet-content{padding:17px}.wallet-content p{margin:0 0 4px;font-size:12px;color:#c9e2d0}.wallet-content strong{display:block;font-size:22px;letter-spacing:-.04em}.wallet-content>span{font-size:12px;color:#d9f2df}.wallet-stamps{display:flex;flex-wrap:wrap;gap:5px;margin:15px 0}.wallet-stamps i{display:grid;place-items:center;width:25px;height:25px;border:1px solid #adcebb;border-radius:50%;font-size:14px;font-style:normal}.wallet-stamps i.done{background:var(--lime);border-color:var(--lime);color:#0f3020}.fake-qr{width:56px;height:56px;margin-top:18px;background:repeating-conic-gradient(#fff 0 25%,#0d442f 0 50%) 50%/9px 9px;border:5px solid white}.wallet-content small{display:block;margin-top:6px;font:9px DM Mono;letter-spacing:.04em}.add-wallet{width:100%;min-height:48px;margin-top:16px;border-radius:11px;background:#111;color:white;font-size:14px;font-weight:800;transition:transform .2s}.add-wallet:hover{transform:translateY(-2px)}.wallet-hint{text-align:center;color:#6c7b6e;font-size:12px;margin:12px 0}.client-explain{padding:15px 0}.client-explain h2{font-size:clamp(27px,3vw,38px);letter-spacing:-.05em;margin:8px 0 28px}.flow{display:flex;gap:17px;border-top:1px solid var(--line);padding:16px 0}.flow>span{font:12px DM Mono;color:var(--green)}.flow b{font-size:15px}.flow p{margin:3px 0 0;color:var(--muted);font-size:14px}
@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:980px){.app{grid-template-columns:210px minmax(0,1fr)}.side{height:100vh;position:sticky;display:block;overflow:visible;padding:22px 10px}.brand{width:170px}.nav{display:grid}.nav button{font-size:13px;padding:11px 9px}.page{padding:28px 24px 70px}.top{padding:0 24px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.studio{grid-template-columns:minmax(0,1fr)}.phone{margin:auto}}
@media(max-width:760px){
 html,body{overflow-x:clip}.app{display:block;min-height:100vh}.side{height:68px;position:relative;display:flex;align-items:center;padding:10px 18px;overflow:hidden}.brand{width:164px;height:48px;margin:0;object-fit:contain;object-position:left center}.side .nav,.foot{display:none}.top{height:64px;padding:0 18px;justify-content:space-between}.top strong{display:block;font-size:10px;line-height:1.3;max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.top strong span{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select{max-width:160px;width:100%;min-height:44px;font-size:14px}.page{width:100%;max-width:100%;padding:24px 16px calc(102px + env(safe-area-inset-bottom))}.head{display:flex;align-items:stretch;flex-direction:column;gap:16px;margin-bottom:22px}.head>div{width:100%;min-width:0}.head .btn{align-self:flex-start}.title{font-size:clamp(29px,8.1vw,38px);line-height:1.11;letter-spacing:-.055em;overflow-wrap:anywhere}.sub{font-size:15px;line-height:1.5;overflow-wrap:anywhere}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.stat{min-height:116px;padding:16px}.stat b{font-size:clamp(24px,6.5vw,31px);letter-spacing:-.05em}.stat span{font-size:13px;line-height:1.25}.grid,.restaurants,.studio,.client-layout{grid-template-columns:minmax(0,1fr)}.grid{gap:12px}.restaurants{gap:14px}.card{padding:18px;border-radius:16px}.card h2{font-size:21px}.card .head{gap:10px}.row{gap:10px}.row b{font-size:14px}.row .small{font-size:12px}.switch{flex:none}.tabs{display:none}.mobile-pane-picker{display:block;margin:4px 0 18px}.mobile-pane-picker label{display:block;font-size:12px;font-weight:800;color:var(--muted);margin-bottom:6px}.mobile-pane-picker select{display:block;width:100%;min-height:48px;padding:10px 12px;background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink);font-size:15px;font-weight:800}.field label{font-size:14px}.field input,.field select{font-size:16px;max-width:100%}.studio{gap:18px}.formgrid{grid-template-columns:minmax(0,1fr)}.wide{grid-column:auto}.phone{width:100%;max-width:360px}.passhead{height:130px}.toast{bottom:calc(90px + env(safe-area-inset-bottom));left:16px;right:16px;max-width:none;text-align:center}.mobile-nav{position:fixed;z-index:10;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:0;min-height:calc(72px + env(safe-area-inset-bottom));padding:7px 5px calc(7px + env(safe-area-inset-bottom));background:#09231a;box-shadow:0 -8px 30px #0b2d202e}.mobile-nav button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:0;min-height:56px;padding:5px 1px;border-radius:10px;color:#aec5b4;background:transparent;font-size:10px;font-weight:800;line-height:1.05;text-align:center}.mobile-nav button.active{color:var(--lime);background:#244a37}.mobile-nav svg{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.client-layout{gap:26px}.iphone{margin:auto}.client-explain{padding:2px 2px 0}.client-explain h2{font-size:29px}
 .table,.table tbody,.table tr,.table td{display:block;width:100%}.table thead{display:none}.table tr{padding:13px 0;border-top:1px solid var(--line)}.table td{border:0;padding:3px 0;font-size:14px}.table td:first-child{font-size:16px}.table td:nth-child(2):before{content:'Visitas: ';font-weight:800;color:var(--muted)}.table td:nth-child(3):before{content:'Última: ';font-weight:800;color:var(--muted)}.table td:nth-child(4):before{content:'SMS: ';font-weight:800;color:var(--muted)}
}
@media(max-width:370px){.page{padding-left:13px;padding-right:13px}.top{padding-left:13px;padding-right:13px}.select{max-width:145px}.stat{padding:13px}.stat b{font-size:23px}.stat span{font-size:12px}.numbers{gap:12px}.numbers span{font-size:11px}.mobile-nav button{font-size:9px}.mobile-nav svg{width:21px;height:21px}.phone{border-width:6px}.pass{padding:14px}.stamp{width:22px;height:22px}.client-layout{gap:16px}}
