:root{--brand-rgb:0 163 92;--brand-strong-rgb:7 102 63;--ink:#15120e;--ink-2:#3a352e;--paper:#faf9f6;--surface:#fff;--sal:#f4f2ec;--line:#e7e2d9;--line-2:#efebe3;--muted:#6e675c;--amber:#e8852b;--erro:#d14343;--r-card:20px;--r-lg:14px;--r-md:11px;--r-pill:999px;--sh-sm:0 1px 2px rgba(12,11,10,.05),0 1px 3px rgba(12,11,10,.05);--sh-md:0 2px 6px rgba(12,11,10,.05),0 12px 28px -8px rgba(12,11,10,.1);--sh-lg:0 6px 14px rgba(12,11,10,.06),0 30px 60px -18px rgba(12,11,10,.2);--brand:rgb(var(--brand-rgb));--brand-strong:rgb(var(--brand-strong-rgb));--grad:linear-gradient(135deg,rgb(var(--brand-rgb)) 0%,rgb(var(--brand-strong-rgb)) 100%);--display:"Space Grotesk",system-ui,sans-serif;--sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif}.tnum{font-variant-numeric:tabular-nums}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.skeleton{position:relative;overflow:hidden;background:var(--line-2);border-radius:10px}.skeleton:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.65),transparent);animation:skeleton-brilho 1.5s infinite}@keyframes skeleton-brilho{to{transform:translateX(100%)}}@media (prefers-reduced-motion:reduce){.skeleton:after{animation:none}}.font-display{font-family:var(--display)}.brand-grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.btn{font-family:var(--display);font-weight:600;font-size:.95rem;border-radius:var(--r-md);padding:12px 20px;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px;transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.btn:disabled{opacity:.55;cursor:not-allowed}.btn:active:not(:disabled){transform:translateY(1px)}.btn:focus-visible{outline:none;box-shadow:0 0 0 4px rgb(var(--brand-rgb)/.28)}.btn-primary{background:rgb(var(--brand-rgb));color:#fff;box-shadow:0 6px 16px -6px rgb(var(--brand-rgb)/.6)}.btn-primary:hover:not(:disabled){background:rgb(var(--brand-strong-rgb));box-shadow:0 10px 22px -6px rgb(var(--brand-strong-rgb)/.55);transform:translateY(-1px)}.btn-secondary{background:var(--surface);color:var(--ink);border-color:var(--line);box-shadow:var(--sh-sm)}.btn-secondary:hover:not(:disabled){border-color:rgb(var(--brand-rgb)/.35);background:rgb(var(--brand-rgb)/.06)}.btn-ghost{background:transparent;color:var(--muted)}.btn-ghost:hover:not(:disabled){color:var(--ink);background:var(--sal)}.btn-danger{background:transparent;color:var(--erro);border-color:rgba(209,67,67,.35)}.btn-danger:hover:not(:disabled){background:rgba(209,67,67,.07)}.btn-lg{padding:15px 26px;font-size:1.05rem;border-radius:var(--r-lg)}.btn-sm{padding:8px 13px;font-size:.85rem;gap:6px}.btn-icon{padding:0;width:36px;height:36px}.field{display:flex;flex-direction:column;gap:7px}.field>label{font-size:.82rem;font-weight:600;color:var(--ink)}.input{font-family:var(--sans);font-size:.98rem;width:100%;padding:12px 14px;border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);outline:none;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:rgb(var(--brand-rgb));box-shadow:0 0 0 4px rgb(var(--brand-rgb)/.14)}.input::-moz-placeholder{color:#a9a297}.input::placeholder{color:#a9a297}.dica{font-size:.78rem;line-height:1.45;color:var(--muted)}.dica b{color:var(--ink);font-weight:600}.card,.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);box-shadow:var(--sh-md)}.panel{padding:22px}.card-flat{box-shadow:var(--sh-sm)}.badge{font-size:.76rem;font-weight:600;padding:5px 12px;border-radius:var(--r-pill);display:inline-flex;align-items:center;gap:7px;border:1px solid transparent;white-space:nowrap}.badge .b-dot{width:7px;height:7px;border-radius:50%}.badge-pago{background:rgb(var(--brand-rgb)/.12);color:rgb(var(--brand-strong-rgb))}.badge-pago .b-dot{background:rgb(var(--brand-rgb))}.badge-preparo{background:rgba(232,133,43,.14);color:#a55916}.badge-preparo .b-dot{background:var(--amber)}.badge-pronto{background:rgb(var(--brand-rgb));color:#fff}.badge-pronto .b-dot{background:#fff}.badge-neutro{background:var(--sal);color:var(--muted);border-color:var(--line)}.badge-neutro .b-dot{background:var(--muted)}.badge-erro{background:rgba(209,67,67,.08);color:var(--erro);border-color:rgba(209,67,67,.3)}.badge-erro .b-dot{background:var(--erro)}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px;box-shadow:var(--sh-sm);position:relative;overflow:hidden}.kpi .k-lab{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:600}.kpi .k-val{font-family:var(--display);font-weight:700;font-size:1.7rem;letter-spacing:-.02em;margin-top:8px;font-variant-numeric:tabular-nums}.kpi .k-sub{font-size:.78rem;color:var(--muted);margin-top:4px}.kpi-hero{background:var(--grad);color:#fff;border-color:transparent}.kpi-hero .k-lab,.kpi-hero .k-sub{color:hsla(0,0%,100%,.82)}.empty{border:1.5px dashed var(--line);border-radius:var(--r-lg);padding:34px;text-align:center;background:linear-gradient(var(--surface),var(--paper))}.empty .ic{width:46px;height:46px;margin:0 auto 12px;color:rgb(var(--brand-rgb)/.35)}.glassbar{background:hsla(0,0%,100%,.6);backdrop-filter:blur(18px) saturate(1.6);border:1px solid hsla(0,0%,100%,.75);box-shadow:var(--sh-md)}.glass-card{background:hsla(0,0%,100%,.16);backdrop-filter:blur(12px) saturate(1.4);border:1px solid hsla(0,0%,100%,.35);border-radius:var(--r-lg);color:#fff}.cv{display:block}.cv-spin{transform-origin:50% 50%;animation:cvspin 2.6s linear infinite}@keyframes cvspin{to{transform:rotate(1turn)}}.senha-stage{position:relative;overflow:hidden;display:grid;place-items:center;text-align:center;background:var(--grad);border-radius:var(--r-card);box-shadow:var(--sh-lg)}.senha-stage .wm{position:absolute;color:hsla(0,0%,100%,.1)}.senha-glass{position:relative;background:hsla(0,0%,100%,.15);backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.32);border-radius:20px;color:#fff}@media (prefers-reduced-motion:reduce){.cv-spin{animation:none}.btn{transition:none}}