/* Velyra Light / 2026-10-17.
   Shared surfaces only. No layout, media content, visibility or payment behavior changes.
   !important is intentional: legacy pages contain later inline dark styles. */
html:root{
 color-scheme:light;
 --bg:#fbf8fd!important;--bg-soft:#f5eff9!important;--bg2:#f8f1fb!important;
 --bg1:#fbf8fd!important;--bg3:#f2eaf8!important;
 --bg-1:#fbf8fd!important;--bg-2:#fff!important;--bg-3:#f4edf8!important;
 --bg-0:#fbf8fd!important;
 --card:#fff!important;--card-strong:#fcf8ff!important;
 --panel:#fff!important;--panel2:#fcf8ff!important;--panel-2:#f8f2fc!important;
 --text:#30233f!important;--muted:#6e5d7c!important;
 --line:#e6d9ed!important;--stroke:#e6d9ed!important;--stroke-2:#d9c4e5!important;
 --card-border:#e6d9ed!important;--soft:#f5eef9!important;
 --accent:#8542be!important;--accent2:#bd3489!important;
 --shadow:0 16px 46px #58366d12!important;--shadow-soft:0 14px 40px #58366d10!important;--shadow-card:0 12px 30px #58366d12!important;
 --vly-premium-text:#30233f!important;--vly-premium-muted:#6e5d7c!important;
 --vly-premium-bg-1:#fbf8fd!important;--vly-premium-bg-2:#fff!important;--vly-premium-bg-3:#f4edf8!important;
}
html,html body{background:#fbf8fd!important;color:#30233f!important}
html body{background:radial-gradient(ellipse at 92% 0,#f9e5f1 0,transparent 38%),radial-gradient(ellipse at 4% 30%,#f0e9fb 0,transparent 34%),#fbf8fd!important}
html body :is(h1,h2,h3,h4,h5,h6,label){color:#30233f!important;text-shadow:none!important}
html body :is(.card,.panel,.auth-card,.wizard-card) > p{color:#6e5d7c!important}
html body :is(.card,.glass,.panel,.hero-card,.stat-card,.stats-card,.insight-card,.match-card,
 .photo-card,.sidebar-card,.auth-card,.auth-panel,.wizard-card,.prompt-box,.prompt-block,
 .cta-box,.fact,.detail-item,.settings-card,.settings-panel,.settings-section,
 .admin-v2-card,.admin-v2-stat,.feed-item,.toast,.messages-card,
 .vly-activity-panel,.vly-activity-menu,.vly-total-card,.vly-call-card,.vly-device-card,
 .vl-modal__dialog,.vg-modal__dialog,.vl-modal__head,.vg-modal__head,.vl-modal__body,.vg-modal__body){
 background:#fff!important;color:#30233f!important;border-color:#e6d9ed!important;
 box-shadow:0 12px 36px #58366d10!important;
}
html body :is(.eyebrow,.pill,.badge-row .badge,.tag,.auth-kicker,.wizard-kicker,
 .vly-activity-btn,.vly-activity-tab,.vly-total-tab,.vly-profile-summary,
 .choice-card,.topic-card,.interest-card,.vibe-card){
 background:#f5edf9!important;color:#71438d!important;border-color:#e5d4ed!important;text-shadow:none!important;
}
html body :is(.card,.panel,.auth-card,.wizard-card,.settings-card,.vly-device-card) :is(h1,h2,h3,h4),
html body :is(.hero-copy h1,.hero-sub,.section-title,.panel-title,.brand-title,.stat,.stat-label,
 .fact-value,.detail-value,.prompt-title,.prompt-question,.body-copy,.prompt-text,
 .wizard-hero h1,.wizard-hero p,.choice-title,.wizard-brand,.auth-card h1,.auth-field label,
 .vly-activity-title,.vly-activity-head strong,.vly-total-card strong){
 color:#30233f!important;text-shadow:none!important;
}
html body :is(.muted,.sub,.subtitle,.summary,.section-sub,.panel-sub,.hero-copy p,.hero-copy .meta,
 .body-copy,.brand-sub,.stat-note,.feed-time,.reason,.meta-note,.fact-label,.detail-label,
 .footer-note,.auth-sub,.auth-meta,.wizard-note,.choice-sub,.choice-desc,.choice-hint,
 .admin-v2-sub,.admin-v2-stat-label,.admin-user-meta,.admin-filter label,
 .vly-activity-time,.vly-activity-body,.vly-activity-head small,.vly-total-card span,.vly-device-help){
 color:#6e5d7c!important;text-shadow:none!important;
}
html body :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=submit]):not([type=button]),select,textarea){
 background:#fff!important;color:#392747!important;border-color:#dccaE6!important;color-scheme:light;
}
html body :is(input,textarea)::placeholder{color:#84718f!important;opacity:1}
html body :is(input,select,textarea):focus-visible{outline:3px solid #b181cf!important;outline-offset:2px}
html body :is(.nav a,.admin-v2-nav a,.nav-btn,.cta-btn,.btn,.top-actions a,.filter-btn.secondary,
 .quick-actions a,.action-btn,.vly-call-controls button,.vly-device-card button){
 background:#f5edf9!important;color:#6e3691!important;border-color:#dfcce9!important;text-shadow:none!important;
}
html body :is(.btn-primary,.btn.primary,.cta-btn.primary,.nav-btn.primary,.primary,
 .nav a.active,.nav a.is-active,.auth-btn,.wizard-submit,.wizard-next,.filter-btn:not(.secondary)){
 background:linear-gradient(110deg,#7b3dbb,#bd358e)!important;color:#fff!important;border-color:transparent!important;
}
html body :is(.danger,.btn-danger,.vly-call-danger,.action-btn.expire){
 background:#fff0f4!important;color:#a32c50!important;border-color:#edc4d1!important;
}
html body :is(.good,.ok,.success,.status-active,.admin-pill.active,.admin-pill.paid,.admin-pill.succeeded,
 .admin-pill.complete,.admin-pill.completed,.score-pill,.saved-pref-banner){
 background:#eaf8f1!important;color:#226d53!important;border-color:#c7e8d7!important;
}
html body :is(.warn,.pending,.status-pending,.admin-pill.pending,.admin-pill.scheduled){
 background:#fff5df!important;color:#8a6116!important;border-color:#edd8a6!important;
}
html body :is(.bad,.error,.expired,.status-expired,.admin-pill.expired,.admin-pill.cancelled,
 .admin-pill.failed,.admin-pill.not_paid,.admin-pill.unknown){
 background:#fff0f4!important;color:#a32c50!important;border-color:#edc4d1!important;
}
html body :is(.blue,.pink){color:#7f3ca1!important;background:#f2e6fb!important}
html body :is(.admin-pill,.admin-action-btn.gray){color:#68407e!important;background:#f2e8f9!important;border-color:#dfcdea!important}
html body :is(.admin-v2-stat-num,.admin-user-name){color:#30233f!important}
html body :is(.admin-action-btn.green,.action-btn.activate){color:#fff!important;background:#237b58!important}
html body .admin-action-btn.red{color:#fff!important;background:#b53055!important}
html body :is(.table-wrap,.table-scroll,.scroll,.admin-v2-table,.admin-v2-page){background:#fbf8fd!important;color:#30233f!important}
html body table{background:#fff!important;color:#30233f!important;border-color:#e6d9ed!important}
html body :is(th,thead){background:#f3ebf8!important;color:#65447b!important;border-color:#e6d9ed!important}
html body td{background:#fff!important;color:#3f2d4e!important;border-color:#eee5f3!important}
html body tbody tr:nth-child(even) td{background:#fcf9fe!important}
html body td a{color:#7d3da5!important}
html body :is(.topbar,.admin-top,.header,.toolbar,.sidebar:not(.vly-sidebar),.admin-v2-nav){
 background:linear-gradient(110deg,#fff,#fcf0fa)!important;color:#422753!important;border-color:#e6d9ed!important;
}
html body :is(.sidebar a,.topbar a:not(.btn-primary),.header a,.toolbar a){color:#70408c!important}
html body :is(.preview-modal,.lightbox,.modal-overlay,.vly-device-overlay,.vly-call-backdrop){
 background:rgba(87,52,112,.25)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);
}
html body :is(.preview-inner,.preview-stage,.preview-meta,.modal-content,.modal-card,
 .media-empty,.hero-placeholder,.vly-device-preview,.vly-device-local,
 .vly-call-stage,.vly-call-local,.vly-call-remote,.video-preview,.prs-youtube){
 background:#f4edf8!important;color:#654878!important;border-color:#e0cfe9!important;
}
html body :is(.preview-close,.preview-nav,.photo-badge,.preview-main-badge,.media-badge){
 background:#fffffff0!important;color:#6e3691!important;border-color:#dfcce9!important;
}
html body :is(.hero-media-inner,.media-box,.media-tile,.media-tile video,.hero-media video){
 background:#f3ebf8!important;
}
html body :is(.quality-bar,.bar,.progress-track){background:#ece0f4!important}
html body :is(.quality-fill,.bar-fill){background:linear-gradient(100deg,#8850c5,#d44a9b)!important}
/* Public profile, screenshot IMG_3467: no separate dark surface or cyan accent. */
html body:has(.hero-grid .hero-media){background:radial-gradient(ellipse at 95% 0,#f8dfee,transparent 42%),#fbf8fd!important}
html body:has(.hero-grid .hero-media) .topbar{border-bottom:1px solid #e6d9ed!important}
html body:has(.hero-grid .hero-media) :is(.eyebrow,.pill,.score-pill){box-shadow:none!important}
html body:has(.hero-grid .hero-media) .hero-media{border:5px solid #fff;box-shadow:0 18px 45px #6c3e7618}
/* Photo captions retain contrast OVER photography; the photos/videos themselves are untouched. */
html body :is(.story-name,.profile-name-overlay,.profile-photo-caption){color:#fff!important}
html body .preview-meta :is(.preview-name,.preview-sub){color:#513361!important}
html body .wizard-hero h1{color:#30233f!important}
html body .choice-card:is(.is-selected,:has(input:checked)){background:#f0e1fa!important;border-color:#b780d0!important}
html body .choice-card :is(strong,b,span,p,small){color:inherit}
html body .saved-pref-banner strong{color:#226d53!important}
html body .vly-call-room #callStatus{color:#6e5d7c!important}
html body .vly-call-room #callError{color:#a32c50!important}
html body .vly-call-room button.vly-call-primary{background:#8441b8!important;color:#fff!important}
html body .pr-studio :is(.original-text,.chat-message,.empty-state){color:#6e5d7c!important;background:#f7f0fb!important}
html body .pr-studio :is(.photo-bubble img,.video-bubble video,.video-preview video,.lightbox video){background:#f0e5f7!important}
/* Old Activity Center implementation can still exist on some profile pages. */
html body :is(.vly-activity-panel,.vly-activity-menu,.vly-activity-item,.vly-activity-empty){background:#fff!important;color:#463051!important;border-color:#e6d9ed!important}
html body .vly-activity-item.is-new{background:#f8effc!important}
html body #velyraPhotoEditor{background:rgba(107,69,129,.23)!important}
html body :is(.vl-modal,.vg-modal){background:rgba(107,69,129,.23)!important}
html body :is(.auth-profile-media,.auth-media-card,.vl-modal__video,.vg-modal__video){background:#f2e9f8!important}
/* Keep controls and unavailable states legible without changing their disabled behavior. */
html body :is(button,a):focus-visible{outline:3px solid #a36ac7!important;outline-offset:3px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
