.character-section{padding-block:54px 64px;scroll-margin-top:24px}.character-heading{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-bottom:28px}.character-heading h2{font-size:clamp(28px,3.5vw,40px);line-height:1.35;margin:6px 0 16px}.character-intro{color:#647063;line-height:1.9;font-size:14px;margin:0}.character-stamp{display:flex;align-items:center;gap:12px;flex-shrink:0;transform:rotate(3deg);padding:8px 22px 8px 8px;border:1px solid #cbd7de;border-radius:60px;background:#edf2f5;color:#50748a;font-size:14px}.character-stamp img{width:76px;height:76px;object-fit:cover;border-radius:50%}.character-stamp small{font-size:10px;letter-spacing:1px}.character-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.character-card{display:block;padding:0;overflow:hidden;background:#fffdf7;border:1px solid #d7dfd2;border-radius:15px;text-align:left;font:inherit;color:inherit;cursor:zoom-in;min-width:0;transition:transform .22s,box-shadow .22s}.character-art{display:block;position:relative;overflow:hidden;background:#f8f5ed}.character-art>img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;display:block;transition:transform .35s}.character-zoom{position:absolute;right:12px;bottom:12px;border:1px solid #b8cbd1;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;color:#456c82;background:#fffdf5e8}.character-copy{display:flex;flex-direction:column;gap:8px;padding:19px 16px 22px}.character-copy>small{font-size:9px;letter-spacing:1px;color:#7c95a3}.character-copy>strong{font-size:21px;line-height:1.35}.character-copy>span{font-size:12px;line-height:1.85;color:#727a6d}.character-card:focus-visible,.character-extras summary:focus-visible,.character-mood:focus-visible{outline:3px solid #7398af;outline-offset:4px}@media(hover:hover){.character-card:hover{transform:translateY(-6px);box-shadow:0 16px 30px #375a4b1c}.character-card:hover img{transform:scale(1.025)}}.character-card:active{transform:scale(.985)}.character-extras{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:18px;margin-top:20px}.character-extras details{border:1px solid #d3dcd7;background:#f0f3ee;border-radius:12px;overflow:hidden;min-width:0}.character-extras summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:20px;color:#375748;font-size:15px;gap:12px}.character-extras summary::-webkit-details-marker{display:none}.character-extras summary>span{display:flex;flex-direction:column;gap:5px}.character-extras summary small{font-size:9px;letter-spacing:1.3px;color:#7e958a}.character-extras summary b{font-weight:400;font-size:23px}.character-extras details[open] summary b{transform:rotate(45deg)}.character-extras details>p{font-size:12px;line-height:1.9;padding:0 20px;color:#6b7a6c}.character-extras details>img{display:block;width:100%;height:auto}.character-mood-buttons{display:flex;flex-wrap:wrap;gap:8px;padding:0 18px 18px}.character-mood{font:inherit;font-size:12px;border:1px solid #bdcfd5;background:#fffdf6;color:#52788e;padding:8px 12px;border-radius:30px;cursor:pointer}.character-mood[aria-pressed=true]{background:#52788e;color:white;border-color:#52788e}#character-viewer{padding:12px;border:1px solid #cad8cb;border-radius:16px;max-width:min(900px,94vw);max-height:92dvh;background:#fffdf7;color:#284735}#character-viewer::backdrop{background:#182c24c9}#character-viewer>img{display:block;max-width:100%;width:auto;max-height:75dvh;height:auto;margin:auto;border-radius:8px}.character-viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:2px 2px 12px}.character-viewer-bar h3{margin:0;font-size:16px}.character-viewer-bar button{border:1px solid #c1d1c1;border-radius:30px;background:transparent;color:inherit;min-height:40px;padding:7px 15px;cursor:pointer;font:inherit;font-size:13px}@media(max-width:900px){.character-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.character-stamp{padding-right:12px}.character-stamp img{width:60px;height:60px}}@media(max-width:600px){.character-section{padding-block:32px 40px}.character-heading{align-items:flex-start;gap:12px;margin-bottom:22px}.character-heading h2{font-size:27px}.character-intro{font-size:12px}.character-stamp{padding:0;border:0;background:none;transform:none}.character-stamp img{width:56px;height:56px}.character-stamp>span{display:none}.character-grid{gap:12px}.character-copy{padding:13px 11px 16px;gap:7px}.character-copy>strong{font-size:18px}.character-copy>small{font-size:8px;letter-spacing:.3px}.character-copy>span{font-size:11px}.character-zoom{width:26px;height:26px;right:8px;bottom:8px;font-size:13px}.character-extras{grid-template-columns:1fr;gap:12px;margin-top:16px}.character-extras summary{padding:17px}.character-viewer-bar h3{font-size:14px}}@media(prefers-reduced-motion:reduce){.character-card,.character-card img{transition:none!important}}
.character-mood-display{padding:0 18px 22px}.character-mood-display>img{display:block;width:min(100%,340px);height:auto;aspect-ratio:1;object-fit:contain;margin:0 auto;border:1px solid #d8e0d8;border-radius:12px;background:#faf6ed}.character-mood-buttons{padding-bottom:14px}
