/* Nidra shell — the top bar and the story strip shared by every app page.
   Same design language as the homepage. Namespaced (nn-) so it is safe on any page. */
.nn-bar{position:fixed;top:0;left:0;right:0;z-index:1000;height:56px;
  background:rgba(18,8,38,.72);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);
  border-bottom:1px solid rgba(255,255,255,.1);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Inter,Helvetica,Arial,sans-serif}
.nn-bar *{box-sizing:border-box}
.nn-in{max-width:1120px;margin:0 auto;padding:0 20px;height:100%;display:flex;align-items:center;justify-content:space-between;gap:12px}
.nn-brand{display:flex;align-items:center;gap:9px;color:#f1ecfb;text-decoration:none;font-weight:700;font-size:17px;letter-spacing:.2px;white-space:nowrap}
.nn-brand svg{width:26px;height:26px;flex:none}
.nn-brand .nn-sub{color:#b4a9d6;font-weight:600}
.nn-links{display:flex;align-items:center;gap:18px;font-size:13px}
.nn-links a{color:#b4a9d6;text-decoration:none;transition:color .2s}
.nn-links a:hover{color:#c084fc}
.nn-cta{color:#fff !important;background:#a855f7;padding:7px 14px;border-radius:980px;font-weight:600;box-shadow:0 4px 14px rgba(124,58,237,.3)}
@media(max-width:620px){.nn-brand .nn-sub,.nn-links a.nn-hide{display:none}}
body.nn-has-bar{padding-top:56px}

.nn-chapter{display:inline-flex;align-items:center;gap:8px;margin:14px 0 6px;font-size:11.5px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;padding:7px 14px;border-radius:980px;background:rgba(168,85,247,.14);
  border:1px solid rgba(168,85,247,.35);color:#c084fc;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,sans-serif}
.nn-chapter b{color:#f1ecfb;font-weight:700}

.nn-story{max-width:1120px;margin:34px auto 0;padding:22px 20px 26px;border-top:1px solid rgba(255,255,255,.1);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Inter,Helvetica,Arial,sans-serif;color:#f1ecfb}
.nn-method{text-align:center;font-size:13px;color:#b4a9d6;margin-bottom:16px;letter-spacing:.02em}
.nn-method span{background:linear-gradient(100deg,#a855f7,#e879f9 48%,#7aa8ff);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:700}
.nn-steps{display:flex;justify-content:center;gap:6px;margin-bottom:18px;flex-wrap:wrap}
.nn-dot{width:26px;height:6px;border-radius:6px;background:rgba(255,255,255,.12)}
.nn-dot.on{background:linear-gradient(100deg,#a855f7,#e879f9)}
.nn-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.nn-card{display:block;padding:14px 16px;border-radius:16px;background:#1b1140;border:1px solid rgba(255,255,255,.1);
  color:#f1ecfb;text-decoration:none;transition:transform .2s,border-color .2s}
.nn-card:hover{transform:translateY(-2px);border-color:rgba(168,85,247,.5)}
.nn-card small{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#7a6fa6;margin-bottom:4px}
.nn-card strong{font-size:15px}
.nn-card span{display:block;font-size:12.5px;color:#b4a9d6;margin-top:3px}
.nn-card.nn-next{text-align:right;background:linear-gradient(135deg,#241552,#1b1140);border-color:rgba(168,85,247,.4)}
.nn-home{text-align:center;margin-top:14px;font-size:12.5px}
.nn-home a{color:#b4a9d6;text-decoration:none}.nn-home a:hover{color:#c084fc}
@media(max-width:540px){.nn-nav{grid-template-columns:1fr}.nn-card.nn-next{text-align:left}}
.nn-asleep{margin:12px 0;padding:12px 14px;border-radius:14px;font-size:14px;line-height:1.5;
  color:#fcd34d;background:rgba(252,211,77,.07);border:1px solid rgba(252,211,77,.35)}
.nn-asleep a{color:inherit;font-weight:700}
