:root{
  --ink:#292630;--muted:#746f79;--line:#ebe6ea;--paper:#fffdfa;--white:#fff;
  --pink:#ff5a78;--pink-dark:#df3f61;--pink-soft:#fff0f4;--lav:#eee9ff;--lav-strong:#6658bb;
  --mint:#dcf6ef;--mint-strong:#277e69;--yellow:#fff1bd;--yellow-strong:#80600d;
  --blue:#e6f2ff;--blue-strong:#356f9f;--shadow:0 16px 42px rgba(65,45,57,.10);
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP","Hiragino Sans","Yu Gothic UI",Meiryo,sans-serif;color-scheme:light;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.65;letter-spacing:.01em}button{font:inherit}
button:focus-visible,a:focus-visible{outline:3px solid rgba(255,90,120,.32);outline-offset:3px}.hidden{display:none!important}.is-invisible{visibility:hidden!important}
.site-header{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:rgba(255,253,250,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(235,230,234,.82);position:sticky;top:0;z-index:30}
.share-referral{background:#292630;color:#fff;border-bottom:4px solid var(--pink)}.share-referral-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding-top:12px;padding-bottom:12px}.share-referral strong{display:block;font-size:17px;letter-spacing:-.025em}.share-referral span{display:block;margin-top:2px;color:#ddd7dc;font-size:12px;font-weight:750}.share-referral .secondary{min-height:42px;flex:0 0 auto;border-color:#fff;background:#fff;color:#292630}
.brand{display:flex;align-items:center;gap:11px;min-width:0}.brand-mark{width:31px;height:31px;border-radius:10px;background:var(--pink);color:#fff;display:grid;place-items:center;font-size:16px;font-weight:1000;transform:rotate(-4deg)}
.brand-copy{display:flex;align-items:baseline;gap:9px;white-space:nowrap}.brand-name{font-size:18px;font-weight:950;letter-spacing:-.045em}.brand-sub{font-size:11px;color:var(--muted);font-weight:800}.age-mini{font-size:11px;font-weight:900;border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 9px;color:#6f6871}
.landing{overflow:hidden}.container{width:min(1080px,calc(100% - 40px));margin:0 auto;position:relative;z-index:1}.hero-wrap{position:relative;background:#fff3f6;padding:58px 0 96px}.hero-wrap::after{content:"";position:absolute;left:-5%;right:-5%;bottom:-42px;height:88px;background:var(--paper);border-radius:50% 50% 0 0/75% 75% 0 0}
.hero{display:grid;grid-template-columns:minmax(0,1.03fr) minmax(360px,.97fr);gap:54px;align-items:center}.hero-kicker{display:inline-flex;align-items:center;gap:7px;margin:0 0 16px;padding:6px 10px;border-radius:999px;background:#fff;color:#a92f4d;font-size:12px;font-weight:900;box-shadow:0 5px 18px rgba(144,78,96,.08)}
.hero-kicker::before{content:"18+";background:var(--pink);color:#fff;border-radius:999px;padding:1px 7px;font-size:10px}h1{margin:0;font-size:clamp(34px,4.6vw,52px);line-height:1.16;letter-spacing:-.055em;font-weight:950}.accent{color:var(--pink-dark)}
.lead{margin:18px 0 0;max-width:620px;font-size:17px;line-height:1.85;color:#56505a}.hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:26px}.primary,.secondary{min-height:52px;border:0;border-radius:14px;padding:0 22px;font-weight:900;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.primary{background:var(--pink);color:#fff;box-shadow:0 10px 22px rgba(233,68,101,.22)}.primary:hover{transform:translateY(-1px);background:var(--pink-dark);box-shadow:0 13px 28px rgba(233,68,101,.27)}.primary:disabled{opacity:.65;cursor:wait}.secondary{background:#fff;color:var(--ink);border:1px solid var(--line)}.secondary:hover{background:#fff8fa}.meta{font-size:13px;font-weight:800;color:#7c737e}
.preview-stack{position:relative;min-height:448px;display:grid;place-items:center}.preview-orbit{position:absolute;opacity:.95}.orb-a{width:88px;height:88px;background:var(--yellow);left:0;top:44px;transform:rotate(11deg);border-radius:30% 70% 64% 36%/52% 41% 59% 48%}.orb-b{width:76px;height:76px;background:var(--mint);right:8px;bottom:40px;border-radius:58% 42% 33% 67%/46% 59% 41% 54%}.orb-c{width:42px;height:42px;background:var(--lav);right:34px;top:30px;transform:rotate(22deg);border-radius:12px}
.sample-card{--type-primary:#735FC2;--type-secondary:#E35D84;--type-accent:#356F9F;--type-surface:#F0EDFA;position:relative;width:min(410px,100%);min-height:370px;background:var(--type-surface);border:1px solid color-mix(in srgb,var(--type-primary) 24%,#fff);border-radius:26px;padding:22px;box-shadow:0 28px 58px color-mix(in srgb,var(--type-primary) 18%,transparent);transform:translateX(0) rotate(1deg);opacity:1;z-index:2;display:grid;grid-template-columns:42% 58%;align-items:center;overflow:hidden;transition:opacity .34s ease,transform .34s cubic-bezier(.55,.02,.35,1),background .3s ease,border-color .3s ease}.sample-card::after{content:"";position:absolute;width:155px;height:155px;right:-62px;top:-70px;border-radius:50%;background:var(--type-accent);opacity:.23}.sample-card.is-leaving{opacity:0;transform:translateX(-115%) rotate(-3deg)}.sample-card.is-entering{opacity:0;transform:translateX(115%) rotate(3deg);transition:none}.sample-character{align-self:stretch;display:grid;place-items:center;margin:-12px 0 -12px -28px}.sample-character img{width:150%;max-width:none;height:100%;object-fit:contain;transition:transform .35s ease}.sample-card:not(.is-leaving):not(.is-entering) .sample-character img{animation:preview-character-in .38s ease both}.sample-content{position:relative;z-index:2}.sample-label{font-size:10px;font-weight:900;color:var(--type-primary);letter-spacing:.08em}.sample-code{display:inline-block;margin:8px 0 0 5px;font-size:11px;font-weight:900;color:#fff;background:var(--type-secondary);border-radius:999px;padding:4px 8px}.sample-card h2{margin:9px 0 4px;font-size:27px;letter-spacing:-.045em;line-height:1.25}.sample-card p{margin:0;color:#514b53;font-size:13px}.trait-chips{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:18px}.trait-chips span{border-radius:12px;padding:9px 8px;font-size:10px;font-weight:900}.trait-chips span:nth-child(1){background:color-mix(in srgb,var(--type-primary) 18%,#fff);color:var(--type-primary)}.trait-chips span:nth-child(2){background:color-mix(in srgb,var(--type-secondary) 17%,#fff);color:var(--type-secondary)}.trait-chips span:nth-child(3){background:color-mix(in srgb,var(--type-accent) 36%,#fff);color:var(--type-secondary)}.trait-chips span:nth-child(4){background:#fff;color:var(--type-secondary)}
.peek-card{position:absolute;width:220px;background:#fff;border:1px solid #eee4e8;border-radius:18px;padding:14px 15px;box-shadow:0 15px 34px rgba(72,47,58,.09);z-index:1}.peek-card strong{display:block;font-size:14px}.peek-card span{font-size:11px;color:var(--muted);font-weight:800}.peek-a{left:-5px;bottom:20px;transform:rotate(-7deg)}.peek-b{right:-4px;top:24px;transform:rotate(7deg)}
@keyframes preview-character-in{from{transform:translateX(18px) scale(.97);opacity:.25}to{transform:translateX(0) scale(1);opacity:1}}
.axes-section{padding:68px 0 40px}.section-head{text-align:center;max-width:640px;margin:0 auto 26px}.section-head h2{margin:0;font-size:28px;letter-spacing:-.04em}.section-head p{margin:8px 0 0;color:var(--muted);font-size:14px}.axis-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.axis-card{border:1px solid var(--line);background:#fff;border-radius:18px;padding:18px 17px;min-height:150px;border-top:5px solid}.axis-card span{font-size:10px;font-weight:950;letter-spacing:.08em;color:#8f858c}.axis-card strong{display:block;margin-top:9px;font-size:17px;letter-spacing:-.025em}.axis-card p{margin:6px 0 0;font-size:12px;color:var(--muted);line-height:1.65}.axis-yellow{border-top-color:#e2b93e}.axis-mint{border-top-color:#47a88e}.axis-lav{border-top-color:#8172d1}.axis-blue{border-top-color:#5b9fd0}.bottom-cta{text-align:center;padding:28px 0 72px}.bottom-cta p{margin:0 0 14px;color:#6a626a;font-size:14px;font-weight:800}
.quiz-page,.result-page{min-height:calc(100vh - 64px);padding:34px 0 64px}.quiz-shell{width:min(1180px,calc(100% - 40px));margin:0 auto}.result-shell{width:min(780px,calc(100% - 32px));margin:0 auto}.quiz-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:13px}.q-count{font-size:13px;font-weight:950;color:#5f5860}.remain{color:#9a909a;font-size:12px;font-weight:800}.text-button{border:0;background:transparent;color:#8e858d;font-weight:800;cursor:pointer;padding:7px 0}.text-button:hover{color:var(--ink)}
.progress-track{height:7px;background:#f0e9ec;border-radius:999px;overflow:hidden;margin-bottom:34px}.progress-bar{height:100%;background:var(--pink);border-radius:999px;transition:width .28s ease}.progress-1{width:5.556%}.progress-2{width:11.111%}.progress-3{width:16.667%}.progress-4{width:22.222%}.progress-5{width:27.778%}.progress-6{width:33.333%}.progress-7{width:38.889%}.progress-8{width:44.444%}.progress-9{width:50%}.progress-10{width:55.556%}.progress-11{width:61.111%}.progress-12{width:66.667%}.progress-13{width:72.222%}.progress-14{width:77.778%}.progress-15{width:83.333%}.progress-16{width:88.889%}.progress-17{width:94.444%}.progress-18{width:100%}
.question-wrap{width:100%;margin:0 auto}.question-number{margin:0 0 9px;text-align:center;color:var(--pink-dark);font-size:12px;font-weight:950;letter-spacing:.08em}.question-wrap h2{margin:0 auto;text-align:center;max-width:650px;font-size:clamp(24px,4vw,33px);line-height:1.45;letter-spacing:-.04em}.question-wrap h2:focus,.result-title:focus{outline:none}.choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(14px,4.5vw,64px);margin-top:34px}.choice{position:relative;width:100%;display:grid;grid-template-columns:1fr;align-content:start;gap:13px;text-align:left;border:1px solid #e8e0e4;border-radius:22px;background:#fff;padding:24px 54px 24px 24px;min-height:176px;color:var(--ink);cursor:pointer;box-shadow:0 10px 28px rgba(68,51,60,.06);transition:transform .13s ease,border-color .13s ease,box-shadow .13s ease,background .13s ease}.choice:hover{transform:translateY(-2px);border-color:#f0a9b8;box-shadow:0 14px 32px rgba(98,57,73,.10);background:#fffafb}.choice.selected{border-color:var(--pink);background:var(--pink-soft);transform:scale(.995)}.choice-badge{width:40px;height:40px;border-radius:13px;background:#f7f2f4;display:grid;place-items:center;font-size:13px;font-weight:950;color:#6d626b}.choice.selected .choice-badge{background:var(--pink);color:#fff}.choice-copy strong{display:block;font-size:18px;line-height:1.5}.choice-copy span{display:block;margin-top:6px;color:#8b8189;font-size:13px;line-height:1.55}.choice-arrow{position:absolute;right:22px;top:50%;translate:0 -50%;font-size:24px;color:#b4abb1}.quiz-foot{display:flex;justify-content:flex-start;margin-top:16px}
.result-shell{--type-primary:#ff5a78;--type-secondary:#293f58;--type-accent:#f2c94c;--type-surface:#fff3f6}.theme-prca{--type-primary:#F0645A;--type-secondary:#233A59;--type-accent:#F2C94C;--type-surface:#FFF0EC}.theme-prct{--type-primary:#2E8B83;--type-secondary:#25364A;--type-accent:#FF8A4C;--type-surface:#EAF7F5}.theme-prda{--type-primary:#F28C3C;--type-secondary:#3158A8;--type-accent:#FFF1BD;--type-surface:#FFF3E5}.theme-prdt{--type-primary:#D94B8E;--type-secondary:#6B59C9;--type-accent:#58C5D8;--type-surface:#FBEAF4}.theme-pfca{--type-primary:#6B8E4E;--type-secondary:#D8A43B;--type-accent:#3A6E8F;--type-surface:#F0F5E9}.theme-pfct{--type-primary:#54A7C7;--type-secondary:#263C5B;--type-accent:#EF6B5A;--type-surface:#EAF5F9}.theme-pfda{--type-primary:#734C8F;--type-secondary:#C84E62;--type-accent:#FFF4DD;--type-surface:#F3ECF7}.theme-pfdt{--type-primary:#A8C94A;--type-secondary:#F06070;--type-accent:#7358B8;--type-surface:#F2F8DE}.theme-srca{--type-primary:#9A6642;--type-secondary:#376F9F;--type-accent:#F6E2B3;--type-surface:#F7EFE7}.theme-srct{--type-primary:#D84A45;--type-secondary:#30323A;--type-accent:#F8F0E3;--type-surface:#FAECE9}.theme-srda{--type-primary:#52A98D;--type-secondary:#E8C44F;--type-accent:#C95B45;--type-surface:#EAF6F1}.theme-srdt{--type-primary:#72B4D4;--type-secondary:#C58E38;--type-accent:#2C4864;--type-surface:#ECF6FA}.theme-sfca{--type-primary:#735FC2;--type-secondary:#E35D84;--type-accent:#356F9F;--type-surface:#F0EDFA}.theme-sfct{--type-primary:#3F7659;--type-secondary:#CE584D;--type-accent:#EFE4D0;--type-surface:#EAF3ED}.theme-sfda{--type-primary:#319B9A;--type-secondary:#6A58B5;--type-accent:#F0C84B;--type-surface:#E7F5F4}.theme-sfdt{--type-primary:#293038;--type-secondary:#EF5B67;--type-accent:#D1DF4B;--type-surface:#ECEFF0}
.result-hero{display:grid;grid-template-columns:minmax(220px,36%) 1fr;align-items:center;min-height:410px;background:var(--type-surface);border:1px solid color-mix(in srgb,var(--type-primary) 22%,#fff);border-radius:28px;padding:22px 34px;overflow:hidden}.result-character-wrap{height:360px;display:grid;place-items:center;transform-origin:center bottom}.result-character-wrap img{width:105%;height:100%;object-fit:contain;transform-origin:center bottom}.result-eyebrow{margin:0;color:var(--type-primary);font-size:12px;font-weight:950;letter-spacing:.09em}.result-code{display:inline-block;margin-top:12px;background:#fff;border-radius:999px;padding:5px 10px;font-size:12px;color:var(--type-secondary);font-weight:900}.result-title{margin:10px 0 0;font-size:clamp(34px,4.2vw,44px);line-height:1.2;letter-spacing:-.055em}.result-summary{margin:13px 0 0;color:#615961;font-size:15px;line-height:1.85}.result-tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.result-tags span{padding:7px 10px;border-radius:999px;background:#fff;color:var(--type-secondary);font-size:11px;font-weight:900;box-shadow:0 4px 12px rgba(38,35,43,.06)}
.result-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(570px,100%);margin:22px auto 0}.result-actions button,.result-actions a{width:100%;padding-inline:14px}.result-actions a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}.result-shell .result-actions .primary{background:var(--type-primary);box-shadow:0 10px 22px color-mix(in srgb,var(--type-primary) 30%,transparent)}.result-shell .result-actions .primary:hover{background:var(--type-secondary)}.share-status{text-align:center;min-height:1.5em;color:var(--type-primary);font-size:12px;font-weight:800}
.result-section,.result-card{margin-top:28px;background:#fff;border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:0 12px 34px rgba(65,45,57,.07)}.result-section-index{margin:0 0 8px;color:var(--type-primary);font-size:10px;font-weight:950;letter-spacing:.08em}.result-section h3,.result-card h3{margin:0;font-size:21px;letter-spacing:-.035em}.detail-lead{margin:13px 0 0;color:#514b53;font-size:16px;line-height:1.95}.result-overview{border-top:6px solid var(--type-primary)}
.result-story{margin-top:34px;padding:34px;background:#fff;border:1px solid var(--line);border-radius:24px;box-shadow:0 12px 34px rgba(65,45,57,.07)}.result-story h3{margin:0;font-size:clamp(27px,4vw,36px);line-height:1.38;letter-spacing:-.045em}.story-copy{margin-top:18px}.story-copy p{margin:0;color:#514b53;font-size:15px;line-height:2}.story-copy p+p{margin-top:18px}.story-introduction{padding-bottom:26px;border-bottom:1px solid color-mix(in srgb,var(--type-primary) 24%,#fff)}.story-selection{margin-top:26px}.romance-story{border-top:8px solid var(--type-primary)}.secret-story{border-top:8px solid var(--type-secondary);background:var(--type-surface)}.selection-story{border-top:9px solid var(--type-primary)}
.scene-section{background:var(--type-surface)}.scene-list{counter-reset:scene;display:grid;gap:10px;margin:20px 0 0;padding:0;list-style:none}.scene-list li{counter-increment:scene;position:relative;padding:16px 18px 16px 58px;border:1px solid color-mix(in srgb,var(--type-primary) 18%,#fff);border-radius:16px;background:#fff;color:#514b53;line-height:1.78}.scene-list li::before{content:counter(scene);position:absolute;left:16px;top:16px;width:26px;height:26px;display:grid;place-items:center;border-radius:9px;background:var(--type-primary);color:#fff;font-size:11px;font-weight:950}.checkout-section{border-left:7px solid var(--type-secondary)}
.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:30px}.profile-card{position:relative;overflow:hidden;min-height:330px;padding:24px;border:1px solid var(--line);border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(65,45,57,.07)}.profile-card::after{content:"";position:absolute;width:94px;height:94px;right:-28px;top:-30px;border-radius:42% 58% 64% 36%;background:var(--type-accent);opacity:.3}.profile-card>span{color:var(--type-primary);font-size:10px;font-weight:950;letter-spacing:.14em}.profile-card h3{margin:9px 0 12px;font-size:20px;line-height:1.4;letter-spacing:-.035em}.profile-card p{margin:0;color:#514b53;font-size:14px;line-height:1.92}.profile-love{border-top:6px solid var(--type-primary)}.profile-work{border-top:6px solid var(--type-secondary);background:var(--type-surface)}.profile-purchase{border-top:6px solid var(--type-accent)}.sore-section{background:var(--type-secondary);color:#fff;border:0}.sore-section .result-section-index{color:var(--type-accent)}.sore-copy{margin:14px 0 0;font-size:clamp(20px,3.2vw,30px);font-weight:950;line-height:1.55;letter-spacing:-.04em}.profile-mode-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:20px}.profile-mode{padding:12px 13px;border-radius:13px;background:var(--type-surface)}.profile-mode span{display:block;color:var(--type-primary);font-size:9px;font-weight:950;letter-spacing:.08em}.profile-mode strong{display:block;margin-top:3px;font-size:13px}.annoyances-section{border-top:6px solid var(--type-primary)}
.score-list{display:grid;gap:22px;margin-top:20px}.score-row+.score-row{padding-top:20px;border-top:1px dashed var(--line)}.score-labels{display:flex;justify-content:space-between;gap:14px;font-size:12px;font-weight:900;color:#625a62;margin-bottom:7px}.score-labels span:last-child{text-align:right}.score-track{height:11px;border-radius:999px;background:#eee8eb;overflow:hidden}.score-fill{height:100%;background:var(--type-primary);border-radius:999px}.balance-0{width:0}.balance-33{width:33.333%}.balance-67{width:66.667%}.balance-100{width:100%}.score-percent{margin-top:5px;font-size:11px;color:#8f858d;font-weight:800;text-align:right}.score-explain{margin:8px 0 0;color:#655f67;font-size:13px;line-height:1.7}.score-explain strong{margin-right:8px;color:var(--type-primary)}.score-explain span{white-space:nowrap;color:var(--type-secondary);font-weight:900}
.habit-list{counter-reset:habit;display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 0;padding:0;list-style:none}.habit-list li{counter-increment:habit;position:relative;min-height:144px;padding:48px 16px 16px;border-radius:17px;background:var(--type-surface);color:#4f4951;font-size:13px;line-height:1.7}.habit-list li::before{content:"0" counter(habit);position:absolute;top:14px;left:16px;color:var(--type-primary);font-size:11px;font-weight:950;letter-spacing:.08em}
.detail-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.detail-card{position:relative;overflow:hidden;border-radius:22px;padding:25px;border:1px solid var(--line);background:#fff}.detail-card::after{content:"";position:absolute;width:90px;height:90px;right:-28px;top:-34px;border-radius:40% 60% 58% 42%;background:var(--type-accent);opacity:.28}.detail-card>span{color:var(--type-primary);font-size:10px;font-weight:950;letter-spacing:.12em}.detail-card h3{margin:6px 0 10px;font-size:19px}.detail-card p{margin:0;color:#5f5861;font-size:13px;line-height:1.8}.blind-card{background:var(--type-surface)}.blind-card>span{color:var(--type-secondary)}
.recommendation-section{overflow:hidden;border-top:6px solid var(--type-secondary)}.affiliate-disclosure{display:flex;align-items:center;gap:8px;margin-top:12px;padding:8px 10px;border-radius:10px;background:#f5f2ee;color:#655e64;font-size:10px;line-height:1.5}.affiliate-disclosure[hidden],.affiliate-credit[hidden]{display:none}.affiliate-disclosure strong{padding:2px 6px;border-radius:999px;background:var(--type-secondary);color:#fff;font-size:9px;letter-spacing:.08em}.affiliate-credit{margin:7px 0 0;color:#777078;font-size:10px}.affiliate-credit a{color:inherit}.recommendation-intro{max-width:680px;margin:12px 0 0;color:#554f57;font-size:15px;line-height:1.85}.recommendation-tip{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:start;margin-top:18px;padding:16px 18px;border-radius:16px;background:var(--type-secondary);color:#fff}.recommendation-tip strong{white-space:nowrap;color:var(--type-accent);font-size:12px}.recommendation-tip p{margin:0;font-size:13px;line-height:1.7}.recommendation-carousel{margin-top:18px}.recommendation-list{display:flex;gap:12px;margin:0;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none}.recommendation-list::-webkit-scrollbar{display:none}.recommendation-card{position:relative;overflow:hidden;flex:0 0 calc((100% - 24px)/3);min-width:0;padding:14px;border:1px solid color-mix(in srgb,var(--type-primary) 18%,#fff);border-radius:18px;background:#fff;scroll-snap-align:start}.recommendation-card.has-affiliate{border-color:color-mix(in srgb,var(--type-primary) 38%,#fff)}.recommendation-package{position:relative;height:104px;margin-bottom:14px;overflow:hidden;border-radius:13px;background:var(--type-surface)}.recommendation-package::before,.recommendation-package::after{content:"";position:absolute;transform:rotate(-12deg)}.recommendation-package::before{width:86px;height:74px;left:22px;top:18px;background:var(--type-primary);border-radius:8px}.recommendation-package::after{width:54px;height:54px;right:18px;bottom:10px;background:var(--type-accent);clip-path:polygon(50% 0,100% 100%,0 100%)}.recommendation-package.has-product-image::before,.recommendation-package.has-product-image::after{display:none}.recommendation-package img{width:100%;height:100%;object-fit:contain}.package-2::before,.package-5::before{transform:rotate(9deg);background:var(--type-secondary);border-radius:50%}.package-2::after,.package-5::after{clip-path:none;border-radius:10px;transform:rotate(18deg)}.package-3::before,.package-6::before{transform:rotate(-4deg);clip-path:polygon(50% 0,100% 45%,82% 100%,18% 100%,0 45%)}.package-3::after,.package-6::after{background:var(--type-secondary);clip-path:polygon(0 15%,100% 0,76% 100%,12% 78%)}.recommendation-label{color:var(--type-primary);font-size:10px;font-weight:950}.recommendation-card h4{margin:5px 0 8px;font-size:15px;line-height:1.45}.recommendation-reason{margin:0;color:#625b64;font-size:12px;line-height:1.7}.recommendation-hints{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}.recommendation-hints span{padding:4px 7px;border-radius:999px;background:var(--type-surface);color:var(--type-secondary);font-size:9px;font-weight:900}.recommendation-check{margin:12px 0 0;padding-top:10px;border-top:1px dashed var(--line);color:#777078;font-size:10px;line-height:1.6}.carousel-controls{display:flex;align-items:center;justify-content:center;gap:13px;margin-top:17px}.carousel-button{width:42px;height:38px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--type-secondary);font-weight:950;cursor:pointer}.carousel-button:hover:not(:disabled){background:var(--type-surface)}.carousel-button:disabled{opacity:.3;cursor:default}.carousel-status{min-width:70px;text-align:center;color:#746d75;font-size:11px;font-weight:900}.carousel-dots{display:flex;justify-content:center;gap:6px;margin-top:9px}.carousel-dots span{width:7px;height:7px;border-radius:999px;background:#d8d3d6}.carousel-dots span.active{width:19px;background:var(--type-primary)}.affiliate-offer{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:end;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.affiliate-product-title{grid-column:1/-1;font-size:12px;line-height:1.5}.affiliate-price{color:var(--type-secondary);font-size:11px;font-weight:900}.affiliate-link{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 11px;border-radius:9px;background:var(--type-primary);color:#fff;font-size:10px;font-weight:950;text-decoration:none}.affiliate-link:hover{background:var(--type-secondary)}.recommendation-dismiss{display:block;margin:7px 0 0 auto;padding:3px 1px;border:0;background:transparent;color:#8a8389;font-size:10px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.recommendation-dismiss:hover{color:var(--type-secondary)}.near-types{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.near-type{padding:18px;border-radius:17px;background:var(--type-surface);border-left:5px solid var(--type-primary)}.near-type>span{color:var(--type-primary);font-size:10px;font-weight:950;letter-spacing:.03em}.near-type h4{margin:5px 0 8px;font-size:16px}.near-type p{margin:0;color:#68616a;font-size:12px;line-height:1.65}
.type-strip{margin-top:34px}.type-strip h3{margin:0 0 12px;font-size:14px}.mini-types{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.mini-type{border-radius:14px;padding:11px 10px;background:#f7f3f5;font-size:11px;font-weight:850;color:#6f6670;min-height:62px}.mini-type span{display:block;color:#9a909a;font-size:9px}.mini-type.near{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--type-primary) 34%,#fff)}.mini-type.current{background:var(--type-primary);color:#fff;outline:none}.mini-type.current span{color:#fff;opacity:.72}
.review-section{margin-top:38px;border:0;border-top:9px solid var(--type-primary);background:var(--type-secondary);color:#fff;box-shadow:0 18px 48px color-mix(in srgb,var(--type-secondary) 24%,transparent)}.review-section .result-section-index{color:var(--type-accent)}.review-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.review-head h3{font-size:26px}.review-head p{margin:7px 0 0;max-width:560px;color:rgba(255,255,255,.76);font-size:13px;line-height:1.7}.review-stars{flex:none;color:var(--type-accent);font-size:22px;letter-spacing:.06em;white-space:nowrap}.fictional-review{margin-top:22px;padding:24px;border-radius:18px;background:#fff;color:var(--ink)}.fictional-review h4{margin:0;font-size:22px;line-height:1.45;letter-spacing:-.035em}.review-meta{margin:5px 0 0;color:var(--type-primary);font-size:10px;font-weight:900}.review-body{margin-top:18px}.review-body p{margin:0;color:#4f4951;font-size:14px;line-height:2}.review-body p+p{margin-top:15px}.review-timeline{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:20px;padding-top:18px;border-top:1px dashed var(--line)}.review-timeline span{padding:9px 11px;border-radius:10px;background:var(--type-surface);color:var(--type-secondary);font-size:10px;font-weight:850}.review-stars .empty{opacity:.35}.review-stars+.fictional-review{margin-top:20px}.review-stars:empty{display:none}.fictional-review.review-stars{display:none}.fictional-review.review-short .review-body p{font-size:16px;line-height:1.95}.fictional-review.review-short .review-timeline{display:none}
.result-utility{margin-top:34px;padding:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.result-utility h3{margin:0;font-size:18px}.utility-sore{margin:10px 0 0;color:var(--type-secondary);font-size:15px;font-weight:900;line-height:1.7}.compact-habits{margin-top:14px}.compact-habits li{min-height:auto;padding-top:42px}.compact-scores{margin-top:24px}.compact-scores .score-explain{font-size:11px}.compact-scores .score-row{opacity:.86}
.result-character-wrap.animate.motion-pull img{animation:character-enter .48s ease-out both,motion-pull 1.8s ease-in-out .55s 2}.result-character-wrap.animate.motion-snap img{animation:character-enter .48s ease-out both,motion-snap 1.6s ease-in-out .55s 2}.result-character-wrap.animate.motion-dash img{animation:character-enter .48s ease-out both,motion-dash 1.7s ease-in-out .55s 2}.result-character-wrap.animate.motion-attract img{animation:character-enter .48s ease-out both,motion-attract 1.6s ease-in-out .55s 2}.result-character-wrap.animate.motion-turn img{animation:character-enter .48s ease-out both,motion-turn 1.9s ease-in-out .55s 2}.result-character-wrap.animate.motion-tilt img{animation:character-enter .48s ease-out both,motion-tilt 1.7s ease-in-out .55s 2}.result-character-wrap.animate.motion-stamp img{animation:character-enter .48s ease-out both,motion-stamp 1.7s ease-in-out .55s 2}.result-character-wrap.animate.motion-bob img{animation:character-enter .48s ease-out both,motion-bob 1.8s ease-in-out .55s 2}.result-character-wrap.animate.motion-scan img{animation:character-enter .48s ease-out both,motion-scan 2s ease-in-out .55s 2}.result-character-wrap.animate.motion-scribble img{animation:character-enter .48s ease-out both,motion-scribble 1.7s ease-in-out .55s 2}.result-character-wrap.animate.motion-tip img{animation:character-enter .48s ease-out both,motion-tip 1.6s ease-in-out .55s 2}.result-character-wrap.animate.motion-shake img{animation:character-enter .48s ease-out both,motion-shake 1.7s ease-in-out .55s 2}.result-character-wrap.animate.motion-lift img{animation:character-enter .48s ease-out both,motion-lift 1.9s ease-in-out .55s 2}.result-character-wrap.animate.motion-sway img{animation:character-enter .48s ease-out both,motion-sway 2s ease-in-out .55s 2}
@keyframes character-enter{from{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:none}}@keyframes motion-pull{0%,100%{transform:none}48%{transform:translateX(-6px) rotate(-1.5deg)}}@keyframes motion-snap{0%,88%,100%{transform:none}92%{transform:rotate(-3deg)}96%{transform:rotate(1deg)}}@keyframes motion-dash{0%,100%{transform:none}48%{transform:translateX(7px) rotate(1deg)}}@keyframes motion-attract{0%,100%{transform:none}45%{transform:translateX(7px) rotate(2deg)}60%{transform:translateX(4px)}}@keyframes motion-turn{0%,100%{transform:none}50%{transform:rotate(-2deg) translateY(-3px)}}@keyframes motion-tilt{0%,100%{transform:none}50%{transform:rotate(2.5deg)}}@keyframes motion-stamp{0%,84%,100%{transform:none}90%{transform:translateY(5px) scale(.99)}94%{transform:translateY(-2px)}}@keyframes motion-bob{0%,100%{transform:none}50%{transform:translateY(-7px)}}@keyframes motion-scan{0%,100%{transform:none}45%{transform:translateX(-4px) rotate(-1deg)}60%{transform:translateX(4px) rotate(1deg)}}@keyframes motion-scribble{0%,86%,100%{transform:none}90%{transform:translateX(-4px) rotate(-1deg)}94%{transform:translateX(3px) rotate(1deg)}}@keyframes motion-tip{0%,100%{transform:none}50%{transform:rotate(3deg) translateX(4px)}}@keyframes motion-shake{0%,84%,100%{transform:none}88%{transform:rotate(-2deg)}92%{transform:rotate(2deg)}96%{transform:rotate(-1deg)}}@keyframes motion-lift{0%,100%{transform:none}50%{transform:translateY(-8px) rotate(-1deg)}}@keyframes motion-sway{0%,100%{transform:none}50%{transform:translateX(5px) rotate(2deg)}}
.age-layer{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:20px;background:rgba(38,29,34,.68);backdrop-filter:blur(9px)}.age-card{width:min(400px,100%);background:#fff;border-radius:24px;padding:26px;box-shadow:0 30px 78px rgba(35,23,29,.28)}.age-brand{display:flex;align-items:center;gap:9px;font-weight:950}.age-card h2{margin:19px 0 0;font-size:25px;letter-spacing:-.04em}.age-card p{margin:8px 0 0;color:#726873;font-size:14px}.age-buttons{display:grid;gap:9px;margin-top:22px}.age-buttons button{width:100%}.age-close{background:#f7f3f5;color:#4f4850;border:0}.exit-screen{min-height:100vh;display:grid;place-items:center;padding:24px;text-align:center;background:var(--paper)}.exit-screen strong{font-size:18px}.exit-screen p{font-size:13px;color:var(--muted)}
.site-footer{border-top:1px solid var(--line);background:#fff;padding:22px 0;color:var(--muted);font-size:11px}.site-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:18px}.site-footer nav{display:flex;flex-wrap:wrap;gap:14px}.site-footer a{color:#625b64;font-weight:800;text-decoration:none}.site-footer a:hover{text-decoration:underline}.brand-link{color:inherit;text-decoration:none}.info-page{min-height:calc(100vh - 64px);padding:54px 20px 76px}.info-shell{width:min(760px,100%);margin:0 auto}.info-kicker{margin:0;color:var(--pink-dark);font-size:11px;font-weight:950;letter-spacing:.1em}.info-page h1{margin:7px 0 0;font-size:clamp(32px,6vw,48px)}.info-lead{margin:10px 0 0;color:var(--muted)}.info-card{margin-top:22px;padding:25px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 10px 30px rgba(65,45,57,.06)}.info-card h2{margin:0;font-size:19px}.info-card p,.info-card li{color:#5d565f;font-size:13px;line-height:1.8}.info-card ul{margin:13px 0 0;padding-left:1.2em}.info-card li+li{margin-top:6px}.info-contact{display:inline-flex;align-items:center;justify-content:center;margin-top:12px;text-decoration:none}.info-owner{margin:24px 0 0;color:var(--muted);font-size:11px}.info-back{display:inline-block;margin-top:18px;color:var(--ink);font-size:13px;font-weight:900;text-decoration:none}
@media(max-width:820px){.site-header{height:58px;padding:0 17px}.brand-sub{display:none}.container{width:min(100% - 28px,1080px)}.hero-wrap{padding:38px 0 76px}.hero{grid-template-columns:1fr;gap:34px}.lead{font-size:15px}.preview-stack{min-height:400px}.sample-card{width:min(410px,96%)}.peek-card{width:190px}.peek-a{left:0}.peek-b{right:0}.axis-grid{grid-template-columns:1fr 1fr}.axes-section{padding-top:52px}.quiz-page,.result-page{min-height:calc(100vh - 58px)}.quiz-shell{width:calc(100% - 24px)}.choice-list{gap:14px}.choice{padding:20px 44px 20px 20px;min-height:184px}.profile-grid{grid-template-columns:1fr}.profile-card{min-height:auto}.habit-list{grid-template-columns:1fr}.habit-list li{min-height:auto}.recommendation-list{grid-template-columns:1fr}.recommendation-package{height:124px}.mini-types{grid-template-columns:1fr 1fr}}
@media(max-width:560px){h1{font-size:36px}.share-referral-inner{align-items:stretch;flex-direction:column;gap:10px}.share-referral .secondary{width:100%}.hero-actions{align-items:flex-start;flex-direction:column}.primary,.secondary{min-height:50px}.preview-stack{min-height:390px}.sample-card{min-height:350px;padding:18px;grid-template-columns:40% 60%}.sample-card h2{font-size:23px}.sample-character img{width:170%}.peek-card{display:none}.axis-grid{grid-template-columns:1fr}.axis-card{min-height:auto}.bottom-cta{padding-bottom:54px}.quiz-page,.result-page{padding-top:25px}.progress-track{margin-bottom:28px}.question-wrap h2{font-size:25px}.choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:26px}.choice{padding:14px 11px;gap:9px;min-height:178px;border-radius:16px}.choice-badge{width:32px;height:32px;border-radius:10px}.choice-copy strong{font-size:13px;line-height:1.42}.choice-copy span{margin-top:5px;font-size:10px;line-height:1.45}.choice-arrow{display:none}.result-hero{grid-template-columns:1fr;padding:18px;text-align:center}.result-character-wrap{height:280px;margin:-10px 0}.result-character-wrap img{width:100%}.result-tags{justify-content:center}.result-section,.result-card,.profile-card{padding:21px}.profile-card p{font-size:13px}.profile-mode-list{grid-template-columns:1fr}.result-title{font-size:38px}.detail-pair,.near-types{grid-template-columns:1fr}.recommendation-tip{grid-template-columns:1fr;gap:4px}.recommendation-package{height:112px}.result-actions{grid-template-columns:1fr 1fr}.result-actions .x-share-action{grid-column:1/-1}.result-actions .primary,.result-actions .secondary{min-width:0}.review-head{display:grid}.review-stars{font-size:20px}.fictional-review{padding:18px}.fictional-review h4{font-size:19px}.review-timeline{grid-template-columns:1fr}.site-footer-inner{align-items:flex-start;flex-direction:column}.info-page{padding:38px 14px 58px}.info-card{padding:20px}}
@media(max-width:900px){.recommendation-card{flex-basis:calc((100% - 12px)/2)}}
@media(max-width:560px){.result-story{padding:22px}.result-story h3{font-size:27px}.story-lead{font-size:15px}.story-chapter h4{font-size:18px}.story-chapter p,.story-copy p{font-size:14px}.recommendation-card{flex-basis:88%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.seo-type-catalog{padding:62px 0 74px;background:#fff}.seo-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.seo-type-card{display:flex;min-height:172px;flex-direction:column;padding:17px;border:1px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);text-decoration:none;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.seo-type-card:hover{transform:translateY(-2px);border-color:#ef9caf;box-shadow:0 12px 26px rgba(98,57,73,.08)}.seo-type-card small{color:var(--pink-dark);font-size:10px;font-weight:950;letter-spacing:.08em}.seo-type-card strong{margin-top:5px;font-size:17px;letter-spacing:-.02em}.seo-type-card p{margin:7px 0 12px;color:#6f6670;font-size:11px;line-height:1.65}.seo-type-tags{display:flex;flex-wrap:wrap;gap:4px;margin-top:auto}.seo-type-tags span{padding:3px 6px;border-radius:999px;background:var(--pink-soft);color:#9d3c55;font-size:8px;font-weight:900}.seo-type-profile{padding:64px 0;background:linear-gradient(180deg,#fff8fa,#fff)}.seo-type-profile-inner{max-width:900px}.seo-type-kicker{margin:0;color:var(--pink-dark);font-size:11px;font-weight:950;letter-spacing:.1em}.seo-type-profile h2{margin:7px 0 0;font-size:clamp(32px,5vw,48px);letter-spacing:-.05em}.seo-type-lead{max-width:760px;margin:13px 0 0;color:#554d56;font-size:17px;font-weight:850;line-height:1.8}.seo-type-copy{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:26px}.seo-type-copy section{padding:21px;border:1px solid var(--line);border-radius:18px;background:#fff}.seo-type-copy h3,.seo-choice-title{margin:0 0 9px;font-size:16px}.seo-type-copy p{margin:0;color:#625a62;font-size:13px;line-height:1.85}.seo-type-copy p+p{margin-top:10px}.seo-choice-title{margin-top:24px}.seo-choice-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none}.seo-choice-list li{padding:11px 12px;border-radius:12px;background:var(--pink-soft);color:#744958;font-size:11px;line-height:1.6}.seo-diagnosis-link{display:inline-flex;align-items:center;justify-content:center;margin-top:22px;text-decoration:none}
@media(max-width:900px){.seo-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.seo-type-catalog,.seo-type-profile{padding:46px 0}.seo-type-grid,.seo-type-copy,.seo-choice-list{grid-template-columns:1fr}.seo-type-card{min-height:auto}.seo-type-lead{font-size:15px}.seo-type-copy section{padding:18px}}
@media(prefers-reduced-motion:reduce){.seo-type-card{transition:none!important}}

/* 2026-08-26: white-first public palette and result-gated adult recommendations */
:root{
  --ink:#17191d;--muted:#6c727a;--line:#e2e5e9;--paper:#f7f8fa;--white:#fff;
  --pink:#20242a;--pink-dark:#111317;--pink-soft:#eef1f4;
  --shadow:0 16px 42px rgba(24,29,36,.08);
}
body{background:var(--paper)}
button:focus-visible,a:focus-visible{outline-color:rgba(32,36,42,.28)}
.site-header{background:rgba(255,255,255,.95);border-bottom-color:var(--line)}
.brand-mark{background:#17191d}
.share-referral{background:#20242a;border-bottom-color:#d8dde3}
.hero-wrap{background:#fff}
.hero-kicker{color:#30353c;box-shadow:0 5px 18px rgba(24,29,36,.06)}
.hero-kicker::before{background:#20242a}
.accent{color:#111317}
.primary{background:#20242a;box-shadow:0 10px 22px rgba(24,29,36,.16)}
.primary:hover{background:#08090b;box-shadow:0 13px 28px rgba(24,29,36,.2)}
.secondary:hover{background:#f4f6f8}
.progress-track{background:#e7eaee}
.question-number{color:#30353c}
.choice{border-color:#e1e5e9;box-shadow:0 10px 28px rgba(24,29,36,.05)}
.choice:hover{border-color:#aeb5bd;background:#fff;box-shadow:0 14px 32px rgba(24,29,36,.09)}
.choice.selected{border-color:#20242a;background:#eef1f4}
.choice-badge{background:#f0f2f4;color:#3d434b}
.result-hero,.secret-story,.review-section{background:#fff}
.result-hero{border-color:var(--line)}
.result-story{box-shadow:0 12px 34px rgba(24,29,36,.055)}
.selection-story,.romance-story,.secret-story{border-top-color:#d8dde3}
.review-section{color:var(--ink);border:1px solid var(--line);border-top:8px solid #20242a;box-shadow:0 12px 34px rgba(24,29,36,.055)}
.review-head p{color:#68707a}
.review-stars{color:#20242a}
.fictional-review{background:#f6f7f9}
.result-shell .result-actions .primary{background:#20242a;box-shadow:0 10px 22px rgba(24,29,36,.16)}
.result-shell .result-actions .primary:hover{background:#08090b}
.recommendation-section{border-top-color:#20242a}
.recommendation-gate{display:grid;justify-items:start;gap:13px;margin-top:18px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#f6f7f9}
.recommendation-gate[hidden],.recommendation-content[hidden]{display:none}
.recommendation-gate p{max-width:560px;margin:0;color:#363b42;font-size:16px;font-weight:850;line-height:1.75}
.recommendation-gate small{color:#737a83;font-size:11px}
.recommendation-open{min-width:220px}
.recommendation-tip{background:#20242a}
.recommendation-tip strong{color:#fff}
.affiliate-disclosure strong{background:#20242a}
.affiliate-link{background:#20242a}
.affiliate-link:hover{background:#08090b}
.age-layer{background:rgba(23,25,29,.72)}
.age-card{border:1px solid var(--line);box-shadow:0 30px 78px rgba(0,0,0,.22)}
.seo-type-card:hover{border-color:#aeb5bd;box-shadow:0 12px 26px rgba(24,29,36,.07)}
.seo-type-card small,.seo-type-kicker{color:#30353c}
.seo-type-tags span,.seo-choice-list li{background:#eef1f4;color:#41474f}
.seo-type-profile{background:linear-gradient(180deg,#f6f7f9,#fff)}
.fictional-review.review-stars{display:block;background:#f6f7f9}
.fictional-review.review-stars .review-meta,.fictional-review.review-stars .review-timeline{display:none}
.fictional-review.review-stars .review-body{margin-top:14px}
@media(max-width:560px){.recommendation-gate{padding:20px}.recommendation-open{width:100%;min-width:0}}
