:root{--bg: #0A081E;--bg-2: #08061A;--surface-paper: #1A114A;--surface-note: #241657;--surface-card: #150C3D;--surface-ticker: #0E0830;--primary: #4933DA;--deep: #3623AA;--text: #F0EFF2;--muted: #9E9DA6;--warm: #E6A85C;--glow: rgba(73, 51, 218, .55);--glow-warm: rgba(230, 168, 92, .3);--grid: rgba(73, 51, 218, .05)}html,body,#root{background:var(--bg)!important;color:var(--text);font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-weight:300;height:100%;overscroll-behavior:none}#root{height:100dvh}body{overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}img,svg{-webkit-user-drag:none;user-drag:none}.theme-bg{background:var(--bg);background-image:radial-gradient(ellipse 80% 60% at 20% 0%,rgba(73,51,218,.18),transparent 60%),radial-gradient(ellipse 70% 60% at 85% 100%,rgba(54,35,170,.18),transparent 60%),linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:auto,auto,32px 32px,32px 32px}.serif{font-family:Fraunces,Georgia,Times New Roman,serif;font-optical-sizing:auto}.handwritten{font-family:Caveat,cursive;font-weight:500}.mono{font-family:JetBrains Mono,ui-monospace,monospace}.pixel-stars{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;z-index:0}.pixel-star{position:absolute;width:2px;height:2px;background:var(--text);opacity:.3;animation:twinkle 3.6s ease-in-out infinite}.pixel-star.lg{width:3px;height:3px;background:var(--primary);opacity:.55;box-shadow:0 0 6px var(--glow)}@keyframes twinkle{0%,to{opacity:.12}50%{opacity:.55}}.code-glyph{position:absolute;font-family:JetBrains Mono,monospace;color:var(--primary);opacity:.05;pointer-events:none;-webkit-user-select:none;user-select:none;font-weight:700;animation:drift 22s ease-in-out infinite}@keyframes drift{0%,to{transform:translate(0)}50%{transform:translate(8px,-12px)}}.grain{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;background:repeating-linear-gradient(to bottom,rgba(255,255,255,.012) 0,rgba(255,255,255,.012) 1px,transparent 1px,transparent 3px);mix-blend-mode:overlay;opacity:.6}.pencil-shadow{box-shadow:0 1px #ffffff0d inset,0 22px 36px -16px #000000bf,0 8px 20px -10px #0000008c,0 0 36px -12px var(--glow)}.paper-main{background:radial-gradient(ellipse at 0% 0%,rgba(73,51,218,.18),transparent 60%),linear-gradient(180deg,#20156A 0%,var(--surface-paper) 100%);border:1px solid rgba(240,239,242,.06)}.sticky-warm{background:radial-gradient(ellipse at 100% 0%,rgba(230,168,92,.1),transparent 60%),linear-gradient(180deg,var(--surface-note) 0%,#1C1247 100%);border:1px solid rgba(230,168,92,.14);box-shadow:0 1px #ffffff0d inset,0 18px 28px -14px #000000b3,0 0 24px -10px var(--glow-warm);color:var(--text)}.postcard{background:radial-gradient(ellipse at 100% 100%,rgba(73,51,218,.12),transparent 60%),linear-gradient(180deg,var(--surface-card) 0%,#110931 100%);border:2px solid rgba(73,51,218,.35)}.paper-cool{background:radial-gradient(ellipse at 100% 0%,rgba(73,51,218,.18),transparent 60%),linear-gradient(180deg,#1e1456,#150c3d);border:1px solid rgba(73,51,218,.2)}.tape{position:absolute;width:90px;height:22px;background:#e6a85c47;border-left:1px dashed rgba(255,255,255,.18);border-right:1px dashed rgba(255,255,255,.18);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:0 2px 8px #00000059,0 0 18px #e6a85c33;z-index:5}.tape-1{top:-10px;left:50%;transform:translate(-50%) rotate(-4deg)}.tape-2{top:-10px;left:18px;transform:rotate(-8deg);width:70px}.tape-3{top:-10px;right:14px;transform:rotate(7deg);width:70px}.tape-neon{background:#4933da4d;box-shadow:0 2px 10px #0006,0 0 18px var(--glow);border-left:1px dashed rgba(240,239,242,.18);border-right:1px dashed rgba(240,239,242,.18)}.wordmark-glow{text-shadow:0 0 18px rgba(73,51,218,.4),0 0 48px rgba(73,51,218,.22)}.dot-pulse{position:relative;background:var(--primary);box-shadow:0 0 8px var(--glow)}.dot-pulse:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;background:var(--primary);opacity:.55;animation:pulse-dot 1.6s ease-out infinite}@keyframes pulse-dot{0%{transform:scale(.6);opacity:.7}to{transform:scale(2);opacity:0}}.caret-soft{display:inline-block;width:.12em;height:1em;background:var(--primary);margin-left:4px;vertical-align:-.12em;animation:caret-blink 1s steps(1) infinite;box-shadow:0 0 6px var(--glow)}@keyframes caret-blink{50%{opacity:0}}.stamp{border:1.5px dashed var(--primary);color:var(--primary);padding:4px 10px;border-radius:2px;letter-spacing:.25em;text-shadow:0 0 6px var(--glow)}.ticker-scroll{display:inline-flex;white-space:nowrap;animation:ticker 30s linear infinite}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.lift-hover{transition:box-shadow .22s ease,border-color .22s ease}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--primary)}.spotlight{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2;background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 50%),rgba(73,51,218,.18),transparent 65%);mix-blend-mode:screen}.cursor-hidden,.cursor-hidden *{cursor:none!important}.ink-cursor{position:fixed;top:0;left:0;width:12px;height:12px;border-radius:50%;background:var(--primary);box-shadow:0 0 14px var(--glow),0 0 4px var(--text);pointer-events:none;z-index:9999;mix-blend-mode:screen;transition:width .16s ease,height .16s ease,opacity .16s ease,background .16s ease}.ink-cursor.link{width:28px;height:28px;background:#e6a85c99;box-shadow:0 0 18px #e6a85c80}.ink-trail{position:fixed;top:0;left:0;border-radius:50%;background:var(--primary);pointer-events:none;z-index:9998;mix-blend-mode:screen}@keyframes draw-in{0%{stroke-dashoffset:var(--len, 220);opacity:0}20%{opacity:1}to{stroke-dashoffset:0;opacity:1}}.signature-path{stroke-dasharray:var(--len, 220);stroke-dashoffset:var(--len, 220);animation:draw-in 1.4s .4s cubic-bezier(.65,0,.35,1) forwards}.coffee-ring{position:absolute;width:56px;height:56px;border-radius:50%;background:radial-gradient(circle,transparent 56%,rgba(140,80,30,.32) 60%,rgba(140,80,30,.18) 70%,transparent 80%);pointer-events:none;opacity:.55;filter:blur(.5px);transform:rotate(8deg);z-index:1}.page-curl{position:absolute;bottom:0;right:0;width:28px;height:28px;background:linear-gradient(135deg,transparent 0%,transparent 49%,rgba(73,51,218,.45) 50%,var(--surface-card) 56%,#110931 100%);box-shadow:-3px -3px 6px #00000073;pointer-events:none;transition:width .22s ease,height .22s ease;z-index:2}.lift-hover:hover .page-curl{width:48px;height:48px}.peek-secret{position:absolute;bottom:6px;right:10px;font-size:11px;color:var(--warm);opacity:0;transform:translateY(8px);transition:opacity .24s ease,transform .24s ease;pointer-events:none;z-index:1;text-shadow:0 0 6px rgba(230,168,92,.4)}.lift-hover:hover .peek-secret{opacity:.9;transform:translateY(0)}.lift-hover:hover{border-color:var(--primary);box-shadow:0 1px #ffffff0f inset,0 28px 40px -16px #000000d9,0 0 50px -8px var(--glow)}.tape-clickable{cursor:pointer;-webkit-tap-highlight-color:transparent}@media(pointer:coarse){.tape-clickable:after{content:"";position:absolute;top:-10px;right:-8px;bottom:-2px;left:-8px}}@keyframes tape-rip-1{0%{transform:translate(-50%) rotate(-4deg)}18%{transform:translate(-50%) rotate(-14deg) translateY(-4px)}to{transform:translate(-50%,-130vh) rotate(-30deg);opacity:0}}@keyframes tape-rip-2{0%{transform:rotate(-8deg)}18%{transform:rotate(-18deg) translateY(-4px)}to{transform:translate(-40px,-130vh) rotate(-46deg);opacity:0}}@keyframes tape-rip-3{0%{transform:rotate(7deg)}18%{transform:rotate(17deg) translateY(-4px)}to{transform:translate(50px,-130vh) rotate(38deg);opacity:0}}.tape-1.ripped{animation:tape-rip-1 1.1s cubic-bezier(.22,.7,.3,1) forwards}.tape-2.ripped{animation:tape-rip-2 1.1s cubic-bezier(.22,.7,.3,1) forwards}.tape-3.ripped{animation:tape-rip-3 1.1s cubic-bezier(.22,.7,.3,1) forwards}@keyframes tape-place-1{0%{transform:translate(-50%,-130vh) rotate(40deg);opacity:0}35%{opacity:1}80%{transform:translate(-50%) rotate(-9deg) translateY(-3px);opacity:1}to{transform:translate(-50%) rotate(-4deg);opacity:1}}@keyframes tape-place-2{0%{transform:translate(-60px,-130vh) rotate(40deg);opacity:0}35%{opacity:1}80%{transform:rotate(-14deg) translateY(-3px);opacity:1}to{transform:rotate(-8deg);opacity:1}}@keyframes tape-place-3{0%{transform:translate(60px,-130vh) rotate(-40deg);opacity:0}35%{opacity:1}80%{transform:rotate(13deg) translateY(-3px);opacity:1}to{transform:rotate(7deg);opacity:1}}.tape-1.placing{animation:tape-place-1 .85s cubic-bezier(.34,1.56,.64,1) forwards}.tape-2.placing{animation:tape-place-2 .85s cubic-bezier(.34,1.56,.64,1) forwards}.tape-3.placing{animation:tape-place-3 .85s cubic-bezier(.34,1.56,.64,1) forwards}.confetti-piece{position:fixed;top:-30px;font-family:JetBrains Mono,monospace;font-weight:700;pointer-events:none;z-index:9997;animation:confetti-fall var(--dur, 3s) linear forwards;text-shadow:0 0 8px var(--glow)}@keyframes confetti-fall{0%{transform:translateZ(0) rotate(0);opacity:0}10%{opacity:1}to{transform:translate3d(var(--tx, 0px),110vh,0) rotate(var(--rot, 720deg));opacity:.9}}.polaroid{position:absolute;width:116px;background:#f3eee0;padding:8px 8px 22px;z-index:5;box-shadow:0 1px #ffffff80 inset,0 22px 36px -16px #000000d9,0 0 24px -10px #0009;transform-origin:top right;transform:rotate(var(--polaroid-rot, 8deg));transition:transform .32s cubic-bezier(.22,.7,.3,1)}.polaroid:hover{transform:rotate(0) scale(1.06) translateY(4px)}.polaroid-photo{width:100%;aspect-ratio:1 / 1;background:radial-gradient(ellipse at 30% 30%,rgba(255,255,255,.16),transparent 60%),linear-gradient(135deg,#4933da,#1a114a 60%,#08061a);position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.polaroid-z{font-family:Fraunces,serif;font-weight:900;font-size:56px;line-height:1;color:#f0eff2eb;text-shadow:0 0 18px rgba(73,51,218,.5);transform:translateY(-2px)}.polaroid-corner{position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--warm);box-shadow:0 0 6px #e6a85c99}.polaroid-caption{font-family:Caveat,cursive;font-weight:600;text-align:center;font-size:16px;color:#1a114a;margin-top:6px}
