.visual-discovery{padding-bottom:35px}.visual-discovery-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:8px 0 24px}.visual-discovery-head small{font:10px ui-monospace,monospace;letter-spacing:.22em;color:var(--control-accent,var(--accent))}.visual-discovery-head h1{font-size:clamp(35px,7vw,56px);letter-spacing:-2px;margin:8px 0}.visual-discovery-head h1 span{font-size:.6em;color:var(--accent);margin-left:8px}.visual-discovery-head p{font-size:12px;color:var(--secondary)}.visual-filters{display:flex;gap:10px;margin-bottom:20px}.visual-filters button{min-height:40px;padding:9px 18px}.visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.visual-tile{position:relative;min-width:0;aspect-ratio:3/4;overflow:hidden;border-radius:20px;background:var(--panel);border:1px solid color-mix(in srgb,var(--accent) 38%,transparent);box-shadow:inset 0 1px #fff3,0 10px 30px #0002}.visual-tile:nth-child(7n+1){grid-column:span 2;grid-row:span 2}.visual-open{display:block;width:100%;height:100%;padding:0;border:0;background:#05080d;cursor:zoom-in}.visual-open img,.visual-open video{display:block;width:100%;height:100%;object-fit:cover;transition:scale .4s}.visual-open:hover img{scale:1.035}.visual-pulse-label{position:absolute;top:12px;left:12px;padding:5px 8px;font:9px ui-monospace,monospace;color:#fff;background:#0008;border:1px solid #fff3;border-radius:8px;pointer-events:none}.visual-creator{position:absolute;bottom:0;left:0;right:0;border:0;border-radius:0;background:linear-gradient(transparent,#000b);padding:30px 12px 12px;text-align:left;color:white!important;font-size:12px;text-shadow:0 1px 5px #000;cursor:pointer}.visual-empty{padding:40px 20px;text-align:center;border:1px solid var(--line);border-radius:22px}.visual-empty p{font-size:13px;color:var(--secondary)}.visual-open:focus-visible{outline:3px solid var(--accent);outline-offset:-4px}.visual-filters [aria-pressed=true]{border-color:var(--control-accent,var(--accent));color:var(--text)}
/* Contrast belongs to the controls, not to a lighter page background. */
html:not(.light) :is(button.outline,.dash-navigation button,.universe-command,.coordinate-save,.glass-select-trigger,.media-tabs button,.tabs button,.profile-theme-card,.prism-themes button,.profile-finish-options button){color:#edf5ff!important;border-color:color-mix(in srgb,var(--control-accent,var(--accent)) 62%,#dcefff30)!important;background-color:color-mix(in srgb,var(--control-accent,var(--accent)) 25%,#233246)!important}
html:not(.light) :is(button.primary,.comms-send){color:var(--control-ink,#07101b)!important;background-color:var(--control-accent,var(--accent))!important}
html:not(.light) :is(button.outline,.glass-select-trigger,.media-tabs button,.tabs button)[aria-pressed=true],html:not(.light) .visual-filters [aria-pressed=true]{border-color:var(--control-accent,var(--accent))!important;box-shadow:inset 0 1px #fff6,0 0 0 1px var(--control-accent,var(--accent)),0 0 18px color-mix(in srgb,var(--accent) 25%,transparent)!important}
html:not(.light) :is(.profile-theme-card,.prism-themes button) small{color:#c3d2e4!important}.visual-filters button:disabled{opacity:.5}
@media(max-width:760px){.visual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.visual-tile:nth-child(7n+1){grid-column:auto;grid-row:auto}.visual-tile:nth-child(5n+1){grid-row:span 2;aspect-ratio:auto}.visual-tile{border-radius:15px}.visual-discovery-head{align-items:flex-start}.visual-discovery-head>.outline{padding:9px 12px;font-size:11px}.visual-discovery-head p{max-width:210px;line-height:1.6}.visual-creator{font-size:10px}.tabs{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.visual-open img,.visual-open video{transition:none}.visual-open:hover img{scale:1}}
