/* NEXA v32 — Pixel monochrome foundation. Logo stays monochrome; dashboard accent is user-configurable. */
:root{--accent:#f2f2f2;--blue:var(--accent);--nexa-ink:#080808;--nexa-paper:#f4f4f4;--nexa-panel:#151515;--nexa-line:#373737;--nexa-muted:#a4a4a4;--nexa-radius:5px;--nexa-shadow:8px 8px 0 rgba(0,0,0,.22)}
body.nexa-pixel{background:#080808!important;color:#f5f5f5!important;font-family:var(--font-body,'DM Sans',sans-serif);background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px)!important;background-size:8px 8px!important}
body.nexa-pixel[data-background="pixel-light"]{background:#f2f2f2!important;color:#101010!important;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px)!important}
body.nexa-pixel[data-background="custom"]{background:var(--bg-custom)!important;background-image:linear-gradient(rgba(127,127,127,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(127,127,127,.07) 1px,transparent 1px)!important}
body.nexa-pixel[data-font="pixel"] h1,body.nexa-pixel[data-font="pixel"] h2,body.nexa-pixel[data-font="pixel"] h3,body.nexa-pixel[data-font="pixel"] .eyebrow,body.nexa-pixel[data-font="pixel"] .tag{font-family:'Press Start 2P',monospace!important;letter-spacing:-.04em;line-height:1.55}
body.nexa-pixel[data-font="pixel"] h1{font-size:clamp(15px,2.2vw,22px)}body.nexa-pixel[data-font="pixel"] h2{font-size:clamp(12px,1.6vw,17px)}body.nexa-pixel[data-font="mono"]{--font-body:'Space Mono',monospace}body.nexa-pixel[data-font="modern"]{--font-body:'DM Sans',sans-serif}
body.nexa-pixel .topbar,body.nexa-pixel .sidebar,body.nexa-pixel .tool-card,body.nexa-pixel .chat-card,body.nexa-pixel .device-dashboard,body.nexa-pixel .device-stat,body.nexa-pixel .feature,body.nexa-pixel .soft-panel,body.nexa-pixel .settings-drawer,body.nexa-pixel .auth-shell,body.nexa-pixel .nexa-access-panel,body.nexa-pixel .prayer-dashboard{background:#111!important;color:#f5f5f5!important;border:1px solid #383838!important;border-radius:var(--nexa-radius)!important;box-shadow:var(--nexa-shadow)!important}
body.nexa-pixel[data-background="pixel-light"] .topbar,body.nexa-pixel[data-background="pixel-light"] .sidebar,body.nexa-pixel[data-background="pixel-light"] .tool-card,body.nexa-pixel[data-background="pixel-light"] .chat-card,body.nexa-pixel[data-background="pixel-light"] .device-dashboard,body.nexa-pixel[data-background="pixel-light"] .device-stat,body.nexa-pixel[data-background="pixel-light"] .feature,body.nexa-pixel[data-background="pixel-light"] .soft-panel,body.nexa-pixel[data-background="pixel-light"] .settings-drawer,body.nexa-pixel[data-background="pixel-light"] .auth-shell,body.nexa-pixel[data-background="pixel-light"] .nexa-access-panel,body.nexa-pixel[data-background="pixel-light"] .prayer-dashboard{background:#fff!important;color:#111!important;border-color:#bcbcbc!important;box-shadow:6px 6px 0 #c9c9c9!important}
body.nexa-pixel .hero-v19,body.nexa-pixel .hero,body.nexa-pixel .nexa-gram-head{background:#171717!important;color:#fff!important;border:1px solid #555!important;border-radius:var(--nexa-radius)!important}
body.nexa-pixel[data-background="pixel-light"] .hero-v19,body.nexa-pixel[data-background="pixel-light"] .hero,body.nexa-pixel[data-background="pixel-light"] .nexa-gram-head{background:#e8e8e8!important;color:#111!important;border-color:#aaa!important}
body.nexa-pixel .hero-v19 *,body.nexa-pixel .hero *{color:inherit}
body.nexa-pixel .feature:hover,body.nexa-pixel .tool-card:hover{transform:translateY(-2px);border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),6px 6px 0 #000!important}
body.nexa-pixel .primary,body.nexa-pixel .auth-submit,body.nexa-pixel .white-btn,body.nexa-pixel .send-btn{background:var(--accent)!important;color:#080808!important;border:1px solid var(--accent)!important;border-radius:3px!important;font-weight:900;box-shadow:3px 3px 0 #666!important}
body.nexa-pixel .secondary,body.nexa-pixel .hero-ghost,body.nexa-pixel .mini-btn,body.nexa-pixel .nav-item{background:#191919!important;color:#f2f2f2!important;border:1px solid #555!important;border-radius:3px!important}
body.nexa-pixel[data-background="pixel-light"] .secondary,body.nexa-pixel[data-background="pixel-light"] .hero-ghost,body.nexa-pixel[data-background="pixel-light"] .mini-btn,body.nexa-pixel[data-background="pixel-light"] .nav-item{background:#eee!important;color:#111!important;border-color:#aaa!important}
body.nexa-pixel .nav-item.active,body.nexa-pixel .chat-tab.active{background:var(--accent)!important;color:#080808!important;border-color:var(--accent)!important}
body.nexa-pixel .ficon,body.nexa-pixel .tool-icon,body.nexa-pixel .resource-mark{background:#242424!important;color:#fff!important;border:1px solid #666!important;border-radius:3px!important}
body.nexa-pixel .muted,body.nexa-pixel .helper,body.nexa-pixel .chat-foot,body.nexa-pixel .feature small,body.nexa-pixel .device-stat small{color:#aaa!important}
body.nexa-pixel[data-background="pixel-light"] .muted,body.nexa-pixel[data-background="pixel-light"] .helper,body.nexa-pixel[data-background="pixel-light"] .chat-foot,body.nexa-pixel[data-background="pixel-light"] .feature small,body.nexa-pixel[data-background="pixel-light"] .device-stat small{color:#555!important}
body.nexa-pixel input,body.nexa-pixel textarea,body.nexa-pixel select{background:#080808!important;color:#f8f8f8!important;border:1px solid #666!important;border-radius:3px!important}body.nexa-pixel[data-background="pixel-light"] input,body.nexa-pixel[data-background="pixel-light"] textarea,body.nexa-pixel[data-background="pixel-light"] select{background:#fff!important;color:#111!important;border-color:#999!important}
body.nexa-pixel .message{background:#202020!important;color:#fff!important;border:1px solid #555!important;border-radius:4px!important}body.nexa-pixel .message.mine{background:#eee!important;color:#111!important;border-color:#fff!important}body.nexa-pixel .message.mine p,body.nexa-pixel .message.mine b,body.nexa-pixel .message.mine time{color:#111!important}
body.nexa-pixel .live-pill,body.nexa-pixel .online-label,body.nexa-pixel .status-live{background:#222!important;color:#fff!important;border:1px solid #777!important;border-radius:3px!important}
body.nexa-pixel .sidebar-tip,body.nexa-pixel .date-chip,body.nexa-pixel .story-add,body.nexa-pixel .story-bubble{background:#191919!important;color:#fff!important;border-color:#666!important}
body.nexa-pixel .settings-backdrop{background:#000c!important;backdrop-filter:blur(8px)}body.nexa-pixel .settings-drawer{border-radius:5px!important}
body.nexa-pixel .nexa-resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 24px}.nexa-resource-grid .resource-card{display:flex;align-items:center;gap:12px;min-width:0;padding:15px;text-align:left;text-decoration:none;background:#111;color:#fff;border:1px solid #555;border-radius:5px;box-shadow:5px 5px 0 #333;cursor:pointer}.resource-card>span:nth-child(2){display:grid;gap:5px;min-width:0}.resource-card b{font-size:13px}.resource-card small{font-size:11px;color:#aaa;line-height:1.4}.resource-card strong{margin-left:auto}.resource-mark{flex:0 0 38px;width:38px;height:38px;display:grid;place-items:center;font-family:'Space Mono',monospace;font-weight:900}
.chat-card-v32{overflow:hidden}.chat-tabs{display:flex;gap:8px;padding:14px 16px;border-bottom:1px solid #444}.chat-tab{flex:1;padding:11px 9px;background:#191919;color:#eee;border:1px solid #555;border-radius:4px;font-weight:900;letter-spacing:.06em}.private-target{padding:13px 16px;background:#171717;border-bottom:1px solid #444}.private-target label{display:block;margin-bottom:7px;font-size:12px;font-weight:800}.private-target-row{display:flex;gap:8px}.private-target-row input{flex:1;min-width:0}.private-target-row button{white-space:nowrap}.private-target>small{display:block;margin-top:7px;color:#aaa}.chat-card-v32 .chat-head{background:#111;color:#fff;border-bottom:1px solid #444}.emoji-strip{display:flex;gap:7px;overflow-x:auto;padding:8px 14px;border-top:1px solid #333}.emoji-strip button{flex:0 0 36px;width:36px;height:34px;background:#222;border:1px solid #555;border-radius:3px;font-size:18px}.chat-compose{display:flex;gap:8px;padding:12px}.chat-compose input{flex:1;min-width:0}.chat-compose .send-btn{width:48px;min-width:48px}
.intro-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#050505}.intro-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.18)),linear-gradient(0deg,rgba(0,0,0,.8),transparent 55%)}.intro-brand{position:relative;z-index:2;display:flex;flex-direction:column;align-items:flex-start;gap:12px;width:min(90%,520px);padding:24px;color:#fff;text-shadow:0 2px 12px #000}.intro-brand img{width:84px;height:84px;object-fit:contain;filter:grayscale(1)}.intro-brand>b{font:clamp(19px,4vw,32px) 'Press Start 2P',monospace;line-height:1.5}.intro-brand>span{font:700 13px 'Space Mono',monospace;letter-spacing:.22em}.intro-brand small{font:12px 'Space Mono',monospace;color:#ddd}.intro-brand button{margin-top:10px;padding:10px 14px;background:#fff;color:#111;border:1px solid #fff;border-radius:2px;font-weight:900}
@media(max-width:700px){body.nexa-pixel .nexa-resource-grid{grid-template-columns:1fr}.chat-card-v32 .messages{min-height:42vh;max-height:55vh}.intro-brand{padding:18px}.intro-brand img{width:64px;height:64px}}
@media(prefers-reduced-motion:reduce){body.nexa-pixel *{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
/* Sweep legacy accent classes/inline gradients so old blue-violet cards cannot leak into the new theme. */
body.nexa-pixel .app [class~="blue"],body.nexa-pixel .app [class~="purple"],body.nexa-pixel .app [class~="cyan"],body.nexa-pixel .app [class~="green"],body.nexa-pixel .app [class~="pink"],body.nexa-pixel .app [class~="orange"]{background-color:#222!important;background-image:none!important;color:#f5f5f5!important;border-color:#666!important}
body.nexa-pixel .app [style*="linear-gradient"]{background-image:none!important;background-color:#181818!important;color:#f5f5f5!important;border-color:#555!important}
body.nexa-pixel[data-background="pixel-light"] .app [class~="blue"],body.nexa-pixel[data-background="pixel-light"] .app [class~="purple"],body.nexa-pixel[data-background="pixel-light"] .app [class~="cyan"],body.nexa-pixel[data-background="pixel-light"] .app [class~="green"],body.nexa-pixel[data-background="pixel-light"] .app [class~="pink"],body.nexa-pixel[data-background="pixel-light"] .app [class~="orange"]{background-color:#eee!important;color:#111!important;border-color:#aaa!important}
body.nexa-pixel :focus-visible{outline:3px solid var(--accent)!important;outline-offset:3px!important}
body.nexa-pixel button,body.nexa-pixel a,body.nexa-pixel input,body.nexa-pixel select{touch-action:manipulation}body.nexa-pixel button,body.nexa-pixel .nav-item{min-height:42px}
body.nexa-pixel[data-background="pixel-light"] .app [style*="linear-gradient"]{background-color:#eee!important;color:#111!important;border-color:#aaa!important}
body.nexa-pixel .mobile-nav{background:#101010!important;border-top:1px solid #555!important;box-shadow:0 -8px 24px #0008!important;backdrop-filter:blur(12px)}body.nexa-pixel .mobile-nav button{color:#aaa!important}body.nexa-pixel .mobile-nav button.active{color:#fff!important}body.nexa-pixel .mobile-nav button.active:before{background:#fff1!important;box-shadow:inset 0 0 0 1px #fff5!important;border-radius:4px!important}
body.nexa-pixel[data-background="pixel-light"] .mobile-nav{background:#fff!important;border-color:#aaa!important}body.nexa-pixel[data-background="pixel-light"] .mobile-nav button{color:#555!important}body.nexa-pixel[data-background="pixel-light"] .mobile-nav button.active{color:#111!important}
body.nexa-pixel .hero-ring,body.nexa-pixel .hero-orbit-card{border-color:#888!important;box-shadow:none!important}body.nexa-pixel .hero-orbit-card{background:#111!important;color:#fff!important}body.nexa-pixel[data-background="pixel-light"] .hero-orbit-card{background:#fff!important;color:#111!important}
body.nexa-pixel .chess-stage,body.nexa-pixel .luffy-stage{background:#171717!important;border:1px solid #555!important}body.nexa-pixel .chess-board3d{border-color:#777!important;box-shadow:0 22px 0 #333,0 32px 35px #0008!important}body.nexa-pixel .light-square{background:#eee!important}body.nexa-pixel .dark-square{background:#555!important}body.nexa-pixel .selected-square{background:#999!important;outline-color:#fff!important}
body.nexa-pixel .mobile-nav button{min-height:48px}
body.nexa-pixel .splash{background:#050505!important;color:#fff!important}body.nexa-pixel .splash .loader{background:#444!important;border-radius:0!important}body.nexa-pixel .splash .loader i{background:#fff!important}body.nexa-pixel .splash small{color:#ddd!important}
body.nexa-pixel .brand-mark{background:#fff!important;border:1px solid #fff!important;border-radius:3px!important}body.nexa-pixel .brand-mark img{filter:grayscale(1)}body.nexa-pixel .online-label i,body.nexa-pixel .live-pill i,body.nexa-pixel .status-live{background:#fff!important;color:#111!important}
body.nexa-pixel .story-add span{background:#222!important;color:#fff!important;border-color:#aaa!important;border-radius:3px!important}body.nexa-pixel .story-bubble img{border-color:#fff!important}body.nexa-pixel[data-background="pixel-light"] .story-bubble img{border-color:#111!important}
body.nexa-pixel .auth-gate{background:#080808!important;color:#fff!important}body.nexa-pixel .auth-brand img{filter:grayscale(1)}body.nexa-pixel .auth-privacy,body.nexa-pixel .auth-copy p{color:#aaa!important}

/* v33 nearby mosque results */
.mosque-results{display:grid;gap:10px}.mosque-result-summary{font-size:12px;color:var(--muted);margin:2px 0 5px}.mosque-result-card{display:grid;gap:7px;padding:13px;border:1px solid var(--nexa-line);border-radius:5px;background:#111;color:#f5f5f5}.mosque-result-card>b{font-size:13px;color:inherit}.mosque-result-card>small{font-size:11px;color:var(--nexa-muted,#aaa)}body.nexa-pixel[data-background="pixel-light"] .mosque-result-card{background:#fff;color:#111;border-color:#bbb}body.nexa-pixel[data-background="pixel-light"] .mosque-result-card>small{color:#555}.mosque-result-summary{color:var(--nexa-muted,#aaa)}body.nexa-pixel[data-background="pixel-light"] .mosque-result-summary{color:#555}.mosque-result-actions{display:flex;gap:8px;flex-wrap:wrap}.mosque-result-actions a{display:inline-flex;align-items:center;padding:7px 10px;border:1px solid var(--line);border-radius:8px;color:var(--text);text-decoration:none;font-size:11px}.mosque-result-actions a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* v34: legibility + splash audio controls */
body.nexa-pixel .app .page-title h1,body.nexa-pixel .app .welcome h1,body.nexa-pixel .app .section-head h2,body.nexa-pixel .app .tool-card h2,body.nexa-pixel .app .tool-card h3,body.nexa-pixel .app .tool-card h4,body.nexa-pixel .app .tool-card p,body.nexa-pixel .app .tool-card label,body.nexa-pixel .app .tool-card b,body.nexa-pixel .app .tool-card strong,body.nexa-pixel .app .feature b,body.nexa-pixel .app .feature small,body.nexa-pixel .app .nav-item,body.nexa-pixel .app .chat-head b,body.nexa-pixel .app .chat-head small,body.nexa-pixel .app .message p,body.nexa-pixel .app .message b,body.nexa-pixel .app .message time{color:inherit!important;opacity:1!important;visibility:visible!important}
body.nexa-pixel[data-background="pixel-dark"] .app .page-title h1,body.nexa-pixel[data-background="pixel-dark"] .app .welcome h1,body.nexa-pixel[data-background="pixel-dark"] .app .section-head h2,body.nexa-pixel[data-background="pixel-dark"] .app .tool-card h2,body.nexa-pixel[data-background="pixel-dark"] .app .tool-card h3,body.nexa-pixel[data-background="pixel-dark"] .app .tool-card h4,body.nexa-pixel[data-background="pixel-dark"] .app .tool-card p,body.nexa-pixel[data-background="pixel-dark"] .app .tool-card label,body.nexa-pixel[data-background="pixel-dark"] .app .tool-card b,body.nexa-pixel[data-background="pixel-dark"] .app .tool-card strong{color:#f5f5f5!important}
body.nexa-pixel[data-background="pixel-light"] .app .page-title h1,body.nexa-pixel[data-background="pixel-light"] .app .welcome h1,body.nexa-pixel[data-background="pixel-light"] .app .section-head h2,body.nexa-pixel[data-background="pixel-light"] .app .tool-card h2,body.nexa-pixel[data-background="pixel-light"] .app .tool-card h3,body.nexa-pixel[data-background="pixel-light"] .app .tool-card h4,body.nexa-pixel[data-background="pixel-light"] .app .tool-card p,body.nexa-pixel[data-background="pixel-light"] .app .tool-card label,body.nexa-pixel[data-background="pixel-light"] .app .tool-card b,body.nexa-pixel[data-background="pixel-light"] .app .tool-card strong{color:#111!important}
body.nexa-pixel .splash .intro-brand{z-index:5;display:flex!important;visibility:visible!important;opacity:1!important;color:#fff!important;background:rgba(0,0,0,.68);border:1px solid rgba(255,255,255,.55);box-shadow:0 12px 45px #000b;border-radius:6px;backdrop-filter:blur(5px);padding:clamp(18px,4vw,30px);max-width:min(92vw,520px)}
body.nexa-pixel .splash .intro-brand>b,body.nexa-pixel .splash .intro-brand>span,body.nexa-pixel .splash .intro-brand small{color:#fff!important;opacity:1!important;visibility:visible!important;text-shadow:0 2px 5px #000}
.intro-controls{display:flex;gap:9px;flex-wrap:wrap;margin-top:8px}.intro-controls button{min-height:42px;padding:10px 13px;background:#fff!important;color:#080808!important;border:2px solid #fff!important;border-radius:3px!important;font:900 11px 'Space Mono',monospace;letter-spacing:.04em}.intro-controls button.sound-on{background:#d8ffd8!important;border-color:#d8ffd8!important}.intro-shade{z-index:1;pointer-events:none}.intro-video{z-index:0}
