:root{--bg: #eef4f2;--surface: #ffffff;--ink: #0f2e2b;--muted: #5f7a76;--line: #dde9e6;--primary: #0e5c54;--primary-deep: #093f3a;--primary-soft: #e2efec;--accent: #14a385;--warn: #b4552d;--warn-soft: #f7e9e1;--danger: #a33a3a;--ok: #1c7d5f;--radius: 16px;--shadow: 0 1px 2px rgba(9, 63, 58, .05), 0 8px 24px rgba(9, 63, 58, .07);--font: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums}.ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-primary{color:var(--primary)}.text-muted{color:var(--muted)}.app-shell{max-width:100%;margin:0 auto;min-height:100dvh;background:var(--bg);display:flex;flex-direction:column;position:relative}.app-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#093f3af7;color:#eaf6f3;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.header-brand{display:flex;align-items:center;gap:10px}.header-mark{width:30px;height:30px;border-radius:9px;background:linear-gradient(140deg,#14a385,#0e5c54);display:grid;place-items:center;font-weight:800;font-size:15px;color:#fff}.header-title{font-weight:700;letter-spacing:.2px;font-size:16px}.app-header .icon-btn{color:#cfe8e2}.header-right{display:flex;align-items:center;gap:4px}.header-hello{font-size:13px;font-weight:600;color:#a9d8cf;white-space:nowrap}.contact-wrap{position:relative;display:flex}.contact-pop{position:absolute;top:calc(100% + 8px);right:0;z-index:41;min-width:210px;background:var(--surface);color:var(--ink);border-radius:12px;box-shadow:0 10px 30px #04282440;padding:12px 14px;display:flex;flex-direction:column;gap:3px}.contact-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--muted, #5b7a74)}.contact-name{font-size:14px}.contact-mail{font-size:13px;color:var(--primary);text-decoration:none;word-break:break-all}.contact-mail:hover{text-decoration:underline}@media(max-width:420px){.header-hello{max-width:110px;overflow:hidden;text-overflow:ellipsis}.hero.slim{flex-direction:column;align-items:flex-start;gap:8px}.hero.slim .hero-side{align-items:flex-start}.hero.slim .hero-value{font-size:26px}}.app-main{flex:1;width:100%;max-width:860px;margin:0 auto;padding:18px 16px 96px}.loading{padding:60px 20px;text-align:center;color:var(--muted)}.bottom-nav{position:fixed;bottom:0;left:0;transform:translate(0);width:100%;max-width:100%;display:grid;grid-template-columns:repeat(4,1fr);background:#fffffff5;border-top:1px solid var(--line);padding:6px 8px calc(8px + env(safe-area-inset-bottom));z-index:20}.nav-btn{border:0;background:none;display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 4px;font-size:11px;font-weight:600;color:var(--muted);border-radius:12px;cursor:pointer}.nav-btn.active{color:var(--primary);background:var(--primary-soft)}.btn{border:0;border-radius:12px;padding:12px 18px;font-size:15px;font-weight:700;font-family:var(--font);cursor:pointer;transition:filter .15s ease,transform .05s ease}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{filter:brightness(1.08)}.btn.ghost{background:var(--primary-soft);color:var(--primary-deep)}.btn.warn{background:var(--warn);color:#fff}.btn.danger-ghost{background:transparent;color:var(--danger)}.btn.block{display:block;width:100%}.btn.lg{padding:15px 18px;font-size:16px;border-radius:14px;margin:14px 0 4px}.btn.mini{padding:7px 12px;font-size:13px;border-radius:10px;font-weight:600}.icon-btn{border:0;background:transparent;color:var(--muted);width:36px;height:36px;border-radius:10px;display:grid;place-items:center;cursor:pointer;font-size:14px}.icon-btn:hover{background:#0e5c5414}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.hero{background:linear-gradient(140deg,var(--primary-deep) 0%,#0d5c53 62%,#12897c 100%);color:#fff;border-radius:20px;padding:22px 20px;display:flex;flex-direction:column;gap:4px;box-shadow:0 12px 32px #093f3a47}.hero.slim{flex-direction:row;align-items:center;justify-content:space-between;padding:18px 20px}.hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.hero-label{font-size:12.5px;font-weight:600;letter-spacing:.6px;text-transform:uppercase;color:#a9d8cf}.hero-value{font-size:34px;font-weight:800;letter-spacing:-.5px;line-height:1.1}.hero-sub{font-size:13px;color:#c9e6df}.hero-sub.dim{color:#9dc9c0}.stat-grid{display:grid;gap:10px;margin-top:10px}.stat-grid.two{grid-template-columns:1fr 1fr}.stat{padding:14px 16px;display:flex;flex-direction:column;gap:3px}.stat strong{font-size:18px;font-weight:800;letter-spacing:-.2px}.val-label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--muted)}.section{margin-top:22px}.section-title{font-size:14px;font-weight:700;color:var(--ink);margin:0 0 10px;display:flex;align-items:center;gap:8px}.list{display:flex;flex-direction:column;gap:10px}.empty{text-align:center;padding:34px 16px;background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}.empty p{margin:0 0 4px;font-weight:700;color:var(--ink)}.empty span{font-size:13px}.comanda{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.comanda-down{opacity:.72}.comanda-calc{background:linear-gradient(to top,#2563eb12,#2563eb26),var(--surface)}.comanda-pend{background:linear-gradient(to top,#ca8a0412,#ca8a0426),var(--surface)}.comanda-main{padding:13px 15px}.comanda-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.comanda-title{display:flex;align-items:center;gap:7px;min-width:0}.comanda-title strong{font-size:14.5px}.comanda-date{font-size:12px;color:var(--muted);white-space:nowrap}.badge{font-size:10.5px;font-weight:700;padding:2px 7px;border-radius:20px;white-space:nowrap}.badge.num{background:var(--primary-soft);color:var(--primary-deep)}.badge.down-badge{background:var(--warn-soft);color:var(--warn)}.comanda-vals{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin:10px 0 8px}.comanda-vals>div{display:flex;flex-direction:column;gap:1px;min-width:0}.comanda-vals strong{font-size:13.5px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.down-info{margin:4px 0 0;font-size:12px;color:var(--warn)}.comanda-actions{display:flex;gap:8px;margin-top:10px;flex-wrap:wrap}.parcial-box{display:flex;gap:8px;align-items:center;margin-top:10px;padding:10px;background:var(--primary-soft);border-radius:12px}.parcial-box .money-field{flex:1}.check-row{display:flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:14px;font-weight:600;color:var(--ink)}.check-row.small{font-size:13px}.check-row.tiny{gap:0;font-size:0;flex-shrink:0}.calc-check{margin-left:auto}.comanda-foot{display:flex;align-items:center;gap:6px;margin-top:10px;flex-wrap:wrap}.comanda-foot .calc-check{padding-left:6px}.calc-compact{margin-top:8px}.sel-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:12px}.comanda-sel{border-color:var(--accent);box-shadow:0 0 0 2px #14a38540}.check-row input{position:absolute;opacity:0;width:0;height:0}.check-box{width:20px;height:20px;border-radius:6px;border:2px solid #b8cfc9;background:#fff;display:inline-grid;place-items:center;transition:all .12s ease;flex-shrink:0}.check-box:after{content:"";width:10px;height:6px;border-left:2.5px solid #fff;border-bottom:2.5px solid #fff;transform:rotate(-45deg) translate(1px,-1px);opacity:0}.check-row input:checked+.check-box{background:var(--accent);border-color:var(--accent)}.check-row input:checked+.check-box:after{opacity:1}.field{display:block;margin-bottom:14px}.field-label{display:block;font-size:12.5px;font-weight:700;color:var(--primary-deep);margin-bottom:6px}.field-label .optional{font-style:normal;font-weight:500;color:var(--muted)}.input{width:100%;border:1.5px solid var(--line);background:#fff;border-radius:12px;padding:12px 14px;font-size:15px;font-family:var(--font);color:var(--ink);outline:none;transition:border-color .12s ease,box-shadow .12s ease}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #14a38526}.input.search{margin-bottom:12px}.money-field{display:flex;align-items:center;background:#fff;border:1.5px solid var(--line);border-radius:12px;overflow:hidden}.money-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #14a38526}.money-prefix{padding:0 0 0 14px;font-weight:700;color:var(--muted);font-size:14px}.money-input{border:0!important;box-shadow:none!important;flex:1}.money-input:focus{outline:none}.pct-row{display:flex;align-items:center;gap:8px}.pct-input{width:96px;flex-shrink:0}.pct-sign{font-weight:800;font-size:17px;color:var(--primary)}.pct-hint{font-size:12px;color:var(--muted)}.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;background:#e2ebe9;border-radius:12px;padding:4px;margin-bottom:14px}.seg-wrap{display:flex;flex-wrap:wrap}.seg-wrap .seg-btn{flex:1 1 auto}.seg-btn{border:0;background:transparent;padding:9px 6px;font-size:13px;font-weight:700;font-family:var(--font);color:var(--muted);border-radius:9px;cursor:pointer;white-space:nowrap}.seg-btn.active{background:#fff;color:var(--primary-deep);box-shadow:0 1px 4px #093f3a24}.chart-card{padding:16px 14px 8px;margin-bottom:14px}.chart-wrap{width:100%}.chart-headline{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.chart-total{font-size:24px;font-weight:800;color:var(--primary-deep);letter-spacing:-.4px}.chart{width:100%;height:auto;display:block}.chart-line{fill:none;stroke:#12897c;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.chart-grid{stroke:var(--line);stroke-width:1}.chart-dot{fill:var(--primary-deep);stroke:#fff;stroke-width:2}.chart-axis{font-size:11px;fill:var(--muted);font-family:var(--font)}.chart-empty{padding:40px 10px;text-align:center;color:var(--muted);font-size:14px}.top-list{padding:6px 14px}.top-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line);font-size:14px}.top-row:last-child{border-bottom:0}.top-pos{width:24px;height:24px;border-radius:8px;background:var(--primary-soft);color:var(--primary-deep);font-weight:800;font-size:12px;display:grid;place-items:center;flex-shrink:0}.top-desc{flex:1}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#092f2b73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--bg);width:100%;max-width:100%;border-radius:22px 22px 0 0;padding:10px 20px calc(22px + env(safe-area-inset-bottom));max-height:92dvh;overflow-y:auto;animation:slideUp .22s ease}@keyframes slideUp{0%{transform:translateY(40px);opacity:.6}to{transform:translateY(0);opacity:1}}.sheet-handle{width:42px;height:4px;border-radius:4px;background:#c3d6d1;margin:4px auto 12px}.sheet-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.sheet-header h2{margin:0;font-size:19px;letter-spacing:-.2px}.sheet-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:10px;margin-top:18px}.calc-preview{display:flex;align-items:center;justify-content:space-between;background:var(--primary-soft);border-radius:12px;padding:11px 14px;font-size:13.5px;color:var(--primary-deep)}.calc-preview strong{font-size:16px}.login-screen{min-height:100dvh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(1200px 500px at 80% -10%,rgba(20,163,133,.25),transparent 60%),linear-gradient(160deg,#0a423c,#0e5c54 55%,#12897c)}.login-card{width:100%;max-width:400px;background:var(--surface);border-radius:22px;padding:28px 24px 22px;box-shadow:0 24px 64px #05221f66}.brand{text-align:center;margin-bottom:20px}.brand-mark{width:54px;height:54px;margin:0 auto 12px;border-radius:16px;background:linear-gradient(140deg,#14a385,#0a423c);color:#fff;display:grid;place-items:center;box-shadow:0 10px 24px #0e5c5459}.brand h1{margin:0 0 6px;font-size:22px;letter-spacing:-.3px;color:var(--primary-deep)}.brand p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.45}.login-form{margin-top:4px}.login-foot{text-align:center;font-size:12px;color:var(--muted);margin:16px 0 0}.link-forgot{background:none;border:0;padding:0;margin:-6px 0 12px;font-family:var(--font);font-size:13px;font-weight:600;color:var(--primary);cursor:pointer;text-align:left}.link-forgot:hover{text-decoration:underline}.link-forgot.center{display:block;margin:14px auto 0;text-align:center}.link-back{background:none;border:0;padding:0;margin:-8px 0 12px;font-family:var(--font);font-size:13px;font-weight:600;color:var(--primary);cursor:pointer}.link-back:hover{text-decoration:underline}.banner-warn{background:#fdf3e3;color:#8a5a14;border:1px solid #f2dfba;border-radius:12px;padding:11px 14px;font-size:13.5px;font-weight:600;margin-bottom:14px}.banner-info{background:#e5f3ec;color:var(--ok);border:1px solid #cde8db;border-radius:12px;padding:11px 14px;font-size:13.5px;font-weight:600;margin-bottom:14px}.paywall{display:flex;flex-direction:column;gap:14px;padding-top:8px}.paywall-hero{background:linear-gradient(140deg,var(--primary-deep) 0%,#0d5c53 62%,#12897c 100%);color:#fff;border-radius:20px;padding:26px 22px;text-align:center;display:flex;flex-direction:column;gap:6px;box-shadow:0 12px 32px #093f3a47}.paywall-hero .hero-label{color:#a9d8cf}.paywall-price{display:flex;align-items:baseline;justify-content:center;gap:4px;margin:2px 0}.paywall-price strong{font-size:44px;font-weight:800;letter-spacing:-1px}.paywall-price span{font-size:16px;color:#c9e6df;font-weight:600}.paywall-sub{margin:0;font-size:13.5px;color:#c9e6df;line-height:1.5}.paywall-benefits{padding:16px 18px}.paywall-benefits h3{margin:0 0 10px;font-size:14px;color:var(--primary-deep)}.paywall-benefits ul{margin:0;padding:0 0 0 18px;display:flex;flex-direction:column;gap:7px;font-size:13.5px;color:var(--ink);line-height:1.45}.paywall-note{text-align:center;font-size:12px;color:var(--muted);margin:0}.form-error{background:#fbeae6;color:#8f3a22;border:1px solid #f0d2c8;border-radius:10px;padding:10px 12px;font-size:13.5px;font-weight:600;margin:0 0 12px}.form-ok{background:#e5f3ec;color:var(--ok);border:1px solid #cde8db;border-radius:10px;padding:10px 12px;font-size:13.5px;font-weight:600;margin:0 0 12px}.banner-error{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fbeae6;color:#8f3a22;border:1px solid #f0d2c8;border-radius:12px;padding:11px 14px;font-size:13.5px;font-weight:600;margin-bottom:14px}.banner-error button{border:0;background:none;color:inherit;cursor:pointer;font-size:13px}.config-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.config-opt{background:var(--surface);border:2px solid var(--line);border-radius:14px;padding:14px 14px 12px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:5px;font-family:var(--font)}.config-opt strong{font-size:14px;color:var(--ink)}.config-opt span{font-size:12px;color:var(--muted);line-height:1.4}.config-opt.active{border-color:var(--accent);background:var(--primary-soft)}.config-opt.active strong{color:var(--primary-deep)}.config-card{padding:16px 16px 14px;display:flex;flex-direction:column;gap:8px}.config-note{margin:0 0 6px;font-size:12px;color:var(--muted);line-height:1.45}.regra-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.regra-head h3{margin:0;font-size:14px;color:var(--primary-deep)}.regra-list{display:flex;flex-direction:column}.regra-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.regra-row:last-child{border-bottom:0}.regra-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.regra-info strong{font-size:13.5px}.regra-info span{font-size:12px;color:var(--muted)}.regra-pct{font-size:15px;color:var(--primary);white-space:nowrap}.field-duo{display:grid;grid-template-columns:1fr 1fr;gap:10px}.modelo-box{background:var(--primary-soft);border-radius:14px;padding:13px 14px;margin-bottom:14px}.modelo-box .field-label{margin-bottom:8px}.modelo-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.modelo-line strong{font-size:15px;color:var(--primary-deep)}.modelo-badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:var(--primary);color:#fff;border-radius:20px;padding:3px 9px}.modelo-alert{font-size:13px;font-weight:600;color:var(--warn);line-height:1.45}.modelo-hint{display:block;margin-top:8px;font-size:11.5px;color:var(--muted)}.premium-badge{display:flex;align-items:center;gap:6px;margin:0 2px 12px;font-size:12.5px;line-height:1}.premium-label{font-weight:700;letter-spacing:.2px;color:#9a7412}.premium-venc{color:var(--muted);font-weight:600}.premium-renovar{border:0;background:none;padding:0;font-family:var(--font);font-size:12.5px;font-weight:700;color:var(--primary);cursor:pointer;text-decoration:underline}.config-premium-tag{display:inline-flex;align-items:center;gap:4px;align-self:flex-start;font-size:11.5px;font-weight:700;color:#9a7412}.paywall-crown{display:inline-flex;align-items:center;justify-content:center;gap:6px}.plano-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plano-opt{background:var(--surface);border:2px solid var(--line);border-radius:14px;padding:12px;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:3px;font-family:var(--font)}.plano-opt:disabled{opacity:.7;cursor:default}.plano-opt strong{font-size:14px;color:var(--ink)}.plano-opt.active{border-color:var(--accent);background:var(--primary-soft)}.plano-tag{font-size:10.5px;font-weight:800;text-transform:uppercase;letter-spacing:.3px;color:#9a7412;min-height:26px}.plano-tag.neutro{color:var(--muted)}.plano-preco{font-size:22px;font-weight:800;letter-spacing:-.5px;color:var(--primary-deep)}.plano-detalhe{font-size:12px;color:var(--muted)}.banner-flex{display:flex;align-items:center;justify-content:space-between;gap:10px}.banner-flex button{border:0;background:none;color:inherit;cursor:pointer;font-size:13px}
