:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--green:#078449;--accent:#07c160;--ink:#181b20;--muted:#686e77;--line:#e9eceb;--mint:#eff9f4}*{box-sizing:border-box}html{color:var(--ink);background:#f3f5f4;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}body{margin:0}button,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible,textarea:focus-visible{outline-offset:3px;outline:3px solid #14864f}h1,h2,p{margin:0}h1{font-size:1.5em;line-height:1.4}h2{font-size:1.25em;line-height:1.4}p{line-height:1.65}button{background:0 0;border:0;min-height:44px}.app-shell{max-width:480px;min-height:100dvh;padding-bottom:calc(94px + env(safe-area-inset-bottom));overflow-wrap:anywhere;background:#fff;margin:0 auto;font-size:16px}.app-shell.large-text{font-size:20px}.app-header{padding:25px 20px 22px}.brand-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.wordmark{letter-spacing:.02em;white-space:nowrap;font-size:1.6em;font-weight:700}.brand-row>span{text-align:right;line-height:1.45}.preview-label{color:var(--muted);margin-top:7px}main{outline:none;padding:0 20px}.child-card{background:var(--mint);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:20px;display:flex}.child-card p{color:var(--muted);margin-top:6px}.pill-button{border:1px solid var(--line);background:#fff;border-radius:28px;flex-shrink:0;padding:8px 16px;font-weight:600}.home-section{margin-top:26px}.section-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.text-button{color:var(--muted);flex-shrink:0;padding:8px 0 8px 12px}.text-button:hover,.text-link:hover{color:var(--green)}.summary{color:var(--muted);align-items:baseline;gap:6px;margin:-2px 0 12px;display:flex}.summary strong{color:var(--green);font-size:1.2em}.summary span{margin-left:auto}.panel{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.list-row{text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:18px 16px;display:flex}.list-row+.list-row{border-top:1px solid var(--line)}button.list-row:hover{background:#f8fbf9}.row-copy{flex-direction:column;gap:7px;min-width:0;line-height:1.5;display:flex}.row-copy strong{font-size:1.06em;font-weight:600}.muted,.list-caption{color:var(--muted)}.status{white-space:nowrap;border-radius:20px;flex-shrink:0;padding:5px 10px;font-weight:500;line-height:1.4}.status-not_submitted{color:#bb3030;background:#fff0ef}.status-needs_redo{color:#946018;background:#fff3d9}.status-pending_review{color:#4e6895;background:#eef3fc}.status-completed{color:var(--green);background:#e9f7ef}.activity-card{text-align:left;align-items:flex-start;gap:14px;width:100%;padding:16px;display:flex}.activity-card .row-copy{flex:1}.activity-card img{aspect-ratio:4/3;object-fit:cover;border-radius:7px;width:38%;height:auto;margin-top:3px}.bottom-nav{z-index:5;border-top:1px solid var(--line);width:100%;max-width:480px;padding:6px 10px calc(6px + env(safe-area-inset-bottom));background:#fff;grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button{font-size:inherit;min-height:52px;color:var(--muted);border-radius:7px}.bottom-nav button[aria-current=page]{color:var(--green);background:#f4fbf7;font-weight:600}.page-intro{margin:10px 0 24px}.filter-bar{background:#f4f6f5;border-radius:9px;gap:8px;margin:18px 0;padding:4px;display:flex}.filter-bar button{border-radius:6px;flex:1;padding:8px}.filter-bar button[aria-pressed=true]{color:var(--green);background:#fff;font-weight:600;box-shadow:0 1px 3px #17271b0d}.list-caption{margin-bottom:16px}.back-button{color:var(--green);justify-self:start;padding-left:0}.detail-stack{gap:16px;display:grid}.detail-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.detail-panel{padding:20px}.detail-panel h2{margin-bottom:12px;font-size:1.1em}.detail-panel p+p{margin-top:12px}.divider{background:var(--line);height:1px;margin:20px 0}.hint,.feedback,.attachment-note,.preview-result{background:var(--mint);border-radius:8px;padding:18px;line-height:1.65}.hint h2,.feedback h2,.preview-result h2{margin-bottom:8px;font-size:1.1em}.hint p+p{margin-top:12px}.feedback{background:#fff7e7}.attachment-note{color:var(--muted);background:#f5f6f6}.field-label{margin-top:12px;font-weight:600}textarea{resize:vertical;width:100%;min-height:160px;color:var(--ink);border:1px solid #dce1de;border-radius:8px;padding:16px;line-height:1.6}textarea::placeholder{color:var(--muted)}.character-count{text-align:right;margin-top:-10px}.primary-button{background:var(--green);color:#fff;border-radius:8px;width:100%;min-height:52px;padding:14px 18px;font-weight:600}.primary-button:hover:not(:disabled){background:#086d3e}.user-text{white-space:pre-wrap}.child-list{gap:12px;margin-bottom:20px;display:grid}.child-option{text-align:left;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:20px;display:flex}.child-option.selected{background:var(--mint);border-color:#d7ecdf}.child-option>span:last-child{color:var(--green)}.child-list+.hint{margin-bottom:20px}.page-footnote{color:var(--muted);margin-top:22px}.empty-state{text-align:center;padding:30px 12px}.empty-state p{color:var(--muted);margin:16px 0 24px}.activity-detail>img{width:100%;height:auto;display:block}.activity-detail>div{padding:20px}.activity-detail p{margin-top:12px}.text-link{color:var(--green);align-items:center;min-height:44px;margin-top:18px;display:inline-flex}.child-dialog{border:1px solid var(--line);width:calc(100% - 32px);max-width:440px;color:var(--ink);font:inherit;border-radius:14px;padding:20px}.child-dialog::backdrop{background:#1b272666}.child-dialog>p{margin-bottom:12px}.skip-link{z-index:20;background:#fff;padding:12px;position:fixed;left:-200vw}.skip-link:focus{top:10px;left:20px}section>.hint,section>.detail-panel{margin-top:20px}.detail-stack>.hint,.detail-stack>.detail-panel{margin-top:0}@media (max-width:359px){main{padding:0 14px}.app-header{padding:20px 14px}.child-card{padding:16px 12px}.list-row{gap:8px;padding:16px 12px}.status{padding:5px 8px}}.large-text .list-row,.large-text .child-card,.large-text .detail-heading,.large-text .child-option{flex-wrap:wrap}.large-text .activity-card{flex-direction:column}.large-text .activity-card img{width:100%}@media (prefers-reduced-motion:no-preference){button{transition:background-color .15s}}
