/* Shared Zervi controls. Visual overrides deliberately outrank legacy component skins;
   each component retains its own sizing, layout and event handling. */
:where(.zervi-controls,.z-mail){--control-bg:linear-gradient(130deg,#fff,#f8f4fc);--control-border:#e1d4ee;--control-ink:#694d85;--control-radius:13px}
:where(.zervi-controls,.z-mail) :is(button:not(.mascot-touch),a.button,a.primary,a.secondary,a.public-primary,a.chat-showcase-cta,a.confidence-more,a.text-button,a.zmenu-row,a.zmenu-admin,a.admin-header-button,.admin-nav>a,.filters>a,.pagination>a){background:var(--control-bg)!important;border:1px solid var(--control-border)!important;border-radius:var(--control-radius)!important;color:var(--control-ink)!important;box-shadow:0 2px 7px #44236606,inset 0 1px 0 #ffffffb0!important;text-shadow:none!important;text-decoration:none!important;transition:background .16s,border-color .16s,box-shadow .16s,color .16s}
:where(.zervi-controls,.z-mail) :is(button:not(.mascot-touch),a.button,a.primary,a.secondary,a.public-primary,a.chat-showcase-cta,a.confidence-more,a.text-button,a.zmenu-row,a.zmenu-admin,a.admin-header-button,.admin-nav>a,.filters>a,.pagination>a):hover{background:#f4edfc!important;border-color:#c6a8e3!important;color:#593879!important;box-shadow:0 3px 12px #78539d0d!important}
:where(.zervi-controls,.z-mail) :is(button.primary,a.primary,a.public-primary,button[type=submit],.mail-button:not(.mail-secondary)){border-color:#c8ade7!important;font-weight:650}
:where(.zervi-controls,.z-mail) :is(button.selected,button.active,button[aria-selected=true],button[aria-pressed=true],button[aria-current=page],button[aria-expanded=true],a[aria-current=page],.filters>a.active){background:linear-gradient(115deg,#e9dcfa,#f0e5fc)!important;border-color:#ad83d7!important;color:#593184!important;box-shadow:inset 0 1px 0 #ffffffb0,0 3px 12px #78539d0d!important}
:where(.zervi-controls,.z-mail) :is(button.selected,button.active,button[aria-selected=true],button[aria-pressed=true],button[aria-current=page],button[aria-expanded=true],a[aria-current=page]):hover{background:#e7d7f8!important;border-color:#a47acd!important;color:#4e2875!important}
:where(.zervi-controls,.z-mail) :is(button,a.button,a.primary,a.public-primary,a.chat-showcase-cta,a.confidence-more,a.admin-header-button,.admin-nav>a):focus-visible{outline:3px solid #ac83d7!important;outline-offset:3px!important}
:where(.zervi-controls,.z-mail) :is(button:disabled,[aria-disabled=true]){opacity:.48!important;box-shadow:none!important;cursor:not-allowed!important;filter:none!important}
:where(.zervi-controls,.z-mail) :is(button.danger,[data-cancel],[data-decline]){color:#994761!important;background:#fdf3f7!important;border-color:#eacbda!important}
:where(.zervi-controls,.z-mail) :is(button.danger,[data-cancel],[data-decline]):hover{background:#f9e7ef!important;border-color:#dca6bd!important}
.zervi-controls :is(.trade-icon,.nav-icon,.zmenu-icon,.panel-nav button>span[aria-hidden],.workspace-bar button>svg){background:#eee6f7!important;color:#9571b5!important;border-radius:9px;box-shadow:0 2px 6px #57317808}
.zervi-controls .category.selected .trade-icon,.zervi-controls .admin-nav a[aria-current=page] .nav-icon{background:#decbf3!important;color:#704599!important}
.zervi-controls .admin-nav a[aria-current=page]:hover .nav-icon{color:#60368b!important}
.zervi-controls .header .session-entry{padding:9px 12px;min-height:44px;max-width:210px;font-weight:650;font-size:13px}
.zervi-controls .header .account-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:8px 10px 8px 14px;min-height:44px;font-size:13px;font-weight:650}
.zervi-controls .header .account-button>span{display:inline-grid;place-items:center;flex-shrink:0;width:27px;height:27px;background:#eee6f7;color:#9571b5;border-radius:8px;font-size:14px}
.zervi-controls .admin-header-button svg{padding:5px;background:#eee6f7;color:#9571b5;border-radius:8px;box-sizing:content-box;flex-shrink:0}
.zervi-controls :is(.confidence-more,.chat-showcase-cta){display:inline-flex;align-items:center;justify-content:center;padding:12px 18px;min-height:44px}
.zervi-controls :is(.close,.zchat-close,.zreview-close,.dni-camera-close,.selfie-close,.reputation-close){display:grid;place-items:center}
@media(max-width:700px){.zervi-controls .header .account-entry{gap:6px}.zervi-controls .header .session-entry{font-size:12px;padding:8px;max-width:120px}.zervi-controls .header .account-button{font-size:12px;padding:7px 8px;gap:6px}.zervi-controls .header .account-button>span{width:24px;height:25px}.zervi-controls .admin-header-button svg{padding:4px}}
@media(max-width:380px){.zervi-controls .header.wrap{gap:7px;padding-inline:12px}.zervi-controls .header .account-entry{gap:5px}.zervi-controls .header .session-entry{font-size:10px;padding:7px 6px;max-width:90px}.zervi-controls .header .account-button{font-size:10px;padding:7px 6px;gap:4px}.zervi-controls .header .account-button>span{width:20px;height:23px;font-size:12px}}
@media(prefers-reduced-motion:reduce){:where(.zervi-controls,.z-mail) :is(button,a){transition:none!important}}

