.shop-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}
.shop-actions .manual-button{margin:0;height:64px}
.helper-button{min-height:64px;border:1px solid #e6a6a3;border-radius:12px;background:#fff4f2;color:#9d302e;font-size:19px;font-weight:700}
.helper-button:hover:not(:disabled){background:#ffe7e4}
.helper-button:disabled{background:#fff4f2;color:#aa5550;cursor:default}
.status-help{background:#c73338;color:#fff;border:1px solid #ac292d}
.status-help .status-dot{background:#fff;box-shadow:0 0 0 5px #ffffff3d}
.status-help button{margin-left:auto;border:1px solid #ffffffb3;border-radius:9px;background:#ffffff1f;color:#fff;min-height:42px;padding:7px 14px;font-size:15px;font-weight:700}
.status-help button:hover{background:#ffffff36}
.footer-actions{display:flex;align-items:center;gap:18px}
.footer-actions button{min-height:44px;padding:0 5px}
.payment-info-text{font-size:19px;line-height:1.5;margin:22px 0;color:#263e5c}
.payment-info-countdown{padding:14px 0;font-size:17px;color:#61748d}
.payment-info-countdown strong{font-size:26px;color:#142e50}
.payment-progress{height:9px;border-radius:100px;background:#e4ebf3;overflow:hidden}
.payment-progress span{display:block;height:100%;width:100%;background:#9bec5c;transition:width .2s linear}
.dialog-actions{display:flex;gap:12px;margin-top:18px}
.dialog-actions button{flex:1;margin:0;min-height:55px}
.secondary-button{border:1px solid #c4d1e0;border-radius:10px;background:#f5f8fc;color:#142e50;font-weight:700}
.form-error{color:#b52b30;min-height:22px;margin:10px 0 0;font-weight:700}
@media(max-width:700px){.shop-actions{grid-template-columns:1fr;gap:9px;margin-top:10px}.shop-actions .manual-button,.helper-button{min-height:52px;height:52px;font-size:16px}.status-help{flex-wrap:wrap}.status-help button{width:100%;margin:6px 0 0}.footer-actions{gap:8px}.footer-actions button{font-size:11px}.payment-info-text{font-size:17px}}

.onboarding{position:fixed;inset:0;z-index:30;background:#0f284d;color:#fff}
.app[inert]{display:none}
.onboarding-screen{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:34px;padding:28px;overflow:auto}
.splash-screen{padding:0}
.splash-start{width:100%;height:100%;border:0;background:#0f284d;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:55px;font-size:clamp(27px,3vw,40px);font-weight:600}
.splash-start img{width:min(680px,90vw);height:auto;display:block}
.splash-start span{padding:14px 28px;border-bottom:2px solid #a3ef68}
.onboarding-logo{width:min(390px,65vw);height:auto}
.onboarding-card{width:min(620px,100%);background:#fff;color:#142e50;padding:clamp(24px,4vw,44px);border-radius:18px;box-shadow:0 24px 75px #071c3938}
.onboarding-step{font-size:12px;letter-spacing:.17em;font-weight:800;color:#55789e}
.onboarding-card h1{font-size:clamp(28px,3.8vw,41px);line-height:1.14;letter-spacing:-.03em;margin:12px 0}
.onboarding-card p{font-size:17px;line-height:1.5;color:#66778d;margin:0 0 24px}
.onboarding-card label{font-weight:700;display:block;margin-bottom:9px}
.onboarding-card .field{height:62px;font-size:22px}
.onboarding-card .primary-button{height:61px}
.onboarding-link{display:block;margin:22px auto 0;background:none;border:0;color:#375e8c;text-decoration:underline;text-underline-offset:4px;font-weight:700;min-height:45px}
.onboarding-card .onboarding-note{font-size:13px;color:#7a8799;text-align:center;margin:12px 0 0}
.welcome-card{text-align:center}
.welcome-check{width:64px;height:64px;display:grid;place-items:center;margin:0 auto 22px;border-radius:50%;background:#e9f9e2;color:#38833a;font-size:40px}
.payment-customer-label{margin:14px 0 0;color:#536d8a;font-weight:700}
.keyboard-dialog{position:fixed;top:auto;bottom:12px;left:50%;transform:translateX(-50%);margin:0;width:min(780px,calc(100vw - 20px));max-height:calc(100dvh - 24px);overflow:auto;border:0;border-radius:18px;padding:22px;background:#fff;color:#142e50;box-shadow:0 16px 60px #061c3b55}
.keyboard-dialog::backdrop{background:#061a34b8}
.keyboard-head{display:flex;align-items:start;justify-content:space-between;gap:18px}
.keyboard-head h2{font-size:23px;margin:5px 0 12px}
.keyboard-preview{min-height:58px;padding:14px 16px;border:1px solid #b9cce1;border-radius:10px;background:#f7fafd;font-size:21px;font-weight:700;overflow-wrap:anywhere}
.keyboard-preview:empty::before{content:'Digite usando os botões abaixo';color:#8b99ac;font-weight:400}
.keyboard-keys{display:grid;gap:8px;margin-top:16px}
.keyboard-keys.numeric{grid-template-columns:repeat(3,1fr)}
.keyboard-keys.text{grid-template-columns:repeat(7,1fr)}
.keyboard-keys button{min-height:55px;border:1px solid #cbd8e7;border-radius:10px;background:#f5f8fc;color:#142e50;font-size:22px;font-weight:700}
.keyboard-keys button:hover{background:#e8f0f8}
.keyboard-keys .key-wide{grid-column:span 2}
.keyboard-dialog .primary-button{margin-top:14px;min-height:56px}
@media(max-width:700px){.onboarding-screen{gap:18px;padding:18px}.onboarding-card{padding:23px}.onboarding-card p{font-size:15px}.onboarding-logo{width:min(310px,75vw)}.splash-start{gap:30px}.splash-start img{width:90vw}.keyboard-dialog{padding:14px;bottom:5px;max-height:calc(100dvh - 10px)}.keyboard-keys{gap:5px}.keyboard-keys button{min-height:45px;font-size:18px}.keyboard-preview{font-size:18px}.keyboard-head h2{font-size:20px}}

.keyboard-keys{display:flex;flex-direction:column;gap:8px}
.keyboard-row{display:flex;justify-content:center;gap:7px;width:100%}
.keyboard-row.numeric-row{max-width:480px;margin-inline:auto}
.keyboard-row button{flex:1;min-width:0;padding:0 3px}
.keyboard-row .key-action{flex:1.4;font-size:16px}
.keyboard-row .key-space{flex:4;font-size:16px}
@media(max-width:700px){.keyboard-keys{gap:5px}.keyboard-row{gap:3px}.keyboard-row button{min-height:46px;padding:0;font-size:15px}.keyboard-row.numeric-row button{min-height:54px;font-size:22px}.keyboard-row .key-action,.keyboard-row .key-space{font-size:12px}}

.brand-header{padding:20px 36px}
.brand-header img{width:min(480px,72vw);height:auto;max-height:92px;object-fit:contain}
.zoom-controls{position:fixed;right:10px;top:43%;z-index:12;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px;border:1px solid #bed0e3;border-radius:14px;background:#fff;box-shadow:0 8px 24px #10284c25;color:#142e50}
.zoom-controls button{width:48px;height:48px;border:0;border-radius:10px;background:#eaf2fb;color:#142e50;font-size:31px;font-weight:700;line-height:1}
.zoom-controls button:disabled{opacity:.4;cursor:not-allowed}
.zoom-controls output{min-width:48px;text-align:center;font-size:13px;font-weight:800;padding:5px 0}
.appearance-panel{max-width:550px}
.appearance-panel p{color:#62758d;line-height:1.5}
.appearance-panel label{display:block;font-weight:700;margin:20px 0 8px}
.appearance-panel .field{max-width:280px}
@media(max-width:700px){.brand-header{padding:17px 30px}.brand-header img{width:min(315px,75vw);max-height:69px}.zoom-controls{right:5px;top:44%;padding:4px}.zoom-controls button{width:42px;height:42px;font-size:27px}.zoom-controls output{min-width:42px;font-size:11px}.operator-tabs{overflow-x:auto;white-space:nowrap}.operator-tabs button{padding:14px 12px}}
