*,*:before,*:after{box-sizing:border-box}body{margin:0;color:#2a2325;font-family:Nunito,system-ui,sans-serif;-webkit-font-smoothing:antialiased}button{font-family:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid var(--ink, #2A2325);outline-offset:2px;box-shadow:0 0 0 5px var(--page, #FFFFFF)}.tr{transition:background-color .7s ease,color .7s ease,border-color .7s ease,box-shadow .7s ease}.page{position:relative;overflow:hidden;min-height:100vh;min-height:100dvh;background:var(--page);color:var(--ink)}.home{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 24px 56px}.topbar{width:100%;padding:28px 64px}.logo{position:relative;width:340px;height:262px;flex-shrink:0}.logo-art svg{display:block;width:340px;height:262px}.egg{position:absolute;padding:0;border:none;background:transparent;border-radius:50%}.cherry-egg{left:233px;top:43px;width:44px;height:44px}.title{margin:4px 0 0;max-width:1120px;font-family:DynaPuff,Nunito,system-ui,sans-serif;font-weight:500;font-size:48px;line-height:1.12;letter-spacing:-.01em;color:var(--title)}.sub{margin:14px 0 0;max-width:560px;font-size:20px;line-height:1.5;color:var(--sub)}.aside{margin:6px 0 0;max-width:560px;font-size:16px;line-height:1.4;color:var(--aside)}.prompt{margin-top:28px;width:min(720px,100%);background:var(--box);border:1px solid var(--box-border);border-radius:24px;padding:20px 20px 16px;box-shadow:var(--shadow);text-align:left}.prompt:focus-within{border-color:var(--cta)}.prompt-input{display:block;width:100%;height:72px;border:none;outline:none;resize:none;background:transparent;font-family:inherit;font-size:20px;line-height:1.45;color:var(--input);padding:4px 6px}.prompt-input::placeholder{color:var(--ph);opacity:1}.prompt-row{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}.toggle{display:flex;gap:6px;padding:4px;background:var(--toggle-bg);border-radius:26px}.toggle-btn{min-height:44px;padding:6px 20px;border:none;border-radius:22px;background:transparent;color:var(--inactive-ink);font-size:15px;font-weight:500;line-height:1.25}.toggle-btn[aria-pressed=true]{background:var(--active-bg);color:var(--active-ink);font-weight:600}.cta{min-height:52px;padding:8px 28px;line-height:1.25;border:none;border-radius:26px;background:var(--cta);color:var(--cta-ink);font-size:16px;font-weight:600}.status{width:min(720px,100%)}.bubble{margin-top:16px;padding:14px 20px;background:var(--bubble-bg);border:1px solid var(--bubble-border);border-radius:20px;text-align:left;font-size:18px;line-height:1.45;color:var(--bubble-ink)}.chips{margin-top:20px;display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:720px}.chip{min-height:44px;padding:6px 18px;line-height:1.25;border:1px solid var(--chip-border);border-radius:22px;background:var(--chip-bg);color:var(--chip-ink);font-size:15px}.cta:disabled{cursor:progress;opacity:.85}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.loading{margin-top:16px;display:inline-flex;align-items:center;gap:12px;font-size:17px;color:var(--sub)}.dots{display:inline-flex;gap:6px}.dots i{width:8px;height:8px;border-radius:50%;background:var(--cta);animation:dot 1.2s ease-in-out infinite}.dots i:nth-child(2){animation-delay:.15s}.dots i:nth-child(3){animation-delay:.3s}@keyframes dot{0%,80%,to{transform:translateY(0);opacity:.45}40%{transform:translateY(-6px);opacity:1}}.results{list-style:none;margin:28px 0 0;padding:0;scroll-margin-top:24px;width:min(720px,100%);display:flex;flex-direction:column;gap:16px;text-align:left}.card{display:flex;gap:20px;padding:20px;background:var(--box);border:1px solid var(--box-border);border-radius:24px;box-shadow:var(--shadow)}.cover{flex-shrink:0;width:96px;height:144px;border-radius:10px;object-fit:cover;background:var(--toggle-bg);box-shadow:0 6px 16px #0000001f}.cover-empty{display:flex;align-items:center;justify-content:center;color:var(--inactive-ink);box-shadow:none}.card-body{min-width:0;overflow-wrap:break-word}.card-series{margin:2px 0 0;font-size:14px;color:var(--sub);font-style:italic}.card-title{margin:0;font-family:DynaPuff,Nunito,system-ui,sans-serif;font-weight:500;font-size:22px;line-height:1.2;color:var(--title)}.card-author{margin:4px 0 0;font-size:16px;color:var(--sub)}.mood{display:inline-block;max-width:100%;margin-top:10px;padding:4px 12px;line-height:1.35;border-radius:13px;background:var(--active-bg);color:var(--active-ink);font-size:13px;font-weight:600}.card-why{margin:12px 0 0;font-size:16px;line-height:1.55;color:var(--ink)}.sky{position:absolute;inset:0;overflow:hidden;pointer-events:none;transition:opacity 1.2s ease}.sky-gradient{position:absolute;inset:0;background:linear-gradient(180deg,#1a1446,#2d2166 38%,#4b2f86 70%,#7a4a9e)}.sky-horizon{position:absolute;inset:0;background:radial-gradient(ellipse 80% 40% at 50% 100%,#ffaa5a61,#ffaa5a00 70%)}.sky-cloud{position:absolute;border-radius:50%}.sky-cloud.c1{left:-80px;bottom:50px;width:460px;height:100px;background:#ffc4e038;filter:blur(24px)}.sky-cloud.c2{right:-60px;bottom:90px;width:520px;height:110px;background:#beaaff33;filter:blur(26px)}.sky-cloud.c3{left:calc(50% - 260px);bottom:-30px;width:520px;height:90px;background:#ffbe9638;filter:blur(24px)}.moon{position:absolute;top:64px;right:150px;width:84px;height:84px;border-radius:50%;background:radial-gradient(circle at 38% 36%,#fffbea,#fff0c2 55%,#f6dc9b);box-shadow:0 0 40px 14px #ffecaa59,0 0 120px 40px #ffecaa2e}.moon-egg{z-index:3;top:64px;right:150px;width:84px;height:84px}.star{position:absolute;border-radius:50%;opacity:.85}.sp{border-radius:0;clip-path:polygon(50% 0,60% 40%,100% 50%,60% 60%,50% 100%,40% 60%,0 50%,40% 40%)}.tw1{animation:tw1 3.2s ease-in-out infinite}.tw2{animation:tw2 4.4s ease-in-out infinite}.tw3{animation:tw3 5.6s ease-in-out infinite}@keyframes tw1{0%,to{opacity:.95}50%{opacity:.35}}@keyframes tw2{0%,to{opacity:1}50%{opacity:.55}}@keyframes tw3{0%,to{opacity:.75}50%{opacity:.2}}.shoot{position:absolute;top:15%;left:10%;width:150px;height:2px;border-radius:2px;background:linear-gradient(90deg,#fff0,#fff);opacity:0;animation:shoot 9s linear infinite 3s}@keyframes shoot{0%{transform:translate(0) rotate(28deg);opacity:0}2%{opacity:1}9%{transform:translate(300px,160px) rotate(28deg);opacity:0}to{transform:translate(300px,160px) rotate(28deg);opacity:0}}.secret{position:absolute;inset:0;z-index:2;overflow:hidden;background:#050304}.secret-bg svg{position:absolute;inset:0;display:block;width:100%;height:100%}.secret-content{position:relative;height:100%;padding:0 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:48px;text-align:center}.triangle{display:block;padding:0;border:none;background:none;border-radius:12px}.triangle svg{display:block;width:240px;height:220px;overflow:visible}.secret-heading{display:flex;flex-direction:column;align-items:center}.secret-title{margin:0;max-width:1100px;font-family:Permanent Marker,Nunito,system-ui,sans-serif;font-weight:400;font-size:58px;line-height:1.1;letter-spacing:.02em;text-transform:uppercase;color:#e0183a;filter:url(#scRough)}.secret-underline{display:block;margin-top:6px;width:min(820px,100%);height:36px}.twenty{position:fixed;inset:0;z-index:20;overflow:hidden;background:radial-gradient(ellipse 60% 50% at 50% 45%,#1a1326,#0b090d 70%);background-color:#0b090d;color:#f1e7eb;font-family:Nunito,system-ui,sans-serif;animation:fadein .6s ease both}.twenty a:focus-visible,.twenty button:focus-visible{outline:2px solid #A855F7;outline-offset:3px;box-shadow:none}.twenty-back{position:absolute;z-index:2;top:28px;left:40px;display:inline-flex;align-items:center;min-height:44px;font-size:15px;color:#b9a9b0;opacity:.7}.twenty-back:hover{color:#c084fc;opacity:1}.twenty-title{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:0 180px;text-align:center}.twenty-title h1{margin:0;max-width:900px;font-family:"Young Serif",Georgia,serif;font-weight:400;font-size:64px;line-height:1.12}.twenty-line{width:72px;height:3px;border-radius:2px;background:#a855f7;box-shadow:0 0 14px #a855f7b3}.twenty-title p{margin:0;max-width:620px;font-size:16px;line-height:1.5;color:#b9a9b0}.twenty-title .twenty-note{color:#c9b8f0}.twenty-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:clamp(36px,5vw,72px);padding:0 clamp(72px,9vw,160px)}.twenty-photo{flex-shrink:0;width:min(520px,40vw,64vh);height:min(520px,40vw,64vh);overflow:hidden;border-radius:24px;background:repeating-linear-gradient(135deg,#16121b 0px 14px,#1c1722 14px 28px);border:1px solid rgba(168,85,247,.28);box-shadow:0 0 40px #a855f71a}.twenty-photo img{display:block;width:100%;height:100%;object-fit:cover}.twenty-words{display:flex;flex-direction:column;align-items:flex-start;gap:18px;flex:0 1 440px;min-width:0;max-height:82vh}.twenty-words .twenty-text{max-width:none;font-size:clamp(24px,2.2vw,32px);min-height:0;overflow-y:auto}.twenty-num{font-family:"Young Serif",Georgia,serif;font-size:44px;line-height:1;color:#c084fc;text-shadow:0 0 18px rgba(168,85,247,.45)}.twenty-words .twenty-line{width:48px;margin-bottom:6px}.twenty-text{margin:0;max-width:400px;font-family:"Young Serif",Georgia,serif;font-size:32px;line-height:1.35}.nav{position:absolute;z-index:2;top:calc(50% - 28px);width:56px;height:56px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:50%;border:1px solid rgba(241,231,235,.22);background:#16121b;box-shadow:0 6px 20px #0006;opacity:.22;transition:opacity .25s ease,border-color .25s ease,background-color .25s ease}.nav:hover,.nav:focus-visible{opacity:1;border-color:#a855f799;background-color:#221a2e}.nav svg{display:block}.nav-prev{left:40px}.nav-next{right:40px}.np{position:absolute;z-index:2;left:calc(50% - 110px);bottom:32px;width:220px;height:52px;padding:6px 6px 6px 8px;display:flex;align-items:center;gap:10px;border-radius:999px;background:#16121bd9;border:1px solid rgba(168,85,247,.3);box-shadow:0 8px 24px #00000073}.np-art{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#f6c453,#e58fb4);background-size:cover;background-position:center}.np-text{flex-grow:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}.np-title{font-size:14px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.np-artist{font-size:12px;color:#b9a9b0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.np-eq{flex-shrink:0;height:16px;display:flex;align-items:flex-end;gap:3px}.eq{display:block;width:3px;height:16px;border-radius:2px;background:#a855f7;transform-origin:50% 100%;animation:eq 1s ease-in-out infinite}@keyframes eq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.pp{flex-shrink:0;width:40px;height:40px;padding:0;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:#7e3fd0;opacity:.85;transition:opacity .2s ease}.pp:hover,.pp:focus-visible{opacity:1}.pp{position:relative}.pp:after{content:"";position:absolute;inset:-2px;border-radius:50%}.pp svg{display:block}.slidein{animation:slidein .5s ease both}@keyframes slidein{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.flame{transform-box:fill-box;transform-origin:50% 100%;animation:flick 1.2s ease-in-out infinite alternate}@keyframes flick{0%{transform:scale(1)}to{transform:scale(.92,1.08)}}.cherry{animation:cherrydrop 1.1s cubic-bezier(.3,1.4,.5,1) both}@keyframes cherrydrop{0%{transform:translateY(-36px);opacity:0}to{transform:translateY(0);opacity:1}}.flameout{transform-box:fill-box;transform-origin:50% 100%;animation:flick .16s ease-in-out infinite alternate,blowout 8s linear infinite}@keyframes blowout{0%,38%{opacity:1}42%{opacity:.35}45%{opacity:.95}49%{opacity:.2}52%{opacity:.8}56%{opacity:.1}58%,92%{opacity:0}to{opacity:1}}.smoke{opacity:0;animation:smoke 8s ease-out infinite}@keyframes smoke{0%,56%{opacity:0;transform:translateY(0)}60%{opacity:.85;transform:translateY(-2px)}86%{opacity:0;transform:translateY(-16px)}to{opacity:0;transform:translateY(-16px)}}.nosmoke{display:none}.sht{animation:shtype 7s steps(1,end) infinite both}@keyframes shtype{0%{opacity:0}2%{opacity:1}80%{opacity:1}to{opacity:0}}.fadein{animation:fadein 1.4s ease both}@keyframes fadein{0%{opacity:0}to{opacity:1}}.drift{animation:drift 16s ease-in-out infinite alternate}@keyframes drift{0%{transform:translate(0)}to{transform:translate(-18px,10px)}}.pulse{animation:pulse 3.6s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.55}50%{opacity:.95}}.pop{animation:pop .5s cubic-bezier(.3,1.3,.5,1) both}@keyframes pop{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:640px){.home{padding:0 16px 28px}.topbar{padding:20px 4px 4px}.logo{width:236px;height:190px}.logo-art svg{width:236px;height:182px;margin-top:4px}.cherry-egg{left:155px;top:27px}.title{margin-top:8px;max-width:340px;font-size:32px;letter-spacing:normal}.sub{margin-top:10px;max-width:320px;font-size:16px}.aside{max-width:320px;font-size:14px}.prompt{margin-top:20px;width:100%;border-radius:22px;padding:16px}.prompt-input{height:84px;font-size:18px;padding:2px 4px}.prompt-row{display:block;margin-top:10px}.toggle{gap:4px}.toggle-btn{flex:1 1 0;padding:6px 8px;font-size:14px}.cta{margin-top:12px;width:100%}.status{width:100%}.bubble{margin-top:14px;padding:12px 16px;border-radius:18px;font-size:16px}.secret-content{gap:32px}.triangle svg{width:160px;height:147px}.secret-title{max-width:340px;font-size:34px}.secret-underline{width:300px;height:14px}.results{margin-top:24px;width:100%;gap:12px}.card{flex-direction:column;align-items:center;gap:14px;padding:20px 18px;border-radius:20px;text-align:center}.cover{width:96px;height:144px;border-radius:8px}.card-body{width:100%}.card-title{font-size:20px}.card-author,.card-why{font-size:15px}.chips{margin-top:16px;gap:8px}.chip{padding:6px 16px;font-size:14px}.star-extra{display:none}.shoot{top:12%;left:6%;width:110px}.sky-cloud.c1{left:-60px;bottom:40px;width:300px;height:80px;filter:blur(20px)}.sky-cloud.c2{right:-60px;bottom:120px;width:300px;height:90px;filter:blur(22px)}.sky-cloud.c3{display:none}.moon{top:84px;right:22px;width:52px;height:52px}.moon-egg{top:80px;right:18px;width:60px;height:60px}.twenty{background:radial-gradient(ellipse 80% 50% at 50% 40%,#1a1326,#0b090d 70%);background-color:#0b090d}.twenty-back{top:16px;left:16px;font-size:14px}.twenty-title{gap:22px;padding:0 28px 60px}.twenty-title h1{font-size:36px;line-height:1.15}.twenty-line{width:56px}.twenty-title p{font-size:14px}.twenty-slide{top:76px;bottom:100px;flex-direction:column;justify-content:flex-start;gap:24px;padding:0 24px}.twenty-photo{width:min(342px,100%);height:auto;aspect-ratio:1;border-radius:20px}.twenty-text{max-width:none;font-size:22px;line-height:1.4;text-align:center;overflow-y:auto}.twenty-words{align-items:center;gap:12px;width:100%;flex:0 1 auto;min-height:0;max-height:none}.twenty-words .twenty-text{font-size:22px}.twenty-num{font-size:32px}.twenty-words .twenty-line{width:40px;margin-bottom:4px}.nav{top:auto;bottom:32px;width:52px;height:52px}.nav-prev{left:24px}.nav-next{right:24px}.np{left:calc(50% - 106px);width:212px}}@media(prefers-reduced-motion:reduce){.flame,.flameout,.smoke,.cherry,.sht,.fadein,.drift,.pulse,.tw1,.tw2,.tw3,.shoot,.pop,.dots i,.slidein,.eq,.twenty{animation:none}.nav,.pp{transition:none}.shoot{display:none}.tr,.sky{transition:none}}
