:root{color:#263238;background:#fff8ef;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.52}.app-shell{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:28px 0 56px}.app-header{gap:24px;justify-content:space-between;margin-bottom:28px}.app-header,.brand{align-items:center;display:flex}.brand{gap:14px}.brand-mark{align-items:center;background:linear-gradient(135deg,#ffb199,#ffdf8b);border-radius:22px;box-shadow:0 16px 34px rgba(254,153,99,.28);color:#6b3100;display:grid;height:58px;place-items:center;width:58px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(2rem,4vw,3.4rem);line-height:.95;margin-bottom:0}h2{color:#1d343c;font-size:clamp(1.45rem,2vw,2rem);margin-bottom:12px}h3{color:#263238;margin-bottom:8px}p{color:#55656b;line-height:1.55}small{color:#6d7b80;line-height:1.5}.eyebrow{align-items:center;color:#e26f39;font-size:.78rem;font-weight:800;letter-spacing:.11em;margin-bottom:8px;text-transform:uppercase}.eyebrow,.tabs{display:flex;gap:6px}.tabs{background:rgba(255,255,255,.68);border:1px solid rgba(255,180,117,.36);border-radius:999px;box-shadow:0 16px 45px rgba(156,97,42,.13);padding:7px}.tabs button{align-items:center;background:transparent;border:0;border-radius:999px;color:#66777d;display:flex;gap:7px;padding:10px 14px}.tabs button.active{background:#293f46;color:white;box-shadow:0 10px 22px rgba(41,63,70,.24)}.sync-banner{align-items:center;background:#fffaf5;border:1px solid #f0cfb6;border-radius:18px;color:#586970;display:flex;gap:10px;justify-content:space-between;margin:-10px 0 22px;padding:12px 14px}.sync-banner>div{display:grid;grid-gap:2px;gap:2px}.sync-banner.ready{background:#edf8f1;border-color:#bee4c9}.sync-banner strong{color:#243d44;flex:0 0 auto}.sync-banner small{color:#66777d}.sync-banner span{text-align:right}.banner-actions{align-items:center;display:flex;flex:0 0 auto;gap:8px}.active-child-control{align-items:center;display:grid;flex:0 1 220px;grid-gap:5px;gap:5px;min-width:180px}.active-child-control span{color:#536870;font-size:.74rem;font-weight:850;text-transform:uppercase}.active-child-control select{border-color:#bee4c9;border-radius:12px;min-height:38px;padding:8px 10px}.grid{display:grid;grid-gap:20px;gap:20px}.two-cols{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-row,.stack{display:grid;grid-gap:20px;gap:20px}.dashboard-row{grid-template-columns:1.7fr 1fr}.hero-card,.panel{background:rgba(255,255,255,.82);border:1px solid rgba(255,182,120,.28);border-radius:32px;box-shadow:0 24px 70px rgba(120,79,38,.11);padding:26px}.hero-card{align-items:stretch;display:flex;flex-direction:column;min-height:min(480px,calc(100vh - 190px));overflow:hidden;position:relative}.hero-card:after{background:radial-gradient(circle,rgba(255,255,255,.64),transparent 60%);border-radius:50%;content:"";height:320px;position:absolute;right:-70px;top:-70px;width:320px}.hero-card h2{font-size:clamp(2.7rem,7vw,5.5rem);line-height:.92;max-width:520px}.hero-card p{max-width:460px}.hero-copy{position:relative;z-index:2}.slide-meta,.title-panel{align-items:center;display:flex;gap:12px}.primary-link,button{align-items:center;background:#243d44;border:0;border-radius:16px;color:white;display:inline-flex;gap:8px;justify-content:center;margin-top:12px;padding:12px 16px;text-decoration:none}.secondary-button{background:#ffffff;border:1px solid #d7bdab;color:#243d44;flex:0 0 auto;margin-top:0}.danger-button{border-color:#f1bba5;color:#b94b27}.input-label{color:#455a62;display:block;font-weight:800;margin:18px 0 8px}input,select,textarea{background:#fff;border:1px solid #f1caae;border-radius:16px;color:#243d44;padding:13px 14px;width:100%}textarea{min-height:96px;resize:vertical}.quick-list{display:grid;grid-gap:10px;gap:10px;margin-top:20px}.quick-list span{align-items:center;color:#3e555c;display:flex;gap:9px;font-weight:700}.quick-list svg{color:#35a872}.weather-panel{background:linear-gradient(135deg,#ffffff,#edf8ff)}.weather-grid{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1.4fr repeat(3,1fr);margin:18px 0}.weather-grid>*{background:rgba(255,255,255,.78);border-radius:18px;padding:14px}.automation-card,.location-tool{background:linear-gradient(135deg,#e9f7ee,#fff7d7)}.location-tool form{display:grid}.location-tool .secondary-button{margin-top:12px}.action-panel svg,.automation-card svg,.title-panel svg{color:#e26f39;height:34px;width:34px}.timeline{display:grid;grid-gap:0;gap:0;padding-bottom:12px;padding-top:12px}.timeline article{border-bottom:1px dashed #ebc7aa;display:grid;grid-gap:18px;gap:18px;grid-template-columns:110px 1fr;padding:18px 0}.timeline article:last-child{border-bottom:0}time{color:#e26f39;font-weight:900}.cards-list,.shopping-list{display:grid;grid-gap:12px;gap:12px}.event-card,.mini-card{background:#fffaf5;border:1px solid #f3d1b8;border-radius:22px;display:flex;gap:12px;margin-top:12px;padding:16px}.event-card{display:block}.event-card span{align-items:center;color:#d7632c;display:flex;font-size:.82rem;font-weight:850;gap:6px;margin-bottom:8px;text-transform:uppercase}.event-card.search-link-card{background:#f7fbff;border-color:#c9dce8}.event-card .play-card-actions{margin-top:12px}.icon{flex:0 0 auto;font-size:1.18rem;line-height:1;margin-top:2px}.play-card.recommended{background:#edf8f1;border-color:#95cfaa}.play-card.selected{background:#edf8f1;border-color:#75bd92}.play-card-body{min-width:0;width:100%}.play-card-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.small-button{border-radius:12px;min-height:36px;margin-top:0;padding:8px 12px}.section-heading{align-items:flex-start;display:flex;gap:16px;justify-content:space-between}.playdate-layout{grid-template-columns:minmax(320px,.85fr) minmax(0,1.15fr)}.playdate-detail{align-content:start;display:grid;grid-gap:18px;gap:18px}.playground-summary h2{margin-bottom:8px}.playdate-form{display:grid;grid-gap:14px;gap:14px}.form-grid{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.two-field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid label{display:grid;grid-gap:7px;gap:7px}.form-grid span{color:#455a62;font-size:.84rem;font-weight:850}.playdate-card{border-color:#cce2d3}.playdate-card.private{border-color:#ddc4ea}.playdate-card-footer{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-top:14px}.mini-link{color:#243d44;display:inline-flex;font-size:.9rem;font-weight:900;margin-top:8px;-webkit-text-decoration-color:#95cfaa;text-decoration-color:#95cfaa;text-decoration-thickness:3px;text-underline-offset:4px}.mini-link:hover{color:#2e7c4d}.shopping-link{align-items:center;color:#243d44;display:inline-flex;font-weight:900;margin-top:4px;-webkit-text-decoration-color:#ffb66f;text-decoration-color:#ffb66f;text-decoration-thickness:3px;text-underline-offset:4px}.shopping-link:hover{color:#d7632c}.mini-card svg{color:#4b9f83;flex:0 0 auto;margin-top:2px}.mini-card p{margin-bottom:0}.editable-card{align-items:center;grid-template-columns:auto 1fr auto}.automation-list{display:grid;grid-gap:12px;gap:12px}.outfit-card{display:grid;grid-gap:16px;gap:16px;grid-template-columns:132px 1fr}.outfit-preview{aspect-ratio:1/1;border-radius:16px;display:block;height:100%;max-height:150px;object-fit:cover;width:100%}.menu-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(3,minmax(0,1fr))}.meal-card{padding:22px}.meal-card p{margin-bottom:8px}.shopping-item{align-items:center;background:#fffaf5;border-radius:14px;display:grid;grid-gap:8px;gap:8px;grid-template-columns:1fr 38px;min-height:46px;padding:4px 6px 4px 12px}.shopping-list label{align-items:center;display:flex;gap:10px;text-transform:capitalize}.shopping-list input{accent-color:#e26f39;width:auto}.icon-button{border-radius:12px;height:34px;margin:0;padding:0;width:34px}.icon-button.danger{background:#fff0ea;color:#b94b27}.shopping-edit{display:grid;margin-top:16px}.inline-form{display:grid;grid-gap:10px;gap:10px;grid-template-columns:1fr auto}.inline-form button{margin-top:0}.upload-box{align-items:center;background:repeating-linear-gradient(45deg,#fffaf3,#fffaf3 10px,#fff1df 0,#fff1df 20px);border:2px dashed #e9a477;border-radius:24px;color:#874214;display:grid;font-weight:850;grid-gap:10px;gap:10px;min-height:190px;place-items:center;text-align:center}.upload-box input{display:none}.upload-box svg{height:42px;width:42px}.media-grid{display:grid;grid-gap:14px;gap:14px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.media-card{background:#fffaf5;border-radius:22px;overflow:hidden;padding:12px}.media-card img,.media-card video{aspect-ratio:1/1;border-radius:16px;object-fit:cover;width:100%}.caption-box{background:#243d44;border-radius:22px;color:white;margin-top:18px;padding:20px}.caption-box h3,.caption-box p{color:white}.caption-box button{background:#ffb66f;color:#432300}.muted{color:#708087}.error-panel{margin:12vh auto 0;max-width:680px}.auth-shell{min-height:100vh}.auth-layout{align-items:stretch;display:grid;grid-gap:20px;gap:20px;grid-template-columns:minmax(0,.92fr) minmax(320px,.68fr)}.onboarding-layout{align-items:start;display:grid;grid-gap:20px;gap:20px;grid-template-columns:minmax(0,1.2fr) minmax(320px,.62fr)}.auth-note,.auth-panel{min-height:360px}.auth-panel form,.profile-form{display:grid}.profile-form{gap:0}.child-editor-bar{align-items:center;display:flex;gap:10px;margin:20px 0 8px}.child-tabs{display:flex;flex:1 1 auto;flex-wrap:wrap;gap:8px}.child-tabs button{background:#ffffff;border:1px solid #d7bdab;border-radius:999px;color:#243d44;margin-top:0;padding:9px 12px}.child-tabs button.selected{background:#243d44;border-color:#243d44;color:#ffffff}.checkbox-row{align-items:center;color:#455a62;display:flex;font-weight:800;gap:10px;margin-top:18px}.checkbox-row input{accent-color:#e26f39;width:auto}.form-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}.auth-note{background:linear-gradient(135deg,#edf8ff,#fff4de)}.profile-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.profile-facts span{background:rgba(255,255,255,.78);border:1px solid #f1caae;border-radius:999px;color:#3e555c;font-weight:850;padding:8px 12px}@media (max-width:860px){.app-header{align-items:flex-start;flex-direction:column}.tabs{border-radius:24px;flex-wrap:wrap;width:100%}.tabs button{flex:1 1 95px}.auth-layout,.dashboard-row,.form-grid,.menu-grid,.onboarding-layout,.playdate-layout,.two-cols{grid-template-columns:1fr}.sync-banner{align-items:flex-start;flex-direction:column}.banner-actions,.child-editor-bar{flex-wrap:wrap}.active-child-control{width:100%}.sync-banner span{text-align:left}.weather-grid{grid-template-columns:1fr 1fr}.timeline article{grid-template-columns:1fr;gap:4px}.playdate-card-footer,.section-heading{align-items:flex-start;flex-direction:column}}.home-layout{display:grid;grid-gap:20px;gap:20px;grid-template-columns:minmax(0,1.25fr) minmax(320px,.55fr)}.home-hero{background-image:linear-gradient(90deg,rgba(255,250,245,.94),rgba(255,250,245,.72) 42%,rgba(255,250,245,.1) 70%),var(--home-background-image);background-position:50%;background-size:cover;min-height:min(560px,calc(100vh - 190px))}.home-hero:after{content:none}.home-hero h2{max-width:620px}.home-hero p{max-width:450px}.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.hero-actions button{margin-top:0}.home-background-note{color:#586970;font-size:.92rem;font-weight:750;margin:18px 0 0}.home-focus-panel{align-content:start;display:grid}.home-shortcuts{display:grid;grid-gap:12px;gap:12px;margin-top:8px}.home-shortcut{align-items:center;background:#fffaf5;border:1px solid #f3d1b8;border-radius:18px;color:#243d44;display:flex;gap:12px;justify-content:flex-start;margin-top:0;min-height:76px;padding:14px;text-align:left}.background-choice:hover,.home-shortcut:hover{border-color:#e9a477;box-shadow:0 12px 30px rgba(120,79,38,.1)}.home-shortcut .icon{background:#edf8f1;border-radius:14px;display:grid;height:42px;margin-top:0;place-items:center;width:42px}.home-shortcut span:not(.icon){display:grid;grid-gap:3px;gap:3px}.home-shortcut strong{font-size:1rem}.home-shortcut small{color:#64777d;font-size:.86rem}.background-picker-backdrop{align-items:center;background:rgba(29,52,60,.42);display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:20}.background-picker-dialog{background:#fffaf5;border:1px solid #f0cfb6;border-radius:28px;box-shadow:0 30px 90px rgba(29,52,60,.24);max-height:calc(100vh - 40px);max-width:920px;overflow:auto;padding:24px;width:min(100%,920px)}.background-picker-dialog .section-heading{margin-bottom:18px}.background-picker-dialog h2{margin-bottom:6px}.background-picker-dialog p{margin-bottom:0}.background-picker-grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:minmax(220px,.42fr) minmax(0,1fr)}.home-upload-box{align-content:center;gap:8px;min-height:230px;padding:18px}.home-upload-box strong{color:#874214}.home-upload-box span{color:#874214;font-size:.9rem;font-weight:750;line-height:1.45;max-width:220px}.background-choice.selected,.home-upload-box.selected{border-color:#243d44;box-shadow:0 0 0 3px rgba(36,61,68,.12)}.default-backgrounds{display:grid;grid-gap:12px;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.background-choice{align-items:start;background:#ffffff;border:1px solid #f3d1b8;border-radius:18px;color:#243d44;display:grid;grid-gap:8px;gap:8px;justify-content:stretch;justify-items:start;margin-top:0;padding:8px;text-align:left}.background-choice img{aspect-ratio:16/9;border-radius:12px;display:block;object-fit:cover;width:100%}.background-choice strong{padding:0 4px}.background-choice span{color:#617278;font-size:.82rem;line-height:1.4;padding:0 4px 4px}@media (max-width:860px){.background-picker-grid,.default-backgrounds,.home-layout{grid-template-columns:1fr}}@media (max-width:700px){.hero-card{min-height:auto}.home-hero{background-image:linear-gradient(180deg,rgba(255,250,245,.98),rgba(255,250,245,.82) 54%,rgba(255,250,245,.28)),var(--home-background-image);min-height:520px}.outfit-card{grid-template-columns:1fr}.outfit-preview{max-height:220px}.background-picker-dialog{padding:18px}}