/* APP CLIENTE — novo relevo, glow e gradientes; layout e funcionalidades continuam intactos */
body .shell,html.crm-visual320 .shell{background:var(--p325-bg)!important;color:var(--p325-text)!important}
body .main,html.crm-visual320 .main{background:var(--p325-bg)!important;color:var(--p325-text)!important}
body .sidebar,html.crm-visual320 .sidebar{
 background:linear-gradient(165deg,#121a2c 0%,#0e1727 65%,#0b1528 100%)!important;
 border-right:1px solid #253551!important;box-shadow:10px 0 35px #02061128;
}
body .sidebar :is(.brand,.navlabel,.navbutton,.navicon){text-shadow:0 1px 2px #0002}
body .brandmark{border-radius:14px!important;background:var(--p325-gradient)!important;box-shadow:0 7px 20px var(--p325-ring),inset 0 1px 0 #fff5!important}
body .navlabel{color:#7f95b6!important}
body .navbutton{color:#b4c4db!important;border-radius:13px!important;border:1px solid transparent!important;box-shadow:none!important}
body .navbutton:hover{background:#1b2a44!important;color:#f8fbff!important}
body .navbutton.active{background:var(--p325-gradient)!important;color:white!important;border-color:#ffffff1c!important;box-shadow:0 8px 24px var(--p325-ring),inset 0 1px 0 #ffffff3b!important}
body :is(.navicon,.navbutton svg){color:inherit}
body .topbar{background:#0f1729ed!important;border-bottom:1px solid var(--p325-border)!important;backdrop-filter:blur(16px);color:var(--p325-text)!important}
body .topbar .crumb{color:#bdcbe2!important}
body :is(.heading h1,.eyebrow){color:var(--p325-text)}
body .eyebrow{color:var(--p325-accent)!important}
body :is(.stat,.panel){border-radius:20px!important;border:1px solid #263751!important;
 background:linear-gradient(155deg,#151e31,#101827 84%)!important;
 box-shadow:0 13px 36px #02071642,inset 0 1px 0 #ffffff0c!important;color:var(--p325-text)!important}
body .stat{position:relative;isolation:isolate}
body .stat::before{content:'';position:absolute;width:168px;height:168px;right:-91px;top:-100px;border-radius:50%;pointer-events:none;
 background:radial-gradient(circle,color-mix(in srgb,var(--p325-primary) 23%,transparent),transparent 72%);z-index:-1}
body .stat .label{color:#a7bad9!important;letter-spacing:.04em;font-weight:700}
body .stat .value{color:#fff!important;font-weight:850;letter-spacing:-.045em}
body .stat .foot{color:#91a4c1!important}
body .stat .sicon{border-radius:13px!important;color:var(--p325-accent)!important;
 background:linear-gradient(150deg,color-mix(in srgb,var(--p325-primary) 24%,#1c304d),#19273f)!important;
 border:1px solid color-mix(in srgb,var(--p325-primary) 30%,#ffffff16);
 box-shadow:inset 0 1px 0 #ffffff25,0 7px 15px #02061238}
body .panelhead{border-color:var(--p325-border)}
body :is(.panel,.stat) :is(h2,h3,strong){color:#f0f5ff}
body :is(.toolbar,.actions,.panelhead){color:var(--p325-text)}
body :is(.secondary,.btn-secondary,button.secondary){background:#202e48!important;color:#dce8fb!important;border:1px solid #354764!important;box-shadow:none!important}
body :is(.secondary,.btn-secondary,button.secondary):hover{background:#283b5b!important}
body button.danger{background:#432332!important;color:#ffc2c9!important;border:1px solid #704356!important}
body .badge{background:color-mix(in srgb,var(--tag,var(--p325-primary)) 18%,#172439)!important;
 color:color-mix(in srgb,var(--tag,var(--p325-primary)) 58%,#fff)!important;
 border:1px solid color-mix(in srgb,var(--tag,var(--p325-primary)) 30%,transparent)}
body :is(.lane,.task,.taskrow,.ticket,.contactcard){background:#17243b!important;border-color:#2b3d5c!important;color:var(--p325-text)!important;border-radius:15px!important;box-shadow:inset 0 1px 0 #ffffff0a}
body :is(.task,.taskrow,.ticket,.contactcard):hover{border-color:var(--p325-primary)!important;box-shadow:0 6px 18px var(--p325-ring)}
body table{border-radius:14px;overflow:hidden}body th{background:#1c2a43!important;color:#a7b8d2!important}body td{border-color:#283853!important}
body .avatar{border-radius:13px;background:color-mix(in srgb,var(--p325-primary) 18%,#223454);color:#cde4ff}
/* Authentication UI uses the same visual tokens. */
body :is(.authwrap,.loginbox,.auth-box,.login-panel,.login-card){background:linear-gradient(155deg,#17213a,#111a2d)!important;border-color:#30405e!important;color:var(--p325-text)!important;box-shadow:var(--p325-glow)}
/* Atendimento — preserve real queue/chat grid and composer behavior. */
body.att-page .att-layout.chatlayout{border-radius:22px!important;overflow:hidden;box-shadow:0 15px 45px #02071360!important;border-color:#30415c!important}
body.att-page .att-layout :is(.chatlist,.chatpane){background:#121b2e!important;color:var(--p325-text)!important}
body.att-page .att-layout :is(.chathead,.att-filters,.att-searchbar,.att-tabs){background:#152138!important;border-color:#2d3e5d!important}
body.att-page .att-layout .chatmessages{background:radial-gradient(ellipse at 70% 0%,#182541,#0d172b 60%)!important}
body.att-page .att-thread{background:linear-gradient(150deg,#16213a,#111c30)!important;border-color:#2a3b58!important;border-radius:14px!important}
body.att-page .att-thread.selected{background:linear-gradient(120deg,color-mix(in srgb,var(--p325-primary) 26%,#132540),#17243e)!important;border-left:3px solid var(--p325-accent)!important}
body.att-page .att-avatar{border-radius:13px!important;box-shadow:inset 0 1px 0 #ffffff32,0 5px 12px #02071333}
body.att-page :is(.att-message .bubble,.bubble){border-radius:17px!important;box-shadow:0 5px 15px #02071128!important}
body.att-page .bubble.out{background:linear-gradient(145deg,color-mix(in srgb,var(--p325-primary) 45%,#1c2b4d),#172b4b)!important;border-color:var(--p325-primary)!important}
body.att-page :is(.att-new,.att-send,.att-main-action){border-radius:13px!important;background:var(--p325-gradient)!important;color:#fff!important;box-shadow:0 7px 19px var(--p325-ring),inset 0 1px 0 #ffffff44!important}
body.att-page :is(.att-icon-button,.chathead button,.chatcontrols button){border-radius:12px!important}
body.att-page .att-title h1{color:white!important;font-weight:850}
body.att-page :is(.att-thread-copy small,.att-preview,.att-thread-meta small){color:#a8bad7!important}
/* White Label settings / custom branding controls keep their current inputs and save actions. */
body :is(.branding-panel,.brand-settings,.wl-config,.theme-preview,.brand-preview){border-radius:18px!important;border:1px solid #31415d!important;background:linear-gradient(145deg,#18253d,#101a2d)!important;box-shadow:var(--p325-glow)!important}
body :is(.branding-panel,.brand-settings,.wl-config,.theme-preview,.brand-preview) input[type=color]{min-width:48px}
/* Preserve user-facing accessibility: never hide inputs, panels or menus. */
