:root{
  --wm-bg:#fffaf6;--wm-surface:#ffffff;--wm-surface-2:#fff4ee;--wm-ink:#171321;--wm-muted:#766f7e;
  --wm-brand:#f04438;--wm-brand-2:#ff8a1f;--wm-brand-dark:#c82318;--wm-green:#1fb66f;--wm-blue:#2775f5;
  --wm-border:#eadfd8;--wm-shadow:0 18px 50px rgba(54,31,16,.10);--wm-shadow-soft:0 8px 24px rgba(54,31,16,.08);
  --wm-r-xl:30px;--wm-r-lg:22px;--wm-r-md:16px;--wm-r-sm:12px;--wm-max:1180px;
  --wm-safe-top:env(safe-area-inset-top,0px);--wm-safe-bottom:env(safe-area-inset-bottom,0px)
}
*{box-sizing:border-box}html{background:var(--wm-bg);scroll-behavior:smooth}body{margin:0;color:var(--wm-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 90% 0%,rgba(255,138,31,.13),transparent 26rem),radial-gradient(circle at 0 20%,rgba(240,68,56,.08),transparent 28rem),var(--wm-bg)}
button,input,select,textarea{font:inherit}a{color:inherit}.wm-hidden{display:none!important}.wm-muted{color:var(--wm-muted)}
.wm-auth-page{min-height:100svh;padding:calc(28px + var(--wm-safe-top)) 18px calc(34px + var(--wm-safe-bottom));display:grid;place-items:center}
.wm-auth-shell{width:min(100%,1060px);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.78fr);gap:40px;align-items:center}
.wm-auth-hero{padding:28px 12px}.wm-auth-logo{display:flex;align-items:center;gap:14px;margin-bottom:34px}.wm-auth-logo img{width:74px;height:74px;object-fit:contain;border-radius:22px;background:white;box-shadow:var(--wm-shadow-soft)}.wm-auth-logo strong{display:block;font-size:24px;letter-spacing:-.03em}.wm-auth-logo span{display:block;color:var(--wm-muted);font-size:14px;margin-top:2px}
.wm-kicker{display:inline-flex;align-items:center;gap:8px;padding:9px 13px;border-radius:999px;background:#fff1eb;color:var(--wm-brand-dark);font-weight:900;font-size:12px;letter-spacing:.03em;text-transform:uppercase}
.wm-auth-hero h1{font-size:clamp(44px,6vw,78px);line-height:.96;letter-spacing:-.065em;margin:18px 0 20px;max-width:760px}.wm-auth-hero h1 em{font-style:normal;background:linear-gradient(90deg,var(--wm-brand),var(--wm-brand-2));-webkit-background-clip:text;background-clip:text;color:transparent}.wm-auth-hero p{font-size:clamp(18px,2vw,23px);line-height:1.5;color:var(--wm-muted);max-width:680px;margin:0}
.wm-auth-benefits{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.wm-auth-benefits span{padding:10px 13px;background:rgba(255,255,255,.78);border:1px solid var(--wm-border);border-radius:999px;font-size:13px;font-weight:800}
.wm-auth-card{background:rgba(255,255,255,.94);border:1px solid rgba(234,223,216,.88);box-shadow:var(--wm-shadow);border-radius:var(--wm-r-xl);padding:28px;backdrop-filter:blur(18px)}.wm-auth-card h2{font-size:34px;letter-spacing:-.045em;margin:0 0 8px}.wm-auth-card>p{margin:0 0 22px;color:var(--wm-muted);line-height:1.5}
.wm-form{display:grid;gap:15px}.wm-field{display:grid;gap:7px;font-weight:800;font-size:13px}.wm-input-wrap{display:flex;align-items:center;gap:10px;background:#f7f3ef;border:2px solid transparent;border-radius:17px;padding:0 14px;transition:.18s}.wm-input-wrap:focus-within{background:#fff;border-color:#ffb092;box-shadow:0 0 0 4px rgba(240,68,56,.08)}.wm-input-wrap span{font-size:18px;opacity:.7}.wm-input-wrap input{width:100%;min-width:0;border:0;outline:0;background:transparent;padding:16px 0;font-size:16px;color:var(--wm-ink)}.wm-input-wrap button{border:0;background:transparent;cursor:pointer;padding:8px;color:var(--wm-muted)}
.wm-primary{border:0;border-radius:17px;padding:16px 18px;font-weight:950;font-size:16px;color:white;cursor:pointer;background:linear-gradient(100deg,var(--wm-brand),var(--wm-brand-2));box-shadow:0 12px 28px rgba(240,68,56,.24);transition:.18s}.wm-primary:hover{transform:translateY(-1px);box-shadow:0 16px 34px rgba(240,68,56,.30)}.wm-primary:active{transform:translateY(0)}.wm-secondary{border:1px solid var(--wm-border);background:white;border-radius:15px;padding:13px 16px;font-weight:850;cursor:pointer;text-decoration:none;text-align:center}.wm-link{font-weight:850;color:var(--wm-brand-dark);text-decoration:none}.wm-auth-links{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:16px;font-size:13px}.wm-auth-divider{display:flex;align-items:center;gap:12px;margin:20px 0;color:#a49890;font-size:12px}.wm-auth-divider:before,.wm-auth-divider:after{content:"";height:1px;background:var(--wm-border);flex:1}.wm-order-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;text-decoration:none;background:linear-gradient(120deg,#fff6e9,#ffe9dc);border:1px solid #ffe0c9;border-radius:18px;padding:14px 16px}.wm-order-cta strong{display:block;font-size:14px}.wm-order-cta small{display:block;color:var(--wm-brand-dark);font-weight:850;margin-top:3px}.wm-alert{border-radius:15px;padding:13px 15px;margin:0 0 16px;font-size:13px;font-weight:750}.wm-alert.error{background:#fff0ef;color:#a91d16;border:1px solid #ffc9c4}.wm-alert.info{background:#eef5ff;color:#174c9a;border:1px solid #c9ddff}.wm-security-note{margin-top:18px;padding:12px 14px;border-radius:14px;background:#f8f6f4;color:#7d756f;font-size:11px;line-height:1.5}
.wm-install{display:flex;gap:10px;align-items:center;margin-top:14px;padding:11px 13px;border:1px dashed #e5cabc;border-radius:14px;background:#fffaf6;font-size:12px}.wm-install button{margin-left:auto;border:0;border-radius:999px;background:#18131e;color:#fff;padding:8px 11px;font-weight:850;cursor:pointer}
.wm-access-page{min-height:100svh;padding:calc(24px + var(--wm-safe-top)) 18px calc(36px + var(--wm-safe-bottom));max-width:780px;margin:0 auto}.wm-access-top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.wm-access-person{display:flex;align-items:center;gap:12px}.wm-avatar{width:52px;height:52px;border-radius:18px;background:linear-gradient(135deg,#ffddcf,#ffeecf);display:grid;place-items:center;font-weight:950;font-size:18px}.wm-access-top a{text-decoration:none;font-weight:850;color:var(--wm-muted)}.wm-access-page h1{font-size:clamp(36px,9vw,58px);line-height:1;letter-spacing:-.055em;margin:8px 0 10px}.wm-access-page>p{color:var(--wm-muted);font-size:17px;margin:0 0 24px}.wm-access-grid{display:grid;gap:13px}.wm-access-card{width:100%;display:grid;grid-template-columns:62px minmax(0,1fr) 28px;align-items:center;gap:14px;border:1px solid var(--wm-border);border-radius:24px;padding:15px;background:white;text-align:left;cursor:pointer;color:var(--wm-ink);box-shadow:var(--wm-shadow-soft);transition:.18s}.wm-access-card:hover,.wm-access-card:focus-visible{transform:translateY(-2px);box-shadow:var(--wm-shadow);outline:none}.wm-access-card.platform{background:linear-gradient(120deg,#fff0ef,#fff7f2)}.wm-access-card.owner{background:linear-gradient(120deg,#fff5e9,#fff9ed)}.wm-access-card.staff{background:linear-gradient(120deg,#f1efff,#faf8ff)}.wm-access-card.customer{background:linear-gradient(120deg,#ebfbf2,#f7fff9)}.wm-access-card.saas{background:linear-gradient(120deg,#eef5ff,#f8fbff)}.wm-access-icon{width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:rgba(255,255,255,.82);font-size:27px;box-shadow:0 6px 18px rgba(38,27,19,.06)}.wm-access-copy strong{display:block;font-size:18px;letter-spacing:-.02em}.wm-access-copy span{display:block;font-size:12px;font-weight:900;color:var(--wm-brand-dark);margin-top:2px}.wm-access-copy small{display:block;color:var(--wm-muted);margin-top:5px;line-height:1.35}.wm-access-arrow{font-size:30px;color:var(--wm-brand)}
.wm-app-body{background:#f8f7f5}.wm-topbar{position:sticky;top:0;z-index:70;padding:calc(10px + var(--wm-safe-top)) 16px 10px;background:rgba(248,247,245,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(226,221,216,.76)}.wm-topbar-inner{max-width:var(--wm-max);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:14px}.wm-brand-lock{display:flex;align-items:center;gap:11px;min-width:0}.wm-brand-lock img{width:43px;height:43px;object-fit:contain;border-radius:14px;background:white}.wm-brand-lock strong{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wm-brand-lock small{display:block;color:var(--wm-muted);font-size:11px;margin-top:2px}.wm-top-actions{display:flex;gap:8px;align-items:center}.wm-icon-btn{width:43px;height:43px;border-radius:14px;border:1px solid var(--wm-border);background:white;display:grid;place-items:center;text-decoration:none;cursor:pointer;position:relative}.wm-badge{position:absolute;right:-3px;top:-4px;min-width:18px;height:18px;border-radius:999px;background:var(--wm-brand);color:white;font-size:10px;font-weight:900;display:grid;place-items:center;padding:0 5px}
.wm-layout{max-width:var(--wm-max);margin:0 auto;display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px;padding:20px 18px 110px}.wm-sidebar{position:sticky;top:88px;align-self:start;background:white;border:1px solid var(--wm-border);border-radius:24px;padding:12px;box-shadow:var(--wm-shadow-soft);max-height:calc(100svh - 110px);overflow:auto}.wm-sidebar strong{display:block;padding:11px 12px 7px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#9b918a}.wm-sidebar a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:14px;text-decoration:none;font-size:13px;font-weight:780;color:#554f58}.wm-sidebar a:hover{background:#faf4f0}.wm-sidebar a.active{background:#fff0eb;color:#b62b21}.wm-main{min-width:0}.wm-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:8px 0 22px}.wm-page-head small{font-weight:900;color:var(--wm-brand);letter-spacing:.08em}.wm-page-head h1{font-size:clamp(38px,5vw,62px);letter-spacing:-.055em;line-height:1;margin:5px 0 7px}.wm-page-head p{color:var(--wm-muted);font-size:16px;margin:0;max-width:680px}.wm-page-action{white-space:nowrap}
.wm-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.wm-kpi{border-radius:22px;padding:17px;min-height:134px;background:white;border:1px solid var(--wm-border);box-shadow:var(--wm-shadow-soft);display:flex;flex-direction:column;justify-content:space-between}.wm-kpi.green{background:linear-gradient(145deg,#eafaf1,#f8fff9)}.wm-kpi.red{background:linear-gradient(145deg,#fff0ef,#fff9f7)}.wm-kpi.orange{background:linear-gradient(145deg,#fff5df,#fffaf1)}.wm-kpi.blue{background:linear-gradient(145deg,#eef5ff,#f8fbff)}.wm-kpi span{font-size:12px;font-weight:850;color:#6f6870}.wm-kpi strong{font-size:clamp(28px,4vw,42px);letter-spacing:-.05em;line-height:1}.wm-kpi small{font-size:11px;color:var(--wm-muted)}
.wm-panel{background:white;border:1px solid var(--wm-border);border-radius:24px;padding:18px;box-shadow:var(--wm-shadow-soft);margin-bottom:17px}.wm-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.wm-panel-head h2{margin:0;font-size:23px;letter-spacing:-.035em}.wm-panel-head a{text-decoration:none;color:var(--wm-brand);font-weight:850;font-size:12px}.wm-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.wm-quick{min-height:112px;border:1px solid var(--wm-border);background:#fcfbfa;border-radius:19px;padding:14px;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;transition:.18s}.wm-quick:hover{transform:translateY(-2px);box-shadow:var(--wm-shadow-soft)}.wm-quick i{font-style:normal;font-size:26px}.wm-quick strong{font-size:13px}.wm-quick small{font-size:10px;color:var(--wm-muted)}
.wm-bottom-nav{display:none;position:fixed;left:10px;right:10px;bottom:calc(10px + var(--wm-safe-bottom));z-index:90;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border:1px solid rgba(225,216,210,.92);box-shadow:0 14px 40px rgba(47,31,22,.18);border-radius:22px;padding:7px}.wm-bottom-nav a{flex:1;min-width:0;text-align:center;text-decoration:none;color:#827a81;font-size:10px;font-weight:850;padding:7px 2px;border-radius:14px}.wm-bottom-nav a b{display:block;font-size:19px;line-height:1.1;margin-bottom:3px}.wm-bottom-nav a.active{background:#fff0eb;color:var(--wm-brand-dark)}
.wm-menu-toggle{display:none;border:0;background:white;width:43px;height:43px;border-radius:14px;font-size:20px;box-shadow:var(--wm-shadow-soft)}.wm-sidebar-backdrop{display:none}.wm-table-wrap{overflow:auto;border-radius:18px;border:1px solid var(--wm-border)}.wm-table{width:100%;border-collapse:collapse;background:white}.wm-table th,.wm-table td{padding:12px 13px;border-bottom:1px solid #eee7e2;text-align:left;font-size:13px}.wm-table th{font-size:11px;color:#817981;text-transform:uppercase;letter-spacing:.05em}.wm-table tr:last-child td{border-bottom:0}
@media(max-width:900px){.wm-auth-shell{grid-template-columns:1fr;max-width:620px}.wm-auth-hero{padding:0 4px}.wm-auth-hero h1{font-size:52px}.wm-auth-benefits{display:none}.wm-auth-card{padding:22px}.wm-layout{display:block;padding:15px 14px 104px}.wm-sidebar{position:fixed;left:10px;top:calc(10px + var(--wm-safe-top));bottom:calc(10px + var(--wm-safe-bottom));width:min(84vw,330px);max-height:none;z-index:110;transform:translateX(calc(-100% - 28px));transition:.22s}.wm-sidebar.open{transform:translateX(0)}.wm-sidebar-backdrop{position:fixed;inset:0;background:rgba(20,16,18,.38);z-index:105;border:0}.wm-sidebar-backdrop.open{display:block}.wm-menu-toggle{display:grid;place-items:center}.wm-bottom-nav{display:flex}.wm-topbar-inner{justify-content:flex-start}.wm-top-actions{margin-left:auto}.wm-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.wm-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.wm-page-head{align-items:flex-start}.wm-page-head h1{font-size:46px}}
@media(max-width:560px){.wm-auth-page{display:block;padding:calc(18px + var(--wm-safe-top)) 14px calc(24px + var(--wm-safe-bottom))}.wm-auth-shell{gap:18px}.wm-auth-logo{margin-bottom:20px}.wm-auth-logo img{width:58px;height:58px}.wm-auth-logo strong{font-size:20px}.wm-auth-hero h1{font-size:43px;margin:14px 0}.wm-auth-hero p{font-size:16px}.wm-auth-card h2{font-size:30px}.wm-access-page h1{font-size:44px}.wm-access-card{grid-template-columns:54px minmax(0,1fr) 24px;padding:13px}.wm-access-icon{width:54px;height:54px;border-radius:17px}.wm-access-copy strong{font-size:16px}.wm-page-head{display:block}.wm-page-action{margin-top:12px;display:inline-block}.wm-page-head h1{font-size:42px}.wm-kpis{grid-template-columns:1fr 1fr;gap:9px}.wm-kpi{min-height:118px;padding:14px}.wm-kpi strong{font-size:30px}.wm-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wm-quick{min-height:98px}.wm-topbar{padding-left:10px;padding-right:10px}.wm-brand-lock small{max-width:180px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Compatibilidade visual dos módulos existentes durante o Rebuild 3.0 */
.wm-main .admin-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:8px 0 22px}.wm-main .admin-title small{font-weight:950;color:var(--wm-brand);letter-spacing:.08em}.wm-main .admin-title h1{font-size:clamp(38px,5vw,62px);line-height:1;letter-spacing:-.055em;margin:5px 0 7px}.wm-main .admin-title p{font-size:16px;color:var(--wm-muted);margin:0;max-width:720px}.wm-main .button-primary,.wm-main .submit-primary{border:0!important;border-radius:16px!important;background:linear-gradient(100deg,var(--wm-brand),var(--wm-brand-2))!important;color:white!important;font-weight:900!important;box-shadow:0 10px 24px rgba(240,68,56,.18)!important}.wm-main .button-secondary{border-radius:14px!important}.wm-main .kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.wm-main .kpis article{border-radius:22px!important;border:1px solid var(--wm-border)!important;background:white!important;box-shadow:var(--wm-shadow-soft)!important;padding:17px!important;min-height:128px}.wm-main .kpis article:nth-child(1){background:linear-gradient(145deg,#eafaf1,#f8fff9)!important}.wm-main .kpis article:nth-child(2){background:linear-gradient(145deg,#fff0ef,#fff9f7)!important}.wm-main .kpis article:nth-child(3){background:linear-gradient(145deg,#fff5df,#fffaf1)!important}.wm-main .kpis article:nth-child(4){background:linear-gradient(145deg,#eef5ff,#f8fbff)!important}.wm-main .kpis strong{font-size:clamp(28px,4vw,42px)!important;letter-spacing:-.05em}.wm-main .panel,.wm-main .admin-modules{border:1px solid var(--wm-border)!important;border-radius:24px!important;background:white!important;box-shadow:var(--wm-shadow-soft)!important;padding:18px!important}.wm-main .panel h2,.wm-main .admin-modules h2{font-size:24px!important;letter-spacing:-.035em}.wm-main .module-grid{gap:10px!important}.wm-main .module-grid article{border-radius:18px!important;background:#fcfbfa!important;border:1px solid var(--wm-border)!important}.wm-main .form-grid input,.wm-main .form-grid select,.wm-main .form-grid textarea,.wm-main input,.wm-main select,.wm-main textarea{border-radius:14px}.wm-main .data-table{background:white}.wm-main .table-wrap{border-radius:18px;overflow:auto}.wm-main .alert{border-radius:16px!important}.wm-main details{border-radius:16px}.wm-main .tabs,.wm-main .toolbar{border-radius:18px}
@media(max-width:900px){.wm-main .admin-title{align-items:flex-start}.wm-main .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.wm-main .admin-title h1{font-size:46px}}@media(max-width:560px){.wm-main .admin-title{display:block}.wm-main .admin-title .button-primary{display:inline-flex;margin-top:13px}.wm-main .admin-title h1{font-size:42px}.wm-main .kpis{gap:9px}.wm-main .kpis article{min-height:115px;padding:14px!important}.wm-main .kpis strong{font-size:29px!important}.wm-main .table-wrap table.data-table,.wm-main .table-wrap thead,.wm-main .table-wrap tbody,.wm-main .table-wrap tr,.wm-main .table-wrap th,.wm-main .table-wrap td{font-size:12px}}

/* 3.0.3 — Premium polish: Admin Geral, marca laranja e foco sem azul de autofill */
:root{--wm-focus:#ff7a1a;--wm-focus-soft:rgba(255,122,26,.14)}

/* Marca: mantém a geometria do símbolo oficial e remove o wordmark duplicado dentro da imagem. */
.wm-auth-logo img,.wm-brand-lock img{object-fit:contain}
.wm-auth-logo img{width:78px;height:58px;border-radius:18px;padding:7px 9px;background:linear-gradient(145deg,#fff,#fff7f0);border:1px solid #f6ded0;box-shadow:0 10px 28px rgba(205,91,27,.12)}
.wm-brand-lock img{width:52px;height:42px;border-radius:15px;padding:6px 7px;background:linear-gradient(145deg,#fff,#fff7f0);border:1px solid #f3ded2;box-shadow:0 7px 20px rgba(205,91,27,.09)}

/* Foco acessível premium. Evita o retângulo azul do autofill/UA sem remover indicação de foco. */
.wm-input-wrap{background:#fbf7f3;border:1px solid #eee2da;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.wm-input-wrap:focus-within{background:#fff;border-color:#ff9a59;box-shadow:0 0 0 4px var(--wm-focus-soft),0 9px 24px rgba(77,42,20,.06)}
.wm-input-wrap input:focus,.wm-input-wrap button:focus{outline:none}
.wm-input-wrap button:focus-visible,.wm-primary:focus-visible,.wm-link:focus-visible,.wm-order-cta:focus-visible,.wm-icon-btn:focus-visible,.wm-sidebar a:focus-visible,.wm-main button:focus-visible,.wm-main a:focus-visible{outline:3px solid rgba(255,122,26,.36);outline-offset:3px}
input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active,textarea:-webkit-autofill,select:-webkit-autofill{
  -webkit-text-fill-color:var(--wm-ink)!important;
  caret-color:var(--wm-ink)!important;
  -webkit-box-shadow:0 0 0 1000px #fffaf7 inset!important;
  box-shadow:0 0 0 1000px #fffaf7 inset!important;
  transition:background-color 99999s ease-out 0s;
}
::selection{background:#ffd9bf;color:#3a1e0b}

/* Admin Geral: formulário SaaS com hierarquia de produto premium. */
.wm-saas-create{padding:0!important;overflow:hidden;background:linear-gradient(180deg,#fff 0%,#fffdfb 100%)!important}
.wm-form-hero{display:flex;align-items:flex-start;gap:16px;padding:24px 26px 21px;border-bottom:1px solid #f1e7e0;background:radial-gradient(circle at 100% 0,rgba(255,138,31,.10),transparent 19rem),linear-gradient(135deg,#fffdfb,#fff8f3)}
.wm-form-hero-icon{flex:0 0 50px;width:50px;height:50px;border-radius:17px;display:grid;place-items:center;color:white;font-size:22px;background:linear-gradient(145deg,#ff9c26,#f04438);box-shadow:0 12px 28px rgba(240,68,56,.20)}
.wm-form-hero small{display:block;margin:2px 0 5px;color:var(--wm-brand);font-size:10px;font-weight:950;letter-spacing:.13em}
.wm-form-hero h2{margin:0!important;font-size:clamp(27px,3vw,36px)!important;letter-spacing:-.045em!important}
.wm-form-hero p{margin:7px 0 0!important;max-width:740px;color:var(--wm-muted)!important;line-height:1.55}
.wm-saas-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;padding:24px 26px 26px}
.wm-form-section-title{grid-column:1/-1;display:flex;align-items:center;gap:12px;margin-top:7px;padding:9px 0 4px}
.wm-form-section-title:first-of-type{margin-top:0}
.wm-form-section-title>span{width:34px;height:34px;display:grid;place-items:center;border-radius:12px;background:#fff1e8;color:#c83b24;font-size:11px;font-weight:950;border:1px solid #ffd9c5}
.wm-form-section-title strong{display:block;font-size:15px;letter-spacing:-.015em}
.wm-form-section-title small{display:block;margin-top:2px;color:var(--wm-muted);font-size:11px}
.wm-premium-field{display:grid;gap:8px;padding:14px 15px 15px;border-radius:18px;border:1px solid #eee5df;background:rgba(255,255,255,.9);transition:border-color .18s,box-shadow .18s,transform .18s}
.wm-premium-field:focus-within{border-color:#ffb184;box-shadow:0 0 0 4px rgba(255,122,26,.09),0 12px 25px rgba(60,34,19,.05);transform:translateY(-1px)}
.wm-premium-field label{font-size:12px;font-weight:900;color:#332c35}
.wm-premium-field label em{font-style:normal;font-weight:700;color:#9b918a;font-size:10px;margin-left:4px}
.wm-premium-field input,.wm-premium-field select,.wm-premium-field textarea{width:100%;border:0!important;outline:0!important;background:#faf7f4!important;color:var(--wm-ink);border-radius:12px!important;padding:12px 13px!important;box-shadow:none!important;font-size:15px}
.wm-premium-field input,.wm-premium-field select{min-height:47px}
.wm-premium-field textarea{resize:vertical;min-height:104px;line-height:1.5}
.wm-premium-field input:focus,.wm-premium-field select:focus,.wm-premium-field textarea:focus{background:#fff!important;box-shadow:inset 0 0 0 1px #ffd1b4!important}
.wm-premium-field>small{font-size:10.5px;color:#8b817b;line-height:1.4}
.wm-premium-field-wide{grid-column:1/-1}
.wm-form-submit{grid-column:1/-1;margin-top:7px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 18px;border-radius:20px;background:#1b1720;color:white}
.wm-form-submit strong{display:block;font-size:14px}.wm-form-submit small{display:block;margin-top:3px;color:#bcb5c2;font-size:11px;line-height:1.35}
.wm-form-submit .submit-primary{flex:0 0 auto;min-width:230px;min-height:50px!important;box-shadow:0 11px 28px rgba(240,68,56,.26)!important}

/* Campos genéricos do Admin também seguem o foco laranja. */
.wm-main input:focus,.wm-main select:focus,.wm-main textarea:focus{outline:none!important;border-color:#ffab78!important;box-shadow:0 0 0 4px rgba(255,122,26,.10)!important}

@media(max-width:720px){
  .wm-form-hero{padding:20px 17px 18px}.wm-form-hero-icon{width:44px;height:44px;flex-basis:44px;border-radius:15px}
  .wm-saas-form{grid-template-columns:1fr;padding:18px 16px 20px;gap:11px}.wm-form-section-title,.wm-premium-field-wide,.wm-form-submit{grid-column:auto}
  .wm-form-section-title{margin-top:11px}.wm-form-submit{align-items:stretch;flex-direction:column}.wm-form-submit .submit-primary{width:100%;min-width:0}
}

/* 3.0.4 — Mobile-first hardening: sem rolagem horizontal, texto contido e densidade confortável */
html,body{max-width:100%;overflow-x:clip}
.wm-app-body,.wm-layout,.wm-main,.wm-panel,.wm-kpis,.wm-kpi,.wm-quick-grid,.wm-quick,.wm-quick>div,.wm-page-head,.wm-page-head>div,.wm-form-hero,.wm-form-hero>div,.wm-saas-form,.wm-saas-form>*{min-width:0;max-width:100%;box-sizing:border-box}
.wm-main img,.wm-main svg,.wm-main video,.wm-main canvas{max-width:100%;height:auto}
.wm-page-head h1,.wm-page-head p,.wm-panel-head h2,.wm-quick strong,.wm-quick small,.wm-kpi strong,.wm-kpi small{max-width:100%;overflow-wrap:anywhere;word-break:normal}
.wm-quick>div{width:100%}
.wm-quick strong,.wm-quick small{display:block}
.wm-quick small{line-height:1.32;margin-top:4px}
.wm-table-wrap,.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
.wm-table,.data-table{max-width:none}
.wm-form-submit,.wm-form-hero{overflow:hidden}

@media(max-width:900px){
  .wm-layout{width:100%;max-width:100%;padding:13px 12px calc(102px + var(--wm-safe-bottom));overflow-x:clip}
  .wm-main{width:100%;max-width:100%;overflow-x:clip}
  .wm-page-head{width:100%;gap:12px;margin:5px 0 17px}
  .wm-page-head>div{width:100%}
  .wm-page-head h1{font-size:clamp(38px,8vw,46px);line-height:.98}
  .wm-page-head p{font-size:15px;line-height:1.42}
  .wm-page-action{max-width:100%;white-space:normal;text-align:center}
  .wm-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .wm-quick{min-height:112px;overflow:hidden}
}

@media(max-width:560px){
  .wm-topbar{padding-left:6px;padding-right:6px}
  .wm-topbar-inner{min-width:0;gap:7px}
  .wm-brand-lock{min-width:0;gap:8px}
  .wm-brand-lock>div{min-width:0}
  .wm-brand-lock strong{display:block;max-width:52vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .wm-brand-lock small{display:block;max-width:52vw!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .wm-top-actions{gap:5px}
  .wm-icon-btn{width:40px;height:40px;flex:0 0 40px}

  .wm-layout{padding:9px 9px calc(94px + var(--wm-safe-bottom))}
  .wm-page-head{margin:2px 0 14px}
  .wm-page-head small{font-size:10px;line-height:1.2}
  .wm-page-head h1{font-size:clamp(33px,10.7vw,40px)!important;line-height:.98;margin:5px 0 8px;letter-spacing:-.05em}
  .wm-page-head p{font-size:14px;line-height:1.38}
  .wm-page-action{display:flex!important;align-items:center;justify-content:center;width:100%;min-height:46px;margin-top:11px;padding:12px 14px!important;font-size:14px!important;line-height:1.2}

  .wm-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:13px}
  .wm-kpi{min-height:104px;padding:12px;border-radius:18px}
  .wm-kpi span{font-size:11px;line-height:1.2}
  .wm-kpi strong{font-size:clamp(23px,7.2vw,28px)!important;line-height:1.02;letter-spacing:-.04em}
  .wm-kpi.red strong{font-size:clamp(21px,6.2vw,25px)!important}
  .wm-kpi small{font-size:10.5px;line-height:1.25}

  .wm-panel{padding:13px;border-radius:18px;margin-bottom:12px;overflow:hidden}
  .wm-panel-head{gap:8px;margin-bottom:11px}
  .wm-panel-head h2{font-size:19px;line-height:1.1}
  .wm-panel-head a{font-size:11px;white-space:nowrap}
  .wm-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .wm-quick{min-height:116px;padding:11px;border-radius:16px;overflow:hidden}
  .wm-quick i{font-size:22px;line-height:1}
  .wm-quick strong{font-size:14px;line-height:1.15}
  .wm-quick small{font-size:11px;line-height:1.28;color:var(--wm-muted)}

  .wm-bottom-nav{left:6px;right:6px;bottom:calc(6px + var(--wm-safe-bottom));padding:5px;border-radius:18px;gap:1px}
  .wm-bottom-nav a{min-width:0;padding:6px 1px;font-size:9px;line-height:1.05;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .wm-bottom-nav a b{font-size:17px;margin-bottom:3px}

  .wm-saas-create{border-radius:18px!important}
  .wm-form-hero{padding:17px 14px 15px;gap:11px}
  .wm-form-hero h2{font-size:27px!important;line-height:1}
  .wm-form-hero p{font-size:13px;line-height:1.42}
  .wm-saas-form{padding:15px 13px 17px;gap:10px}
  .wm-premium-field{padding:12px;border-radius:15px}
  .wm-form-submit{padding:14px;border-radius:16px}

  .wm-auth-page{overflow-x:clip}
  .wm-auth-shell,.wm-auth-hero,.wm-auth-card{min-width:0;max-width:100%}
  .wm-auth-hero h1{font-size:clamp(35px,10.5vw,43px);overflow-wrap:anywhere}
  .wm-auth-card{padding:18px;border-radius:21px}
  .wm-auth-card h2{font-size:28px}
}

@media(max-width:380px){
  .wm-layout{padding-left:7px;padding-right:7px}
  .wm-page-head h1{font-size:34px!important}
  .wm-kpi{padding:10px;min-height:100px}
  .wm-kpi strong{font-size:23px!important}
  .wm-kpi.red strong{font-size:20px!important}
  .wm-quick{padding:10px;min-height:112px}
  .wm-quick strong{font-size:13px}
  .wm-quick small{font-size:10.5px}
}

/* Quando A+ estiver em 130%, o layout privilegia legibilidade em vez de apertar texto. */
@media(max-width:560px){
  html[data-wakko-font-scale="130"] .wm-kpis,
  html[data-wakko-font-scale="130"] .wm-quick-grid{grid-template-columns:1fr}
  html[data-wakko-font-scale="130"] .wm-quick{min-height:96px}
  html[data-wakko-font-scale="130"] .wm-bottom-nav a{font-size:8px}
}

/* 3.0.7 — Portal do Cliente SaaS: contexto próprio sem loop para o seletor */
.wm-saas-portal{width:min(100%,980px);min-height:100svh;margin:0 auto;padding:calc(24px + var(--wm-safe-top)) 18px calc(44px + var(--wm-safe-bottom))}
.wm-saas-portal-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:30px}
.wm-saas-portal-top .wm-muted{font-size:12px;margin-top:2px}.wm-saas-portal-actions{display:flex;align-items:center;gap:10px}.wm-saas-portal-actions a{text-decoration:none;font-size:13px;font-weight:900;padding:10px 13px;border-radius:999px;border:1px solid var(--wm-border);background:rgba(255,255,255,.78)}
.wm-saas-portal-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.wm-saas-portal-hero>div{min-width:0}.wm-saas-portal-hero h1{font-size:clamp(42px,7vw,68px);line-height:.95;letter-spacing:-.06em;margin:13px 0 12px}.wm-saas-portal-hero p{max-width:720px;margin:0;color:var(--wm-muted);font-size:17px;line-height:1.5}
.wm-saas-status{flex:0 0 auto;display:inline-flex;align-items:center;padding:10px 13px;border-radius:999px;font-size:12px;font-weight:950}.wm-saas-status.active{background:#e9faef;color:#137a47}.wm-saas-status.trial{background:#fff3d9;color:#9b6100}
.wm-saas-space-card{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:18px;padding:22px;border:1px solid var(--wm-border);border-radius:26px;background:linear-gradient(135deg,#fff8f0,#fff);box-shadow:var(--wm-shadow-soft);margin-bottom:15px}.wm-saas-space-icon{width:70px;height:70px;border-radius:22px;display:grid;place-items:center;font-size:31px;background:linear-gradient(145deg,#fff0df,#fff9f1);border:1px solid #ffe0c8}.wm-saas-space-copy{min-width:0}.wm-saas-space-copy>span,.wm-saas-meta-grid article>span{display:block;color:var(--wm-brand-dark);font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.wm-saas-space-copy h2{font-size:31px;line-height:1;letter-spacing:-.045em;margin:6px 0 7px;overflow-wrap:anywhere}.wm-saas-space-copy p{margin:0;color:var(--wm-muted);line-height:1.45}.wm-saas-space-cta form{margin:0}.wm-saas-space-cta .wm-primary,.wm-saas-space-cta .wm-secondary{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;text-decoration:none}
.wm-saas-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin-bottom:15px}.wm-saas-meta-grid article{min-width:0;padding:17px;border:1px solid var(--wm-border);border-radius:21px;background:rgba(255,255,255,.88);box-shadow:0 7px 22px rgba(54,31,16,.05)}.wm-saas-meta-grid article:nth-child(1){background:linear-gradient(145deg,#eef5ff,#fff)}.wm-saas-meta-grid article:nth-child(2){background:linear-gradient(145deg,#eafaf1,#fff)}.wm-saas-meta-grid article:nth-child(3){background:linear-gradient(145deg,#fff5df,#fff)}.wm-saas-meta-grid article:nth-child(4){background:linear-gradient(145deg,#fff0ef,#fff)}.wm-saas-meta-grid strong{display:block;margin:7px 0 5px;font-size:24px;letter-spacing:-.035em;overflow-wrap:anywhere}.wm-saas-meta-grid small{display:block;color:var(--wm-muted);line-height:1.4;overflow-wrap:anywhere}
.wm-saas-info-card{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px;border-radius:25px;background:#1b1720;color:white}.wm-saas-info-card>div{min-width:0}.wm-saas-info-card .wm-kicker{background:rgba(255,255,255,.09);color:#ffd0b2}.wm-saas-info-card h2{font-size:27px;letter-spacing:-.04em;margin:12px 0 7px}.wm-saas-info-card p{margin:0;color:#c9c2cd;line-height:1.5;max-width:680px}.wm-saas-info-card .wm-secondary{flex:0 0 auto;background:white;color:#1b1720;text-decoration:none}
@media(max-width:760px){.wm-saas-portal{padding-left:12px;padding-right:12px}.wm-saas-portal-top{align-items:flex-start}.wm-saas-portal-actions{flex-direction:column;align-items:stretch}.wm-saas-portal-hero{display:block}.wm-saas-status{margin-top:15px}.wm-saas-space-card{grid-template-columns:58px minmax(0,1fr);padding:16px;gap:13px}.wm-saas-space-icon{width:58px;height:58px;border-radius:18px;font-size:26px}.wm-saas-space-copy h2{font-size:25px}.wm-saas-space-cta{grid-column:1/-1}.wm-saas-space-cta .wm-primary,.wm-saas-space-cta .wm-secondary{width:100%;white-space:normal}.wm-saas-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wm-saas-info-card{align-items:stretch;flex-direction:column}.wm-saas-info-card .wm-secondary{width:100%}}
@media(max-width:430px){.wm-saas-portal-top{gap:10px}.wm-saas-portal-top .wm-access-person{min-width:0}.wm-saas-portal-top .wm-access-person>div:last-child{min-width:0}.wm-saas-portal-top .wm-access-person strong,.wm-saas-portal-top .wm-muted{display:block;max-width:55vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wm-saas-portal-actions{gap:5px}.wm-saas-portal-actions a{padding:8px 10px;font-size:11px}.wm-saas-portal-hero h1{font-size:39px}.wm-saas-portal-hero p{font-size:14px}.wm-saas-meta-grid{grid-template-columns:1fr}.wm-saas-info-card h2{font-size:23px}}


/* ===== Wakko Menu 3.0.13 — hardening responsivo global ===== */
html,body{max-width:100%;overflow-x:hidden}
.wm-main,.wm-layout,.wm-auth-shell,.wm-auth-card,.wm-auth-hero,.wm-access-page,.wm-access-grid,.wm-access-card,.wm-saas-portal{min-width:0;max-width:100%}
.wm-access-copy,.wm-page-head>div,.wm-brand-lock>div,.wm-saas-space-copy{min-width:0}
.wm-primary,.wm-secondary,.wm-page-action,.wm-access-card,.wm-saas-portal a,.wm-saas-portal button{
  max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal;line-height:1.2;
}
.wm-form input,.wm-form select,.wm-form textarea,.wm-main input,.wm-main select,.wm-main textarea{min-width:0;max-width:100%}
@supports (min-height:100dvh){
  .wm-auth-page,.wm-access-page,.wm-saas-portal{min-height:100dvh}
  .wm-sidebar{max-height:calc(100dvh - 110px)}
}
@media(max-width:900px){
  .wm-layout{padding-bottom:calc(112px + var(--wm-safe-bottom));overflow-x:hidden}
  .wm-main{overflow-x:hidden}
  .wm-bottom-nav{bottom:calc(8px + var(--wm-safe-bottom));max-width:calc(100% - 12px);margin-inline:auto}
  .wm-table-wrap,.table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch}
}
@media(max-width:560px){
  .wm-page-head h1,.wm-auth-hero h1,.wm-access-page h1,.wm-saas-portal-hero h1{overflow-wrap:anywhere}
  .wm-access-card{grid-template-columns:50px minmax(0,1fr) 22px;gap:10px}
  .wm-access-icon{width:50px;height:50px}
  .wm-access-copy strong,.wm-access-copy span,.wm-access-copy small{overflow-wrap:anywhere}
  .wm-primary,.wm-secondary,.wm-page-action{min-height:44px;display:flex;align-items:center;justify-content:center;text-align:center}
}

/* ===== Wakko Menu 3.0.14 — gestão premium de Clientes SaaS ===== */
.wm-row-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-width:250px}
.wm-row-actions form{margin:0}.wm-action-btn{appearance:none;border:1px solid #eaded6;background:#fff;color:#302733;text-decoration:none;border-radius:11px;padding:8px 10px;font:inherit;font-size:12px;font-weight:900;line-height:1;cursor:pointer;white-space:nowrap;transition:.16s}
.wm-action-btn:hover{border-color:#ffb38d;background:#fff8f4;transform:translateY(-1px)}
.wm-action-btn:focus-visible{outline:3px solid rgba(255,122,26,.32);outline-offset:2px}
.wm-action-btn.danger{border-color:#ffd1cb;color:#b72d25;background:#fff5f3}.wm-action-btn.danger:hover{background:#ffe9e5;border-color:#ffaaa0}
.wm-status-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 10px;border-radius:999px;font-size:11px;font-weight:950;white-space:nowrap}.wm-status-badge.active{background:#e9f9ef;color:#137a47}.wm-status-badge.trial{background:#fff3d9;color:#976000}.wm-status-badge.suspended{background:#fff0ef;color:#b52f27}
.wm-client-editor,.wm-password-reset{scroll-margin-top:22px;border-color:#f2d7c9!important;background:linear-gradient(180deg,#fff,#fffdfb)!important}
.wm-client-editor-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.wm-client-editor-head>div{min-width:0}.wm-client-editor-head small{display:block;color:var(--wm-brand);font-size:11px;font-weight:950;letter-spacing:.11em}.wm-client-editor-head h2{font-size:clamp(29px,4vw,39px)!important;line-height:1;margin:6px 0 7px!important;overflow-wrap:anywhere}.wm-client-editor-head p{margin:0;color:var(--wm-muted);line-height:1.45}
.wm-client-edit-form,.wm-reset-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.wm-client-edit-form label,.wm-reset-form label{display:grid;gap:7px;min-width:0;font-size:12px;font-weight:900}.wm-client-edit-form label small,.wm-reset-form label small{font-weight:650;color:var(--wm-muted);line-height:1.4}.wm-client-edit-form input,.wm-client-edit-form select,.wm-client-edit-form textarea,.wm-reset-form input{width:100%;min-width:0;border:1px solid #eaded6;background:#fbf8f6;border-radius:14px;padding:13px 14px;color:var(--wm-ink);outline:none}.wm-client-edit-form input:focus,.wm-client-edit-form select:focus,.wm-client-edit-form textarea:focus,.wm-reset-form input:focus{background:#fff;border-color:#ff9a62;box-shadow:0 0 0 4px rgba(255,122,26,.10)}
.wm-client-edit-form .full,.wm-reset-form .full{grid-column:1/-1}.wm-client-edit-submit{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 15px;border-radius:17px;background:#1b1720;color:#fff}.wm-client-edit-submit span{color:#cfc7d2;font-size:12px;line-height:1.4}.wm-client-edit-submit button{flex:0 0 auto}
.wm-password-reset{background:linear-gradient(180deg,#fffaf7,#fff)!important}.wm-password-reset .alert.warning{background:#fff7df;border:1px solid #f5d792;color:#6f4b00}
.wm-configure-inline{position:relative}.wm-configure-inline>summary{list-style:none}.wm-configure-inline>summary::-webkit-details-marker{display:none}.wm-configure-inline[open]>form{position:absolute;z-index:20;right:0;top:calc(100% + 8px);width:min(320px,80vw);padding:14px;border:1px solid var(--wm-border);border-radius:16px;background:#fff;box-shadow:0 16px 40px rgba(44,28,19,.16);display:grid;gap:10px}.wm-configure-inline form label{display:grid;gap:5px;font-size:12px;font-weight:850}.wm-configure-inline form input{width:100%}
@media(max-width:760px){.wm-client-editor-head{flex-direction:column}.wm-client-edit-form,.wm-reset-form{grid-template-columns:1fr}.wm-client-edit-form .full,.wm-reset-form .full{grid-column:auto}.wm-client-edit-submit{align-items:stretch;flex-direction:column}.wm-client-edit-submit button{width:100%}.wm-row-actions{min-width:220px}.wm-action-btn{min-height:40px;display:inline-flex;align-items:center;justify-content:center;white-space:normal;text-align:center}.wm-configure-inline[open]>form{left:0;right:auto}}

/* Wakko Menu 3.0.28 — logo do estabelecimento com presença premium */
.wm-brand-lock img{object-fit:contain!important;object-position:center!important;background:#fff!important;padding:2px!important;border:1px solid var(--wm-border)!important;box-shadow:0 4px 14px rgba(30,22,18,.08)!important}
@media(min-width:561px){.wm-brand-lock img{width:50px!important;height:50px!important;border-radius:15px!important}}
@media(max-width:560px){.wm-brand-lock img{width:46px!important;height:46px!important;border-radius:14px!important;flex:0 0 46px}}

/* ===== Wakko Menu 3.0.36 • Visual Experience Sweep ===== */
/* Hierarquia, legibilidade e contenção global do painel. */
.wm-main,.wm-panel,.wm-kpi,.wm-quick,.wm-main .panel,.wm-main .admin-modules,.wm-main form,.wm-main fieldset{min-width:0}
.wm-main :where(h1,h2,h3,p,strong,small,span,a,label,td,th){overflow-wrap:anywhere}
.wm-main small{font-size:12px;line-height:1.45}
.wm-brand-lock small{font-size:12px;line-height:1.25}
.wm-sidebar a{font-size:13px;line-height:1.25}
.wm-bottom-nav a{font-size:11px}
.wm-page-action,.wm-main .admin-title .button-primary,.wm-main .admin-title .button-secondary{white-space:normal}
.wm-main :where(.button-primary,.button-secondary,.submit-primary,.tiny-button,.wm-primary,.wm-secondary,button){min-height:44px}
.wm-main :where(input,select,textarea,button){max-width:100%;min-width:0}

/* Foco único: remove a sensação de componentes de épocas diferentes. */
.wm-app-body :where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid color-mix(in srgb,var(--brand,var(--wm-brand)) 28%,transparent);outline-offset:2px;box-shadow:0 0 0 2px #fff}
.wm-app-body :where(input,select,textarea):focus{border-color:var(--brand,var(--wm-brand))!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--brand,var(--wm-brand)) 10%,transparent)!important}

/* Dashboard / Acesso rápido: título e descrição sempre em linhas próprias. */
.wm-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.wm-quick{min-height:124px;gap:14px;padding:15px}
.wm-quick>div{display:grid;gap:5px;min-width:0}
.wm-quick strong{display:block;font-size:15px;line-height:1.2;letter-spacing:-.01em}
.wm-quick small{display:block;font-size:12px;line-height:1.35;color:var(--wm-muted)}
.wm-quick i{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#fff;border:1px solid var(--wm-border);font-size:20px}
.wm-kpi small{font-size:12px;line-height:1.35}
.wm-kpi span{font-size:12px;line-height:1.3}

/* Cabeçalhos, painéis e áreas de ação respiram mesmo em larguras intermediárias. */
.wm-panel-head{align-items:flex-start;flex-wrap:wrap}
.wm-panel-head h2{line-height:1.15}
.wm-main .admin-title{flex-wrap:wrap}
.wm-main .admin-title>div:first-child{min-width:min(100%,320px);flex:1 1 420px}
.wm-main .admin-title .title-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px;max-width:100%}
.wm-main .admin-title .title-actions>*{min-width:0}
.wm-main .panel,.wm-main .admin-modules{overflow-wrap:anywhere}

/* Pedidos: ações deixam de disputar a mesma linha dentro do card. */
.wm-main .order-admin-card{min-width:0;display:flex;flex-direction:column}
.wm-main .order-admin-card header{align-items:flex-start;min-width:0}
.wm-main .order-admin-card header>div{min-width:0}
.wm-main .order-admin-card header>strong{white-space:nowrap}
.wm-main .order-admin-card>p,.wm-main .order-admin-card blockquote{font-size:12px;line-height:1.45}
.wm-main .order-status-form{grid-template-columns:minmax(0,1fr) minmax(108px,auto);gap:8px;margin-top:auto}
.wm-main .order-status-form select,.wm-main .order-status-form button{min-height:44px;height:auto}
.wm-main .order-payment-quick{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:12px;padding-top:12px}
.wm-main .order-payment-quick input,.wm-main .order-payment-quick select,.wm-main .order-payment-quick button{min-height:44px;height:auto}
.wm-main .order-payment-quick button{grid-column:1/-1}
.wm-main .order-admin-card footer{display:flex;flex-wrap:wrap;gap:8px;margin:12px -16px -16px;padding:12px 16px;background:#faf8f6;border-top:1px solid var(--wm-border);border-radius:0 0 16px 16px}
.wm-main .order-admin-card footer a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 11px;border:1px solid var(--wm-border);border-radius:11px;background:#fff;font-size:12px;line-height:1.2;flex:1 1 120px}

/* Caixa: corrige a causa do vazamento em Suprimento/Sangria. */
.wm-main .cash-quick-grid{align-items:stretch}
.wm-main .cash-quick-action{min-width:0;height:100%}
.wm-main .cash-mini-form{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:9px;align-items:stretch}
.wm-main .cash-mini-form>.money-input,.wm-main .cash-mini-form>input{width:100%;min-width:0}
.wm-main .cash-mini-form .button-secondary{grid-column:1/-1;width:100%;min-height:46px;white-space:normal}
.wm-main .cash-quick-action p{font-size:12px;line-height:1.45}
.wm-main .cash-method-card small,.wm-main .cash-flow-strip span,.wm-main .cash-close-overview small,.wm-main .cash-close-overview span{font-size:12px;line-height:1.35}

/* Grids de quatro colunas passam para 2 antes de ficarem espremidos pela sidebar. */
@media(max-width:1120px) and (min-width:901px){
  .wm-layout{grid-template-columns:220px minmax(0,1fr);gap:16px}
  .wm-kpis,.wm-quick-grid,.wm-main .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wm-main .order-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .wm-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wm-main .admin-title .title-actions{justify-content:flex-start}
  .wm-main .cash-quick-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .wm-page-head{gap:12px}
  .wm-page-head h1,.wm-main .admin-title h1{font-size:clamp(34px,10vw,42px)}
  .wm-page-action{display:flex!important;width:100%;justify-content:center;margin-top:14px}
  .wm-main .admin-title .title-actions{display:grid;width:100%;grid-template-columns:1fr 1fr}
  .wm-main .admin-title .title-actions>*{width:100%}
  .wm-main .order-status-form{grid-template-columns:1fr}
  .wm-main .order-status-form button{width:100%}
}
@media(max-width:460px){
  .wm-layout{padding-left:10px;padding-right:10px}
  .wm-panel,.wm-main .panel,.wm-main .admin-modules{padding:15px!important;border-radius:20px!important}
  .wm-kpis,.wm-main .kpis{grid-template-columns:1fr 1fr;gap:8px}
  .wm-kpi,.wm-main .kpis article{min-height:112px!important;padding:13px!important}
  .wm-kpi strong,.wm-main .kpis strong{font-size:28px!important}
  .wm-main .admin-title .title-actions{grid-template-columns:1fr}
  .wm-quick{min-height:116px;padding:13px}
  .wm-main .cash-mini-form{grid-template-columns:1fr}
  .wm-main .cash-mini-form .button-secondary{grid-column:auto}
}

/* Descrições legadas de 10/11px sobem para uma régua confortável no painel. */
.wm-main :where(.module-grid p,.product-body p,.promo-banner p,.kds-ticket p,.delivery-card>p,.tab-card header p,.customizable-hint,.product-modal-card>header small,.custom-group>header small,.option-admin-row small,.finance-kpis span,.finance-kpis small,.report-kpis span,.cash-method-card small,.cash-close-overview span,.cash-close-overview small,.cash-flow-strip span,.category-inline label,.group-settings label,.tiny-button){font-size:12px!important;line-height:1.4}
.wm-main :where(.inline-zone-form input,.inline-zone-form select){font-size:12px!important}

/* Tabelas administrativas viram cards no smartphone. Os rótulos são injetados
   pelo admin_helpers a partir do <th>, então funciona em todas as telas. */
@media(max-width:700px){
  .wm-main .wm-table-wrap,.wm-main .table-wrap{overflow:visible!important;border:0!important;background:transparent!important}
  .wm-main table.wm-table,.wm-main table.data-table{display:block;width:100%!important;min-width:0!important;background:transparent!important;border-collapse:separate}
  .wm-main table.wm-table thead,.wm-main table.data-table thead{display:none!important}
  .wm-main table.wm-table tbody,.wm-main table.data-table tbody{display:grid;gap:10px;width:100%}
  .wm-main table.wm-table tr,.wm-main table.data-table tr{display:block;width:100%;border:1px solid var(--wm-border);border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(54,31,16,.05);overflow:hidden}
  .wm-main table.wm-table td,.wm-main table.data-table td{display:grid;grid-template-columns:minmax(96px,.42fr) minmax(0,1fr);align-items:start;gap:10px;width:100%;padding:10px 12px!important;border:0!important;border-bottom:1px solid #eee7e2!important;white-space:normal!important;text-align:right!important;font-size:13px!important;line-height:1.4}
  .wm-main table.wm-table td:last-child,.wm-main table.data-table td:last-child{border-bottom:0!important}
  .wm-main table.wm-table td::before,.wm-main table.data-table td::before{content:attr(data-label);display:block;color:#817981;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase;text-align:left;overflow-wrap:anywhere}
  .wm-main table.wm-table td>* ,.wm-main table.data-table td>*{max-width:100%}
  .wm-main table.wm-table td[colspan],.wm-main table.data-table td[colspan]{display:block;text-align:left!important;padding:16px!important}
  .wm-main table.wm-table td[colspan]::before,.wm-main table.data-table td[colspan]::before{display:none}
  .wm-main table .inline-form,.wm-main table .table-actions,.wm-main table .finance-inline,.wm-main table .stock-inline,.wm-main table .inline-zone-form{width:100%;min-width:0!important;max-width:100%;justify-content:flex-end}
}
/* Contatos recentes: ações descem de linha em celulares estreitos sem apertar o nome. */
@media(max-width:460px){
  .wm-main .wm-contact-row{grid-template-columns:48px minmax(0,1fr)!important}
  .wm-main .wm-contact-actions{grid-column:1/-1;justify-content:flex-end}
}

/* ===== Wakko Menu 3.0.37 • Mesas e comandas — cards mais largos ===== */
/* Prioriza leitura e ações confortáveis: reduz colunas antes de espremer o card. */
.wm-main .table-floor{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:16px!important;
}
.wm-main .floor-table{
  padding:16px!important;
  min-width:0;
}
.wm-main .floor-table-actions{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.wm-main .floor-table-actions :is(a,button){
  min-width:0!important;
  min-height:46px!important;
  padding:10px 12px!important;
  white-space:normal!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none!important;
  line-height:1.2!important;
}
.wm-main .floor-table>p,
.wm-main .hybrid-table-note{
  font-size:12px!important;
  line-height:1.45!important;
}
.wm-main .floor-table header small,
.wm-main .floor-table header span{
  font-size:10px!important;
}

/* Notebook/desktop médio com sidebar: 3 cards largos por linha. */
@media(max-width:1300px){
  .wm-main .table-floor{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
/* Tablet: duas mesas por linha. */
@media(max-width:900px){
  .wm-main .table-floor{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
/* Smartphone: uma mesa por linha e ações sem aperto. */
@media(max-width:560px){
  .wm-main .table-floor{grid-template-columns:1fr!important;gap:12px!important}
  .wm-main .floor-table-actions{grid-template-columns:1fr 1fr!important}
}
@media(max-width:360px){
  .wm-main .floor-table-actions{grid-template-columns:1fr!important}
}
