/* ZIPの45問版デザインを基準とし、結果原画・縦動画のみ統合。 */
.doc-character-art{margin:0;min-width:0;display:grid;place-items:center;align-self:center}
.doc-character-art img{display:block;width:100%;max-width:350px;height:420px;object-fit:contain;background:transparent;filter:none;animation:none}
.hatch-video.is-native-portrait video,.hatch-video.is-native-portrait.is-burst video{width:100%;height:100%;max-height:none;object-fit:contain;object-position:center;border-radius:0;mask-image:none;transition:none}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media(max-width:767px){.doc-character-art img{height:320px;max-width:280px}.tama-start input,.field input,select,textarea{font-size:16px!important}}

.tama-wordmark .site-brand-logo{display:block;width:176px;height:auto;max-width:100%;object-fit:contain}.result-toolbar .brand-logo{width:148px;height:68px;object-fit:contain}@media(max-width:767px){.tama-wordmark .site-brand-logo{width:144px}.result-toolbar .brand-logo{width:132px;height:60px}.tama-top{padding-top:8px;padding-bottom:8px}}

.tama-wordmark .site-brand-logo{width:190px;height:auto;background:transparent}.result-toolbar .brand-logo{width:152px;height:auto;background:transparent}@media(max-width:767px){.tama-wordmark .site-brand-logo{width:150px}.result-toolbar .brand-logo{width:136px;height:auto}}

/* A quieter report: hierarchy through spacing, not nested cards. */
.result .result-hero{border-radius:0;border:0;box-shadow:none;background:var(--result-tint);overflow:visible}
.result .type-kicker span{background:transparent;border:0;padding:0 10px 0 0;border-radius:0;box-shadow:none;color:var(--result-accent)}
.result .result-overview{background:transparent;border:0;box-shadow:none;border-radius:0}
.result .result-overview>div{background:transparent;box-shadow:none;border-radius:0;border:0;padding:20px 24px 20px 0}
.result .result-shortcut{background:transparent;border:0;border-radius:0;box-shadow:none;padding:8px 0 28px}
.result .trait-section,.result .guidance-section,.result .guidance-section:nth-of-type(n){background:transparent;border:0;border-radius:0;box-shadow:none;padding:32px 0;margin:0}
.result .guidance-section{border-top:1px solid #e8e8ed}
.result .guidance-row{border:0;background:transparent;border-radius:0;box-shadow:none}
.result .guidance-number{background:transparent;padding:0;border:0;border-radius:0;min-width:24px}
.result .trait-layout{display:block}.result .trait-rows{display:grid;gap:22px}
.result .trait-row,.result .trait-row:hover{display:block;width:100%;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none;transform:none;cursor:default}
.result .trait-row-heading{display:flex;align-items:center;justify-content:flex-start;gap:9px;margin-bottom:10px}
.result .trait-row-heading strong{font-size:16px;color:var(--trait-color)}
.result .trait-help{display:inline-grid;place-items:center;width:30px;height:30px;min-width:30px;border:0;border-radius:50%;background:#7d8290;color:#fff;font:800 17px/1 sans-serif;padding:0;box-shadow:none;cursor:pointer}
.trait-help:focus-visible,.sheet-close:focus-visible{outline:3px solid #427cca;outline-offset:3px}
.result .trait-track{display:block;height:10px;background:var(--trait-color);border:0;border-radius:999px;overflow:visible}
.result .trait-center{display:none}.result .trait-marker{top:50%;width:18px;height:18px;border:4px solid white;box-shadow:0 2px 7px #0002;background:var(--trait-color);transform:translate(-50%,-50%)}
.result .trait-ends{margin-top:9px;font-size:12px;color:#687083}.result .trait-note{margin-top:24px}
.result .result-index{box-shadow:none;background:white;border-radius:0}.result .result-index button{border:0;box-shadow:none;background:transparent;border-radius:0}
.result .advisor-next{border-radius:0;box-shadow:none;background:transparent;border-top:1px solid #e8e8ed;padding:36px 0}
.trait-sheet{box-sizing:border-box;width:calc(100% - 40px);max-width:560px;padding:38px;border:0;border-radius:22px;background:#fff;color:#303747;box-shadow:0 20px 80px #18203826;max-height:85dvh;overflow:auto}
.trait-sheet::backdrop{background:#1c233c66}.sheet-close{position:absolute;right:18px;top:18px;width:40px;height:40px;display:grid;place-items:center;border:1px solid #e4e5e9;border-radius:50%;background:white;color:#737986;font-size:28px;cursor:pointer}
.trait-sheet .sheet-eyebrow{font-size:13px;margin:0 0 12px;color:#687083}.trait-sheet h2{font-size:25px;line-height:1.5;color:var(--trait-color);margin:0 36px 24px 0}.trait-sheet p{font-size:15px;line-height:1.95}.sheet-hint{padding-top:20px;margin-top:24px;border-top:1px solid #ececf1}.sheet-hint h3{font-size:13px;color:var(--trait-color);margin:0}.trait-sheet .sheet-footnote{font-size:11px;color:#7c8290;margin:24px 0 0}.sheet-handle{display:none}
.tama-how,.onboarding,.contact-view{box-shadow:none}
@media(max-width:767px){
.result .result-hero{margin:0 -18px;padding:30px 24px 24px}.result .result-overview>div{padding:16px 0;border-bottom:1px solid #ececf1}.result .trait-section,.result .guidance-section{padding:28px 0}.result .trait-heading p{font-size:11px}.result .trait-rows{gap:20px}.result .trait-row-heading{gap:8px;margin-bottom:8px}.result .trait-row-heading strong{font-size:15px}.result .trait-help{width:32px;height:32px;min-width:32px}.result .trait-ends{font-size:11px}.result .trait-note{font-size:10px;line-height:1.8}.result .guidance-row dd{font-size:14px}.result .guidance-row{padding:12px 0}.result .result-index{border-bottom:1px solid #ececf1}.result .result-index button{padding:8px 12px}
.trait-sheet{position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:none;max-height:82dvh;padding:46px 24px max(28px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.sheet-handle{display:block;position:absolute;top:12px;left:calc(50% - 20px);width:40px;height:5px;border-radius:9px;background:#c5c8d0}.sheet-close{top:18px;right:18px}.trait-sheet h2{font-size:24px}.trait-sheet p{font-size:15px}
}

.tama-how{border:0;border-top:1px solid #e8e8ed;border-radius:0;background:transparent;padding-left:0;padding-right:0}.tama-benefits article{border:0;box-shadow:none;background:transparent}

/* Editorial result layout */
body:has(.result){background:#fff;color:#323b49}
.result{font-weight:400}.result .result-hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:460px;padding:48px 56px;gap:28px;background:var(--result-tint)}
.result .result-title{text-align:left;display:flex;flex-direction:column;align-items:flex-start}
.result .nickname-title{font-size:15px;font-weight:500;color:#515b69;margin:0 0 18px;line-height:1.7}
.result .character-name{font-family:'Noto Sans JP',sans-serif;font-size:clamp(28px,3.5vw,44px);line-height:1.45;font-weight:800;letter-spacing:-.035em;color:#26344b;margin:0 0 12px;overflow-wrap:anywhere}
.result .code{font-family:'Noto Sans JP',sans-serif;font-size:25px;font-weight:700;letter-spacing:.08em;line-height:1.5;color:var(--result-accent);margin:0}
.result .doc-character-art{margin:0;display:grid;place-items:center;width:100%;height:360px;position:relative;isolation:isolate}
.result .doc-character-art::before{content:'';position:absolute;bottom:12px;left:12%;right:12%;height:25px;border-radius:50%;background:var(--result-accent);opacity:.07;z-index:-1}
.result .doc-character-art img{width:100%;height:100%;max-width:350px;object-fit:contain;animation:none;filter:none}
.result-story{max-width:760px;margin:48px auto 40px;padding:0 8px}.result-story h2{font-size:24px;line-height:1.75;letter-spacing:.01em;font-weight:700;margin:0 0 22px;color:#273449;word-break:normal;overflow-wrap:anywhere;text-wrap:pretty}
.result-story>p{font-size:17px;line-height:2;font-weight:400;color:#454e5c;margin:0 0 18px}
.story-action{margin-top:28px;padding-left:20px;border-left:3px solid var(--result-accent)}.story-action>span{font-size:13px;color:var(--result-accent);font-weight:700}.story-action p{font-size:16px;line-height:1.95;margin:8px 0 0;font-weight:400}
.result .guidance-heading{font-size:24px;font-weight:700;line-height:1.5;color:#29364a}.result .guidance-row dt{font-size:15px;font-weight:700;color:#4c5667;margin-bottom:12px}.result .guidance-row dd{font-size:16px;font-weight:400;line-height:2;color:#454e5c}.result .guidance-row dd p,.result .guidance-row li{font-weight:400}.result .guidance-section{padding:36px 0}.result .trait-heading .eyebrow{display:none}.result .trait-heading h2{font-size:24px;color:#29364a}.result .trait-heading p{font-weight:400}.result .result-index button{font-weight:500}
@media(max-width:767px){
body:has(.result) .shell{padding-top:76px}.result .result-hero{grid-template-columns:1fr;gap:18px;min-height:0;padding:26px 22px 16px;margin:0 -18px;overflow:hidden}
.result .result-title{text-align:center;align-items:center}.result .nickname-title{font-size:13px;margin:0 0 9px}.result .character-name{font-size:29px;line-height:1.45;margin:0 0 7px;max-width:100%}.result .code{font-size:20px;letter-spacing:.1em}.result .doc-character-art{height:270px;max-width:300px;margin:auto}.result .doc-character-art img{height:270px;width:100%;max-width:290px}.result-story{margin:30px 0 32px;padding:0 4px}.result-story h2{font-size:21px;line-height:1.75;margin-bottom:20px}.result-story>p{font-size:16px;line-height:1.95;margin-bottom:16px}.story-action{margin-top:24px;padding-left:16px}.story-action p{font-size:15px}.result .guidance-heading{font-size:22px}.result .guidance-row dt{font-size:14px}.result .guidance-row dd{font-size:16px;line-height:1.95}.result .guidance-section{padding:30px 4px}.result .result-index{background:#ffffffed}.result .trait-heading h2{font-size:22px}.result .trait-heading p{font-size:12px;line-height:1.8}.result .trait-section{padding-left:4px;padding-right:4px}
}

.result-story h2{text-wrap:balance}.result .doc-character-art::before{bottom:16px}

.result .result-next-fixed{position:static;inset:auto;padding:24px 0 12px;display:flex;justify-content:center;background:transparent;border:0;box-shadow:none}.result .result-next-fixed .cta{width:auto;max-width:100%;padding:16px 28px;font-size:15px}.result .advisor-next small{display:none}

.result .doc-character-art svg{display:block;width:100%;height:100%;max-width:350px;overflow:visible}@media(max-width:767px){.result .doc-character-art svg{max-width:290px;height:270px}}

/* A gently rounded type system, consistent with the mascots. */
body:has(.result),.result,.result button,.trait-sheet,.trait-sheet button,.type-directory,.type-directory button,.type-info,.type-info button,.advisors-view,.advisors-view button,.profile-view,.profile-view button,.site-bottom-nav{font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN','Noto Sans JP',sans-serif!important}
.result .character-name,.result .code,.result-story h2,.result .guidance-heading,.result .guidance-row dt,.result .guidance-row dd,.result .trait-heading h2,.result .nickname-title{font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN',sans-serif!important}
.result .character-name{font-weight:700;letter-spacing:.01em;line-height:1.55;text-wrap:balance}.result .code{font-weight:700;letter-spacing:.1em}.result-story h2{font-weight:700;line-height:1.85;word-break:normal;overflow-wrap:anywhere}.result-story>p,.result .guidance-row dd{font-weight:500;line-height:2.05;letter-spacing:.025em}.result .guidance-heading{font-weight:700}.result .result-hero{background:radial-gradient(ellipse at 78% 62%,#fff9 0%,transparent 49%),var(--result-tint)}
.trait-sheet .sheet-close{top:18px;right:18px;line-height:1;padding:0;display:grid;place-items:center}.trait-sheet .sheet-eyebrow{padding-right:44px}
body{padding-bottom:84px}.site-bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;justify-content:center;gap:0;padding:7px 16px max(8px,env(safe-area-inset-bottom));background:#fffffff5;backdrop-filter:blur(12px);border-top:1px solid #e7e8ec}.site-bottom-nav button{display:grid;justify-items:center;gap:3px;flex:1;max-width:240px;border:0;background:transparent;border-radius:12px;color:#78808d;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer}.site-bottom-nav button>span{font-size:22px;line-height:1.1}.site-bottom-nav button[aria-current]{color:#aa3e77;background:#fff3f8}.is-answering .site-bottom-nav,.is-hatching .site-bottom-nav{display:none}.site-bottom-nav button:focus-visible{outline:3px solid #4992da}
.type-directory,.type-info{max-width:1000px;margin:28px auto 70px;color:#303d51}.page-kicker{font-size:13px;color:#98617e;font-weight:700;letter-spacing:.06em}.type-directory h1,.type-info h1,.advisors-view h1{font-family:'Zen Maru Gothic',sans-serif;font-weight:700;line-height:1.6;font-size:34px;color:#29374b;letter-spacing:0}.page-intro{font-size:16px;line-height:1.95;color:#687083}.axis-primer{margin:32px 0 42px;padding:24px 0;border-top:1px solid #e6e7ed;border-bottom:1px solid #e6e7ed}.axis-primer h2{font-size:20px;margin-top:0}.axis-primer p{display:flex;gap:22px;line-height:1.8;font-size:14px}.axis-primer strong{min-width:60px}.axis-primer i{font-style:normal;color:#bbc0ca;padding:0 12px}.axis-primer small{color:#78808d}.type-directory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.directory-card{display:flex;align-items:center;flex-direction:column;padding:12px 8px 22px;border:0;border-bottom:1px solid #ececf0;background:transparent;cursor:pointer;color:#303d51}.directory-card img{height:180px;width:100%;object-fit:contain;transition:transform .2s}.directory-card:hover img{transform:translateY(-4px)}.directory-card>span{font-size:16px;font-weight:700;margin-top:14px;line-height:1.7}.directory-card small{font-size:12px;color:#95677e;letter-spacing:.1em;margin-top:5px}.type-info{max-width:720px}.type-info-hero{text-align:center;padding:24px;background:#faf5f9;margin:24px 0 32px}.type-info-hero .doc-character-art{height:300px}.type-info-hero svg{height:100%;max-width:320px;width:100%}.type-info-code{color:#98617e;letter-spacing:.1em}.type-info h2{font-size:22px;line-height:1.8;margin-top:32px;font-weight:700}.type-info>p{font-size:16px;line-height:2}.type-info-note{color:#78808d}.type-info>.cta{margin:24px 0}
.advisors-view{max-width:920px;margin:30px auto 70px;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}.advisor-intro{font-size:17px;line-height:2;color:#687083}.consultation-topics{display:flex;gap:16px;flex-wrap:wrap;margin:24px 0 42px}.consultation-topics span{font-size:14px;color:#98617e;border-bottom:2px solid #e7c9da;padding-bottom:6px}.advisor-list-title{font-size:24px;font-weight:700}.advisor-preparing{font-size:13px;line-height:1.9;color:#78808d}.advisors-view .advisor-list{display:grid;grid-template-columns:1fr;gap:0}.advisors-view .advisor-card{display:grid;grid-template-columns:70px 1fr;gap:16px;padding:26px 0;border:0;border-bottom:1px solid #e6e7ed;box-shadow:none;border-radius:0;background:transparent;text-align:left}.advisors-view .advisor-avatar{width:60px;height:60px;align-self:start;background:#f3eaf1;color:#98617e;font-size:22px}.advisors-view .advisor-card-body strong{font-size:19px;line-height:1.7}.advisors-view .advisor-theme{font-size:14px;line-height:1.9;color:#687083;margin-top:8px}.advisors-view .profile-link{grid-column:2;font-size:13px;color:#98617e}.consultation-how{margin:44px 0}.consultation-how h2{font-size:22px}.consultation-how ol{padding-left:22px;line-height:2.4;font-size:15px;color:#687083}.cta:disabled{opacity:.6;cursor:default}.booking-status{margin-top:30px;padding-top:24px;border-top:1px solid #e6e7ed}.booking-status p{font-size:14px;line-height:1.9;color:#78808d}.booking-status .cta{margin-top:16px}.tama-benefits .tama-icon{width:100px;height:120px;background:transparent;box-shadow:none;border:0;border-radius:0}.tama-icon img{width:100%;height:100%;object-fit:contain}
@media(max-width:767px){.result .character-name{font-size:29px;font-weight:700}.result-story h2{font-size:21px}.result-story>p,.result .guidance-row dd{font-size:16px}.type-directory,.type-info,.advisors-view{margin-top:24px}.type-directory h1,.type-info h1,.advisors-view h1{font-size:27px}.type-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.directory-card img{height:160px}.directory-card>span{font-size:14px;text-wrap:balance}.axis-primer p{gap:12px;font-size:13px}.axis-primer i{padding:0 6px}.type-info-hero{margin-left:-10px;margin-right:-10px}.type-info-hero .doc-character-art{height:260px}.advisors-view .advisor-card{grid-template-columns:52px 1fr;gap:12px}.advisors-view .advisor-avatar{width:46px;height:46px;font-size:18px}.advisors-view .advisor-card-body strong{font-size:17px}.advisors-view .advisor-theme{font-size:14px}.advisor-intro{font-size:16px}.site-bottom-nav button{font-size:11px}.tama-benefits article{grid-template-columns:90px 1fr}.tama-benefits .tama-icon{width:80px;height:105px}.result .result-index{top:60px}}
@media(prefers-reduced-motion:reduce){.directory-card img{transition:none}}

.site-bottom-nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.site-bottom-nav button>span{display:grid;place-items:center;height:24px}

.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.result .character-name-art{width:100%;max-width:520px;margin:0!important;line-height:1}.result-title-art{display:block;width:100%;height:auto;overflow:visible}.result .result-title{gap:4px}.result .result-hero{gap:14px}@media(max-width:767px){.result .character-name-art{max-width:360px;width:100%}.result .nickname-title{margin-bottom:0}.result .result-hero{padding-top:20px;gap:4px}.result .doc-character-art{height:250px}.result .doc-character-art svg{height:250px}}

.result .character-name-art{max-width:360px;margin:0!important;width:100%}.original-result-title{display:block;width:100%;height:auto;max-height:210px;object-fit:contain}.result .result-hero{gap:0;background:radial-gradient(ellipse at 55% 50%,var(--result-tint),#fff 75%);border:0;box-shadow:none}.result .doc-character-art::before{content:none}
@media(max-width:767px){.result .character-name-art{max-width:340px}.original-result-title{max-height:145px}.result .result-hero{gap:4px;padding-top:18px}.result .doc-character-art{height:270px}.result .doc-character-art svg{height:270px}}

/* Preserve the overlapping original artwork without inventing hidden pixels. */
.result .result-hero{display:flex;flex-direction:column;gap:0;padding:20px 24px 28px;min-height:0;align-items:center}.result .result-title{display:flex;flex-direction:column;align-items:center;gap:0;width:100%}.result .nickname-title{margin:0 0 12px}.result .character-name-art{display:block;width:min(340px,100%);max-width:340px;line-height:0;margin:0!important}.original-result-title{display:block;width:100%;height:auto;max-height:none;object-fit:fill}.result .doc-character-art{display:block;width:min(340px,100%);max-width:340px;height:auto;margin:0}.result .doc-character-art svg{display:block;width:100%;height:auto;max-width:none;aspect-ratio:var(--original-ratio);overflow:hidden}.result .doc-character-art::before{content:none}
@media(max-width:767px){.result .result-hero{gap:0;padding:16px 20px 22px}.result .character-name-art,.result .doc-character-art{width:min(320px,100%);max-width:320px}.result .doc-character-art,.result .doc-character-art svg{height:auto}.original-result-title{max-height:none}}

/* Result: illustrated type name, code, original mascot, then the report. */
.result .result-hero{display:flex;flex-direction:column;align-items:center;gap:0;margin-bottom:0;padding:26px 30px 34px;background:radial-gradient(ellipse at 50% 42%,var(--result-tint) 0%,#fff 76%);overflow:visible;min-height:0}
.result .result-title{display:flex;flex-direction:column;align-items:center;gap:0;width:100%}.result .nickname-title{font-size:14px;font-weight:500;margin:0 0 18px;letter-spacing:.04em;color:#5b6571}.result .character-name-art{width:min(470px,100%);max-width:470px;margin:0!important;line-height:0}.original-result-title{width:100%;height:auto;max-height:230px;object-fit:contain;display:block}
.result .doc-character-art{display:grid;place-items:center;width:min(370px,100%);height:330px;max-width:370px;margin:18px auto 0}.result .doc-character-art svg{display:block;max-width:100%;width:100%;height:330px;aspect-ratio:auto;overflow:visible}.result .doc-character-art::before{content:none}
.result-story{max-width:720px;margin:30px auto 38px}.result-story h2{font-size:23px;line-height:1.85;text-wrap:balance}.result-story>p{font-size:17px;line-height:2.05}.type-info-hero .doc-character-art{height:300px}
@media(max-width:767px){.result .result-hero{margin:0 -18px;padding:18px 20px 24px;gap:0}.result .nickname-title{font-size:12px;margin-bottom:16px}.result .character-name-art{width:min(340px,100%);max-width:340px}.original-result-title{max-height:156px}.result .doc-character-art{height:250px;width:min(290px,100%);max-width:290px;margin:16px auto 0}.result .doc-character-art svg{height:250px;width:100%;aspect-ratio:auto}.result-story{margin:24px 0 34px;padding:0 4px}.result-story h2{font-size:21px;line-height:1.85}.result-story>p{font-size:16px;line-height:2}.result .result-reading-layout{margin-top:0}}
.result .result-title{position:relative;z-index:2}.result .doc-character-art{position:relative;z-index:1;margin-top:-38px}.result .original-result-title{position:relative;z-index:2}@media(max-width:767px){.result .doc-character-art{margin-top:-40px}}
.result .doc-character-art{isolation:isolate}.result .doc-character-art::after{content:'';position:absolute;left:12%;right:12%;bottom:4px;height:18px;z-index:-1;background:radial-gradient(ellipse,var(--result-accent),transparent 68%);opacity:.055;pointer-events:none}

.type-info-title{max-width:440px;margin:0 auto!important;line-height:0}.type-info-title .original-result-title{max-height:200px}.type-info-hero .doc-character-art{margin-top:-18px;position:relative;z-index:0}.type-info-title{position:relative;z-index:1}

/* Keep the supplied composite intact: no cropping of ears, crown, or original lettering. */
.result .character-name-art,.type-info-title{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;overflow:hidden!important;clip-path:inset(50%);white-space:nowrap}
.result .doc-character-art,.type-info-hero .doc-character-art{margin:0 auto!important;width:min(440px,100%);max-width:440px;height:auto;isolation:isolate}
.result .doc-character-art svg,.type-info-hero .doc-character-art svg{display:block;width:100%;height:auto;max-height:540px;aspect-ratio:560/700;overflow:visible}
.result .doc-character-art::after{content:none}.result .nickname-title{margin-bottom:22px}
@media(max-width:767px){.result .doc-character-art,.type-info-hero .doc-character-art{width:min(300px,100%);max-width:300px;height:auto;margin:0 auto!important}.result .doc-character-art svg,.type-info-hero .doc-character-art svg{height:auto;max-height:390px;aspect-ratio:560/700}.result .result-hero{padding-bottom:20px}.result .nickname-title{margin-bottom:18px}}
/* Readable Japanese: normal full-width flow, heavier rounded type, consistent rhythm. */
.result,.support-page,.type-info,.type-directory,.trait-sheet{font-family:'Zen Maru Gothic','Hiragino Maru Gothic ProN',sans-serif!important;color:#29344a;font-weight:500}
.result p,.result li,.result dd,.support-page p,.support-page li,.type-info p{font-size:17px!important;line-height:1.95!important;font-weight:500!important;letter-spacing:0!important;word-break:normal!important;overflow-wrap:break-word!important;text-wrap:wrap!important;line-break:strict}
.result-story h2,.result .guidance-heading,.result .trait-heading h2,.support-page h1,.support-page h2,.support-page h3{font-weight:700!important;letter-spacing:0!important;word-break:normal!important;overflow-wrap:break-word!important;text-wrap:wrap!important;line-break:strict}
.result-story h2{font-size:23px!important;line-height:1.65!important}.result .guidance-row dt{font-size:17px!important;font-weight:700!important;line-height:1.7}.result .guidance-row dd{margin-left:0}.result .trait-note,.result .trait-heading p{font-size:14px!important}.result .trait-ends{font-size:13px}.result .result-index button{font-size:14px;font-weight:700}.result .guidance-section{padding:34px 0}.result .guidance-row{padding:18px 0}.result .guidance-row li+li{margin-top:10px}
.site-bottom-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));max-width:none;padding:8px max(8px,calc((100vw - 1000px)/2)) max(9px,env(safe-area-inset-bottom));gap:2px}.site-bottom-nav button{max-width:none;min-width:0;padding:7px 2px;font-size:12px;white-space:nowrap;line-height:1.3}.is-answering .site-bottom-nav,.is-hatching .site-bottom-nav{display:none!important}
.support-page{max-width:900px;margin:30px auto 60px;padding:0 10px}.support-page h1{font-size:38px;line-height:1.5;margin:16px 0 20px}.support-page h2{font-size:25px;line-height:1.65}.support-page h3{font-size:21px;line-height:1.6}.support-page .page-kicker{font-size:13px!important;letter-spacing:.07em!important;color:#a43f79;font-weight:700!important}.support-hero{position:relative;padding:20px 0 34px;max-width:680px}.support-hero>p{max-width:600px}.support-symbol{display:inline-grid;place-items:center;width:50px;height:50px;border-radius:18px;background:#fff0bd;color:#bd5a89;font-size:30px}.service-flags{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.service-flags span{font-size:14px;font-weight:700;color:#516f62;padding:8px 12px;background:#edf6ee;border-radius:8px}.line-entry,.consult-entry{padding:30px 32px;background:#edf8f1;border-radius:20px;margin:12px 0 48px}.line-entry h2,.consult-entry h2{margin-top:0}.line-cta{display:inline-flex;justify-content:center;align-items:center;min-height:54px;gap:8px;padding:14px 24px;box-sizing:border-box;border:0;border-radius:12px;background:#138552;color:white;text-decoration:none;font:700 16px/1.6 'Zen Maru Gothic',sans-serif;cursor:pointer;max-width:100%}.line-cta:disabled{background:#dce8e0;color:#5b6c63;opacity:1;cursor:default}.link-status,.service-source p{font-size:14px!important;color:#627366}.support-section{margin:40px 0}.support-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.support-topics article>span{font-size:15px;color:#aa507e;font-weight:700}.support-topics h3{margin:10px 0}.booking-steps{list-style:none;padding:0;counter-reset:booking}.booking-steps li{counter-increment:booking;position:relative;padding:20px 0 20px 52px;border-bottom:1px solid #e8e7eb}.booking-steps li::before{content:counter(booking);position:absolute;left:0;top:22px;width:32px;height:32px;border-radius:50%;background:#f9e6ef;color:#a43f79;text-align:center;font-weight:700}.booking-steps span{display:block;color:#5d6978;font-size:15px}.support-faq{border-block:1px solid #e8e7eb;padding:20px 0}.support-faq summary{font-size:17px;font-weight:700;cursor:pointer;line-height:1.7}.service-source{margin:32px 0;color:#5a6d64}.service-source a{color:#347258;font-size:15px}.topic-options{display:grid;gap:0}.topic-options button{padding:22px 0;background:none;border:0;border-bottom:1px solid #e8e7eb;text-align:left;color:#29344a;cursor:pointer;font-family:inherit}.topic-options b{display:block;font-size:19px}.topic-options span{display:block;font-size:15px;margin-top:8px;color:#697587}.profile-invite{background:#f7f0f9;padding:28px;border-radius:20px;display:flex;align-items:center;gap:24px;justify-content:space-between}.profile-invite h2{margin-top:6px}.secondary-cta{padding:14px 20px;border:1px solid #cbb3c5;background:white;color:#894568;font:700 16px/1.6 inherit;border-radius:12px;cursor:pointer;white-space:nowrap}.entry-caption{font-size:14px!important;font-weight:700!important;color:#347258}
.sample-notice{font-size:14px!important;color:#667083!important;background:#f4f4f7;border-radius:10px;padding:14px 18px}.mentor-filters{display:flex;gap:8px;overflow:auto;margin:26px 0 6px;padding:4px 0 12px}.mentor-filters button{flex-shrink:0;padding:10px 16px;border:1px solid #e4dce3;border-radius:22px;background:white;color:#536073;font:700 14px 'Zen Maru Gothic';cursor:pointer}.mentor-filters button[aria-pressed=true]{background:#303e5a;border-color:#303e5a;color:white}.mentor-card{display:grid;grid-template-columns:110px 1fr;gap:24px;width:100%;padding:28px 0;text-align:left;border:0;border-bottom:1px solid #e5e5eb;border-radius:0;box-shadow:none;background:none;cursor:pointer;font-family:inherit;color:#29344a}.mentor-portrait{display:grid;place-items:center;width:110px;height:130px;background:linear-gradient(145deg,#f9e5ed,#e8e7f8);border-radius:16px;overflow:hidden}.mentor-portrait svg{width:75%;fill:#fff;stroke:#9d7e9b;stroke-width:2}.mentor-card-copy{display:flex;flex-direction:column;gap:9px;min-width:0}.mentor-card-copy>strong{font-size:21px;line-height:1.6}.mentor-message{font-size:16px;line-height:1.8}.sample-label{font-size:12px!important;font-weight:700;color:#72778a}.support-page .tags{display:flex;flex-wrap:wrap;gap:6px}.support-page .tags span{display:inline-block;background:#f5eef6;border:0;color:#82517b;padding:5px 9px;border-radius:6px;font-size:13px;font-weight:700}.mentor-more{font-size:14px;color:#a43f79;font-weight:700;margin-top:3px}.mentor-bottom{margin:40px 0;padding:24px 0}.mentor-profile-head{padding:24px 0 30px;border-bottom:1px solid #e8e7eb}.mentor-profile-head .mentor-portrait{width:140px;height:160px;margin-bottom:22px}.mentor-profile-head h1{font-size:30px}.mentor-topic-list{list-style:none;padding:0}.mentor-topic-list li{position:relative;padding:12px 0 12px 28px}.mentor-topic-list li::before{content:'✓';position:absolute;left:0;color:#a43f79;font-weight:700}.profile-booking{padding:26px;background:#edf8f1;border-radius:18px}.support-page button:focus-visible,.support-page a:focus-visible{outline:3px solid #57a1d9;outline-offset:4px}
@media(max-width:767px){.result p,.result li,.result dd,.support-page p,.support-page li,.type-info p{font-size:17px!important;line-height:1.9!important}.result-story h2{font-size:22px!important;line-height:1.65!important}.result-story{padding:0!important}.result .nickname-title{font-size:14px!important}.result .guidance-heading,.result .trait-heading h2{font-size:23px!important}.result .guidance-row dt{font-size:17px!important}.result .trait-note,.result .trait-heading p{font-size:14px!important}.site-bottom-nav{padding-inline:6px}.site-bottom-nav button{font-size:11px}.support-page{padding:0!important;margin:22px auto 40px}.support-page h1{font-size:29px;line-height:1.5}.support-page h2{font-size:23px}.support-hero{padding:10px 0 26px}.line-entry,.consult-entry{padding:24px 20px;margin-bottom:36px}.line-cta{width:100%;padding:14px 12px;font-size:16px}.support-topics{grid-template-columns:1fr;gap:18px}.support-topics article{padding-bottom:18px;border-bottom:1px solid #ece8eb}.support-topics p{margin-top:8px}.support-section{margin:32px 0}.profile-invite{display:block;padding:24px 20px}.secondary-cta{width:100%}.mentor-card{grid-template-columns:76px 1fr;gap:16px;padding:24px 0}.mentor-portrait{width:76px;height:100px;border-radius:12px}.mentor-card-copy>strong{font-size:19px}.mentor-message{font-size:16px}.support-page .sample-notice,.support-page .link-status,.support-page .service-source p{font-size:14px!important}.mentor-profile-head h1{font-size:27px}.profile-booking{padding:22px 20px}.result .guidance-section{padding-inline:0}.result .trait-ends{font-size:13px}.result .result-index{position:static}}
/* Keep hosting badge clear of the five navigation targets. */
#nl-badge-frame{bottom:100px!important}
/* Unified, substantial rounded typography. Original lettering and official logo stay as artwork. */
body,button,input,select,textarea,#app,.result,.support-page,.type-info,.type-directory,.trait-sheet,.site-bottom-nav,
#app h1,#app h2,#app h3,#app p,#app li,#app dd,#app dt,#app button,.site-bottom-nav button,.trait-sheet *{font-family:'M PLUS Rounded 1c','Hiragino Maru Gothic ProN',sans-serif!important}
#app{color:#28344b;font-weight:500}#app h1:not(.character-name-art):not(.type-info-title){font-size:52px!important;line-height:1.35!important;font-weight:900!important;letter-spacing:-.025em!important;text-wrap:wrap!important;word-break:normal;overflow-wrap:break-word}
#app h2{font-size:30px!important;line-height:1.5!important;font-weight:800!important;letter-spacing:-.015em!important;text-wrap:wrap!important}#app h3{font-size:23px!important;font-weight:800!important;line-height:1.55!important}
#app p,#app li,#app dd{font-weight:500!important;color:#354058}#app button,.site-bottom-nav button{font-weight:800!important}#app .page-kicker,#app .sample-label{font-weight:700!important}.result-story h2{font-size:28px!important}.result .guidance-row dd,.result .guidance-row li{font-weight:500!important}.result .guidance-row dt{font-weight:800!important}.result .nickname-title{font-weight:700!important}
.mentor-portrait img{display:block;width:100%;height:100%;object-fit:cover}.mentor-profile-head .mentor-portrait{width:170px;height:180px}.peer-status{display:block;font-size:14px!important;font-weight:700!important;color:#815875!important;line-height:1.65}.mentor-card-copy>strong{font-size:24px;font-weight:800}.producer-credit{display:flex;justify-content:center;align-items:center;gap:16px;padding:32px 12px 42px;max-width:100%;border-top:1px solid #f0e7ee;margin:32px auto 0;color:#62667a;font:700 13px/1.5 'M PLUS Rounded 1c',sans-serif}.producer-credit a{display:inline-flex;align-items:center}.producer-credit img{display:block;width:150px;height:auto;max-height:50px;object-fit:contain}.is-hatching .producer-credit{display:none}
@media(max-width:767px){#app h1:not(.character-name-art):not(.type-info-title){font-size:35px!important;line-height:1.4!important;letter-spacing:-.03em!important}#app h2{font-size:25px!important;line-height:1.6!important}#app h3{font-size:21px!important}#app p,#app li,#app dd{font-size:17px;line-height:1.85}.result-story h2{font-size:24px!important}.site-bottom-nav button{font-size:11px!important}.mentor-card-copy>strong{font-size:22px}.mentor-profile-head .mentor-portrait{width:150px;height:160px}.producer-credit{gap:12px;padding:26px 8px 32px}.producer-credit img{width:140px}.support-page .sample-notice{font-size:14px!important}.type-directory h1{max-width:100%}}

/* Less rounded: retain strong hierarchy with a clean Japanese gothic. */
body,button,input,select,textarea,#app,.result,.support-page,.type-info,.type-directory,.trait-sheet,.site-bottom-nav,
#app h1,#app h2,#app h3,#app p,#app li,#app dd,#app dt,#app button,.site-bottom-nav button,.trait-sheet *,.producer-credit{font-family:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif!important}
#app h1:not(.character-name-art):not(.type-info-title){font-weight:800!important;letter-spacing:-.025em!important}
#app h2,#app h3,#app button,.site-bottom-nav button{font-weight:700!important}

/* Original character collages bring the diagnosis world into supporting pages. */
.support-character-scene{position:relative;width:255px;height:200px;margin:8px 0 24px;isolation:isolate}.support-character-scene::before{content:'';position:absolute;inset:58px 0 5px;border-radius:50%;background:radial-gradient(ellipse,#f9e9c8 0%,#f9e9f4 55%,transparent 72%);z-index:-1}.scene-character{position:absolute;object-fit:contain;object-position:center bottom;width:145px;height:180px;bottom:10px;filter:drop-shadow(0 5px 5px #59415a12)}.scene-character-0{left:2px;transform:rotate(-7deg);z-index:1}.scene-character-1{right:0;transform:rotate(7deg);z-index:2}.scene-spark{position:absolute;color:#db9f32;font-size:30px;line-height:1;z-index:3}.spark-one{left:0;top:26px}.spark-two{right:1px;top:10px;color:#c95891}.scene-bubble{position:absolute;bottom:-7px;left:38px;z-index:4;padding:7px 14px;border-radius:16px;background:#fff7dc;color:#795c3c;font:700 13px/1.4 'Noto Sans JP',sans-serif;box-shadow:0 2px 10px #57404409}.mentor-directory>.support-character-scene{margin-top:24px}.support-hero .support-character-scene{margin-top:0}.support-hero:has(.support-character-scene){max-width:760px}
@media(min-width:900px){.support-hero .support-character-scene{float:right;margin:8px 0 22px 30px}.support-hero::after{content:'';display:block;clear:both}.mentor-directory>.support-character-scene{float:right;margin:0 0 18px 28px}.mentor-directory .sample-notice{clear:both}}
@media(max-width:767px){.support-character-scene{width:214px;height:164px;margin:4px 0 24px}.scene-character{width:122px;height:151px}.scene-bubble{left:23px;font-size:12px;padding:6px 12px}.scene-spark{font-size:25px}.support-hero h1{margin-top:26px}.mentor-directory>.support-character-scene{margin-top:14px;margin-bottom:28px}}
/* Wider supporting illustrations, with more space between the two characters. */
.support-character-scene{width:340px;height:224px;max-width:100%}.scene-character{width:172px;height:205px}.scene-character-0{left:12px}.scene-character-1{right:12px}.scene-bubble{left:50%;transform:translateX(-50%);white-space:nowrap}.spark-one{left:5px}.spark-two{right:8px}
@media(max-width:767px){.support-character-scene{width:330px;height:201px;max-width:100%;margin-bottom:26px}.scene-character{width:158px;height:183px}.scene-character-0{left:10px}.scene-character-1{right:10px}.scene-bubble{left:50%;font-size:12px}.spark-one{left:3px}.spark-two{right:4px}}
