/* The switch belongs to the hub; none of these styles are loaded by an activity. */
.site-utilities{display:flex;align-items:center;gap:15px;flex-shrink:0;margin-left:auto}
.site-utilities .journal-link{margin-left:0}
.theme-toggle{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fffdf7;color:var(--ink);font-size:20px;line-height:1;touch-action:manipulation}
.theme-toggle:hover{background:#eaeedc}.theme-toggle:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
/* Prevent a host theme from changing an embedded document's preferred color scheme. */
.activity-stage iframe{color-scheme:light}
:root[data-theme=dark]{color-scheme:dark;--paper:#203f3d;--ink:#faf7ee;--muted:#b8cbbf;--teal:#bad8bf;--line:#47675f;--green:#31554b;--blue:#35565b;--shadow:0 10px 28px #0a211e25;--surface:#294b48;--surface-raised:#31564f;--surface-hover:#3b6257}
html[data-theme=dark]{background:var(--paper)}
[data-theme=dark] .site-header{border-color:var(--line)}
[data-theme=dark] .brand-mark{color:#faf7ee}
[data-theme=dark] .theme-toggle{background:var(--surface);border-color:#638375}
[data-theme=dark] .theme-toggle:hover,[data-theme=dark] .site-header nav a:hover{background:var(--surface-hover)}
[data-theme=dark] .site-header nav a.active,[data-theme=dark] .filter.selected{background:#dfead8;color:#203f3d;border-color:#dfead8}
[data-theme=dark] .journal-link b{color:#203f3d}
[data-theme=dark] .hero h1 span{color:#bcd8b8}
[data-theme=dark] .hero-board{background:#2c5148;border-color:#50705e}
[data-theme=dark] .hero-board:before{border-color:#8aa78b55}
[data-theme=dark] .board-pick{background:#365950;border-color:#527160;box-shadow:0 5px 0 #102e2526}
[data-theme=dark] .board-pick:nth-child(2){background:#4a573f}
[data-theme=dark] .board-pick:nth-child(3){background:#32545b}
[data-theme=dark] .board-pick:nth-child(4){background:#594e42}
[data-theme=dark] .board-browse-controls button{background:var(--surface);border-color:#6e8a76}
[data-theme=dark] .board-browse-controls button:hover:enabled{background:var(--surface-hover)}
[data-theme=dark] .hub-card,[data-theme=dark] .game-card,[data-theme=dark] .recent-card,[data-theme=dark] .journal-box,[data-theme=dark] .animal-card{background:var(--surface);border-color:var(--line)}
[data-theme=dark] .hub-card .pill{background:#36594f;border-color:#63816b;color:#deead5}
[data-theme=dark] .hub-card-bottom .open-arrow{background:#dfead8;color:#203f3d}
[data-theme=dark] .filter{background:var(--surface);border-color:var(--line)}
[data-theme=dark] .filter.selected{background:#dfead8;color:#203f3d}
[data-theme=dark] .save-heart{background:#294b48;color:#faf7ee;border:1px solid #81977a;box-shadow:0 3px 12px #0a211e26}
[data-theme=dark] .save-heart:hover{background:#3c6258}
[data-theme=dark] .save-heart[aria-pressed=true]{background:#f4d66d;color:#203f3d;border-color:#f4d66d}
[data-theme=dark] .piko-note,[data-theme=dark] .journal-top,[data-theme=dark] .about-family{background:#2c5148;border-color:#52725f}
[data-theme=dark] .lab-category-links>a{background:var(--surface);border-color:var(--line);color:var(--ink)}
[data-theme=dark] .lab-category-links small{color:var(--muted)}
[data-theme=dark] .about-age,[data-theme=dark] .about-family-mark,[data-theme=dark] .completed-tag{background:#3b5c4d;border-color:#68826b;color:#e3edd7}
[data-theme=dark] .about-mantra strong{color:#f2a584}
[data-theme=dark] .about-photo{background:var(--surface);border-color:var(--line)}
[data-theme=dark] .about-photo figcaption{background:var(--surface);border-color:var(--line);color:var(--muted)}
[data-theme=dark] .empty-shelf{background:var(--surface);border-color:#789576}
[data-theme=dark] .journal-box textarea{background:#23433e;border-color:#5b7b69;color:var(--ink)}
[data-theme=dark] .badge-item.locked .badge{background:#426050;border-color:#80927d}
[data-theme=dark] .badge-item:not(.locked) .badge{color:#203f3d}
[data-theme=dark] .reset-confirm{background:#564c37}
[data-theme=dark] .search-field{background:var(--surface);border-color:#638375}
[data-theme=dark] .search-field:focus-within{border-color:#bad8bf;box-shadow:0 0 0 3px #bad8bf20}
[data-theme=dark] .search-results{background:var(--surface);border-color:#638375;box-shadow:0 16px 50px #081e1b50}
[data-theme=dark] .search-result:hover,[data-theme=dark] .search-result[aria-selected=true]{background:var(--surface-hover)}
[data-theme=dark] .btn:not(.orange):not(.white){background:#dfead8;color:#203f3d;box-shadow:0 3px 0 #102b25}
[data-theme=dark] .btn.soft{background:#3b6257;color:#faf7ee;box-shadow:none}
[data-theme=dark] .btn.white{color:#203f3d}
[data-theme=dark] .activity-controls button,[data-theme=dark] .activity-controls a{background:#36594f;color:var(--ink)}
[data-theme=dark] .activity-controls .activity-save[aria-pressed=true]{background:#f4d66d;color:#203f3d}
[data-theme=dark] .toast{background:#dfead8;color:#203f3d;box-shadow:0 6px 35px #0a211e40}
[data-theme=dark] .skip-link{background:#f4d66d;color:#203f3d}
[data-theme=dark] :is(button,a,textarea):focus-visible{outline-color:#f4d66d}
@media(min-width:1101px) and (max-width:1250px){.site-header{gap:16px;padding-left:30px;padding-right:30px}.site-header nav a{padding-left:11px;padding-right:11px}}
@media(max-width:800px){.site-utilities{gap:12px}}
@media(max-width:560px){.site-utilities{gap:10px}.site-utilities .journal-link>span:first-child{display:none}}
@media(max-width:360px){.site-utilities .journal-link>span:first-child{display:inline}.site-header .brand-mark{width:42px;height:42px;font-size:40px}.site-header .brand b{font-size:20px}}
