/* Public cartoon themes. Layout and decoration only; account/AI scopes are unchanged. */
body[data-persona=sister]{--paper:#f4f7ff;--ink:#203453;--line:#cedbf0;--space-color:#e3edff!important;--space-accent:#285aaa!important;--button:#285aaa;--theme-soft:#edf3ff;--theme-border:#cad9f1;--theme-pop:#b83e4f;--theme-shadow:#dae4f6;background:radial-gradient(ellipse at 90% 7%,#d6e5ff 0,transparent 30%),radial-gradient(circle at 0 48%,#fff0cf 0,transparent 22%),#f4f7ff}
body[data-persona=brother]{--paper:#fffcf0;--ink:#443829;--line:#ecdcae;--space-color:#fff0af!important;--space-accent:#a33b30!important;--button:#b83c32;--theme-soft:#fff8dc;--theme-border:#ecdba2;--theme-pop:#13727c;--theme-shadow:#f0e1ae;background:radial-gradient(ellipse at 94% 5%,#d7f4ef 0,transparent 30%),radial-gradient(circle at 0 45%,#ffe4c8 0,transparent 22%),#fffcf0}
body[data-persona]{font-family:ui-rounded,'PingFang SC',system-ui,sans-serif}
body[data-persona] header{border-color:var(--theme-border);max-width:1320px;height:auto;min-height:90px;flex-wrap:wrap;padding-block:17px}
body[data-persona] .brand,body[data-persona] .logo{color:var(--space-accent)}
body[data-persona] nav{display:flex}
body[data-persona] nav a:hover{color:var(--theme-pop)}
body[data-persona] .space-switch{background:#ffffffb8;border-color:var(--theme-border);color:var(--ink)}
body[data-persona] .breadcrumb{color:var(--space-accent)}
body[data-persona] .space-hero{grid-template-columns:1fr 1.08fr;gap:42px;padding:18px 0 42px;position:relative}
.space-hero-copy{min-width:0;padding-block:22px;position:relative}
.theme-kicker{display:inline-flex;padding:9px 15px;border:2px solid var(--theme-border);background:white;border-radius:12px;box-shadow:0 4px 0 var(--theme-shadow);font-size:13px;letter-spacing:.03em;font-weight:750;margin-bottom:25px;transform:rotate(-2deg);color:var(--space-accent)}
body[data-persona] .space-hero h1{font-size:clamp(35px,4.2vw,58px);line-height:1.35;letter-spacing:-1.5px;margin:21px 0;color:var(--ink)}
body[data-persona] .space-hero .eyebrow{color:var(--space-accent);font-size:10px;letter-spacing:1.4px}
body[data-persona] .space-hero p{color:#52627b;font-size:14px;line-height:2}
body[data-persona=brother] .space-hero p{color:#70614e}
body[data-persona] .space-tags{margin-top:25px;letter-spacing:2px;color:var(--space-accent)}
.theme-tags{margin-top:17px;font-size:12px;line-height:1.9;color:var(--ink);word-spacing:3px}
body[data-persona] .space-art{min-height:0;aspect-ratio:1/1;width:100%;border-radius:30px;overflow:hidden;border:4px solid white;box-shadow:0 10px 0 var(--theme-shadow),0 20px 50px #24324c14;background-size:cover;background-position:center;isolation:isolate}
body[data-persona=sister] .space-art{background-image:url('/explorers/assets/chloe-conan-theme-v1.jpg')}
body[data-persona=brother] .space-art{background-image:url('/explorers/assets/jasper-shinchan-theme-v1.jpg')}
.theme-scene-caption{position:absolute;z-index:2;left:17px;top:18px;max-width:calc(100% - 34px);font-size:9px;letter-spacing:1px;font-weight:750;color:#fff8d4;background:#173b72d9;border:1px solid #ffffff70;border-radius:30px;padding:9px 13px;line-height:1.5}
body[data-persona=brother] .theme-scene-caption{background:#fffdf1ee;color:#754c23;border-color:#edcb75}
body[data-persona] .character-button{position:absolute;right:6%;bottom:22%;width:37%;height:auto;aspect-ratio:2/3;border:3px solid #ffffffed;border-radius:22px;background:#fff6e9;box-shadow:0 7px 0 #00000020,0 12px 25px #152b4c24;transform:rotate(4deg);animation:theme-portrait-float 6s ease-in-out infinite;overflow:visible;padding:0}
body[data-persona] .character-button img{display:block;width:100%;height:100%;object-fit:cover;border-radius:18px;filter:none}
.character-name{position:absolute;left:-9px;right:-9px;bottom:-15px;border:2px solid white;border-radius:12px;padding:8px 4px;background:var(--space-accent);color:white;font-size:11px;font-weight:750;line-height:1.4;white-space:nowrap}
body[data-persona] .character-button.hello{animation:character-hello .6s ease 2}
body[data-persona] .paper-label{left:16px;right:16px;bottom:17px;border:2px solid #fff9e7;background:#fff9e7f5;color:#2e4261;border-radius:15px;box-shadow:0 4px 0 #0d2e6020;font-size:12px;line-height:1.7;padding:12px;transform:rotate(-1deg)}
body[data-persona=brother] .paper-label{border-color:#e5bd5a;color:#6b4a2e}
body[data-persona] .space-notice{margin-top:10px;background:var(--theme-soft);border:1px solid var(--theme-border);color:var(--ink)}
body[data-persona] .primary{background:var(--button);box-shadow:0 4px 0 #18273f21}
body[data-persona] .primary:hover{background:var(--theme-pop)}
body[data-persona] .secondary{border-color:var(--theme-border);background:#fff;color:var(--space-accent)}
body[data-persona] .space-section{position:relative}
body[data-persona] .thought-card,body[data-persona] .play-card,body[data-persona] .chat-panel,body[data-persona] .guestbook-compose{border-color:var(--theme-border);box-shadow:0 6px 0 var(--theme-shadow)}
body[data-persona] .thought-card:first-child{background:#fff}
body[data-persona] .thought-card:nth-child(2){background:var(--theme-soft)}
body[data-persona] .thought-card:nth-child(3){background:#fffae9}
body[data-persona] .thought-card .eyebrow{color:var(--space-accent)}
body[data-persona] .thought-card p,body[data-persona] .chat-intro>p,body[data-persona] .guestbook-intro{color:#596779}
body[data-persona] .challenge-section{background:#ffffffc4;border-color:var(--theme-border)}
body[data-persona] .choice,body[data-persona] #challenge-level,body[data-persona] #chat-form{border-color:var(--theme-border)}
body[data-persona] .choice:hover,body[data-persona] .choice.selected{border-color:var(--space-accent);background:var(--theme-soft)}
body[data-persona] .word-tile{box-shadow:0 5px 0 var(--theme-shadow)}
body[data-persona] .play-card{background:#fffefb}
body[data-persona] .poll-card{background:var(--theme-soft)}
body[data-persona] .match-card{border-color:var(--theme-border);background:var(--theme-soft);color:var(--space-accent)}
body[data-persona] .match-card.flipped{background:#fff0b1;border-color:#d0ad49;color:#614d20}
body[data-persona] .match-card.matched{background:#dcefd8;border-color:#a6cc9e;color:#3d6d3d}
body[data-persona] .poll-choice{border-color:var(--theme-border);color:var(--ink)}
body[data-persona] .poll-choice.selected{border-color:var(--space-accent)}
body[data-persona] .poll-fill{background:var(--space-color)}
body[data-persona] .space-message{background:var(--theme-soft)}
body[data-persona] .space-message.user{background:#fff0c8}
body[data-persona] .starter-prompts button{background:var(--theme-soft);border-color:var(--theme-border);color:var(--space-accent)}
body[data-persona] .guestbook-section{border-color:var(--theme-border)}
body[data-persona] .guestbook-compose input,body[data-persona] .guestbook-compose textarea,body[data-persona] .thread-continue textarea{border-color:var(--theme-border);background:#fffdf8}
body[data-persona] .postcard{background:var(--theme-soft);border-color:var(--theme-border)}
body[data-persona] .ai-turn{border-color:var(--theme-border);background:white;box-shadow:0 3px 0 var(--theme-shadow)}
body[data-persona] .thread-turn-top,body[data-persona] .thread-continue summary,body[data-persona] .thread-jump{color:var(--space-accent)}
body[data-persona] .notebook{border-color:var(--theme-border);background:#fff5d3}
body[data-persona] .next-space{box-shadow:0 5px 0 var(--theme-shadow)}
body[data-persona] .community-empty{color:#606d7e;border-color:var(--theme-border);background:#ffffff91}
body[data-persona] :is(a,button,input,textarea,select):focus-visible{outline:3px solid var(--theme-pop);outline-offset:4px}
/* The family homepage previews the two themes without changing its own layout. */
.family-home .crew-card{isolation:isolate;border-color:#fff;box-shadow:0 7px 0 #dbe4f1}
.family-home .crew-card.sister{background:#e7efff;color:#203c65}
.family-home .crew-card.brother{background:#fff0b8;color:#62412d;box-shadow:0 7px 0 #efe0ae}
.family-home .crew-card:before{content:'';position:absolute;inset:0;z-index:-1;background-position:75% center;background-size:cover;opacity:.37}
.family-home .crew-card.sister:before{background-image:linear-gradient(90deg,#edf4ff 0%,#edf4ffbb 45%,transparent 78%),url('/explorers/assets/chloe-conan-theme-v1.jpg')}
.family-home .crew-card.brother:before{background-image:linear-gradient(90deg,#fff5cf 0%,#fff5cfbb 45%,transparent 78%),url('/explorers/assets/jasper-shinchan-theme-v1.jpg')}
.family-home .crew-card .crew-info{padding-top:37px}
.family-home .crew-card .crew-info p{color:#3a4b5f;max-width:270px}
.family-home .crew-card .character{width:120px;height:180px;top:77px;right:20px!important;border:3px solid white;border-radius:18px;background-size:cover;box-shadow:0 4px 12px #23364d20;filter:none}
.family-home .crew-card .tag,.family-home .interest-tags span{background:#fffdf0e6;border-color:#b5c6e1;color:#3c526c}
.family-home .handwritten{color:#45516a;background:#fffdf1c4;border-radius:7px;padding:4px 7px}
@keyframes theme-portrait-float{0%,100%{transform:rotate(4deg) translateY(0)}50%{transform:rotate(2deg) translateY(-5px)}}
@media(max-width:1100px){body[data-persona] header{padding-inline:30px;gap:15px}body[data-persona] nav{gap:18px}body[data-persona] .space-hero{gap:26px}body[data-persona] .space-hero h1{font-size:43px}.theme-kicker{font-size:12px}.character-name{font-size:10px}.family-home .crew-card .character{width:100px;height:150px;right:12px!important;top:90px}.family-home .crew-card .crew-info p{max-width:230px}}
@media(max-width:800px){body[data-persona] header{padding:16px 22px;gap:14px}body[data-persona] .brand{font-size:21px}body[data-persona] .logo{font-size:32px}body[data-persona] nav{width:100%;order:3;justify-content:space-between;gap:10px;font-size:12px;flex-wrap:wrap}body[data-persona] .space-switch{padding:8px 10px;max-width:none;font-size:10px}body[data-persona] .space-hero{grid-template-columns:1fr;padding:4px 0 28px;gap:18px}.space-hero-copy{padding:10px 0}.theme-kicker{margin-bottom:20px}body[data-persona] .space-hero h1{font-size:clamp(33px,6vw,43px);line-height:1.36;margin-top:17px}body[data-persona] .space-hero p{font-size:13px}body[data-persona] .space-art{max-width:500px;min-height:0;border-radius:25px}body[data-persona] .space-tags{margin-top:18px}.theme-tags{margin-top:10px;font-size:11px}body[data-persona] .paper-label{font-size:11px;padding:10px;left:12px;right:12px;bottom:12px}.theme-scene-caption{font-size:8px;top:13px;left:13px;padding:7px 10px}body[data-persona] .character-button{bottom:24%;border-radius:18px}.character-name{padding:6px 2px;font-size:9px}body[data-persona] .character-button img{border-radius:14px}body[data-persona] .hero-actions{flex-wrap:wrap;gap:15px;margin-block:23px}body[data-persona] .space-notice{margin-top:12px}.family-home .crew-card .character{width:105px;height:158px;right:12px!important;top:81px}.family-home .crew-card .crew-info p{max-width:calc(100% - 80px)}.family-home .crew-card .crew-info h3{font-size:23px;max-width:calc(100% - 70px)}.family-home .crew-card .handwritten{display:none}}
@media(prefers-reduced-motion:reduce){body[data-persona] .character-button,body[data-persona] .character-button.hello{animation:none;transform:rotate(3deg)}}
