:root{color:#1f2937;background:radial-gradient(circle at 100% 0,#facc1540,#0000 32%),#fffbeb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0}.app-shell,.auth-shell{min-height:100vh;padding:max(32px, calc(env(safe-area-inset-top,0px) + 16px)) 32px max(32px, calc(env(safe-area-inset-bottom,0px) + 16px))}.auth-shell{place-items:center;display:grid}.auth-card{width:100%;max-width:480px}.auth-card h1{color:inherit;letter-spacing:-.06em;margin:0;font-size:clamp(2rem,7vw,3.6rem);line-height:.95}.auth-form,.task-form,.main-column{gap:16px;display:grid}.hero{color:#1f2937;background:0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;max-width:1200px;margin:0 auto 16px;padding:4px 0 12px;display:flex}.hero h1{letter-spacing:-.03em;margin:0;font-size:1.25rem;font-weight:800;line-height:1.2}.hero p{color:#64748b;margin:2px 0 0;font-size:.9rem;line-height:1.4}.helper-text,.empty-state{color:#64748b;line-height:1.5}.user-row,.task-meta,.task-actions,.weekday-picker,.segmented,.icon-picker{flex-wrap:wrap;gap:8px;display:flex}.user-row{align-items:center}.user-row span{color:#64748b;font-size:.88rem;font-weight:700}.logout-button,.secondary,.weekday-picker button,.segmented button,.task-actions button,.icon-picker button,.child-pick,.notification-bell-button{color:#334155;background:#e2e8f0;border-radius:999px;padding:9px 13px;font-weight:800}.logout-button{color:#334155;background:#f1f5f9;padding:7px 12px;font-size:.85rem;font-weight:700}.eyebrow,.label{color:#a16207;letter-spacing:.08em;text-transform:uppercase;margin:0 0 2px;font-size:.72rem;font-weight:800}.hero .eyebrow{margin:0}.stats-grid,.cards-grid,.layout{gap:18px;display:grid}.stats-grid{grid-template-columns:repeat(3,minmax(120px,1fr))}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));width:100%;min-width:0;max-width:1200px;margin:0 auto}.cards-grid>*{min-width:0;max-width:100%}.layout{grid-template-columns:380px minmax(0,1fr);align-items:start;max-width:1200px;margin:0 auto}.layout>*{min-width:0}.family-adults{grid-column:1/-1;gap:12px;display:grid}.adult-list{gap:8px;display:grid}.adult-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.adult-row div{min-width:0;display:grid}.adult-row div span,.adult-row strong{overflow-wrap:anywhere}.adult-row div span{color:#64748b;font-size:.88rem}.stat-card,.panel,.task-card,.reward-card{background:#fffffff0;border:1px solid #fde68a;border-radius:28px;min-width:0;box-shadow:0 24px 60px #0f172a14}.hero-meta{color:#64748b;flex-wrap:wrap;align-items:center;gap:8px;font-size:.88rem;font-weight:700;display:flex}.hero-icon-button{color:#334155;background:#e2e8f0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex}.hero-icon-button svg{width:20px;height:20px}.hero-icon-button.active{color:#422006;background:#eab308}.hero-meta .star-balance{color:#a16207}.notification-bell{position:relative}.notification-bell-button{align-items:center;gap:6px;display:inline-flex}.notification-bell-button.has-unread{color:#fffbeb;background:#312e81}.notification-badge{color:#1e1b4b;background:#eab308;border-radius:999px;min-width:1.25rem;padding:1px 6px;font-size:.72rem;font-weight:800}.notification-backdrop{z-index:30;background:#0f172a59;border:0;position:fixed;inset:0}.notification-dropdown{z-index:40;width:min(360px,100vw - 32px);max-height:min(70vh,420px);padding:16px;position:absolute;top:calc(100% + 8px);left:0;overflow:auto}.notification-dropdown h2{margin:0;font-size:1rem}.notification-dropdown .form-heading{justify-content:space-between;align-items:start;gap:12px;margin-bottom:8px;display:flex}.notification-list{gap:8px;margin-top:12px;display:grid}.notification-item{overflow-wrap:anywhere;text-align:left;background:#fffbeb;border:1px solid #fde68a;border-radius:16px;gap:2px;width:100%;padding:12px;display:grid}.notification-item.unread{background:#eef2ff;border-color:#c7d2fe}.notification-item strong{color:#1e1b4b}.notification-item span,.notification-item em{color:#64748b;font-size:.88rem;font-style:normal;font-weight:600;display:block}.notification-permission-banner{max-width:1200px;margin:0 auto 16px;padding:16px 18px}.account-layout{grid-template-columns:1fr;max-width:560px;margin:0 auto}.account-layout .panel{gap:12px;display:grid}.account-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.account-row div{gap:2px;display:grid}.account-code{color:#334155;letter-spacing:.08em;font-size:1.05rem;font-weight:800}.panel{padding:22px}.tabs{max-width:1200px;margin:0 auto 24px}.app-nav{background:#fff;border-radius:999px;gap:2px;width:100%;max-width:640px;margin:0 auto 24px;padding:6px;display:flex;box-shadow:0 10px 30px #0f172a14,0 1px 3px #0f172a0f}.app-nav button{color:#94a3b8;letter-spacing:-.01em;touch-action:manipulation;background:0 0;border-radius:999px;flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;padding:8px 4px 6px;font-size:.62rem;font-weight:700;display:flex}.app-nav button.active{color:#b45309;background:#fef3c7}.app-nav button:hover:not(.active){color:#64748b;background:#f8fafc}.app-nav-icon{place-items:center;height:26px;display:grid;position:relative}.app-nav button svg{width:24px;height:24px}.app-nav button.active .nav-icon-fill{fill:currentColor}.app-nav button.active .nav-icon-fill+path{stroke:#fffbeb}.app-nav-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.app-nav-badge{color:#422006;background:#eab308;border-radius:999px;justify-content:center;align-items:center;min-width:1.05rem;padding:0 4px;font-size:.62rem;font-weight:800;display:inline-flex;position:absolute;top:-5px;right:-8px}h2,h3{color:#0f172a;margin:0}.hero h1,.panel h2,.task-card h3,.reward-card h3{overflow-wrap:anywhere}label{color:#334155;gap:8px;font-size:.9rem;font-weight:700;display:grid}.checkbox{align-items:center;gap:10px;display:flex}input,select,textarea{color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-radius:14px;outline:none;padding:12px 14px}input:focus,select:focus,textarea:focus{border-color:#eab308;box-shadow:0 0 0 4px #eab30829}.weekday-picker button.active,.segmented button.active,.icon-picker button.active,.primary{color:#422006;background:#eab308}.icon-picker .emoji-custom{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:999px;width:3.4rem;min-width:3rem;padding:8px 10px;font-size:1.05rem}.icon-picker .emoji-custom:focus{border-color:#eab308;outline:none}.primary{border-radius:16px;padding:14px 18px;font-weight:900}.idea-box{background:#fffbeb;border:1px dashed #fcd34d;border-radius:18px;gap:8px;padding:14px;display:grid}.idea-box .helper-text{margin:0}.preset-row{flex-wrap:wrap;gap:8px;display:flex}.preset-row button{color:#1f2937;background:#fff;border:1px solid #fde68a;border-radius:999px;padding:8px 12px;font-size:.85rem;font-weight:700}.preset-row button:hover{background:#fef3c7}.task-list{gap:10px;margin-top:16px;display:grid}.task-card{overflow-wrap:anywhere;border-left:6px solid #eab308;gap:12px;min-width:0;padding:18px;display:grid;overflow:hidden}.task-card.compact{gap:0;padding:0}.task-card-toggle{text-align:left;background:0 0;border-radius:22px;gap:8px;width:100%;padding:14px 16px 8px;display:grid}.task-card.compact .task-meta{align-items:center;padding:0 16px 14px}.task-card-quick{display:flex}.task-quick-done{color:#15803d;white-space:nowrap;background:#dcfce7;border-radius:999px;flex-shrink:0;padding:7px 10px;font-size:.82rem;font-weight:800}.task-quick-done:disabled{cursor:wait;opacity:.65}.task-quick-remind{color:#1d4ed8;white-space:nowrap;background:#dbeafe;border-radius:999px;flex-shrink:0;padding:7px 10px;font-size:.82rem;font-weight:800}.task-quick-remind:disabled{cursor:default;opacity:.7}.summary-pending{gap:8px;display:grid}.summary-pending .label{margin:0}.summary-pending-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.summary-pending-row p{overflow-wrap:anywhere;flex:1;min-width:0;margin:0;font-size:.92rem;font-weight:800}.task-card-toggle:hover{background:#fde68a47}.task-card-toggle h3{overflow-wrap:anywhere;margin:0;font-size:1rem;font-weight:800}.task-title-aside{flex-shrink:0;align-items:center;gap:8px;display:flex}.task-chevron{color:#94a3b8;width:1rem;font-size:1.1rem;font-weight:900;line-height:1}.task-card-detail{gap:12px;padding:0 16px 16px;display:grid}.task-card.approved{border-left-color:#22c55e}.task-card.pending_review{border-left-color:#38bdf8}.task-card.rejected,.task-card.expired{border-left-color:#ef4444}.task-title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.task-title-row h3{flex:1;min-width:0}.bonus-by{color:#a16207;margin:0 0 6px;font-size:.88rem;font-weight:800}.task-meta span,.pill{color:#92400e;white-space:nowrap;background:#fef3c7;border-radius:999px;flex-shrink:0;padding:7px 10px;font-size:.82rem;font-weight:800}.pill.negative{color:#b91c1c;background:#fee2e2}.task-actions button{color:#047857;background:#ecfdf5}.task-actions .danger{color:#b91c1c;background:#fee2e2}.child-picker,.summary-head,.selected-child{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.summary-head{flex-wrap:nowrap;min-width:0}.summary-head div{min-width:0}.child-summary{overflow:hidden}.child-summary h2{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.summary-actions{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.summary-actions .secondary{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.avatar{font-size:2rem}.progress{background:#fef3c7;border-radius:999px;width:100%;max-width:100%;height:12px;overflow:hidden}.progress-bar{background:#eab308;height:100%}.child-summary,.reward-card{gap:14px;display:grid}.cost{color:#92400e;margin:0;font-size:1.4rem;font-weight:900}.photo-picker{gap:8px;display:grid}.photo-actions{flex-wrap:wrap;gap:8px;display:flex}.photo-button{justify-content:center;width:fit-content;display:inline-flex}.evidence-photo{object-fit:cover;border-radius:16px;max-width:min(100%,320px);max-height:220px;display:block}.error-banner{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:18px;max-width:1200px;margin:0 auto 18px;padding:14px 18px;font-weight:800}.error-banner.inline{margin:0 0 16px}.success-banner{color:#3f6212;background:#ecfccb;border:1px solid #bef264;border-radius:18px;max-width:1200px;margin:0 auto;padding:14px 18px;font-weight:800}.success-banner.inline{margin:0 0 16px}.task-card.just-requested{border-color:#eab308;box-shadow:0 0 0 4px #eab30847}.text-button{color:#6d28d9;background:0 0;padding:0;font-weight:800}.apk-download{margin:8px 0 0}.apk-download a{font-weight:800}a{color:#6d28d9}@media (width>=901px){.notification-dropdown{left:auto;right:0}}@media (width<=900px){.app-shell,.auth-shell{padding:max(16px, calc(env(safe-area-inset-top,0px) + 12px)) 16px max(16px, calc(env(safe-area-inset-bottom,0px) + 12px))}html.is-native .app-shell,html.is-native .auth-shell{padding:max(52px, calc(env(safe-area-inset-top,0px) + 12px)) 16px max(28px, calc(env(safe-area-inset-bottom,0px) + 12px))}.app-shell,html.is-native .app-shell{padding-bottom:calc(96px + env(safe-area-inset-bottom,0px))}.app-nav{bottom:max(10px, env(safe-area-inset-bottom,0px));z-index:20;width:auto;max-width:none;margin:0;position:fixed;left:12px;right:12px}.layout,.stats-grid{grid-template-columns:1fr}.notification-dropdown{max-height:min(75vh,520px);left:16px;right:16px;top:max(52px, calc(env(safe-area-inset-top,0px) + 12px));width:auto;position:fixed}}
