@import url('https://fonts.googleapis.com/css2?family=Baloo+2:wght@400;500;600;700;800&family=Lexend:wght@300;400;500;600;700&display=swap');
:root{--ink:#21172d;--plum:#34213f;--purple:#8d62a8;--lilac:#c5a1d8;--pink:#f4a9c5;--cream:#fff9f4;--muted:#a898ad;--line:#eadfea;--night:#21182c;--night2:#30203b;--font:'Lexend',sans-serif;--round:'Baloo 2',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{margin:0;color:var(--ink);font-family:var(--font);background:var(--cream);overflow-x:hidden}button,a{font:inherit}button{cursor:pointer}.sky{position:absolute;inset:0 0 auto;height:780px;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 78% 28%,#584063 0,transparent 37%),linear-gradient(120deg,#1d1526,#2a1c34 55%,#35223e)}.sky:after{content:"";position:absolute;left:-8%;right:-8%;height:130px;bottom:-92px;background:var(--cream);border-radius:50% 50% 0 0}.topbar{position:relative;z-index:2;height:76px;padding:0 max(calc((100% - 1160px)/2),6%);display:flex;align-items:center;justify-content:space-between;color:#fff}.brand{display:inline-flex;align-items:center;gap:10px;color:inherit;text-decoration:none;font:600 19px var(--round);letter-spacing:-.3px}.brand b{color:#f2b7d0}.brand-mark{display:grid;place-items:center;width:34px;height:34px;color:#f0c0d7;background:#ffffff14;border:1px solid #ffffff25;border-radius:12px}.topbar nav{display:flex;gap:36px;margin-left:auto;margin-right:34px}.topbar nav a{color:#d9cddf;text-decoration:none;font-size:12px;transition:color .2s}.topbar nav a:hover{color:#f8bdd4}.sound-toggle{width:36px;height:36px;border:1px solid #ffffff26;border-radius:50%;background:#ffffff0d;color:#efc2d7}.hero{height:700px;max-width:1160px;margin:auto;padding:104px 20px 0;position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;align-items:start;color:#fff}.hero-copy{padding-top:48px;animation:rise .8s both}.eyebrow{text-transform:uppercase;letter-spacing:1.9px;font-size:9px;font-weight:600;color:#ba9dc6;display:flex;align-items:center;gap:9px}.eyebrow-dot{width:6px;height:6px;border-radius:50%;background:var(--pink);box-shadow:0 0 12px #ffb5d3}.hero h1{font:700 clamp(52px,6vw,76px)/.98 var(--round);letter-spacing:-1.4px;margin:22px 0 19px}.hero h1 span,.section-heading h2 span{color:#efacce}.hero-text{color:#c8bacd;font-size:13px;line-height:1.9;max-width:440px}.hero-actions{display:flex;gap:12px;margin-top:28px}.button{border:0;border-radius:12px;padding:13px 19px;display:inline-flex;align-items:center;justify-content:center;gap:9px;text-decoration:none;font-size:11px;font-weight:600;transition:transform .22s,box-shadow .22s,background .22s}.button:hover{transform:translateY(-3px)}.button-primary{background:linear-gradient(135deg,#edabc6,#cb8fb8);color:#2d1c37;box-shadow:0 7px 22px #dc91b237}.button-primary:hover{box-shadow:0 10px 28px #dc91b257}.button-ghost{color:#e4d6e8;background:#ffffff0b;border:1px solid #ffffff2b}.button-ghost:hover{background:#ffffff16}.hero-note{font-size:10px;color:#9e8ca6;margin-top:25px}.tiny-heart{color:#f1a5c5;margin-right:5px}.hero-art{position:relative;height:455px;margin-top:2px;display:grid;place-items:center;animation:floatIn 1s .15s both}.art-orbit{position:absolute;width:390px;height:390px;border:1px solid #f5d5e722;border-radius:50%;animation:spin 26s linear infinite}.orbit-a:before,.orbit-b:after{content:"✦";color:#f0b5d0;position:absolute;left:20%;top:4%;font-size:15px}.orbit-b{width:320px;height:320px;border-color:#f5d5e712;animation-direction:reverse;animation-duration:34s}.orbit-b:after{left:auto;right:7%;top:70%;font-size:10px}.art-moon{position:absolute;right:90px;top:48px;font-size:155px;color:#f6c6dc;filter:drop-shadow(0 0 35px #eaa4ca65);transform:rotate(-17deg);animation:moonGlow 4s ease-in-out infinite}.bunny{z-index:1;position:relative;width:185px;height:280px;margin-top:95px;animation:bob 4s ease-in-out infinite;filter:drop-shadow(0 18px 20px #140f1d77)}.ear{position:absolute;z-index:0;top:0;width:51px;height:132px;background:#231a2d;border:2px solid #8b668d;border-radius:50% 50% 43% 43%;transform-origin:bottom center}.ear:after{content:"";position:absolute;inset:12px 12px 18px;background:linear-gradient(#493149,#30213c);border-radius:50%}.ear-left{left:33px;transform:rotate(-18deg)}.ear-right{right:33px;transform:rotate(18deg)}.bunny-head{position:absolute;top:83px;left:4px;width:177px;height:138px;background:linear-gradient(140deg,#f9edf1,#d8c0db);border-radius:48% 48% 45% 45%;box-shadow:inset -12px -10px 0 #b995c2}.hood-point{position:absolute;z-index:2;top:-12px;left:4px;width:164px;height:88px;background:#34233f;border-radius:60% 60% 35% 35%;clip-path:polygon(0 30%,12% 0,25% 15%,38% 0,50% 13%,62% 0,76% 17%,89% 0,100% 31%,92% 100%,7% 100%);border-bottom:2px solid #e5a9c7}.hood-skull{position:absolute;z-index:3;top:13px;left:75px;color:#f3c5d9;font-size:21px;text-shadow:0 0 10px #f3c5d955}.face{position:absolute;top:51px;left:0;width:100%;height:60px}.eye{position:absolute;top:12px;width:9px;height:13px;background:#34213f;border-radius:50%}.eye-left{left:53px}.eye-right{right:53px}.cheek{position:absolute;top:29px;width:15px;height:7px;background:#ef9bb9;border-radius:50%;opacity:.7}.cheek-left{left:32px}.cheek-right{right:32px}.mouth{position:absolute;left:84px;top:31px;width:9px;height:5px;border-bottom:2px solid #523851;border-radius:50%}.bunny-body{position:absolute;top:204px;left:30px;width:125px;height:91px;background:linear-gradient(150deg,#eddfeb,#bba0c7);border-radius:50% 50% 35% 35%;text-align:center;padding-top:23px;color:#784b78;font-size:25px;box-shadow:inset -10px -7px 0 #9e7eae}.art-caption{position:absolute;bottom:6px;left:0;right:0;text-align:center;color:#b79ebf;font-size:10px;letter-spacing:.4px}.art-star{position:absolute;color:#f5c4da;animation:twinkle 2s ease-in-out infinite}.star-a{top:77px;left:43px;font-size:21px}.star-b{bottom:96px;right:50px;font-size:17px;animation-delay:.8s}.star{position:absolute;color:#e7c7dc;opacity:.7;animation:twinkle 3s ease-in-out infinite}.s1{top:160px;left:13%;font-size:15px}.s2{top:280px;left:47%;font-size:22px;animation-delay:.8s}.s3{top:510px;right:12%;font-size:17px;animation-delay:1.2s}.s4{top:78px;right:27%;font-size:14px;animation-delay:.4s}.s5{top:610px;left:31%;font-size:11px;animation-delay:1.7s}.sparkle{position:absolute;color:#e2c2d6}.sp1{top:390px;left:8%;font-size:13px}.sp2{top:575px;right:37%;font-size:10px}.scroll-hint{position:absolute;bottom:33px;left:20px;display:flex;align-items:center;gap:10px;font-size:8px;letter-spacing:1.4px;text-transform:uppercase;color:#a28fa9}.scroll-hint span{height:26px;width:15px;border:1px solid #bba4bc;border-radius:20px;position:relative}.scroll-hint span:after{content:"";position:absolute;width:2px;height:5px;background:#e9b0cd;left:5px;top:5px;border-radius:3px;animation:scroll 1.5s infinite}.dashboard{position:relative;z-index:1;background:var(--cream);padding:64px max(calc((100% - 1080px)/2),6%) 90px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px}.section-heading .eyebrow{color:#9879a1}.section-heading h2{font:700 clamp(30px,4vw,43px)/1.12 var(--round);margin:12px 0 5px;letter-spacing:-.7px}.section-heading h2 span{color:#a66f9f}.section-heading p{margin:0;color:#958898;font-size:11px}.button-random{color:#fff;background:var(--plum);padding:13px 18px;box-shadow:0 8px 18px #34213f22}.button-random:hover{background:#573a64}.progress-card{position:relative;margin-top:31px;padding:17px 20px;display:flex;align-items:center;gap:14px;border-radius:16px;background:linear-gradient(110deg,#f5eaf2,#f8eef3 65%,#f3e7ef);border:1px solid #efe0ec;overflow:hidden}.progress-icon{width:43px;height:43px;display:grid;place-items:center;flex:none;background:#fff;border-radius:13px;color:#9a6592;box-shadow:0 3px 10px #84648c10}.progress-copy{display:flex;flex-direction:column;gap:4px}.progress-copy strong{font:700 16px var(--round)}.progress-copy span{font-size:10px;color:#938292}.progress-count{margin-left:auto;display:flex;align-items:baseline;gap:6px}.progress-count b{font:700 27px var(--round);color:#91628f}.progress-count span{font-size:9px;color:#927f91}.progress-track{position:absolute;bottom:0;left:0;right:0;height:3px;background:#e9d8e6}.progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#cf90b5,#936aa9);transition:width .6s cubic-bezier(.2,.8,.2,1)}.filters{display:flex;align-items:center;gap:8px;margin:31px 0 21px;flex-wrap:wrap}.filter{display:inline-flex;align-items:center;gap:6px;border:1px solid transparent;background:transparent;padding:9px 13px;border-radius:10px;color:#8c7d8e;font-size:10px;transition:.2s}.filter:hover{background:#f2eaf1;color:#5a3d61}.filter.active{background:#ede2ee;color:#664873;font-weight:600}.filter span{font-size:9px;opacity:.65}.search{margin-left:auto;position:relative;display:flex;align-items:center;gap:8px;border:1px solid #eadfea;background:#fff;border-radius:10px;padding:0 11px;color:#a48ea5;height:36px}.search input{border:0;outline:0;background:transparent;font:10px var(--font);width:170px;color:#433349}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.story-card{background:#fff;border:1px solid #eee5ed;border-radius:17px;overflow:hidden;transition:transform .28s,box-shadow .28s,border-color .28s;animation:cardIn .5s both}.story-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px #49344b14;border-color:#e5d5e7}.card-cover{height:144px;display:grid;place-items:center;position:relative;overflow:hidden;background:linear-gradient(145deg,#ead9ef,#f6dfea)}.card-cover:before,.card-cover:after{content:"";position:absolute;border-radius:50%;border:1px solid #fff6;width:170px;height:170px;left:-37px;top:-92px}.card-cover:after{width:230px;height:230px;left:auto;right:-82px;top:55px}.card-cover .cover-icon{position:relative;z-index:1;font-size:54px;color:#654773;filter:drop-shadow(0 7px 9px #43265735);transition:transform .35s}.story-card:hover .cover-icon{transform:scale(1.12) rotate(-5deg)}.cover-moon{background:linear-gradient(135deg,#e8dcf0,#d8c7e8)}.cover-sea{background:linear-gradient(135deg,#cce7e6,#e6f1ec)}.cover-forest{background:linear-gradient(135deg,#d5e6cc,#f1edda)}.cover-star{background:linear-gradient(135deg,#e5d7f3,#f5dfea)}.cover-cozy{background:linear-gradient(135deg,#f7dfcf,#f8e9dc)}.cover-sky{background:linear-gradient(135deg,#d4e4f7,#e8e0f4)}.cover-sea .cover-icon{color:#447f81}.cover-forest .cover-icon{color:#5b7756}.cover-cozy .cover-icon{color:#ad755e}.cover-sky .cover-icon{color:#6578a1}.card-read{position:absolute;right:12px;top:12px;background:#ffffffc9;color:#765385;padding:6px 9px;border-radius:9px;font-size:9px}.card-content{padding:15px 16px 16px}.card-meta{display:flex;justify-content:space-between;align-items:center;color:#9e8ba0;font-size:9px}.card-category{background:#f5edf4;color:#936a92;padding:5px 8px;border-radius:7px}.card-title{font:700 19px/1.15 var(--round);margin:10px 0 5px}.card-desc{height:34px;overflow:hidden;color:#96899a;font-size:10px;line-height:1.7;margin:0}.card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding-top:12px;border-top:1px solid #f2ecf1}.card-bottom span{font-size:9px;color:#9d8e9e}.read-link{border:0;background:none;color:#895f91;font-size:10px;font-weight:600;padding:4px;transition:color .2s}.read-link:hover{color:#d27fa5}.read-link i{margin-left:5px;font-size:9px}.empty-state{text-align:center;padding:55px 20px;color:#9a899b}.empty-state span{font-size:32px;display:block;color:#b78eb7}.empty-state strong{font:700 20px var(--round);color:#654773;display:block;margin-top:8px}.empty-state p{font-size:11px}.love-note{padding:54px 20px 58px;text-align:center;background:linear-gradient(130deg,#f2e7f1,#f8e9ed);color:#634b69}.note-stars{font-size:11px;color:#a27ba5;letter-spacing:4px}.note-heart{font-size:19px;color:#d98bac;margin:14px 0 8px;animation:heartbeat 2s infinite}.love-note p{font:600 22px/1.45 var(--round);margin:0 0 11px}.love-note>span{font-size:10px;color:#9d819c}.love-note .note-stars:last-child{margin-top:20px}footer{min-height:88px;background:#21182c;color:#bcaec3;display:flex;align-items:center;justify-content:space-between;padding:18px max(calc((100% - 1080px)/2),6%);gap:20px}footer .brand{font-size:15px;color:#ede1ef}footer .brand-mark{width:29px;height:29px}footer p{font-size:9px;color:#a596aa}footer p i{color:#d98bac;margin-left:4px}.footer-credit{font-size:8px;color:#8e7e94}.reader{position:fixed;inset:0;z-index:20;display:none;align-items:center;justify-content:center;padding:20px}.reader.open{display:flex}.reader-backdrop{position:absolute;inset:0;background:#1a1124c9;backdrop-filter:blur(7px);animation:fadeIn .25s}.reader-panel{position:relative;z-index:1;width:min(720px,100%);max-height:min(92vh,940px);overflow:auto;background:#fffaf7;border-radius:22px;padding:28px 54px 37px;box-shadow:0 25px 100px #120c1c77;animation:readerIn .35s both;scrollbar-color:#d3bbd4 transparent}.reader-close{position:absolute;right:18px;top:17px;border:0;background:#f3e8f0;color:#765b79;width:34px;height:34px;border-radius:50%}.reader-topline{display:flex;justify-content:space-between;color:#96749c;font-size:10px}.reader-illustration{height:145px;display:grid;place-items:center;color:#9471a0;font-size:75px;background:radial-gradient(ellipse,#eee0f1,transparent 68%)}.reader-panel h2{text-align:center;font:700 34px/1.1 var(--round);color:#35213f;margin:3px 0 3px}.reader-byline{text-align:center;color:#a18fa2;font-size:9px}.reader-byline span{color:#d98bac;margin-left:4px}.reader-content{max-width:535px;margin:26px auto;color:#514654;font:400 14px/2 var(--font)}.reader-content p{margin:0 0 17px}.reader-end{display:flex;align-items:center;justify-content:center;gap:17px;text-align:center;color:#9d7fa0}.reader-end>span{color:#c48db0}.reader-end p{font:500 15px/1.7 var(--round);margin:0}.reader-end b{color:#604269}.reader-done{display:flex;margin:22px auto 0}.toast{position:fixed;z-index:40;bottom:24px;left:50%;transform:translate(-50%,20px);display:flex;align-items:center;gap:9px;background:#33213e;color:#fff;padding:12px 17px;border-radius:12px;font-size:10px;box-shadow:0 10px 30px #21142e44;opacity:0;pointer-events:none;transition:.3s}.toast.show{opacity:1;transform:translate(-50%,0)}.toast i{color:#f0a9c7}@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes floatIn{from{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes bob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-9px) rotate(1deg)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes moonGlow{0%,100%{filter:drop-shadow(0 0 25px #eaa4ca45)}50%{filter:drop-shadow(0 0 42px #eaa4ca88)}}@keyframes twinkle{0%,100%{opacity:.45;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}@keyframes scroll{0%{transform:translateY(0);opacity:0}50%{opacity:1}100%{transform:translateY(9px);opacity:0}}@keyframes cardIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes heartbeat{0%,100%{transform:scale(1)}10%,30%{transform:scale(1.2)}20%,40%{transform:scale(1)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes readerIn{from{opacity:0;transform:translateY(18px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:780px){.topbar{padding:0 6%;height:66px}.topbar nav{gap:16px;margin-right:15px}.topbar nav a{font-size:10px}.hero{height:auto;min-height:790px;padding:67px 7% 75px;grid-template-columns:1fr;overflow:hidden}.hero-copy{padding-top:16px}.hero h1{font-size:58px}.hero-art{height:355px;margin-top:-12px}.art-orbit{width:290px;height:290px}.orbit-b{width:240px;height:240px}.art-moon{font-size:115px;right:calc(50% - 135px);top:10px}.bunny{transform:scale(.85);margin-top:60px}.bunny:hover{transform:scale(.87)}.art-caption{bottom:-7px}.scroll-hint{bottom:20px}.dashboard{padding:56px 6% 66px}.section-heading{align-items:start;flex-direction:column}.section-heading h2{font-size:34px}.button-random{align-self:flex-start}.story-grid{grid-template-columns:repeat(2,1fr);gap:12px}.card-cover{height:130px}.card-content{padding:13px}.card-title{font-size:17px}.filters{gap:5px}.filter{padding:8px 9px;font-size:9px}.search{order:2;width:100%;margin:5px 0 0}.search input{width:100%}.love-note p{font-size:19px}footer{padding:20px 6%;flex-wrap:wrap}footer p{order:3;width:100%;margin:0}.footer-credit{margin-left:auto}.reader-panel{padding:25px 24px 30px}.reader-content{font-size:13px}}
@media(max-width:460px){.topbar nav{gap:12px}.topbar nav a:nth-child(3){display:none}.hero{min-height:755px}.hero h1{font-size:52px}.hero-text{font-size:12px}.hero-actions{flex-wrap:wrap}.hero-actions .button{padding:12px 13px;font-size:10px}.story-grid{grid-template-columns:1fr}.card-cover{height:155px}.card-desc{height:auto;min-height:30px}.progress-card{padding:13px;gap:10px}.progress-copy strong{font-size:14px}.progress-copy span{max-width:205px;line-height:1.5}.progress-icon{width:37px;height:37px}.progress-count{gap:3px}.progress-count b{font-size:22px}.progress-count span{font-size:8px}.reader-panel h2{font-size:29px}.reader-illustration{height:115px}.reader{padding:10px}.reader-panel{max-height:96vh;padding:22px 20px 28px}.footer-credit{font-size:7px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Mary asked for a low-glare, full-night reading theme. */
:root{--cream:#17131d;--ink:#f0e8f3;--muted:#b9aabd;--line:#3d3047}
body{background:#17131d;color:#f0e8f3}
.sky{height:760px;background:radial-gradient(ellipse at 78% 28%,#584063 0,transparent 37%),linear-gradient(120deg,#17121f,#251a30 55%,#30203b)}
.sky:after{background:#17131d}
.hero{color:#fff}
.dashboard{background:#17131d;color:#f0e8f3}
.section-heading p,.progress-copy span,.card-desc,.card-bottom span,.empty-state p{color:#b5a7bb}
.section-heading .eyebrow{color:#c3a5cf}
.section-heading h2{color:#f2e9f4}
.section-heading h2 span{color:#e3a4c3}
.progress-card{background:linear-gradient(110deg,#2a2033,#302337 65%,#34243a);border-color:#493650}
.progress-icon{background:#3b2c43;color:#e2b1cf;box-shadow:none}
.progress-copy strong{color:#f2e8f3}
.progress-count b{color:#e9b1d0}
.progress-count span{color:#c2aec7}
.progress-track{background:#49344c}
.filter{color:#c2b2c8}
.filter:hover,.filter.active{background:#3b2b43;color:#f3c3dc}
.search{background:#211a29;border-color:#493950;color:#c9accd}
.search input{color:#f5edf6}
.search input::placeholder{color:#a697ad}
.story-card{background:#211a29;border-color:#3d3047}
.story-card:hover{box-shadow:0 14px 30px #07050b66;border-color:#72577e}
.card-cover{filter:saturate(.84) brightness(.85)}
.card-content{color:#f2e8f3}
.card-category{background:#3b2b43;color:#e0b5d2}
.card-meta{color:#b9a8be}
.card-title{color:#f4eaf4}
.card-bottom{border-color:#3a2d42}
.read-link{color:#e5add0}
.empty-state{color:#c2aec7}
.empty-state strong{color:#f0d8ec}
.love-note{background:linear-gradient(130deg,#251b30,#302033);color:#ead8ee;border-top:1px solid #3e2e46;border-bottom:1px solid #3e2e46}
.love-note>span{color:#c3a8c5}
footer{background:#120f18}
.reader-panel{background:#1e1825;color:#f3eaf4;border:1px solid #4a3952}
.reader-topline{color:#d2a8d0}
.reader-illustration{color:#d6a9d5;background:radial-gradient(ellipse,#37263f,transparent 68%)}
.reader-panel h2{color:#f5eaf5}
.reader-byline{color:#b8a6bd}
.reader-content{color:#e0d5e4}
.reader-end{color:#d0b5d1}
.reader-end b{color:#f0c0d8}
.reader-close{background:#392b43;color:#f1d9ec}
.art-caption{color:#dac7df}
.bunny>*{opacity:0!important}
.bunny:before{content:"";position:absolute;inset:17px -52px;z-index:4;border-radius:42%;background-color:#fa7fb5;background-image:url("assets/kuromi-official.png");background-position:center;background-repeat:no-repeat;background-size:cover;filter:drop-shadow(0 16px 18px #100b18aa);animation:bob 4s ease-in-out infinite}
.card-cover img{position:absolute;z-index:0;inset:0;width:100%;height:100%;object-fit:cover;opacity:.88}
.reader-illustration img{width:min(170px,55vw);height:135px;object-fit:contain;border-radius:15px;filter:drop-shadow(0 9px 15px #0b0710aa)}
.reader-source{max-width:535px;margin:-10px auto 25px;text-align:right;font-size:10px}
.reader-source a{color:#d6a9d5;text-decoration:none}
.reader-source a:hover{text-decoration:underline}
.reader-panel{width:min(900px,100%);padding:25px clamp(22px,7vw,68px) 38px;max-height:94vh;border-radius:26px;background:radial-gradient(ellipse at 50% 0,#33223d 0,transparent 38%),#1b1622;scroll-behavior:smooth}
.reader-progress-track{position:absolute;z-index:5;top:0;left:0;right:0;height:4px;overflow:hidden;border-radius:26px 26px 0 0;background:#49344e}
.reader-progress-track span{display:block;width:0;height:100%;background:linear-gradient(90deg,#aa7bc0,#f1a8c9);box-shadow:0 0 12px #e29ec9;transition:width .15s linear}
.reader-close{z-index:2;top:24px;right:26px;width:38px;height:38px;border:1px solid #ffffff18;background:#392a43;color:#f3d9ea;transition:transform .2s,background .2s}
.reader-close:hover{transform:rotate(90deg);background:#523852}
.reader-topline{align-items:center;min-height:66px;padding-right:50px;color:#c5a4cf}
.reader-brand{display:flex;align-items:center;gap:12px;color:#f5eaf5}
.reader-brand img{width:78px;height:56px;object-fit:cover;object-position:center;border-radius:16px;border:1px solid #f4a9c55c;box-shadow:0 0 24px #e6a7d226}
.reader-brand div{display:flex;flex-direction:column;gap:4px}
.reader-brand span{font:700 18px var(--round);letter-spacing:.1px}
.reader-brand small{color:#b59ab9;font-size:9px;letter-spacing:1.1px;text-transform:uppercase}
.reader-brand small i{margin-left:4px;color:#edb0d0}
.reader-time{font-size:10px;color:#c3adca}
.reader-heading{position:relative;max-width:700px;margin:28px auto 8px;padding:25px 26px 23px;text-align:center;border:1px solid #4a3752;border-radius:22px;background:linear-gradient(135deg,#2a2033,#241b2c 68%,#312034);box-shadow:inset 0 1px #ffffff08}
.reader-heading:before,.reader-heading:after{content:"✧";position:absolute;color:#e7a9cb;font-size:19px;top:18px;left:19px;opacity:.8}
.reader-heading:after{content:"☠";left:auto;right:19px;top:16px;font-size:15px;color:#c996c7}
.reader-category{display:inline-block;color:#e5abd0;background:#3c2a43;border:1px solid #ffffff0d;border-radius:999px;padding:6px 12px;font-size:9px;letter-spacing:.4px}
.reader-heading h2{font-size:clamp(27px,4vw,39px);line-height:1.13;letter-spacing:-.5px;margin:14px 20px 7px}
.reader-byline{font-size:10px;color:#c0aec5}
.reader-meta{display:flex;justify-content:center;align-items:center;gap:13px;flex-wrap:wrap;margin-top:15px;color:#baa6c0;font-size:9px}
.reader-meta>span{display:inline-flex;align-items:center;gap:5px}
.reader-meta i,.reader-meta-dot{color:#d59bc5}
.reader-progress-label{color:#f0bbd7!important;font-weight:600}
.reader-illustration{height:clamp(140px,22vh,220px);margin:6px auto 4px;max-width:700px;border-radius:20px;background:radial-gradient(ellipse,#3b2944 0,transparent 68%);color:#d6a9d5;font-size:63px}
.reader-illustration img{width:min(210px,52vw);height:165px;border-radius:18px;object-fit:cover;box-shadow:0 12px 32px #09060f77}
.reader-tools{max-width:690px;margin:0 auto 20px;padding:11px 0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #3b2b43;border-bottom:1px solid #3b2b43;color:#bfaac6;font-size:9px}
.reader-tools>span{display:flex;align-items:center;gap:7px;letter-spacing:.2px}
.reader-tools>span i{color:#d69fc9}
.reader-tools>div{display:flex;gap:6px}
.reader-tools button{min-width:34px;height:29px;border-radius:9px;border:1px solid #543d5c;background:#302437;color:#f1d3e7;font:600 11px var(--font);transition:.2s}
.reader-tools button:hover{background:#563a58;border-color:#a77aa9}
.reader-content{max-width:690px;margin:0 auto 23px;color:#e8dce9;font-size:16px;line-height:2.05;letter-spacing:.04px}
.reader-content p{margin:0 0 23px}
.reader-content p:first-child:first-letter{float:left;margin:3px 9px 0 0;font:700 48px/.8 var(--round);color:#e7a5c8}
.reader-source{max-width:690px;margin:0 auto 27px;padding-top:10px;border-top:1px solid #392b42}
.reader-end{max-width:690px;margin:30px auto 25px;padding:24px 15px;border:1px solid #4a3552;border-radius:18px;background:linear-gradient(120deg,#2b2035,#302033);gap:14px}
.reader-end p{font-size:17px}
.reader-actions{max-width:690px;margin:0 auto;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px}
.reader-nav{display:flex;align-items:center;justify-content:flex-start;gap:9px;min-height:43px;padding:9px 12px;border:1px solid #4a3852;border-radius:12px;background:#241c2c;color:#d9c6df;font-size:10px;transition:.2s}
.reader-nav.next{justify-content:flex-end}
.reader-nav:hover:not(:disabled){background:#392943;border-color:#8b6792;color:#f4c1dc;transform:translateY(-2px)}
.reader-nav:disabled{opacity:.35;cursor:not-allowed}
.reader-actions .reader-done{margin:0;white-space:nowrap;padding:13px 18px}
.reader-signoff{display:flex;justify-content:center;align-items:center;gap:8px;margin:22px auto 0;color:#b59bb9;font-size:9px;letter-spacing:.5px}
.reader-signoff i:first-child{color:#d8a2c8}
.reader-signoff i:last-child{color:#efb4ce}
.brand-mark{position:relative}
.card-category:before{content:"☠";display:inline-block;margin-right:5px;color:#e7a5c8;font-size:9px}
.reader-signoff img{width:48px;height:33px;object-fit:cover;object-position:center;border:1px solid #e8a2c65e;border-radius:10px}
@media(max-width:600px){.reader-panel{padding:19px 17px 28px;border-radius:20px;max-height:96vh}.reader-progress-track{border-radius:20px 20px 0 0}.reader-close{top:17px;right:16px;width:34px;height:34px}.reader-topline{padding-right:42px;min-height:55px}.reader-brand{gap:8px}.reader-brand img{width:57px;height:46px;border-radius:13px}.reader-brand span{font-size:15px}.reader-brand small{font-size:8px}.reader-time{font-size:8px}.reader-heading{margin:19px auto 5px;padding:23px 13px 19px}.reader-heading:before{top:11px;left:11px}.reader-heading:after{top:10px;right:12px}.reader-heading h2{margin:12px 9px 6px}.reader-meta{gap:8px;margin-top:12px}.reader-illustration{height:130px}.reader-tools{margin-bottom:16px}.reader-content{line-height:1.95;margin-bottom:18px}.reader-content p{margin-bottom:19px}.reader-content p:first-child:first-letter{font-size:42px}.reader-actions{grid-template-columns:1fr 1fr;gap:8px}.reader-actions .reader-done{grid-column:1 / -1;grid-row:1;width:100%}.reader-nav{grid-row:2}.reader-end{padding:19px 10px}}
.bunny:before{inset:-12px -55px;background-color:transparent;background-image:url("https://media1.giphy.com/media/l2FSi4zPU5dnLyd7Q4/giphy.gif");background-position:center;background-repeat:no-repeat;background-size:contain;border-radius:0;filter:drop-shadow(0 16px 18px #100b18aa)}
.reader-brand img{width:68px;height:64px;object-fit:contain;object-position:center;border:0;border-radius:0;background:transparent;box-shadow:none;filter:drop-shadow(0 4px 8px #0b071044)}
.reader-signoff img{width:48px;height:43px;object-fit:contain;object-position:center;border:0;border-radius:0;filter:drop-shadow(0 3px 7px #0b071044)}
@media(max-width:600px){.reader-brand img{width:52px;height:49px}}
.footer-credit a{color:#dfa8cf;text-decoration:none}
.footer-credit a:hover{color:#f3c2dc;text-decoration:underline}
@media(max-width:780px){.sky{height:820px}.sky:after{background:#17131d}}
::selection{background:#d78dbb;color:#21172d;text-shadow:none}
::-moz-selection{background:#d78dbb;color:#21172d;text-shadow:none}
html.is-loading{overflow:hidden}
html.is-loading body{overflow:hidden}
html.is-loading body>.sky,html.is-loading body>.topbar,html.is-loading body>main,html.is-loading body>footer{opacity:0;transform:translateY(20px) scale(.97);filter:blur(5px)}
html.site-reveal body>.sky,html.site-reveal body>.topbar,html.site-reveal body>main,html.site-reveal body>footer{animation:landingForm 1s cubic-bezier(.2,.75,.25,1) both}
.kuromi-loader{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;overflow:hidden;background:radial-gradient(ellipse at 50% 46%,#392541 0,#211729 45%,#15111b 100%);opacity:1;visibility:visible;transition:opacity .7s ease,visibility .7s ease}
.kuromi-loader:before{content:"";position:absolute;width:min(78vw,560px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#c27ca51c,transparent 67%);animation:loaderGlow 2s ease-in-out infinite alternate}
.kuromi-loader.leaving{opacity:0;visibility:hidden;pointer-events:none}
.loader-center{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:17px;color:#f4c8df;font:600 13px var(--round);letter-spacing:.4px;animation:loaderRise 1.1s cubic-bezier(.2,.8,.2,1) both}
.loader-center img{width:min(190px,48vw);height:min(190px,48vw);object-fit:contain;filter:drop-shadow(0 0 18px #ed9cc75c);animation:loaderKuromi 1.8s ease-in-out infinite}
.loader-dots{display:flex;gap:6px;margin-top:-9px}
.loader-dots i{width:5px;height:5px;border-radius:50%;background:#eda9cd;animation:loaderDot .8s ease-in-out infinite alternate}
.loader-dots i:nth-child(2){animation-delay:.18s}.loader-dots i:nth-child(3){animation-delay:.36s}
.loader-orbit{position:absolute;left:50%;top:50%;width:min(76vw,440px);aspect-ratio:1;border:1px solid #efb7d51b;border-radius:50%;transform:translate(-50%,-50%);animation:loaderSpin 18s linear infinite}
.loader-orbit:before{content:"✦";position:absolute;top:8%;left:20%;color:#f4b7d4;font-size:15px;text-shadow:0 0 16px #f4b7d4}
.loader-orbit.orbit-two{width:min(58vw,340px);border-color:#efb7d512;animation-direction:reverse;animation-duration:25s}
.loader-orbit.orbit-two:before{top:auto;left:auto;bottom:13%;right:9%;font-size:11px}
.loader-star{position:absolute;color:#f7c2dd;text-shadow:0 0 16px #f7c2dd8a;animation:loaderTwinkle 1.4s ease-in-out infinite alternate}
.loader-star-one{left:20%;top:29%;font-size:17px}.loader-star-two{right:22%;top:37%;font-size:22px;animation-delay:.35s}.loader-star-three{left:27%;bottom:25%;font-size:11px;animation-delay:.7s}
@keyframes loaderKuromi{0%,100%{transform:translateY(0) rotate(-3deg) scale(.98)}50%{transform:translateY(-9px) rotate(3deg) scale(1.04)}}
@keyframes loaderRise{from{opacity:0;transform:translateY(18px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes loaderGlow{from{transform:scale(.85);opacity:.55}to{transform:scale(1.12);opacity:1}}
@keyframes loaderSpin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes loaderDot{to{opacity:.35;transform:translateY(-5px)}}
@keyframes loaderTwinkle{to{opacity:.38;transform:scale(.65) rotate(25deg)}}
@keyframes landingForm{from{opacity:0;transform:translateY(20px) scale(.97);filter:blur(5px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.loader-center,.loader-center img,.loader-orbit,.loader-dots i,.loader-star,.kuromi-loader:before{animation-duration:.01ms!important;animation-iteration-count:1!important}}
