/* The approved animal result layout, connected to the existing quiz routes. */
.result.animal-result{width:100%;max-width:430px;margin:0 auto;padding:0 23px 32px;word-break:keep-all;overflow-wrap:anywhere}
.animal-result .animal-result-header{height:56px;margin:0 -23px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.animal-result-header a{display:inline-flex;align-items:center;min-height:44px;font-size:var(--ph-size-body);font-weight:800;letter-spacing:normal;text-decoration:none;color:var(--ph-text)}
.animal-result-header>span{font-size:var(--ph-size-meta);color:var(--ph-text-muted)}
.animal-result .animal-result-header .eyebrow{font-size:var(--ph-size-meta);margin:0;color:var(--ph-text-muted)}
.animal-result .animal-hero{display:block;text-align:center;padding:8px 0 0;margin:0;border:0}
.animal-result .animal-result-identity{display:grid;justify-items:center;gap:6px}
.animal-result .animal-result-title{font-size:var(--ph-size-title);line-height:1.25;letter-spacing:-1.2px;font-weight:900;margin:0;color:var(--ph-text)}
.animal-result .result-name.result-type{display:block;font-size:18px;line-height:1.5;font-weight:600;letter-spacing:normal;color:var(--ph-text);margin:0}
.animal-result .result-thought-intro{max-width:28em;margin:0;font-size:var(--ph-size-label);line-height:1.6;color:var(--ph-text-muted)}
.animal-result .result-animal-stage{height:224px;margin:10px 0 8px;display:flex;justify-content:center;align-items:center;position:relative}
.animal-result .result-animal-stage:before{content:"";position:absolute;left:50%;bottom:4px;width:220px;height:124px;border-radius:50%;background:var(--ph-question);transform:translateX(-50%)}
.animal-result .result-animal-art{position:relative;display:block;width:220px;height:220px;object-fit:contain;aspect-ratio:auto;margin:0;border:0;outline:0;border-radius:0;box-shadow:none;background:none;background-image:none}
.animal-result .animal-hero .result-original-title{max-width:none;font-size:var(--ph-size-body);line-height:var(--ph-leading-body);letter-spacing:normal;font-weight:400;color:var(--ph-text);margin:0;text-wrap:wrap}
.animal-result .result-traits{list-style:none;padding:0;margin:0;border-top:1px solid var(--ph-border)}
.animal-result .result-traits li{display:flex;align-items:baseline;gap:10px;padding:var(--ph-space-3) 0;font-size:var(--ph-size-body);letter-spacing:normal;line-height:var(--ph-leading-body);border-bottom:1px solid var(--ph-question)}
.result-traits .dot{font-size:10px;flex:0 0 9px;color:var(--ph-text-muted)}
.animal-result .result-example{padding:11px 13px;margin:0 0 16px;background:var(--ph-question);border-left:2px solid var(--ph-text-muted);border-radius:3px;font-size:var(--ph-size-body);line-height:var(--ph-leading-body);color:var(--ph-text)}
.animal-result>.result-actions{display:flex;flex-direction:column;align-items:center;gap:5px;margin:16px 0 0}
.animal-result>.result-actions #share{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:51px;padding:12px 16px;border:0;border-radius:12px;background:var(--ph-primary);color:var(--ph-on-primary);font-size:var(--ph-size-body);line-height:var(--ph-leading-body);font-weight:700}
.animal-result>.result-actions #share svg{width:19px;height:21px;flex:none}
@media(hover:hover) and (pointer:fine){.animal-result>.result-actions #share:hover{background:var(--ph-primary-hover)}}
.animal-result .result-reading #restart-top{display:flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin:8px auto 24px;padding:8px 12px;border:0;background:transparent;color:var(--ph-text-muted);font-size:var(--ph-size-label);font-weight:400;box-shadow:none}
.animal-result .result-reading #restart-top svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.animal-result .result-down{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:44px;padding:10px 0;border:0;background:transparent;color:var(--ph-text-muted);font-size:var(--ph-size-label);font-weight:400}
.animal-result .result-down span{font-size:16px}
.animal-result .result-reading{border-top:1px solid var(--ph-border);padding-top:26px;margin-top:15px;scroll-margin-top:22px}
.animal-result .result-reading>.result-traits{border-top:0}
.animal-result .result-reading h2{font-size:var(--ph-size-section);letter-spacing:-.8px;line-height:var(--ph-leading-heading);margin:0 0 14px}
.animal-result .result-reading>p{font-size:var(--ph-size-body);line-height:var(--ph-leading-body);color:var(--ph-text);margin:0 0 23px}
.animal-result .result-reading>details{margin:0;border-top:1px solid var(--ph-border);border-bottom:1px solid var(--ph-border)}
.animal-result .result-reading>details+details{border-top:0}
.animal-result .result-reading>details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:62px;padding:17px 0;cursor:pointer;list-style:none;font-size:var(--ph-size-body);font-weight:600;color:var(--ph-text)}
.animal-result .result-reading>details>summary::-webkit-details-marker{display:none}
.animal-result .result-reading>details>summary:after{content:"+";font-size:20px;font-weight:400}
.animal-result .result-reading>details[open]>summary:after{content:"−"}
.animal-result .why-animal p{font-size:var(--ph-size-body);line-height:var(--ph-leading-body);color:var(--ph-text-muted);margin:0 0 17px}
.animal-result .why-animal a{text-underline-offset:3px}
.animal-result .personal-reading-details .philosopher-thought,.animal-result .personal-reading-details .personal-portrait{padding:16px;margin:0 0 18px}
.animal-result .personal-reading-details .personal-portrait h3{font-size:var(--ph-size-question);line-height:1.7}
.animal-result .personal-reading-details .personal-detail{padding:12px}
.animal-result .personal-reading-details .personal-traits{grid-template-columns:1fr}
.animal-result .thought-companions{margin:26px 0 0;padding:20px 16px}
.animal-result .thought-companions h2{font-size:var(--ph-size-section);margin:0 0 16px}
.animal-result .companion-grid{grid-template-columns:1fr}
.animal-result .companion-card .portrait{float:none;display:block;width:124px;height:124px;margin:12px auto;object-fit:contain;aspect-ratio:1;background:none;border:0;outline:0;box-shadow:none}
.animal-result .companion-card h4{font-size:var(--ph-size-body);line-height:var(--ph-leading-body);margin-bottom:4px}
.animal-result .companion-card p.companion-animal-name{font-size:var(--ph-size-label);color:var(--ph-text-muted);margin-bottom:14px}
.animal-result .companion-card p{font-size:var(--ph-size-body);line-height:var(--ph-leading-body)}
.animal-result .all-animals{display:block;text-align:center;font-size:var(--ph-size-label);color:var(--ph-text-muted);padding:27px 8px 3px;text-underline-offset:4px}
.animal-result .result-end{margin-top:26px;padding-top:22px;border-color:var(--ph-border)}
.animal-result .result-end .result-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.animal-result .result-end .result-actions button{font-size:var(--ph-size-label);padding:10px 14px}
.animal-result .result-letter p{font-size:var(--ph-size-body);line-height:var(--ph-leading-body)}
.animal-library .thinker-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.animal-library .thinker-card{text-align:center;padding:18px 14px}
.animal-library .thinker-card>.portrait{height:176px;width:100%;aspect-ratio:auto;object-fit:contain;background:none;border:0;outline:0;box-shadow:none;margin:0 0 14px}
.animal-library .thinker-card h2{font-size:16px;font-weight:700;line-height:1.6;margin:0 0 7px}
.animal-library .thinker-card .thinker-type{font-size:12px;line-height:1.7;color:var(--ph-text-muted);margin:0 0 10px}
.animal-library .thought-label{font-weight:600}
.animal-library .animal-type-summary{font-size:13px;line-height:1.75;color:var(--ph-text);margin:0}
.animal-result .portrait,.animal-library .portrait,.home .home-portrait{image-rendering:auto}
@media(max-width:900px){.animal-library .thinker-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.animal-library .thinker-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.animal-library .thinker-card{padding:15px 10px}.animal-library .thinker-card>.portrait{height:146px}.animal-library .thinker-card h2{font-size:14px}.animal-library .animal-type-summary{font-size:12px}.animal-library .thinker-card .thinker-type{font-size:11px}}
@media(max-height:740px) and (max-width:440px){.animal-result .animal-result-header{height:52px}.animal-result .animal-hero{padding-top:4px}.animal-result .animal-result-title{font-size:30px}.animal-result .result-animal-stage{height:200px;margin-top:8px}.animal-result .result-animal-art{height:196px;width:196px}.animal-result .result-animal-stage:before{width:196px;height:112px}.animal-result .result-example{margin-bottom:8px}}
@media(max-width:360px){.result.animal-result{padding-inline:19px}.animal-result .animal-result-header{margin-inline:-19px;padding-inline:19px}.animal-result .animal-result-title{font-size:28px}.animal-library .thinker-card>.portrait{height:120px}}
