/* ProBusca Premium 5.0 | camada visual progressiva, sem modificar fluxos de pagamento */
:root{color-scheme:dark;--p5-bg:#060e1e;--p5-surface:#0c1e35;--p5-surface2:#102a47;--p5-edge:rgba(97,166,229,.22);--p5-cyan:#4bd6ff;--p5-text:#e9f4ff;--p5-muted:#a9bfd8;--p5-ring:#61d6ff}
html{scroll-behavior:smooth}body{background:radial-gradient(ellipse 75% 40% at 50% -10%,rgba(18,100,177,.19),transparent),var(--p5-bg);color:var(--p5-text);-webkit-font-smoothing:antialiased}
:where(main,.container,.wrap,.content,.dashboard){min-width:0}
:where(.card,.panel,.box,.stat,.stat-card,.product-card,.produto,.cq-card,.tile){border-radius:17px!important;border-color:var(--p5-edge)!important;box-shadow:0 12px 34px rgba(0,6,20,.28);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}
@media(hover:hover){:where(.card,.panel,.stat-card,.product-card,.produto,.cq-card,.tile):hover{border-color:rgba(83,201,255,.55)!important;box-shadow:0 17px 38px rgba(0,7,22,.4),0 0 0 1px rgba(44,151,255,.08)}}
:where(button,.btn,a.button,input[type=submit],input[type=button]){transition:background-color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
:where(button,.btn,a.button,input[type=submit]):not(:disabled):active{transform:translateY(1px)}
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--p5-ring)!important;outline-offset:3px!important}
:where(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%;border-radius:10px;accent-color:#27a7fa}
:where(input,select,textarea)::placeholder{color:#8da9c5}
:where(.nav,.tabs,.links,.actions,.toolbar){gap:clamp(6px,1vw,12px);max-width:100%}
:where(.nav a,.tabs a,.links a){border-radius:11px;text-underline-offset:3px}
:where(.muted,.subtitle,.description,small){overflow-wrap:anywhere}
:where(table){width:100%;border-collapse:collapse} :where(th,td){overflow-wrap:anywhere}th{color:#c3e5ff} :where(tr):hover td{background:rgba(40,105,165,.06)}
:where(img,video,svg){max-width:100%}img{height:auto} :where(.cq-visual){background-position:center center!important}
:where(.alert,.notice,.message){overflow-wrap:anywhere;border-radius:12px}
@media(max-width:900px){:where(.grid,.cards,.stats){min-width:0}:where(.nav,.tabs,.links){flex-wrap:wrap}:where(.wrap,.container,main){max-width:100%}}
@media(max-width:640px){:where(.wrap,.container,main){padding-left:clamp(10px,3vw,16px);padding-right:clamp(10px,3vw,16px)}:where(.card,.panel,.box){max-width:100%}:where(.table-wrap,.table-responsive){overflow-x:auto;-webkit-overflow-scrolling:touch}:where(button,.btn,a.button){min-height:40px}:where(h1){font-size:clamp(22px,6vw,32px)}:where(h2){font-size:clamp(18px,4.8vw,25px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}:where(*, *::before, *::after){animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Correção mobile: menus de Carteira e Produtos (escopo restrito) */
@media(max-width:720px){
 body:has(.app>.sidebar) .app{display:block!important;min-width:0!important}
 body:has(.app>.sidebar) .sidebar{display:block!important;width:100%!important;max-width:100vw!important;padding:12px!important;overflow:hidden!important}
 body:has(.app>.sidebar) .sidebar .brand{display:flex!important;align-items:center!important;gap:9px!important;padding:0 0 10px!important;margin:0!important}
 body:has(.app>.sidebar) .sidebar .brand-mark{width:36px!important;height:36px!important;flex:0 0 36px!important;font-size:17px!important}
 body:has(.app>.sidebar) .sidebar .brand strong{font-size:19px!important;line-height:1.15!important}
 body:has(.app>.sidebar) .sidebar .brand small{font-size:10px!important}
 body:has(.app>.sidebar) .sidebar .nav{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;overflow-y:hidden!important;gap:7px!important;padding:5px 0 10px!important;scrollbar-width:thin!important;scroll-snap-type:x proximity!important}
 body:has(.app>.sidebar) .sidebar .nav a{display:inline-flex!important;flex:0 0 auto!important;width:auto!important;min-height:40px!important;white-space:nowrap!important;padding:9px 12px!important;font-size:12px!important;scroll-snap-align:start!important}
 body:has(.app>.sidebar) .sidebar .nav svg{width:17px!important;height:17px!important;flex:0 0 17px!important}
 body:has(.app>.sidebar) .main{width:100%!important;min-width:0!important;padding:16px 12px!important}
 body:has(.app>.sidebar) .layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
 body:has(.app>.sidebar) .header{gap:10px!important}
 body:has(.app>.sidebar) .header h1{font-size:20px!important}
 body:has(.app>.sidebar) .card{min-width:0!important}
 body:has(.app>.sidebar) .sidebar .logout{display:none!important}
 body:has(.top>.nav) .top{display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important}
 body:has(.top>.nav) .top>.brand{font-size:23px!important;line-height:1.15!important}
 body:has(.top>.nav) .top>.balance{width:100%!important;order:2!important}
 body:has(.top>.nav) .top>.nav{order:3!important;display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;width:100%!important;max-width:100%!important;gap:7px!important;padding:3px 0 10px!important;scrollbar-width:thin!important}
 body:has(.top>.nav) .top>.nav a{display:inline-flex!important;flex:0 0 auto!important;white-space:nowrap!important;width:auto!important;min-height:42px!important;padding:9px 12px!important;font-size:12px!important;text-align:left!important}
 body:has(.top>.nav) .top>.nav svg{width:17px!important;height:17px!important;flex:0 0 17px!important}
 body:has(.top>.nav) .intro h1{font-size:clamp(24px,6vw,30px)!important}
 body:has(.top>.nav) .intro .muted{font-size:13px!important;line-height:1.5!important}
}
