@import url('/assets/css/velyra-light-unified.css?v=20261017light2');
/* Velyra visual modernization 2026-10-09. No behavioral or backend changes. */
:root { --vly-modern-ink:#211934; --vly-modern-muted:#665c77; --vly-modern-purple:#8149df; --vly-modern-pink:#e83d9f; --vly-modern-line:#e9e0f1; --vly-modern-shadow:0 18px 55px rgba(70,35,100,.10); }
html { -webkit-text-size-adjust:100%; }
a, button, input, select, textarea { -webkit-tap-highlight-color:transparent; }
:where(a,button,input,select,textarea):focus-visible { outline:3px solid #aa67ed !important; outline-offset:3px; }
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto !important; animation-duration:.01ms !important; transition-duration:.01ms !important; } }
/* Authentication: preserve existing working forms and split layout. */
html:has(.auth-page) body { color:var(--vly-modern-ink); background:radial-gradient(circle at 82% 12%,#f7d9ef 0,transparent 30%),radial-gradient(circle at 6% 80%,#eae2ff 0,transparent 33%),#faf8fd; }
html:has(.auth-page) .auth-page { padding:clamp(16px,4vw,45px); }
html:has(.auth-page) .auth-shell { width:min(100%,1190px); gap:clamp(16px,2vw,30px); }
html:has(.auth-page) .auth-panel { background:#fff; color:var(--vly-modern-ink); border:1px solid var(--vly-modern-line); box-shadow:var(--vly-modern-shadow); border-radius:30px; padding:clamp(25px,4vw,51px); }
html:has(.auth-page) .auth-panel h1 { color:var(--vly-modern-ink); text-shadow:none; font-size:clamp(32px,4vw,50px); letter-spacing:-.045em; }
html:has(.auth-page) .auth-kicker { color:#773cc7; background:#f1e8ff; border-color:#e6d3fb; box-shadow:none; }
html:has(.auth-page) .auth-sub,html:has(.auth-page) .auth-meta,html:has(.auth-page) .auth-back { color:var(--vly-modern-muted); }
html:has(.auth-page) .auth-field label { color:#2a203e; }
html:has(.auth-page) .auth-field input { min-height:54px; background:#fcfaff; color:#241b32; border:1px solid #ded1eb; border-radius:15px; box-shadow:none; }
html:has(.auth-page) .auth-field input::placeholder { color:#897e98; opacity:1; }
html:has(.auth-page) .auth-field input:focus { background:#fff; border-color:#9562d9; box-shadow:0 0 0 4px rgba(149,98,217,.12); }
html:has(.auth-page) .auth-btn { min-height:55px; border-radius:16px; background:linear-gradient(105deg,#713fe4,#e93fa3); box-shadow:0 12px 26px rgba(147,56,172,.23); }
html:has(.auth-page) .auth-panel a { color:#713ec3; }
html:has(.auth-page) .auth-visual { border:1px solid rgba(126,65,175,.13); border-radius:30px; box-shadow:var(--vly-modern-shadow); }
html:has(.auth-page) .alert { color:#9b1748; background:#fff0f3; border-color:#ffc6d5; }
html:has(.auth-page) .alert-success { color:#136b4b; background:#eafbf4; border-color:#b7ecd2; }
/* Browse: improve card hierarchy without changing swipe, filtering or profile links. */
html:has(.browse-top) body { background:radial-gradient(circle at 90% 0%,rgba(244,216,242,.22),transparent 34%),#f8f6fb; }
html:has(.browse-top) .browse-top,html:has(.browse-top) .story-strip { border-radius:24px; }
html:has(.browse-top) .container { max-width:1420px; }
html:has(.browse-top) :is(.glass,.match-card) { box-shadow:0 14px 40px rgba(45,26,70,.08); }
html:has(.browse-top) :is(button,.side-btn) { transition:transform .18s ease,box-shadow .18s ease,background .18s ease; }
@media(hover:hover) { html:has(.browse-top) button:hover { transform:translateY(-2px); } }
/* Messages: polished glass surfaces, clear touch controls and conversations. */
html:has(.messages-shell) { --msg-radius-xl:25px; --msg-radius-lg:19px; --msg-shadow-card:0 16px 48px rgba(8,8,30,.15); }
html:has(.messages-shell) .messages-shell { max-width:1360px; padding:0 clamp(10px,2vw,24px) 24px; }
html:has(.messages-shell) .messages-layout { grid-template-columns:minmax(270px,320px) minmax(0,1fr); gap:16px; }
html:has(.messages-shell) .messages-card { border-radius:25px; box-shadow:var(--msg-shadow-card); }
html:has(.messages-shell) .inbox-head { padding:20px 18px 16px; }
html:has(.messages-shell) .inbox-head h1 { font-size:clamp(20px,2vw,25px); letter-spacing:-.04em; }
html:has(.messages-shell) .dialog-list { padding:12px; gap:8px; }
html:has(.messages-shell) .dialog-item { padding:13px; border-radius:17px; }
html:has(.messages-shell) .dialog-item.is-active { box-shadow:inset 0 0 0 1px rgba(199,130,254,.33); }
html:has(.messages-shell) .chat-head { padding:16px 18px; }
html:has(.messages-shell) button { min-width:40px; }
/* Profile editor: modern grouped settings, preserve the entire form structure and save logic. */
html:has(.vly-avatar-hub) body { background:radial-gradient(circle at 85% 0,rgba(147,84,222,.17),transparent 34%),linear-gradient(145deg,#130f2a,#1d1737 55%,#221a3e); }
html:has(.vly-avatar-hub) .shell { width:min(100%,1160px); }
html:has(.vly-avatar-hub) .card { padding:clamp(16px,2.6vw,30px); border-radius:30px; box-shadow:0 25px 60px rgba(8,3,20,.24); }
html:has(.vly-avatar-hub) .topbar { border-radius:19px; padding:12px 15px; }
html:has(.vly-avatar-hub) :is(input,select,textarea) { max-width:100%; }
html:has(.vly-avatar-hub) :is(button,.vly-avatar-actions a) { transition:transform .18s ease,box-shadow .18s ease; }
@media(hover:hover) { html:has(.vly-avatar-hub) button:hover { transform:translateY(-1px); } }
@media(max-width:760px) { html:has(.messages-shell) .messages-layout { grid-template-columns:minmax(0,1fr); gap:12px; } html:has(.auth-page) .auth-panel { padding:26px 20px; } html:has(.browse-top) .container { padding-inline:10px; } }
