/* Funmello 2 — original expanded playground. System fonts, no external requests. */
:root{--bg:#fcfaf7;--surface2:#f5f1f9;--ink:#2d2538;--muted:#685e74;--violet:#7954bf;--violet-dark:#6441a5;--radius:25px}
:root[data-theme=dark]{--bg:#17131e;--surface2:#282030;--ink:#f1eaf7;--muted:#baadc9;--violet:#b497ee;--violet-dark:#9878d4}
em{font-family:var(--serif);font-weight:400;color:var(--violet)}
.container{max-width:1280px}.site-header{background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(16px)}
.brand{letter-spacing:-1.4px;font-weight:800}.brand-symbol{background:var(--violet)!important;color:white!important;border-radius:13px!important}.brand-dot{color:var(--violet)}
.nav-new{border-radius:6px;background:var(--lilac);color:var(--violet);font-size:9px}.button.primary{box-shadow:0 5px 12px #7550bb18}.button.primary:hover{box-shadow:0 8px 21px #7550bb27;transform:translateY(-2px)}.button{transition:transform .22s ease,box-shadow .22s ease,background .22s ease}.button.small{font-size:12px;min-height:42px;padding:10px 15px}
.fun-hero{position:relative;overflow:hidden;padding:55px 0 50px}.hero-halo{position:absolute;right:-100px;top:-80px;width:780px;height:780px;border-radius:50%;background:radial-gradient(ellipse,#dfd0fa42,transparent 70%);pointer-events:none}.fun-hero-grid{display:grid;grid-template-columns:1.08fr 1fr;gap:20px;align-items:center;min-height:490px}.fun-hero-copy{position:relative;z-index:2}.fun-hero-copy .eyebrow{font-size:9px;letter-spacing:.19em;display:flex;align-items:center;gap:9px}.status-dot{height:6px;width:6px;display:inline-block;background:var(--violet);border-radius:50%}.fun-hero-copy h1{font-size:clamp(47px,5.05vw,75px);line-height:1.1;letter-spacing:-.054em;position:relative}.fun-hero-copy h1 em{letter-spacing:-.055em}.hero-asterisk{display:inline-block;font-size:44px;color:#c1a253;margin-left:11px;transform:translateY(-4px);font-family:var(--sans);font-weight:400}.fun-hero-copy>p{font-size:16px;line-height:1.9;max-width:455px;margin:25px 0 29px}.hero-buttons{display:flex;gap:12px;align-items:center}.hero-buttons .button{font-size:13px;padding:15px 23px;border-radius:11px}.hero-facts{display:flex;gap:19px;margin-top:24px;flex-wrap:wrap;font-size:10px;color:var(--muted)}.hero-facts>span{display:flex;align-items:center;gap:5px}.hero-facts .icon{width:13px;height:13px;color:var(--violet)}
.fun-hero-art{position:relative;min-height:460px;isolation:isolate}.hero-orbit{position:absolute;border:1px solid #aa8bd52a;border-radius:50%;left:40px;top:35px;width:405px;height:405px;transform:rotate(-18deg)}.hero-orbit.orbit-b{width:485px;height:255px;left:0;top:100px;transform:rotate(-32deg)}.mascot-orb{position:absolute;left:182px;top:116px;width:235px;height:242px;border-radius:42% 49% 45% 40%;transform:rotate(10deg);background:linear-gradient(145deg,#d4c1f2,#c1a5e8);box-shadow:inset -20px -13px 24px #a485d42b,0 18px 38px #8460b41c;animation:mello-bob 7s ease-in-out infinite}.mascot-eye{position:absolute;top:88px;width:9px;height:15px;border-radius:50%;background:#483354}.mascot-eye.left{left:77px}.mascot-eye.right{right:77px}.mascot-smile{position:absolute;top:117px;left:99px;width:34px;height:19px;border-bottom:3px solid #674974;border-radius:0 0 50% 50%}.mascot-blush{position:absolute;top:112px;width:26px;height:12px;border-radius:50%;background:#efb8ca77}.mascot-blush.left{left:45px}.mascot-blush.right{right:45px}.hero-mini-card{position:absolute;z-index:2;background:var(--surface);border:1px solid var(--line);box-shadow:0 15px 35px #4a2b7b0c;border-radius:18px;padding:21px 22px;animation:card-hover 7s ease-in-out infinite}.hero-mini-card .tiny-label{font-size:8px;letter-spacing:.12em}.card-love{left:2px;top:82px;width:188px;height:218px;transform:rotate(-9deg);animation-delay:-3s}.hero-score{font-family:var(--serif);font-size:58px;line-height:1.15;color:var(--violet);margin-top:13px}.hero-score>span{font-family:var(--sans);font-size:22px;font-weight:500;margin-left:2px}.mini-score-bar{height:5px;margin-top:11px;margin-bottom:13px;background:var(--lilac);border-radius:5px;overflow:hidden}.mini-score-bar>i{display:block;width:96%;height:100%;background:#ad88de;border-radius:5px}.card-love .mini-note{font-size:9px}.mini-card-symbol{position:absolute;right:18px;top:20px;color:#b390d7;font-size:24px}.card-name{right:2px;top:28px;width:191px;height:152px;transform:rotate(10deg);animation-delay:-1.5s}.card-name>strong{display:block;font-family:var(--serif);font-size:41px;font-weight:400;margin-top:12px;margin-bottom:6px}.card-name>span:not(.tiny-label):not(.mini-card-symbol){font-size:9px;color:var(--muted)}.card-pet{left:81px;bottom:16px;width:249px;padding:21px 17px;display:flex;align-items:center;gap:13px;transform:rotate(3deg);animation-delay:-5s}.pet-doodle{width:53px;height:62px;display:grid;place-items:center;border-radius:40% 43% 36% 34%;background:var(--peach);color:#b48777}.pet-doodle .icon{width:30px;height:30px}.card-pet strong{font-size:27px;font-family:var(--serif);font-weight:400;display:block;line-height:1.3}.card-pet div>span:last-child{font-size:9px;color:var(--muted)}.card-pet .tiny-label{font-size:6px}.hero-floating-pill{position:absolute;bottom:149px;right:-5px;background:#f9f1dd;border:1px solid #eee4ca;border-radius:99px;font-size:9px;color:#91743d;padding:10px 13px;transform:rotate(8deg);z-index:3;box-shadow:0 10px 25px #35245208;display:flex;gap:5px;align-items:center}.hero-floating-pill .icon{width:15px;height:15px}.decor-spark{position:absolute;color:#b18dcf;font-size:37px;line-height:1}.decor-one{left:164px;top:26px}.decor-two{right:11px;bottom:44px;font-size:33px;color:#caaf68}
@keyframes mello-bob{0%,100%{translate:0 0;rotate:0deg}50%{translate:0 -11px;rotate:4deg}}@keyframes card-hover{0%,100%{translate:0 0}50%{translate:0 -8px}}
.discover-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.discover-strip>a{display:flex;gap:9px;align-items:center;font-size:12px;font-weight:600;min-height:32px}.discover-strip .icon{width:19px;height:19px;color:var(--violet)}.discover-strip>a>span{font-size:9px;font-weight:500;background:var(--surface2);padding:3px 6px;border-radius:5px;color:var(--muted)}.discover-strip>a:hover{color:var(--violet)}
.home-play-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.feature-play-card{position:relative;padding:26px 25px 33px;border:1px solid #755a9920;border-radius:20px;transition:transform .25s,box-shadow .25s;min-height:277px;overflow:hidden}.feature-play-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}.feature-icon{display:block;margin-bottom:25px}.feature-icon .icon{width:31px;height:31px;color:var(--violet)}.feature-play-card .tiny-label{font-size:7px;color:var(--muted);letter-spacing:.15em}.feature-play-card h3{font-size:21px;line-height:1.25;letter-spacing:-.04em;margin:10px 0 13px;max-width:185px}.feature-play-card p{font-size:11px;line-height:1.8}.feature-play-card .round-arrow{right:22px;top:28px;width:26px;height:26px}.feature-play-card .round-arrow .icon{width:15px}.name-home-section .name-main h3{overflow-wrap:anywhere}.name-home-section .section-heading h2{font-size:39px}.source-note{line-height:1.7}
.pet-home-banner{background:var(--peach);border:1px solid #c9a49226;border-radius:28px;display:grid;grid-template-columns:1.1fr 1fr;gap:25px;padding:50px 54px;overflow:hidden}.pet-home-banner h2{font-size:43px;line-height:1.1}.pet-home-banner p{font-size:14px;max-width:405px;margin:22px 0 25px;line-height:1.9}.pet-home-banner .button{font-size:12px}.pet-bubble-group{position:relative;min-height:230px}.pet-bubble{position:absolute;border-radius:23px;background:var(--surface);border:1px solid #b995871c;padding:22px 24px;min-width:153px;font-size:34px;font-family:var(--serif);box-shadow:0 11px 29px #8e655d0a;animation:card-hover 6s ease-in-out infinite}.pet-bubble small{font-family:var(--sans);font-size:7px;letter-spacing:.13em;display:block;margin-top:7px;color:var(--muted)}.b-one{left:6px;top:6px;transform:rotate(-10deg)}.b-two{right:0;top:35px;transform:rotate(9deg);animation-delay:-2s}.b-three{left:27px;bottom:0;transform:rotate(6deg);animation-delay:-4s}.b-four{right:15px;bottom:-13px;transform:rotate(-7deg);animation-delay:-1s;background:var(--lilac)}.together-home,.compact-cta{display:flex;align-items:center;gap:25px;padding:36px 39px;border:1px solid var(--line);background:var(--surface);border-radius:22px}.together-home>div,.compact-cta>div{flex:1}.together-home h2{font-size:29px}.together-home p,.compact-cta p{margin-top:9px;font-size:12px}.together-home .eyebrow{font-size:8px;margin-bottom:10px}.together-home .button{font-size:12px}.compact-cta h2{font-size:26px}
/* Tool discovery */
.directory-search{margin:28px auto 0;max-width:580px;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:6px 16px;box-shadow:var(--shadow)}.directory-search input{flex:1;min-width:0;border:0;padding:14px 3px;background:transparent;color:var(--ink);font-size:14px}.directory-search .icon{width:19px;color:var(--muted)}.category-tabs{display:flex;gap:9px;flex-wrap:wrap}.category-tabs button,.pet-species-tabs a{font-size:11px;padding:11px 16px;background:var(--surface);border:1px solid var(--line);border-radius:99px;min-height:42px;color:var(--muted);transition:background .2s}.category-tabs button[aria-pressed=true],.pet-species-tabs a[aria-current=page]{background:var(--violet);color:var(--bg);border-color:var(--violet)}.directory-caption{display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--muted);padding:23px 0}.play-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.play-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);background:var(--surface);padding:26px;border-radius:20px;transition:translate .22s,box-shadow .22s;min-height:281px}.play-card:hover{translate:0 -5px;box-shadow:var(--shadow)}.play-card-top{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:23px}.card-kind{font-size:7px;letter-spacing:.12em;color:var(--muted);text-align:right}.play-card h2{font-size:21px;font-weight:600;letter-spacing:-.03em;line-height:1.28;margin-bottom:12px}.play-card p{font-size:12px;line-height:1.85}.card-link{font-size:11px;color:var(--violet);margin-top:auto;padding-top:20px;display:flex;justify-content:space-between;align-items:center}.card-link .icon{width:17px;height:17px}.play-card .icon-tile{width:44px;height:44px;border-radius:14px}.pill,.privacy-chip{display:inline-flex;align-items:center;gap:5px;background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:6px 10px;font-size:9px;color:var(--muted)}.pill.soft{background:var(--lilac);color:var(--violet);border:0;font-size:8px;letter-spacing:.12em}.pill-row{display:flex;gap:8px;justify-content:center;margin-top:22px;flex-wrap:wrap}.privacy-chip{border:0;background:var(--surface2);font-size:9px}.privacy-chip .icon{width:12px;height:12px}
/* Fictional games */
.fun-intro{padding-top:26px;max-width:970px}.fun-intro .breadcrumb{margin-top:0;margin-bottom:25px;font-size:11px}.fun-title-row{display:flex;align-items:center;gap:15px;margin-bottom:20px}.fun-title-row .icon-tile{width:51px;height:51px;border-radius:16px}.fun-intro h1{font-size:clamp(33px,4.1vw,52px);max-width:900px}.fun-intro>p{max-width:700px;line-height:1.9;font-size:15px;margin-top:20px}.play-layout{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:30px;max-width:970px;margin-top:33px;align-items:stretch}.play-panel{border:1px solid var(--line);border-radius:23px;background:var(--surface);padding:30px;box-shadow:var(--shadow)}.play-panel label{display:block;font-size:12px;color:var(--ink);margin-bottom:19px}.play-panel input:not([type=radio]),.play-panel select,.play-panel textarea{display:block;width:100%;min-width:0;margin-top:8px;background:var(--bg);border:1px solid var(--line);color:var(--ink);border-radius:10px;padding:13px 12px;font-size:13px}.play-panel input::placeholder,.play-panel textarea::placeholder{color:var(--muted);opacity:.8}.play-panel textarea{resize:vertical;min-height:150px}.play-panel h2{font-size:28px;margin-bottom:23px}.play-panel .panel-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:25px}.panel-top .eyebrow{margin:0;font-size:8px}.play-panel .mini-note{font-size:10px;line-height:1.8;margin:11px 0 20px}.play-panel .button.full{width:100%;font-size:13px;min-height:49px;border-radius:12px}.entertainment-note{padding:13px 0 0;font-size:10px;line-height:1.75;text-align:center;color:var(--muted)}.bookmark-tool{display:block;margin:18px auto 0;background:none;border:0;font-size:10px;text-align:center}.bookmark-tool[aria-pressed=true]{font-weight:bold;color:var(--violet)}.choice-fieldset{border:1px solid var(--line);padding:18px;border-radius:12px;margin:0 0 23px}.choice-fieldset legend{font-size:12px;padding:0 8px}.choice-fieldset label{display:flex;align-items:center;gap:8px;margin-bottom:10px}.choice-fieldset input{accent-color:var(--violet)}.choice-fieldset label:last-child{margin:0}
.result-stage{position:relative;display:grid;align-items:center;justify-items:stretch;min-height:430px;border-radius:25px;background:radial-gradient(ellipse at 70% 10%,#e0d2fa88,transparent 65%),var(--lilac);padding:22px;isolation:isolate;overflow:hidden}.stage-spark{position:absolute;right:27px;top:15px;font-size:35px;color:#ad8ad55c}.result-placeholder{text-align:center;padding:35px 20px;grid-area:1/1}.result-placeholder>p{font-family:var(--serif);font-size:31px;line-height:1.35;color:var(--ink);margin-top:30px}.result-placeholder>span:last-child{display:block;margin-top:15px;font-size:10px;color:var(--muted)}.mello-face{width:99px;height:106px;border-radius:43% 48% 45% 40%;background:#cbb2e9;display:block;margin:auto;position:relative;animation:mello-bob 6s ease-in-out infinite}.mello-face i{position:absolute;top:38px;left:30px;width:5px;height:8px;background:#4e3763;border-radius:50%}.mello-face i:nth-child(2){left:auto;right:30px}.mello-face b{position:absolute;top:57px;left:41px;width:18px;height:10px;border-bottom:2px solid #705281;border-radius:50%}.fun-result{position:relative;z-index:3;grid-area:1/1;border:1px solid var(--line);border-radius:20px;background:var(--surface);padding:29px 24px;text-align:center;outline:none;max-width:100%;overflow-wrap:anywhere}.fun-result h2{font-size:32px;line-height:1.28;letter-spacing:-.035em;margin:24px 0 18px;color:var(--violet)}.fun-result>p{font-size:12px;line-height:1.9}.fun-result>.mini-note{font-size:9px;margin-top:20px}.result-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:22px}.result-actions .button{font-size:10px;padding:10px 13px}.result-actions .icon{width:14px;height:14px}.result-items{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin-top:17px}.result-chip{border:1px solid var(--line);background:var(--lilac);color:var(--ink);padding:7px 11px;font-size:11px;border-radius:9px;overflow-wrap:anywhere}.result-colors{display:flex;gap:9px;justify-content:center;margin:20px 0 5px}.palette-swatch{width:82px;height:72px;display:flex;align-items:end;border-radius:12px;overflow:hidden}.palette-swatch code{font-size:9px;background:#fff;color:#46354b;width:100%;padding:3px}.pop-in{animation:result-pop .4s cubic-bezier(.2,.8,.2,1) both}@keyframes result-pop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.revealing{animation:soft-pulse .65s ease-in-out infinite}@keyframes soft-pulse{50%{opacity:.6}}
.tool-reading{display:grid;grid-template-columns:1fr 1fr;gap:25px}.tool-reading .method-card{min-width:0;margin:0}.tool-reading .method-card .eyebrow{font-size:8px}.tool-reading .method-card h2{font-size:28px;max-width:350px}.tool-reading .method-card p{font-size:13px;line-height:1.95;margin-top:18px}.tool-reading a{color:var(--violet)}.example-section{padding-top:40px}.example-quote{margin:0;border-left:3px solid var(--violet);padding:23px 28px;background:var(--surface);border-radius:0 15px 15px 0;font-family:var(--serif);font-size:24px;line-height:1.6;color:var(--ink)}.example-section .mini-note{margin-top:13px}.example-section h2{font-size:27px}
/* Pet-name studio */
.pet-species-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.pet-species-tabs a{padding:9px 13px;font-size:10px;min-height:39px}.pet-generator-layout{display:grid;grid-template-columns:330px 1fr;gap:32px;align-items:start}.pet-generator-layout .section-heading{margin-bottom:22px}.pet-generator-layout .section-heading h2{font-size:28px}.pet-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.pet-result-card{position:relative;border:1px solid var(--line);background:var(--surface);border-radius:17px;padding:23px 24px;min-height:116px}.pet-result-card:nth-child(4n+1){background:var(--lilac)}.pet-result-card:nth-child(4n+2){background:var(--peach)}.pet-result-card:nth-child(4n+3){background:var(--sky)}.pet-result-card:nth-child(4n){background:var(--butter)}.pet-result-card h3{font-family:var(--serif);font-size:30px;font-weight:400;max-width:calc(100% - 23px);overflow-wrap:anywhere}.pet-result-card p{font-size:10px;margin-top:12px}.pet-result-card .save-button{position:absolute;right:12px;top:17px;font-family:var(--sans);font-size:25px;color:var(--violet)}.pet-result-card .save-button[aria-pressed=true]{background:var(--violet);color:white}.pet-saved{padding:28px 31px;background:var(--surface);border:1px solid var(--line);border-radius:20px;margin-top:30px}.pet-saved h2{font-size:24px}.pet-saved h2>span{font-family:var(--sans);background:var(--lilac);color:var(--violet);border-radius:6px;padding:3px 6px;font-size:13px;margin-left:8px}.pet-saved p{font-size:11px;margin-top:8px}.pet-saved .result-items{justify-content:start;min-height:20px}.pet-saved .button-row{margin-top:19px}.pet-saved .text-link{font-size:11px;background:transparent;border:0}.pet-example-list{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.pet-example-list>span{padding:11px 17px;border:1px solid var(--line);border-radius:11px;background:var(--surface);font-family:var(--serif);font-size:21px}
/* Safer defaults for long international names and usable touch targets. */
.name-main h3,.name-portrait h1,.discovery-card h2{overflow-wrap:anywhere}.name-card-bottom>span{overflow-wrap:anywhere}.name-card .save-button{min-width:34px;min-height:34px}.name-detail-copy p{overflow-wrap:anywhere}.name-portrait h1{font-size:clamp(30px,5vw,76px)}.filter-panel select{max-width:100%}.source-note a{text-decoration:underline}.footer-bottom a,.footer-bottom button{min-height:30px;display:inline-flex;align-items:center}.footer-top>div>a{min-height:26px}.site-footer{margin-top:45px}.bookmarked-note{font-size:11px;color:var(--muted)}
@media(min-width:1500px){.fun-hero-grid{min-height:540px}.fun-hero-art{max-width:550px;width:100%;justify-self:end}.fun-hero-copy h1{font-size:78px}}
@media(max-width:1100px){.fun-hero-copy h1{font-size:58px}.hero-asterisk{font-size:31px}.fun-hero-art{scale:.88;transform-origin:center right;margin-left:-25px}.fun-hero-grid{grid-template-columns:1fr 1fr;min-height:460px}.hero-facts{gap:11px}.hero-facts>span{font-size:9px}.home-play-grid{gap:13px}.feature-play-card{padding:23px 20px}.feature-play-card h3{font-size:19px}.discover-strip{justify-content:center;gap:13px 26px}.pet-home-banner{padding:35px}.pet-home-banner h2{font-size:37px}.pet-bubble-group{scale:.9}.play-card-grid{gap:13px}.play-card{padding:22px}.main-nav{gap:20px}.pet-generator-layout{grid-template-columns:290px 1fr;gap:24px}.together-home h2{font-size:26px}}
@media(max-width:860px){.fun-hero-grid{grid-template-columns:1fr}.fun-hero-copy{text-align:center}.fun-hero-copy h1{font-size:64px}.fun-hero-copy .eyebrow,.hero-buttons,.hero-facts{justify-content:center}.fun-hero-copy>p{margin:24px auto 28px}.fun-hero-art{width:480px;margin:0 auto;transform-origin:center;scale:.92;min-height:415px}.hero-mini-card.card-pet{bottom:-5px}.fun-hero{padding:38px 0 20px}.home-play-grid{grid-template-columns:1fr 1fr}.feature-play-card{min-height:238px}.feature-play-card h3{max-width:none}.pet-home-banner{grid-template-columns:1fr}.pet-bubble-group{width:400px;margin:0 auto;height:245px}.pet-home-banner h2{font-size:38px}.play-card-grid{grid-template-columns:1fr 1fr}.play-layout{gap:18px}.play-panel{padding:24px}.result-stage{padding:16px}.together-home{flex-wrap:wrap}.together-home .button{margin-left:90px}.pet-generator-layout{grid-template-columns:1fr}.pet-generator-layout .play-panel form{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.pet-generator-layout form>.button,.pet-generator-layout form>.form-error{grid-column:1/-1}.pet-generator-layout .play-panel h2{font-size:26px}.compact-cta{flex-wrap:wrap}.compact-cta .button{margin-left:69px}}
@media(max-width:680px){.container{width:calc(100% - 36px)}.nav-shell{width:calc(100% - 32px)}.site-header .brand{font-size:23px;max-width:calc(100vw - 135px);letter-spacing:-1px}.site-header .brand-symbol{width:29px;height:29px;border-radius:10px!important}.site-header .brand-symbol>.icon{width:21px;height:21px}.fun-hero{padding-top:31px}.fun-hero-copy .eyebrow{font-size:7px;letter-spacing:.14em;margin-bottom:20px}.fun-hero-copy h1{font-size:clamp(38px,10.7vw,53px);letter-spacing:-.055em}.hero-asterisk{font-size:26px;margin-left:5px}.fun-hero-copy>p{font-size:13px;line-height:1.85;max-width:330px;margin:21px auto 23px}.hero-buttons{gap:9px}.hero-buttons .button{font-size:11px;padding:12px 15px;border-radius:10px;min-height:46px}.hero-facts{margin-top:19px;gap:8px 13px}.hero-facts span{font-size:8px}.hero-facts .icon{width:11px;height:11px}.fun-hero-art{width:365px;min-height:325px;scale:1;margin:0 auto;max-width:100%}.hero-orbit{left:34px;top:33px;width:285px;height:285px}.hero-orbit.orbit-b{width:342px;height:170px;left:1px;top:77px}.mascot-orb{width:167px;height:178px;left:125px;top:88px}.mascot-eye{top:66px;width:6px;height:10px}.mascot-eye.left{left:54px}.mascot-eye.right{right:54px}.mascot-smile{top:85px;left:72px;width:24px;height:15px;border-width:2px}.mascot-blush{top:83px;width:20px;height:9px}.mascot-blush.left{left:31px}.mascot-blush.right{right:31px}.card-love{left:5px;top:56px;width:133px;height:164px;padding:17px 15px;border-radius:14px}.hero-mini-card .tiny-label{font-size:5px}.hero-score{font-size:42px;margin-top:10px}.hero-score>span{font-size:16px}.mini-score-bar{height:4px;margin-top:8px;margin-bottom:9px}.card-love .mini-note{font-size:6px}.mini-card-symbol{right:12px;top:12px;font-size:17px}.card-name{right:3px;top:31px;width:132px;height:109px;padding:16px 14px;border-radius:14px}.card-name>strong{font-size:29px;margin-top:8px;margin-bottom:3px}.card-name>span:not(.tiny-label):not(.mini-card-symbol){font-size:6px}.card-pet{left:69px;bottom:5px!important;width:190px;padding:14px 13px;gap:10px;border-radius:14px}.pet-doodle{width:39px;height:43px}.pet-doodle .icon{width:23px;height:23px}.card-pet strong{font-size:23px}.card-pet div>span:last-child{font-size:7px}.card-pet .tiny-label{font-size:4px}.hero-floating-pill{right:-3px;bottom:91px;font-size:6px;padding:8px;gap:3px}.hero-floating-pill .icon{width:12px;height:12px}.decor-one{left:137px;top:18px;font-size:27px}.decor-two{right:9px;bottom:18px;font-size:23px}.discover-strip{gap:9px 13px;padding:19px 0}.discover-strip>a{font-size:10px;gap:6px;min-height:31px}.discover-strip .icon{width:15px;height:15px}.discover-strip>a>span{font-size:7px;padding:2px 5px}.discover-strip>a:nth-last-child(-n+2){display:none}.section{padding-top:43px;padding-bottom:15px}.section-heading h2,.name-home-section .section-heading h2{font-size:31px}.section-heading>div>p{font-size:12px;line-height:1.8}.section-heading{gap:14px}.home-play-grid{gap:12px}.feature-play-card{padding:21px 17px;min-height:238px;border-radius:16px}.feature-icon{margin-bottom:20px}.feature-icon .icon{width:25px;height:25px}.feature-play-card h3{font-size:19px;margin:10px 0 11px;line-height:1.25}.feature-play-card p{font-size:10px;line-height:1.8}.feature-play-card .tiny-label{font-size:5px}.feature-play-card .round-arrow{right:13px;top:24px;width:21px;height:21px}.feature-play-card .round-arrow .icon{width:12px;height:12px}.source-note{font-size:10px}.pet-home-banner{padding:28px 25px;border-radius:22px;gap:13px}.pet-home-banner h2{font-size:33px}.pet-home-banner .eyebrow{font-size:7px}.pet-home-banner p{font-size:12px;line-height:1.85;margin:18px 0 20px}.pet-home-banner .button{font-size:11px;padding:12px 17px}.pet-bubble-group{width:290px;height:223px;min-height:223px;scale:.94;transform-origin:center;margin:0 auto}.pet-bubble{padding:17px 20px;min-width:130px;font-size:28px;border-radius:18px}.pet-bubble small{font-size:6px}.b-one{left:0;top:3px}.b-two{right:0;top:27px}.b-three{left:7px;bottom:9px}.b-four{right:0;bottom:-8px}.together-home,.compact-cta{padding:26px 22px;gap:17px}.together-home h2,.compact-cta h2{font-size:25px}.together-home .icon-tile{width:43px;height:43px;border-radius:14px}.together-home>div{flex-basis:calc(100% - 65px)}.together-home p,.compact-cta p{font-size:11px;line-height:1.8}.together-home .eyebrow{font-size:7px}.together-home .button,.compact-cta .button{margin-left:0;width:100%;font-size:11px}.world-copy h2{font-size:31px}.pill-row{gap:7px}.pill{font-size:8px;padding:5px 9px}.directory-search{margin-top:24px;padding:4px 12px;border-radius:12px}.directory-search input{font-size:12px;padding:13px 0}.category-tabs{gap:7px}.category-tabs button{font-size:9px;padding:9px 12px;min-height:39px}.directory-caption{font-size:10px;flex-direction:column;gap:7px;padding:20px 0}.play-card-grid{grid-template-columns:1fr;gap:13px}.play-card{padding:24px;min-height:225px}.play-card-top{margin-bottom:20px}.play-card h2{font-size:22px}.play-card p{font-size:12px}.card-kind{font-size:7px}.card-link{font-size:11px;padding-top:20px}.page-intro h1{font-size:40px;line-height:1.12}.page-intro>p{font-size:12px;line-height:1.85}.play-layout{grid-template-columns:1fr;gap:20px;margin-top:25px}.fun-intro{padding-top:21px}.fun-intro h1{font-size:36px;line-height:1.15}.fun-intro>p{font-size:13px;line-height:1.8;margin-top:17px}.fun-intro .breadcrumb{font-size:9px;margin-bottom:22px}.fun-title-row{gap:11px;margin-bottom:17px}.fun-title-row .icon-tile{width:45px;height:45px}.fun-title-row .pill{font-size:6px}.play-panel{padding:25px 23px;border-radius:20px}.play-panel label{font-size:12px}.play-panel input:not([type=radio]),.play-panel select,.play-panel textarea{font-size:16px;padding:12px 10px}/* avoid iOS focus zoom */.play-panel .panel-top{margin-bottom:22px}.play-panel .mini-note{font-size:10px}.play-panel .button.full{font-size:12px;min-height:49px}.entertainment-note{font-size:10px}.result-stage{min-height:300px;border-radius:20px;padding:18px}.result-placeholder>p{font-size:27px;margin-top:23px}.mello-face{scale:.87}.fun-result{padding:26px 21px}.fun-result h2{font-size:29px;margin:22px 0 16px}.fun-result>p{font-size:12px}.fun-result .pill{font-size:7px}.tool-reading{grid-template-columns:1fr;gap:16px}.tool-reading .method-card{padding:25px 23px}.tool-reading .method-card h2{font-size:27px}.tool-reading .method-card p{font-size:12px;margin-top:15px}.tool-reading .eyebrow{font-size:7px}.example-quote{font-size:21px;padding:22px}.example-section .mini-note{font-size:10px}.faq-section h2{font-size:30px}.faq-list summary{font-size:13px}.pet-species-tabs{gap:6px;margin-bottom:24px}.pet-species-tabs a{font-size:9px;padding:8px 11px;min-height:37px}.pet-generator-layout .play-panel form{display:block}.pet-generator-layout{gap:28px}.pet-results{gap:11px}.pet-result-card{padding:22px 17px;min-height:113px;border-radius:15px}.pet-result-card h3{font-size:27px}.pet-result-card p{font-size:8px;line-height:1.7}.pet-result-card .save-button{right:9px;top:15px;font-size:22px;width:28px;height:28px}.pet-saved{padding:25px 22px}.pet-saved h2{font-size:22px;line-height:1.3}.pet-saved .button-row{flex-wrap:wrap}.pet-example-list{gap:9px;margin-top:20px}.pet-example-list>span{font-size:18px;padding:9px 13px}.site-footer{margin-top:28px}.name-card .save-button{min-height:32px;min-width:32px}.name-portrait h1{font-size:clamp(27px,12vw,62px)}.icon-button{min-width:39px;min-height:39px}}
@media(max-width:360px){.container{width:calc(100% - 28px)}.fun-hero-art{scale:.9;margin:-10px 0 -15px;transform-origin:center}.hero-buttons .button{font-size:10px;padding:12px 13px}.fun-hero-copy h1{font-size:38px}.hero-asterisk{font-size:22px}.home-play-grid{grid-template-columns:1fr}.feature-play-card{min-height:210px}.pet-bubble-group{width:260px;scale:.87;transform-origin:left center}.pet-home-banner{padding:25px 20px}.fun-intro h1{font-size:32px}.result-actions .button{font-size:9px;padding:10px}.pet-result-card h3{font-size:23px}.pet-results{gap:9px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal{opacity:1;translate:0}}
@media print{.fun-hero-art,.ad-shell,.result-actions,.bookmark-tool,.play-panel,.stage-spark,.result-placeholder,.site-header,.site-footer{display:none!important}.play-layout{display:block}.fun-result{display:block!important;background:white;color:black;border:0}.fun-result h2{color:black}.result-stage{background:white;min-height:0}.tool-reading,.example-section,.faq-section{display:none}.pet-saved{break-inside:avoid}}

/* Bonus Lounge: original content, separate from personal-input tools. */
.bonus-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:70px;padding-top:78px;padding-bottom:60px}.bonus-hero h1{font-size:clamp(44px,5vw,76px);line-height:1.08;margin:19px 0 24px}.bonus-hero em{font-style:normal;color:var(--violet)}.bonus-hero p{max-width:510px}.bonus-hero .button-row{margin-top:28px}.bonus-hero .private-note{margin-top:18px}.bonus-orbit{position:relative;min-height:335px;border-radius:50%;background:radial-gradient(ellipse,#d7c2fb65,transparent 68%);display:flex;align-items:center;justify-content:center}.bonus-star{font-size:210px;line-height:1;color:var(--violet);filter:drop-shadow(0 16px 30px #7954bf35)}.bonus-float{position:absolute;padding:15px 20px;background:var(--surface);border:1px solid var(--line);border-radius:18px;box-shadow:0 12px 25px #7954bf12;font-size:13px}.float-one{top:36px;left:0;transform:rotate(-7deg)}.float-two{right:0;top:146px;transform:rotate(6deg)}.float-three{bottom:10px;left:18px;transform:rotate(-3deg)}.bonus-ad-choice{display:grid;grid-template-columns:1.6fr 1fr;gap:35px;align-items:center;padding:30px 34px;background:var(--surface2);border:1px solid var(--line);border-radius:24px}.bonus-ad-choice h2{font-size:25px;margin:8px 0 13px}.bonus-ad-choice p{font-size:13px;margin:6px 0;line-height:1.7}.bonus-choice-actions{display:flex;flex-direction:column;gap:13px;align-items:flex-start}.bonus-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.bonus-card{display:flex;flex-direction:column;gap:15px;padding:30px;border:1px solid var(--line);border-radius:26px;background:var(--surface);transition:transform .2s,box-shadow .2s}.bonus-card:hover{transform:translateY(-5px);box-shadow:0 16px 45px #7954bf12}.bonus-card h3{font-size:25px;line-height:1.23;margin:0}.bonus-card p{font-size:13px;line-height:1.8;flex:1;margin:0}.bonus-card .mini-note{font-size:11px}.bonus-faq{max-width:860px}.bonus-faq h2{margin:12px 0 25px}.bonus-pack-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:35px;align-items:start}.bonus-play-panel{padding:36px;background:var(--surface);border:1px solid var(--line);border-radius:27px;box-shadow:0 16px 45px #7954bf09}.bonus-prompt{min-height:185px;padding:20px 0}.bonus-prompt h2{font-size:30px;margin:6px 0 20px;line-height:1.2}.bonus-prompt p{font-size:17px;line-height:1.85}.bonus-play-panel>.mini-note{display:block;margin-top:22px}.bonus-pack-guide{padding:20px 10px}.bonus-pack-guide h2{font-size:25px;margin:10px 0 20px}.bonus-pack-guide ol{padding-left:21px;font-size:14px;line-height:1.85;color:var(--muted)}.bonus-pack-guide li{padding-left:7px;margin-bottom:16px}.bonus-pack-guide .text-link{display:block;margin-top:16px}.bonus-reading>.article-deck{max-width:830px;font-size:19px;line-height:1.9}.bonus-tips{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;margin-top:36px}.bonus-tips h2{font-size:22px;margin-bottom:14px}.bonus-tips p{font-size:14px;line-height:1.9}.bonus-prompt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.bonus-prompt-grid article{padding:25px;border:1px solid var(--line);border-radius:21px;background:var(--surface)}.bonus-prompt-grid h3{font-size:21px;margin:12px 0}.bonus-prompt-grid p{font-size:13px;line-height:1.85}.bonus-cta{padding:34px;border:1px solid var(--line);border-radius:25px;background:var(--surface2);display:flex;align-items:center;justify-content:space-between;gap:30px}.bonus-cta h2{font-size:27px;margin:10px 0}.bonus-cta p{max-width:680px;font-size:14px;margin:8px 0}.bonus-cta>.button{flex-shrink:0}#bonus-preference-status{font-weight:600;color:var(--violet)}
@media(max-width:850px){.bonus-hero{gap:20px}.bonus-grid,.bonus-tips,.bonus-prompt-grid{grid-template-columns:1fr 1fr}.bonus-ad-choice{grid-template-columns:1fr;gap:20px}.bonus-pack-layout{grid-template-columns:1fr}.bonus-cta{align-items:flex-start;flex-direction:column}.bonus-orbit{min-height:280px}.bonus-star{font-size:160px}.bonus-float{font-size:11px;padding:13px}.float-two{top:132px}}
@media(max-width:580px){.bonus-hero{grid-template-columns:1fr;padding-top:44px;padding-bottom:34px;gap:20px}.bonus-orbit{min-height:210px;max-width:350px;width:100%;margin:auto}.bonus-star{font-size:145px}.float-one{top:15px}.float-two{top:99px}.float-three{bottom:0}.bonus-grid,.bonus-tips,.bonus-prompt-grid{grid-template-columns:1fr}.bonus-ad-choice{padding:23px}.bonus-card{padding:25px}.bonus-play-panel{padding:24px}.bonus-prompt{min-height:215px}.bonus-prompt h2{font-size:27px}.bonus-prompt p{font-size:16px}.bonus-choice-actions .button{width:100%;white-space:normal}.bonus-cta{padding:25px}.bonus-hero h1{font-size:48px}.bonus-hero .button-row{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.bonus-card{transition:none}.bonus-card:hover{transform:none}}

/* ===== v2.2: ads, accessibility, mobile and engagement improvements ===== */
:root{--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',Arial,sans-serif}
/* Google ads: labelled, centred, space reserved so the page never jumps */
.ad-unit{display:block;width:100%;margin:30px auto;text-align:center;contain:layout}
.ad-label{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;text-align:left}
.ad-unit ins.adsbygoogle{display:block;width:100%}
.ad-d250 ins,.ad-d250 .ad-box{min-height:250px}
.ad-d120 ins,.ad-d120 .ad-box{min-height:120px}
.ad-d600 ins,.ad-d600 .ad-box{min-height:600px;width:300px}
.ad-in-grid{grid-column:1/-1;margin:8px 0}
.ad-collapsed,.ad-unit[hidden]{display:none!important}
.ad-preview .ad-box{display:grid;place-items:center;border:1px dashed var(--line);border-radius:16px;color:var(--muted);font-size:12px}
@media(max-width:820px){.ad-m280 ins,.ad-m280 .ad-box{min-height:280px}.ad-no-mobile{display:none!important}}
@media(min-width:821px){.ad-no-desktop{display:none!important}}

/* Dark theme contrast */
:root[data-theme=dark] .button.primary{color:#1a1324}
:root[data-theme=dark] .link-button.danger{color:#f08aa8}
:root[data-theme=dark] .hero-floating-pill{background:var(--butter);color:#e9d6a6;border-color:#4a4230}
.theme-button .theme-moon{display:inline-flex}
.theme-button .theme-sun{display:none}
:root[data-theme=dark] .theme-button .theme-sun{display:inline-flex}
:root[data-theme=dark] .theme-button .theme-moon{display:none}

/* Tap targets (44px) */
.icon-button,.shortlist-link,.save-button{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}
.alphabet a{min-width:40px;min-height:44px;display:inline-grid;place-items:center}
.site-footer a{padding:8px 0;display:inline-block}
.bookmark-tool{padding:12px 4px;min-height:44px}
.faq-list summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.breadcrumb{display:inline-block;padding:10px 0}

/* Readable text floors */
.tiny-label{font-size:11px}
.name-main p,.name-card-bottom{font-size:12px}
.tool-card p,.play-card p{font-size:13px}
.eyebrow{font-size:11px}
.footer-heading{font-size:13px;font-weight:600;letter-spacing:0;margin:8px 0 12px}
.footer-top>div:not(:first-child)>a{font-size:13px;margin:2px 0}

/* No iOS zoom on focus */
@media(max-width:820px){input,select,textarea{font-size:16px!important}}

/* Clickable hero cards */
a.hero-mini-card{color:inherit;text-decoration:none;transition:transform .2s}
a.hero-mini-card:hover{transform:translateY(-3px)}

/* Tools directory: compact two-column cards and one-row scrolling chips on phones */
@media(max-width:680px){
 .play-card-grid{grid-template-columns:1fr 1fr!important;gap:10px}
 .play-card{min-height:0;padding:16px}
 .play-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px}
 .play-card h2{font-size:16px}
 .play-card .card-link{display:none}
 .category-tabs,.pet-species-tabs{flex-wrap:nowrap!important;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding-bottom:4px}
 .category-tabs::-webkit-scrollbar,.pet-species-tabs::-webkit-scrollbar{display:none}
 .category-tabs button,.pet-species-tabs a{flex:none;min-height:44px;font-size:13px}
}

/* Finder filters collapse on phones */
.filter-toggle>summary{list-style:none;cursor:pointer}
.filter-toggle>summary::-webkit-details-marker{display:none}
@media(min-width:821px){.filter-toggle>summary{pointer-events:none}.filter-toggle>summary a{pointer-events:auto}}
@media(max-width:820px){.filter-toggle>summary h2::after{content:' ▾';color:var(--violet)}.filter-toggle[open]>summary h2::after{content:' ▴'}}

/* Results: what to do next */
.result-actions{display:flex;flex-wrap:wrap;gap:8px}
.result-next{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}
.result-next-links{display:grid;gap:8px;margin-top:10px}
.result-next-links a{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);font-size:14px;font-weight:600;min-height:48px}
.result-next-links a:hover{border-color:var(--violet)}
.result-next-links .icon-tile{width:32px;height:32px;flex:none}
.chip-links{display:flex;flex-wrap:wrap;gap:9px;align-items:center}
.chip-links>a{display:inline-flex;align-items:center;min-height:44px;padding:8px 16px;border:1px solid var(--line);border-radius:99px;background:var(--surface);color:var(--ink);font-size:14px}
.chip-links>a:hover{border-color:var(--violet);color:var(--violet)}
.chip-links>.eyebrow{width:100%}
.centered-row{justify-content:center}
.more-row{display:flex;justify-content:center;margin-top:24px}
.all-results{margin-top:22px;border:1px solid var(--line);border-radius:18px;padding:4px 18px;background:var(--surface)}
.all-results summary{cursor:pointer;font-weight:600;min-height:48px;display:flex;align-items:center;justify-content:space-between}
.result-pool{columns:2 260px;column-gap:28px;padding-left:22px;margin:6px 0 16px;color:var(--muted);font-size:14px;line-height:1.6}
.result-pool li{break-inside:avoid;margin-bottom:6px}
.pet-style-group{border-top:1px solid var(--line);padding:4px 0}
.pet-style-group summary{cursor:pointer;font-weight:600;min-height:48px;display:flex;align-items:center;gap:10px}
.pet-style-group summary>span:last-child{margin-left:auto;color:var(--violet)}
.pet-style-group .count{font-size:12px;color:var(--muted);font-weight:400}
.pet-style-group ul{list-style:none;padding:0;margin:4px 0 16px}
.empty-hint{color:var(--muted);font-size:14px;margin:0}
.error-page .button-row{margin-top:18px}
.pet-style-group .pet-example-list li{padding:8px 14px;border:1px solid var(--line);border-radius:99px;background:var(--surface);font-size:14px}
.hero-floating-pill{color:#6f5626}
.filter-clear{margin:0 0 6px;text-align:right}.filter-toggle>summary{pointer-events:auto}
