/* Self-hosted, licensed fonts used only inside the onboarding funnel. */
@font-face{font-family:'Lorewish Funnel Roboto';src:url('/assets/funnel-detective-roboto-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Lorewish Funnel Roboto';src:url('/assets/funnel-detective-roboto-500.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:'Lorewish Funnel Roboto';src:url('/assets/funnel-detective-roboto-700.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:'Lorewish Funnel Marcellus';src:url('/assets/funnel-marcellus-400.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
.lf-page{--lf-sans:'Lorewish Funnel Roboto','Avenir Next','Segoe UI',sans-serif;--lf-serif:'Lorewish Funnel Marcellus','Iowan Old Style',serif;position:fixed;inset:0;z-index:80;overflow:auto;overscroll-behavior:contain;background:radial-gradient(ellipse at 15% 0,#361b2e66,transparent 40%),radial-gradient(ellipse at 95% 5%,#19244780,transparent 45%),#080b12;color:#f5f0eb;font:400 16px/1.5 var(--lf-sans)}.lf-header{position:relative;max-width:600px;margin:auto;height:82px;display:flex;align-items:center;justify-content:center;padding:0 24px}.lf-logo{font:36px/1 Georgia,serif;letter-spacing:-1.7px;color:inherit}.lf-back,.lf-exit{position:absolute;top:23px;left:20px;background:transparent;color:inherit;font-size:30px;line-height:1;border:0;padding:4px 10px}.lf-exit{left:auto;right:20px;font-size:25px;opacity:.65}.lf-back[hidden]{display:none}.lf-content{width:min(100% - 40px,380px);margin:0 auto;padding:16px 0 70px;text-align:center}.lf-content h1{font:400 30px/1.12 var(--lf-serif);letter-spacing:-.4px;margin:22px 0}.lf-content h2{font:400 27px/1.2 var(--lf-serif)}.lf-kicker{font-size:11px;letter-spacing:2px;color:#d6b483;margin-top:20px}.lf-lead{font-size:16px;line-height:1.5;color:#ddd7d2;margin:14px 0 25px}.lf-small{font-size:12px;line-height:1.6;color:#a7a7ae;margin:18px 0}.lf-small a{text-decoration:underline}.lf-primary{display:block;width:100%;padding:16px 18px;border-radius:6px;background:linear-gradient(110deg,#f3d9a8,#d3a16a);color:#131217;font-weight:700;font-size:16px;border:1px solid #efcf9b;cursor:pointer;margin:20px 0}.lf-primary:hover{filter:brightness(1.06)}.lf-primary:disabled{opacity:.4;cursor:not-allowed}.lf-progress-row{display:flex;justify-content:space-between;font-size:13px;align-items:center;color:#b8b4b7}.lf-text{background:none;border:0;color:inherit;font-size:14px;padding:0}.lf-progress{height:5px;background:#ffffff21;border-radius:9px;overflow:hidden;margin:12px 0 28px}.lf-progress i{display:block;height:100%;background:#d9b681;border-radius:9px}.lf-options{display:grid;gap:12px;margin:24px 0}.lf-options button{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;min-height:65px;padding:18px;border:1px solid #8b806c;border-radius:8px;background:#171922;color:#f7f2eb;font-size:16px}.lf-options button:hover,.lf-options button.selected{border-color:#ebc895;background:#3b3027}.lf-options strong{font-weight:500}.lf-options small{display:block;font-size:12px;color:#b9b2ac;margin-top:5px}.lf-check{color:#e9c795}.lf-image-options{grid-template-columns:1fr 1fr}.lf-image-options button{padding:0;overflow:hidden;display:flex;flex-direction:column;position:relative;justify-content:flex-start;text-align:center}.lf-image-options img{width:100%;aspect-ratio:1/1;object-fit:cover}.lf-image-options button>span{padding:10px}.lf-image-options .lf-check{position:absolute;top:4px;right:4px;background:#080b12a8;border-radius:50%;padding:4px 10px}.lf-intro-art,.lf-interlude-art{height:260px;border-radius:12px;background-image:linear-gradient(0deg,#080b12,transparent),url('/assets/makove-worlds-triptych.png');background-size:100% 100%,300% 100%;background-position:center,right center}.lf-art-romance{background-position:center,left center}.lf-art-horror{background-position:center,right center;filter:saturate(.3)}.lf-art-general{background-position:center,center center}.lf-loading-ring{display:grid;place-items:center;margin:90px auto 35px;width:130px;height:130px;border:3px solid #ffffff18;border-top-color:#d4b67f;border-radius:50%;font-size:48px;color:#e6c99e;animation:lf-pulse 1.5s infinite alternate}.lf-loading-progress{animation:lf-progress 1.8s linear forwards}.lf-envelope{font-size:70px;color:#dfba84;margin:70px 0 25px}#lf-email{text-align:left}#lf-email label{font-size:13px;display:block;margin:15px 0 6px}#lf-email input{width:100%;height:58px;background:#f9f7f3;color:#15151d;border:1px solid #cda875;border-radius:7px;padding:16px;font:400 16px var(--lf-sans)}#lf-email .lf-small{text-align:center}.lf-content-wide{width:min(100% - 32px,900px);padding-top:0}.lf-wide .lf-header{max-width:940px}@keyframes lf-progress{from{width:0}to{width:100%}}@keyframes lf-pulse{from{box-shadow:0 0 0 0 #cfad7422}to{box-shadow:0 0 0 20px #cfad7400}}@media(max-width:480px){.lf-header{height:70px}.lf-content{padding-top:5px}.lf-content h1{font-size:27px}.lf-intro-art{height:230px}.lf-logo{font-size:32px}}@media(prefers-reduced-motion:reduce){.lf-loading-ring{animation:none}.lf-loading-progress{animation:none;width:100%}}
.lf-illustration{display:block;width:100%;max-height:320px;object-fit:cover;border-radius:8px;margin:18px auto}.lf-account{max-width:420px;width:calc(100% - 32px);border:1px solid #444;border-radius:16px;background:#151515;color:#eee;padding:38px;text-align:center}.lf-account::backdrop{background:#000a}.lf-account h2{font:27px/1.2 var(--sans);margin:12px 0}.lf-account p{margin:20px 0}.lf-account>a:last-child{font-size:12px;text-decoration:underline}.lf-account .dialog-close{position:absolute;right:12px;top:10px}.lf-account .outline-pill{display:inline-block}

.lf-entry-options{grid-template-columns:1fr 1fr}.lf-entry-options button{display:flex;flex-direction:column;justify-content:flex-start;padding:0;overflow:hidden;text-align:center;position:relative;min-height:90px}.lf-entry-options img{width:100%;aspect-ratio:1/1;object-fit:cover}.lf-entry-options strong{padding:10px}.lf-entry-options button>span{display:none}

.lf-baked-label>span:not(.lf-check){display:none}.lf-content h1:focus,.lf-content h2:focus{outline:none}

.lf-loading-orbit{--lf-loading-progress:0%;width:150px;height:150px;border-radius:50%;margin:45px auto 28px;display:grid;place-items:center;background:conic-gradient(#deb987 var(--lf-loading-progress),#ffffff18 0);position:relative}.lf-loading-orbit:before{content:"";position:absolute;inset:5px;border-radius:50%;background:#0c0d15}.lf-loading-orbit strong{position:relative;font:400 42px/1 var(--lf-serif);color:inherit}.lf-loading-orbit small{font:400 20px/1 var(--lf-sans);margin-left:5px}.lf-loading-art{display:block;width:100%;max-height:280px;object-fit:cover;border-radius:8px;margin:25px auto}.lf-detective .lf-loading-orbit:before{background:#f5f3ef}.lf-horror .lf-loading-orbit{background:conic-gradient(#b93240 var(--lf-loading-progress),#ffffff18 0)}

.ls-sales .ls-art.ls-art-image{background:none}.ls-art-image img{display:block;width:100%;height:100%;object-fit:cover}.ls-art-image:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0002,transparent 70%);pointer-events:none}.ls-art-image>span{z-index:1}

.ls-sales .ls-art-image{overflow:hidden}.ls-art-baked-label img{transform:scale(1.3);transform-origin:top center}

/* Questions retain each public genre's own typography; results are styled below. */
.lf-page button,.lf-page input{font-family:var(--lf-sans)}
.lf-general:not([data-lf-theme="crime"]):not([data-lf-theme="horror"]) .lf-content:not(.lf-content-wide):has(.lf-progress)>h1{font:400 25px/1.1 var(--lf-serif)}
.lf-romance .lf-content:not(.lf-content-wide):has(.lf-progress-row)>h1{font:700 21px/1.25 var(--lf-sans)}
.lf-page[data-lf-theme="horror"]{--lf-sans:'Avenir Next','Segoe UI',sans-serif;--lf-serif:var(--lf-sans)}
.lf-page[data-lf-theme="horror"] .lf-content:not(.lf-content-wide)>h1{font-family:var(--lf-sans);font-weight:700}
.lf-page[data-lf-theme="horror"] .lf-content:not(.lf-content-wide):has(.lf-progress-row)>h1{font:500 22px/1.25 var(--lf-sans)}

/* General Horror exports already include their labels inside each image. */
.lf-general[data-lf-theme="horror"] .lf-image-options img{aspect-ratio:151/133;object-fit:contain}
.lf-general[data-lf-theme="horror"] .lf-options .lf-option-icon{display:inline-block;margin-right:9px;font-size:22px;vertical-align:middle}

/* Direct Horror uses the same complete labeled cards as General Horror. */
.lf-page[data-lf-theme="horror"] .lf-image-options .lf-baked-label img{aspect-ratio:151/133;object-fit:contain}
.lf-page[data-lf-theme="horror"] .lf-illustration-banner{aspect-ratio:394/112;object-fit:cover;object-position:center}

/* The stable direct Horror variant starts at question one after entry. */
.lf-horror .lf-logo:after{content:'Horror';display:block;font:italic 16px/20px var(--lf-sans);letter-spacing:0;opacity:.65;text-align:center}
.lf-horror:not(.lf-wide) .lf-header{height:65px}
.lf-horror:not(.lf-wide) .lf-header>.lf-back,.lf-horror:not(.lf-wide) .lf-header>.lf-exit{display:none}
.lf-horror:not(.lf-wide) .lf-content{width:min(100% - 32px,360px)}
.lf-horror .lf-image-options .lf-baked-label>.lf-check{display:none}
.lf-horror .lf-text:disabled{opacity:.45;cursor:default}

/* Direct quiz-c measurements from the rendered source, 2026-10-27. */
.lf-horror:not(.lf-wide){background-color:#050202;background-image:radial-gradient(circle at 50% 18%,rgba(168,24,34,.36),transparent 36%),radial-gradient(circle at 28% 90%,rgba(190,20,34,.3),transparent 34%),linear-gradient(#220406 0%,#050202 62%,#000 100%);color:#fff}
.lf-horror:not(.lf-wide) .lf-header{align-items:flex-start;padding-top:12px}
.lf-horror:not(.lf-wide) .lf-logo{font-size:32px}
.lf-horror:not(.lf-wide) .lf-content{width:min(100% - 32px,361px);padding-top:11px}
.lf-horror:not(.lf-wide) .lf-progress-row{font-size:16px;font-weight:700;line-height:18px;color:#fff}
.lf-horror:not(.lf-wide) .lf-progress-row .lf-text{font-size:18px;font-weight:700;line-height:18px}
.lf-horror:not(.lf-wide) .lf-progress{height:8px;background:transparent;margin:18px 0 16px}
.lf-horror:not(.lf-wide) .lf-progress i{background:#fff}
.lf-horror:not(.lf-wide) .lf-content>h1{max-width:340px;margin:16px auto;font:600 21px/1.3 var(--lf-sans);letter-spacing:0}
.lf-horror:not(.lf-wide) .lf-content:has(.lf-options):has(.lf-progress-row)>h1{font:500 22px/1.25 var(--lf-sans)}
.lf-horror:not(.lf-wide) .lf-options{margin:16px 0;gap:12px}
.lf-horror:not(.lf-wide) .lf-image-options .lf-baked-label{background:#000;border:1px solid #b62b2f;border-radius:12px;box-shadow:0 0 12px rgba(182,43,47,.42)}
.lf-horror:not(.lf-wide) .lf-content:has(.lf-progress-row) .lf-options button:not(.lf-baked-label){min-height:48px;padding:10px 12px;background:rgba(255,255,255,.75);color:#000;border:1px solid #b62b2f;border-radius:11px;box-shadow:0 0 12px rgba(182,43,47,.42)}
.lf-horror:not(.lf-wide) .lf-content:has(.lf-progress-row) .lf-options button:not(.lf-baked-label) .lf-check{display:none}
.lf-horror:not(.lf-wide) .lf-content:has(.lf-progress-row) .lf-options button:not(.lf-baked-label) strong{font-weight:400}
.lf-horror:not(.lf-wide) .lf-primary{min-height:54px;height:auto;padding:12px;border:1px solid #e01818;border-radius:10px;background:#fff;color:#000;font-size:17px;font-weight:700}
.lf-horror:not(.lf-wide) .lf-primary:focus-visible,.lf-horror:not(.lf-wide) .lf-options button:focus-visible{outline:2px solid #fecaca;outline-offset:3px}

/* General Romance quiz shell, measured across the observed 21-position branch. */
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row){background-color:#05070d;background-image:radial-gradient(circle at 12% 14%,rgba(135,34,87,.2),transparent 30%),radial-gradient(circle at 88% 24%,rgba(65,83,177,.18),transparent 32%),linear-gradient(#080a12,#05070d 72%);background-attachment:local;color:#fff}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-header{height:85px;align-items:flex-start;padding-top:20px}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-logo{font-size:41px;line-height:41px}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-header>.lf-back,.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-exit{display:none}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-content{width:min(100% - 36px,394px);padding:0 0 36px}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-progress-row{color:#fff}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-progress-row .lf-text{font:600 21px/21px var(--lf-sans)}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-progress-row>span{padding:6px 10px;border:1px solid #ffffff1a;border-radius:8px;background:#ffffff12;font:600 16px/16px var(--lf-sans)}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-progress{height:6px;margin:10px 0 0;background:transparent}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-progress i{background:linear-gradient(90deg,#c14f82,#8d79df 55%,#d5a368)}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-content:has(.lf-progress)>h1{max-width:368px;margin:28px auto 24px;color:#fff8f1;font:400 25px/1.1 var(--lf-serif);letter-spacing:normal}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options{gap:4px 10px;margin:24px 0 0;justify-items:center}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options button{width:100%;max-width:142px;min-height:0;padding:0;border:1px solid #dad0c8;border-radius:8px;background:#0c0e17;color:#fff;box-shadow:0 16px 34px #00000057}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options img{display:block;width:100%;height:auto;aspect-ratio:161/221;object-fit:cover}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options button:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,#000000e6,#00000026,transparent);pointer-events:none}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options button>span:not(.lf-check){position:absolute;left:0;right:0;bottom:0;padding:11px;z-index:1;text-shadow:0 3px 12px #000000eb}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options strong{display:block;font:400 17px/1.15 var(--lf-serif);white-space:pre-line}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options .lf-check{display:none}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options button:hover{transform:translateY(-2px)}
.lf-general[data-lf-theme="romance"][data-lf-question="build"] .lf-image-options button:focus-visible{outline:2px solid #e6bed0;outline-offset:2px}

/* General Romance text choices and fixed multi-select action. */
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options){gap:10px;margin:24px 0 0}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button{min-height:0;gap:12px;padding:15px 16px;border:1px solid #dad0c8;border-radius:8px;background:#ffffff0f;color:#fff;font:400 16px/24px 'Avenir Next','Segoe UI',sans-serif;box-shadow:0 12px 28px #0000003d;transition:background-color .15s}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button>span:first-child{display:block;flex:1;min-width:0}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button>span:first-child:has(.lf-option-icon){display:grid;grid-template-columns:20px minmax(0,1fr);column-gap:12px;row-gap:0;align-items:center}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) .lf-option-icon{grid-column:1;grid-row:1;align-self:center;font:400 20px/20px 'Avenir Next','Segoe UI',sans-serif}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) strong{display:block;grid-column:2;font:600 18px/1.25 var(--lf-sans)}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) small{grid-column:2;margin:0;font:400 13px/1.35 var(--lf-sans);color:#fff}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button:hover{background:#ffffff1a}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button.selected{background:#ffffff1a;border-color:#efc8d9;box-shadow:0 0 24px #cd5c9133}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options button:focus-visible{outline:2px solid #e6bed0;outline-offset:2px}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-check{display:none}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .lf-check{display:flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border:1px solid #ffffff4d;border-radius:50%;color:transparent;font:400 16px/24px 'Avenir Next','Segoe UI',sans-serif}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .selected .lf-check{color:#090a0f;border-color:#efc8d9;background:#efc8d9}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .lf-content>h1{margin-bottom:0}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .lf-content>.lf-small{max-width:368px;margin:10px auto 0;font:400 15px/21px var(--lf-sans);color:#fff}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .lf-content{padding-bottom:178px}
.lf-general[data-lf-theme="romance"] .lf-multi-actions{position:fixed;inset:auto 0 0;z-index:20;max-width:430px;margin:auto;padding:0 18px calc(env(safe-area-inset-bottom) + 18px);pointer-events:none}
.lf-general[data-lf-theme="romance"] .lf-multi-dock{padding:8px;border:1px solid #dad0c8;border-radius:8px;background:transparent;box-shadow:0 20px 48px #0000007a;backdrop-filter:blur(16px);pointer-events:auto}
.lf-general[data-lf-theme="romance"] .lf-multi-handle{display:none}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-primary{display:flex;align-items:center;justify-content:center;width:100%;height:56px;margin:24px 0 0;padding:10px 24px;border:1px solid #f1d09da6;border-radius:8px;background:linear-gradient(135deg,#f6dfb8,#d6a46b);color:#090a0f;font:700 18px/27px var(--lf-sans);box-shadow:0 16px 38px #00000061}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-primary:disabled{opacity:.6;transform:scale(.985)}
.lf-general[data-lf-theme="romance"] .lf-multi-actions .lf-primary{margin:0}
.lf-general[data-lf-theme="romance"]:is([data-lf-question="hero"],[data-lf-question="heat"]) .lf-interlude-art{display:none}
.lf-general[data-lf-theme="romance"]:is([data-lf-question="hero"],[data-lf-question="heat"]) .lf-content>h1{margin-bottom:10px}
.lf-general[data-lf-theme="romance"]:is([data-lf-question="hero"],[data-lf-question="heat"]) .lf-lead{max-width:368px;margin:0 auto;white-space:pre-line;color:#fff;font:400 18px/1.4 var(--lf-sans)}

.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button>span:first-child:has(small){row-gap:4px}
.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button>span:first-child:has(small) .lf-option-icon{grid-row:1 / span 2}

.lf-general[data-lf-theme="romance"]:has(.lf-progress-row){background-image:url('/assets/funnel-general-romance-silhouette-v19.png'),radial-gradient(circle at 12% 14%,rgba(135,34,87,.2),transparent 30%),radial-gradient(circle at 88% 24%,rgba(65,83,177,.18),transparent 32%),linear-gradient(#080a12,#05070d 72%);background-size:clamp(280px,80vw,320px) auto,auto,auto,auto;background-position:center bottom,0 0,0 0,0 0;background-repeat:no-repeat;background-attachment:local}

.lf-general[data-lf-theme="romance"]:has(.lf-progress-row) .lf-options:not(.lf-image-options) button>span:first-child:has(.lf-option-icon):has(small){row-gap:4px}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .lf-content:has(.lf-progress)>h1{margin-bottom:0}
.lf-general[data-lf-theme="romance"]:is([data-lf-question="hero"],[data-lf-question="heat"]) .lf-content:has(.lf-progress)>h1{margin-bottom:10px}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .lf-check{font-size:0}
.lf-general[data-lf-theme="romance"]:has(.lf-multi-actions) .selected .lf-check:after{content:'';display:block;width:6px;height:10px;margin-top:-3px;border:solid currentColor;border-width:0 2px 2px 0;transform:rotate(45deg)}

/* Email feedback shares native constraints and announces changes on blur/submit. */
#lf-email .lf-email-error{color:#fda4af}
#lf-email input[aria-invalid="true"]{border-color:#e35669}
.lf-page[data-lf-stage="email"] .lf-lead{white-space:pre-line}
#lf-email input:focus-visible{outline:2px solid currentColor;outline-offset:3px}

/* Canonical Romance quiz-vibes-2: measured against public rendered screens.
   Keep sales views isolated; their wider checkout layout has separate styling. */
.lf-romance:not(.lf-wide){--lf-romance-base:#2a1810;--lf-romance-glow:80,66,59;--lf-romance-start:#3f2f28;--lf-romance-mid:#301f17;--lf-romance-end:#25150e;--lf-romance-edge:#1d110b;background:radial-gradient(circle at 18% 84%,rgba(var(--lf-romance-glow),.24),transparent 26%),linear-gradient(115deg,var(--lf-romance-start) 0%,var(--lf-romance-mid) 28%,var(--lf-romance-end) 58%,var(--lf-romance-edge) 100%),var(--lf-romance-base);color:#fff}
.lf-romance:not(.lf-wide):is([data-lf-question="character"],[data-lf-question="chemistry"]){--lf-romance-base:#1a0f1a;--lf-romance-glow:67,58,67;--lf-romance-start:#312731;--lf-romance-mid:#211621;--lf-romance-end:#170d17;--lf-romance-edge:#120b12}
.lf-romance:not(.lf-wide)[data-lf-question="story-experience"]{--lf-romance-base:#a21733;--lf-romance-glow:179,65,88;--lf-romance-start:#ab2e47;--lf-romance-mid:#a51e39;--lf-romance-end:#8f142d;--lf-romance-edge:#711024}
.lf-romance:not(.lf-wide):is([data-lf-question="line"],[data-lf-question="moment"]){--lf-romance-base:#3a0f1a;--lf-romance-glow:93,58,67;--lf-romance-start:#4e2731;--lf-romance-mid:#401621;--lf-romance-end:#330d17;--lf-romance-edge:#290b12}
.lf-romance:not(.lf-wide):is([data-lf-question="attention"],[data-lf-question="intensity"],[data-lf-question="need"]){--lf-romance-base:#5c0a1f;--lf-romance-glow:121,54,71;--lf-romance-start:#6c2335;--lf-romance-mid:#611126;--lf-romance-end:#51091b;--lf-romance-edge:#400716}
.lf-romance:not(.lf-wide) .lf-header{height:100px;align-items:flex-start;padding-top:24px}
.lf-romance:not(.lf-wide) .lf-header>.lf-back,.lf-romance:not(.lf-wide) .lf-header>.lf-exit{display:none}
.lf-romance:not(.lf-wide) .lf-logo{font:400 36px/32px var(--lf-serif);letter-spacing:-1.7px;text-align:center}
.lf-romance:not(.lf-wide) .lf-logo:after{content:'Romance';display:block;font:italic 18px/20px 'Avenir Next','Segoe UI',sans-serif;letter-spacing:0;opacity:.65}
.lf-romance:not(.lf-wide) .lf-content{width:min(100% - 28px,365px);padding:0 0 44px}
.lf-romance:not(.lf-wide) .lf-progress-row{height:24px;color:#fff;font:700 16px/24px var(--lf-sans)}
.lf-romance:not(.lf-wide) .lf-progress-row .lf-text{font:700 18px/18px var(--lf-sans)}
.lf-romance:not(.lf-wide) .lf-text:disabled{opacity:.4}
.lf-romance:not(.lf-wide) .lf-progress{height:8px;margin:16px 0 0;background:#ffffff40}
.lf-romance:not(.lf-wide) .lf-progress i{background:#fff}
.lf-romance:not(.lf-wide) .lf-content:has(.lf-progress-row)>h1{max-width:340px;margin:76px auto 0;font:700 21px/1.25 var(--lf-sans);letter-spacing:-.42px}
.lf-romance:not(.lf-wide) .lf-options:not(.lf-entry-options){gap:14px;margin:25px 0 0}
.lf-romance:not(.lf-wide) .lf-options:not(.lf-entry-options) button{min-height:0;align-items:flex-start;padding:18px;gap:12px;border:1px solid #ffffffbf;border-radius:18px;background:rgba(237,201,208,.92);color:#241116;box-shadow:0 18px 34px -22px rgba(46,6,16,.78);backdrop-filter:blur(10px);font:400 16px/24px 'Avenir Next','Segoe UI',sans-serif}
.lf-romance:not(.lf-wide) .lf-options:not(.lf-entry-options) button>span:first-child{display:grid;grid-template-columns:22px minmax(0,1fr);gap:4px 12px;width:100%}
.lf-romance:not(.lf-wide) .lf-options .lf-option-icon{grid-column:1;grid-row:1 / span 2;font:400 20px/24px 'Avenir Next','Segoe UI',sans-serif}
.lf-romance:not(.lf-wide) .lf-options strong{display:block;grid-column:2;font:500 16px/21.6px var(--lf-sans)}
.lf-romance:not(.lf-wide) .lf-options small{grid-column:2;display:block;margin:0;font:400 14px/19.6px var(--lf-sans);color:#452027cc}
.lf-romance:not(.lf-wide) .lf-options .lf-check{display:none}
.lf-romance:not(.lf-wide) .lf-options:not(.lf-entry-options) button:hover,.lf-romance:not(.lf-wide) .lf-options:not(.lf-entry-options) button.selected{background:#fff;transform:translateY(-1px);border-color:#fff}
.lf-romance:not(.lf-wide) .lf-options button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.lf-romance:not(.lf-wide) .lf-primary{min-height:54px;border:1px solid #ffffffbf;border-radius:12px;background:#fff;color:#241116;font:700 18px/24px var(--lf-sans)}
@media(max-width:480px){.lf-romance:not(.lf-wide) .lf-header{height:100px;padding-top:24px}.lf-romance:not(.lf-wide) .lf-logo{font-size:36px}.lf-romance:not(.lf-wide) .lf-content:has(.lf-progress-row)>h1{font-size:21px}}
/* The entry artwork contains its own labels and full portrait composition. */
.lf-romance:not(.lf-wide):has(.lf-entry-options){background:radial-gradient(circle at 18% 84%,rgba(210,32,78,.24),transparent 26%),linear-gradient(115deg,#b2193c,#ac1739 28%,#8f142f 58%,#711123);color:#fff}
.lf-romance:not(.lf-wide):has(.lf-entry-options) .lf-header{height:96px;padding-top:28px}
.lf-romance:not(.lf-wide):has(.lf-entry-options) .lf-content{width:min(100% - 28px,380px)}
.lf-romance:not(.lf-wide):has(.lf-entry-options) .lf-kicker{height:28px;margin:0;font:500 12px/28px var(--lf-sans);letter-spacing:.5px;color:#fff}
.lf-romance:not(.lf-wide):has(.lf-entry-options) .lf-content>h1{max-width:356px;margin:17px auto 12px;font:400 35px/1.25 var(--lf-serif);letter-spacing:0}
.lf-romance:not(.lf-wide):has(.lf-entry-options) .lf-lead{max-width:356px;margin:0 auto;font:400 19px/1.25 var(--lf-sans);color:#fff}
.lf-romance:not(.lf-wide) .lf-entry-options{gap:12px;margin:28px 0 32px}
.lf-romance:not(.lf-wide) .lf-entry-options button{border:0;border-radius:0;background:transparent;min-height:0;box-shadow:none}
.lf-romance:not(.lf-wide) .lf-entry-options img{display:block;aspect-ratio:390/856;height:auto;object-fit:contain}
.lf-romance:not(.lf-wide) .lf-entry-options strong{display:none}
.lf-romance:not(.lf-wide):has(.lf-entry-options) .lf-content>footer{display:none}
.lf-romance:not(.lf-wide):has(.lf-entry-options) .lf-intro-art{display:none}
/* General entry: genre grid comes immediately below the heading, not a generic hero. */
.lf-general:has(.lf-entry-options){background:radial-gradient(ellipse at 30% 0,#2d252e,transparent 58%),linear-gradient(140deg,#1c1920,#0b0e14 75%);color:#fff}
.lf-general:has(.lf-entry-options) .lf-header{height:80px;padding-top:28px;align-items:flex-start}
.lf-general:has(.lf-entry-options) .lf-logo{font:400 44px/44px var(--lf-serif);letter-spacing:-2px}
.lf-general:has(.lf-entry-options) .lf-exit,.lf-general:has(.lf-entry-options) .lf-kicker,.lf-general:has(.lf-entry-options) .lf-intro-art{display:none}
.lf-general:has(.lf-entry-options) .lf-content{width:min(100% - 32px,484px);padding-top:0}
.lf-general:has(.lf-entry-options) .lf-content>h1{max-width:440px;margin:13px auto 12px;font:400 40px/1.12 var(--lf-serif);letter-spacing:0}
.lf-general:has(.lf-entry-options) .lf-lead{max-width:350px;margin:0 auto;font:400 15.5px/22px var(--lf-sans);color:#fff}
.lf-general:has(.lf-entry-options) .lf-entry-options{gap:12px;margin:22px 0 0}
.lf-general:has(.lf-entry-options) .lf-entry-options button{aspect-ratio:1;min-height:0;border:1px solid #fff3;border-radius:8px;background:#151219}
.lf-general:has(.lf-entry-options) .lf-entry-options img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover}
.lf-general:has(.lf-entry-options) .lf-entry-options button:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 52%,#000b);pointer-events:none}
.lf-general:has(.lf-entry-options) .lf-entry-options strong{position:absolute;left:18px;bottom:18px;z-index:1;padding:0;font:400 26px/1.1 var(--lf-serif);text-align:left;color:#fff}
@media(max-width:480px){.lf-general:has(.lf-entry-options) .lf-content>h1{max-width:340px;font-size:32px}.lf-general:has(.lf-entry-options) .lf-entry-options strong{left:12px;bottom:12px;font-size:22px}}
.lf-romance:not(.lf-wide) .lf-content:has(.lf-progress-row){padding-top:6px}
.lf-romance:not(.lf-wide) .lf-progress-row{height:18px;line-height:18px}
.lf-romance:not(.lf-wide) .lf-progress-row>span{padding:0 12px}
.lf-romance:not(.lf-wide) .lf-options:not(.lf-entry-options){margin-top:26px}
@media(max-width:480px){
.lf-general:has(.lf-entry-options) .lf-header{height:72px;padding-top:20px}
.lf-general:has(.lf-entry-options) .lf-content{width:calc(100% - 36px)}
.lf-general:has(.lf-entry-options) .lf-content>h1{max-width:357px;font-size:34px}
.lf-general:has(.lf-entry-options) .lf-entry-options button{aspect-ratio:6/7}
.lf-general:has(.lf-entry-options) .lf-entry-options strong{font-size:24px;left:14px;bottom:16px}
}

/* The legacy direct Romance quiz has the pink-card shell, not General's navy theme. */
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:not(.lf-wide){--lf-romance-base:#a21733;--lf-romance-glow:179,65,88;--lf-romance-start:#ab2e47;--lf-romance-mid:#a51e39;--lf-romance-end:#8f142d;--lf-romance-edge:#711024}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:not(.lf-wide):has(.lf-progress-row){background-image:url('/assets/funnel-romance-legacy-silhouette.webp'),radial-gradient(circle at 18% 84%,rgba(var(--lf-romance-glow),.24),transparent 26%),linear-gradient(115deg,var(--lf-romance-start) 0%,var(--lf-romance-mid) 28%,var(--lf-romance-end) 58%,var(--lf-romance-edge) 100%);background-size:393px auto,auto,auto;background-position:center bottom,0 0,0 0;background-repeat:no-repeat;background-attachment:local}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:not(.lf-wide)[data-lf-question="ball"]{--lf-romance-base:#770a36;--lf-romance-glow:143,54,90;--lf-romance-start:#85234a;--lf-romance-mid:#7b113c;--lf-romance-end:#690930;--lf-romance-edge:#530726}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:not(.lf-wide)[data-lf-question="elevator"]{--lf-romance-base:#525252;--lf-romance-glow:113,113,113;--lf-romance-start:#636363;--lf-romance-mid:#575757;--lf-romance-end:#484848;--lf-romance-edge:#393939}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:not(.lf-wide)[data-lf-question="coffee"]{--lf-romance-base:#d5274a;--lf-romance-glow:221,78,107;--lf-romance-start:#d93d5c;--lf-romance-mid:#d62d4f;--lf-romance-end:#bb2241;--lf-romance-edge:#951b34}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:not(.lf-wide)[data-lf-question="song"]{--lf-romance-base:#532c74;--lf-romance-glow:114,82,141;--lf-romance-start:#644182;--lf-romance-mid:#583278;--lf-romance-end:#492766;--lf-romance-edge:#3a1f51}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:has(.lf-entry-options) .lf-content>h1{font-size:35px;line-height:1.1;margin-bottom:0}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:has(.lf-entry-options) .lf-lead{display:none}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-entry-options img{aspect-ratio:179/236}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-content:has(.lf-progress-row) .lf-options button>span:first-child:not(:has(small)){align-items:center}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-content:has(.lf-progress-row) .lf-options button>span:first-child:not(:has(small)) .lf-option-icon{grid-row:1}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-options .lf-baked-label img{aspect-ratio:161/221;object-fit:cover}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-image-options button>span:first-of-type{display:block}
.lf-page.lf-romance[data-lf-theme="legacy-romance"][data-lf-question="build"] .lf-image-options button{padding:0;min-height:0;border:1px solid #ffffff59;border-radius:24px;background:#000;overflow:hidden;position:relative}
.lf-page.lf-romance[data-lf-theme="legacy-romance"][data-lf-question="build"] .lf-image-options img{aspect-ratio:161/221;width:100%;height:auto;object-fit:cover;display:block}
.lf-page.lf-romance[data-lf-theme="legacy-romance"][data-lf-question="build"] .lf-image-options button>span:first-of-type{position:absolute;left:0;right:0;bottom:0;display:block;padding:28px 10px 12px;background:linear-gradient(transparent,#000b);text-align:center}
.lf-page.lf-romance[data-lf-theme="legacy-romance"][data-lf-question="build"] .lf-image-options strong{display:block;font:500 14px/1.2 var(--lf-sans);color:#fff}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-content:has(.lf-multi-actions){padding-bottom:178px}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-content:has(.lf-multi-actions)>.lf-small{font:600 16px/22px var(--lf-sans);color:#fff;margin:20px auto 26px}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:has(.lf-multi-actions) .lf-check{display:flex;align-items:center;justify-content:center;flex:0 0 24px;width:24px;height:24px;border:1px solid #6f4b58;border-radius:50%;color:transparent;font:400 16px/24px var(--lf-sans)}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:has(.lf-multi-actions) .selected .lf-check{color:#452027;background:#fff}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-multi-actions{position:fixed;inset:auto 0 0;z-index:20;max-width:393px;margin:auto;padding:0 14px 20px;pointer-events:none}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-multi-dock{padding:12px;border:1px solid #fff9;border-radius:28px;background:#72152c80;box-shadow:0 30px 56px -26px #0e0205eb;backdrop-filter:blur(18px);pointer-events:auto}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-multi-actions .lf-primary{margin:12px 0 0;height:58px;padding:10px 24px;border-radius:18px;background:rgba(237,201,208,.92);font:700 16px/24px var(--lf-sans)}
.lf-page.lf-romance[data-lf-theme="legacy-romance"] .lf-multi-actions .lf-primary:disabled{opacity:.6}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:is([data-lf-question="hero"],[data-lf-question="heat"]) .lf-interlude-art{display:none}
.lf-page.lf-romance[data-lf-theme="legacy-romance"]:is([data-lf-question="hero"],[data-lf-question="heat"]) .lf-lead{white-space:pre-line;font:400 18px/1.4 var(--lf-sans);color:#fff}

/* Original proof, matching the reference card hierarchy without invented reviews. */
.lf-collection-proof{margin:28px 0 18px;padding:34px 26px 30px;text-align:left;border:1px solid #fff;border-radius:16px;background:#ffffff18;color:inherit}.lf-proof-number{display:block;font:400 94px/1 var(--lf-serif);letter-spacing:-5px;margin-bottom:22px}.lf-collection-proof h1{font:400 25px/1.18 var(--lf-serif)!important;margin:0 0 18px!important}.lf-collection-proof>p{font:400 21px/1.3 var(--lf-serif);margin:0 0 22px}.lf-collection-proof .lf-proof-personal{margin-bottom:32px}.lf-proof-signature{display:block;text-align:center;font:600 18px/1.4 var(--lf-sans)}
.lf-loading-proof{margin:30px 0 20px}.lf-loading-proof h2{font:700 22px/1.2 var(--lf-sans);margin:0 0 22px}.lf-loading-proof article{padding:24px;border-radius:24px;background:#fff;color:#18151b;text-align:left}.lf-loading-proof .lf-proof-label{font:600 10px/1.3 var(--lf-sans);letter-spacing:.1em;color:#775461;margin:0 0 15px}.lf-loading-proof blockquote{font:500 19px/1.5 var(--lf-sans);margin:0 0 18px}.lf-loading-proof footer{font:500 12px/1.4 var(--lf-sans);color:#6e5360}
/* Keep single illustrations in their intrinsic proportions; never stretch triptych panels. */
.lf-illustration{height:auto}.lf-art-romance{background-image:linear-gradient(0deg,#080b12,transparent),url('/assets/funnel-genres-fantasy-romance.webp');background-size:cover,cover;background-position:center,center}.lf-loading-art{height:auto;object-fit:contain}
