dialog:has(.activity-dialog){width:min(680px,calc(100vw - 28px));background:#fcfbf5;border:1px solid #e0e4d6;overflow-anchor:none;box-shadow:0 24px 90px #31493633}
.activity-dialog{padding:25px 26px 20px;color:#3f5948}
.activity-dialog>.dialog-top{margin-bottom:13px;gap:12px}
.activity-dialog>.dialog-top h2{font-size:21px;letter-spacing:.035em;line-height:1.5}
.activity-dialog .close-button{background:#edf0e6;color:#72816b;border:1px solid #e2e7d9;width:40px;height:40px;flex:none}
.activity-picker{min-width:0}
.activity-intro{margin:0 0 15px;line-height:1.8}
.activity-intro p{font-size:13px;font-weight:650;color:#596b57;overflow-wrap:anywhere}
.activity-intro>span,.activity-intro>div>span{display:block;font-size:11px;color:#85907d;margin-top:2px}
.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}
.activity-card{--activity-tint:#edf1e4;--activity-ink:#526b50;position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:164px;border:1px solid #e2e4d7;border-radius:19px;padding:12px 9px 14px;background:#fffef9;color:#425743;text-align:center;box-shadow:0 3px 0 #e4e5d735;overflow:hidden;transition:background .18s,border-color .18s,box-shadow .18s,transform .18s;touch-action:manipulation}
.activity-card.tone-apricot{--activity-tint:#f4e9d6;--activity-ink:#9a7b50}
.activity-card.tone-rose{--activity-tint:#f4e5e5;--activity-ink:#a47778}
.activity-card.tone-sage{--activity-tint:#e7ede1;--activity-ink:#6f8863}
.activity-card.tone-meadow{--activity-tint:#e9eddb;--activity-ink:#81905f}
.activity-card.tone-lilac{--activity-tint:#eeE8f2;--activity-ink:#91809b}
.activity-card.tone-blue{--activity-tint:#e5edf0;--activity-ink:#708b94}
.activity-illustration{position:relative;display:grid;place-items:center;width:95px;height:84px;margin:0 0 6px;flex:none;pointer-events:none}
.activity-illustration:before{content:"";position:absolute;inset:9px 0 0;border-radius:48% 52% 46% 54% / 52% 46% 54% 48%;background:radial-gradient(ellipse,var(--activity-tint),color-mix(in srgb,var(--activity-tint),transparent 70%) 66%,transparent 70%);z-index:-1}
.activity-illustration img{display:block;width:88px;height:80px;object-fit:contain;filter:drop-shadow(0 3px 2px #555e4310);pointer-events:none}
.activity-card-copy{display:block;max-width:100%;pointer-events:none}
.activity-card-copy strong{display:block;font-size:14px;font-weight:750;line-height:1.6;overflow-wrap:anywhere}
.activity-card-copy small{display:flex;align-items:center;justify-content:center;gap:3px;color:#8a927f;font-size:11px;line-height:1.7;margin-top:3px}
.activity-arrow{position:absolute;right:9px;top:10px;width:16px;height:16px;fill:none;stroke:var(--activity-ink);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round;opacity:.65;pointer-events:none}
.activity-card:hover:not(:disabled){border-color:#b9c9ab;background:#fcfdf6;box-shadow:0 5px 15px #556b3f10;transform:translateY(-2px)}
.activity-card:not(:disabled):active{transform:translateY(1px);box-shadow:0 1px 0 #c6d0bb66}
.activity-card:focus-visible{outline:3px solid #9b805b;outline-offset:3px}
.activity-footnote{text-align:center;font-size:10px;color:#8b9681;line-height:1.9;margin:13px 0 0}
.toy-picker-intro{display:flex;align-items:center;justify-content:space-between;gap:14px}
.toy-picker-intro>div{min-width:0}
.toy-picker-intro .activity-count{flex:none;margin:0;padding:6px 11px;border:1px solid #e2e6d7;background:#f3f5ea;border-radius:13px;text-align:center;white-space:nowrap}
.activity-count b{display:block;color:#607652;font-size:19px;line-height:1.35;font-weight:700}
.activity-count b span{font-size:12px;font-weight:500;color:#8b977d}
.activity-count small{font-size:8px;line-height:1.5;color:#8a967e}
.activity-notice{margin:0 0 12px;padding:10px 13px;border-radius:12px;background:#f4f0df;border:1px solid #e7e0c7;font-size:11px;line-height:1.8;color:#8f825d}
.toy-picker-grid{max-height:min(54dvh,510px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#cad2be transparent;padding:4px 4px 8px;margin:-4px -4px -8px}
.toy-picker-card{min-height:161px;padding-top:17px;justify-content:flex-end}
.toy-picker-card .activity-illustration{width:101px;height:88px}
.toy-picker-card .activity-illustration img{width:94px;height:87px}
.toy-picker-card .activity-card-copy strong{font-size:12px;line-height:1.6}
.toy-picker-card .activity-card-copy small{font-size:9px;min-height:16px}
.activity-card--locked{background:#f6f5ee;border-color:#e7e7dc;color:#8c917d;box-shadow:none}
.activity-card--locked .activity-illustration{opacity:.53;filter:saturate(.7)}
.activity-card--locked .activity-card-copy small{color:#969b88}
.activity-lock{width:11px;height:11px;flex:none;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round;stroke-linecap:round}
.toy-picker-card.is-selected{background:#f2f6e9;border-color:#9eb58b;box-shadow:inset 0 0 0 1px #bfceae}
.activity-selected{position:absolute;top:7px;left:9px;font-size:8px;line-height:1.6;letter-spacing:.015em;color:#7a9066}
@media(max-width:540px){
 .activity-dialog{padding:19px 15px 15px}
 .activity-dialog>.dialog-top{margin-bottom:10px}
 .activity-dialog>.dialog-top h2{font-size:18px}
 .activity-dialog .close-button{width:36px;height:36px}
 .activity-intro{margin-bottom:11px}
 .activity-intro p{font-size:12px}
 .activity-intro>span,.activity-intro>div>span{font-size:10px}
 .activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .care-picker-card{min-height:139px;padding:8px 6px 10px;border-radius:17px}
 .care-picker-card .activity-illustration{width:85px;height:72px;margin-bottom:4px}
 .care-picker-card .activity-illustration img{width:79px;height:71px}
 .activity-card-copy strong{font-size:12px;line-height:1.5}
 .activity-card-copy small{font-size:10px;margin-top:3px}
 .activity-arrow{width:14px;height:14px;top:8px;right:8px}
 .activity-footnote{font-size:9px;margin-top:10px}
 .toy-picker-intro{gap:8px;align-items:flex-start}
 .toy-picker-intro .activity-count{padding:5px 7px;border-radius:11px}
 .activity-count b{font-size:17px}
 .activity-count small{font-size:7px}
 .toy-picker-card{min-height:155px;border-radius:17px;padding:15px 7px 10px}
 .toy-picker-card .activity-illustration{width:89px;height:85px}
 .toy-picker-card .activity-illustration img{width:84px;height:83px}
 .toy-picker-card .activity-card-copy strong{font-size:11px}
 .toy-picker-card .activity-card-copy small{font-size:8px}
 .activity-notice{font-size:10px;padding:8px 10px}
 .toy-picker-grid{max-height:54dvh}
}
@media(max-width:540px) and (max-height:700px){
 .activity-dialog{padding-top:15px;padding-bottom:12px}
 .care-picker-card{min-height:120px;padding-top:7px;padding-bottom:8px}
 .care-picker-card .activity-illustration{height:58px;width:76px;margin-bottom:3px}
 .care-picker-card .activity-illustration img{width:68px;height:59px}
 .activity-intro{margin-bottom:9px}
 .activity-dialog>.dialog-top{margin-bottom:7px}
 .activity-footnote{margin-top:8px;font-size:8px}
}
@media(prefers-reduced-motion:reduce){.activity-card{transition:none}.activity-card:hover:not(:disabled),.activity-card:not(:disabled):active{transform:none}}
