:root{color-scheme:light;--bg:#f8f1e7;--panel:#fffdf8;--text:#2f251f;--muted:#76695c;--line:#e7d9c7;--brand:#ef765e;--brand-strong:#3c2b22;--accent:#f3bd84;--soft:#f5eadc;--admin:#3c2b22;--olive:#9f6b4d;--kakao-yellow:#ef765e;--kakao-chat:#f7ead9;--kakao-bubble:#fffdf8;--kakao-brown:#3c2b22}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{min-width:320px}a{color:inherit}.dev-role-switcher{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;flex-wrap:wrap;gap:10px;border-bottom:1px solid rgba(60,43,34,.12);background:rgba(255,250,243,.96);color:var(--text);padding:8px 16px;font-size:13px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:inset 0 0 0 0 var(--admin)}.dev-role-switcher strong{font-size:14px}.dev-role-switcher nav{display:flex;flex-wrap:wrap;gap:6px}.dev-role-switcher a{border:1px solid rgba(60,43,34,.12);border-radius:8px;color:var(--brand-strong);background:rgba(255,255,255,.56);padding:7px 9px;text-decoration:none}.dev-role-switcher a.active,.dev-role-switcher a[aria-current=page]{border-color:rgba(239,118,94,.4);background:#fff2e9;color:var(--kakao-brown);font-weight:800}.dev-role-switcher span:last-child{color:rgba(60,43,34,.72)}button,input,select,textarea{font:inherit;min-height:44px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(239,118,94,.55);outline-offset:3px}.app-icon{flex:0 0 auto}.icon-button-label,.section-title-with-icon{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:0}.section-title-with-icon{justify-content:flex-start;line-height:1.35}.button-danger,.button-ghost,.button-primary,.button-secondary{border:0;border-radius:8px;min-height:48px;padding:11px 14px;font-weight:800}.button-primary{background:var(--brand);color:var(--kakao-brown)}.button-secondary{background:var(--kakao-brown);color:#ffffff}.button-ghost{border:1px solid var(--line);background:var(--soft);color:var(--brand-strong)}.button-danger{background:#b45b43;color:#ffffff}.feedback-link:active,.role-entry-card:active,button:not(:disabled):active{transform:scale(.99)}.feedback-link:hover,.role-entry-card:hover,.shell-nav a:hover,button:not(:disabled):hover{filter:brightness(.96)}.dev-role-switcher a:hover,.role-entry-card:hover,.shell-nav a:hover{border-color:rgba(239,118,94,.42);box-shadow:0 8px 24px rgba(60,43,34,.1)}.status-badge{display:inline-flex;align-items:center;gap:6px;width:-moz-fit-content;width:fit-content;border:1px solid var(--line);border-radius:999px;background:#ffffff;color:var(--muted);padding:5px 9px;font-size:13px;font-weight:800;vertical-align:middle}.status-badge.pending{background:#fff3cf;color:#7a550e}.status-badge.ready{background:#f0f5e8;color:#52683f}.status-badge.sent{background:#fff1c7;color:#735012}.status-badge.needs-attention{background:#fff0e8;color:#8d4d33}.status-badge.cancelled,.status-badge.neutral{background:var(--soft);color:var(--muted)}.skeleton-pulse{animation:skeleton-pulse 1.2s ease-in-out infinite}.completion-check{animation:completion-check .18s ease-out}@keyframes skeleton-pulse{0%,to{opacity:.56}50%{opacity:1}}@keyframes completion-check{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.shell-page{min-height:100vh;padding:0 0 84px;background:linear-gradient(180deg,#f8f1e7,#f4eadb)}.shell-frame{margin:0 auto;max-width:448px}.shell-header{position:-webkit-sticky;position:sticky;top:45px;z-index:12;display:flex;align-items:center;justify-content:flex-start;gap:10px;border-bottom:1px solid rgba(60,43,34,.1);background:rgba(248,241,231,.94);margin-bottom:0;padding:12px 16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shell-header>div:first-child{max-width:680px}.shell-back-link{display:grid;width:36px;height:36px;flex:0 0 auto;place-items:center;border-radius:999px;color:var(--muted);text-decoration:none}.shell-back-link:hover{background:rgba(239,118,94,.14)}.shell-title{margin:0;font-size:17px;line-height:1.2}.shell-subtitle{margin:3px 0 0;color:var(--muted);font-size:12px;line-height:1.35}.shell-nav{display:flex;flex-wrap:wrap;gap:8px}.shell-nav a{border:1px solid var(--line);border-radius:8px;background:var(--panel);color:var(--text);padding:10px 14px;text-decoration:none}.shell-nav a.active,.shell-nav a[aria-current=page]{border-color:rgba(239,118,94,.24);background:#fff2e9;color:var(--brand);font-weight:800}.shell-bottom-nav{position:fixed;inset:auto 0 0;z-index:18;display:flex;justify-content:center;max-width:448px;border-top:1px solid rgba(60,43,34,.1);background:rgba(255,250,243,.96);margin:0 auto;padding:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.shell-bottom-nav a{display:grid;min-width:72px;border:0;background:transparent;color:var(--muted);padding:8px 6px;text-align:center;font-size:12px}.shell-bottom-nav a.active,.shell-bottom-nav a[aria-current=page]{background:#fff2e9}.role-entry-story-band,.shell-overview-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1px;gap:1px;border:1px solid var(--line);border-radius:8px;background:var(--line);margin:0 0 18px;overflow:hidden}.role-entry-story-band div,.shell-overview-strip div{display:grid;grid-gap:6px;gap:6px;background:rgba(255,253,246,.92);padding:14px}.role-entry-story-band span,.shell-overview-strip span{color:var(--brand);font-size:13px;font-weight:900}.role-entry-story-band strong,.shell-overview-strip strong{color:var(--text);font-size:15px;line-height:1.45}.role-entry-page{display:grid;align-items:center;min-height:calc(100vh - 52px);padding-top:34px;padding-bottom:54px}.role-entry-frame{width:min(100%,400px)}.role-entry-header{margin-bottom:48px;text-align:center}.role-entry-kicker{margin:0 0 8px;color:var(--brand);font-weight:800}.role-entry-brand-mark{display:grid;width:56px;height:56px;place-items:center;border-radius:8px;background:#fde7dc;color:var(--brand);margin:0 auto 16px}.role-entry-brand-mark .app-icon{fill:currentColor;stroke:currentColor}.role-entry-question{margin:0 0 24px;color:var(--muted);font-size:14px}.role-entry-grid{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px}.role-entry-card{display:flex;align-items:center;gap:16px;min-height:98px;border:1px solid rgba(60,43,34,.12);border-radius:8px;background:var(--kakao-bubble);color:var(--text);padding:18px 20px;text-decoration:none;overflow-wrap:anywhere;box-shadow:0 4px 12px rgba(60,43,34,.1)}.role-entry-icon{display:grid;width:56px;height:56px;place-items:center;border-radius:8px;background:linear-gradient(135deg,#ff8d7e,#ef765e);color:#ffffff;font-weight:900}.role-entry-icon .app-icon{fill:none}.role-entry-card:nth-child(2) .role-entry-icon{background:linear-gradient(135deg,#ffba7a,#f59d5e)}.role-entry-card:nth-child(3) .role-entry-icon{background:linear-gradient(135deg,#f7d586,#efb957);color:#ffffff}.role-entry-card:nth-child(4) .role-entry-icon{background:linear-gradient(135deg,#f18469,#ec6555)}.role-entry-copy{display:grid;flex:1 1 auto;grid-gap:2px;gap:2px;min-width:0}.role-entry-card strong{font-size:20px;line-height:1.35}.role-entry-copy>span:last-child{color:var(--muted);line-height:1.55}.role-entry-label{width:-moz-fit-content;width:fit-content;border-radius:8px;background:transparent;color:var(--brand-strong);padding:0;font-size:0;font-weight:800}.role-entry-arrow{display:grid;flex:0 0 auto;place-items:center;color:var(--brand-strong)}.role-entry-parent{background:rgba(255,254,250,.88)}.role-entry-footer{display:flex;justify-content:flex-end;margin-top:14px}.role-entry-footer a{color:var(--muted);font-size:14px;text-decoration:none}.role-entry-footer-note{margin:40px 0 0;color:var(--brand-strong);font-size:13px;text-align:center}.role-entry-test-anchor{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.shell-grid{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px;padding:16px}.wide-card{grid-column:1/-1}.shell-card{border:1px solid rgba(60,43,34,.1);border-radius:8px;background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(247,234,217,.78)),var(--panel);padding:16px;box-shadow:0 4px 12px rgba(60,43,34,.08)}.shell-card h2,.shell-card h3{margin:0 0 8px;font-size:18px}.shell-card p{margin:0;color:var(--muted);line-height:1.6;overflow-wrap:anywhere}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));grid-gap:12px;gap:12px;align-items:end;margin:12px 0}.form-stack{display:grid;grid-gap:10px;gap:10px;margin-top:12px}.form-grid label,.form-stack label,.parent-reply-box{display:grid;grid-gap:6px;gap:6px;color:var(--muted);font-size:14px}.field-hint{color:var(--muted);font-size:13px;line-height:1.4}.form-grid input,.form-grid select,.form-stack input,.form-stack textarea,.notice-box input,.parent-reply-box textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--text);padding:10px 12px}.form-stack textarea,.parent-reply-box textarea{min-height:96px;resize:vertical}.form-grid button,.form-stack button,.parent-card-switcher button,.parent-send,.row-actions button{border:0;border-radius:8px;background:var(--brand);color:#ffffff;min-height:48px;padding:11px 14px;font-weight:700}.form-grid .button-secondary,.form-stack .button-secondary,.row-actions .button-secondary{background:var(--muted);color:#ffffff}.form-grid .button-ghost,.form-grid .quiet-button,.form-stack .button-ghost,.row-actions .button-ghost{border:1px solid var(--line);background:var(--soft);color:var(--brand-strong)}.form-grid button:disabled,.form-stack button:disabled,.row-actions button:disabled{cursor:not-allowed;opacity:.45}.metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));grid-gap:10px;gap:10px;margin:12px 0 0}.metric-grid div{border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--soft)}.metric-grid dt{color:var(--muted);font-size:13px}.metric-grid dd{margin:4px 0 0;color:var(--brand-strong);font-size:24px;font-weight:800}.list-stack{display:grid;grid-gap:10px;gap:10px;margin-top:12px}.list-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;padding:12px;background:var(--soft);overflow-wrap:anywhere}.list-row pre{max-width:360px;overflow:auto;margin:0;font-size:12px}.row-actions{display:flex;flex-wrap:wrap;gap:8px}.context-list{display:grid;grid-gap:10px;gap:10px;margin:12px 0 0}.context-list div{border-bottom:1px solid var(--line);padding-bottom:10px}.context-list dt{color:var(--muted);font-size:13px}.context-list dd{margin:4px 0 0;overflow-wrap:anywhere}.notice-box{border:1px solid var(--line);border-radius:8px;background:var(--soft);margin-top:14px;padding:14px}.notice-box h3{margin:0 0 8px}.notice-box p{margin:0 0 10px}.contributor-feedback,.first-card-cta,.first-session-onboarding{background:linear-gradient(135deg,rgba(239,118,94,.72),rgba(255,253,248,.94)),#fffdf6}.contributor-feedback h2,.first-card-cta h2,.first-session-onboarding h2{font-size:20px}.contributor-feedback .row-actions,.first-card-cta .row-actions{display:grid}.first-card-cta .row-actions button{width:100%}.onboarding-steps{display:grid;grid-gap:8px;gap:8px;margin:12px 0 0}.onboarding-steps span{border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--brand-strong);padding:10px 12px;font-weight:800}.onboarding-steps span.done{border-color:rgba(239,118,94,.18);background:#fff2e9}.empty-action{display:grid;grid-gap:10px;gap:10px;margin-top:10px}.empty-action button{width:-moz-fit-content;width:fit-content}.caregiver-checklist-home{order:20;display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px;align-items:stretch}.caregiver-app-home{order:1;display:grid;grid-gap:18px;gap:18px;padding:0}.caregiver-app-home blockquote,.caregiver-app-home h2,.caregiver-app-home ol,.caregiver-app-home p{margin:0}.caregiver-reaction-card{display:grid;grid-gap:12px;gap:12px;border-radius:8px;background:linear-gradient(135deg,#ffd0bc,#ffc2a8);padding:20px}.caregiver-reaction-card p{color:var(--brand);font-size:14px;font-weight:900}.caregiver-reaction-card blockquote{color:var(--text);font-size:17px;font-weight:700;line-height:1.7}.caregiver-action-grid small,.caregiver-family-activity small,.caregiver-main-task small,.caregiver-reaction-card span{color:var(--muted);font-size:12px}.caregiver-reaction-card button{width:-moz-fit-content;width:fit-content;min-height:34px;border:0;border-radius:999px;background:rgba(255,255,255,.86);color:var(--brand-strong);padding:7px 12px;font-weight:800}.caregiver-today-actions{display:grid;grid-gap:10px;gap:10px}.caregiver-family-activity h2,.caregiver-today-actions h2{font-size:15px}.caregiver-main-task{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:14px;gap:14px;width:100%;min-height:72px;border:0;border-radius:8px;background:var(--brand);color:#ffffff;padding:16px;text-align:left;box-shadow:0 8px 18px rgba(239,118,94,.24)}.caregiver-action-grid button,.caregiver-family-activity li p,.caregiver-main-task span:nth-child(2){display:grid;grid-gap:3px;gap:3px}.caregiver-action-grid button>span,.caregiver-family-activity li>span,.caregiver-task-icon{display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.24)}.caregiver-task-icon{width:42px;height:42px}.caregiver-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.caregiver-action-grid button{min-height:114px;border:1px solid var(--line);border-radius:8px;background:rgba(255,253,248,.78);color:var(--text);padding:16px;text-align:left}.caregiver-action-grid button>span{width:36px;height:36px;background:#fde7dc;color:var(--brand)}.caregiver-family-activity{display:grid;grid-gap:10px;gap:10px}.caregiver-family-activity>div{display:flex;align-items:center;justify-content:space-between}.caregiver-family-activity>div>button{min-height:32px;border:0;background:transparent;color:var(--muted);padding:0}.caregiver-family-activity ol{display:grid;grid-gap:8px;gap:8px;padding:0;list-style:none}.caregiver-family-activity li{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:8px;background:rgba(255,253,248,.78);padding:12px}.caregiver-family-activity li>span{width:38px;height:38px;background:#f8c08e;color:var(--brand-strong);font-weight:900}.role-detail-hidden{display:none}.role-detail-stack{display:grid;grid-gap:14px;gap:14px;padding:16px}.family-app-home,.grandchild-app-home{order:1;display:grid;grid-gap:20px;gap:20px;padding:16px}.family-app-home blockquote,.family-app-home h2,.family-app-home p,.grandchild-app-home h2,.grandchild-app-home p{margin:0}.family-mission-card,.family-response-card,.grandchild-reply-card{display:grid;grid-gap:12px;gap:12px;border-radius:8px;padding:20px}.family-response-card{background:#ffcbb6}.family-mission-card p,.family-response-card p{color:var(--brand);font-size:14px;font-weight:900}.family-response-card blockquote{color:var(--text);font-size:18px;font-weight:700;line-height:1.7}.family-mission-card span,.family-response-card span{color:var(--muted);font-size:12px}.family-mission-card button,.family-response-card button,.grandchild-reply-card button{width:-moz-fit-content;width:fit-content;min-height:36px;border:0;border-radius:999px;background:rgba(255,255,255,.9);color:var(--brand-strong);padding:8px 14px;font-weight:900}.family-mission-card{background:linear-gradient(135deg,#ffc49a,#ffa57f)}.family-mission-card h2{color:var(--text);font-size:21px;line-height:1.35}.family-mission-card>div{display:flex;gap:8px;flex-wrap:wrap}.family-mission-card>div button:first-child{background:var(--brand-strong);color:#ffffff}.family-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px}.family-quick-actions button{display:grid;grid-gap:10px;gap:10px;min-height:100px;border:1px solid var(--line);border-radius:8px;background:rgba(255,253,248,.78);color:var(--text);padding:16px;text-align:left}.family-quick-actions span{display:grid;width:36px;height:36px;place-items:center;border-radius:999px;background:#fde7dc;color:var(--brand)}.family-recent-gallery{display:grid;grid-gap:10px;gap:10px}.family-recent-gallery h2,.grandchild-send-list h2{font-size:15px}.family-recent-gallery>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.family-recent-gallery span{aspect-ratio:1;border:1px solid rgba(60,43,34,.08);border-radius:8px;background:linear-gradient(135deg,#fff7ec,#f6dbc0)}.grandchild-reply-card{place-items:center;min-height:220px;background:linear-gradient(135deg,#ffd987,#f5ae55);text-align:center}.grandchild-reply-card>span{display:grid;width:64px;height:64px;place-items:center;border-radius:999px;background:rgba(255,255,255,.72);color:var(--brand)}.grandchild-reply-card h2{font-size:17px}.grandchild-reply-card button{background:var(--brand-strong);color:#ffffff}.grandchild-send-list{display:grid;grid-gap:12px;gap:12px}.grandchild-send-list button{display:grid;grid-template-columns:auto 1fr auto;grid-gap:12px;gap:12px;align-items:center;min-height:96px;border:0;border-radius:8px;color:#ffffff;padding:16px 18px;text-align:left}.grandchild-send-list button:after{content:"›";font-size:24px;font-weight:800}.grandchild-send-list button:first-of-type{background:#f8776e}.grandchild-send-list button:nth-of-type(2){background:#ffa45f}.grandchild-send-list button:nth-of-type(3){background:#efbd58}.grandchild-send-list button>span{display:grid;width:56px;height:56px;place-items:center;border-radius:8px;background:rgba(255,255,255,.23)}.grandchild-send-list small,.grandchild-send-list strong{grid-column:2}.grandchild-send-list small{margin-top:-8px;color:rgba(255,255,255,.9)}.grandchild-week-count{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:13px}.grandchild-week-count .app-icon{color:var(--brand);fill:currentColor}.caregiver-checklist-hero,.caregiver-wizard-card,.returning-caregiver-home{background:linear-gradient(135deg,rgba(243,189,132,.74),rgba(255,253,248,.96)),#fffdf6}.caregiver-checklist-hero h2{font-size:24px}.caregiver-checklist-steps{display:grid;grid-gap:10px;gap:10px}.caregiver-checklist-step{display:grid;grid-template-columns:auto 1fr;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:14px}.caregiver-checklist-step.current{border-color:rgba(239,118,94,.2);background:#fff2e9;box-shadow:0 10px 22px rgba(60,43,34,.08)}.caregiver-checklist-step.locked{opacity:.62}.checklist-step-icon{display:grid;width:40px;height:40px;place-items:center;border-radius:8px;background:var(--kakao-yellow);color:var(--brand-strong)}.caregiver-checklist-step p,.caregiver-checklist-step span,.returning-caregiver-home p{margin:0}.caregiver-checklist-step strong{display:inline-block;margin:4px 0;color:var(--brand-strong)}.quick-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:12px}.caregiver-wizard-card{display:grid;grid-gap:12px;gap:12px;border:1px solid var(--line);border-radius:8px;margin-top:14px;padding:16px}.caregiver-wizard-card label{display:grid;grid-gap:6px;gap:6px;color:var(--muted)}.caregiver-wizard-card input{width:100%;border:1px solid var(--line);border-radius:8px;background:#ffffff;color:var(--text);padding:10px 12px}.wizard-progress{display:flex;gap:8px}.wizard-progress span{display:grid;width:34px;height:34px;place-items:center;border:1px solid var(--line);border-radius:999px;background:#ffffff;color:var(--muted);font-weight:800}.wizard-progress span.current,.wizard-progress span.done{border-color:var(--brand);background:var(--brand);color:#ffffff}.caregiver-profile-card>.form-grid,.caregiver-profile-card>h2:nth-of-type(2){display:none}.caregiver-auth-card{order:30}.caregiver-profile-card{order:20}.caregiver-invite-card{order:30}.caregiver-first-card-card{order:10}.caregiver-dashboard-card{order:5}.caregiver-today-card{order:60}.caregiver-review-card{order:70}.caregiver-schedule-card{order:80}.caregiver-local-demo-card,.caregiver-schedule-list-card{order:90}.caregiver-recent-card,.caregiver-responses-card,.caregiver-weekly-card{order:100}.caregiver-feedback-card,.caregiver-progress-card{order:110}.dashboard-focus-grid,.family-top-action-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;grid-column:1/-1}.family-top-action-bar{order:15;border:1px solid var(--line);border-radius:8px;background:linear-gradient(135deg,rgba(239,118,94,.72),rgba(255,253,248,.95)),#fffdf6;padding:14px}.family-top-action-bar a{min-height:56px;text-decoration:none}.family-activity-feed,.grandchild-pre-accept-flow,.grandchild-response-feedback{grid-column:1/-1}.family-activity-feed{order:30}.grandchild-pre-accept-flow{background:linear-gradient(135deg,rgba(243,189,132,.72),rgba(255,253,248,.94)),#fffdf6;text-align:center}.activity-feed-list{display:grid;grid-gap:10px;gap:10px;margin-top:14px}.activity-feed-item{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:8px;background:#ffffff;padding:12px}.family-top-action-bar .button-primary,.family-top-action-bar .button-secondary{min-height:76px;border-radius:8px}.recorder-card{background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(247,234,217,.82)),#fffdf6}.activity-feed-item p{margin:4px 0 0;color:var(--muted)}.grandchild-two-action-home{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px;grid-column:1/-1}.grandchild-action-card{display:flex;flex-direction:column;gap:12px;background:linear-gradient(180deg,rgba(255,253,248,.96),rgba(247,234,217,.86)),#fffdf6}.grandchild-action-card .recorder-card{border:0;box-shadow:none;padding:0}.grandchild-secondary-actions{grid-column:1/-1}.latest-activity-card{grid-column:span 2;background:linear-gradient(135deg,rgba(239,118,94,.82),rgba(255,253,248,.96)),#fffdf6;position:relative}.latest-activity-card:after{position:absolute;right:18px;bottom:-8px;width:18px;height:18px;border-right:1px solid rgba(60,43,34,.1);border-bottom:1px solid rgba(60,43,34,.1);background:#ffd7c6;content:"";transform:rotate(45deg)}.latest-activity-card h2{font-size:24px;line-height:1.3}.dashboard-area-card{background:linear-gradient(180deg,rgba(247,234,217,.96),rgba(255,253,248,.9)),#fff4e9}.dashboard-area-card button,.latest-activity-card button{width:100%}.dashboard-area-card h2{font-size:18px}.beta-feedback-entry{background:linear-gradient(90deg,rgba(255,253,248,.96),rgba(239,118,94,.34)),#fffdf6}.feedback-link,.latest-activity-card button{display:inline-flex;align-items:center;justify-content:center;width:-moz-fit-content;width:fit-content;min-height:48px;border:0;border-radius:8px;background:var(--brand);color:var(--kakao-brown);margin-top:12px;padding:11px 14px;font-weight:800;text-decoration:none;text-align:center}.latest-activity-card button:disabled{cursor:not-allowed;opacity:.45}.parent-page{min-height:100vh;display:grid;place-items:start center;padding:0 16px 32px;background:var(--bg)}.parent-card{width:min(100%,430px);border:0;border-radius:0;background:transparent;padding:24px 0;box-shadow:none;font-size:20px}.parent-app-topbar{display:flex;align-items:center;gap:6px;min-height:36px;color:var(--brand-strong);font-size:14px}.parent-app-topbar span:first-child{font-size:26px;line-height:1}.parent-kicker{margin:12px 0 8px;color:var(--muted);font-size:15px;font-weight:500;text-align:center}.parent-title{margin:0;color:#201610;font-size:34px;line-height:1.18;text-align:center}.parent-copy{margin:18px 0 28px;color:var(--muted);font-size:24px;line-height:1.5}.parent-flow-copy,.parent-progress-step,.parent-today-state{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.parent-actions{display:grid;grid-template-columns:1fr;grid-gap:12px;gap:12px;margin:0 0 20px}.parent-action{min-height:76px;border:0;border-radius:8px;background:var(--brand);color:#ffffff;cursor:pointer;font-size:22px;font-weight:800;box-shadow:0 10px 18px rgba(60,43,34,.12)}.parent-action .icon-button-label{gap:12px}.parent-primary-action{min-height:68px}.parent-action.secondary{background:var(--kakao-brown);color:#ffffff}.parent-action.light{border:1px solid var(--line);background:rgba(255,253,248,.78);color:var(--brand-strong);box-shadow:none}.parent-action:disabled{cursor:not-allowed;opacity:.48}.parent-today-state{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}.parent-media-preview,.parent-status,.parent-today-state span{border-radius:8px;background:var(--soft);color:var(--brand-strong);padding:10px 12px}.parent-content-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin:0 0 20px}.parent-content-panel{border:1px solid var(--line);border-radius:8px;background:#fffdf6;padding:16px}.parent-content-panel h2{margin:8px 0;font-size:22px;line-height:1.3}.parent-content-panel p{margin:0;color:var(--muted);line-height:1.5}.parent-sequential-stage{display:grid;grid-gap:14px;gap:14px;margin:24px 0 12px}.parent-sequential-media{display:grid;grid-gap:12px;gap:12px;border:1px solid rgba(60,43,34,.1);border-radius:8px;background:rgba(255,253,248,.92);padding:24px;box-shadow:0 4px 12px rgba(60,43,34,.08)}.parent-sequential-media h2{margin:0;color:var(--text);font-size:22px;line-height:1.3}.parent-sequential-media p{margin:0;color:var(--muted);line-height:1.5}.parent-story-meta{color:var(--muted);font-size:14px}.parent-voice-story-card{grid-template-columns:auto 1fr;align-items:center}.parent-voice-story-card .parent-audio-media,.parent-voice-story-card .parent-story-meta{grid-column:2}.parent-voice-story-card .parent-content-kicker{display:none}.parent-photo-story-card{padding:24px}.parent-next-preview{margin-bottom:20px}.parent-photo-media-full{max-height:min(58vh,520px)}.parent-photo-placeholder-guide,.parent-voice-placeholder-guide{min-height:188px;gap:10px;text-align:center}.parent-voice-story-card .parent-voice-placeholder-guide{width:56px;height:56px;min-height:56px;border-radius:999px;background:#fde7dc;color:var(--brand)}.parent-voice-story-card .parent-voice-placeholder-guide span{display:none}.parent-photo-story-card .parent-photo-placeholder-guide{min-height:270px;border-radius:8px;background:linear-gradient(135deg,#f7c59f,#f1dbc6);color:var(--brand-strong)}.parent-secondary-action{margin-top:12px;border:1px solid var(--line);background:var(--soft);color:var(--brand-strong)}.parent-next-story-cta{display:grid;grid-gap:10px;gap:10px;justify-items:center;width:100%}.parent-next-story-cta p{margin:0;color:var(--brand-strong);font-weight:800}.parent-primary-next-story{background:var(--brand)!important;color:#ffffff}.parent-content-kicker{color:var(--brand-strong)!important;font-weight:700}.parent-photo-placeholder,.parent-voice-placeholder{display:grid;min-height:132px;place-items:center;border-radius:8px;color:#ffffff;font-size:24px;font-weight:800}.parent-audio-media,.parent-photo-media{width:100%;border-radius:8px;background:#eef4ef}.parent-photo-media{aspect-ratio:4/3;object-fit:cover;display:block}.parent-audio-media{min-height:48px}.parent-photo-placeholder{background:linear-gradient(135deg,rgba(243,189,132,.94),rgba(239,118,94,.72)),#f3bd84;color:var(--brand-strong)}.parent-voice-placeholder{background:linear-gradient(135deg,rgba(60,43,34,.94),rgba(159,107,77,.8)),#3c2b22}.parent-media-preview{margin:0 0 18px;font-size:18px}.parent-completion,.parent-progress-step{border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--brand-strong);margin:0 0 18px;padding:14px;line-height:1.5}.parent-completion{display:grid;grid-gap:6px;gap:6px}.parent-reply-box{margin-top:18px;font-size:18px}.parent-send{margin-top:10px;background:var(--brand-strong);min-height:48px}.parent-send:disabled{opacity:.45}.parent-text-fallback,.parent-voice-reply{border:1px solid var(--line);border-radius:8px;background:#fffdf6;margin-top:18px;padding:16px}.parent-voice-reply h2{margin:0 0 8px;font-size:24px;line-height:1.3}.parent-recording-time,.parent-voice-reply p{margin:0 0 12px;color:var(--muted);line-height:1.5}.parent-reply-preview{width:100%;margin-bottom:12px}.parent-recorder-actions{gap:10px}.parent-recorder-actions .parent-action{min-height:64px;font-size:20px}.parent-text-fallback summary{min-height:48px;cursor:pointer;color:var(--brand-strong);font-weight:800}.parent-card-switcher{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:16px;font-size:18px;color:var(--muted)}.parent-card-switcher button{min-height:48px;min-width:128px;background:var(--muted)}.parent-story-nav{color:var(--brand-strong);font-weight:800}.parent-story-nav:disabled{opacity:.45;cursor:not-allowed}.parent-status{margin:18px 0 0;font-size:18px}@media (max-width:680px){.shell-page{padding:18px}.shell-header{display:block}.shell-nav{margin-top:16px}.shell-title{font-size:26px}.feedback-link,.form-grid button,.form-stack button,.latest-activity-card button,.row-actions button,.shell-nav a{width:100%}.form-grid,.role-entry-grid,.role-entry-story-band,.shell-overview-strip{grid-template-columns:1fr}.role-entry-card{min-height:0;padding:18px}.dashboard-focus-grid,.family-top-action-bar,.grandchild-two-action-home{grid-template-columns:1fr}.activity-feed-item{align-items:flex-start;flex-direction:column}.caregiver-checklist-home,.quick-menu-grid{grid-template-columns:1fr}.latest-activity-card{grid-column:auto}.parent-card{padding:24px}.parent-title{font-size:34px}.parent-copy{font-size:21px}.parent-actions,.parent-content-grid{grid-template-columns:1fr}.list-row{align-items:flex-start;flex-direction:column}}@media (max-width:430px){.shell-page{padding:14px}.role-entry-card,.shell-card{padding:16px}.shell-title{font-size:24px}.contributor-feedback h2,.first-card-cta h2,.first-session-onboarding h2,.latest-activity-card h2{font-size:20px}.parent-card{padding:20px}.parent-title{font-size:30px}.parent-action{min-height:78px;font-size:22px}}@media (max-width:390px){.shell-page{padding:12px}.role-entry-card strong,.shell-card h2{font-size:18px}.parent-copy{font-size:20px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}