/* VobixChat Elegance 2026 - shared presentation layer. No behavioral changes. */
:root {
  --vobix-elegance-blue:#0869ef;
  --vobix-elegance-blue-deep:#064cca;
  --vobix-elegance-green:#1bd46a;
  --vobix-elegance-ink:#152c46;
  --vobix-elegance-muted:#60778d;
  --vobix-elegance-line:#e3ecf6;
  --vobix-elegance-radius:16px;
}
@media (prefers-reduced-motion:reduce) {
  html,body {scroll-behavior:auto!important}
}
@media (max-width:760px) {
  html { -webkit-text-size-adjust:100%; }
  body { overflow-x:hidden; }
  button, input, textarea, select { max-width:100%; }
  img,video {max-width:100%}
  button { -webkit-tap-highlight-color:transparent; }
}
:where(button,a,input,textarea,select):focus-visible {
  outline:3px solid #75b4ff;
  outline-offset:2px;
}
:where(.topbar,.premiumDrawerHead) {
  -webkit-font-smoothing:antialiased;
}

/* Consistent motion and spacing for new design components; opt-in classes. */
.vobix-elegance-card{
  background:#fff;
  color:var(--vobix-elegance-ink);
  border:1px solid var(--vobix-elegance-line);
  border-radius:var(--vobix-elegance-radius);
  box-shadow:0 6px 20px rgba(21,62,109,.055);
}
.vobix-elegance-heading{
  color:var(--vobix-elegance-ink);
  font-weight:750;
  letter-spacing:-.02em;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.vobix-elegance-subtitle{
  color:var(--vobix-elegance-muted);
  line-height:1.45;
}
.vobix-elegance-primary{
  background:linear-gradient(115deg,var(--vobix-elegance-blue),#159afe);
  color:#fff;
  border:0;
  border-radius:14px;
  min-height:44px;
  font-weight:700;
  box-shadow:0 5px 14px rgba(8,105,239,.15);
}
@media(prefers-reduced-motion:no-preference){
 .vobix-elegance-primary{transition:filter .18s ease,box-shadow .18s ease}
}
@media(hover:hover){
 .vobix-elegance-primary:hover{filter:brightness(1.06)}
}

/* Compact menu helpers; apply only to reviewed screens to avoid regressions. */
.vobix-elegance-menu {
  box-sizing:border-box;
  width:min(100%,440px);
  max-height:calc(100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 24px);
  overflow-y:auto;
  overscroll-behavior:contain;
}
.vobix-elegance-menu-title {
  margin:0;
  text-align:center;
  font-size:clamp(16px,4.2vw,20px);
  line-height:1.3;
  overflow-wrap:anywhere;
}
.vobix-elegance-menu-row {
  display:flex;
  align-items:center;
  min-height:48px;
  padding:9px 12px;
  gap:10px;
  border-bottom:1px solid var(--vobix-elegance-line);
}
.vobix-elegance-menu-row > :is(span,div,p) {min-width:0;overflow-wrap:anywhere}
@media(max-height:640px){
 .vobix-elegance-menu-row {padding-block:6px}
}

/* Review: opt-in unified panel layout for progressively migrated menus. */
.vobix-elegance-menu {
  min-width:0;
  padding-bottom:env(safe-area-inset-bottom,0px);
  scrollbar-width:thin;
}
.vobix-elegance-menu :is(h1,h2,h3,p,small) {
  max-width:100%;
  min-width:0;
}
.vobix-elegance-menu-row > :is(button,a,input,select) {
  flex-shrink:0;
}
.vobix-elegance-menu :is(button,a,input,select,textarea):focus-visible {
  outline:3px solid #72b9ff;
  outline-offset:2px;
}
@media(max-width:380px) {
  .vobix-elegance-menu {max-width:calc(100vw - 16px)}
  .vobix-elegance-menu-row {gap:8px;padding-inline:10px}
}
/* Restricted one-use photos have no save control, including toolbar overrides. */
#photoDownloadButton[hidden]{display:none!important}
