:root{--ink:#07050c;--paper:#f7edf4;--muted:#ac9bac;--pink:#ff397c;--gold:#ffd4af}*{box-sizing:border-box}html,body{background:var(--ink);width:100%;min-height:100%;margin:0;overflow:hidden}body{color:var(--paper);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}button,code{font:inherit}button{-webkit-tap-highlight-color:transparent}.experience-shell{isolation:isolate;background:radial-gradient(circle at 50% 42%,#5f0b3738,#0000 34%),#050309;width:100vw;height:100svh;position:relative;overflow:hidden}.experience-shell:before{z-index:2;pointer-events:none;content:"";background:linear-gradient(90deg,#0006,#0000 18% 82%,#0000006b),linear-gradient(#00000073,#0000 16% 76%,#00000080);position:absolute;inset:0}.experience-shell:after{z-index:3;pointer-events:none;content:"";opacity:.08;mix-blend-mode:soft-light;background-image:repeating-radial-gradient(circle at 30% 20%,#ffffff52 0 .5px,#0000 .6px 3px);background-size:7px 7px;position:absolute;inset:0}.heart-canvas{z-index:1;touch-action:none;width:100%;height:100%;position:absolute;inset:0}.topbar{z-index:5;pointer-events:none;justify-content:space-between;align-items:center;width:100%;padding:28px 36px;display:flex;position:absolute;top:0;left:0}.brand-lockup{color:#f9eef5;letter-spacing:.17em;align-items:center;gap:12px;font-size:11px;font-weight:700;display:flex}.brand-lockup small{color:#766a78;letter-spacing:.12em;margin-top:4px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px;font-weight:500;display:block}.brand-mark{width:34px;height:34px;color:var(--gold);border:1px solid #ffffff38;border-radius:50%;place-items:center;font-family:Georgia,serif;font-size:16px;font-style:italic;display:grid;box-shadow:inset 0 0 18px #ff397c1a}.coordinate-readout{color:#8d7f8f;letter-spacing:.14em;align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;display:flex}.live-dot{background:#ff4c86;border-radius:50%;width:5px;height:5px;animation:1.5s ease-in-out infinite blink;box-shadow:0 0 12px #ff4c86}.intro-copy{z-index:4;color:#ffffff29;letter-spacing:-.06em;pointer-events:none;flex-direction:column;font-size:clamp(34px,5.1vw,82px);font-weight:800;line-height:.84;display:flex;position:absolute;top:19%;left:4.5%}.intro-copy strong{color:#0000;-webkit-text-stroke:1px #ff62913b;margin-left:.9em;font-weight:800}.equation-card{z-index:5;pointer-events:none;border-top:1px solid #ffffff29;grid-template-columns:52px 1fr;gap:18px;width:min(650px,100vw - 300px);padding-top:17px;display:grid;position:absolute;bottom:36px;left:36px}.stage-number{color:var(--pink);letter-spacing:.08em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px}.eyebrow{color:#bcabb9;letter-spacing:.18em;margin:0 0 7px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8px}.equation-card h1{letter-spacing:.02em;margin:0;font-family:Georgia,Noto Serif SC,Songti SC,serif;font-size:clamp(19px,2vw,28px);font-weight:400}.formula-row{flex-wrap:wrap;gap:10px 22px;margin-top:12px;display:flex}.formula-row code{color:#8e808e;letter-spacing:.02em;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.stage-rail{z-index:5;pointer-events:none;flex-direction:column;gap:26px;margin:0;padding:0;list-style:none;display:flex;position:absolute;top:50%;right:35px;transform:translateY(-50%)}.stage-rail li{color:#554c57;grid-template-columns:1fr;justify-items:end;width:48px;transition:color .5s;display:grid;position:relative}.stage-rail li:not(:last-child):after{content:"";background:#ffffff17;width:1px;height:22px;position:absolute;top:24px;right:3px}.stage-rail span{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.stage-rail small{letter-spacing:.14em;margin-top:3px;font-size:8px}.stage-rail .active{color:#f9d7e3}.stage-rail .active:before{content:"";background:var(--pink);width:8px;height:8px;box-shadow:0 0 17px var(--pink);border-radius:50%;position:absolute;top:2px;right:-1px;transform:translate(18px)}.stage-rail .complete{color:#90717d}.final-quote{z-index:6;color:#ffeff3e6;letter-spacing:.08em;text-align:center;text-shadow:0 0 24px #ff3f7a47;pointer-events:none;max-width:900px;margin:0 auto;font-family:Georgia,Noto Serif SC,Songti SC,serif;font-size:clamp(13px,1.15vw,17px);font-weight:400;line-height:1.9;animation:1.8s cubic-bezier(.22,1,.36,1) .6s both quote-reveal;position:absolute;bottom:150px;left:210px;right:210px}.controls{z-index:7;gap:8px;display:flex;position:absolute;bottom:34px;right:35px}.netease-player{z-index:7;background:#ffffffeb;border:0;border-radius:5px;width:330px;height:52px;position:absolute;bottom:88px;right:35px;box-shadow:0 12px 35px #00000059}.controls button{color:#bcaeb9;cursor:pointer;letter-spacing:.08em;background:#0a070d94;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:9px;height:42px;padding:0 16px;font-size:10px;transition:border-color .18s,color .18s,transform .18s,background .18s;display:flex}.controls button:hover{color:#fff;border-color:#ff62917a;transform:translateY(-2px)}.controls button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.controls .music-control{min-width:88px}.controls .primary{color:#fff4f7;background:#ba144c47;border-color:#ff437e66;box-shadow:inset 0 0 22px #ff528914}.interaction-hint{z-index:5;color:#625863;letter-spacing:.16em;pointer-events:none;margin:0;font-size:8px;position:absolute;bottom:89px;right:34px}@keyframes blink{0%,to{opacity:.35}50%{opacity:1}}@keyframes quote-reveal{0%{opacity:0;filter:blur(8px);transform:translateY(18px)}to{opacity:1;filter:blur();transform:translateY(0)}}@media (width<=760px){.topbar{padding:20px}.coordinate-readout,.interaction-hint{display:none}.intro-copy{font-size:38px;top:14%;left:20px}.stage-rail{flex-direction:row;gap:15px;top:18%;right:20px;transform:none}.stage-rail li{justify-items:start;width:auto}.stage-rail li:not(:last-child):after,.stage-rail .active:before{display:none}.equation-card{grid-template-columns:30px 1fr;gap:10px;width:auto;bottom:84px;left:20px;right:20px}.music-on .equation-card{bottom:148px}.final-quote{letter-spacing:.045em;font-size:12px;line-height:1.75;bottom:215px;left:24px;right:24px}.music-on .final-quote{bottom:270px}.equation-card h1{font-size:18px}.formula-row{gap:5px;margin-top:9px;display:grid}.formula-row code{font-size:7.5px}.controls{justify-content:stretch;bottom:20px;left:20px;right:20px}.netease-player{width:calc(100% - 40px);bottom:78px;left:20px;right:20px}.controls button{flex:1;justify-content:center;padding:0 10px}}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}.controls button{transition:none}.final-quote{animation:none}}
