.ob-overlay{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.6);backdrop-filter:blur(8px)}.ob-overlay[data-state=open]{animation:ob-fade-in .2s ease}.ob-overlay[data-state=closed]{animation:ob-fade-out .15s ease}.ob-modal{--ob-sans:var(--font-geist-sans),system-ui,sans-serif;--ob-mono:var(--font-geist-mono),ui-monospace,monospace;--ob-display:var(--font-display),serif;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:201;width:min(480px,calc(100vw - 32px));min-height:560px;max-height:calc(100vh - 32px);display:flex;flex-direction:column;border-radius:24px;background:#0a0a0a;border:1px solid rgba(255,255,255,.1);overflow:hidden;color:#ffffff;font-family:var(--ob-sans);outline:none}.ob-modal[data-state=open]{animation:ob-zoom-in .2s cubic-bezier(.4,0,.2,1)}.ob-modal[data-state=closed]{animation:ob-zoom-out .15s ease}.ob-bg{inset:0;overflow:hidden;pointer-events:none;z-index:0}.ob-bg,.ob-blob{position:absolute}.ob-blob{left:0;right:0;bottom:0;height:66%;background:radial-gradient(50% 70% at 50% 100%,rgba(209,200,255,.5),transparent 72%),linear-gradient(0deg,rgba(149,0,255,.6),rgba(156,14,255,.28) 42%,rgba(149,0,255,0) 80%);-webkit-mask-image:linear-gradient(90deg,rgba(0,0,0,0),#000 25%,#000 50%,#000 75%,rgba(0,0,0,0));mask-image:linear-gradient(90deg,rgba(0,0,0,0),#000 25%,#000 50%,#000 75%,rgba(0,0,0,0));filter:blur(44px)}.ob-noise{position:absolute;inset:0;background-image:url(/monitor/noise.png);background-size:256px 256px;opacity:.4;mix-blend-mode:overlay}.ob-close{position:absolute;top:16px;right:16px;z-index:3;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:rgba(18,18,18,.7);border:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.6);transition:color .15s ease,background .15s ease}.ob-close:hover{color:#ffffff;background:rgba(40,40,40,.8)}.ob-body{position:relative;z-index:2;flex:1;justify-content:center;text-align:center;padding:56px 32px 24px}.ob-body,.ob-slide{display:flex;flex-direction:column;align-items:center;gap:16px}.ob-slide{opacity:1;transform:translateY(0);transition:opacity .18s ease,transform .18s ease}.ob-slide[data-fading=true]{opacity:0;transform:translateY(6px)}.ob-art{position:relative;width:min(384px,84%);aspect-ratio:5/4;margin-bottom:8px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:0 16px 48px rgba(0,0,0,.45)}.ob-eyebrow{margin:0;font-family:var(--ob-mono);font-weight:600;font-size:13px;letter-spacing:.02em;text-transform:uppercase;color:#9200ff}.ob-title{margin:0;max-width:360px;text-wrap:balance;font-family:var(--ob-display);font-weight:500;font-size:46px;line-height:.95;letter-spacing:-.03em;background:radial-gradient(120% 165% at 50% -18%,#ffffff 44%,#b07bff 78%,#9500ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}.ob-text{margin:0;max-width:340px;font-family:var(--ob-sans);font-weight:400;font-size:15px;line-height:1.5;color:rgba(255,255,255,.6)}.ob-footer{position:relative;z-index:2;flex-direction:column;gap:20px;padding:0 32px 32px}.ob-dots,.ob-footer{display:flex;align-items:center}.ob-dots{gap:8px}.ob-dot{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.2);transition:width .25s ease,background .25s ease}.ob-dot[data-active=true]{width:24px;background:#9c0eff}.ob-actions{width:100%;display:flex;align-items:center;gap:12px}.ob-back{height:56px;padding:0 24px;border-radius:100px;background:rgba(24,24,24,.5);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(14px);color:rgba(255,255,255,.7);font-family:var(--ob-sans);font-weight:600;font-size:16px;display:inline-flex;align-items:center;gap:8px;transition:color .15s ease,border-color .15s ease}.ob-back:hover{color:#ffffff;border-color:rgba(255,255,255,.2)}.ob-next{flex:1;height:56px;border-radius:100px;background:#9c0eff;border:1px solid rgba(255,255,255,.1);color:#ffffff;font-family:var(--ob-sans);font-weight:600;font-size:18px;letter-spacing:-.01em;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:filter .15s ease,transform .1s ease}.ob-next:hover{filter:brightness(1.08)}.ob-next:active{transform:translateY(1px)}@keyframes ob-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ob-fade-out{0%{opacity:1}to{opacity:0}}@keyframes ob-zoom-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@keyframes ob-zoom-out{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.95)}}