/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.grow{flex-grow:1}}:root{--ink:#06050c;--panel:#0d0917;--panel-raised:#141020;--text:#f8f3fb;--muted:#bcb3c7;--magenta:#f13bd8;--violet:#8d2cff;--cyan:#66e5ff;--line:#e1c5f42e}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--ink)}body{background:radial-gradient(circle at 80% 8%, #7019b329, transparent 28rem), var(--ink);min-width:320px;color:var(--text);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}.site-header{z-index:30;border:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#07050dd1;border-radius:18px;grid-template-columns:minmax(230px,1fr) auto minmax(190px,1fr);align-items:center;gap:28px;min-height:72px;padding:10px 14px 10px 24px;display:grid;position:fixed;top:16px;left:24px;right:24px;box-shadow:0 16px 60px #00000061}.wordmark{text-transform:uppercase;white-space:nowrap;align-items:baseline;gap:8px;width:fit-content;font-family:Georgia,Times New Roman,serif;display:flex}.wordmark-main{letter-spacing:.045em;color:#0000;filter:drop-shadow(0 0 13px #f453e04d);background:linear-gradient(110deg,#fff 5%,#e8b8eb 46%,#cf5de7 84%);-webkit-background-clip:text;background-clip:text;font-size:clamp(1.03rem,1.55vw,1.55rem)}.wordmark-tail{color:#9f94aa;letter-spacing:.16em;font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.62rem}.desktop-nav{color:#d8d0df;align-items:center;gap:clamp(20px,2.7vw,48px);font-size:.93rem;display:flex}.desktop-nav a,.mobile-menu a{transition:color .16s}.desktop-nav a:hover,.mobile-menu a:hover{color:#fff}.discord-button{background:linear-gradient(var(--panel), var(--panel)) padding-box, linear-gradient(110deg, var(--cyan), var(--violet), var(--magenta)) border-box;color:#a9f2ff;border:1px solid #0000;border-radius:13px;justify-content:center;justify-self:end;align-items:center;gap:10px;min-height:48px;padding:0 24px;font-weight:700;display:inline-flex;position:relative;box-shadow:0 0 24px #5bd9f714}.discord-button svg{fill:#8edfff;width:23px}.discord-spark{color:var(--magenta);opacity:0;position:absolute;top:-11px;right:-9px}.mobile-menu{display:none}.hero{isolation:isolate;border-bottom:1px solid var(--line);background:radial-gradient(circle at 68% 40%,#9f23ff3d,#0000 27rem),linear-gradient(90deg,#06050cf7 0%,#06050cd4 39%,#06050c1f 68%,#06050c5c 100%),#07050d;align-items:center;min-height:min(900px,100svh);padding:150px clamp(28px,5vw,86px) 100px;display:flex;position:relative;overflow:hidden}.hero:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(#0000,#06050ce6);height:150px;position:absolute;inset:auto 0 0}.hero-art{z-index:-2;opacity:.88;background-image:url(/api/media/hero);background-position:50%;background-size:cover;position:absolute;inset:0}.hero-copy{z-index:2;width:min(680px,52vw);position:relative}.hero .eyebrow{color:var(--hero-eyebrow,#ffe0ac);text-shadow:0 2px 16px #000000d9}.eyebrow{color:#d5c9dc;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:14px;margin:0 0 20px;font-size:.72rem;font-weight:800;display:flex}.adult-chip{color:#ff7eea;letter-spacing:.08em;background:#71166829;border:1px solid #f13bd880;border-radius:8px;align-items:center;min-height:29px;padding:0 10px;display:inline-flex}h1,h2,h3,p{text-wrap:pretty}h1{letter-spacing:-.06em;text-shadow:0 3px 30px #0009;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.4rem,6.6vw,7.1rem);font-weight:500;line-height:.88}h1 em{color:#0000;text-shadow:none;filter:drop-shadow(0 0 20px #e033d633);background:linear-gradient(90deg,#f46edc,#ee49dc 47%,#a55aff);-webkit-background-clip:text;background-clip:text;padding-bottom:.07em;font-style:normal;display:inline-block}.hero-title-full{color:#0000;background:linear-gradient(105deg, var(--hero-title-start,#fffdf8) 5%, var(--hero-title-end,#ffd79b) 100%);letter-spacing:-.065em;text-transform:uppercase;filter:drop-shadow(0 7px 26px #000000a8);-webkit-background-clip:text;background-clip:text;max-width:760px;font-size:clamp(3.5rem,7vw,7.6rem);line-height:.84}.hero-description{max-width:550px;color:var(--hero-body,#fff8eb);text-shadow:0 2px 18px #000000e6;margin:30px 0 0;font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.65}.multiline-text{white-space:pre-line}.hero-actions{flex-wrap:wrap;gap:18px;margin-top:34px;display:flex}.primary-button,.secondary-button{border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:59px;padding:0 27px;font-weight:800;transition:transform .18s,box-shadow .18s,background .18s;display:inline-flex}.primary-button{background:linear-gradient(110deg,#ef48cc,#7717dc);border:1px solid #ff69e8;box-shadow:0 0 26px #e937d457,inset 0 1px #ffffff4d}.secondary-button{background:#09071094;border:1px solid #ffffff8c}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px)}.primary-button:hover{box-shadow:0 0 38px #e937d47a,inset 0 1px #ffffff4d}.secondary-button:hover{background:#ffffff14}.platforms{flex-wrap:wrap;gap:10px;margin-top:28px;display:flex}.platforms a{border:1px solid var(--line);color:#d7cfdd;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0c0913ad;border-radius:10px;align-items:center;gap:9px;min-height:48px;padding:0 17px;font-size:.88rem;display:flex}.platforms a:hover{color:#fff;border-color:#f13bd880}.hero-sigil{z-index:3;aspect-ratio:1;background:#0c0714cc;border:1px solid #f13bd88c;place-items:center;width:62px;display:grid;position:absolute;bottom:26px;right:48%;transform:rotate(45deg);box-shadow:0 0 24px #f030da3b}.hero-sigil span{color:#ff75ed;transform:rotate(-45deg)}.mobile-download{display:none}.story-strip{background:radial-gradient(circle at 50% -12%,#8c2cff26,#0000 30rem),#080610;padding:90px clamp(24px,5vw,80px) 110px}.section-intro{max-width:1240px;margin:0 auto 34px}.section-intro .eyebrow{color:#ec68db}.section-intro h2{letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.2rem,4vw,4.3rem);font-weight:500}.story-cards{grid-template-columns:repeat(3,1fr);gap:16px;max-width:1240px;margin:0 auto;display:grid}.story-cards article{border:1px solid var(--line);background:linear-gradient(#120b1d1f,#0b0712f0);border-radius:22px;flex-direction:column;justify-content:flex-end;min-height:330px;padding:28px;display:flex;position:relative;overflow:hidden;box-shadow:inset 0 -90px 90px #050308a6}.card-glow{z-index:-1;opacity:.65;background-position:50%;background-size:cover;position:absolute;inset:0}.card-glow-one{background:radial-gradient(circle at 65% 25%,#9d39ed,#0000 18%),linear-gradient(135deg,#191026 20%,#552258 60%,#111127)}.card-glow-two{background:radial-gradient(circle at 25% 35%,#315ecc,#0000 20%),linear-gradient(135deg,#0d1427 10%,#33215c 55%,#3a173a)}.card-glow-three{background:radial-gradient(circle at 72% 24%,#e944c8,#0000 17%),linear-gradient(135deg,#28142c 10%,#4b183d 47%,#14152c)}.story-cards span{color:#ee72dc;letter-spacing:.16em;text-transform:uppercase;font-size:.68rem;font-weight:900}.story-cards h3{margin:8px 0;font-family:Georgia,Times New Roman,serif;font-size:2rem;font-weight:500}.story-cards p{color:#bfb6c9;max-width:310px;margin:0;font-size:.92rem;line-height:1.55}.support-preview{border-top:1px solid var(--line);background:#0b0812;justify-content:center;align-items:center;gap:32px;min-height:240px;padding:48px 24px;display:flex}.support-preview p{color:#d0c7d7;max-width:540px;font-size:1.08rem;line-height:1.6}.story-section,.characters-section,.routes-section,.gameplay-section,.gallery-section,.support-section,.community-section,.warning-section,.downloads-section,.comments-section{padding:110px clamp(24px,6vw,96px)}.story-section{border-bottom:1px solid var(--line);background:radial-gradient(circle at 14% 10%,#852ae429,#0000 26rem),#080610;grid-template-columns:minmax(0,.95fr) minmax(300px,.7fr);gap:clamp(48px,9vw,150px);display:grid}.section-kicker h2,.section-heading h2,.gameplay-copy h2,.support-feature h2,.warning-section h2,.downloads-heading h2,.comments-heading h2,.editor-section-heading h1,.editor-section-heading h2,.editor-access h1{letter-spacing:-.05em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.7rem,5vw,5.4rem);font-weight:500;line-height:.98}.story-copy{max-width:660px;color:var(--muted);align-self:end;font-size:1.02rem;line-height:1.8}.story-lead{color:#eee6f2;font-size:1.25rem;line-height:1.65}.story-signature{border-top:1px solid var(--line);gap:3px;margin-top:34px;padding-top:24px;display:grid}.story-signature span{color:#93889d;letter-spacing:.16em;text-transform:uppercase;font-size:.7rem;font-weight:800}.story-signature strong{color:#f3ebf6}.characters-section{background:linear-gradient(#0d0916,#08060f)}.section-heading{max-width:750px;margin-bottom:48px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading.centered .eyebrow{justify-content:center}.section-heading>p:last-child,.editor-section-heading>p:last-child{max-width:640px;color:var(--muted);margin:20px 0 0;font-size:1.03rem;line-height:1.7}.section-heading.centered>p:last-child{margin-left:auto;margin-right:auto}.character-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:1340px;margin:0 auto;display:grid}.character-card{border:1px solid var(--line);background:#100b19;border-radius:26px;grid-template-rows:minmax(280px,1fr) auto;min-height:570px;display:grid;overflow:hidden}.character-image{background:radial-gradient(circle at 50% 60%,#cc32e638,#0000 20rem),#0b0811;min-height:330px;position:relative;overflow:hidden}.character-image:after{content:"";background:linear-gradient(#0000,#100b19);height:50%;position:absolute;inset:auto 0 0}.character-image img{object-fit:cover;object-position:center 58%;width:100%;height:100%;transition:transform .5s;position:absolute;inset:0}.lily-card .character-image img{object-position:center bottom}.character-card:hover .character-image img{transform:scale(1.025)}.character-image span{z-index:2;color:#f0e9f4;letter-spacing:.14em;text-transform:uppercase;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#09060ea6;border:1px solid #ffffff38;border-radius:999px;padding:8px 12px;font-size:.68rem;font-weight:900;position:absolute;top:20px;left:20px}.character-copy{z-index:3;padding:8px 34px 36px;position:relative}.character-copy .eyebrow,.route-card .eyebrow{color:#e265da}.character-copy h3,.route-card h3{margin:0 0 15px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,3vw,3rem);font-weight:500}.character-copy>p:not(.eyebrow){color:#beb5c6;margin:11px 0 0;line-height:1.65}.celeste-card{box-shadow:-30px 30px 90px #5935c017}.lily-card{box-shadow:30px 30px 90px #e12ebc14}.routes-section{background:radial-gradient(circle at 85% 10%,#ee3ad01a,#0000 25rem),#07050d}.route-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.route-card{border:1px solid var(--line);background:linear-gradient(145deg,#120c1d,#0b0812);border-radius:22px;overflow:hidden}.route-image{aspect-ratio:1.45;background:#120b1b;overflow:hidden}.route-image img{object-fit:cover;width:100%;height:100%;transition:transform .5s}.route-card:hover .route-image img{transform:scale(1.04)}.route-card>div:last-child{padding:26px 26px 30px}.route-card>div:last-child>p:last-child{color:#bcb3c5;margin:0;font-size:.93rem;line-height:1.62}.gameplay-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:radial-gradient(circle at 18%,#6234d229,#0000 27rem),#0b0813;grid-template-columns:minmax(300px,.8fr) minmax(420px,1.2fr);align-items:center;gap:clamp(44px,8vw,120px);display:grid}.gameplay-copy p:not(.eyebrow){color:var(--muted);line-height:1.75}.gameplay-copy h2{margin-bottom:26px;font-size:clamp(2.7rem,4.5vw,4.8rem)}.gameplay-tags{flex-wrap:wrap;gap:9px;margin-top:26px;display:flex}.gameplay-tags span{border:1px solid var(--line);color:#ddd4e2;border-radius:999px;padding:9px 12px;font-size:.76rem}.gameplay-images{min-height:430px;position:relative}.gameplay-images img{aspect-ratio:16/9;object-fit:cover;border:1px solid #f13bd847;border-radius:18px;width:78%;position:absolute;box-shadow:0 30px 70px #00000073}.gameplay-images img:first-child{top:0;left:0;transform:rotate(-2deg)}.gameplay-images img:last-child{bottom:0;right:0;transform:rotate(2.5deg)}.gallery-section{background:#07050d}.gallery-carousel{max-width:1240px;margin:0 auto}.gallery-stage{position:relative}.gallery-track{scroll-behavior:smooth;scroll-snap-type:x mandatory;scrollbar-width:none;background:#100b19;border:1px solid #ef4cdd42;border-radius:24px;display:flex;overflow-x:auto;box-shadow:0 35px 90px #0006}.gallery-track::-webkit-scrollbar{display:none}.gallery-slide{aspect-ratio:16/9;scroll-snap-align:start;scroll-snap-stop:always;background:#08060e;flex:0 0 100%;margin:0;position:relative;overflow:hidden}.gallery-slide img{object-fit:contain;width:100%;height:100%;display:block}.gallery-slide figcaption{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#07050dc7;border:1px solid #ffffff29;border-radius:12px;justify-content:space-between;align-items:center;gap:18px;padding:13px 16px;display:flex;position:absolute;bottom:18px;left:20px;right:20px}.gallery-slide figcaption span{color:#f0ddec;letter-spacing:.14em;text-transform:uppercase;font-size:.7rem;font-weight:900}.gallery-slide figcaption strong{color:#f467df;font-family:Georgia,Times New Roman,serif;font-size:1.15rem}.gallery-arrow{z-index:4;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#08060ec7;border:1px solid #ffffff40;border-radius:15px;place-items:center;width:54px;height:66px;padding:0 0 5px;font:400 2.7rem/1 Georgia,serif;transition:transform .18s,border-color .18s,background .18s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.gallery-arrow:hover{background:#2e0c36e0;border-color:#f459dcb3;transform:translateY(-50%)scale(1.04)}.gallery-arrow-left{left:18px}.gallery-arrow-right{right:18px}.gallery-controls{color:#94899d;grid-template-columns:140px 1fr 180px;align-items:center;gap:18px;min-height:64px;font-size:.75rem;display:grid}.gallery-play{border:1px solid var(--line);color:#e8dfe9;cursor:pointer;min-height:39px;font:inherit;background:#ffffff09;border-radius:10px;justify-content:center;align-items:center;gap:9px;padding:0 14px;font-weight:800;display:inline-flex}.gallery-play span{color:#f060d9}.gallery-controls p{text-align:center;margin:0}.gallery-controls p strong{color:#f7f0f8;font-size:1rem}.gallery-controls>span{text-align:right}.gallery-thumbnails{scrollbar-color:#ef4cdd73 transparent;gap:8px;padding:5px 1px 12px;display:flex;overflow-x:auto}.gallery-thumbnails button{aspect-ratio:16/9;opacity:.5;cursor:pointer;background:#100b19;border:2px solid #0000;border-radius:9px;flex:0 0 122px;padding:0;transition:opacity .16s,border-color .16s,transform .16s;overflow:hidden}.gallery-thumbnails button:hover,.gallery-thumbnails button.active{opacity:1;border-color:#f064dc;transform:translateY(-2px)}.gallery-thumbnails img{object-fit:cover;width:100%;height:100%;display:block}.support-section{background:radial-gradient(circle at 20% 35%,#ff6c3f4f,#0000 29rem),radial-gradient(circle at 86% 15%,#ffb25929,#0000 24rem),linear-gradient(135deg,#521510,#260b0a 58%,#16090a);border-top:1px solid #ffa57f59;border-bottom:1px solid #ffa57f3d;padding-top:140px;padding-bottom:140px;display:block}.support-feature{max-width:1400px;margin-left:auto;margin-right:auto}.support-intro{grid-template-columns:minmax(420px,1.15fr) minmax(320px,.65fr);align-items:end;gap:clamp(40px,8vw,120px);display:grid}.support-feature h2{color:#fff8f1;text-shadow:0 4px 35px #3f05028c;max-width:850px}.support-feature .eyebrow{color:#ffc2a8}.support-intro>p{color:#f4d1c2;max-width:650px;margin:0;font-size:1.05rem;line-height:1.75}.patreon-gif-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:52px;display:grid}.patreon-gif-grid figure{background:#210706;border:1px solid #ffc2a34d;border-radius:14px;margin:0;position:relative;overflow:hidden;box-shadow:0 16px 38px #24020247}.patreon-gif-grid img,.patreon-gif-grid video{aspect-ratio:16/9;object-fit:cover;background:#210706;width:100%;display:block}.patreon-gif-grid figcaption{color:#fff1e9;letter-spacing:.11em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#210706c7;border:1px solid #ffffff2e;border-radius:999px;padding:9px 13px;font-size:.68rem;font-weight:850;position:absolute;bottom:14px;right:14px}.patreon-perks{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:38px;display:grid}.patreon-perks article{background:#2c080885;border:1px solid #ffc2a340;border-radius:15px;align-content:start;display:grid;overflow:hidden}.patreon-perks img{aspect-ratio:2;object-fit:cover;width:100%;display:block}.patreon-perks strong,.patreon-perks span{margin-left:16px;margin-right:16px}.patreon-perks strong{color:#fff7f2;margin-top:17px}.patreon-perks span{color:#dcae9c;margin-top:7px;margin-bottom:18px;font-size:.78rem;line-height:1.5}.support-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:42px;display:flex}.support-section .primary-button{background:linear-gradient(110deg,#ff643f,#dc3d28);border-color:#ffb18f;box-shadow:0 0 30px #ff59384f,inset 0 1px #ffffff59}.support-section .patreon-join-button{border-radius:16px;min-width:min(100%,360px);min-height:76px;padding-left:38px;padding-right:38px;font-size:1.08rem;box-shadow:0 0 42px #ff593861,inset 0 1px #fff6}.kofi-card{background:#ffe1ca17;border:1px solid #ffdac252;border-radius:18px;justify-content:space-between;align-items:center;gap:32px;margin-top:48px;padding:24px 28px;display:flex;box-shadow:inset 0 1px #ffffff14}.kofi-card strong{color:#fff2e8;font-size:1rem}.kofi-card p{color:#e5bba9;margin:7px 0 0;font-size:.88rem;line-height:1.55}.kofi-card>a{color:#ffe4d0;background:#ffffff14;border:1px solid #ffd3b773;border-radius:11px;flex:none;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:0 18px;font-size:.82rem;font-weight:850;display:inline-flex}.community-section{border-bottom:1px solid var(--line);background:radial-gradient(circle at 82% 10%,#515cd624,#0000 28rem),#0a0811;padding-top:82px;padding-bottom:82px}.community-heading{text-align:center;max-width:700px;margin:0 auto 38px}.community-heading .eyebrow{justify-content:center}.community-heading h2{letter-spacing:-.05em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.35rem,4vw,3.9rem);font-weight:500;line-height:.98}.community-heading>p:last-child{color:var(--muted);margin:18px auto 0;line-height:1.7}.community-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;max-width:1120px;margin:0 auto;display:grid}.community-grid article{border:1px solid var(--line);background:#ffffff06;border-radius:20px;grid-template-columns:54px 1fr;align-content:start;gap:0 18px;min-height:255px;padding:30px;display:grid}.community-grid h3{margin:2px 0 9px;font-family:Georgia,Times New Roman,serif;font-size:1.65rem;font-weight:500}.community-grid p{color:var(--muted);margin:0;font-size:.9rem;line-height:1.6}.community-card-icon,.discord-community-card>svg{color:#ef6adc;background:#dc3bc41a;border:1px solid #ec55d247;border-radius:13px;place-items:center;width:48px;height:48px;display:grid}.discord-community-card>svg{fill:#8be6ff;padding:10px}.community-card-actions,.discord-community-card>a{grid-column:2;align-self:end;margin-top:28px}.community-card-actions{flex-wrap:wrap;gap:11px;display:flex}.community-card-actions a,.discord-community-card>a{color:#f4c8ed;background:#891f851f;border:1px solid #ef5bd757;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:43px;padding:0 15px;font-size:.77rem;font-weight:850;display:inline-flex}.community-card-actions a+a{border-color:var(--line);color:#bdb3c3;background:0 0}.discord-community-card>a{color:#bfeeff;background:#2e8eb91a;border-color:#6bd1ff52;justify-self:start}.warning-section{background:linear-gradient(125deg,#6b114c3d,#0000 55%),#120810;border-top:1px solid #ff62d733;border-bottom:1px solid #ff62d733;grid-template-columns:minmax(300px,.9fr) minmax(300px,.65fr);gap:clamp(50px,9vw,150px);display:grid}.warning-section h2{font-size:clamp(2.3rem,4.2vw,4.4rem)}.warning-section>div:last-child{align-self:end}.warning-section>div:last-child p{color:#d0bdca;line-height:1.75}.warning-section a{color:#ff8adf;gap:10px;margin-top:18px;font-weight:800;display:inline-flex}.asset-disclosure{background:#ffffff06;border:1px solid #ff8adf3b;border-radius:14px;margin-top:24px;padding:20px}.asset-disclosure strong{color:#f5dbea;letter-spacing:.13em;text-transform:uppercase;font-size:.76rem}.asset-disclosure p{margin-bottom:0;font-size:.9rem}.downloads-section{background:radial-gradient(circle at 50% 20%,#7b2bf12b,#0000 33rem),#07050d}.downloads-heading{justify-content:space-between;align-items:flex-end;gap:36px;max-width:1300px;margin:0 auto 45px;display:flex}.downloads-heading>div>p:last-child{color:var(--muted)}.version-orb{aspect-ratio:1;color:#ff83e7;background:radial-gradient(circle,#c92fdb2b,#0000 70%);border:1px solid #f13bd880;border-radius:50%;flex:none;place-items:center;width:100px;font-family:Georgia,Times New Roman,serif;font-size:1.35rem;display:grid;box-shadow:0 0 45px #ea30d321}.download-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:1300px;margin:0 auto;display:grid}.download-card{border:1px solid var(--line);background:linear-gradient(145deg,#110c1c,#0b0812);border-radius:17px;grid-template-columns:50px 1fr auto;align-items:center;gap:14px;min-height:118px;padding:20px;transition:transform .18s,border-color .18s;display:grid}.download-card:hover{border-color:#f13bd87a;transform:translateY(-3px)}.platform-icon{border:1px solid var(--line);color:#e68bdb;background:#ffffff08;border-radius:13px;place-items:center;width:46px;height:46px;font-size:1.25rem;display:grid}.download-card>span:nth-child(2){gap:5px;display:grid}.download-card small{color:#93899d}.download-card strong{font-size:1.08rem}.download-card b{color:#a89eae;font-size:1.2rem}.release-note{color:#8d8395;max-width:1300px;margin:28px auto 0;font-size:.82rem}.comments-section{border-top:1px solid var(--line);background:radial-gradient(circle at 15% 20%,#6324d521,#0000 25rem),#0b0813}.comments-heading{grid-template-columns:1fr auto;align-items:end;gap:40px;max-width:1260px;margin:0 auto 42px;display:grid}.comments-heading>div:first-child>p:last-child{color:var(--muted)}.rating-summary{justify-items:end;min-width:150px;display:grid}.rating-summary strong{font-family:Georgia,Times New Roman,serif;font-size:3rem;font-weight:500}.rating-summary span{color:#ef58d7;letter-spacing:.08em}.rating-summary small{color:#8e8597;margin-top:5px}.comments-layout{grid-template-columns:minmax(280px,.75fr) minmax(330px,1.25fr);gap:24px;max-width:1260px;margin:0 auto;display:grid}.comment-form{border:1px solid var(--line);background:#100c19;border-radius:20px;gap:18px;height:fit-content;padding:26px;display:grid}.comment-form label,.comment-form fieldset{color:#d8cedd;border:0;gap:8px;margin:0;padding:0;font-size:.82rem;font-weight:750;display:grid}.comment-form input,.comment-form textarea{border:1px solid var(--line);color:#f5eef8;width:100%;font:inherit;background:#09070f;border-radius:11px;outline:0}.comment-form input{min-height:48px;padding:0 14px}.comment-form textarea{resize:vertical;min-height:120px;padding:14px;line-height:1.5}.comment-form input:focus,.comment-form textarea:focus{border-color:#f13bd8a6;box-shadow:0 0 0 3px #f13bd817}.star-picker{gap:3px;display:flex}.star-picker button{color:#453e4c;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:1.7rem}.star-picker button.selected{color:#ed53d5;text-shadow:0 0 12px #ee41d557}.comment-form .primary-button{color:#fff;cursor:pointer;border:1px solid #ff69e8;width:fit-content}.honeypot{opacity:0;left:-9999px;position:absolute!important}.form-status{color:#a99fae;min-height:20px;margin:-7px 0 0;font-size:.8rem}.comment-list{gap:12px;max-height:650px;padding-right:6px;display:grid;overflow-y:auto}.comment-card,.empty-comments{border:1px solid var(--line);background:#ffffff06;border-radius:17px;margin:0;padding:22px}.comment-card>div{justify-content:space-between;align-items:center;gap:18px;display:flex}.comment-card>div span{color:#ec55d4;letter-spacing:.05em}.comment-card>div i{color:#3c3543;font-style:normal}.comment-card p{color:#cdc3d2;white-space:pre-wrap;line-height:1.6}.comment-card time{color:#7f7589;font-size:.75rem}.empty-comments{color:#978da0}footer{border-top:1px solid var(--line);background:#06040a;grid-template-columns:1fr auto;align-items:end;gap:25px;min-height:280px;padding:70px clamp(24px,6vw,96px) 45px;display:grid}footer>p{color:#8f8497;margin:0}footer nav{grid-area:1/2/span 2;grid-template-columns:repeat(2,auto);align-self:center;gap:12px 36px;display:grid}footer nav a{color:#c9bece}footer nav a:hover{color:#fff}footer>small{border-top:1px solid var(--line);color:#6e6575;grid-column:1/-1;padding-top:28px}.editor-shell{background:radial-gradient(circle at 80% 10%,#a92de721,#0000 30rem),#080610;min-height:100vh;padding:28px clamp(16px,4vw,64px) 80px}.editor-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;max-width:1400px;margin:0 auto 70px;padding:14px 0 22px;display:flex}.editor-header>div{color:#a99eaf;align-items:center;gap:18px;font-size:.82rem;display:flex}.editor-header>div a{color:#ff7ce6}.editor-section{max-width:1400px;margin:0 auto 100px}.editor-section-heading{max-width:800px;margin-bottom:34px}.editor-section-heading h1,.editor-section-heading h2{font-size:clamp(2.5rem,4vw,4.6rem)}.content-editor{gap:12px;display:grid}.content-editor details{border:1px solid var(--line);background:#100c19;border-radius:16px;overflow:hidden}.content-editor summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:0 22px;font-size:.95rem;font-weight:850;display:flex}.content-editor summary small{color:#796e80;font-size:.7rem;font-weight:750}.content-field-grid{border-top:1px solid var(--line);background:#ffffff03;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:24px;display:grid}.content-field-grid label{color:#d8cfdd;align-content:start;gap:8px;font-size:.76rem;font-weight:800;display:grid}.content-field-grid label.wide-field{grid-column:1/-1}.content-field-grid input,.content-field-grid textarea{color:#f2edf4;width:100%;font:inherit;background:#09070e;border:1px solid #33293a;border-radius:10px;outline:none;font-weight:500}.content-field-grid input{min-height:45px;padding:0 13px}.content-field-grid textarea{resize:vertical;min-height:112px;padding:12px 13px;line-height:1.55}.content-field-grid input:focus,.content-field-grid textarea:focus{border-color:#f152dcb3;box-shadow:0 0 0 3px #ca30b51c}.content-field-grid label>small{color:#817688;font-size:.69rem;font-weight:500;line-height:1.5}.color-control{align-items:center;gap:12px;min-height:48px;display:flex}.color-control input{cursor:pointer;width:54px;min-height:42px;padding:4px}.color-control code{color:#b9aebe}.content-save-bar{z-index:8;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0e0a16f0;border:1px solid #f24bda52;border-radius:16px;grid-template-columns:1fr auto auto;align-items:center;gap:12px;margin-top:8px;padding:16px;display:grid;position:sticky;bottom:16px;box-shadow:0 18px 55px #00000073}.content-save-bar>div{gap:4px;display:grid}.content-save-bar>div span{color:#be78b5;min-height:18px;font-size:.73rem}.content-save-bar button{border:1px solid var(--line);color:#eee7f1;cursor:pointer;min-height:46px;font:inherit;background:#ffffff09;border-radius:10px;padding:0 17px;font-size:.75rem;font-weight:850}.content-save-bar .primary-button{background:linear-gradient(110deg,#df4cce,#8d45e7);border-color:#ff69e8;box-shadow:0 0 25px #df4cce33}.content-save-bar button:disabled{cursor:wait;opacity:.58}.collection-editor-body{border-top:1px solid var(--line);background:#ffffff03;gap:24px;padding:24px;display:grid}.collection-toolbar{justify-content:space-between;align-items:center;gap:20px;display:flex}.collection-toolbar>div{gap:5px;display:grid}.collection-toolbar span,.collection-empty{color:#8f8497;font-size:.76rem}.collection-toolbar button{color:#fff;cursor:pointer;min-height:42px;font:inherit;border:1px solid #ff69e8;border-radius:10px;padding:0 16px;font-size:.76rem;font-weight:850}.collection-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.collection-card{border:1px solid var(--line);background:#0c0912;border-radius:15px;grid-template-columns:150px 1fr;display:grid;overflow:hidden}.collection-card>img{object-fit:cover;background:#07050b;width:100%;height:100%;min-height:280px}.collection-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:18px;display:grid}.collection-fields label{color:#d8cfdd;align-content:start;gap:7px;font-size:.72rem;font-weight:800;display:grid}.collection-fields .wide-field{grid-column:1/-1}.collection-fields input,.collection-fields textarea{color:#f2edf4;width:100%;font:inherit;background:#07050b;border:1px solid #33293a;border-radius:9px;outline:none;font-weight:500}.collection-fields input{min-height:41px;padding:0 11px}.collection-fields textarea{resize:vertical;padding:10px 11px;line-height:1.5}.collection-fields input:focus,.collection-fields textarea:focus{border-color:#f152dcb3;box-shadow:0 0 0 3px #ca30b51c}.collection-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:8px;padding:0 18px 18px;display:flex}.collection-actions button{border:1px solid var(--line);color:#ff9ac7;cursor:pointer;min-height:40px;font:inherit;background:#ffffff09;border-radius:9px;padding:0 13px;font-size:.76rem;font-weight:800}.collection-actions small{color:#db72d0;font-size:.72rem}.media-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.media-editor-card{border:1px solid var(--line);background:#100c19;border-radius:18px;grid-template-columns:190px 1fr;display:grid;overflow:hidden}.media-editor-card>img{object-fit:cover;background:#08060d;width:100%;height:100%;min-height:210px}.media-editor-card>div{padding:22px}.media-editor-card h2{margin:0 0 9px;font-size:1.05rem}.media-editor-card p{color:#a99eaf;min-height:42px;margin:0;font-size:.8rem;line-height:1.55}.media-editor-card small{color:#db72d0;min-height:18px;margin-top:11px;display:block}.editor-actions{flex-wrap:wrap;gap:8px;margin-top:17px;display:flex}.upload-button,.editor-actions button,.admin-comment-list button{border:1px solid var(--line);color:#eee7f1;cursor:pointer;min-height:40px;font:inherit;background:#ffffff09;border-radius:9px;align-items:center;padding:0 13px;font-size:.76rem;font-weight:800;display:inline-flex}.upload-button{background:#861d9b2e;border-color:#f13bd870}.upload-button input{display:none}.admin-comment-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.admin-comment-list article{border:1px solid var(--line);background:#100c19;border-radius:15px;padding:20px}.admin-comment-list article>div{justify-content:space-between;display:flex}.admin-comment-list article>div span{color:#ec54d4}.admin-comment-list article p{color:#bcb1c3;line-height:1.5}.admin-comment-list button{color:#ff9ac7}.editor-access{border:1px solid var(--line);background:#100c19;border-radius:24px;max-width:760px;margin:15vh auto 0;padding:40px}.editor-access p:not(.eyebrow){color:var(--muted);line-height:1.7}.editor-access a{color:#ff7be4}@keyframes discord-bounce{0%,84%,to{transform:translateY(0)rotate(0)}87%{transform:translateY(-7px)rotate(-1.5deg)}90%{transform:translateY(0)rotate(1deg)}93%{transform:translateY(-3px)rotate(-.6deg)}96%{transform:translateY(0)rotate(0)}}@keyframes discord-spark{0%,84%,to{opacity:0;transform:scale(.6)rotate(0)}88%{opacity:1;transform:scale(1.15)rotate(24deg)}94%{opacity:0;transform:scale(.8)rotate(55deg)}}.discord-bounce{animation:7s ease-in-out infinite discord-bounce}.discord-bounce .discord-spark{animation:7s ease-in-out infinite discord-spark}@media (width<=1100px){.site-header{grid-template-columns:1fr auto auto}.desktop-nav{display:none}.mobile-menu{justify-self:end;display:block;position:relative}.mobile-menu summary{border:1px solid var(--line);cursor:pointer;background:#ffffff08;border-radius:12px;place-content:center;gap:5px;width:48px;height:48px;list-style:none;display:grid}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu summary span{background:#efe9f3;border-radius:3px;width:21px;height:2px}.mobile-menu nav{border:1px solid var(--line);background:#0a0710fa;border-radius:16px;width:min(260px,100vw - 32px);padding:10px;display:grid;position:absolute;top:58px;right:0;box-shadow:0 22px 50px #00000080}.mobile-menu nav a{border-radius:10px;padding:14px 15px}.mobile-menu nav a:hover{background:#ffffff0d}.route-grid{grid-template-columns:1fr}.route-card{grid-template-columns:minmax(280px,.8fr) 1fr;display:grid}.route-image{aspect-ratio:auto}.support-section{padding-top:115px;padding-bottom:115px}.support-intro{grid-template-columns:1fr;gap:26px}.patreon-gif-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.community-grid{grid-template-columns:1fr}.download-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.media-editor-grid{grid-template-columns:1fr}}@media (width<=760px){.site-header{border-radius:15px;grid-template-columns:minmax(0,1fr) auto;gap:10px;min-height:62px;padding:7px 8px 7px 15px;top:10px;left:10px;right:10px}.wordmark{gap:1px;display:grid}.wordmark-main{letter-spacing:.02em;text-overflow:ellipsis;font-size:clamp(.82rem,4.1vw,1.08rem);overflow:hidden}.wordmark-tail{font-size:.5rem}.site-header>.discord-button{display:none}.hero{background:linear-gradient(#06050c0f 5%,#06050c33 28%,#06050cf5 64%,#06050c 100%),#07050d;align-items:flex-end;min-height:100svh;padding:112px 20px 114px}.hero-art{opacity:.92;background-position:67% 0;height:67%}.hero-copy{width:100%}.eyebrow{margin-bottom:13px;font-size:.62rem}h1{font-size:clamp(2.9rem,13vw,4.7rem);line-height:.91}.hero-title-full{letter-spacing:-.072em;width:100%;max-width:100%;font-size:clamp(2.5rem,11.7vw,4.15rem);line-height:.88}.hero-description{max-width:35rem;margin-top:18px;font-size:.94rem;line-height:1.52}.hero-actions{grid-template-columns:1fr;gap:10px;margin-top:22px;display:grid}.primary-button,.secondary-button{min-height:54px}.platforms,.hero-sigil{display:none}.mobile-download{z-index:8;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#0a0710e0;border:1px solid #ffffff38;border-radius:13px;justify-content:space-between;align-items:center;min-height:54px;padding:0 21px;font-weight:850;display:flex;position:absolute;bottom:14px;left:14px;right:14px;box-shadow:0 12px 35px #00000061}.mobile-download:hover,.mobile-download:focus-visible{background:#4b116be6;border-color:#f13bd8a6;box-shadow:0 0 24px #e736d633}.story-strip{padding:65px 16px 75px}.story-cards{grid-template-columns:1fr}.story-cards article{min-height:260px}.support-preview{text-align:center;flex-direction:column;gap:18px}.support-preview .discord-button{justify-self:auto}.story-section,.characters-section,.routes-section,.gameplay-section,.gallery-section,.support-section,.community-section,.warning-section,.downloads-section,.comments-section{padding:72px 18px}.story-section,.gameplay-section,.support-section,.warning-section{grid-template-columns:1fr;gap:38px}.section-kicker h2,.section-heading h2,.gameplay-copy h2,.support-feature h2,.community-heading h2,.warning-section h2,.downloads-heading h2,.comments-heading h2{font-size:clamp(2.3rem,12vw,3.8rem)}.character-grid{grid-template-columns:1fr}.character-card{min-height:500px}.character-image{min-height:280px}.character-copy{padding:8px 24px 28px}.route-card{display:block}.route-image{aspect-ratio:1.4}.gameplay-images{min-height:330px}.gameplay-images img{width:84%}.gallery-track{border-radius:14px}.gallery-slide figcaption{padding:9px 11px;bottom:9px;left:9px;right:9px}.gallery-arrow{border-radius:11px;width:42px;height:52px;font-size:2.2rem}.gallery-arrow-left{left:8px}.gallery-arrow-right{right:8px}.gallery-controls{grid-template-columns:112px 1fr;gap:10px}.gallery-controls>span{display:none}.gallery-controls p{text-align:right}.gallery-thumbnails button{flex-basis:92px}.patreon-perks{grid-template-columns:1fr}.patreon-perks article{grid-template-rows:auto auto;grid-template-columns:120px 1fr}.patreon-perks img{aspect-ratio:auto;grid-row:1/span 2;height:100%;min-height:105px}.patreon-perks strong{align-self:end}.patreon-perks span{margin-bottom:16px}.patreon-gif-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.patreon-gif-grid figcaption{padding:6px 8px;font-size:.55rem;bottom:7px;right:7px}.kofi-card{flex-direction:column;align-items:flex-start;gap:18px;padding:21px}.kofi-card>a{width:100%}.community-grid article{grid-template-columns:44px 1fr;min-height:0;padding:23px 20px}.community-card-icon,.discord-community-card>svg{width:42px;height:42px}.community-card-actions,.discord-community-card>a{grid-column:1/-1}.content-field-grid{grid-template-columns:1fr;padding:18px}.content-field-grid label.wide-field{grid-column:1}.content-save-bar{grid-template-columns:1fr;position:static}.content-save-bar button{width:100%}.collection-toolbar{flex-direction:column;align-items:stretch}.collection-toolbar button{width:100%}.collection-card-grid{grid-template-columns:1fr}.collection-card{grid-template-columns:120px 1fr}.support-section .patreon-join-button{width:100%;min-width:0}.downloads-heading,.comments-heading{align-items:flex-start}.version-orb{width:76px}.download-grid{grid-template-columns:1fr}.comments-heading{grid-template-columns:1fr auto;gap:16px}.rating-summary{min-width:90px}.comments-layout{grid-template-columns:1fr}.comment-list{max-height:none}footer{grid-template-columns:1fr;align-items:start}footer nav{grid-area:auto/1;margin-top:18px}footer>small{grid-column:1}.editor-header{align-items:flex-start}.editor-header>div{justify-items:end;display:grid}.media-editor-card{grid-template-columns:1fr}.media-editor-card>img{height:230px;min-height:0}.admin-comment-list{grid-template-columns:1fr}}@media (width<=480px){.collection-card{grid-template-columns:1fr}.collection-card>img{height:190px;min-height:0}.collection-fields{grid-template-columns:1fr}.collection-fields .wide-field{grid-column:1}.comments-heading{grid-template-columns:1fr}.rating-summary{justify-items:start}.downloads-heading{display:grid}.version-orb{grid-row:1}.download-card{grid-template-columns:46px 1fr auto;padding:17px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
