*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-size:16px}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;min-height:100dvh;font-family:Inter,Segoe UI,Arial,sans-serif;overflow-x:hidden}:root{--color-bg:#f4f4f6;--color-surface:#fff;--color-surface-2:#fafafc;--color-surface-hover:#f7f5ff;--color-dark:#0f0f12;--color-dark-2:#1a1a1f;--color-on-dark:#f4f4f6;--color-primary:#b362ff;--color-primary-mid:#c58aff;--color-primary-light:#f1e3ff;--color-primary-dark:#8e3fe0;--color-primary-rgb:179, 98, 255;--color-accent:#fcd34d;--color-accent-light:#fef6d0;--color-on-accent:#1a1a1f;--color-pink:#f472b6;--color-pink-light:#fce7f3;--color-orange:#fb923c;--color-orange-light:#ffedd5;--color-success:#10b981;--color-success-light:#d1fae5;--color-danger:#ef4444;--color-danger-light:#fee2e2;--color-warning:#f59e0b;--color-text:#1a1a1f;--color-text-2:#404049;--color-text-muted:#9090a0;--color-text-soft:#6b6b78;--color-border:#ececef;--color-border-soft:#f3f3f5;--color-mandatory-bg:#fffbeb;--color-mandatory-border:#fde68a55;--color-mandatory-badge-bg:#fef3c7;--color-mandatory-badge-text:#92400e;--color-enc-bg:#ecfdf5;--color-enc-border:#10b98140;--color-enc-text:#166534;--color-enc-text-strong:#166534;--color-feed-reward-bg:#f5f3ff;--color-feed-reward-border:var(--color-primary-light);--color-feed-suggestion-bg:#f0feff;--color-feed-suggestion-border:#a5f3fc55;--color-feed-created-bg:#f0f9ff;--color-feed-created-border:#bae6fd66;--color-stats-leader-bg:linear-gradient(135deg, #fef3c7 0%, #fffbeb 100%);--color-stats-leader-border:#f59e0b;--color-stats-leader-text:var(--color-text);--color-stats-leader-text-muted:var(--color-text-2);--color-stats-leader-pill-bg:#f59e0b;--color-stats-leader-pill-text:white;--radius-xs:10px;--radius-sm:14px;--radius-md:20px;--radius-lg:26px;--radius-xl:32px;--radius-full:9999px;--shadow-xs:0 1px 3px #0f0f120a;--shadow-sm:0 2px 10px #0f0f120d;--shadow-md:0 8px 24px #0f0f1212;--shadow-lg:0 16px 40px #0f0f121a;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--app-max-width:430px}[data-theme=dark]{--color-bg:#121116;--color-surface:#1e1e24;--color-surface-2:#18181d;--color-surface-hover:#2a2a33;--color-dark:#f4f4f6;--color-dark-2:#e8e8ee;--color-primary:#c58aff;--color-primary-mid:#d4a8ff;--color-primary-light:#2a1f3d;--color-primary-dark:#b362ff;--color-primary-rgb:197, 138, 255;--color-accent-light:#2d2410;--color-pink-light:#2d1525;--color-orange-light:#2d1a0a;--color-success-light:#0d2818;--color-danger-light:#2d1515;--color-text:#f0f0f4;--color-text-2:#c8c8d4;--color-text-muted:#8888a0;--color-text-soft:#a0a0b0;--color-border:#2e2e38;--color-border-soft:#252530;--color-mandatory-bg:#2a2410;--color-mandatory-border:#fde68a38;--color-mandatory-badge-bg:#3d3010;--color-mandatory-badge-text:#fcd34d;--color-enc-bg:#0d2818;--color-enc-border:#10b98147;--color-enc-text:#6ee7b7;--color-enc-text-strong:#a7f3d0;--color-feed-reward-bg:#221833;--color-feed-reward-border:#c58aff47;--color-feed-suggestion-bg:#0f2228;--color-feed-suggestion-border:#a5f3fc33;--color-feed-created-bg:#102433;--color-feed-created-border:#bae6fd33;--color-stats-leader-bg:#2a1f08;--color-stats-leader-border:#f59e0b8c;--color-stats-leader-text:#fde68a;--color-stats-leader-text-muted:#f3d98a;--color-stats-leader-pill-bg:#f59e0b;--color-stats-leader-pill-text:#1a1a1f;--shadow-xs:0 1px 3px #00000038;--shadow-sm:0 2px 10px #00000047;--shadow-md:0 8px 24px #00000057;--shadow-lg:0 16px 40px #0000006b}.theme-mode-picker{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.theme-mode-option{border-radius:var(--radius-md);border:2px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text-muted);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:14px 8px;font-family:inherit;transition:border-color .15s,color .15s,background .15s,box-shadow .15s;display:flex}.theme-mode-option:hover:not(.is-selected){border-color:var(--color-text-muted);color:var(--color-text)}.theme-mode-option.is-selected{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light);box-shadow:0 0 0 1px rgba(var(--color-primary-rgb), .12)}.theme-mode-icon{justify-content:center;align-items:center;line-height:0;display:flex}.theme-mode-label{font-size:13px;font-weight:700}#root{max-width:var(--app-max-width);background:var(--color-bg);min-height:100dvh;margin:0 auto;position:relative}h1{font-size:28px;font-weight:800;line-height:1.2}h2{font-size:22px;font-weight:700;line-height:1.25}h3{font-size:17px;font-weight:700;line-height:1.3}@keyframes spin{to{transform:rotate(360deg)}}.pill{border-radius:var(--radius-full);letter-spacing:.02em;align-items:center;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.pill-purple{background:var(--color-primary-light);color:var(--color-primary)}.pill-green{background:var(--color-success-light);color:var(--color-success)}.pill-red{background:var(--color-danger-light);color:var(--color-danger)}.pill-amber{background:var(--color-accent-light);color:var(--color-warning)}.pill-gray{background:var(--color-border-soft);color:var(--color-text-muted)}.toast-container{top:var(--spacing-md);width:calc(100% - var(--spacing-xl) * 2);gap:var(--spacing-sm);z-index:200;pointer-events:none;flex-direction:column;max-width:390px;display:flex;position:fixed;left:50%;transform:translate(-50%)}.toast{align-items:center;gap:var(--spacing-sm);padding:14px var(--spacing-md);border-radius:var(--radius-md);color:#fff;box-shadow:var(--shadow-md);pointer-events:all;cursor:pointer;font-size:14px;font-weight:600;animation:.3s cubic-bezier(.34,1.56,.64,1) toastIn;display:flex}.toast-success{background:#2e7d32}.toast-info{background:var(--color-primary)}.toast-warning{background:#e65100}.toast-error{background:var(--color-danger)}.toast-emoji{flex-shrink:0;font-size:18px}.toast-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.toast-message{line-height:1.3}.toast-subtitle{opacity:.85;font-size:11px;font-weight:500;line-height:1.2}@keyframes toastIn{0%{opacity:0;transform:translateY(-16px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.familyrise-loader{place-items:center;width:160px;height:160px;display:grid}.familyrise-loader svg{width:100%;height:100%;overflow:visible}.familyrise-loader .arc{fill:none;stroke:url(#familyrise-arc-grad);stroke-width:10px;stroke-linecap:round;stroke-dasharray:260;stroke-dashoffset:70px}.familyrise-loader .arrow{fill:#1fc2b9}.familyrise-loader .loader-spin{transform-origin:100px 100px;animation:1.6s linear infinite familyrise-spin}.familyrise-loader .family{transform-origin:100px 110px;animation:1.2s ease-in-out infinite familyrise-bounce}.familyrise-loader .sparkles{transform-origin:100px 55px;animation:1.2s ease-in-out infinite familyrise-sparkle}.familyrise-loader .arm{fill:none;stroke-width:9px;stroke-linecap:round}.familyrise-loader .purple{stroke:#7b4cff}.familyrise-loader .teal{stroke:#19beb8}.familyrise-loader .yellow{stroke:#ffc21c}.familyrise-loader .blue{stroke:#2797f2}@keyframes familyrise-spin{to{transform:rotate(360deg)}}@keyframes familyrise-bounce{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.03)}}@keyframes familyrise-sparkle{0%,to{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.12)}}.auth-page{min-height:100dvh;padding:var(--spacing-lg);background:var(--color-bg);flex-direction:column;justify-content:center;align-items:center;display:flex}.auth-page--splash{justify-content:center;align-items:center}.auth-enter-top{animation:.6s cubic-bezier(.34,1.2,.4,1) both auth-slide-from-top}@keyframes auth-slide-from-top{0%{opacity:0;transform:translateY(-48px)}to{opacity:1;transform:translateY(0)}}.auth-stack{flex-direction:column;width:100%;max-width:360px;display:flex}.auth-reveal{grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.34,1.1,.4,1);display:grid}.auth-reveal--open{grid-template-rows:1fr}.auth-reveal-inner{min-height:0;overflow:hidden}.auth-reveal--open .auth-card{margin-top:var(--spacing-md);animation:.55s cubic-bezier(.34,1.2,.4,1) both auth-slide-up-under-brand}@keyframes auth-slide-up-under-brand{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.auth-enter-top{animation:none}.auth-reveal{transition:none}.auth-reveal--open .auth-card{animation:none}}.auth-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-brand{border-radius:var(--radius-xl);width:100%;padding:var(--spacing-lg) var(--spacing-xl);text-align:center;box-shadow:var(--shadow-md);z-index:2;background:#fff;position:relative}.auth-logo{margin-bottom:var(--spacing-sm);font-size:52px;line-height:1}.auth-logo-img{width:auto;max-width:240px;height:auto;margin:0 auto var(--spacing-sm);object-fit:contain;display:block}.auth-title{color:var(--color-text);letter-spacing:-.5px;font-size:30px;font-weight:900}.auth-subtitle{color:var(--color-text-muted);margin-top:6px;font-size:14px}.auth-card{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-md)}.btn-google,.btn-apple,.btn-facebook{justify-content:center;align-items:center;gap:var(--spacing-sm);width:100%;padding:14px var(--spacing-md);background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;font-size:15px;font-weight:600;transition:all .15s;display:flex}.btn-google+.btn-apple,.btn-apple+.btn-facebook,.btn-google+.btn-facebook{margin-top:var(--spacing-sm)}.btn-google:hover:not(:disabled),.btn-apple:hover:not(:disabled),.btn-facebook:hover:not(:disabled){background:var(--color-bg);box-shadow:var(--shadow-sm)}.btn-google:disabled,.btn-apple:disabled,.btn-facebook:disabled{opacity:.5;cursor:not-allowed}.btn-apple{color:#fff;background:#000;border-color:#000}.btn-apple:hover:not(:disabled){background:#1a1a1a}.auth-divider{align-items:center;gap:var(--spacing-sm);margin:var(--spacing-md) 0 0;color:var(--color-text-muted);font-size:13px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--color-border);flex:1;height:1px}.auth-divider--button{width:70%;max-width:220px;margin:var(--spacing-sm) auto 0;cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:inherit;font-weight:600;transition:color .15s}.auth-divider--button.is-open{margin-bottom:var(--spacing-xs)}.auth-divider--button>span{align-items:center;gap:6px;transition:color .15s;display:inline-flex}.auth-divider--button>span:after{content:"";border-bottom:2px solid;border-right:2px solid;width:8px;height:8px;transition:transform .25s;transform:rotate(45deg)translate(-1px,-1px)}.auth-divider--button.is-open>span:after{transform:rotate(-135deg)translate(-2px,-2px)}.auth-divider--button:hover>span,.auth-divider--button:focus-visible>span{color:var(--color-text)}.auth-collapse{grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.34,1.1,.4,1);display:grid}.auth-collapse--open{grid-template-rows:1fr}.auth-collapse-inner{min-height:0;overflow:hidden}.auth-collapse--open .auth-form{animation:.35s ease-out 50ms both auth-fade-in}@keyframes auth-fade-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.auth-collapse{transition:none}.auth-collapse--open .auth-form{animation:none}}.auth-form{gap:var(--spacing-md);flex-direction:column;display:flex}.form-field{flex-direction:column;gap:6px;display:flex}.form-field label{color:var(--color-text-2);font-size:13px;font-weight:700}.form-field input{padding:13px var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface-2);text-align:start;direction:ltr;outline:none;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}[dir=rtl] .form-field input[type=text]{direction:rtl}.form-field input:focus{border-color:var(--color-primary);background:var(--color-surface);box-shadow:0 0 0 3px var(--color-primary-light)}.btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;margin-top:var(--spacing-xs);border:none;padding:14px;font-family:inherit;font-size:15px;font-weight:700;transition:all .15s}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-login,.btn-start{background:#945aea}.btn-login:hover:not(:disabled),.btn-start:hover:not(:disabled){background:#7a40d1}.btn-start{margin-top:var(--spacing-md)}.auth-error{color:var(--color-danger);background:var(--color-danger-light);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);text-align:center;font-size:13px}.auth-switch{text-align:center;margin-top:var(--spacing-lg);color:var(--color-text-muted);font-size:14px}.auth-switch a{color:var(--color-primary);font-weight:700;text-decoration:none}.loading-screen{justify-content:center;align-items:center;min-height:100dvh;display:flex}.loading-spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:.65s linear infinite spin}.mode-select{gap:var(--spacing-lg);flex-direction:column;width:100%;max-width:420px;display:flex}.mode-select-header{text-align:center}.mode-select-greeting{color:var(--color-text-muted);margin:0 0 6px;font-size:14px}.mode-select-title{color:var(--color-text);margin:0 0 8px;font-size:22px;font-weight:800}.mode-select-subtitle{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.account-pick{border-radius:var(--radius-lg);background:var(--color-surface);border:2px solid var(--color-border);font:inherit;color:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:10px;padding:18px 12px;transition:border-color .15s,transform 60ms;display:flex}.account-pick:hover{border-color:var(--color-primary)}.account-pick:active{transform:scale(.98)}.account-pick--parent{width:100%}.account-pick-name{color:var(--color-text);text-align:center;overflow-wrap:anywhere;font-size:16px;font-weight:800}.account-pick-role{color:var(--color-text-muted);font-size:12.5px}.account-pick-divider{text-align:center;color:var(--color-text-muted);margin:4px 0 0;font-size:13px;font-weight:700}.account-pick-grid{justify-content:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.account-pick--child{flex:0 120px;max-width:150px}.mode-select-signout{margin-top:var(--spacing-md);color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:8px;font-size:13px}.mode-select-back{color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:8px 4px;font-size:14px;font-weight:700}@keyframes mode-rise-in{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mode-enter{animation:.45s cubic-bezier(.34,1.56,.64,1) both mode-rise-in;animation-delay:var(--enter-delay,0s)}@media (prefers-reduced-motion:reduce){.mode-enter{animation:none}}.auth-lang{margin-top:var(--spacing-lg);direction:rtl;justify-content:center;gap:6px;display:flex}.auth-lang-btn{border-radius:var(--radius-full);cursor:pointer;opacity:.55;filter:grayscale(.4);background:0 0;border:1px solid #0000;padding:6px 8px;font-size:1.5rem;line-height:1;transition:opacity .15s,filter .15s,transform .15s,border-color .15s,background .15s}.auth-lang-btn:hover{opacity:.85;transform:scale(1.08)}.auth-lang-btn.is-active{opacity:1;filter:none;border-color:var(--color-primary);background:var(--color-primary-light)}.auth-lang-flag{display:block}.legal-page{background:var(--color-bg);min-height:100dvh;color:var(--color-text);padding:var(--spacing-lg);padding-top:calc(var(--spacing-lg) + env(safe-area-inset-top,0px));padding-bottom:calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px));flex-direction:column;align-items:center;display:flex}.legal-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;max-width:720px;padding:var(--spacing-xl) var(--spacing-lg);box-shadow:var(--shadow-sm)}.legal-back{margin:0 0 var(--spacing-md);color:var(--color-primary);cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;padding:6px 0;font-family:inherit;font-size:14px;font-weight:700;display:inline-flex}.legal-back:hover{text-decoration:underline}.legal-title{color:var(--color-text);margin:0 0 4px;font-size:26px;font-weight:800}.legal-meta{color:var(--color-text-muted);margin:0 0 var(--spacing-lg);font-size:13px}.legal-body h2{color:var(--color-text);margin:var(--spacing-lg) 0 8px;font-size:18px;font-weight:800}.legal-body h3{color:var(--color-text);margin:var(--spacing-md) 0 4px;font-size:15px;font-weight:800}.legal-body h2:not(:first-of-type){padding-top:var(--spacing-md);border-top:1px solid var(--color-border)}.legal-body p,.legal-body li{color:var(--color-text-2);font-size:15px;line-height:1.7}.legal-body p{margin:0 0 12px}.legal-body ul{margin:0 0 12px;padding-inline-start:22px}.legal-body li{margin-bottom:6px}.legal-body a{color:var(--color-primary);font-weight:700;text-decoration:none}.legal-body a:hover{text-decoration:underline}.legal-body strong{color:var(--color-text);font-weight:700}.auth-legal{margin-top:var(--spacing-lg);text-align:center;color:var(--color-text-muted);font-size:13px;line-height:1.6}.auth-legal a{color:var(--color-text-soft);font-weight:600;text-decoration:none}.auth-legal a:hover{text-decoration:underline}.auth-legal-sep{opacity:.6;margin:0 6px}.settings-legal{margin-top:var(--spacing-md);text-align:center;flex-direction:column;gap:4px;display:flex}.settings-legal-links{flex-wrap:wrap;justify-content:center;align-items:center;gap:4px;display:flex}.settings-legal-links a{color:var(--color-text-soft);padding:4px 6px;font-size:13px;font-weight:600;text-decoration:none}.settings-legal-links a:hover{text-decoration:underline}.settings-legal-sep{color:var(--color-text-muted);opacity:.6}.settings-legal-copyright{color:var(--color-text-muted);font-size:12px}.child-avatar{vertical-align:middle;-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;line-height:1;display:inline-flex;overflow:hidden}.child-avatar-img{object-fit:cover;width:100%;height:100%;display:block}.child-avatar-emoji{line-height:1}.photo-cropper{flex-direction:column;align-items:center;gap:10px;display:flex}.pc-frame{background:#00000010;border:2.5px solid;border-radius:50%;flex-shrink:0;position:relative;overflow:hidden}.pc-frame:active{cursor:grabbing!important}.pc-ring{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff73}.pc-zoom-row{align-items:center;gap:8px;width:100%;max-width:220px;display:flex}.pc-zoom-slider{appearance:none;background:var(--color-border);border-radius:var(--radius-full);outline:none;flex:1;height:4px}.pc-zoom-slider::-webkit-slider-thumb{appearance:none;width:18px;height:18px;box-shadow:var(--shadow-sm);cursor:pointer;background:#fff;border:2px solid;border-radius:50%}.pc-zoom-slider::-moz-range-thumb{width:18px;height:18px;box-shadow:var(--shadow-sm);cursor:pointer;background:#fff;border:2px solid;border-radius:50%}.pc-zoom-label{color:var(--color-text-muted);text-align:center;width:14px;font-size:16px;font-weight:700}.ob-page{background:var(--color-bg);flex-direction:column;min-height:100dvh;display:flex}.ob-header{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.ob-logo{color:var(--color-primary);font-size:15px;font-weight:800}.ob-logo-img{object-fit:contain;width:auto;height:28px;display:block}.ob-step-count{color:var(--color-text-muted);font-size:13px}.ob-header-right{align-items:center;gap:var(--spacing-sm);display:flex}.theme-toggle{border:1px solid var(--color-border);background:var(--color-surface);width:34px;height:34px;color:var(--color-text);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,transform .1s;display:inline-flex}.theme-toggle:hover{background:var(--color-surface-alt,#7f7f7f14)}.theme-toggle:active{transform:scale(.92)}.ob-progress-wrap{background:var(--color-border);height:3px}.ob-progress-bar{background:var(--color-primary);height:100%;transition:width .4s}.ob-content{padding:var(--spacing-lg);flex:1;overflow-y:auto}.ob-step{gap:var(--spacing-lg);max-width:480px;padding-bottom:var(--spacing-xl);flex-direction:column;margin:0 auto;display:flex}.ob-step-icon{text-align:center;margin-bottom:var(--spacing-xs);font-size:48px}.ob-step-logo{object-fit:contain;width:128px;height:128px;margin:0 auto var(--spacing-xs);border-radius:var(--radius-md);display:block}.ob-step-title{text-align:center;color:var(--color-text);font-size:22px;font-weight:800;line-height:1.3}.ob-step-subtitle{text-align:center;color:var(--color-text-muted);margin-top:-12px;font-size:14px}.ob-input{width:100%;padding:14px var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface);text-align:start;outline:none;font-size:16px;transition:border-color .15s}.ob-input:focus{border-color:var(--color-primary)}.ob-field{flex-direction:column;gap:8px;display:flex}.ob-label{color:var(--color-text);font-size:14px;font-weight:600}.ob-label-hint{color:var(--color-text-muted);font-size:12px;font-weight:500}.ob-error{color:var(--color-danger);text-align:center;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);background:#fdf0f0;font-size:13px}.ob-btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;padding:15px;font-size:16px;font-weight:700;transition:background .15s,transform .1s}.ob-btn-primary:hover:not(:disabled){background:#4a7de0}.ob-btn-primary:active:not(:disabled){transform:scale(.98)}.ob-btn-secondary{width:100%;color:var(--color-primary);border:1.5px dashed var(--color-primary);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:12px;font-size:15px;font-weight:600;transition:background .15s}.ob-btn-secondary:hover:not(:disabled){background:var(--color-primary-light)}.ob-btn-back{color:var(--color-text-muted);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:15px 24px;font-size:15px;font-weight:600}.ob-nav-row{gap:var(--spacing-sm);margin-top:var(--spacing-xs);display:flex}.ob-nav-row .ob-btn-primary{flex:1}.ob-children-list{gap:var(--spacing-md);flex-direction:column;display:flex}.ob-logo-btn{cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:0;display:inline-flex}.ob-logo-btn:active{transform:scale(.96)}.ob-logo-overlay{z-index:200;padding:var(--spacing-lg);background:#11182799;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ob-logo-menu{background:var(--color-surface,#fff);border-radius:var(--radius-md);padding:var(--spacing-lg);gap:var(--spacing-sm);width:min(90vw,320px);box-shadow:var(--shadow-lg,0 10px 40px #0000004d);flex-direction:column;display:flex}.ob-logo-menu-title{color:var(--color-text);margin:0 0 var(--spacing-xs);text-align:center;font-size:17px;font-weight:800}.ob-logo-menu-item{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;cursor:pointer;border:none;padding:13px;font-family:inherit;font-size:15px;font-weight:700;transition:filter .15s}.ob-logo-menu-item:hover{filter:brightness(.95)}.ob-logo-menu-item--ghost{color:var(--color-text-muted);border:1px solid var(--color-border);background:0 0}.ob-welcome{text-align:center;justify-content:center;align-items:center;gap:var(--spacing-md);min-height:60vh;padding:var(--spacing-lg);flex-direction:column;display:flex}.ob-welcome>*{opacity:0}.ob-welcome-logo{width:180px;max-width:70%;height:auto;animation:.5s cubic-bezier(.34,1.56,.64,1) 50ms both obDropIn}@keyframes obDropIn{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes obRiseIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.ob-welcome-subtitle{animation:.5s .95s both obRiseIn}.ob-welcome-theme{animation:.5s 1.15s both obRiseIn}.ob-welcome-cta{animation:.5s 1.35s both obRiseIn}.ob-welcome-lang{animation:.5s 1.55s both obRiseIn}.ob-welcome-title{color:var(--color-text);opacity:1;margin:0;font-size:24px;font-weight:800}.ob-welcome-title-text{white-space:nowrap;vertical-align:bottom;border-inline-end:2px solid var(--color-primary);max-width:100%;animation:1.1s steps(28,end) 50ms both obType,.7s step-end 50ms 3 obCaret,0s linear 1.15s both obCaretHide;display:inline-block;overflow:hidden}@keyframes obType{0%{width:0}to{width:100%}}@keyframes obCaret{0%,to{border-inline-end-color:var(--color-primary)}50%{border-inline-end-color:#0000}}@keyframes obCaretHide{to{border-inline-end-color:#0000}}@media (prefers-reduced-motion:reduce){.ob-welcome>*,.ob-welcome-logo,.ob-welcome-subtitle,.ob-welcome-theme,.ob-welcome-cta,.ob-welcome-lang,.ob-welcome-title-text{opacity:1;animation:none}.ob-welcome-title-text{border-inline-end-color:#0000;width:auto}}.ob-welcome-subtitle{color:var(--color-text-muted);max-width:340px;margin:0;font-size:15px;line-height:1.5}.ob-welcome-cta{margin-top:var(--spacing-sm);max-width:280px}.ob-welcome-theme{width:100%;max-width:320px;margin-top:var(--spacing-sm)}.ob-welcome-theme-label{color:var(--color-text-muted);margin:0 0 8px;font-size:13px;font-weight:700}.ob-welcome-lang{margin-top:12px}.ob-welcome-lang-label{color:var(--color-text-muted);margin:0 0 8px;font-size:13px;font-weight:700}.ob-welcome-lang-flags{justify-content:center;gap:10px;display:flex}.ob-welcome-lang-flag{border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;font-size:22px;line-height:1;transition:all .15s;display:flex}.ob-welcome-lang-flag:hover{transform:scale(1.08)}.ob-welcome-lang-flag.is-selected{border-color:var(--color-primary);background:var(--color-primary-light)}.ob-welcome-exit{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;margin-top:20px;padding:8px;font-family:inherit;font-size:14px;font-weight:600;animation:.5s 1.7s both obRiseIn}.ob-welcome-exit:hover{color:var(--color-text);text-decoration:underline}.ob-single-parent{margin-bottom:var(--spacing-md)}.ob-marital-grid{gap:var(--spacing-sm);grid-template-columns:1fr 1fr;display:grid}.ob-spouse-connect{margin-top:var(--spacing-sm);width:100%}.ob-empty-hint{color:var(--color-text-muted);text-align:center;margin:0 0 var(--spacing-sm);font-size:13px}.ob-pets-block{margin-top:var(--spacing-lg)}.ob-pets-title{color:var(--color-text);margin:0 0 var(--spacing-sm);text-align:start;font-size:15px;font-weight:800}.ob-pets-block .ob-children-list{margin-bottom:var(--spacing-md)}.pet-type-other-label{font-size:12px;font-weight:700;line-height:1}.ob-child-card{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-md);gap:var(--spacing-md);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.ob-child-header{justify-content:space-between;align-items:center;display:flex}.ob-child-number{color:var(--color-text-muted);font-size:13px;font-weight:700}.ob-spouse-card-header{justify-content:flex-end;margin-bottom:-4px}.ob-spouse-card-header .ob-remove-btn{font-size:16px}.ob-remove-btn{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:14px}.ob-photo-row{align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-sm) 0;display:flex}.ob-photo-btn{cursor:pointer;background:0 0;border:2.5px dashed;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:88px;height:88px;padding:0;transition:transform .15s;display:flex;position:relative;overflow:hidden}.ob-photo-btn:hover{transform:scale(1.04)}.ob-photo-img{object-fit:cover;border-radius:50%;width:100%;height:100%}.ob-photo-emoji{font-size:40px;line-height:1}.ob-photo-edit-icon{bottom:2px;color:#fff;border:2px solid var(--color-surface);width:26px;height:26px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset-inline-end:2px}.ob-photo-hint{flex-direction:column;flex:1;gap:2px;display:flex}.ob-photo-hint-title{color:var(--color-text);font-size:13px;font-weight:700}.ob-photo-hint-text{color:var(--color-text-muted);font-size:12px}.ob-photo-hint-center{opacity:.85;margin-top:2px}.ob-photo-actions{gap:6px;margin-top:6px;display:flex}.ob-photo-action{background:var(--color-bg);border:1.5px solid var(--color-border);color:var(--color-text);border-radius:var(--radius-full);cursor:pointer;padding:5px 12px;font-size:12px;font-weight:700;transition:all .15s}.ob-photo-action:hover{border-color:var(--color-primary);color:var(--color-primary)}.ob-photo-action.danger{color:var(--color-danger);border-color:var(--color-danger-light);background:var(--color-danger-light)}.ob-photo-action.danger:hover{border-color:var(--color-danger);background:#fbcaca}.ob-photo-row--top{text-align:center;flex-direction:column;align-items:center}.ob-photo-row--top .ob-photo-hint{flex:none;align-items:center}.ob-photo-row--top .ob-photo-actions{justify-content:center}.ob-avatar-grid{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.ob-avatar-btn{background:var(--color-bg);border-radius:var(--radius-sm);cursor:pointer;border:2px solid #0000;padding:6px;font-size:22px;line-height:1;transition:all .15s}.ob-avatar-btn.selected{transform:scale(1.1)}.ob-color-row{flex-wrap:wrap;gap:8px;display:flex}.ob-color-dot{cursor:pointer;border:3px solid #0000;border-radius:50%;width:28px;height:28px;transition:transform .15s}.ob-color-dot.selected{border-color:#fff;outline:2px solid #aaa;transform:scale(1.2)}.ob-gender-row{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.ob-gender-btn{background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:10px 8px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:flex}.ob-gender-btn:hover{border-color:var(--color-primary)}.ob-gender-btn.selected{font-weight:700}.ob-gender-icon{font-size:22px;line-height:1}.ob-birth-row{flex-direction:column;gap:8px;display:flex}.ob-birth-label{color:var(--color-text);justify-content:space-between;align-items:center;gap:var(--spacing-sm);font-size:14px;font-weight:600;display:flex}.ob-age-pill{border-radius:var(--radius-full);background:var(--color-primary-light,#eef2ff);color:var(--color-primary-dark,var(--color-primary));padding:3px 10px;font-size:12px;font-weight:700}.ob-date-input{text-align:right;direction:ltr;align-items:center;font-family:inherit;display:flex}.ob-date-input::-webkit-date-and-time-value{text-align:right;margin:0}.ob-date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;margin-inline:0 auto}.ob-category-grid{gap:var(--spacing-sm);grid-template-columns:1fr 1fr;display:grid}.ob-category-chip{align-items:center;gap:var(--spacing-sm);padding:14px var(--spacing-md);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:start;color:var(--color-text);font-size:15px;font-weight:600;transition:all .15s;display:flex}.ob-category-chip:hover{border-color:var(--color-primary)}.ob-category-chip.selected{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.ob-category-icon{font-size:20px}.ob-category-chip--all{border-style:dashed;font-weight:700}.ob-slogan-toggle{color:var(--color-primary);cursor:pointer;background:0 0;border:none;margin-top:8px;padding:4px 0;font-family:inherit;font-size:13px;font-weight:700}.ob-slogan-toggle:hover{text-decoration:underline}.ob-slogan-presets{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.ob-slogan-chip{background:var(--color-surface-2);border:1.5px solid var(--color-border);color:var(--color-text);cursor:pointer;border-radius:999px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.ob-slogan-chip:hover:not(.is-selected){border-color:var(--color-primary-mid)}.ob-slogan-chip.is-selected{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary-dark)}.ob-slogan-more{margin-top:10px;display:block}.ob-task-list{flex-direction:column;gap:8px;display:flex}.ob-task-info{flex-direction:column;flex:1;gap:4px;display:flex}.ob-task-title{color:var(--color-text);font-size:14px;font-weight:600}.ob-task-meta{gap:6px;display:flex}.ob-task-badge.points{color:#e65100;background:#fff3e0}.ob-empty{text-align:center;color:var(--color-text-muted);font-size:14px}.ob-child-tabs{flex-wrap:wrap;gap:8px;display:flex}.ob-child-tab{border:2px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);cursor:pointer;color:var(--color-text);align-items:center;gap:6px;padding:6px 14px 6px 8px;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.ob-child-tab.selected{color:var(--color-primary);font-weight:700}.ob-range-labels{color:var(--color-text-muted);justify-content:space-between;font-size:12px;display:flex}.ob-linked-tasks{flex-direction:column;gap:6px;display:flex}.ob-task-row.compact span:first-of-type{flex:1;font-size:13px}.ob-pin-row{gap:var(--spacing-md);direction:ltr;justify-content:center;display:flex}.ob-pin-input{border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:center;width:60px;height:70px;color:var(--color-text);background:var(--color-surface);-webkit-text-security:disc;outline:none;font-size:28px;font-weight:800;transition:border-color .15s}.ob-pin-input:focus{border-color:var(--color-primary)}.ob-loading{text-align:center;color:var(--color-text-muted);padding:var(--spacing-xl) 0}.ob-links-list{gap:var(--spacing-md);flex-direction:column;display:flex}.ob-link-card{background:var(--color-surface);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;display:flex}.ob-link-child{align-items:center;gap:var(--spacing-sm);display:flex}.ob-link-avatar{font-size:24px}.ob-link-name{color:var(--color-text);font-size:16px;font-weight:700}.ob-link-url{color:var(--color-text-muted);word-break:break-all;background:var(--color-bg);border-radius:var(--radius-sm);text-align:left;direction:ltr;padding:8px;font-size:11px}.ob-copy-btn{background:var(--color-primary-light);color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:10px;font-size:14px;font-weight:700;transition:all .15s}.ob-copy-btn.copied{color:var(--color-success);background:#e8f5e9}.ob-hint{color:var(--color-text-muted);text-align:center;font-size:13px}.ob-btn-finish,.ob-family-link-card{margin-top:var(--spacing-sm)}.ob-family-link-label{color:var(--color-text);margin:0 0 8px;font-size:14px;font-weight:700}.child-access-loading,.child-access-error{justify-content:center;align-items:center;gap:var(--spacing-md);min-height:100dvh;padding:var(--spacing-xl);background:var(--color-bg);flex-direction:column;display:flex}.child-access-icon{font-size:64px}.child-access-logo{object-fit:contain;filter:drop-shadow(0 6px 18px #6c5ce72e);width:96px;height:96px;margin-bottom:4px}@keyframes child-access-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.child-access-logo--pulse{animation:1.8s ease-in-out infinite child-access-pulse}.child-access-error p{color:var(--color-text);text-align:center;max-width:360px;font-size:16px;font-weight:600}.child-access-title{color:var(--color-text);margin:0;font-size:22px;font-weight:800}.child-access-hint{color:var(--color-text-muted);text-align:center;max-width:360px;font-size:14px}.child-access-actions{gap:var(--spacing-sm);margin-top:var(--spacing-sm);flex-direction:column;width:100%;max-width:320px;display:flex}.child-access-actions>.ob-btn-primary{width:100%}.child-access-link-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:6px;font-family:inherit;font-size:14px;font-weight:600}.child-access-link-btn:hover{text-decoration:underline}.child-google-login-page{justify-content:center;align-items:center;gap:var(--spacing-md);min-height:100dvh;padding:var(--spacing-xl);background:var(--color-bg);text-align:center;flex-direction:column;display:flex}.child-google-login-btn{width:100%;max-width:320px}.child-google-login-error{max-width:360px}.child-picker-page{min-height:100dvh;padding:var(--spacing-xl) var(--spacing-lg);background:var(--color-bg);gap:var(--spacing-lg);flex-direction:column;display:flex}.child-picker-header{text-align:center}.child-picker-logo{color:var(--color-primary);font-size:15px;font-weight:800}.child-picker-logo-img{width:auto;max-width:220px;height:36px;margin:0 auto 8px;display:block}.child-picker-title{color:var(--color-text);margin:8px 0 4px;font-size:26px;font-weight:900}.child-picker-subtitle{color:var(--color-text-muted);margin:0;font-size:14px}.child-picker-list{gap:var(--spacing-sm);flex-direction:column;flex:1;display:flex}.child-picker-card{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:start;width:100%;box-shadow:var(--shadow-xs);font-family:inherit;transition:all .15s;display:flex}.child-picker-card:hover:not(:disabled){border-color:var(--card-color,var(--color-primary));box-shadow:var(--shadow-md)}.child-picker-card.claimed{opacity:.55;cursor:not-allowed}.child-picker-name{color:var(--color-text);flex:1;font-size:18px;font-weight:800}.child-picker-claimed{color:var(--color-text-muted);font-size:12px;font-weight:600}.child-page{background:var(--color-bg);flex-direction:column;min-height:100dvh;display:flex}.child-loading{justify-content:center;align-items:center;min-height:100dvh;display:flex}.child-banner{background-position:50%;background-repeat:no-repeat;background-size:cover;box-shadow:0 6px 18px #0f172a14}.child-banner+.child-header{border-radius:0 0 var(--radius-xl) var(--radius-xl);margin-top:calc(-1 * var(--radius-md));padding-top:calc(20px + var(--radius-md));z-index:1;position:relative}.child-header{padding:20px var(--spacing-lg) 28px;align-items:center;gap:var(--spacing-md);background:var(--color-surface);border-radius:0 0 var(--radius-xl) var(--radius-xl);box-shadow:var(--shadow-sm);display:flex;position:relative}.child-header-actions{align-items:center;gap:var(--spacing-sm);flex-direction:column;flex-shrink:0;margin-inline-start:auto;display:flex}.child-parent-btn{top:var(--spacing-md);background:var(--color-surface-2);border-radius:var(--radius-full);cursor:pointer;width:34px;height:34px;color:var(--color-text-muted);border:none;justify-content:center;align-items:center;font-size:15px;transition:background .15s;display:flex;position:absolute;inset-inline-end:var(--spacing-md)}.child-parent-btn:hover{background:var(--color-border)}.child-identity{align-items:center;gap:var(--spacing-sm);flex:1;display:flex}.child-identity-btn{border-radius:var(--radius-lg);text-align:start;cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;padding:4px 6px;transition:background .15s,transform 60ms}.child-identity-btn:hover{background:color-mix(in srgb, var(--color-text) 4%, transparent)}.child-identity-btn:active{transform:scale(.98)}.child-avatar-big{font-size:48px;line-height:1}.child-greeting{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:500}.child-name{color:var(--color-text);margin:0;font-size:26px;font-weight:900;line-height:1.1}.child-score{background:var(--color-primary);border-radius:var(--radius-md);text-align:center;box-shadow:0 4px 14px rgba(var(--color-primary-rgb), .28);padding:10px 14px}.child-score-num{color:#fff;font-size:28px;font-weight:900;line-height:1;display:block}.child-score-total{color:#ffffffbf;font-size:10px;font-weight:600}.child-progress-wrap{background:var(--color-border);height:3px}.child-progress-fill{background:var(--color-primary);height:100%;transition:width .5s}.child-content{padding:var(--spacing-lg);gap:var(--spacing-lg);flex-direction:column;flex:1;padding-bottom:32px;display:flex}.child-empty{text-align:center;color:var(--color-text-muted);padding:48px;font-size:18px;font-weight:700}.task-section{flex-direction:column;gap:10px;display:flex}.task-section+.task-section{margin-top:20px}.task-section-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px;font-size:13px;font-weight:800}.task-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:14px var(--spacing-md);align-items:center;gap:var(--spacing-md);box-shadow:var(--shadow-xs);border:1.5px solid #0000;transition:all .2s;display:flex;position:relative;overflow:hidden}.task-card:not(.done):not(.not-my-turn){border-color:var(--color-border-soft)}.task-card.mandatory{background:var(--color-mandatory-bg);border-color:var(--color-mandatory-border)}.task-card.done{opacity:.5}.task-card.not-my-turn{opacity:.35}.task-card-actions{flex-direction:column;flex-shrink:0;align-items:center;gap:6px;display:flex}.task-card-buttons{flex-direction:row-reverse;align-items:flex-start;gap:8px;display:flex}.task-timer-slot{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;min-width:38px;display:flex}.task-pet-badge{background:var(--color-primary-light);border:1.5px solid var(--color-border-soft);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;line-height:1;display:inline-flex;overflow:hidden}.task-pet-badge img{object-fit:cover;width:100%;height:100%}.task-check{border:2.5px solid var(--color-border);background:var(--color-surface);cursor:pointer;color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;font-weight:900;transition:all .2s;display:flex}.task-check.checked{background:var(--color-success);border-color:var(--color-success);box-shadow:0 4px 12px #10b9814d}.task-check:not(.checked):not(:disabled):hover{border-color:var(--color-primary);background:var(--color-primary-light)}.task-check:disabled{cursor:default}.task-card-body{flex-direction:column;flex:1;gap:5px;min-width:0;padding-inline:2px;display:flex}.task-title{color:var(--color-text);overflow-wrap:anywhere;font-size:16px;font-weight:700;line-height:1.35}.task-title.crossed{color:var(--color-text-muted);font-weight:500;text-decoration:line-through}.task-meta-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.task-card.mandatory .task-type-badge{background:var(--color-mandatory-badge-bg);color:var(--color-mandatory-badge-text)}.task-points{color:var(--color-accent);font-size:12px;font-weight:700}.task-duration{color:var(--color-text-muted);text-align:center;white-space:nowrap;font-size:11px;font-weight:600}.task-not-turn{color:var(--color-text-muted);font-size:11px}.task-repeat-badge{color:var(--color-primary);background:var(--color-primary-light);border-radius:var(--radius-full);padding:2px 8px;font-size:11px;font-weight:800}.task-check.repeatable{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-size:17px;box-shadow:0 4px 12px #5b8dee4d}.task-check.repeatable:not(:disabled):hover{border-color:var(--color-primary);background:var(--color-primary);filter:brightness(1.06);transform:scale(1.06)}.task-check.cumulative{background:var(--color-primary);border-color:var(--color-primary);color:#fff;font-size:16px;box-shadow:0 4px 12px #5b8dee4d}.task-check.cumulative:not(:disabled):hover{border-color:var(--color-primary);background:var(--color-primary);filter:brightness(1.06);transform:scale(1.06)}.task-confetti{inset-inline-start:var(--spacing-sm);pointer-events:none;font-size:22px;animation:.5s forwards pop;position:absolute;top:50%;transform:translateY(-50%)}.task-timer-btn{background:var(--color-primary-light);cursor:pointer;width:38px;height:38px;color:var(--color-primary);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;transition:all .15s;display:flex}.task-timer-btn:hover{background:var(--color-primary);color:#fff;transform:scale(1.06)}.reward-section{gap:var(--spacing-sm);flex-direction:column;display:flex}.reward-section-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:800}.reward-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.reward-achieved{gap:var(--spacing-sm);margin-top:var(--spacing-md);flex-direction:column;display:flex}.reward-achieved-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.reward-achieved-row{background:var(--color-bg);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);align-items:center;gap:8px;padding:8px 10px;display:flex}.reward-achieved-icon{flex-shrink:0;font-size:18px}.reward-achieved-title{min-width:0;color:var(--color-text);overflow-wrap:anywhere;flex:1;font-size:13px;font-weight:700}.reward-achieved-date{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.incentive-prog-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft)}.incentive-prog-head{align-items:center;gap:var(--spacing-sm);display:flex}.incentive-prog-icon{font-size:22px}.incentive-prog-title{color:var(--color-text);font-weight:700}.incentive-prog-rule{color:var(--color-text-2);margin:6px 0 10px;font-size:13px}.incentive-prog-tasks{flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.incentive-prog-task{flex-direction:column;gap:6px;display:flex}.incentive-prog-task-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.incentive-prog-task-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:14px;overflow:hidden}.incentive-prog-count{color:var(--color-primary);white-space:nowrap;flex-shrink:0;font-size:13px;font-weight:700}.incentive-prog-bar-bg{border-radius:var(--radius-full);background:var(--color-surface-2);width:100%;height:10px;overflow:hidden}.incentive-prog-bar-fill{border-radius:var(--radius-full);background:linear-gradient(90deg,#f59e0b,#fb923c);height:100%;transition:width .4s;display:block}.incentive-prog-renew{color:var(--color-text-2);margin-top:2px;font-size:12px;font-weight:600}.reward-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);text-align:start;width:100%;color:inherit;cursor:pointer;font-family:inherit;transition:border-color .15s,box-shadow .15s,transform .1s;display:block}.reward-card:hover{border-color:var(--color-primary-light)}.reward-card:active{transform:scale(.997)}.reward-card--open{border-color:var(--color-primary);box-shadow:0 4px 18px rgba(var(--color-primary-rgb,108, 92, 231), .12)}.reward-header{justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:10px;display:flex}.reward-title{color:var(--color-text);font-size:16px;font-weight:700}.reward-count{color:var(--color-primary);white-space:nowrap;font-size:13px;font-weight:700}.reward-bar-bg{background:var(--color-border);border-radius:var(--radius-full);height:8px;overflow:hidden}.reward-bar-fill{background:linear-gradient(90deg, var(--color-primary), var(--color-primary-mid));border-radius:var(--radius-full);height:100%;transition:width .6s}.reward-bar-row{grid-template-columns:1fr auto 1fr;align-items:center;margin-top:4px;display:grid}.reward-pct{color:var(--color-text-muted);grid-column:1;justify-self:start;font-size:11px;font-weight:600}.reward-chevron{color:var(--color-text-muted);grid-column:2;font-size:14px;line-height:1;transition:color .15s}.reward-card--open .reward-chevron{color:var(--color-primary)}.reward-tasks{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1.5px dashed var(--color-border);flex-direction:column;gap:8px;animation:.18s ease-out rewardTasksFade;display:flex}@keyframes rewardTasksFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.reward-tasks-label{color:var(--color-text-muted);margin:0;font-size:12.5px;font-weight:700}.reward-tasks-empty{color:var(--color-text-muted);margin:0;font-size:13px;font-style:italic;line-height:1.5}.reward-tasks-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.reward-task-row{background:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border-soft);align-items:center;gap:10px;padding:8px 10px;display:flex}.reward-task-icon{flex-shrink:0;font-size:18px;line-height:1}.reward-task-title{color:var(--color-text);overflow-wrap:anywhere;flex:1;min-width:0;font-size:13.5px;font-weight:600}.reward-task-pts{color:var(--color-accent,#fcd34d);border-radius:var(--radius-full);white-space:nowrap;background:#fcd34d29;flex-shrink:0;padding:3px 9px;font-size:12.5px;font-weight:800}.reward-log-toggle{color:var(--color-text-muted);cursor:pointer;letter-spacing:.02em;align-self:flex-start;align-items:center;gap:4px;margin-top:2px;padding:2px 4px;font-size:12px;font-weight:700;display:inline-flex}.reward-log-toggle:hover{color:var(--color-text)}.reward-log-chevron{font-size:13px;line-height:1}.reward-log{flex-direction:column;gap:6px;animation:.18s ease-out rewardTasksFade;display:flex}.reward-log-empty{color:var(--color-text-muted);margin:0;font-size:12.5px;font-style:italic}.reward-log-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.reward-log-row{background:var(--color-bg);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);align-items:center;gap:8px;padding:7px 10px;display:flex}.reward-log-title{min-width:0;color:var(--color-text);overflow-wrap:anywhere;flex:1;font-size:13px;font-weight:600}.reward-log-date{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.reward-log-pts{color:var(--color-accent,#fcd34d);white-space:nowrap;flex-shrink:0;font-size:12.5px;font-weight:800}.reward-log-row--adjust{border-style:dashed}.reward-log-more{color:var(--color-text-muted);cursor:pointer;letter-spacing:.02em;align-self:center;align-items:center;gap:4px;margin-top:2px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.reward-log-more:hover{color:var(--color-text)}.reward-log-more-chevron{font-size:13px;line-height:1}.enc-banner{align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);border-radius:var(--radius-lg);background:var(--color-enc-bg);border:1.5px solid var(--color-enc-border);box-shadow:var(--shadow-sm);animation:.45s ease-out encPop;display:flex;position:relative}@keyframes encPop{0%{opacity:0;transform:translateY(-6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.enc-banner-icon{flex-shrink:0;font-size:32px;line-height:1}.enc-banner-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.enc-banner-from{color:var(--color-enc-text);margin:0;font-size:14px}.enc-banner-from strong{color:var(--color-enc-text-strong);font-weight:800}.enc-banner-msg{color:var(--color-enc-text-strong);margin:4px 0 0;font-size:17px;font-weight:700;line-height:1.4}.enc-banner-extra{color:var(--color-enc-text);margin:4px 0 0;font-size:12px;font-weight:600}.enc-banner-close{background:var(--color-surface);width:28px;height:28px;color:var(--color-enc-text);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;transition:background .15s;display:flex}.enc-banner-close:hover{background:var(--color-surface-2)}.enc-banner--stars{background:var(--color-accent-light,#fef6d0);border-color:var(--color-accent,#fcd34d)}.enc-banner--stars .enc-banner-icon{font-size:34px}.enc-banner--suggestion{background:var(--color-primary-light);border-color:var(--color-primary)}.enc-banner-stack{flex-direction:column;gap:10px;display:flex}.enc-banner-stack-header{justify-content:space-between;align-items:center;gap:var(--spacing-sm);padding:0 4px;display:flex}.enc-banner-stack-count{color:var(--color-text-muted);font-size:12.5px;font-weight:700}.enc-banner-stack-dismiss{color:var(--color-primary);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px 6px;font-family:inherit;font-size:12.5px;font-weight:700}.enc-banner-stack-dismiss:hover{background:var(--color-primary-light)}.enc-banner-swipe{-webkit-user-select:none;user-select:none;cursor:grab}.enc-banner-swipe:active{cursor:grabbing}.enc-history{margin-top:var(--spacing-md)}.enc-history-toggle{border:2px dashed var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-muted);cursor:pointer;background:0 0;align-items:center;gap:8px;padding:14px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:flex}.enc-history-toggle:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.enc-history-toggle-icon{font-size:18px;line-height:1}.enc-history-toggle-label{text-align:start;flex:1}.enc-history-toggle-chevron{font-size:16px;line-height:1}.enc-history-list-wrap{margin-top:10px;animation:.25s ease-out encPop}.enc-history-empty{color:var(--color-text-muted);margin:0;padding:4px 6px;font-size:13px;line-height:1.5}.enc-history-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.enc-history-row{align-items:flex-start;gap:var(--spacing-sm);border-radius:var(--radius-md);background:var(--color-enc-bg);border:1px solid var(--color-enc-border);padding:10px 12px;display:flex}.enc-history-icon{flex-shrink:0;font-size:20px;line-height:1}.enc-history-body{flex:1;min-width:0}.enc-history-from{color:var(--color-enc-text);margin:0;font-size:12.5px}.enc-history-from strong{color:var(--color-enc-text-strong);font-weight:800}.enc-history-msg{color:var(--color-enc-text-strong);word-break:break-word;margin:3px 0 0;font-size:14.5px;font-weight:700;line-height:1.4}.enc-history-task{color:var(--color-enc-text);word-break:break-word;margin:5px 0 0;font-size:12px;font-weight:600;line-height:1.3}.enc-history-date{color:var(--color-enc-text);white-space:nowrap;flex-shrink:0;font-size:11.5px}.child-suggest-btn{border:2px dashed var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-muted);cursor:pointer;background:0 0;padding:14px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.child-suggest-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.suggestion-type-row{gap:var(--spacing-sm);width:100%;display:flex}.suggestion-type-btn{background:var(--color-surface-2);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text);flex:1;padding:12px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.suggestion-type-btn.selected{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.modal-card{background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--spacing-xl);padding-bottom:calc(var(--spacing-xl) + 16px + env(safe-area-inset-bottom,0px));width:100%;max-width:var(--app-max-width);align-items:center;gap:var(--spacing-md);flex-direction:column;animation:.25s slideUp;display:flex;position:relative}.modal-close{top:var(--spacing-md);background:var(--color-surface-2);cursor:pointer;width:32px;height:32px;color:var(--color-text-muted);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset-inline-end:var(--spacing-md)}.modal-icon{font-size:38px}.modal-title{color:var(--color-text);margin:0;font-size:22px;font-weight:800}.modal-subtitle{color:var(--color-text-muted);margin:-8px 0 0;font-size:14px}.pin-row{gap:var(--spacing-md);direction:ltr;justify-content:center;display:flex}.pin-input{border:2px solid var(--color-border);border-radius:var(--radius-md);text-align:center;background:var(--color-surface-2);width:56px;height:64px;color:var(--color-text);-webkit-text-security:disc;outline:none;font-family:inherit;font-size:26px;font-weight:900;transition:border-color .15s,box-shadow .15s}.pin-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.pin-error{color:var(--color-danger);text-align:center;font-size:13px}.child-settings-profile{align-items:center;gap:14px;padding:4px 0 12px;display:flex}.child-settings-name{color:var(--color-text);margin:0 0 4px;font-size:20px;font-weight:800}.child-settings-hint{color:var(--color-text-muted);margin:0;font-size:13px}.child-settings-switch-btn{margin-top:var(--spacing-md)}.child-settings-no-pin{margin-top:var(--spacing-md);text-align:center;color:var(--color-text-muted);background:var(--color-surface-2);border-radius:var(--radius-md);padding:12px;font-size:13px}.timer-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#111827cc}.timer-sheet{color:var(--color-on-dark);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:var(--spacing-xl) var(--spacing-lg);padding-bottom:calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px));width:100%;max-width:var(--app-max-width);align-items:center;gap:var(--spacing-lg);box-shadow:0 -24px 64px -12px color-mix(in srgb, var(--color-primary) 55%, transparent), 0 -8px 24px #00000073;background:#17171f;flex-direction:column;animation:.25s slideUp;display:flex;position:relative}.timer-chip{left:50%;bottom:calc(76px + env(safe-area-inset-bottom,0px));z-index:150;background:var(--timer-chip-color,var(--color-primary));color:#fff;cursor:pointer;max-width:calc(100% - 32px);box-shadow:0 8px 24px -6px color-mix(in srgb, var(--timer-chip-color,var(--color-primary)) 60%, transparent), 0 4px 12px #0000004d;border:none;border-radius:999px;align-items:center;gap:8px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:800;animation:.25s slideUp;display:flex;position:fixed;transform:translate(-50%)}.timer-chip:active{transform:translate(-50%)scale(.97)}.timer-chip-icon{flex-shrink:0;font-size:16px}.timer-chip-time{font-variant-numeric:tabular-nums;flex-shrink:0}.timer-chip-title{text-overflow:ellipsis;white-space:nowrap;opacity:.9;min-width:0;font-weight:600;overflow:hidden}.timer-sheet .modal-close{background:color-mix(in srgb, var(--color-on-dark) 12%, transparent);color:color-mix(in srgb, var(--color-on-dark) 75%, transparent)}.timer-sheet .modal-close:hover{background:color-mix(in srgb, var(--color-on-dark) 20%, transparent)}.timer-task-title{color:color-mix(in srgb, var(--color-on-dark) 70%, transparent);text-align:center;padding:0 var(--spacing-xl);margin:0;font-size:16px;font-weight:600;line-height:1.4}.timer-circle-wrap{width:180px;height:180px;position:relative}.timer-svg{width:180px;height:180px;overflow:visible}.timer-track{stroke:color-mix(in srgb, var(--color-on-dark) 12%, transparent)}.timer-display{flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex;position:absolute;inset:0}.timer-time{color:var(--color-on-dark);letter-spacing:-2px;font-variant-numeric:tabular-nums;font-size:48px;font-weight:800}.timer-label{color:color-mix(in srgb, var(--color-on-dark) 50%, transparent);letter-spacing:.04em;font-size:12px;font-weight:600}.timer-done-emoji{font-size:56px;animation:.4s pop}.timer-controls{gap:var(--spacing-sm);flex-direction:column;width:100%;display:flex}.timer-controls-row{gap:var(--spacing-sm);width:100%;display:flex}.timer-controls-row .timer-pause-btn{flex:2;width:auto}.timer-controls-row .timer-reset-btn{flex:1}.timer-pause-btn{background:var(--color-accent);width:100%;color:var(--color-on-accent);border-radius:var(--radius-md);cursor:pointer;border:none;padding:16px;font-family:inherit;font-size:17px;font-weight:800;transition:all .15s}.timer-pause-btn:hover{background:#fbbf24;transform:translateY(-1px)}.timer-reset-btn{background:color-mix(in srgb, var(--color-on-dark) 12%, transparent);color:var(--color-on-dark);border-radius:var(--radius-md);cursor:pointer;border:none;padding:16px 12px;font-family:inherit;font-size:15px;font-weight:800;transition:all .15s}.timer-reset-btn:hover{background:color-mix(in srgb, var(--color-on-dark) 22%, transparent);transform:translateY(-1px)}.timer-early-btn{width:100%;color:color-mix(in srgb, var(--color-on-dark) 60%, transparent);border:1.5px solid color-mix(in srgb, var(--color-on-dark) 15%, transparent);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:13px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.timer-early-btn:hover{border-color:color-mix(in srgb, var(--color-on-dark) 40%, transparent);color:var(--color-on-dark)}.timer-finished{gap:var(--spacing-sm);flex-direction:column;align-items:center;width:100%;display:flex}.timer-finished-text{color:var(--color-success);text-align:center;margin:0;font-size:17px;font-weight:700}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(60px)}to{transform:translateY(0)}}@keyframes pop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.goal-celebrate-overlay{justify-content:center;align-items:center;display:flex}.goal-celebrate-card{background:var(--color-surface);border-radius:var(--radius-xl);text-align:center;width:86%;max-width:320px;box-shadow:var(--shadow-lg);padding:32px 28px;animation:.25s ease-out pop}.goal-cel-topslot{justify-content:center;align-items:center;height:150px;transition:height .4s;display:flex}.goal-cel-topslot.is-compact{height:80px}.goal-fill-star{filter:drop-shadow(0 6px 9px #f59e0b73);width:140px;height:140px;transition:transform var(--shrink-ms,.6s) cubic-bezier(.34, 1.4, .5, 1)}.goal-fill-star.is-shrinking{transform:scale(.45)}.goal-fill-meta{transition:opacity .3s}.goal-fill-meta.is-fading{opacity:0}.goal-fill-count{font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;margin:12px 0 0;line-height:1;display:inline-flex}.goal-fill-current{color:#f5a623;font-size:44px;font-weight:800}.goal-fill-sep{color:var(--color-text-muted);font-size:28px;font-weight:700}.goal-fill-target{color:var(--color-text-2);font-size:26px;font-weight:700}.goal-fill-label{color:var(--color-text-2);margin:4px 0 0;font-size:16px}.goal-celebrate-icon{font-size:64px;line-height:1}.goal-celebrate-head{color:var(--color-text);transform-origin:50%;margin:12px 0 4px;font-size:30px;animation:.4s ease-out both celebrateFadeIn,1.5s ease-in-out 3 both celebratePulse}@keyframes celebratePulse{0%,to{transform:scale(1)}50%{transform:scale(1.22)}}@keyframes celebrateFadeIn{0%{opacity:0}to{opacity:1}}.reveal-item{animation:.45s ease-out both revealItem}@keyframes revealItem{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.goal-celebrate-sub{color:var(--color-text-2);margin:0}.goal-celebrate-title{color:var(--color-primary);margin:6px 0 8px;font-size:26px;font-weight:800}.goal-celebrate-stars{color:#f5a623;margin:0 0 20px;font-size:16px;font-weight:700}.goal-celebrate-notice{color:var(--color-text-muted);margin:14px 0 0;font-size:12px}.goal-celebrate-btn{background:var(--color-primary);color:var(--color-on-accent,#fff);border-radius:var(--radius-full);cursor:pointer;border:none;padding:12px 36px;font-size:18px;font-weight:700}.incentive-celebrate-overlay{justify-content:center;align-items:center;display:flex}.incentive-celebrate-card{background:var(--color-surface);border-radius:var(--radius-xl);text-align:center;width:86%;max-width:320px;box-shadow:var(--shadow-lg);padding:32px 28px;animation:.25s ease-out pop}.incentive-celebrate-icon{margin-bottom:12px;font-size:64px;line-height:1}.incentive-celebrate-head{color:var(--color-text);margin:0 0 12px;font-size:24px;font-weight:800}.incentive-celebrate-streak{color:var(--color-primary);margin:0 0 6px;font-size:17px;font-weight:700}.incentive-celebrate-stars{color:var(--color-text-2);margin:0 0 24px;font-size:15px}.incentive-celebrate-btn{background:var(--color-primary);color:var(--color-on-accent,#fff);border-radius:var(--radius-full);cursor:pointer;border:none;padding:12px 36px;font-size:18px;font-weight:700}.child-timetable{gap:var(--spacing-sm);flex-direction:column;display:flex}.child-timetable .tt-week{grid-template-columns:repeat(2,1fr);align-items:stretch;gap:8px;display:grid}.child-timetable .tt-day-col{background:var(--color-bg);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);flex-direction:column;min-width:0;display:flex;overflow:hidden}.tt-day-head{text-align:center;color:var(--color-primary-dark,var(--color-primary));background:var(--color-primary-light);padding:8px;font-size:13px;font-weight:800}.tt-day-lessons{flex-direction:column;gap:6px;margin:0;padding:6px;list-style:none;display:flex}.tt-lesson{background:var(--color-surface);border-radius:var(--radius-sm,8px);flex-direction:column;gap:2px;padding:6px 8px;display:flex}.tt-lesson-time{color:var(--color-text-muted);font-size:11px;font-weight:700}.tt-lesson-subject{color:var(--color-text);overflow-wrap:anywhere;font-size:13px;font-weight:700}.tt-lesson-teacher,.tt-lesson-room{color:var(--color-text-muted);font-size:11px}.tt-break{opacity:.7}.tt-break .tt-lesson-subject{color:var(--color-text-muted);font-weight:600}.arrival-hint{margin:0 0 var(--spacing-sm);color:var(--color-text);font-size:15px;font-weight:700}.arrival-choices{grid-template-columns:1fr 1fr;gap:10px;display:grid}.arrival-choice{border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;flex-direction:column;align-items:center;gap:6px;padding:14px 8px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:flex}.arrival-choice.is-selected{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.arrival-choice-icon{font-size:26px;line-height:1}.arrival-parents{margin-bottom:var(--spacing-md);flex-wrap:wrap;gap:8px;display:flex}.arrival-parent{border:1.5px solid var(--color-border-soft);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-family:inherit;font-size:14px;font-weight:700;transition:all .15s;display:flex}.arrival-parent.is-selected{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.arrival-homes{margin-bottom:var(--spacing-md);flex-direction:column;gap:8px;display:flex}.arrival-home{border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;text-align:start;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;font-family:inherit;transition:all .15s;display:flex}.arrival-home.is-selected{border-color:var(--color-primary);background:var(--color-primary-light)}.arrival-home-name{font-size:14px;font-weight:700}.arrival-home-addr{color:var(--color-text-muted);font-size:12px}.arrival-pickup{margin-top:var(--spacing-md);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2);justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.arrival-pickup-text{flex-direction:column;gap:2px;min-width:0;display:flex}.arrival-pickup-title{color:var(--color-text);font-size:14px;font-weight:700}.arrival-pickup-sub{color:var(--color-text-muted);font-size:12px}.arrival-pickup-switch{background:var(--color-border);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;width:50px;height:28px;padding:0;transition:background .2s;position:relative}.arrival-pickup-switch.is-on{background:var(--color-primary)}.arrival-pickup-thumb{top:3px;background:var(--color-surface);border-radius:50%;width:22px;height:22px;transition:inset-inline-start .2s;position:absolute;inset-inline-start:3px;box-shadow:0 2px 4px #0f172a2e}.arrival-pickup-switch.is-on .arrival-pickup-thumb{inset-inline-start:25px}.arrival-events{margin-top:var(--spacing-md);flex-direction:column;gap:8px;display:flex}.arrival-events-hint{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:700}.arrival-events-toggle{background:var(--color-surface-2);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);width:100%;color:var(--color-text);text-align:start;cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:12px;font-family:inherit;transition:all .15s;display:flex}.arrival-events-toggle:hover{border-color:var(--color-text-muted)}.arrival-events-toggle.is-open{border-color:var(--color-primary);background:var(--color-primary-light)}.arrival-events-label{font-size:14px;font-weight:700}.arrival-events-chevron{color:var(--color-text-muted);flex-shrink:0;font-size:14px;line-height:1}.arrival-event{border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2);width:100%;color:var(--color-text);text-align:start;cursor:pointer;align-items:center;gap:10px;padding:10px 12px;font-family:inherit;transition:all .15s;display:flex}.arrival-event.is-selected{border-color:var(--color-primary);background:var(--color-primary-light)}.arrival-event-icon{flex-shrink:0;font-size:22px;line-height:1}.arrival-event-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.arrival-event-title{font-size:15px;font-weight:700}.arrival-event-sub{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.arrival-event-check{color:var(--color-primary);flex-shrink:0;font-weight:800}.arrival-other-input{margin-top:var(--spacing-md)}.arrival-other-input.has-error{border-color:var(--color-danger);box-shadow:0 0 0 3px var(--color-danger-light)}.arrival-loc{margin-top:var(--spacing-md)}.arrival-loc:first-child{margin-top:calc(-1 * var(--spacing-lg))}.arrival-loc-note{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:700}.arrival-loc-map{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);width:100%;height:200px}.arrival-loc-actions{justify-content:space-between;align-items:center;gap:8px;margin-top:6px;display:flex}.arrival-loc-detecting,.arrival-loc-error{margin-top:var(--spacing-md);color:var(--color-text-muted)}.arrival-address-input{margin-top:var(--spacing-md)}.arrival-address-label{margin-top:var(--spacing-md);color:var(--color-text-muted);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.address-autocomplete{width:100%}.address-autocomplete gmp-place-autocomplete{border-radius:var(--radius-sm);width:100%;overflow:hidden}.arrival-address-picked{color:var(--color-text);margin:6px 0 0;font-size:14px;font-weight:600}.arrival-actions{margin-top:var(--spacing-lg);gap:10px;display:flex}.arrival-actions>*{flex:1}.arrival-header-title{flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex}.arrival-header-sub{max-width:220px;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:600;overflow:hidden}.birthday-overlay{align-items:center}.birthday-modal{background:var(--color-surface,#fff);border-radius:var(--radius-xl,22px);text-align:center;width:min(90vw,360px);box-shadow:var(--shadow-lg,0 14px 44px #0000004d);padding:28px 24px 24px;animation:.32s cubic-bezier(.34,1.56,.64,1) both birthdayPop}.birthday-cake{font-size:64px;line-height:1;animation:1.8s ease-in-out infinite birthdayBob}.birthday-title{color:var(--color-text);margin:12px 0 4px;font-size:23px;font-weight:800}.birthday-age{color:var(--color-primary);margin:0 0 8px;font-size:15px;font-weight:700}.birthday-message{color:var(--color-text-muted);margin:0 0 20px;font-size:14.5px;line-height:1.5}.birthday-cta{max-width:240px;margin:0 auto}@keyframes birthdayPop{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes birthdayBob{0%,to{transform:translateY(0)rotate(-3deg)}50%{transform:translateY(-6px)rotate(3deg)}}.emoji-ping-badge{top:-6px;border:2px solid var(--color-surface);border-radius:var(--radius-full);background:var(--color-accent-light,#fef6d0);cursor:pointer;box-shadow:var(--shadow-sm);z-index:2;opacity:1;align-items:center;gap:2px;padding:2px 5px;font-size:14px;line-height:1;display:inline-flex;position:absolute;inset-inline-end:-6px;transform:scale(1)}.emoji-ping-badge.is-in{animation:.45s cubic-bezier(.34,1.56,.64,1) emojiPingPop}.emoji-ping-badge.is-exiting{pointer-events:none;animation:.3s ease-in forwards emojiPingOut}@keyframes emojiPingPop{0%{transform:scale(.4)}60%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes emojiPingOut{0%{opacity:1;transform:scale(1)}30%{transform:scale(1.25)}to{opacity:0;transform:scale(0)}}.emoji-ping-badge-emoji{font-size:15px}.emoji-ping-badge-count{color:var(--color-text);font-size:10px;font-weight:800}.emoji-ping-pop{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);width:min(92vw,340px);box-shadow:var(--shadow-lg)}.emoji-ping-pop-title{margin:0 0 var(--spacing-sm);color:var(--color-text);font-size:16px;font-weight:800}.emoji-ping-pop-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.emoji-ping-pop-row{background:var(--color-surface-2);border-radius:var(--radius-md);align-items:center;gap:8px;padding:8px 10px;display:flex}.emoji-ping-pop-emoji{font-size:22px;line-height:1}.emoji-ping-pop-from{color:var(--color-text);flex:1;font-weight:700}.emoji-ping-pop-when{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.emoji-ping-pop-note{margin:var(--spacing-md) 0 0;color:var(--color-text-muted);text-align:center;font-size:12.5px;line-height:1.5}.emoji-ping-pop-ack{margin-top:var(--spacing-sm);border-radius:var(--radius-md);background:var(--color-primary);width:100%;color:var(--color-on-accent,#fff);cursor:pointer;border:none;padding:10px;font-family:inherit;font-size:14px;font-weight:700}.member-actions-list{flex-direction:column;gap:8px;display:flex}.member-actions-item{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2);width:100%;color:var(--color-text);cursor:pointer;align-items:center;gap:12px;padding:14px;font-family:inherit;font-size:15px;font-weight:600;transition:background .15s;display:flex}.member-actions-item:hover{background:var(--color-surface)}.member-actions-item-icon{font-size:20px;line-height:1}.member-actions-hint{margin:0 0 var(--spacing-md);color:var(--color-text-2);text-align:center;font-size:14px}.member-actions-emoji-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.member-actions-emoji{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2);cursor:pointer;padding:10px 0;font-size:30px;transition:transform .1s,background .15s}.member-actions-emoji:hover{background:var(--color-surface);transform:scale(1.08)}.member-actions-emoji:active{transform:scale(.95)}.member-actions-back{margin-top:var(--spacing-md);color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:14px;font-weight:700}.member-actions-sent{text-align:center;padding:var(--spacing-lg) 0}.member-actions-sent-icon{margin-bottom:var(--spacing-sm);font-size:44px;display:block}.member-actions-sent p{color:var(--color-text);margin:0;font-size:16px;font-weight:700}.member-avatar-wrap{display:inline-flex;position:relative}.lg-inline{flex-direction:column;padding-bottom:20px;display:flex}:root{--lp-frame:480px}.lg-screen{width:100%;max-width:var(--lp-frame);background:var(--color-bg);z-index:900;flex-direction:column;margin-inline:auto;display:flex;position:fixed;inset:0;overflow-y:auto}.lg-header{border-bottom:1px solid var(--color-border-soft);align-items:center;gap:10px;padding:14px 16px;display:flex}.lg-back,.lp-exit{color:var(--color-text);cursor:pointer;background:0 0;border:none;font-size:1.9rem;line-height:1;transform:scaleX(-1)}.lg-title,.lp-title{font-size:1.1rem;font-weight:700}.lg-sub{text-align:center;color:var(--color-text-muted);margin:16px 0 8px}.lg-loading{flex:1;place-items:center;display:grid}.lg-empty{text-align:center;color:var(--color-text-muted);padding:60px 24px}.lg-empty-emoji{margin-bottom:8px;font-size:3rem}.lg-pkg-list{flex-direction:column;gap:10px;padding:12px 16px 40px;display:flex}.lg-pkg-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);text-align:start;font:inherit;cursor:pointer;flex-direction:column;gap:4px;padding:16px;display:flex}.lg-pkg-title{font-size:1.05rem;font-weight:700}.lg-pkg-meta{color:var(--color-text-muted);gap:10px;font-size:.85rem;display:flex}.lg-pkg-done{color:var(--color-success);font-weight:700}.lg-game-cards{flex-wrap:wrap;justify-content:center;gap:12px;padding:12px 16px 40px;display:flex}.lg-game-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:130px;font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:8px;padding:20px 12px;font-weight:600;display:flex}.lg-game-emoji{font-size:2.4rem}.lp-screen{width:100%;max-width:var(--lp-frame);background:var(--color-bg);z-index:950;flex-direction:column;margin-inline:auto;display:flex;position:fixed;inset:0}.lp-header{border-bottom:1px solid var(--color-border-soft);align-items:center;gap:10px;padding:12px 16px;display:flex}.lp-timer{font-variant-numeric:tabular-nums;margin-inline-start:auto;font-weight:700}.lp-progress{background:var(--color-border-soft);height:8px}.lp-progress-bar{background:var(--color-primary);height:100%;transition:width .3s}.lp-progress-text{text-align:center;color:var(--color-text-muted);margin:6px 0;font-size:.8rem}.lp-game-name{justify-content:center;align-items:center;gap:8px;padding:10px 16px 0;font-size:1.05rem;font-weight:700;display:flex}.lp-game-name span:first-child{font-size:1.3rem}.lp-game{flex:1;justify-content:center;align-items:center;padding:16px;display:flex;overflow:auto}.lp-switch{padding:10px 16px calc(16px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--color-border-soft)}.lp-switch-hint{text-align:center;color:var(--color-text-muted);margin:0 0 8px;font-size:.78rem}.lp-switch-games{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.lp-switch-chip{border:1.5px solid var(--color-border);border-radius:var(--radius-full);background:var(--color-surface);font:inherit;color:var(--color-text);cursor:pointer;align-items:center;gap:6px;padding:7px 14px;font-size:.85rem;font-weight:600;display:inline-flex}.lp-switch-chip.is-on{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary-dark)}.lp-overlay{width:100%;max-width:var(--lp-frame);-webkit-backdrop-filter:blur(8px);z-index:980;background:#000c;place-items:center;margin-inline:auto;padding:18px;animation:.18s ease-out lp-overlay-in;display:grid;position:fixed;inset:0}@keyframes lp-overlay-in{0%{opacity:0}to{opacity:1}}.lp-card{background:var(--color-surface);border-radius:var(--radius-xl);width:100%;max-width:420px;max-height:88vh;padding:22px;overflow-y:auto}.lp-q-num{color:var(--color-primary);margin-bottom:8px;font-size:.8rem;font-weight:700}.lp-q-image{border-radius:var(--radius-md);width:100%;margin-bottom:12px}.lp-q-text{margin-bottom:16px;font-size:1.15rem;font-weight:700}.lp-options{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.lp-option{text-align:start;border:2px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);width:100%;font:inherit;cursor:pointer;padding:14px 16px;font-size:1rem}.lp-option.correct{border-color:var(--color-success);background:var(--color-success-light)}.lp-option.wrong{border-color:var(--color-danger);background:var(--color-danger-light)}.lp-option.chosen{border-color:var(--color-primary);background:var(--color-primary-light)}.lp-feedback{text-align:center;margin:4px 0 12px;font-weight:700}.lp-feedback.ok{color:var(--color-success)}.lp-feedback.bad{color:var(--color-danger)}.lp-open{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;font:inherit;background:var(--color-bg);color:var(--color-text);margin-bottom:12px;padding:12px}.lp-primary{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;width:100%;font:inherit;cursor:pointer;border:none;padding:14px;font-size:1.05rem;font-weight:700}.lp-primary:disabled{opacity:.5}.lp-secondary{width:100%;color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:none;padding:12px;font-weight:600}.lp-done-sub{color:var(--color-text-muted);font-size:.9rem}.lp-enrichment{text-align:center}.lp-enrichment-badge{font-size:2.4rem}.lp-enrichment-title{margin:8px 0}.lp-enrichment-body{color:var(--color-text);margin-bottom:14px;line-height:1.5}.lp-enrichment-link{color:var(--color-primary);margin-bottom:16px;font-weight:700;text-decoration:underline;display:inline-block}.lp-done{text-align:center;flex-direction:column;gap:14px;display:flex}.lp-done h2{margin:0}.lp-done p{margin:0;line-height:1.5}.lp-done-emoji{font-size:3.4rem}.lp-done-stars{color:var(--color-warning-dark,#b8860b);font-size:1.2rem;font-weight:800}.lp-done .lp-primary{margin-top:6px}.ttt-wrapper{width:100%;max-width:340px}.ttt-status{text-align:center;min-height:1.2em;margin-bottom:10px;font-weight:700}.ttt-board{aspect-ratio:1;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.ttt-cell{aspect-ratio:1;border-radius:var(--radius-md);background:var(--color-surface);box-shadow:inset 0 0 0 2px var(--color-border-soft);cursor:pointer;border:none;place-items:center;font-size:clamp(2rem,14vw,3.4rem);font-weight:800;display:grid}.ttt-cell.x{color:var(--color-primary)}.ttt-cell.o{color:var(--color-danger)}.ttt-cell.win{background:var(--color-success-light);animation:.32s ease-out fx-pop,.9s ease-in-out .3s 2 fx-glow}.ttt-cell:disabled{cursor:default}.mem-wrapper{width:100%;max-width:360px}.mem-grid{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.mem-card{aspect-ratio:3/4;border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;padding:0;position:relative}.mem-face-front,.mem-face-back{border-radius:var(--radius-md);backface-visibility:hidden;place-items:center;font-size:clamp(1.4rem,8vw,2.2rem);display:grid;position:absolute;inset:0}.mem-face-back{background:var(--color-primary);color:#fff}.mem-face-front{background:var(--color-surface);box-shadow:inset 0 0 0 2px var(--color-border-soft);opacity:0}.mem-card.face .mem-face-front{opacity:1}.mem-card.face .mem-face-back{opacity:0}.mem-card.matched .mem-face-front{background:var(--color-success-light)}.mem-card.matched{animation:.32s ease-out fx-pop}.mine-wrapper{width:100%;max-width:360px}.mine-board{gap:4px;display:grid}.mine-tile{aspect-ratio:1;background:var(--color-primary-light);box-shadow:inset 0 0 0 2px var(--color-border-soft);color:var(--color-primary-dark);cursor:pointer;border:none;border-radius:6px;place-items:center;font-size:clamp(.8rem,4vw,1.1rem);font-weight:800;display:grid}.mine-tile.open{background:var(--color-surface);cursor:default}.mine-tile.boom{background:var(--color-danger-light);z-index:1;animation:.4s ease-out fx-boom}.mine-tile.n1{color:#2563eb}.mine-tile.n2{color:#16a34a}.mine-tile.n3{color:#dc2626}.mine-tile.n4{color:#7c3aed}.mine-tile.n5{color:#b45309}.mine-tile.n6{color:#0891b2}.mine-tile.n7{color:#be185d}.mine-tile.n8{color:var(--color-text)}@keyframes fx-pop{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes fx-flash{0%{filter:brightness(1.9)}to{filter:brightness()}}@keyframes fx-boom{0%{transform:scale(1)}25%{transform:scale(1.25)rotate(-6deg)}60%{transform:scale(.92)rotate(5deg)}to{transform:scale(1)rotate(0)}}@keyframes fx-glow{0%,to{box-shadow:0 0 #22c55e00}50%{box-shadow:0 0 14px var(--color-success)}}.game-hint{text-align:center;color:var(--color-text-muted);margin:12px 0 0;font-size:.78rem}.canvas-wrap{flex-direction:column;align-items:center;width:100%;display:flex}.game-canvas{border-radius:var(--radius-md);touch-action:none;background:#1f2733;max-width:100%}.snake-restart{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;font:inherit;cursor:pointer;border:none;margin-top:12px;padding:10px 22px;font-weight:700}.snake-wrap{flex-direction:column;align-items:center;width:100%;display:flex}.snake-canvas{border-radius:var(--radius-md);touch-action:none;background:#1f2733;max-width:100%}.g2048-wrap{width:100%;max-width:340px}.g2048-board{border-radius:var(--radius-md);aspect-ratio:1;touch-action:none;background:#bbada0;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(4,1fr);gap:8px;padding:8px;display:grid}.g2048-cell{color:#776e65;background:#eee4da59;border-radius:6px;place-items:center;font-size:clamp(1.1rem,6vw,1.8rem);font-weight:800;display:grid}.simon-wrap{flex-direction:column;align-items:center;width:100%;max-width:300px;display:flex}.simon-status{min-height:1.3em;margin:0 0 12px;font-weight:700}.simon-status.is-wrong{color:var(--color-danger);font-size:1.1rem}.simon-pad.is-wrong{animation:.4s hanoi-shake}.simon-pad.is-wrong .simon-btn{opacity:.3}.simon-pad{aspect-ratio:1;grid-template-columns:1fr 1fr;gap:10px;width:100%;display:grid}.simon-btn{cursor:pointer;opacity:.55;border:none;border-radius:14px;transition:opacity .1s,transform .1s}.simon-btn.is-flash{opacity:1;transform:scale(.96);box-shadow:0 0 24px}.simon-btn:disabled{cursor:default}.wam-wrap{flex-direction:column;align-items:center;width:100%;max-width:320px;display:flex}.wam-score,.wam-level{font-weight:800}.wam-grid{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;display:grid}.wam-hole{aspect-ratio:1;cursor:pointer;background:radial-gradient(circle at 50% 70%,#3b2a1a,#1a120b);border:none;border-radius:50%;place-items:end center;display:grid;overflow:hidden}.wam-mole{font-size:clamp(1.8rem,11vw,2.8rem);transition:transform .12s;transform:translateY(100%)}.wam-hole.is-up .wam-mole{transform:translateY(10%)}.wam-hole.is-hit .wam-mole{filter:saturate(.5);transform:translateY(10%)scale(.8)}.slide-wrap{width:100%;max-width:300px}.slide-grid{aspect-ratio:1;grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.slide-tile{border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary-dark);cursor:default;border:none;place-items:center;font-size:clamp(1.4rem,9vw,2.2rem);font-weight:800;display:grid}.slide-tile.movable{background:var(--color-primary);color:#fff;cursor:pointer}.slide-empty{background:0 0}.hanoi-wrap{width:100%;max-width:360px}.hanoi-pegs{grid-template-columns:repeat(3,1fr);align-items:end;gap:8px;height:200px;display:grid}.hanoi-pegs.is-bad{animation:.4s hanoi-shake}@keyframes hanoi-shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.hanoi-peg{cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;padding-bottom:6px;display:flex;position:relative}.hanoi-peg.is-selected{background:var(--color-primary-light)}.hanoi-rod{background:var(--color-border);border-radius:3px;width:6px;height:90%;position:absolute;bottom:6px}.hanoi-discs{z-index:1;flex-direction:column-reverse;align-items:center;gap:3px;width:100%;display:flex;position:relative}.hanoi-disc{border-radius:8px;height:16px}.bubble-wrap{flex-direction:column;align-items:center;width:100%;max-width:320px;display:flex}.bubble-grid{gap:3px;width:100%;display:grid}.bubble-cell{aspect-ratio:1;cursor:pointer;background:0 0;border:none;padding:2px}.bubble-dot{aspect-ratio:1;border-radius:50%;width:100%;display:block;box-shadow:inset -2px -2px 4px #00000040}.bubble-shooter{align-items:center;gap:8px;margin-top:14px;font-weight:700;display:flex}.bubble-next{width:30px}.games-section-label{color:var(--color-text-muted);margin:18px 4px 4px;font-weight:700}.freeplay-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:10px;padding:4px 0 20px;display:grid}.freeplay-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:6px;padding:16px 8px;font-size:.85rem;font-weight:600;display:flex}.freeplay-emoji{font-size:2rem}.sort-wrap{width:100%;max-width:320px}.sort-bars{align-items:flex-end;gap:8px;height:220px;display:flex}.sort-bar{cursor:pointer;background:var(--color-primary);color:#fff;border:none;border-radius:8px 8px 0 0;flex:1;justify-content:center;align-items:flex-start;min-height:24px;padding-top:6px;font-weight:800;display:flex}.sort-bar.is-sel{background:var(--color-warning-dark,#b8860b);transform:translateY(-6px)}.sort-bar.is-done{background:var(--color-success);animation:.32s ease-out fx-pop}.tetris-wrap{flex-direction:column;align-items:center;width:100%;max-width:240px;display:flex}.tetris-board{aspect-ratio:8/14;border-radius:var(--radius-sm);touch-action:none;background:#2a3340;gap:1px;width:100%;padding:2px;display:grid}.tetris-cell{background:#1f2733;border-radius:2px}.gs-wrap{width:100%;max-width:var(--lp-frame);flex-direction:column;align-items:stretch;margin-inline:auto;display:flex}.gs-hud{justify-content:space-between;align-items:center;padding:0 4px 10px;font-size:.95rem;font-weight:700;display:flex}.gs-score strong{color:var(--color-primary)}.gs-hud-right{align-items:center;gap:10px;display:inline-flex}.gs-high{color:var(--color-warning-dark,#b8860b)}.gs-icon-btn{cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:2px 4px;font-size:1.1rem;line-height:1}.gs-icon-btn:active{transform:scale(.9)}.gs-stage{justify-content:center;display:flex}.pong-wrap{touch-action:none;padding:12px 0}.game-touch-area{touch-action:none;width:100%}.gs-board{text-align:start;margin:4px 0 6px}.gs-board-title{text-align:center;margin:0 0 8px;font-size:.95rem;font-weight:800}.gs-board-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.gs-board-row{border-radius:var(--radius-md);background:var(--color-bg);align-items:center;gap:10px;padding:6px 10px;display:flex}.gs-board-row.is-me{background:var(--color-primary-light)}.gs-rank{text-align:center;width:18px;color:var(--color-text-muted);font-weight:800}.gs-avatar{background:var(--color-border-soft);border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:1rem;display:grid;overflow:hidden}.gs-avatar img{object-fit:cover;width:100%;height:100%}.gs-name{text-align:start;flex:1;font-size:.9rem;font-weight:600}.gs-pts{color:var(--color-primary);font-weight:800}.gs-board-empty{text-align:center;color:var(--color-text-muted);padding:8px 0;font-size:.9rem}.gs-over-actions{flex-direction:column;gap:4px;display:flex}.gsb-list{flex-direction:column;gap:8px;padding:8px 0 24px;display:flex}.gsb-item{border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.gsb-row{cursor:pointer;width:100%;font:inherit;text-align:start;background:0 0;border:none;align-items:center;gap:12px;padding:12px 14px;display:flex}.gsb-emoji{font-size:1.4rem}.gsb-name{flex:1;font-weight:700}.gsb-chevron{color:var(--color-text-muted);font-size:1.1rem}.gsb-board{padding:0 14px 14px}.gsb-board .gs-board-list{margin-top:0}.freeplay-card-board{background:var(--color-primary-light)}.lg-header--center{justify-content:center}.lg-headbtn{cursor:pointer;font:inherit;color:var(--color-text);background:0 0;border:none;align-items:center;gap:8px;display:inline-flex}.lg-headbtn .lg-back{font-size:1.6rem;line-height:1;transform:scaleX(-1)}.cal-tab{padding:var(--spacing-md);max-width:var(--app-max-width);margin:0 auto}.cal-toolbar{justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);display:flex}.cal-view-toggle{background:var(--color-surface-2);border-radius:var(--radius-full);padding:3px;display:inline-flex}.cal-view-toggle button{border-radius:var(--radius-full);color:var(--color-text-2);cursor:pointer;background:0 0;border:none;padding:6px 14px;font-size:14px}.cal-view-toggle button.selected{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs);font-weight:600}.cal-toolbar-title{color:var(--color-text);font-size:17px;font-weight:700}.cal-section-title{color:var(--color-text);margin:var(--spacing-lg) 0 var(--spacing-sm);font-size:15px;font-weight:700}.cal-add-btn{background:var(--color-primary);color:var(--color-on-accent,#fff);border-radius:var(--radius-full);cursor:pointer;border:none;padding:8px 16px;font-size:14px;font-weight:600}.cal-timetable-btn{width:100%;margin-top:var(--spacing-md);border:1.5px solid var(--color-border-soft);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-lg);cursor:pointer;padding:12px 16px;font-family:inherit;font-size:15px;font-weight:700;display:block}.cal-timetable-btn:active{background:var(--color-surface-2)}.cal-toolbar-actions{align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;justify-content:flex-end;display:flex}.cal-activity-toggle{border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text-2);border-radius:var(--radius-full);cursor:pointer;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.cal-activity-toggle:hover{border-color:var(--color-text-muted);color:var(--color-text)}.cal-activity-toggle.is-on{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.cal-agenda{gap:var(--spacing-lg);flex-direction:column;display:flex}.cal-agenda-heading{color:var(--color-text-2);margin:0 0 var(--spacing-sm);font-size:14px;font-weight:700}.cal-agenda-items{gap:var(--spacing-sm);flex-direction:column;display:flex}.cal-agenda-item{align-items:center;gap:var(--spacing-sm);text-align:start;background:var(--color-surface);border:1px solid var(--color-border-soft);border-inline-start:4px solid var(--color-primary);border-radius:var(--radius-md);cursor:pointer;width:100%;padding:10px 12px;display:flex}.cal-agenda-item.is-milestone{background:var(--color-feed-reward-bg,var(--color-surface-2))}.cal-agenda-item.is-given{border-inline-start-color:var(--color-success)}.cal-item-icon{font-size:22px}.cal-item-avatars{flex-shrink:0;align-items:center;display:inline-flex}.cal-item-avatars>*+*{margin-inline-start:-8px}.cal-fam-avatar{object-fit:cover;border:2px solid var(--color-surface);background:var(--color-surface-2);border-radius:50%;width:28px;height:28px}.cal-fam-avatar--fallback{justify-content:center;align-items:center;font-size:15px;display:inline-flex}.cal-item-body{flex-direction:column;flex:1;min-width:0;display:flex}.cal-item-title{color:var(--color-text);font-weight:600}.cal-item-time{color:var(--color-text-muted);font-size:12px}.cal-item-lock{opacity:.6;font-size:13px}.cal-item-done-badge{color:var(--color-success);background:var(--color-success-light);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:3px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-flex}.cal-agenda-item.is-duty-done{border-inline-start-color:var(--color-success)}.cal-agenda-item.is-duty-done .cal-item-title{color:var(--color-text-muted)}.cal-empty{text-align:center;color:var(--color-text-muted);padding:var(--spacing-xl) 0}.cal-month-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.cal-month-header h3{margin:0;font-size:17px}.cal-nav-btn{background:var(--color-surface-2);color:var(--color-text);border-radius:var(--radius-full);cursor:pointer;border:none;width:34px;height:34px;font-size:20px}.cal-weekdays,.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-weekday{text-align:center;color:var(--color-text-muted);padding-bottom:4px;font-size:12px}.cal-cell{aspect-ratio:1;border:1px solid var(--color-border-soft);background:var(--color-surface);border-radius:var(--radius-sm);cursor:pointer;flex-direction:column;align-items:center;gap:3px;padding-top:4px;display:flex}.cal-cell.is-outside{opacity:.4}.cal-cell.is-today{border-color:var(--color-primary);border-width:2px}.cal-cell-num{color:var(--color-text);font-size:13px}.cal-cell-dots{flex-wrap:wrap;justify-content:center;gap:2px;display:flex}.cal-dot{background:var(--color-primary);border-radius:50%;width:6px;height:6px}.cal-color-row{flex-wrap:wrap;gap:8px;display:flex}.cal-color-dot{cursor:pointer;border:3px solid #0000;border-radius:50%;width:30px;height:30px}.cal-color-dot.selected{border-color:var(--color-text)}.cal-row-between{justify-content:space-between;align-items:center;display:flex}.cal-rec-end{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.cal-rec-end-field{flex:1;min-width:130px}.cal-rec-end-field .ob-input:disabled{opacity:.45;cursor:not-allowed}.cal-weekday-row{gap:6px;display:flex}.cal-weekday-btn{aspect-ratio:1;border:1.5px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-2);min-width:0;color:var(--color-text);cursor:pointer;flex:1;justify-content:center;align-items:center;font-family:inherit;font-size:15px;font-weight:700;transition:all .15s;display:flex}.cal-weekday-btn.is-on{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.cal-link-btn{color:var(--color-primary);cursor:pointer;background:0 0;border:none;font-size:13px}.cal-vis-toggle{gap:8px;display:flex}.cal-vis-btn{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text-2);flex:1;padding:8px}.cal-vis-btn.selected{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-text);font-weight:600}.cal-detail-title{border-inline-start:4px solid var(--color-primary);margin-bottom:var(--spacing-sm);align-items:center;gap:10px;padding-inline-start:10px;display:flex}.cal-detail-title h2{margin:0;font-size:20px}.cal-detail-icon{font-size:30px}.cal-detail-when{color:var(--color-text-2);align-items:center;gap:8px;display:flex}.cal-detail-creator{color:var(--color-text-muted);margin:4px 0 0;font-size:13px}.cal-detail-badge{background:var(--color-surface-2);border-radius:var(--radius-full);padding:2px 8px;font-size:12px}.cal-detail-desc{color:var(--color-text);margin:var(--spacing-sm) 0}.cal-detail-audience{color:var(--color-text-muted);font-size:13px}.cal-detail-address{width:100%;margin:var(--spacing-sm) 0;border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text);text-align:start;cursor:pointer;align-items:center;gap:8px;padding:10px 12px;font-family:inherit;font-size:14px;display:flex}.cal-detail-address-go{color:var(--color-primary);flex-shrink:0;margin-inline-start:auto;font-size:13px;font-weight:700}.cal-addr-picked{color:var(--color-text);margin:6px 0 0;font-size:14px;font-weight:600}.cal-milestone{text-align:center;background:var(--color-feed-reward-bg,var(--color-surface-2));border:1px solid var(--color-feed-reward-border,var(--color-border-soft));border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-md);flex-direction:column;align-items:center;gap:10px;display:flex}.cal-milestone.is-given{background:var(--color-success-light)}.cal-milestone-text{color:var(--color-text);margin:0;font-size:14px;font-weight:600;line-height:1.4}.cal-milestone-btn{background:var(--color-success);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;padding:9px 18px;font-family:inherit;font-size:14px;font-weight:700;transition:opacity .15s}.cal-milestone-btn:hover{opacity:.9}.cal-detail-actions{padding-top:var(--spacing-lg);flex-flow:wrap;justify-content:center;align-items:center;gap:10px;margin-top:auto;display:flex}.cal-detail-message{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border-soft);flex-direction:column;align-items:stretch;display:flex}.cal-detail-message>.cal-secondary-btn{align-self:center}.cal-detail-message-box{flex-direction:column;gap:10px;display:flex}.cal-detail-message-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.cal-delete-choice{flex-direction:column;align-items:center;gap:10px;display:flex}.cal-choice-options{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.cal-primary-btn{background:var(--color-primary);color:var(--color-on-accent,#fff);border-radius:var(--radius-full);cursor:pointer;border:none;padding:10px 16px;font-weight:600}.cal-secondary-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-full);cursor:pointer;padding:8px 14px}.cal-danger-btn{background:var(--color-danger);color:#fff;border-radius:var(--radius-full);cursor:pointer;border:none;padding:8px 14px}.cal-delete-confirm{margin-top:4px}.cal-delete-confirm-q{color:var(--color-text);text-align:center;margin:0 0 8px;font-size:13px;font-weight:700}.cal-delete-confirm-actions{gap:8px;display:flex}.cal-delete-confirm-actions>*{flex:1}.cal-delete-confirm-yes{border-radius:var(--radius-sm);background:var(--color-danger);color:#fff;cursor:pointer;border:none;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:700}.cal-delete-confirm-yes:disabled{opacity:.6;cursor:default}.cal-delete-confirm-cancel{border-radius:var(--radius-sm);width:auto;padding:6px 12px;font-size:13px}.child-calendar-sheet{background:var(--color-bg);z-index:1000;position:fixed;inset:0;overflow-y:auto}.child-calendar-sheet-bar{padding:var(--spacing-md);background:var(--color-surface);border-bottom:1px solid var(--color-border-soft);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.child-calendar-sheet-bar h3{margin:0;font-size:17px}.safe-bottom{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 1.5rem)}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}@keyframes chat-dot-blink{0%,80%,to{opacity:0}40%{opacity:1}}.chat-animate-dot{animation:1.4s ease-in-out infinite chat-dot-blink}.chat-animate-dot:nth-child(2){animation-delay:.2s}.chat-animate-dot:nth-child(3){animation-delay:.4s}.chat-thread-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.chat-thread-row{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md);border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-lg);text-align:start;cursor:pointer;box-shadow:var(--shadow-sm);display:flex}.chat-thread-row:active{background:var(--color-surface-2)}.chat-thread-row-text{flex:1;min-width:0}.chat-thread-row-title{color:var(--color-text);font-size:15px;font-weight:600}.chat-thread-row-preview{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:13px;overflow:hidden}.chat-thread-row-meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:4px;display:flex}.chat-thread-row-time{color:var(--color-text-muted);font-size:11px}.chat-unread-dot{background:var(--color-primary);border-radius:50%;width:10px;height:10px}.chat-nav-badge{top:-6px;background:var(--color-primary);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;inset-inline-end:-6px}.chat-thread-container{inset-inline:0;top:0;bottom:calc(64px + env(safe-area-inset-bottom,0px));z-index:60;background:var(--color-bg);max-width:var(--app-max-width);flex-direction:column;margin-inline:auto;display:flex;position:fixed;overflow:hidden}.chat-thread-container.inline{z-index:auto;flex:1;max-width:none;min-height:0;margin-inline:0;position:static}.chat-tab-fixed{inset-inline:0;top:0;bottom:calc(64px + env(safe-area-inset-bottom,0px));z-index:60;background:var(--color-bg);max-width:var(--app-max-width);flex-direction:column;margin-inline:auto;display:flex;position:fixed;overflow:hidden}.chat-chip-row{border-bottom:1px solid var(--color-border);background:var(--color-bg);scrollbar-width:none;flex-shrink:0;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.chat-chip-row::-webkit-scrollbar{display:none}.chat-filter-chip{padding-block:4px;padding-inline-start:4px;position:relative}.chat-chip-avatar{justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.chat-chip-img{object-fit:cover;border-radius:50%;width:24px;height:24px}.chat-chip-emoji{font-size:18px;line-height:1}.chat-chip-dot{background:var(--color-primary);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-inline-start:2px}.chat-filter-chip.active .chat-chip-dot{background:#fff}.chat-thread-header{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-md) var(--spacing-sm);border-bottom:1px solid var(--color-border);flex-shrink:0;display:flex}.chat-thread-back{background:var(--color-surface-2);cursor:pointer;width:36px;height:36px;color:var(--color-text);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.chat-thread-title{flex:1;margin:0;font-size:17px;font-weight:600}.chat-message-list{overscroll-behavior-y:none;padding:var(--spacing-md) var(--spacing-sm);flex:1;overflow:hidden auto}.chat-day-sep{margin:var(--spacing-md) 0;justify-content:center;display:flex}.chat-day-sep span{color:var(--color-text-muted);background:var(--color-surface-2);border-radius:999px;padding:4px 12px;font-size:12px}.chat-msg-row{margin-top:var(--spacing-md);align-items:flex-end;gap:6px;display:flex}.chat-msg-row.tight{margin-top:2px}.chat-msg-row.own{flex-direction:row-reverse}.chat-msg-avatar-slot{flex-shrink:0;width:28px}.chat-msg-body{flex-direction:column;min-width:0;max-width:72%;display:flex}.chat-msg-row.own .chat-msg-body{align-items:flex-end}.chat-sender-name{color:var(--color-text-muted);margin-bottom:2px;padding-inline:4px;font-size:11px}.chat-bubble-wrap{margin-bottom:0;position:relative}.chat-bubble-wrap.has-reactions{margin-bottom:12px}.chat-bubble{word-break:break-word;border-radius:16px;padding:8px 12px;font-size:14px;line-height:1.5}.chat-bubble.other{background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-end-start-radius:4px}.chat-bubble.own{background:var(--color-primary);color:#fff;border-end-end-radius:4px}.chat-reply-quote{border-inline-end:2px solid var(--color-primary);border-radius:12px;margin-bottom:6px;padding:6px 8px;font-size:12px}.chat-bubble.own .chat-reply-quote{background:#00000026;border-color:#ffffff80}.chat-bubble.other .chat-reply-quote{background:var(--color-surface-2)}.chat-event-ref{cursor:pointer;width:100%;color:inherit;text-align:start;background:#0000001f;border:none;border-radius:12px;align-items:center;gap:8px;margin-bottom:6px;padding:6px 8px;font-family:inherit;display:flex}.chat-event-ref:disabled{cursor:default}.chat-bubble.other .chat-event-ref{background:var(--color-surface-2)}.chat-event-ref-icon{flex-shrink:0;font-size:18px}.chat-event-ref-body{flex-direction:column;min-width:0;display:flex}.chat-event-ref-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.chat-event-ref-date{opacity:.8;font-size:11px}.chat-event-ref-bar .chat-event-ref-icon{font-size:18px}.chat-reply-author{white-space:nowrap;text-overflow:ellipsis;font-weight:600;display:block;overflow:hidden}.chat-msg-time{color:var(--color-text-muted);margin-top:2px;padding-inline:4px;font-size:10px}.chat-msg-actions{opacity:.6;flex-direction:column;justify-content:center;gap:8px;padding:2px 0;display:flex}.chat-msg-actions button{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;padding:4px}.chat-msg-actions button:hover{opacity:1;color:var(--color-primary)}.chat-reaction-pills{flex-wrap:wrap;gap:4px;max-width:100%;display:flex;position:absolute;bottom:-10px}.chat-msg-row.own .chat-reaction-pills{inset-inline-end:4px}.chat-msg-row:not(.own) .chat-reaction-pills{inset-inline-start:4px}.chat-reaction-pill{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:999px;align-items:center;gap:2px;padding:2px 6px;font-size:11px;display:flex}.chat-reaction-pill.mine{border-color:var(--color-primary);background:var(--color-primary-light)}.chat-reply-bar{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-light);border-top:1px solid var(--color-primary-mid);flex-shrink:0;display:flex}.chat-reply-bar-text{flex:1;min-width:0;font-size:13px}.chat-reply-bar-name{color:var(--color-primary-dark);font-weight:600;display:block}.chat-typing-bar{padding:4px var(--spacing-md);color:var(--color-text-muted);flex-shrink:0;align-items:center;gap:6px;font-size:12px;display:flex}.chat-typing-dots{gap:3px;display:flex}.chat-typing-dots span{background:var(--color-text-muted);border-radius:50%;width:4px;height:4px}.chat-emoji-panel{border-top:1px solid var(--color-border);padding:var(--spacing-sm);flex-shrink:0;max-height:144px;overflow-y:auto}.chat-emoji-grid{grid-template-columns:repeat(10,1fr);gap:2px;display:grid}.chat-emoji-tile{cursor:pointer;background:0 0;border:none;border-radius:8px;height:36px;font-size:20px}.chat-emoji-tile:active{background:var(--color-surface-2);transform:scale(.9)}.chat-send-error{padding:6px var(--spacing-md);text-align:center;background:#dc262614;flex-shrink:0;margin:0}.chat-send-error-text{color:#dc2626;margin:0;font-size:13px}.chat-send-error-report{color:var(--color-text-muted);margin:4px 0 0;font-size:12px}.chat-send-error-report-btn{color:#dc2626;cursor:pointer;background:0 0;border:none;margin:4px 0 0;padding:2px;font-family:inherit;font-size:12px;text-decoration:underline}.chat-input-bar{padding:var(--spacing-sm);border-top:1px solid var(--color-border);background:var(--color-bg);z-index:2;flex-shrink:0;align-items:center;gap:6px;display:flex;position:relative}.chat-icon-btn{background:var(--color-surface-2);cursor:pointer;width:36px;height:36px;color:var(--color-text);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-icon-btn.active{color:var(--color-primary)}.chat-icon-btn.send{background:var(--color-primary);color:#fff}.chat-icon-btn.send:disabled{opacity:.4;cursor:not-allowed}.chat-text-input{background:var(--color-surface-2);color:var(--color-text);border:none;border-radius:16px;flex:1;min-width:0;padding:10px 14px;font-size:15px}.chat-text-input:focus{outline:2px solid var(--color-primary);outline-offset:0}.chat-empty{justify-content:center;align-items:center;gap:var(--spacing-sm);color:var(--color-text-muted);padding:var(--spacing-xl);text-align:center;flex-direction:column;flex:1;display:flex}.chat-empty-icon{font-size:40px}.chat-overlay{z-index:100;background:#00000080;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.chat-sheet{background:var(--color-surface);width:100%;max-width:480px;padding:var(--spacing-md);box-shadow:var(--shadow-lg);border-radius:24px 24px 0 0}.chat-sheet-title{text-align:center;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin-bottom:var(--spacing-md);font-size:11px}.chat-sheet-option{align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md);cursor:pointer;border-radius:var(--radius-md);color:var(--color-text);background:0 0;border:none;font-size:16px;display:flex}.chat-sheet-option:hover{background:var(--color-surface-2)}.chat-sheet-option.danger{color:#dc2626}.chat-reaction-grid{grid-template-columns:repeat(8,1fr);gap:4px;display:grid}.chat-reaction-grid button{cursor:pointer;background:0 0;border:none;border-radius:12px;height:44px;font-size:24px}.chat-reaction-grid button.selected{background:var(--color-primary-light);transform:scale(1.1)}.chat-location-bubble{align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--color-border);cursor:pointer;text-align:start;border-radius:16px;width:100%;display:flex}.chat-bubble.own .chat-location-bubble{background:var(--color-primary-dark);border-color:var(--color-primary-mid);color:#fff}.chat-location-icon{background:var(--color-primary-light);width:40px;height:40px;color:var(--color-primary);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-inline-edit textarea{border:2px solid var(--color-primary);resize:none;background:var(--color-bg);width:100%;color:var(--color-text);border-radius:12px;padding:8px;font-size:14px}.chat-inline-edit-actions{gap:var(--spacing-sm);margin-top:var(--spacing-sm);justify-content:flex-end;display:flex}.chat-adult-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:28px;height:28px}.chat-adult-avatar-fallback{background:var(--color-primary-light);width:28px;height:28px;color:var(--color-primary-dark);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:flex}.chat-swipe-row{position:relative;overflow:hidden}.chat-swipe-reply-hint{width:48px;color:var(--color-primary);justify-content:center;align-items:center;display:flex;position:absolute;inset-block:0;inset-inline-end:100%}.chat-swipe-content{will-change:transform}.chat-loc-modal{z-index:110;background:var(--color-bg);flex-direction:column;display:flex;position:fixed;inset:0}.chat-loc-modal-header{padding:var(--spacing-md);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.chat-loc-map{border:none;flex:1;width:100%;min-height:200px}.chat-simple-messages-btn{background:var(--color-surface);width:44px;height:44px;box-shadow:var(--shadow-sm);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:relative}.parent-nav .nav-btn{position:relative}.parent-page{background:var(--color-bg);flex-direction:column;min-height:100dvh;display:flex}.parent-loading{justify-content:center;align-items:center;gap:var(--spacing-md);min-height:100dvh;color:var(--color-text-muted);flex-direction:column;font-size:14px;display:flex}.parent-topbar{background:var(--color-surface);padding:var(--spacing-sm) var(--spacing-lg);justify-content:space-between;align-items:center;gap:var(--spacing-sm);border-bottom:1px solid var(--color-border-soft);box-shadow:inset 0 -3px 0 -1px var(--color-primary);z-index:2;display:flex;position:relative}.parent-logo{color:var(--color-primary);letter-spacing:-.3px;font-size:16px;font-weight:900}.parent-logo-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;outline:none;flex-shrink:0;padding:0;transition:transform .15s,box-shadow .18s;display:inline-flex}.parent-logo-btn:hover{transform:scale(1.06)}.parent-logo-btn:focus-visible{box-shadow:0 0 0 3px var(--color-primary-light), 0 0 0 5px var(--color-primary)}.parent-logo-img{object-fit:contain;flex-shrink:0;width:44px;height:44px;display:block}.parent-family-heading{min-width:0;padding:0 var(--spacing-xs);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:1px;display:flex}.parent-family-title{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;letter-spacing:-.2px;max-width:100%;margin:0;font-size:17px;font-weight:800;line-height:1.15;overflow:hidden}.parent-family-slogan{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;max-width:100%;margin:0;font-size:11px;font-weight:600;line-height:1.2;overflow:hidden}.parent-user-avatar-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;outline:none;flex-shrink:0;padding:0;transition:transform .15s,box-shadow .18s;display:inline-flex;position:relative}.parent-user-avatar-settings{bottom:-3px;pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset-inline-end:-3px}.parent-user-avatar-settings img{width:20px;height:20px;display:block}.parent-user-avatar-btn:hover{transform:scale(1.06)}.parent-user-avatar-btn:focus-visible{box-shadow:0 0 0 3px var(--color-primary-light), 0 0 0 5px var(--color-primary)}.parent-user-avatar-btn.is-active{box-shadow:0 0 0 2px var(--color-primary)}.parent-user-avatar{object-fit:cover;background:var(--color-surface-2,var(--color-bg));border:1.5px solid var(--color-border);width:44px;height:44px;color:var(--color-text-muted);text-transform:uppercase;border-radius:50%;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex;overflow:hidden}.parent-body{flex:1;padding-bottom:80px;overflow-y:auto}.tab-content{padding:var(--spacing-lg);gap:var(--spacing-xl);flex-direction:column;display:flex}@keyframes homeRiseIn{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@keyframes homeDropIn{0%{opacity:0;transform:translateY(-32px)}to{opacity:1;transform:translateY(0)}}@keyframes homeEnterRight{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}@keyframes homeEnterLeft{0%{opacity:0;transform:translate(-60px)}to{opacity:1;transform:translate(0)}}.home-enter,.home-enter-down,.home-enter-right,.home-enter-left{animation-duration:.55s;animation-timing-function:cubic-bezier(.34,1.56,.64,1);animation-fill-mode:both;animation-delay:var(--enter-delay,0s)}.home-enter{animation-name:homeRiseIn}.home-enter-down{animation-name:homeDropIn}.home-enter-right{animation-name:homeEnterRight}.home-enter-left{animation-name:homeEnterLeft}.home-banner.home-enter-down{animation-duration:.85s}.home-banner:before{content:"";background-image:inherit;transform-origin:50%;background-position:50%;background-repeat:no-repeat;background-size:cover;animation:1.5s ease-out .5s both bannerKenBurns;position:absolute;inset:0}@keyframes bannerKenBurns{0%{transform:scale(1.18)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.home-banner:before{animation:none}}.home-loading{justify-content:center;align-items:center;min-height:50vh}.home-loading-spinner{border:3px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite homeSpin}@keyframes homeSpin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.home-enter,.home-enter-down,.home-enter-right,.home-enter-left{animation:none}}.tab-header{gap:var(--spacing-sm);margin:calc(-1 * var(--spacing-sm)) 0 var(--spacing-sm);flex-direction:column;display:flex}.tab-header-row{align-items:center;gap:10px;display:flex}.tab-header-icon{flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.tab-header-icon img{object-fit:contain;width:36px;height:36px;display:block}.tab-header-emoji{font-size:28px;line-height:1}.tab-header-title{color:var(--color-primary);letter-spacing:.01em;margin:0;margin-inline-end:auto;font-size:20px;font-weight:800}.tab-header-add{background:var(--color-primary);color:#fff;cursor:pointer;width:36px;height:36px;box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .25);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;font-weight:600;line-height:1;transition:transform .12s,box-shadow .15s;display:inline-flex}.tab-header-add:hover{box-shadow:0 4px 12px rgba(var(--color-primary-rgb), .35);transform:scale(1.06)}.tab-header-add:active{transform:scale(.96)}.tab-header-add:focus-visible{box-shadow:0 0 0 3px var(--color-primary-light), 0 0 0 5px var(--color-primary);outline:none}.tab-header-add--ghost{visibility:hidden}.section-title{color:var(--color-text);margin:0 0 var(--spacing-sm);font-size:18px;font-weight:700}:is(section:has(>.parents-row)>.section-title,section:has(>.children-scroll)>.section-title,section:has(>.pets-row)>.section-title){text-align:center}.tab-content>.section-title{margin-bottom:calc(var(--spacing-sm) - var(--spacing-xl))}.empty-hint{color:var(--color-text-muted);text-align:center;padding:var(--spacing-lg) 0;font-size:14px}.parent-nav{width:100%;max-width:var(--app-max-width);background:var(--color-surface);border-top:1px solid var(--color-border-soft);padding:8px 20px env(safe-area-inset-bottom,8px);z-index:50;box-shadow:0 -4px 20px rgba(var(--color-primary-rgb), .06);justify-content:space-around;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.nav-btn{cursor:pointer;background:0 0;border:none;flex-direction:column;flex:none;align-items:center;gap:2px;padding:10px 4px 6px;display:flex;position:relative}.nav-icon{font-size:22px;line-height:1;transition:transform .2s}.nav-icon-img{object-fit:contain;width:28px;height:28px;transition:transform .2s ease-out;display:block}.nav-label{color:var(--color-text-muted);letter-spacing:.02em;font-size:10px;font-weight:600}.nav-btn.active .nav-label{color:var(--color-primary);font-weight:700}.nav-btn.active .nav-icon,.nav-btn.active .nav-icon-img{transform:translateY(-4px)}.nav-dot{display:none}.nav-btn.active:before{content:"";background:var(--color-primary);border-radius:0 0 var(--radius-full) var(--radius-full);width:28px;height:3px;position:absolute;top:0;left:50%;transform:translate(-50%)}.home-banner{margin:calc(-1 * var(--spacing-lg) - 3px) calc(-1 * var(--spacing-lg)) 0;background-position:50%;background-repeat:no-repeat;background-size:cover;border-radius:0;width:auto;position:relative;overflow:hidden;box-shadow:0 6px 18px #0f172a14}.home-banner--placeholder{cursor:pointer;border:none;justify-content:center;align-items:center;padding:0;font-family:inherit;display:flex}.home-banner--placeholder:before{filter:blur(7px);animation:none;transform:scale(1.12)}.home-banner--placeholder:after{content:"";background:#0f172a6b;position:absolute;inset:0}.home-banner-cta{z-index:1;border-radius:var(--radius-full);color:#fff;letter-spacing:.01em;text-shadow:0 2px 8px #0000008c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a59;align-items:center;gap:8px;padding:12px 22px;font-size:18px;font-weight:800;display:inline-flex;position:relative}.home-banner-cta-icon{font-size:20px;line-height:1}.settings-banner-thumb{aspect-ratio:5/2;border-radius:var(--radius-md);border:1.5px solid var(--color-border-soft);cursor:pointer;background-position:50%;background-size:cover;width:100%;padding:0;font-family:inherit;position:relative}.settings-banner-edit{inset:auto var(--spacing-sm) var(--spacing-sm) auto;color:#fff;border-radius:var(--radius-full);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;padding:5px 10px;font-size:12px;font-weight:700;position:absolute}.banner-preview{border-radius:var(--radius-lg);border:1.5px solid var(--color-border-soft);background-position:50%;background-size:cover;width:100%}.banner-upload-tile{border:2px dashed var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-2);width:100%;color:var(--color-text-muted);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:8px;font-family:inherit;font-size:14px;font-weight:600;transition:border-color .15s,background .15s;display:flex}.banner-upload-tile:hover{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary)}.ob-btn-secondary.danger{border-color:var(--color-danger);color:var(--color-danger)}.home-greeting{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1.5px solid rgba(var(--color-primary-rgb), .4);justify-content:space-between;align-items:flex-start;animation:5s ease-in-out infinite sunriseGlow;display:flex}@keyframes sunriseGlow{0%,to{box-shadow:var(--shadow-sm), 0 0 6px 0 rgba(var(--color-primary-rgb), .22)}50%{box-shadow:var(--shadow-sm), 0 0 12px 2px rgba(var(--color-primary-rgb), .42)}}@media (prefers-reduced-motion:reduce){.home-greeting{animation:none}}.home-mode-switch{border:1.5px solid var(--color-border-soft);background:var(--color-bg);color:var(--color-text);border-radius:var(--radius-lg);cursor:pointer;flex-shrink:0;align-items:center;gap:8px;padding:7px 12px;font-family:inherit;font-size:12px;font-weight:700;line-height:1.2;transition:background .15s,transform .1s;display:inline-flex}.home-mode-switch:hover{background:var(--color-border-soft)}.home-mode-switch:active{transform:scale(.96)}.home-mode-switch-icon{object-fit:contain;flex-shrink:0;width:34px;height:34px}.home-mode-switch-text{flex-direction:column;align-items:flex-start;display:flex}.home-date{color:var(--color-text-muted);margin:0 0 4px;font-size:12px;font-weight:600}.home-title{color:var(--color-text);margin:0 0 3px;font-size:22px;font-weight:900}.home-family-name{color:var(--color-text-muted);margin:0;font-size:13px}.home-stats-bubble{background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);text-align:center;min-width:62px;box-shadow:0 4px 14px rgba(var(--color-primary-rgb), .28);padding:10px 14px}.home-stats-num{font-size:26px;font-weight:900;line-height:1;display:block}.home-stats-label{opacity:.85;font-size:10px;line-height:1.4}.children-day-nav{justify-content:center;align-items:center;gap:var(--spacing-md);margin:4px 0 var(--spacing-sm);display:flex}.children-day-nav-btn{border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface);width:32px;height:32px;color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;font-size:14px;transition:background .15s,transform .1s,opacity .15s;display:inline-flex}.children-day-nav-btn:hover{background:var(--color-bg)}.children-day-nav-btn:active{transform:scale(.92)}.children-day-nav-btn:disabled{opacity:.35;cursor:not-allowed}.children-day-nav-label{color:var(--color-text-muted);text-align:center;min-width:9rem;font-size:13px;font-weight:700}.children-day-nav-label.is-today{color:var(--color-text)}.children-scroll{column-gap:var(--spacing-md);row-gap:var(--spacing-lg);margin-inline:calc(-.5 * var(--spacing-lg));padding:24px calc(.5 * var(--spacing-lg)) var(--spacing-sm);flex-wrap:wrap;justify-content:center;display:flex}.parents-row{gap:var(--spacing-md);padding:4px 0 var(--spacing-sm);flex-wrap:wrap;justify-content:center;display:flex}.parents-row--single{justify-content:center}.parent-card{min-width:100px;padding:var(--spacing-md) var(--spacing-sm);background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);flex-direction:column;flex:none;align-items:center;gap:6px;display:flex}.parent-card--tappable{cursor:pointer;font-family:inherit;transition:transform .12s,border-color .15s}.parent-card--tappable:hover{border-color:var(--color-primary)}.parent-card--tappable:active{transform:scale(.97)}.parent-card-name{color:var(--color-text);text-align:center;margin:4px 0 0;font-size:14px;font-weight:700;line-height:1.2}.parent-card-title{color:var(--color-text-muted);margin:0;font-size:12px;font-weight:500}.child-progress-card{background:var(--color-surface);border-radius:var(--radius-xl);width:140px;box-shadow:var(--shadow-sm);border:2px solid #0000;flex-shrink:0;transition:all .2s;position:relative;overflow:visible}.child-progress-card.all-done{border-color:var(--color-success);box-shadow:var(--shadow-md);transform:translateY(-2px)}.child-progress-card.is-leader{border-color:#f59e0b;box-shadow:0 8px 22px #f59e0b38}.cpc-top{border-radius:var(--radius-xl) var(--radius-xl) 0 0;justify-content:center;align-items:center;height:80px;display:flex;position:relative;overflow:hidden}.cpc-avatar{font-size:42px}.cpc-star{top:6px;font-size:16px;animation:.4s pop;position:absolute;inset-inline-end:6px}.cpc-crown-btn{cursor:pointer;filter:drop-shadow(0 2px 3px #00000059);z-index:2;background:0 0;border:none;padding:0;font-size:26px;line-height:1;animation:.5s cubic-bezier(.34,1.56,.64,1) crownPop;position:absolute;top:-18px;right:50%;transform:translate(50%)rotate(-8deg)}.cpc-crown-btn:active{transform:translate(50%)rotate(-8deg)scale(.92)}.cpc-crown-btn:hover{filter:drop-shadow(0 3px 5px #f59e0b8c)}.cpc-crown-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:4px}@keyframes crownPop{0%{opacity:0;transform:translate(50%)rotate(-8deg)scale(0)}60%{opacity:1;transform:translate(50%)rotate(-8deg)scale(1.2)}to{opacity:1;transform:translate(50%)rotate(-8deg)scale(1)}}.cpc-body{padding:10px var(--spacing-md) var(--spacing-md);text-align:center}.cpc-name{color:var(--color-text);text-align:center;margin:0 0 6px;font-size:15px;font-weight:800}.cpc-count{justify-content:center;align-items:center;gap:4px;margin:0 0 4px;font-size:12px;display:flex}.cpc-count-icon{font-size:13px}.cpc-count strong{color:var(--color-text);font-size:15px;font-weight:900}.cpc-count-label{color:var(--color-text-muted);font-weight:600}.cpc-count-total{color:var(--color-text-muted);font-size:13px}.cpc-stars{justify-content:center;align-items:center;gap:4px;margin:0 0 8px;font-size:12px;display:flex}.cpc-stars-icon{font-size:13px}.cpc-stars strong{color:var(--color-text);font-size:15px;font-weight:900}.cpc-stars-label{color:var(--color-text-muted);font-weight:600}.cpc-goal{flex-direction:column;gap:4px;display:flex}.cpc-goal-row{align-items:center;gap:6px;min-width:0;font-size:11px;display:flex}.cpc-goal-icon{flex:none;font-size:14px}.cpc-goal-title{min-width:0;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;flex:auto;font-weight:700;overflow:hidden}.cpc-goal-count{color:var(--color-text);flex:none;font-size:12px;font-weight:800}.cpc-goal-count .muted{color:var(--color-text-muted);font-weight:600}.cpc-no-goal{color:var(--color-text-muted);text-align:center;opacity:.8;margin:0;font-size:11px;font-style:italic}.cpc-bar-bg{background:var(--color-border);border-radius:var(--radius-full);height:5px;overflow:hidden}.cpc-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .6s}.cpc-done-label{color:var(--color-success);text-align:center;margin:4px 0 0;font-size:11px;font-weight:700}.child-progress-card.is-clickable{cursor:pointer}.child-progress-card.is-clickable:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.child-progress-card.is-clickable:active{transform:translateY(-1px)}.child-progress-card.is-clickable:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px}.child-options-sheet{background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:480px;max-height:90dvh;padding-bottom:max(var(--spacing-md), env(safe-area-inset-bottom));gap:var(--spacing-md);flex-direction:column;animation:.22s ease-out childOptionsSlideUp;display:flex;overflow:hidden;box-shadow:0 -10px 30px #0000002e}.child-options-header{padding:var(--spacing-lg) var(--spacing-md) var(--spacing-md);align-items:center;gap:var(--spacing-md);color:#fff;flex-shrink:0;display:flex}.child-options-avatar{font-size:40px}.child-options-name{margin:0;font-size:20px;font-weight:800}.child-options-list{gap:var(--spacing-sm);padding:0 var(--spacing-md);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;min-height:0;display:flex;overflow-y:auto}.child-options-mode{flex-direction:column;gap:6px;display:flex}.child-options-mode-label{color:var(--color-text-muted);font-size:12.5px;font-weight:700}.child-options-mode-row{gap:var(--spacing-sm);display:flex}.child-options-mode-btn{padding:var(--spacing-md) var(--spacing-sm);background:var(--color-surface-2);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;flex:1;align-items:center;gap:2px;font-family:inherit;transition:all .15s;display:flex}.child-options-mode-btn:disabled{cursor:default;opacity:.7}.child-options-mode-btn.selected{border-color:var(--color-primary);background:var(--color-primary-light)}.child-options-mode-emoji{font-size:24px;line-height:1}.child-options-mode-title{color:var(--color-text);font-size:14px;font-weight:800}.child-options-mode-hint{color:var(--color-text-muted);font-size:11.5px}.child-options-action{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:start;font-family:inherit;transition:all .15s;display:flex}.child-options-action:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.child-options-action:active{transform:scale(.98)}.child-options-action-icon{background:rgba(var(--color-primary-rgb), .12);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:22px;display:flex}.child-options-action-body{flex-direction:column;gap:2px;min-width:0;display:flex}.child-options-tt-row .child-options-action-body{flex:1}.child-options-tt-edit{background:var(--color-surface);border:1.5px solid var(--color-border);cursor:pointer;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;transition:all .15s;display:flex}.child-options-tt-edit:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.child-options-tt-edit:active{transform:scale(.92)}.child-options-action-title{color:var(--color-text);font-size:15px;font-weight:700}.child-options-action-hint{color:var(--color-text-muted);word-break:break-word;font-size:12.5px;line-height:1.4}.child-email-google-hint{color:var(--color-primary);margin-top:6px;font-weight:600}.child-options-settings{gap:var(--spacing-sm);flex-direction:column;display:flex}.child-options-settings-toggle{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;text-align:start;width:100%;font-family:inherit;transition:all .15s;display:flex}.child-options-settings-toggle:hover{border-color:var(--color-text-muted)}.child-options-settings-toggle:active{transform:scale(.98)}.child-options-settings.is-open .child-options-settings-toggle{border-color:var(--color-primary);background:var(--color-primary-light)}.child-options-settings-chevron{color:var(--color-text-muted);margin-inline-start:auto;font-size:18px;line-height:1}.child-options-settings-body{gap:var(--spacing-sm);padding-top:var(--spacing-xs);flex-direction:column;animation:.18s childOptionsSettingsOpen;display:flex}@keyframes childOptionsSettingsOpen{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.child-options-cancel{margin:0 var(--spacing-md);padding:13px var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;background:0 0;flex-shrink:0;font-family:inherit;font-size:15px;font-weight:600}.child-options-cancel:hover{color:var(--color-text);border-color:var(--color-text-muted)}@keyframes childOptionsSlideUp{0%{opacity:.5;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.home-all-done-banner{align-items:center;gap:var(--spacing-md);background:var(--color-success-light);border:2px solid var(--color-success);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);color:#065f46;font-size:17px;font-weight:700;animation:.4s slideIn;display:flex}.home-all-done-banner span{font-size:30px}.recent-activity{margin-top:var(--spacing-xs)}.recent-activity-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.recent-activity-title{color:var(--color-text);margin:0;font-size:16px;font-weight:800}.recent-activity-show-all{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:13px;font-weight:700;transition:opacity .15s}.recent-activity-show-all:hover{opacity:.75}.recent-activity-show-all:active{transform:scale(.97)}.recent-activity-card{background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--spacing-sm) var(--spacing-md);overflow:hidden}.recent-activity-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.recent-activity-item{border-bottom:1px solid var(--color-border-soft);align-items:flex-start;gap:10px;padding:11px 0;display:flex}.recent-activity-item.is-tappable{cursor:pointer;border-radius:var(--radius-sm);transition:background .15s}.recent-activity-item.is-tappable:hover{background:var(--color-bg)}.recent-activity-item.is-tappable:active{background:var(--color-border-soft)}.recent-activity-item:last-child{border-bottom:none;padding-bottom:4px}.recent-activity-item:first-child{padding-top:4px}.recent-activity-item--skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg, var(--color-border) 25%, var(--color-border-soft) 50%, var(--color-border) 75%);background-size:200% 100%;border-bottom:none;height:44px;margin:8px 0;padding:0;animation:1.2s infinite shimmer}.recent-activity-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;overflow:hidden}.recent-activity-avatar--photo{background:var(--color-bg);box-shadow:0 0 0 2px var(--color-primary-light)}.recent-activity-avatar--photo img{object-fit:cover;width:100%;height:100%;display:block}.recent-activity-avatar--emoji{background:var(--color-primary-light);font-size:16px}.recent-activity-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.recent-activity-text{color:var(--color-text);margin:0;font-size:13px;font-weight:500;line-height:1.45}.recent-activity-text strong{font-weight:700}.recent-activity-time{color:var(--color-text-muted);font-size:11px;font-weight:500}.recent-activity-icon{opacity:.85;flex-shrink:0;font-size:15px;line-height:1.45}.recent-activity-empty{padding:var(--spacing-md) var(--spacing-sm);color:var(--color-text-muted);text-align:center;margin:0;font-size:13px;line-height:1.5}.recent-activity-tip{color:var(--color-text-muted);text-align:center;margin:0 0 4px;font-size:13px;line-height:1.6}.home-cal{margin-top:var(--spacing-xs)}.home-cal-card{background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:var(--spacing-md);overflow:hidden}.home-cal-header{margin-bottom:var(--spacing-sm);justify-content:space-between;align-items:center;display:flex}.home-cal-title{color:var(--color-text);margin:0;font-size:16px;font-weight:800}.home-cal-show-all{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:13px;font-weight:700;transition:opacity .15s}.home-cal-show-all:hover{opacity:.75}.home-cal-show-all:active{transform:scale(.97)}.home-cal-actions{align-items:center;gap:14px;display:flex}.home-cal-toggle{color:var(--color-text-2);cursor:pointer;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:13px;font-weight:700;transition:opacity .15s,color .15s}.home-cal-toggle:hover{opacity:.75}.home-cal-toggle.is-on{color:var(--color-primary)}.home-cal-strip{gap:6px;display:flex}.home-cal-chip{border:1.5px solid var(--color-border-soft);border-radius:var(--radius-sm);min-width:0;color:var(--color-text-muted);cursor:pointer;background:0 0;flex-direction:column;flex:1 1 0;align-items:center;gap:2px;padding:8px 2px 6px;font-family:inherit;transition:background .15s,border-color .15s,color .15s,transform .1s;display:flex}.home-cal-chip:active{transform:scale(.96)}.home-cal-chip-dow{color:var(--color-text);font-size:14px;font-weight:800}.home-cal-chip-date{white-space:nowrap;font-size:12px;font-weight:600}.home-cal-chip-dot{background:0 0;border-radius:50%;width:5px;height:5px;margin-top:1px}.home-cal-chip-dot.is-on{background:var(--color-primary)}.home-cal-chip.is-selected{background:var(--color-primary);border-color:var(--color-primary);box-shadow:0 4px 12px rgba(var(--color-primary-rgb), .35)}.home-cal-chip.is-selected .home-cal-chip-dow,.home-cal-chip.is-selected .home-cal-chip-date{color:#fff}.home-cal-chip.is-selected .home-cal-chip-dot.is-on{background:#fff}.home-cal-chip.is-today:not(.is-selected){border-color:var(--color-primary);color:var(--color-primary)}.home-cal-divider{background:var(--color-border-soft);height:1px;margin:var(--spacing-md) 0 var(--spacing-sm)}.home-cal-daynav{margin-bottom:var(--spacing-sm);direction:ltr;align-items:center;gap:8px;display:flex}.home-cal-nav{background:var(--color-bg);width:30px;height:30px;color:var(--color-text);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;font-size:20px;line-height:1;transition:background .15s,opacity .15s}.home-cal-nav:hover{background:var(--color-border-soft)}.home-cal-nav:disabled{opacity:.3;cursor:default}.home-cal-add{background:var(--color-primary-light);width:30px;height:30px;color:var(--color-primary);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;font-size:18px;font-weight:700;line-height:1;transition:transform .1s,background .15s}.home-cal-add:active{transform:scale(.92)}.home-cal-daylabel{text-align:center;color:var(--color-text);flex:1;font-size:14px;font-weight:800}.home-cal-events{gap:var(--spacing-sm);flex-direction:column;display:flex}.home-cal-event{text-align:start;border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;align-items:flex-start;gap:10px;width:100%;margin:0 -4px;padding:6px 4px;font-family:inherit;transition:background .15s;display:flex}.home-cal-event:hover{background:var(--color-bg)}.home-cal-event:active{background:var(--color-border-soft)}.home-cal-event-dot{border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:6px}.home-cal-event-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.home-cal-event-time{color:var(--color-text-muted);font-size:12px;font-weight:600}.home-cal-event-title{color:var(--color-text);font-size:14px;font-weight:700;line-height:1.4}.home-cal-empty{padding:var(--spacing-sm) 0 var(--spacing-xs);color:var(--color-text-muted);text-align:center;margin:0;font-size:13px}.feed-list{flex-direction:column;gap:10px;display:flex}.feed-range-row{margin-top:-2px;margin-bottom:2px}.feed-result-count{text-align:center;color:var(--color-text-muted);margin:0 2px;margin-top:calc(-1 * var(--spacing-xl) + 24px);font-size:12.5px;font-weight:600;line-height:1.2}.feed-result-count+.feed-list,.feed-result-count+.feed-skeletons{margin-top:calc(-1 * var(--spacing-xl) + 6px)}.feed-load-older{background:var(--color-surface);width:100%;color:var(--color-text);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);cursor:pointer;justify-content:center;align-items:center;gap:6px;margin-top:14px;padding:12px;font-family:inherit;font-size:14px;font-weight:700;transition:background .15s;display:flex}.feed-load-older:hover:not(:disabled){background:var(--color-surface-2,#f1f5f9)}.feed-load-older:disabled{opacity:.6;cursor:default}.feed-empty{text-align:center;padding:var(--spacing-xl) 0;align-items:center;gap:var(--spacing-sm);flex-direction:column;display:flex}.feed-empty-icon{object-fit:contain;width:72px;height:72px;filter:drop-shadow(0 6px 14px rgba(var(--color-primary-rgb), .22));margin-bottom:4px}.feed-empty p{margin:0}.feed-empty p:first-of-type{color:var(--color-text);font-size:16px;font-weight:700}.feed-empty-hint{color:var(--color-text-muted);font-size:13px}.feed-skeletons{flex-direction:column;gap:10px;display:flex}.feed-skeleton{background:linear-gradient(90deg, var(--color-border) 25%, var(--color-border-soft) 50%, var(--color-border) 75%);border-radius:var(--radius-lg);background-size:200% 100%;height:72px;animation:1.2s infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.feed-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-md);align-items:center;gap:var(--spacing-md);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);transition:opacity .3s;animation:.22s slideIn;display:flex}.feed-card.reverted{opacity:.4}.feed-card.encouragement{background:var(--color-mandatory-bg);border-color:var(--color-mandatory-border)}.feed-card.reward{background:var(--color-feed-reward-bg);border-color:var(--color-feed-reward-border)}.feed-card.suggestion{background:var(--color-feed-suggestion-bg);border-color:var(--color-feed-suggestion-border)}.feed-card.created{background:var(--color-feed-created-bg);border-color:var(--color-feed-created-border)}.feed-card.reviewed{opacity:.55}.feed-card.pickup{background:var(--color-mandatory-bg);border-color:var(--color-warning)}.feed-avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.feed-icon{background:var(--color-bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.feed-actor-photo{background:var(--color-bg);width:44px;height:44px;box-shadow:0 0 0 3px var(--color-primary-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.feed-actor-photo img{object-fit:cover;width:100%;height:100%;display:block}.feed-actor-fallback{background:var(--color-primary-light);width:44px;height:44px;color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:inline-flex}.feed-body{flex:1;min-width:0}.feed-text{color:var(--color-text);margin:0 0 3px;font-size:14px;line-height:1.4}.feed-text strong{font-weight:700}.feed-pts{color:var(--color-accent);font-weight:700}.feed-time{color:var(--color-text-muted);margin:0;font-size:11px;font-weight:600}.feed-reverted-label{color:var(--color-danger);margin:3px 0 0;font-size:11px;font-weight:700}.feed-card-arrival{align-items:flex-start;padding-inline-end:46px;position:relative}.feed-card-arrival .feed-body{flex-direction:column;display:flex}.feed-card-goal{padding-inline-end:46px;position:relative}.feed-arrival-delete-corner{inset-inline-end:10px;background:var(--color-bg);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;transition:all .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.feed-arrival-delete-corner:hover{background:var(--color-danger-light)}.feed-arrival-map-toggle{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:4px;margin-top:6px;padding:2px 4px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.feed-arrival-map-toggle:hover{color:var(--color-text)}.feed-arrival-map-toggle-chevron{font-size:13px;line-height:1}.feed-arrival-nav-btn{border-radius:var(--radius-sm);background:var(--color-primary);color:#fff;cursor:pointer;border:none;margin-top:8px;padding:7px 12px;font-family:inherit;font-size:14px;font-weight:700}.feed-arrival-nav-btn:hover{filter:brightness(1.05)}.feed-arrival-map-btn{border:1px solid var(--color-border-soft);border-radius:var(--radius-sm);cursor:pointer;background:0 0;width:100%;margin:6px 0 2px;padding:0;display:block;position:relative;overflow:hidden}.feed-arrival-map{pointer-events:none;border:0;width:100%;height:130px;display:block}.feed-arrival-map-hint{border-radius:var(--radius-full);color:#fff;background:#0000009e;padding:3px 9px;font-size:11px;font-weight:700;position:absolute;inset-block-start:6px;inset-inline-start:6px}.feed-arrival-delete-confirm{margin-top:20px}.feed-arrival-delete-q{color:var(--color-text);margin:0 0 6px;font-size:13px;font-weight:700}.feed-arrival-delete-actions{gap:8px;display:flex}.feed-arrival-delete-actions>*{flex:1}.feed-arrival-delete-yes{border-radius:var(--radius-sm);background:var(--color-danger);color:#fff;cursor:pointer;border:none;padding:6px 12px;font-family:inherit;font-size:13px;font-weight:700}.feed-arrival-delete-yes:disabled{opacity:.6;cursor:default}.feed-arrival-delete-cancel{border-radius:var(--radius-sm);width:auto;padding:6px 12px;font-size:13px}.feed-arrival-delete-err{color:var(--color-danger);margin:6px 0 0;font-size:12px}.suggestion-status{margin:3px 0 0;font-size:11px;font-weight:700}.suggestion-status.approved{color:var(--color-success)}.suggestion-status.rejected{color:var(--color-danger)}.feed-actions{flex-shrink:0;gap:6px;display:flex}.feed-action-btn{border-radius:var(--radius-sm);cursor:pointer;border:none;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;font-weight:700;transition:all .15s;display:flex}.feed-action-btn:active{transform:scale(.9)}.feed-action-btn.enc{background:var(--color-accent-light);color:var(--color-accent)}.feed-action-btn.enc:hover{background:var(--color-accent);color:#fff}.feed-action-btn.enc.sent{background:var(--color-success-light);color:var(--color-success)}.feed-action-btn.enc.sent:hover{background:var(--color-success);color:#fff}.feed-action-btn.rev{background:var(--color-bg);color:var(--color-text-muted)}.feed-action-btn.rev:hover{background:var(--color-danger-light);color:var(--color-danger)}.feed-action-btn.approve{background:var(--color-success-light);color:var(--color-success);font-size:18px}.feed-action-btn.reject{background:var(--color-danger-light);color:var(--color-danger);font-size:18px}.modal-close-btn{top:var(--spacing-md);background:var(--color-bg);cursor:pointer;width:32px;height:32px;color:var(--color-text-muted);border:none;border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset-inline-end:var(--spacing-md)}.enc-header{align-items:center;gap:var(--spacing-md);width:100%;display:flex}.enc-avatar{font-size:38px}.enc-label{color:var(--color-text-muted);margin:0;font-size:12px;font-weight:600}.enc-child-name{color:var(--color-text);margin:0;font-size:18px;font-weight:800}.enc-presets{flex-wrap:wrap;gap:8px;width:100%;display:flex}.enc-preset{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;color:var(--color-text);padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.enc-preset.selected{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.enc-sent{align-items:center;gap:var(--spacing-md);padding:var(--spacing-xl) 0;color:var(--color-success);flex-direction:column;font-size:17px;font-weight:700;display:flex}.enc-sent-icon{font-size:48px;animation:.4s pop}.star-award-modal{gap:var(--spacing-md)}.star-award-section{flex-direction:column;gap:6px;width:100%;display:flex}.star-award-label{color:var(--color-text-muted);font-size:12.5px;font-weight:700}.star-award-presets{flex-wrap:wrap;gap:8px;width:100%;display:flex}.star-award-chip{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);min-width:64px;color:var(--color-text);cursor:pointer;flex:1;justify-content:center;align-items:center;gap:4px;padding:10px 8px;font-family:inherit;font-weight:700;transition:all .15s;display:flex}.star-award-chip:hover{border-color:var(--color-accent)}.star-award-chip.selected{background:var(--color-accent-light);border-color:var(--color-accent);color:var(--color-warning);box-shadow:0 2px 8px #fcd34d59}.star-award-chip-num{font-size:17px}.star-award-chip-icon{font-size:16px}.star-award-custom{align-items:center;gap:8px;margin-top:10px;display:flex}.star-award-custom-label{color:var(--color-text-muted);flex-shrink:0;font-size:13px}.star-award-custom-input{flex:1;min-width:0}.star-award-custom-input.is-invalid{border-color:var(--color-danger,#dc2626)}.star-award-custom-icon{flex-shrink:0;font-size:16px}.star-award-reason{resize:vertical;min-height:64px;font-family:inherit}.star-award-counter{color:var(--color-text-muted);align-self:flex-end;margin:0;font-size:11px;font-weight:600}.star-award-submit{width:100%}.star-award-private,.star-award-all-goals{width:100%;margin-top:0}.star-award-goals{flex-direction:column;gap:8px;width:100%;margin-top:6px;display:flex}.star-award-goals-label{color:var(--color-text-muted);margin:0;font-size:12.5px;font-weight:700}.star-award-goals-list{flex-direction:column;gap:8px;width:100%;margin:0;padding:0;list-style:none;display:flex}.star-award-goal-row{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;align-items:center;gap:10px;width:100%;padding:10px 12px;transition:all .15s;display:flex}.star-award-goal-row:hover{border-color:var(--color-accent)}.star-award-goal-row.selected{background:var(--color-accent-light);border-color:var(--color-accent)}.star-award-goal-title{color:var(--color-text);flex:1;font-size:14px;font-weight:600}.star-award-goal-stars{color:var(--color-warning);flex-shrink:0;font-size:13px;font-weight:700}.star-award-goals-hint{color:var(--color-danger,var(--color-warning));margin:0;font-size:12px;font-weight:600}.star-award-foot{color:var(--color-text-muted);text-align:center;margin:0;font-size:12.5px;line-height:1.45}.star-award-foot--muted{opacity:.85;font-style:italic}.star-award-warning{gap:var(--spacing-sm);width:100%;padding:var(--spacing-md);background:var(--color-accent-light);border:1.5px solid var(--color-accent);border-radius:var(--radius-md);display:flex}.star-award-warning-icon{flex-shrink:0;font-size:22px;line-height:1.2}.star-award-warning-body{flex-direction:column;gap:6px;min-width:0;display:flex}.star-award-warning-title{color:var(--color-text);margin:0;font-size:14px;font-weight:800}.star-award-warning-text{color:var(--color-text);margin:0;font-size:13px;line-height:1.5}.star-award-warning-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.star-award-warning-btn{border-radius:var(--radius-md);cursor:pointer;flex:1;min-width:120px;padding:9px 12px;font-family:inherit;font-size:13.5px;font-weight:700;transition:all .15s}.star-award-warning-btn.primary{background:var(--color-primary);color:#fff;border:1.5px solid var(--color-primary)}.star-award-warning-btn.primary:hover{filter:brightness(.95)}.star-award-warning-btn.ghost{color:var(--color-text-muted);border:1.5px solid var(--color-border);background:0 0}.star-award-warning-btn.ghost:hover{color:var(--color-text);border-color:var(--color-text-muted)}.star-award-warning-btn:disabled{opacity:.55;cursor:default}.child-options-action--stars .child-options-action-icon{background:var(--color-accent-light);color:var(--color-warning)}.child-options-action--stars{border-color:var(--color-accent)}.child-options-action--stars:hover{border-color:var(--color-accent);background:var(--color-accent-light)}.filter-scroll{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.filter-scroll::-webkit-scrollbar{display:none}.stats-tab .filter-scroll{margin-top:var(--spacing-md)}.filter-chip{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;color:var(--color-text);white-space:nowrap;flex-shrink:0;align-items:center;gap:6px;padding:5px 14px 5px 8px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.filter-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 3px 10px rgba(var(--color-primary-rgb), .25)}.task-list{flex-direction:column;gap:8px;display:flex}.task-row-item{background:var(--color-surface);border-radius:var(--radius-lg);align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);cursor:pointer;transition:all .15s;animation:.2s slideIn;display:flex;overflow:hidden}.task-row-item:active{transform:scale(.99)}.task-row-avatar{flex-shrink:0;justify-content:center;align-items:center;min-width:64px;display:flex;position:relative}.task-row-avatar-fallback{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:30px;line-height:1;display:inline-flex}.task-row-avatar-stack{align-items:center;display:inline-flex}.task-row-avatar-stack>*{border:2px solid var(--color-surface);border-radius:50%;margin-inline-start:-10px}.task-row-avatar-stack>:first-child{margin-inline-start:0}.task-row-avatar-more{background:var(--color-surface-2);width:32px;height:32px;color:var(--color-text);border:2px solid var(--color-surface);border-radius:50%;justify-content:center;align-items:center;margin-inline-start:-10px;font-size:12px;font-weight:700;display:inline-flex}.task-row-body{flex:1;min-width:0}.task-row-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px;display:flex}.task-row-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:15px;font-weight:700;overflow:hidden}.task-row-delete{cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:16px;transition:opacity .15s}.task-row-delete:hover{opacity:1}.task-row-meta{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.task-meta-text{color:var(--color-text-muted);font-size:12px;font-weight:500}.task-type-badge{border-radius:var(--radius-full);background:var(--color-primary-light);color:var(--color-primary);letter-spacing:.03em;padding:2px 8px;font-size:10px;font-weight:700}.fab{background:var(--color-primary);color:#fff;cursor:pointer;width:54px;height:54px;box-shadow:0 6px 20px rgba(var(--color-primary-rgb), .4);z-index:40;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:28px;transition:all .15s;display:flex;position:fixed;bottom:90px;left:50%;transform:translate(calc(150px - 50%))}.fab:hover{transform:translate(calc(150px - 50%))scale(1.08)}.fab:active{transform:translate(calc(150px - 50%))scale(.95)}.qa-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:45;background:#0f0f128c;animation:.18s qaFade;position:fixed;inset:0}.qa-fab-wrap{bottom:88px;z-index:50;pointer-events:none;flex-direction:column;align-items:flex-end;gap:10px;max-width:calc(100vw - 40px);display:flex;position:fixed;inset-inline-end:20px}.qa-fab-wrap>*{pointer-events:auto}.qa-fab{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-self:flex-end;align-items:center;width:60px;height:60px;font-family:inherit;transition:transform .2s,box-shadow .18s,background .18s;display:flex;box-shadow:0 10px 24px #6366f173}.qa-fab:hover{box-shadow:0 12px 28px #6366f18c}.qa-fab:active{transform:scale(.93)}.qa-fab-icon{font-size:32px;font-weight:300;line-height:1;display:inline-block}.qa-fab-wrap.open .qa-fab{background:#404049f2;box-shadow:0 8px 20px #0f0f1259}.qa-fab-wrap.open .qa-fab-icon{font-size:22px;font-weight:400}.qa-actions{pointer-events:none;flex-direction:column;align-items:stretch;gap:14px;width:max-content;max-width:calc(100vw - 40px);display:flex}.qa-action-row{pointer-events:none;display:flex;position:relative}.qa-action-row>.qa-action{width:100%}.qa-fab-wrap.open .qa-action-row{pointer-events:auto}.qa-action-dismiss{top:-8px;color:#fff;cursor:pointer;z-index:1;opacity:0;pointer-events:none;background:#0f0f12eb;border:1.5px solid #fff6;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;padding:0;font-family:inherit;font-size:11px;font-weight:800;line-height:1;transition:opacity .18s,transform .18s cubic-bezier(.34,1.56,.64,1),background .18s;display:inline-flex;position:absolute;inset-inline-start:-8px;transform:scale(.7);box-shadow:0 4px 10px #0f0f1259}.qa-fab-wrap.open .qa-action-dismiss{opacity:1;pointer-events:auto;transition-delay:calc(var(--qa-i) * 45ms + 80ms);transform:scale(1)}.qa-action-dismiss:hover{background:var(--color-danger);transform:scale(1.08)}.qa-action-dismiss:active{transform:scale(.92)}.qa-hide-confirm{text-align:center;max-width:380px;padding:var(--spacing-xl) var(--spacing-lg)}.qa-hide-confirm-title{color:var(--color-text);margin:0 0 8px;font-size:16px;font-weight:700;line-height:1.5}.qa-hide-confirm-body{margin:0 0 var(--spacing-lg);color:var(--color-text-muted);font-size:14px;line-height:1.55}.qa-hide-confirm-actions{gap:var(--spacing-sm);justify-content:stretch;display:flex}.qa-hide-confirm-actions>button{flex:1}.settings-hidden-actions{gap:var(--spacing-xs);flex-direction:column;display:flex}.qa-action{cursor:pointer;color:#fff;opacity:0;pointer-events:none;text-align:start;background:linear-gradient(135deg,#4f46e5eb 0%,#1a1a1ff0 100%);border:1px solid #818cf859;border-radius:16px;flex-direction:row-reverse;justify-content:flex-end;align-items:center;gap:12px;padding:12px 14px 12px 16px;font-family:inherit;font-size:15px;font-weight:600;transition:opacity .18s,transform .22s cubic-bezier(.34,1.56,.64,1),border-color .18s,box-shadow .18s;display:flex;transform:translateY(10px);box-shadow:0 8px 22px #0f0f1247}.qa-fab-wrap.open .qa-action{opacity:1;pointer-events:auto;transition-delay:calc(var(--qa-i) * 45ms);transform:translateY(0)}.qa-action:hover{border-color:#a5b4fca6;box-shadow:0 10px 26px #6366f159}.qa-action:active{transform:scale(.98)}.qa-action-text{align-items:center;gap:6px;min-width:0;display:inline-flex}.qa-action-badge{background:var(--color-accent);min-width:18px;height:18px;color:var(--color-on-accent);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.qa-action-icon{flex-shrink:0;font-size:22px;line-height:1}@keyframes qaFade{0%{opacity:0}to{opacity:1}}.invite-actions{gap:var(--spacing-sm);flex-wrap:wrap;display:flex}.invite-actions>button{flex:1;min-width:140px}.connect-child-list{flex-wrap:wrap;gap:8px;display:flex}.connect-child-pill{background:var(--color-bg);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-full);color:var(--color-text);align-items:center;gap:8px;padding:4px 12px 4px 4px;font-size:13px;font-weight:600;display:inline-flex}.connect-child-picker-section,.connect-child-picker-section .form-label{text-align:center}.connect-child-picker{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.connect-child-chip{background:var(--color-bg);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;flex-direction:column;align-items:center;gap:6px;min-width:84px;padding:10px 12px 8px;font-family:inherit;font-size:13px;font-weight:600;transition:border-color .15s,background .15s,transform .12s;display:inline-flex}.connect-child-chip:hover{border-color:var(--color-border)}.connect-child-chip:active{transform:scale(.98)}.connect-child-chip.is-selected{background:var(--color-primary-light,#6c5ce714);border-color:var(--color-primary);border-width:2px;padding:9.5px 11.5px 7.5px}.connect-child-chip-icon{background:var(--color-primary-light,#6c5ce71f);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:28px;display:inline-flex}.connect-child-chip--all .connect-child-chip-icon{font-size:26px}.connect-child-chip-label{white-space:nowrap;font-size:13px;line-height:1.2}.share-grid{gap:var(--spacing-sm);grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.share-btn{background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-lg);cursor:pointer;color:var(--color-text);flex-direction:column;align-items:center;gap:4px;padding:14px 10px;font-size:13px;font-weight:700;transition:all .15s;display:flex}.share-btn:hover{box-shadow:var(--shadow-sm);border-color:var(--color-primary);transform:translateY(-1px)}.share-btn:active{transform:translateY(0)}.share-icon{font-size:22px;line-height:1}.share-whatsapp:hover{color:#128c7e;border-color:#25d366}.share-sms:hover{color:#4d96ff;border-color:#4d96ff}.share-email:hover{color:#a855f7;border-color:#a855f7}.share-native:hover{border-color:var(--color-primary);color:var(--color-primary)}.tab-empty{justify-content:center;align-items:center;gap:var(--spacing-sm);flex-direction:column;min-height:40vh;display:flex}.tab-empty p:first-child{font-size:48px}.tab-empty p:nth-child(2){color:var(--color-text);font-size:17px;font-weight:700}.tab-empty-hint{color:var(--color-text-muted);font-size:13px}.tab-empty-icon{object-fit:contain;width:96px;height:96px;filter:drop-shadow(0 6px 14px rgba(var(--color-primary-rgb), .22));margin-bottom:4px}.tab-empty>.tab-empty-icon:first-child+p{color:var(--color-text);font-size:17px;font-weight:700}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#11182799;justify-content:center;align-items:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.form-sheet{background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;width:100%;max-width:var(--app-max-width);max-height:90dvh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.25s slideUp;display:flex}.form-sheet>form{flex-direction:column;flex:1;min-height:0;display:flex}.form-sheet-header-spacer{flex-shrink:0;width:48px}.form-sheet-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border-soft);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.form-sheet-header h3{color:var(--color-text);font-size:16px;font-weight:800}.form-sheet-cancel{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:6px;font-family:inherit;font-size:14px}.form-sheet-save{background:var(--color-primary);color:#fff;border-radius:var(--radius-sm);cursor:pointer;border:none;padding:8px 16px;font-family:inherit;font-size:14px;font-weight:700}.form-sheet-save:disabled{opacity:.4;cursor:not-allowed}.form-fieldset{gap:var(--spacing-lg);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.form-fieldset:disabled{opacity:1}.form-readonly-wrap{position:relative}.form-readonly-catcher{z-index:2;cursor:pointer;background:0 0;position:absolute;inset:0}.edit-hint-wrap{position:relative}.edit-hint-tooltip{top:calc(100% + 8px);z-index:5;white-space:nowrap;background:var(--color-text,#1f2937);color:var(--color-surface,#fff);border-radius:var(--radius-md);box-shadow:var(--shadow-md,0 4px 14px #00000040);pointer-events:none;padding:7px 11px;font-size:12.5px;font-weight:700;animation:.18s ease-out editHintPop;position:absolute;inset-inline-end:0}.edit-hint-tooltip:before{content:"";bottom:100%;border:6px solid #0000;border-bottom-color:var(--color-text,#1f2937);position:absolute;inset-inline-end:18px}@keyframes editHintPop{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.task-delete-btn{border-radius:var(--radius-md);border:1.5px solid var(--color-danger);background:var(--color-danger-light,#ef444414);color:var(--color-danger);cursor:pointer;align-self:stretch;padding:12px;font-family:inherit;font-size:15px;font-weight:700;transition:all .15s}.task-delete-btn:hover{background:var(--color-danger);color:#fff}.form-sheet-body{gap:var(--spacing-lg);padding:var(--spacing-lg);padding-bottom:calc(var(--spacing-xl) + 16px + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex;overflow-y:auto}.form-section{flex-direction:column;gap:10px;display:flex}.form-label{color:var(--color-text-2);font-size:13px;font-weight:700}.whats-new-body{text-align:center}.whats-new-subtitle{color:var(--color-text-2);margin-bottom:4px;font-size:14px}.whats-new-list{text-align:start;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.whats-new-item{color:var(--color-text);align-items:flex-start;gap:10px;font-size:15px;font-weight:500;display:flex}.whats-new-bullet{color:var(--color-primary);flex-shrink:0;margin-top:3px;font-size:12px}.whats-new-close-btn{background:var(--color-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;margin-top:8px;padding:12px 32px;font-family:inherit;font-size:16px;font-weight:700}.form-hint{color:var(--color-text-muted);margin:0;font-size:12px}.form-title-input{font-size:18px;font-weight:700}.ob-input{width:100%;padding:13px var(--spacing-md);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);background:var(--color-surface-2);text-align:start;outline:none;font-family:inherit;font-size:15px;transition:border-color .15s,box-shadow .15s}.ob-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-surface)}.ob-input[type=date],.ob-input[type=datetime-local],.ob-input[type=time],.ob-input[type=number],textarea.ob-input{direction:inherit;text-align:start}[dir=rtl] .ob-input[type=date],[dir=rtl] .ob-input[type=datetime-local],[dir=rtl] .ob-input[type=time],[dir=rtl] .ob-input[type=number]{direction:rtl}.type-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.type-btn{padding:var(--spacing-md) 8px;background:var(--color-surface-2);border:2px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;align-items:center;gap:6px;min-width:0;font-family:inherit;transition:all .15s;display:flex}.type-btn.selected{border-color:var(--color-primary);background:var(--color-primary-light)}.type-icon{font-size:24px}.type-icon-img{object-fit:contain;width:40px;height:40px;transition:transform .18s,filter .18s;display:block}.type-btn.selected .type-icon-img{transform:scale(1.06)}.type-label{color:var(--color-text);font-size:14px;font-weight:700}.type-desc{color:var(--color-text-muted);text-align:center;font-size:11px;line-height:1.3}.form-toggle-row{margin-top:var(--spacing-md);background:var(--color-surface-2);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);cursor:pointer;align-items:flex-start;gap:10px;padding:12px 14px;transition:border-color .15s,background .15s;display:flex}.form-toggle-row:hover{border-color:var(--color-border)}.form-toggle-row:has(.form-toggle-checkbox:checked){background:var(--color-primary-light,#6c5ce714);border-color:var(--color-primary)}.form-toggle-checkbox{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;margin:2px 0 0}.form-toggle-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.form-toggle-label{color:var(--color-text);font-size:14px;font-weight:600;line-height:1.35}.form-toggle-hint{color:var(--color-text-muted);font-size:12px;line-height:1.4}.child-chip-row{flex-wrap:wrap;gap:8px;display:flex}.child-chip{background:var(--color-surface-2);border:2px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;color:var(--color-text);align-items:center;gap:6px;padding:6px 14px 6px 8px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s;display:inline-flex}.child-chip.selected{font-weight:700}.child-chip-check{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;margin-inline-start:2px;font-size:11px;font-weight:900;display:inline-flex}.form-label-count{color:var(--color-text-muted);margin-inline-start:4px;font-weight:600}.rotation-order-num{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;margin-inline-end:4px;font-size:11px;font-weight:900;display:inline-flex}.schedule-row{flex-wrap:wrap;gap:8px;display:flex}.schedule-btn{background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-full);cursor:pointer;color:var(--color-text);padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s}.schedule-btn.selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.days-row{justify-content:center;gap:6px;display:flex}.day-btn{border:2px solid var(--color-border);background:var(--color-surface-2);cursor:pointer;width:38px;height:38px;color:var(--color-text);border-radius:50%;font-family:inherit;font-size:13px;font-weight:700;transition:all .15s}.day-btn.selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.icon-grid{grid-template-columns:repeat(6,1fr);gap:8px;display:grid}.icon-btn{background:var(--color-surface-2);border-radius:var(--radius-sm);cursor:pointer;border:2px solid #0000;padding:8px;font-size:24px;transition:all .15s}.icon-btn.selected{border-color:var(--color-primary);background:var(--color-primary-light);transform:scale(1.1)}.linked-tasks-list{flex-direction:column;gap:6px;display:flex}.ob-range{width:100%;accent-color:var(--color-primary)}.ob-range-labels{color:var(--color-text-muted);justify-content:space-between;font-size:11px;font-weight:600;display:flex}.goal-target-number{width:110px;margin-top:var(--spacing-sm);text-align:center}.ob-task-row{align-items:center;gap:var(--spacing-sm);padding:11px var(--spacing-md);background:var(--color-surface-2);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s;display:flex}.ob-task-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);flex-shrink:0}.ob-task-row.selected{border-color:var(--color-primary);background:var(--color-primary-light)}.ob-task-row.compact{padding:9px var(--spacing-md)}.ob-task-badge{border-radius:var(--radius-full);background:var(--color-border);color:var(--color-text-muted);padding:2px 8px;font-size:11px;font-weight:700}.ob-task-badge.points{background:var(--color-accent-light);color:var(--color-accent)}.ob-error{color:var(--color-danger);background:var(--color-danger-light);border-radius:var(--radius-sm);padding:var(--spacing-sm) var(--spacing-md);text-align:center;font-size:13px}.ob-btn-primary{background:var(--color-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;padding:14px;font-family:inherit;font-size:15px;font-weight:700;transition:all .15s}.ob-btn-primary:hover:not(:disabled){background:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.ob-btn-primary:disabled{opacity:.4;cursor:not-allowed}.confirm-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-xl);margin:var(--spacing-lg);margin-bottom:calc(var(--spacing-lg) + 16px + env(safe-area-inset-bottom,0px));text-align:center;box-shadow:var(--shadow-lg);animation:.2s pop}.confirm-title{color:var(--color-text);margin:0 0 8px;font-size:17px;font-weight:700}.confirm-hint{color:var(--color-text-muted);margin:0 0 var(--spacing-lg);font-size:13px}.confirm-actions{gap:var(--spacing-sm);display:flex}.confirm-cancel{background:var(--color-bg);border:1.5px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text);flex:1;padding:13px;font-family:inherit;font-size:15px;font-weight:600}.confirm-delete{background:var(--color-danger);border-radius:var(--radius-md);cursor:pointer;color:#fff;border:none;flex:1;padding:13px;font-family:inherit;font-size:15px;font-weight:700}.reward-goals-list{gap:var(--spacing-md);flex-direction:column;display:flex}.reward-goal-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-md);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);transition:all .3s;animation:.2s slideIn}.seg-toggle{background:var(--color-surface-2);border-radius:var(--radius-full);width:100%;padding:3px;display:inline-flex}.seg-toggle-btn{border-radius:var(--radius-full);color:var(--color-text-2);cursor:pointer;background:0 0;border:none;flex:1;padding:8px 14px;font-size:14px;font-weight:600}.seg-toggle-btn.selected{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-xs)}.settings-row{justify-content:space-between;align-items:center;gap:var(--spacing-md);display:flex}.settings-row-text{flex-direction:column;gap:2px;min-width:0;display:flex}.settings-row-title{color:var(--color-text);font-weight:600}.settings-row-sub{color:var(--color-text-muted);font-size:13px}.incentive-switch{border-radius:var(--radius-full);background:var(--color-border);cursor:pointer;border:none;flex-shrink:0;width:46px;height:28px;transition:background .2s;position:relative}.incentive-switch.is-on{background:var(--color-primary)}.incentive-switch .incentive-switch-thumb{top:3px;background:#fff;border-radius:50%;width:22px;height:22px;transition:inset-inline-start .2s;position:absolute;inset-inline-start:3px}.incentive-switch.is-on .incentive-switch-thumb{inset-inline-start:21px}.incentive-card{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-md);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);cursor:pointer;transition:border-color .15s;animation:.2s slideIn}.incentive-card.is-open{border-color:var(--color-primary)}.incentive-card-head{align-items:center;gap:var(--spacing-sm);display:flex}.incentive-card-icon{font-size:26px}.incentive-card-title{color:var(--color-text);flex:1;min-width:0;font-weight:700}.incentive-card-rule{color:var(--color-text-2);margin-top:6px;font-size:13px}.incentive-card-badge{border-radius:var(--radius-full);background:var(--color-orange-light);color:var(--color-accent,#d97706);margin-inline-start:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.incentive-card-actions{gap:var(--spacing-sm);margin-top:var(--spacing-sm);display:flex}.rgc-action-btn{background:var(--color-surface-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);color:var(--color-text-2);cursor:pointer;flex:1;padding:8px;font-size:13px;font-weight:600;transition:background .15s}.rgc-action-btn:hover{background:var(--color-surface-hover)}.incentives-section{margin-top:var(--spacing-lg)}.incentives-head{justify-content:space-between;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);display:flex}.incentives-head .section-title{margin:0}.incentives-add-btn{background:var(--color-primary-light);color:var(--color-primary-dark);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;border:none;padding:6px 14px;font-size:14px;font-weight:700;transition:opacity .15s}.incentives-add-btn:hover{opacity:.85}.incentives-empty{color:var(--color-text-muted);padding:var(--spacing-sm) 0;font-size:14px}.rewards-achieved-section{margin-top:var(--spacing-lg)}.rewards-achieved-section .section-title{margin:0 0 var(--spacing-sm)}.rewards-achieved-section .reward-achieved-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rewards-achieved-section .reward-achieved-row{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);align-items:center;gap:8px;padding:8px 10px;display:flex}.rewards-achieved-section .reward-achieved-icon{flex-shrink:0;font-size:18px}.rewards-achieved-section .reward-achieved-title{min-width:0;color:var(--color-text);overflow-wrap:anywhere;flex:1;font-size:13px}.rewards-achieved-section .reward-achieved-date{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.rewards-achieved-section .reward-achieved-del{cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:13px;transition:opacity .15s}.rewards-achieved-section .reward-achieved-del:hover{opacity:1}.reward-goal-card.ready{border-color:var(--color-success);box-shadow:0 4px 16px #10b9811f}.reward-goal-card.completed{opacity:.55}.rgc-header{align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);display:flex}.rgc-icon{flex-shrink:0;font-size:32px}.rgc-info{flex:1;min-width:0}.rgc-top{justify-content:space-between;align-items:center;display:flex}.rgc-title{color:var(--color-text);margin:0 0 2px;font-size:15px;font-weight:700}.rgc-child{color:var(--color-text-muted);align-items:center;gap:5px;margin:0;font-size:13px;display:inline-flex}.rgc-btns{gap:4px;display:flex}.rgc-edit-btn,.rgc-del-btn{cursor:pointer;opacity:.6;background:0 0;border:none;padding:4px;font-size:15px;transition:opacity .15s}.rgc-edit-btn:hover,.rgc-del-btn:hover{opacity:1}.rgc-progress-row{align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm);display:flex}.rgc-bar-bg{background:var(--color-border);border-radius:var(--radius-full);flex:1;height:8px;overflow:hidden}.rgc-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .6s}.rgc-pts{color:var(--color-text-muted);white-space:nowrap;font-size:12px;font-weight:700}.rgc-award-btn{background:var(--color-success);color:#fff;border-radius:var(--radius-md);cursor:pointer;border:none;width:100%;padding:12px;font-family:inherit;font-size:15px;font-weight:700;transition:opacity .15s;box-shadow:0 4px 12px #10b98140}.rgc-award-btn:hover{opacity:.9}.rgc-done-badge{color:var(--color-success);background:var(--color-success-light);border-radius:var(--radius-full);white-space:nowrap;padding:4px 10px;font-size:11px;font-weight:700}.rgc-renew-btn{background:var(--color-surface-2,#f1f5f9);width:100%;color:var(--color-text);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-md);cursor:pointer;margin-top:10px;padding:10px;font-family:inherit;font-size:14px;font-weight:700;transition:background .15s}.rgc-renew-btn:hover{background:var(--color-border,#e2e8f0)}.rgc-multi-hint{color:var(--color-text-muted);margin:2px 0 0;font-size:12px;font-weight:500}.rgc-child-progress-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.rgc-child-progress{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);background:rgba(var(--color-primary-rgb), .04);border:1px solid var(--color-border-soft)}.rgc-child-progress.ready{background:#4caf7d14;border-color:#4caf7d59}.rgc-child-progress.awarded{opacity:.65}.rgc-child-progress-head{align-items:center;gap:8px;margin-bottom:6px;display:flex}.rgc-child-progress-name{color:var(--color-text);font-size:13px;font-weight:700}.rgc-child-awarded-badge{color:var(--color-text-muted);margin-inline-start:auto;font-size:11px;font-weight:700}.rgc-child-progress .rgc-progress-row{margin-bottom:8px}.rgc-child-progress .rgc-award-btn{padding:10px;font-size:14px}.rgc-child-chip{align-items:center;gap:5px;margin-inline-end:8px;display:inline-flex}.rgc-tasks-toggle{width:100%;margin-top:var(--spacing-sm);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:6px 10px;font-family:inherit;transition:all .15s;display:flex}.rgc-tasks-toggle:hover{color:var(--color-text);border-color:var(--color-text-muted)}.reward-goal-card.is-open .rgc-tasks-toggle{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-primary-light)}.rgc-tasks-toggle-chevron{font-size:16px;line-height:1}.rgc-tasks{margin-top:var(--spacing-sm);padding:var(--spacing-md);background:var(--color-surface-2);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);animation:.18s rgcTasksOpen}@keyframes rgcTasksOpen{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.rgc-tasks-label{color:var(--color-text-muted);margin:0 0 8px;font-size:12px;font-weight:700}.rgc-tasks-empty{color:var(--color-text-muted);margin:0;font-size:12.5px;line-height:1.5}.rgc-tasks-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rgc-task-row{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);align-items:center;gap:10px;padding:8px 10px;display:flex}.rgc-task-icon{font-size:16px;line-height:1}.rgc-task-title{min-width:0;color:var(--color-text);word-break:break-word;flex:1;font-size:13.5px;font-weight:600}.rgc-task-pts{color:var(--color-primary);white-space:nowrap;font-size:12.5px;font-weight:700}.rgd-headline{align-items:center;gap:var(--spacing-md);display:flex}.rgd-icon{font-size:32px;line-height:1}.rgd-headline-text{flex-direction:column;gap:4px;min-width:0;display:flex}.rgd-title{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:800}.rgd-badge{border-radius:var(--radius-full);align-self:flex-start;padding:2px 8px;font-size:11px;font-weight:700}.rgd-badge.repeating{background:var(--color-primary-light);color:var(--color-primary-dark)}.rgd-badge.one-time{background:var(--color-surface-2,#f1f5f9);color:var(--color-text-muted)}.rgd-description{margin:var(--spacing-sm) 0 0;color:var(--color-text-muted);font-size:14px}.rgd-multi-hint{margin:var(--spacing-sm) 0 0;color:var(--color-text-muted);font-size:13px}.rgd-progress-list{flex-direction:column;gap:10px;display:flex}.rgd-progress-row{align-items:center;gap:8px;display:flex}.rgd-progress-name{color:var(--color-text);white-space:nowrap;font-size:13px;font-weight:600}.rgd-bar-bg{border-radius:var(--radius-full);background:var(--color-border-soft);flex:1;height:10px;overflow:hidden}.rgd-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .3s}.rgd-pts{color:var(--color-text);white-space:nowrap;font-size:12.5px;font-weight:700}.rgd-tasks-empty{color:var(--color-text-muted);font-size:13px}.rgd-tasks-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rgd-task-row{background:var(--color-bg);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);align-items:center;gap:8px;padding:7px 10px;display:flex}.rgd-task-icon{font-size:16px;line-height:1}.rgd-task-title{min-width:0;color:var(--color-text);overflow-wrap:anywhere;flex:1;font-size:13px;font-weight:600}.rgd-task-pts{color:var(--color-primary);white-space:nowrap;font-size:12.5px;font-weight:700}.rgd-tasks-more{cursor:pointer;width:100%;color:var(--color-text-muted);background:0 0;border:none;justify-content:center;align-items:center;gap:6px;margin-top:8px;padding:8px;font-family:inherit;font-size:13px;font-weight:600;display:flex}.rgd-tasks-more:hover{color:var(--color-text)}.rgd-tasks-more-chevron{font-size:12px}.rgd-actions{margin-top:var(--spacing-md);flex-wrap:wrap;gap:8px;display:flex}.rgd-action-btn{background:var(--color-surface-2,#f1f5f9);min-width:90px;color:var(--color-text);border:1px solid var(--color-border,#e2e8f0);border-radius:var(--radius-md);cursor:pointer;flex:1;padding:10px;font-family:inherit;font-size:14px;font-weight:700;transition:background .15s}.rgd-action-btn:hover{background:var(--color-border,#e2e8f0)}.rgd-action-btn.danger{color:var(--color-danger,#dc2626)}.rgc-log-toggle{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;margin-top:10px;padding:2px 4px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.rgc-log-toggle:hover{color:var(--color-text)}.rgc-log-chevron{font-size:13px;line-height:1}.rgc-log-label{letter-spacing:.02em}.rgc-log{flex-direction:column;margin-top:8px;animation:.18s rgcTasksOpen;display:flex}.rgc-log-empty{color:var(--color-text-muted);margin:0;font-size:12.5px}.rgc-log-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.rgc-log-row{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);align-items:center;gap:8px;padding:7px 10px;display:flex}.rgc-log-title{min-width:0;color:var(--color-text);word-break:break-word;flex:1;font-size:13px;font-weight:600}.rgc-log-date{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.rgc-log-pts{color:var(--color-primary);white-space:nowrap;font-size:12.5px;font-weight:700}.rgc-log-row--adjust{background:var(--color-primary-light,#fff7e6);border-style:dashed}.rgc-log-more{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-self:center;align-items:center;gap:4px;margin-top:8px;padding:4px 10px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.rgc-log-more:hover{color:var(--color-text)}.rgc-log-more-chevron{font-size:13px;line-height:1}.confirm-dialog{text-align:center;max-width:360px}.confirm-dialog-title{color:var(--color-text);margin:0 0 10px;font-size:17px;font-weight:800}.confirm-dialog-body{color:var(--color-text-muted);margin:0 0 18px;font-size:14px;line-height:1.5}.confirm-dialog-actions{gap:10px;display:flex}.confirm-dialog-actions>button{border-radius:var(--radius-md);cursor:pointer;flex:1;padding:12px;font-family:inherit;font-size:15px;font-weight:700;transition:all .15s}.ob-btn-ghost{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.ob-btn-ghost:hover{background:var(--color-surface-alt,#0000000a)}.ob-btn-danger{background:var(--color-danger);color:#fff;border:none}.ob-btn-danger:hover{filter:brightness(.94)}.dt-format-group{margin-top:var(--spacing-md)}.dt-format-group+.dt-format-group{margin-top:var(--spacing-lg)}.dt-format-group-label{color:var(--color-text-muted);margin-bottom:var(--spacing-sm);letter-spacing:.02em;font-size:12px;font-weight:700;display:block}.dt-format-grid{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;display:grid}.dt-format-btn{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:14px 8px;font-family:inherit;transition:all .15s;display:flex}.dt-format-btn:hover{border-color:var(--color-primary-light);background:var(--color-primary-light)}.dt-format-btn.selected{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb), .08);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .18) inset}.dt-format-sample{color:var(--color-text);font-size:15px;font-weight:700}.dt-format-btn.selected .dt-format-sample{color:var(--color-primary)}.dt-format-sub{color:var(--color-text-muted);font-size:11px;font-weight:500}.lang-chip-grid{margin-top:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;display:grid}.lang-chip{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:12px 10px;font-family:inherit;transition:all .15s;display:flex}.lang-chip:hover{border-color:var(--color-primary-light);background:var(--color-primary-light)}.lang-chip.selected{border-color:var(--color-primary);background:rgba(var(--color-primary-rgb), .08);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb), .18) inset}.lang-chip-flag{font-size:18px;line-height:1}.lang-chip-name{color:var(--color-text);font-size:14px;font-weight:700}.lang-chip.selected .lang-chip-name{color:var(--color-primary)}.lang-family-default{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.settings-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft)}.settings-card-editable{justify-content:space-between;align-items:center;gap:var(--spacing-md);text-align:start;width:100%;font:inherit;color:inherit;cursor:pointer;transition:background .15s,transform 50ms;display:flex}.settings-card-editable:hover{background:var(--color-surface-hover)}.settings-card-editable:active{transform:scale(.99)}.settings-card-text{flex:1;min-width:0}.settings-card-edit-icon{opacity:.55;flex-shrink:0;font-size:18px}.settings-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 3px;font-size:11px;font-weight:700}.settings-value{color:var(--color-text);margin:0;font-size:18px;font-weight:700}.settings-subvalue{color:var(--color-text-muted);margin:2px 0 0;font-size:13px;font-weight:500;line-height:1.3}.settings-section{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);gap:var(--spacing-sm);flex-direction:column;display:flex}.settings-section-title{color:var(--color-text);margin:0;font-size:14px;font-weight:700}.settings-section-title.danger{color:var(--color-danger)}.settings-hint{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.settings-pin-status{justify-content:center;align-items:center;gap:8px;display:flex}.settings-pin-pill{border-radius:var(--radius-full);align-items:center;gap:6px;padding:4px 12px;font-size:13px;font-weight:700;display:inline-flex}.settings-pin-pill.is-on{color:#16a34a;background:#22c55e1f}.settings-pin-pill.is-off{color:#dc2626;background:#ef44441f}.settings-update-row{align-items:center;gap:8px;display:flex}.settings-update-version{border-radius:var(--radius-full);background:rgba(var(--color-primary-rgb), .08);color:var(--color-primary);letter-spacing:.2px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.settings-update-status{color:var(--color-text-muted);margin:4px 0 0;font-size:13px;line-height:1.5}.settings-update-status[data-tone=ok]{color:#16a34a}.settings-update-status[data-tone=err]{color:#dc2626}.settings-btn{width:100%;padding:13px var(--spacing-md);background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;text-align:center;font-family:inherit;font-size:15px;font-weight:600;transition:all .15s}.settings-btn:hover:not(:disabled){background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary)}.settings-btn:disabled{opacity:.45;cursor:not-allowed}.settings-btn.success{background:var(--color-success-light);border-color:var(--color-success);color:var(--color-success)}.settings-btn.danger{background:var(--color-danger-light);border-color:var(--color-danger);color:var(--color-danger)}.settings-btn.danger:hover:not(:disabled){background:var(--color-danger);color:#fff}.danger-zone{border-color:#fecaca!important}.danger-zone.is-collapsed{padding-block:var(--spacing-sm);gap:0}.settings-section-toggle{cursor:pointer;width:100%;color:inherit;justify-content:space-between;align-items:center;gap:var(--spacing-sm);background:0 0;border:none;margin:0;padding:0;font-family:inherit;display:flex}.settings-section-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:4px;border-radius:6px}.settings-section-chevron{color:var(--color-text-muted);font-size:14px;line-height:1;transition:transform .18s}.danger-zone.is-expanded .settings-section-chevron{color:var(--color-danger)}.settings-section-body{gap:var(--spacing-sm);flex-direction:column;animation:.18s dangerExpand;display:flex}.danger-subsection{gap:var(--spacing-sm);padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-sm);border-bottom:1px dashed var(--color-border);flex-direction:column;display:flex}.danger-subsection:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.danger-subsection-title{color:var(--color-text);margin:0;font-size:14px;font-weight:700}@keyframes dangerExpand{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.delete-confirm{gap:var(--spacing-sm);flex-direction:column;display:flex}.delete-confirm-text{color:var(--color-text);margin:0;font-size:15px;font-weight:600}.delete-confirm-warning{color:var(--color-danger);margin:0;font-size:13px;font-weight:600}.delete-confirm-label{color:var(--color-text-muted);margin:4px 0 0;font-size:13px;font-weight:600}.settings-profile-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);align-items:center;gap:var(--spacing-md);display:flex}.task-ideas-cta{align-items:center;gap:var(--spacing-md);border-radius:var(--radius-lg);width:100%;margin-bottom:var(--spacing-md);cursor:pointer;text-align:start;background:linear-gradient(135deg,#6c5ce71f 0%,#6c5ce70d 100%);border:1.5px solid #6c5ce740;padding:14px 16px;font-family:inherit;transition:background .18s,border-color .18s,transform .12s;display:flex}.task-ideas-cta:hover{background:linear-gradient(135deg,#6c5ce72e 0%,#6c5ce714 100%);border-color:#6c5ce773}.task-ideas-cta:active{transform:scale(.99)}.task-ideas-cta--footer{margin-top:var(--spacing-lg);margin-bottom:var(--spacing-md)}.task-ideas-cta--hero{margin-top:var(--spacing-xs)}.task-ideas-cta-icon{background:var(--color-surface);width:44px;height:44px;box-shadow:var(--shadow-xs);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:26px;display:inline-flex}.task-ideas-cta-text{flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.task-ideas-cta-title{color:var(--color-text);font-size:15px;font-weight:700}.task-ideas-cta-sub{color:var(--color-text-muted);font-size:12.5px}.task-ideas-cta-chev{color:var(--color-primary);opacity:.7;flex-shrink:0;font-size:22px;line-height:1;transform:scaleX(-1)}.task-ideas-sheet{max-height:90vh}.task-ideas-cat-row{margin:var(--spacing-sm) 0 var(--spacing-md);scrollbar-width:thin;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.task-ideas-cat-chip{border:1.5px solid var(--color-border-soft);background:var(--color-surface);color:var(--color-text-muted);cursor:pointer;border-radius:999px;flex-shrink:0;padding:6px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:background .15s,color .15s,border-color .15s}.task-ideas-cat-chip:hover{color:var(--color-text)}.task-ideas-cat-chip.is-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.task-ideas-bucket{margin-bottom:var(--spacing-md)}.task-ideas-bucket-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.4px;margin:0 0 8px;font-size:13px;font-weight:700}.task-ideas-list{flex-direction:column;gap:8px;display:flex}.task-ideas-card{background:var(--color-surface);border:1.5px solid var(--color-border-soft);cursor:pointer;text-align:start;width:100%;color:var(--color-text);border-radius:14px;flex-direction:column;align-items:flex-start;gap:6px;padding:12px 14px;font-family:inherit;transition:border-color .15s,background .15s,transform .12s;display:flex}.task-ideas-card:hover{border-color:var(--color-primary);background:var(--color-primary-light,#6c5ce70f)}.task-ideas-card:active{transform:scale(.99)}.task-ideas-card-title{font-size:15px;font-weight:600}.task-ideas-card-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.task-ideas-card-type{border-radius:999px;align-items:center;padding:2px 9px;font-size:11.5px;font-weight:700;display:inline-flex}.task-ideas-card-dot{opacity:.5}.connect-qr-card{border-radius:var(--radius-lg);background:linear-gradient(135deg,#6c5ce714 0%,#6c5ce705 100%);border:1.5px solid #6c5ce72e;flex-direction:column;align-items:center;gap:10px;padding:16px 16px 14px;display:flex}.connect-qr-frame{background:#fff;border-radius:18px;padding:12px;line-height:0;position:relative;box-shadow:0 6px 18px #0f0f121a}.connect-qr-frame svg{display:block}.connect-qr-badge{bottom:-8px;color:#fff;white-space:nowrap;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700;line-height:1;position:absolute;inset-inline-end:-6px;box-shadow:0 4px 10px #0f0f1226}.connect-qr-hint{color:var(--color-text-muted);text-align:center;max-width:280px;margin:0;font-size:13px;line-height:1.4}.settings-coparent-list{gap:var(--spacing-sm);flex-direction:column;display:flex}.settings-relationship-btn{align-items:center;gap:var(--spacing-md);width:100%;margin:var(--spacing-md) 0;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-lg);cursor:pointer;text-align:start;font-family:inherit;display:flex}.settings-relationship-btn:hover{border-color:var(--color-primary)}.settings-relationship-icon{flex-shrink:0;font-size:22px}.settings-relationship-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.settings-relationship-title{color:var(--color-text-muted);font-size:13px;font-weight:700}.settings-relationship-value{color:var(--color-text);font-size:16px;font-weight:800}.settings-relationship-chev{color:var(--color-text-muted);flex-shrink:0;font-size:22px}.ob-marital-grid{flex-wrap:wrap;gap:8px;display:flex}.rel-addr-row{flex-direction:column;gap:6px;margin-top:10px;display:flex}.rel-addr-name{color:var(--color-text);font-size:14px;font-weight:700}.rel-addr-title{color:var(--color-primary);font-weight:600}.settings-coparent-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);box-shadow:var(--shadow-xs);border:1.5px solid var(--color-border-soft);align-items:center;gap:var(--spacing-md);display:flex}.settings-coparent-info{text-align:start;flex-direction:column;flex:1;align-items:flex-start;gap:4px;min-width:0;display:flex}.settings-profile-photo-btn{cursor:pointer;background:0 0;border:none;border-radius:50%;flex-shrink:0;padding:0;transition:transform .15s;position:relative}.settings-profile-photo-btn:hover{transform:scale(1.04)}.settings-profile-photo-btn:focus-visible{box-shadow:0 0 0 3px var(--color-primary-light), 0 0 0 5px var(--color-primary);outline:none}.settings-profile-photo{object-fit:cover;background:var(--color-surface-2,var(--color-bg));border:2px solid var(--color-border);width:72px;height:72px;color:var(--color-text-muted);text-transform:uppercase;border-radius:50%;justify-content:center;align-items:center;font-size:24px;font-weight:700;display:flex;overflow:hidden}.settings-profile-photo--fallback{background:var(--color-primary-light);color:var(--color-primary)}.settings-profile-edit-badge{bottom:-2px;background:var(--color-primary);color:#fff;border:2px solid var(--color-surface);width:26px;height:26px;box-shadow:var(--shadow-xs);border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;inset-inline-end:-2px}.settings-profile-info{text-align:start;flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;display:flex}.settings-profile-name{color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;text-align:start;width:100%;margin:0;font-size:16px;font-weight:700;overflow:hidden}.settings-profile-email{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;text-align:start;width:100%;margin:0;font-size:13px;overflow:hidden}.settings-profile-change-link{margin-top:var(--spacing-xs);color:var(--color-primary);cursor:pointer;text-align:start;background:0 0;border:none;padding:0;font-size:13px;font-weight:600}.settings-profile-change-link:hover{text-decoration:underline}.settings-profile-actions{margin-top:var(--spacing-xs);flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;width:100%;display:flex}.settings-profile-actions-sep{color:var(--color-text-muted);-webkit-user-select:none;user-select:none}.settings-profile-title{color:var(--color-primary);font-size:14px;font-weight:600}.profile-gender-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.profile-gender-chip,.profile-title-chip{background:var(--color-surface-2);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;text-align:center;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:600;transition:all .15s}.profile-gender-chip:hover:not(.is-selected),.profile-title-chip:hover:not(.is-selected){border-color:var(--color-primary-mid)}.profile-gender-chip.is-selected,.profile-title-chip.is-selected{background:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary-dark)}.profile-title-presets{flex-wrap:wrap;gap:8px;display:flex}.profile-title-chip{border-radius:999px;padding:8px 14px;font-size:13px}.profile-photo-preview-row{justify-content:center;display:flex}.profile-photo-preview{align-items:center;gap:var(--spacing-xs);flex-direction:column;display:flex}.profile-photo-preview-img{object-fit:cover;border:3px solid var(--color-primary-light);border-radius:50%;width:160px;height:160px}.profile-photo-empty{background:var(--color-surface-2,var(--color-bg));border:2px dashed var(--color-border);width:160px;height:160px;color:var(--color-text-muted);border-radius:50%;justify-content:center;align-items:center;font-size:48px;display:flex}.profile-photo-source{color:var(--color-text-muted);font-size:12px;font-weight:600}.coming-soon{justify-content:center;align-items:center;gap:var(--spacing-sm);flex-direction:column;min-height:50vh;display:flex}.coming-soon p:first-child{font-size:56px}.coming-soon p:nth-child(2){color:var(--color-text);font-size:18px;font-weight:700}.coming-soon-sub{color:var(--color-text-muted);font-size:14px}.modal-overlay:has(>.about-modal){padding:var(--spacing-md);align-items:center;overflow:hidden}.about-modal{background:var(--color-surface);border-radius:var(--radius-xl,22px);width:min(440px,100vw - 32px);max-height:calc(100dvh - 48px);padding:var(--spacing-xl) var(--spacing-lg) calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px));gap:var(--spacing-md);flex-direction:column;animation:.32s cubic-bezier(.18,.82,.34,1.06) aboutPop;display:flex;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000002e}@media (width>=768px){.about-modal{width:min(520px,100vw - 64px);padding:var(--spacing-xl) calc(var(--spacing-xl) + 4px) calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px));gap:var(--spacing-lg)}}@keyframes aboutPop{0%{opacity:0;transform:translateY(8px)scale(.94)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.about-modal{animation:none}}.about-version{text-align:center;color:var(--color-text-muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:11px;font-weight:700}.about-hero{text-align:center;padding-top:var(--spacing-xs);flex-direction:column;align-items:center;gap:6px;display:flex}.about-logo{object-fit:contain;border-radius:var(--radius-lg);background:var(--color-primary-light);width:72px;height:72px;padding:6px}.about-title{color:var(--color-primary);margin:var(--spacing-xs) 0 0;letter-spacing:-.4px;font-size:22px;font-weight:900}.about-tagline{color:var(--color-text);margin:0;font-size:14px;font-weight:600}.about-description{color:var(--color-text-muted);max-width:32ch;margin:6px 0 0;font-size:14px;line-height:1.55}.about-actions{gap:var(--spacing-sm);flex-direction:column;display:flex}.about-btn{width:100%;padding:13px var(--spacing-md);border-radius:var(--radius-md);cursor:pointer;border:1.5px solid #0000;font-family:inherit;font-size:15px;font-weight:700;transition:transform .12s,background .15s,border-color .15s,color .15s}.about-btn:hover:not(:disabled){transform:translateY(-1px)}.about-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.about-btn--primary{background:var(--color-primary);color:#fff}.about-btn--primary:hover:not(:disabled){background:var(--color-primary-dark,#5b8dee)}.about-btn--secondary{background:var(--color-primary-light);color:var(--color-primary);border-color:#0000}.about-btn--secondary:hover:not(:disabled){background:var(--color-primary);color:#fff}.about-btn--ghost{color:var(--color-text-muted);border-color:var(--color-border);background:0 0}.about-btn--ghost:hover:not(:disabled){border-color:var(--color-text-muted);color:var(--color-text)}.about-btn--feedback{background:var(--color-surface-2,var(--color-bg));color:var(--color-text);border-color:var(--color-border)}.about-btn--feedback:hover:not(:disabled){border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.about-footer{margin-top:var(--spacing-sm);border-top:1px solid var(--color-border-soft);padding-top:var(--spacing-md)}.about-footer.is-feedback{border-top:none;margin-top:0;padding-top:0}.about-feedback{gap:var(--spacing-sm);flex-direction:column;display:flex}.about-feedback-label{color:var(--color-text);font-size:14px;font-weight:700}.about-feedback-categories{gap:var(--spacing-xs);grid-template-columns:repeat(3,1fr);display:grid}.about-feedback-cat{border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;gap:6px;padding:9px 8px;font-family:inherit;font-size:13px;font-weight:700;transition:background .15s,border-color .15s,color .15s,transform .12s;display:inline-flex}.about-feedback-cat:hover:not(:disabled):not(.is-selected){border-color:var(--color-primary);color:var(--color-primary)}.about-feedback-cat.is-selected{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.about-feedback-cat:disabled{opacity:.55;cursor:not-allowed}.about-feedback-cat-icon{font-size:14px;line-height:1}.about-feedback-input{resize:vertical;border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:96px;color:var(--color-text);text-align:start;padding:10px 12px;font-family:inherit;font-size:15px;transition:border-color .15s}.about-feedback-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.about-feedback-error{color:var(--color-danger);margin:0;font-size:13px;font-weight:600}.about-feedback-actions{gap:var(--spacing-sm);grid-template-columns:1fr 2fr;display:grid}.feedback-success-overlay{z-index:200;padding:var(--spacing-md);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1118278c;justify-content:center;align-items:center;animation:.18s ease-out fadeIn;display:flex;position:fixed;inset:0}.feedback-success-card{background:var(--color-surface);border-radius:var(--radius-xl,22px);width:min(380px,100vw - 32px);padding:var(--spacing-xl) var(--spacing-lg) calc(var(--spacing-xl) + env(safe-area-inset-bottom,0px));text-align:center;align-items:center;gap:var(--spacing-sm);flex-direction:column;animation:.45s cubic-bezier(.18,.82,.34,1.18) feedbackPop;display:flex;position:relative;box-shadow:0 24px 64px #00000040}.feedback-success-icon{filter:drop-shadow(0 4px 16px rgba(var(--color-primary-rgb), .45));font-size:64px;line-height:1;animation:1.4s ease-in-out infinite feedbackHeart}.feedback-success-title{color:var(--color-primary);margin:var(--spacing-xs) 0 0;letter-spacing:-.4px;font-size:24px;font-weight:900}.feedback-success-msg{color:var(--color-text);max-width:32ch;margin:0;font-size:14px;line-height:1.55}.feedback-success-btn{margin-top:var(--spacing-md);width:100%}@keyframes feedbackPop{0%{opacity:0;transform:translateY(20px)scale(.85)}60%{opacity:1;transform:translateY(-4px)scale(1.04)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes feedbackHeart{0%,to{transform:scale(1)}50%{transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.feedback-success-card,.feedback-success-icon{animation:none}}.settings-toggle-row{align-items:flex-start;gap:var(--spacing-md);display:flex}.settings-toggle-text{flex:1;min-width:0}.settings-toggle-text .settings-section-title{margin-top:0}.settings-switch{background:var(--color-border);cursor:pointer;border:none;border-radius:999px;flex-shrink:0;width:50px;height:28px;margin-top:2px;padding:0;transition:background .2s;position:relative}.settings-switch.is-on{background:var(--color-primary)}.settings-switch-thumb{top:3px;background:var(--color-surface);border-radius:50%;width:22px;height:22px;transition:inset-inline-start .2s;position:absolute;inset-inline-start:3px;box-shadow:0 2px 4px #0f172a2e}.settings-switch.is-on .settings-switch-thumb{inset-inline-start:25px}.stats-tab>section:not(.stats-summary-grid){gap:var(--spacing-sm);flex-direction:column;display:flex}.stats-disabled-banner{gap:var(--spacing-sm);background:var(--color-primary-light);border:1.5px solid var(--color-primary);border-radius:var(--radius-lg);padding:var(--spacing-md);color:var(--color-text);flex-direction:column;font-size:14px;line-height:1.5;display:flex}.stats-disabled-banner p{margin:0}.stats-disabled-banner .settings-btn{align-self:flex-start}.stats-home-link{cursor:pointer;width:100%;color:var(--color-primary);text-align:center;background:0 0;border:none;margin-top:10px;padding:8px;font-family:inherit;font-size:13px;font-weight:700;display:block}.stats-home-link:hover{text-decoration:underline}.stats-child-picker{justify-content:center;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) 0;flex-wrap:wrap;display:flex}.stats-pick{cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;max-width:76px;padding:4px;font-family:inherit;transition:transform .12s;display:flex}.stats-pick:active{transform:scale(.96)}.stats-pick.active .stats-pick-label{color:var(--color-primary);font-weight:800}.stats-pick-label{color:var(--color-text-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:72px;font-size:12px;font-weight:600;overflow:hidden}.stats-pick>:first-child{justify-content:center;align-items:center;height:56px;display:flex}.stats-pick-all{align-items:center;display:inline-flex}.stats-pick-all>*{box-shadow:0 0 0 2px var(--color-surface);border-radius:50%;margin-inline-start:-12px}.stats-pick-all>:first-child{margin-inline-start:0}.stats-pick.active .stats-pick-all{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:999px}.filter-scroll--center{justify-content:center}.stats-period-value{align-items:baseline;gap:4px;padding:8px 2px 2px;display:flex}.stats-period-num{color:var(--color-text);font-size:26px;font-weight:800}.stats-leaders-grid{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr);display:grid}.stats-leader-card{background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-xs);flex-direction:column;gap:10px;display:flex}.stats-leader-header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.stats-leader-period{color:var(--color-text);font-size:15px;font-weight:800}.stats-leader-hint{color:var(--color-text-muted);font-size:11px;font-weight:500}.stats-leader-empty{color:var(--color-text-muted);margin:0;padding:4px 0;font-size:13px}.stats-leader-list{flex-direction:column;gap:6px;display:flex}.stats-leader-row{flex-direction:column;align-items:center;gap:4px;padding-top:14px;display:flex}.stats-leader-avatar-wrap{justify-content:center;align-items:center;display:inline-flex;position:relative}.stats-leader-crown{filter:drop-shadow(0 1px 2px #00000059);pointer-events:none;font-size:22px;line-height:1;position:absolute;top:-16px;transform:rotate(-8deg)}.stats-leader-name{color:var(--color-text);text-align:center;margin-top:6px;font-size:14px;font-weight:700}.stats-leader-count{color:var(--color-text);text-align:center;font-size:13px;font-weight:800}.stats-leader-count .muted{color:var(--color-text-muted);font-size:12px;font-weight:500}.stats-leader-skeleton{border-radius:var(--radius-lg);background:linear-gradient(90deg, var(--color-border) 25%, var(--color-border-soft) 50%, var(--color-border) 75%);background-size:200% 100%;height:110px;animation:1.2s infinite shimmer}.stats-skeletons{gap:var(--spacing-sm);grid-template-columns:repeat(2,1fr);display:grid}@media (width<=480px){.stats-skeletons{grid-template-columns:1fr}}.stats-children-list{flex-direction:column;gap:10px;display:flex}.stats-child-row{align-items:center;gap:var(--spacing-sm);background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);padding:10px var(--spacing-md);display:flex}.stats-child-row--skeleton{background:linear-gradient(90deg, var(--color-border) 25%, var(--color-border-soft) 50%, var(--color-border) 75%);background-size:200% 100%;border:none;height:48px;animation:1.2s infinite shimmer}.stats-child-info{flex:1;min-width:0}.stats-child-name-row{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:6px;display:flex}.stats-child-name{font-size:14px;font-weight:700}.stats-child-count{color:var(--color-text);font-size:14px;font-weight:800}.stats-child-bar-bg{background:var(--color-border);border-radius:var(--radius-full);height:6px;overflow:hidden}.stats-child-bar-fill{border-radius:var(--radius-full);height:100%;transition:width .6s}.stats-week-grid{background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-sm);height:200px;box-shadow:var(--shadow-xs);grid-template-columns:repeat(7,1fr);align-items:stretch;gap:6px;display:grid}.stats-week-col{border-radius:var(--radius-md);grid-template-rows:1fr auto auto;place-items:end center;gap:6px;height:100%;padding:4px 0 6px;transition:background .2s;display:grid}.stats-week-col.is-today{background:var(--color-primary-light)}.stats-week-bar-track{background:var(--color-bg);border-radius:var(--radius-sm);align-items:flex-end;width:70%;height:100%;display:flex;overflow:hidden}.stats-week-bar-fill{background:linear-gradient(180deg, var(--color-primary) 0%, var(--color-primary-mid) 100%);border-radius:var(--radius-sm);width:100%;min-height:2px;transition:height .4s}.stats-week-col.is-empty .stats-week-bar-fill{display:none}.stats-week-col.is-today .stats-week-bar-fill{background:linear-gradient(180deg, var(--color-accent) 0%, var(--color-primary) 100%)}.stats-week-day{color:var(--color-text-muted);white-space:nowrap;font-size:11px;font-weight:700}.stats-week-col.is-today .stats-week-day{color:var(--color-primary);font-weight:800}.stats-week-num{color:var(--color-text);font-size:12px;font-weight:800}.stats-week-col.is-empty .stats-week-num{color:var(--color-text-muted);font-weight:600}.stats-week-skeleton{border-radius:var(--radius-lg);background:linear-gradient(90deg, var(--color-border) 25%, var(--color-border-soft) 50%, var(--color-border) 75%);background-size:200% 100%;height:200px;animation:1.2s infinite shimmer}.stats-week-hint{margin:var(--spacing-sm) 0 0;color:var(--color-text-muted);font-size:12px;line-height:1.5}.stats-week-empty{background:var(--color-surface);border:1.5px dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-xl) var(--spacing-lg);text-align:center;flex-direction:column;gap:6px;display:flex}.stats-week-empty-title{color:var(--color-text);margin:0;font-size:15px;font-weight:700}.stats-week-empty-hint{color:var(--color-text-muted);margin:0;font-size:13px;line-height:1.5}.stats-summary-grid{gap:var(--spacing-sm);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=420px){.stats-summary-grid{gap:6px}}.stats-summary-card{background:var(--color-surface);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);align-items:center;gap:8px;min-width:0;padding:10px;display:flex}.stats-summary-icon{flex-shrink:0;font-size:22px}.stats-summary-body{flex-direction:column;gap:1px;min-width:0;display:flex}.stats-summary-label{color:var(--color-text-muted);font-size:11px;font-weight:600}.stats-summary-value{color:var(--color-text);font-size:20px;font-weight:900;line-height:1.1}.stats-summary-hint{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500;overflow:hidden}.stats-child-row.is-leader{border-color:var(--color-stats-leader-border);background:var(--color-stats-leader-bg)}.stats-child-row.is-leader .stats-child-name,.stats-child-row.is-leader .stats-child-count{color:var(--color-stats-leader-text)}.stats-child-rank{background:var(--color-bg);width:22px;height:22px;color:var(--color-text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.stats-child-row.is-leader .stats-child-rank{background:var(--color-stats-leader-pill-bg);color:var(--color-stats-leader-pill-text)}.stats-tab{gap:var(--spacing-lg)}.crown-modal{text-align:center;max-width:380px}.crown-modal-hero{margin:4px 0 var(--spacing-sm);justify-content:center;display:flex;position:relative}.crown-modal-crown{font-size:44px;animation:2.2s ease-in-out infinite crownFloat;position:absolute;top:-22px}@keyframes crownFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.crown-modal-title{margin:var(--spacing-sm) 0 6px;color:var(--color-text);font-size:20px;font-weight:900}.crown-modal-message{margin:0 0 var(--spacing-md);color:var(--color-text-muted);font-size:14px;line-height:1.55}.crown-modal-stats{margin:0 0 var(--spacing-md);grid-template-columns:repeat(2,1fr);gap:8px;padding:0;list-style:none;display:grid}.crown-modal-stat{background:var(--color-bg);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.crown-modal-stat.is-leading{color:#78350f;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-color:#f59e0b;font-weight:800}.crown-modal-stat-label{font-size:13px}.crown-modal-stat-count{font-size:15px;font-weight:800}.crown-modal-cta{width:100%}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.pets-section{margin-top:22px}.pets-section-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.pets-add-btn{background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:20px;line-height:1;transition:transform .15s,background .15s;display:inline-flex}.pets-add-btn:hover{background:var(--color-primary-dark);transform:scale(1.05)}.pets-empty{background:var(--color-surface);border:1px dashed var(--color-border);border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--color-text-muted);align-items:center;gap:10px;margin-top:8px;padding:14px;font-family:inherit;font-size:14px;font-weight:600;display:flex}.pets-empty-icon{font-size:22px}.pets-row{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:10px;display:flex}.pet-card{cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;width:78px;padding:4px;font-family:inherit;display:flex}.pet-card-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;max-width:78px;font-size:13px;font-weight:700;overflow:hidden}.pet-card-tasks{color:var(--color-text-muted);font-size:11px}.pet-avatar{background:var(--color-surface-2);border:2px solid var(--color-surface);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex;overflow:hidden}.pet-avatar img{object-fit:cover;width:100%;height:100%}.pet-avatar--lg{width:60px;height:60px;font-size:30px}.pet-card .pet-avatar--lg{width:66px;height:66px;font-size:33px}.pet-avatar--sm{width:36px;height:36px;font-size:18px}.pet-avatar--emoji{background:var(--color-primary-light,#eef2ff)}.pet-detail-hero{align-items:center;gap:12px;margin-bottom:16px;display:flex}.pet-gender-row{gap:8px;display:flex}.pet-gender-btn{background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;flex:1;padding:10px 8px;font-family:inherit;font-size:14px;font-weight:700;transition:border-color .15s,background .15s}.pet-gender-btn:hover{border-color:var(--color-primary)}.pet-detail-name{color:var(--color-text);margin:0;font-size:18px;font-weight:800}.pet-detail-type{color:var(--color-text-muted);margin:2px 0 0;font-size:13px}.pet-detail-tasks{margin-bottom:16px}.pet-detail-tasks-empty{color:var(--color-text-muted);font-size:13px}.pet-vet-info{margin-bottom:16px}.pet-vet-list{flex-direction:column;gap:8px;margin:6px 0 0;padding:0;list-style:none;display:flex}.pet-vet-row{border-radius:var(--radius-md);background:var(--color-surface-2,#00000008);justify-content:space-between;align-items:baseline;gap:8px;padding:8px 10px;display:flex}.pet-vet-row--emergency{background:var(--color-danger-light,#fee2e2)}.pet-vet-row--notes{flex-direction:column;align-items:stretch;gap:4px}.pet-vet-key{color:var(--color-text-muted);flex-shrink:0;font-size:12px;font-weight:700}.pet-vet-val{color:var(--color-text);text-align:end;overflow-wrap:anywhere;font-size:14px}.pet-vet-link{color:var(--color-primary);font-weight:600;text-decoration:none}.pet-vet-link:hover{text-decoration:underline}.pet-vet-notes{text-align:start;white-space:pre-wrap;line-height:1.5}.pet-detail-task-list{flex-direction:column;gap:6px;margin:6px 0 0;padding:0;list-style:none;display:flex}.pet-detail-task-row{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.pet-detail-task-lead{align-items:center;gap:8px;min-width:0;display:flex}.pet-detail-task-kids{flex-shrink:0;display:inline-flex}.pet-detail-task-kids>*+*{margin-inline-start:-8px}.pet-detail-task-title{color:var(--color-text);overflow-wrap:anywhere;min-width:0;font-size:14px;font-weight:600}.pet-detail-task-pts{color:var(--color-primary);white-space:nowrap;flex-shrink:0;font-size:12.5px;font-weight:700}.pet-log{margin-bottom:16px}.pet-log-toggle{color:var(--color-text-muted);cursor:pointer;letter-spacing:.02em;align-items:center;gap:4px;padding:2px 4px;font-size:13px;font-weight:700;display:inline-flex}.pet-log-toggle:hover{color:var(--color-text)}.pet-log-chevron{font-size:13px;line-height:1}.pet-log-body{flex-direction:column;gap:6px;margin-top:8px;animation:.18s fadeIn;display:flex}.pet-log-empty{color:var(--color-text-muted);margin:0;font-size:13px;font-style:italic}.pet-log-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.pet-log-row{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);align-items:center;gap:8px;padding:7px 10px;display:flex}.pet-log-title{min-width:0;color:var(--color-text);overflow-wrap:anywhere;flex:1;font-size:13px;font-weight:600}.pet-log-date{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.pet-log-pts{color:var(--color-primary);white-space:nowrap;flex-shrink:0;font-size:12.5px;font-weight:700}.pet-log-more{color:var(--color-text-muted);cursor:pointer;letter-spacing:.02em;align-self:center;align-items:center;gap:4px;margin-top:2px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.pet-log-more:hover{color:var(--color-text)}.pet-log-more-chevron{font-size:13px;line-height:1}.pet-form-photo-preview{object-fit:cover;border-radius:50%;width:100%;height:100%}.pet-age-row{align-items:flex-end;gap:10px;display:flex}.pet-age-field{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.pet-age-field--years{flex:0 0 92px}.pet-age-sublabel{color:var(--color-text-muted);font-size:11.5px;font-weight:600}.pet-age-field input[readonly]{opacity:.7;cursor:default}.pet-delete-link{color:var(--color-danger);cursor:pointer;background:0 0;border:none;padding:6px 0;font-family:inherit;font-size:14px;font-weight:700}.confirm-inline{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px}.confirm-inline-text{color:var(--color-text);margin:0 0 10px;font-size:14px}.confirm-inline-actions{gap:10px;display:flex}.confirm-inline-actions>button{border-radius:var(--radius-md);cursor:pointer;flex:1;padding:10px;font-family:inherit;font-size:14px;font-weight:700}.task-pet-chips{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.task-pet-chip{background:var(--color-surface);border:1.5px solid var(--color-border);cursor:pointer;color:var(--color-text);border-radius:999px;align-items:center;gap:6px;padding:5px 12px 5px 6px;font-family:inherit;font-size:13px;font-weight:600;transition:all .15s;display:inline-flex}.task-pet-chip.selected{border-color:var(--color-primary);background:var(--color-primary-light,#eef2ff);color:var(--color-primary-dark,var(--color-primary))}.task-pet-chip-avatar{background:var(--color-surface-2);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:15px;display:inline-flex;overflow:hidden}.task-pet-chip-avatar img{object-fit:cover;width:100%;height:100%}.task-goal-row-name{text-align:start;overflow-wrap:anywhere;flex:1;min-width:0;font-size:14px}.task-goal-row-icon{margin-inline-end:6px}.task-row-pet-badge{top:-4px;background:var(--color-surface);border:2px solid var(--color-surface);width:26px;height:26px;box-shadow:var(--shadow-sm,0 1px 4px #0003);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;line-height:1;display:inline-flex;position:absolute;inset-inline-end:4px;overflow:hidden}.task-row-pet-badge img{object-fit:cover;width:100%;height:100%}@media (width<=380px){.task-row-avatar{min-width:52px}.task-row-avatar .child-avatar{width:48px!important;height:48px!important;font-size:26px!important}.task-row-avatar-fallback{width:48px;height:48px;font-size:24px}.task-row-avatar-stack .child-avatar{width:36px!important;height:36px!important;font-size:20px!important}.task-row-pet-badge{width:22px;height:22px;font-size:12px}}.child-suggestions-entry{width:fit-content;max-width:100%;padding:14px var(--spacing-lg);white-space:nowrap;background:var(--color-primary-light);color:var(--color-primary-dark);border:1.5px solid var(--color-primary);border-radius:var(--radius-lg);cursor:pointer;justify-content:center;align-items:center;gap:10px;margin-inline:auto;font-family:inherit;font-size:15px;font-weight:800;transition:opacity .15s;display:flex}.child-suggestions-entry:hover{opacity:.9}.child-suggestions-entry-icon{font-size:20px}.child-suggestions-entry-label{text-align:start}.child-suggestions-entry-badge{border-radius:var(--radius-full);background:var(--color-primary);color:#fff;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:13px;font-weight:800;display:inline-flex}.cs-encourage{margin:0 0 var(--spacing-md);background:var(--color-primary-light);color:var(--color-primary-dark);border-radius:var(--radius-md);padding:10px 12px;font-size:13px;line-height:1.5}.cs-empty{color:var(--color-text-muted);text-align:center;padding:var(--spacing-lg) 0;font-size:14px}.cs-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.cs-row{border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;gap:8px;padding:12px;display:flex}.cs-row--approved,.cs-row--rejected{opacity:.7}.cs-row-head{align-items:center;gap:8px;display:flex}.cs-row-type{flex-shrink:0;font-size:16px}.cs-row-content{min-width:0;color:var(--color-text);overflow-wrap:anywhere;flex:1;font-size:14px;font-weight:600}.cs-row-status{border-radius:var(--radius-full);white-space:nowrap;padding:2px 8px;font-size:11px;font-weight:700}.cs-row-status--pending{background:var(--color-primary-light);color:var(--color-primary-dark)}.cs-row-status--approved{background:var(--color-success-light);color:var(--color-success)}.cs-row-status--rejected{background:var(--color-surface-2,#f1f5f9);color:var(--color-text-muted)}.cs-row-del{cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:13px;transition:opacity .15s}.cs-row-del:hover{opacity:1}.cs-row-reason{color:var(--color-text-muted);margin:0;font-size:13px}.cs-row-actions{gap:8px;display:flex}.cs-action-btn{border-radius:var(--radius-md);cursor:pointer;border:none;flex:1;padding:9px;font-family:inherit;font-size:14px;font-weight:700}.cs-action-btn.approve{background:var(--color-success);color:#fff}.cs-action-btn.reject{background:var(--color-surface-2,#f1f5f9);color:var(--color-danger,#dc2626);border:1px solid var(--color-border,#e2e8f0)}.cs-reject{flex-direction:column;gap:8px;display:flex}.cs-reject-label{color:var(--color-text);font-size:13px;font-weight:700}.cs-reject-actions{justify-content:flex-end;gap:8px;display:flex}.cs-reject-actions button{border-radius:var(--radius-full);cursor:pointer;padding:9px 18px;font-family:inherit;font-size:14px;font-weight:700;transition:all .15s}.cs-reject-actions .ob-btn-ghost{border:1px solid var(--color-border);color:var(--color-text);background:0 0}.cs-reject-actions .ob-btn-ghost:hover{background:var(--color-surface-2,#0000000a)}.cs-reject-actions .ob-btn-danger{background:var(--color-danger);color:#fff;border:none}.cs-reject-actions .ob-btn-danger:hover:not(:disabled){filter:brightness(.94)}.cs-reject-actions .ob-btn-danger:disabled{opacity:.5;cursor:default}.tt-scan-btn{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;cursor:pointer;border:none;width:100%;padding:14px;font-family:inherit;font-size:15px;font-weight:800;transition:opacity .15s}.tt-scan-btn:hover:not(:disabled){opacity:.9}.tt-scan-btn:disabled{opacity:.6;cursor:default}.tt-scan-hint{color:var(--color-text-muted);margin:8px 2px 0;font-size:12.5px;line-height:1.5}.tt-error{border-radius:var(--radius-md);background:var(--color-danger-light,#fee2e2);color:var(--color-danger,#dc2626);margin:10px 0 0;padding:8px 10px;font-size:13px}.tt-empty{color:var(--color-text-muted);text-align:center;padding:var(--spacing-lg) 0;font-size:14px}.tt-list{margin:var(--spacing-md) 0 0;flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.tt-row{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;gap:6px;padding:10px;display:flex}.tt-row-line{align-items:center;gap:8px;display:flex}.tt-day{flex:1;min-width:0}.tt-time{flex:1 1 0;min-width:0;padding-left:6px;padding-right:6px}.tt-time-sep{color:var(--color-text-muted);flex-shrink:0;font-weight:700}.tt-row-del{cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:4px;font-size:14px;transition:opacity .15s}.tt-row-del:hover{opacity:1}.tt-subject{width:100%}.tt-teacher{width:100%;font-size:13px}.tt-week{gap:var(--spacing-lg);margin-top:var(--spacing-md);flex-direction:column;display:flex}.tt-day-group{flex-direction:column;display:flex}.tt-day-heading{color:var(--color-text);background:var(--color-surface-2,#0000000a);border-radius:var(--radius-sm,8px);z-index:1;margin:0 0 8px;padding:4px 10px;font-size:13px;font-weight:800;position:sticky;top:0}.tt-day-group .tt-list{margin-top:0}.household-tab{padding:var(--spacing-lg)}.household-title{color:var(--color-text);margin:0;font-size:22px;font-weight:800}.household-subtitle{color:var(--color-text-muted);margin:6px 0 var(--spacing-lg);font-size:14px;line-height:1.5}.household-grid{flex-direction:column;gap:10px;display:flex}.household-card{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--color-surface-2);border:1.5px solid var(--color-border-soft);border-radius:var(--radius-md);opacity:.85;display:flex}.household-card-icon{background:var(--color-bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;display:flex}.household-card-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.household-card-title{color:var(--color-text);font-size:15px;font-weight:700}.household-card-hint{color:var(--color-text-muted);font-size:12.5px;line-height:1.4}.household-card-soon{color:var(--color-primary);background:var(--color-primary-light);border-radius:var(--radius-full);flex-shrink:0;padding:4px 8px;font-size:11px;font-weight:700}.household-card:disabled{cursor:default}.household-card:not(:disabled){cursor:pointer}.household-card:not(:disabled):hover{border-color:var(--color-primary)}.household-back{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;padding:0 0 8px;font-family:inherit;font-size:14px;font-weight:700}.household-suggest-btn{width:100%;margin-top:var(--spacing-lg);border:1.5px dashed var(--color-border-soft);color:var(--color-text-2);border-radius:var(--radius-md);cursor:pointer;background:0 0;padding:14px 16px;font-family:inherit;font-size:14px;font-weight:700;display:block}.household-suggest-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.shop{margin-top:var(--spacing-lg);flex-direction:column;gap:12px;display:flex}.shop-add{gap:8px;display:flex}.shop-add-input{flex:1}.shop-add-btn{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;cursor:pointer;border:none;flex-shrink:0;width:44px;font-size:22px;font-weight:700}.shop-empty{color:var(--color-text-muted);text-align:center;padding:var(--spacing-lg) 0;font-size:14px}.shop-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.shop-row{background:var(--color-surface);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);flex-direction:column;gap:8px;padding:8px 10px;display:flex}.shop-row.is-editing{border-color:var(--color-primary)}.shop-row-main{align-items:center;gap:8px;display:flex}.shop-row-body{cursor:pointer;text-align:start;background:0 0;border:none;flex:1;justify-content:flex-start;align-items:center;gap:8px;min-width:0;padding:0;font-family:inherit;display:flex}.shop-qty-chip{background:var(--color-surface-2,#0000000d);color:var(--color-text-muted);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:12px;font-weight:800}.shop-row.is-checked{opacity:.6}.shop-row.is-dragging{opacity:.4}.shop-grip{cursor:grab;color:var(--color-text-muted);touch-action:none;flex-shrink:0;font-size:16px;line-height:1}.shop-check{border:2px solid var(--color-border);background:var(--color-bg);cursor:pointer;color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;font-weight:900;display:flex}.shop-check.on{background:var(--color-success,#2e7d32);border-color:var(--color-success,#2e7d32)}.shop-text{min-width:0;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;font-size:15px;overflow:hidden}.shop-row.is-checked .shop-text{color:var(--color-text-muted);text-decoration:line-through}.shop-qty{flex-shrink:0;align-items:center;gap:2px;display:inline-flex}.shop-qty-btn{border:1px solid var(--color-border);background:var(--color-bg);width:24px;height:24px;color:var(--color-text);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;font-size:15px;font-weight:800;line-height:1;display:flex}.shop-qty-val{min-width:22px;color:var(--color-text);text-align:center;padding:0 2px;font-size:14px;font-weight:800}.shop-unit{border:1px solid var(--color-border);border-radius:var(--radius-full);margin-inline-start:4px;display:inline-flex;overflow:hidden}.shop-unit-opt{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;padding:3px 8px;font-family:inherit;font-size:11px;font-weight:700}.shop-unit-opt.on{background:var(--color-primary);color:#fff}.shop-qty-static{color:var(--color-text-muted);flex-shrink:0;font-size:12px;font-weight:700}.shop-by-avatar{object-fit:cover;border-radius:50%;flex-shrink:0;width:22px;height:22px}.shop-by-initial{color:#fff;background:var(--color-primary);justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.shop-star{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;flex-shrink:0;margin-inline-start:auto;padding:2px;font-size:18px;line-height:1}.shop-star.on{color:#f5a623}.shop-del{cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:2px;font-size:15px}.shop-del:hover{opacity:1}.shop-details{background:var(--color-surface-2,#00000008);border-radius:var(--radius-md);flex-direction:column;gap:10px;padding:12px;display:flex}.shop-add+.shop-details{margin-top:8px}.shop-details-name{width:100%}.shop-details-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.shop-details-label{color:var(--color-text-muted);font-size:13px;font-weight:700}.shop-details-actions{align-items:center;gap:8px;display:flex}.shop-details-save{flex:1;padding:10px}.shop-details-cancel{border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;padding:10px 14px;font-family:inherit;font-weight:700}.shop-details-delete{border-radius:var(--radius-md);background:var(--color-danger-light,#dc26261a);cursor:pointer;border:none;flex-shrink:0;padding:10px 12px;font-size:15px}.shop-done-btn{background:var(--color-primary);color:#fff;border-radius:var(--radius-md);cursor:pointer;width:100%;box-shadow:0 6px 16px -6px color-mix(in srgb, var(--color-primary) 60%, transparent);border:none;margin-top:14px;padding:14px;font-family:inherit;font-size:15px;font-weight:800;transition:all .15s}.shop-done-btn:hover{filter:brightness(1.05);transform:translateY(-1px)}.shop-done-btn:active{transform:translateY(0)}.settings-segmented{border:1px solid var(--color-border);border-radius:var(--radius-full);flex-shrink:0;display:inline-flex;overflow:hidden}.settings-seg-opt{cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;padding:7px 14px;font-family:inherit;font-size:13px;font-weight:700}.settings-seg-opt.on{background:var(--color-primary);color:#fff}.shop-done-actions{width:100%;margin-top:var(--spacing-md);flex-direction:column;gap:8px;display:flex}.shop-done-secondary{border-radius:var(--radius-md);background:var(--color-surface-2);width:100%;color:var(--color-text);border:1.5px solid var(--color-border);cursor:pointer;padding:13px;font-family:inherit;font-size:14px;font-weight:700}.shop-done-secondary:hover{border-color:var(--color-primary)}.shop-checked-block{margin-top:6px}.shop-checked-head{justify-content:space-between;align-items:center;padding:6px 2px;display:flex}.shop-checked-title{color:var(--color-text-muted);font-size:12.5px;font-weight:700}.shop-clear{color:var(--color-danger,#dc2626);cursor:pointer;background:0 0;border:none;font-family:inherit;font-size:12.5px;font-weight:700}.shop-fav-block{flex-direction:column;gap:6px;display:flex}.shop-fav-toggle{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;font-family:inherit;font-size:13px;font-weight:700}.shop-fav-chips{flex-wrap:wrap;gap:6px;display:flex}.shop-fav-chip{border:1px dashed var(--color-border);border-radius:var(--radius-full);background:var(--color-surface-2);color:var(--color-text);cursor:pointer;padding:6px 12px;font-family:inherit;font-size:13px}.shop-fav-chip:hover{border-color:var(--color-primary);background:var(--color-primary-light)}.tt-review-notice{border-radius:var(--radius-md);background:var(--color-warning-light,#fef3c7);color:var(--color-warning-dark,#92400e);margin:12px 0 0;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.5}.tt-actions{gap:10px;margin-top:12px;display:flex}.tt-actions .tt-add-btn,.tt-actions .tt-hours-toggle{flex:1;margin-top:0}.tt-hours-toggle{border:1px dashed var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text-muted);cursor:pointer;text-align:center;background:0 0;padding:11px;font-family:inherit;font-size:14px;font-weight:700}.tt-hours-toggle:hover{background:var(--color-surface-2,#00000008);color:var(--color-text)}.tt-bell{margin-top:var(--spacing-lg);padding:var(--spacing-md);border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface-2,#00000005)}.tt-bell-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.tt-bell-title{margin:0}.tt-bell-copy{flex:0 auto;max-width:60%;font-size:13px}.tt-bell-row{border:1px solid var(--color-border-soft);border-radius:var(--radius-md);background:var(--color-surface);align-items:center;gap:8px;padding:8px 10px;display:flex}.tt-bell-label{min-width:0;color:var(--color-text);flex:1;font-size:13px;font-weight:700}.tt-period-time{min-width:0;color:var(--color-text-muted);flex:1 1 0;padding:4px 0;font-size:13px;font-weight:600}.tt-scan-progress{border-radius:var(--radius-md);background:var(--color-surface-2,#0000000a);align-items:center;gap:10px;margin-top:12px;padding:12px 14px;display:flex}.tt-scan-spinner{border:2.5px solid var(--color-border);border-top-color:var(--color-accent,#6366f1);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.7s linear infinite tt-spin}.tt-scan-phase{color:var(--color-text);font-size:14px;font-weight:600;animation:.35s tt-phase-in}@keyframes tt-spin{to{transform:rotate(360deg)}}@keyframes tt-phase-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.tt-add-btn{border:1px dashed var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-text);cursor:pointer;background:0 0;margin-top:12px;padding:11px;font-family:inherit;font-size:14px;font-weight:700}.tt-add-btn:hover{background:var(--color-surface-2,#00000008)}.tt-clear-btn{border-radius:var(--radius-md);width:100%;color:var(--color-danger,#dc2626);cursor:pointer;background:0 0;border:none;margin-top:10px;padding:10px;font-family:inherit;font-size:13px;font-weight:700}.tt-clear-btn:hover{text-decoration:underline}.settle-count-badge{background:var(--color-primary);color:#fff;vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;margin-inline-start:6px;padding:0 6px;font-size:12px;font-weight:800;display:inline-flex}.settle-body{gap:var(--spacing-md);margin-top:var(--spacing-md);flex-direction:column;display:flex}.currency-picker{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.currency-picker-select{width:auto;min-width:120px}.currency-picker-other{text-transform:uppercase;width:auto;max-width:140px}.settings-currency-field{margin-top:10px}.settings-currency-field .currency-picker-select{min-width:140px}.settle-balance-banner{background:var(--color-surface);border-radius:var(--radius-lg);flex-direction:column;gap:12px;padding:16px;display:flex;box-shadow:0 2px 8px #0000000f}.settle-pending-banner{background:var(--color-surface);border:1.5px solid var(--color-primary);border-radius:var(--radius-lg);box-shadow:0 2px 8px rgba(var(--color-primary-rgb), .18);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.settle-pending-text{color:var(--color-text);text-align:center;margin:0;font-size:15px;font-weight:700}.settle-pending-note{color:var(--color-text-muted);text-align:center;margin:0;font-size:13px;font-style:italic}.settle-pending-actions{gap:8px;display:flex}.settle-pending-actions>button{flex:1}.settle-rejected-banner{background:var(--color-surface);border:1.5px solid var(--color-danger,#dc2626);border-radius:var(--radius-lg);flex-direction:column;gap:10px;padding:14px 16px;display:flex}.settle-rejected-text{color:var(--color-text);text-align:center;margin:0;font-size:15px;font-weight:700}.settle-rejected-reason{color:var(--color-text-muted);text-align:center;margin:0;font-size:13px;font-style:italic}.settle-rejected-tag{color:var(--color-danger,#dc2626);font-weight:700}.settle-history-text--rejected{color:var(--color-text-muted);text-decoration:line-through}.settle-balance-parents{justify-content:center;align-items:flex-start;gap:28px;display:flex}.settle-balance-parent{flex-direction:column;align-items:center;gap:4px;display:flex}.settle-balance-parent-name{color:var(--color-text);font-size:13px;font-weight:700}.settle-balance-parent.owes .settle-balance-parent-name{color:var(--color-primary)}.settle-balance-bubble{background:var(--color-primary);color:#fff;white-space:nowrap;box-shadow:0 2px 6px rgba(var(--color-primary-rgb), .35);border-radius:999px;margin-top:2px;padding:4px 10px;font-size:14px;font-weight:900}.settle-balance-text{text-align:center;color:var(--color-text);margin:0;font-size:15px}.settle-balance-text--zero{color:var(--color-text-muted);font-weight:700}.settle-settle-btn{border-radius:var(--radius-md);background:var(--color-primary);color:#fff;cursor:pointer;border:none;padding:10px;font-family:inherit;font-size:14px;font-weight:800}.settle-settle-btn:disabled{opacity:.5;cursor:default}.settle-btn-secondary{border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;padding:10px;font-family:inherit;font-size:14px;font-weight:800}.settle-btn-secondary:hover{background:var(--color-surface-2,#0000000a)}.settle-btn-secondary:disabled{opacity:.5;cursor:default}.settle-add-btn{border:1px dashed var(--color-primary);border-radius:var(--radius-md);width:100%;color:var(--color-primary);cursor:pointer;background:0 0;padding:12px;font-family:inherit;font-size:15px;font-weight:800}.settle-add-btn:hover{background:var(--color-primary-light,#00000008)}.settle-section{flex-direction:column;gap:8px;display:flex}.settle-empty{color:var(--color-text-muted);text-align:center;padding:16px;font-size:14px}.settle-expense-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.settle-expense-row{background:var(--color-surface);border-radius:var(--radius-md);align-items:stretch;gap:8px;display:flex;overflow:hidden;box-shadow:0 1px 4px #0000000d}.settle-expense-main{cursor:pointer;text-align:start;background:0 0;border:none;flex:1;align-items:center;gap:12px;padding:12px;font-family:inherit;display:flex}.settle-expense-avatars{flex-shrink:0;align-items:center;gap:6px;display:flex}.settle-expense-children{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.settle-child-more{background:var(--color-surface-2,#00000014);color:var(--color-text-muted);border:2px solid var(--color-surface);border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.settle-expense-info{flex-direction:column;gap:2px;min-width:0;display:flex}.settle-expense-title{color:var(--color-text);font-size:14px;font-weight:800}.settle-expense-amount{color:var(--color-text);font-size:16px;font-weight:900}.settle-expense-times{color:var(--color-primary);font-size:13px;font-weight:700}.settle-msg-badge{cursor:pointer;background:var(--color-primary-light,#0000000d);color:var(--color-primary);border:none;border-radius:999px;align-items:center;gap:3px;padding:3px 8px;font-family:inherit;font-size:12px;font-weight:800;display:inline-flex}.expense-detail-head{align-items:center;gap:12px;display:flex}.expense-detail-amount{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.expense-detail-kids{flex-shrink:0;align-items:center;gap:2px;display:flex}.expense-detail-facts{flex-direction:column;gap:6px;margin:12px 0;padding:0;list-style:none;display:flex}.expense-detail-facts li{justify-content:space-between;gap:12px;font-size:14px;display:flex}.expense-detail-facts li>span{color:var(--color-text-muted);flex-shrink:0}.expense-detail-facts li>strong{color:var(--color-text);text-align:end}.expense-comment-list{flex-direction:column;gap:8px;max-height:40vh;margin-bottom:8px;padding:8px 0;display:flex;overflow-y:auto}.expense-comment{align-items:flex-end;gap:6px;display:flex}.expense-comment.mine{flex-direction:row-reverse}.expense-comment-bubble{border-radius:var(--radius-md);background:var(--color-surface-2,#0000000d);flex-direction:column;gap:2px;max-width:75%;padding:8px 12px;display:flex}.expense-comment.mine .expense-comment-bubble{background:var(--color-primary-light,#00000014)}.expense-comment-author{color:var(--color-primary);font-size:11px;font-weight:700}.expense-comment-text{color:var(--color-text);white-space:pre-wrap;word-break:break-word;font-size:14px}.expense-comment-time{color:var(--color-text-muted);align-self:flex-end;font-size:10px}.expense-comment-system{text-align:center;color:var(--color-text-muted);background:var(--color-surface-2,#0000000a);border-radius:999px;align-self:center;max-width:90%;margin:2px 0;padding:4px 12px;font-size:12px}.expense-comment-composer{align-items:center;gap:8px;display:flex}.expense-comment-composer .ob-input{flex:1}.expense-comment-composer .settle-settle-btn{flex-shrink:0;width:auto;padding:10px 16px}.settle-expense-meta{color:var(--color-text-muted);font-size:12px}.settle-expense-meta--sub{opacity:.85}.settle-recur{color:var(--color-primary)}.settle-expense-note{color:var(--color-text);font-size:12px;font-style:italic}.settle-expense-actions{flex-direction:column;justify-content:center;gap:4px;padding:6px 8px;display:flex}.settle-icon-btn{background:var(--color-surface-2,#0000000a);cursor:pointer;border:none;border-radius:8px;width:32px;height:32px;font-size:14px}.settle-icon-btn--danger:hover{background:var(--color-danger-light,#dc26261a)}.settle-history-toggle{text-align:start;cursor:pointer;width:100%;color:var(--color-text);background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:15px;font-weight:800}.settle-history-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.settle-history-row{background:var(--color-surface);border-radius:var(--radius-md);flex-direction:column;gap:2px;padding:10px 12px;display:flex}.settle-history-row--tappable{cursor:pointer}.settle-history-row--tappable:hover{background:var(--color-surface-2,#00000008)}.settle-history-date{color:var(--color-text-muted);font-size:11px}.settle-sd-summary{border-bottom:1px solid var(--color-border-soft,var(--color-border));margin-bottom:12px;padding:4px 0 12px}.settle-sd-headline{color:var(--color-text);text-align:center;margin:0;font-size:16px;font-weight:800}.settle-sd-date{color:var(--color-text-muted);text-align:center;margin:4px 0 0;font-size:12px}.settle-sd-note{color:var(--color-text-muted);text-align:center;margin:6px 0 0;font-size:13px;font-style:italic}.settle-history-text{color:var(--color-text);font-size:14px;font-weight:700}.settle-history-note{color:var(--color-text-muted);font-size:12px;font-style:italic}.settle-load-more{border:1px dashed var(--color-border);border-radius:var(--radius-md);width:100%;color:var(--color-primary);cursor:pointer;background:0 0;margin-top:8px;padding:10px;font-family:inherit;font-size:13px;font-weight:800}.settle-load-more:hover{background:var(--color-surface-2,#00000008)}.settle-settled-tag{color:var(--color-primary);font-weight:700}.expense-child-grid,.expense-payer-row{flex-wrap:wrap;gap:8px;display:flex}.expense-child-chip,.expense-payer-chip{border:1.5px solid var(--color-border,#0000001f);background:var(--color-surface);cursor:pointer;color:var(--color-text);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-family:inherit;font-size:13px;display:flex}.expense-child-chip.is-selected,.expense-payer-chip.is-selected{border-color:var(--color-primary);background:var(--color-primary-light,#0000000a);color:var(--color-primary);font-weight:700}.expense-split-row{flex-direction:column;gap:6px;display:flex}.expense-split-row input[type=range]{width:100%}.expense-split-name{color:var(--color-text);font-size:13px;font-weight:600}.expense-repeat{flex-direction:column;gap:8px;margin-top:10px;display:flex}.expense-repeat-modes{gap:8px;display:flex}.mature-topbar-id{flex-shrink:0;justify-content:center;align-items:center;display:flex}.mature-topbar-id-btn{cursor:pointer;font:inherit;color:inherit;background:0 0;border:none;border-radius:50%;padding:0;transition:transform 80ms,box-shadow .15s}.mature-topbar-id-btn:hover{box-shadow:0 0 0 4px color-mix(in srgb, var(--child-color,var(--color-primary)) 18%, transparent)}.mature-topbar-id-btn:active{transform:scale(.96)}.mature-topbar-id-btn:focus-visible{outline:2px solid var(--child-color,var(--color-primary));outline-offset:3px}.mature-page .parent-topbar{border-bottom:1px solid var(--color-border-soft);box-shadow:inset 0 -3px 0 -1px var(--child-color,var(--color-primary));z-index:2;position:relative}.mature-greeting{background:var(--color-surface);border-radius:var(--radius-xl);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1.5px solid rgba(var(--color-primary-rgb), .4);flex-direction:row;justify-content:space-between;align-items:flex-start;gap:8px;animation:5s ease-in-out infinite sunriseGlow;display:flex}@media (prefers-reduced-motion:reduce){.mature-greeting{animation:none}}.mature-greeting-title{color:var(--color-text);margin:0;font-size:22px;font-weight:800}.mature-greeting-date{color:var(--color-text-muted);margin:0;font-size:13px;font-weight:500}.mature-page .nav-btn.active .nav-label{color:var(--child-color,var(--color-primary))}.mature-page .nav-btn.active:before{background:var(--child-color,var(--color-primary))}.mature-card{background:var(--color-surface,#fff);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-md);gap:var(--spacing-sm);flex-direction:column;display:flex;box-shadow:0 2px 10px #0000000a}.mature-card-head{justify-content:space-between;align-items:center;display:flex}.mature-card-title{color:var(--color-text);margin:0;font-size:18px;font-weight:800}.mature-progress-count{color:var(--child-color,var(--color-primary));font-size:15px;font-weight:800}.mature-card .child-progress-wrap{border-radius:var(--radius-full);height:8px;overflow:hidden}.mature-card .child-progress-fill{background:var(--child-color,var(--color-primary));border-radius:var(--radius-full)}.mature-link-btn{color:var(--child-color,var(--color-primary));cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-family:inherit;font-size:14px;font-weight:700}.mature-link-btn:hover{text-decoration:underline}.mature-alldone{color:var(--child-color,var(--color-primary));margin:0;font-size:14px;font-weight:700}.banner-cropper{flex-direction:column;gap:10px;width:100%;display:flex}.bc-frame{border-radius:var(--radius-lg);background:#00000010;width:100%;position:relative;overflow:hidden}.bc-frame:active{cursor:grabbing!important}.games-cats{gap:var(--spacing-md);padding:var(--spacing-md);flex-direction:column;display:flex}.games-cat{align-items:center;gap:var(--spacing-md);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);text-align:start;width:100%;font:inherit;color:var(--color-text);cursor:pointer;padding:16px;transition:transform .12s,box-shadow .12s;display:flex}.games-cat--learning:active{transform:scale(.99)}.games-cat--learning{box-shadow:var(--shadow-xs)}.games-cat--soon{opacity:.55;cursor:default}.games-cat-emoji{font-size:2rem;line-height:1}.games-cat-text{flex-direction:column;flex:1;gap:2px;display:flex}.games-cat-title{font-size:1.05rem;font-weight:700}.games-cat-desc{color:var(--color-text-muted);font-size:.85rem}.games-cat-go{color:var(--color-text-muted);font-size:1.6rem}.learning-screen{padding-bottom:90px}.learning-screen-header,.learning-form-header,.learning-sheet-header{padding:12px var(--spacing-md);border-bottom:1px solid var(--color-border-soft);align-items:center;gap:8px;display:flex}.learning-screen-header h2,.learning-form-header h2{text-align:center;flex:1;margin:0;font-size:1.1rem}.learning-back{color:var(--color-text);cursor:pointer;background:0 0;border:none;font-size:1.8rem;line-height:1;transform:scaleX(-1)}.learning-new,.learning-form-save{background:var(--color-primary);color:#fff;border-radius:var(--radius-full);font:inherit;cursor:pointer;border:none;padding:7px 14px;font-weight:600}.learning-form-cancel{color:var(--color-text-muted);font:inherit;cursor:pointer;background:0 0;border:none}.learning-form-save:disabled{opacity:.5}.learning-empty{text-align:center;color:var(--color-text-muted);padding:48px 24px}.learning-empty-emoji{margin:0 0 8px;font-size:3rem}.learning-empty-hint{margin:4px 0 18px;font-size:.85rem}.learning-list{padding:var(--spacing-md);flex-direction:column;gap:10px;margin:0;list-style:none;display:flex}.learning-row{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;display:flex;overflow:hidden}.learning-row.is-inactive{opacity:.6}.learning-row-main{text-align:start;width:100%;font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:14px;display:block}.learning-row-head{align-items:center;gap:12px;display:flex}.learning-row-titleblock{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.learning-row-top{align-items:center;gap:8px;display:flex}.learning-row-title{font-size:1.02rem;font-weight:700}.learning-row-badge{background:var(--color-border-soft);border-radius:var(--radius-full);color:var(--color-text-muted);padding:1px 8px;font-size:.7rem}.learning-row-meta{color:var(--color-text-muted);gap:6px;font-size:.82rem;display:flex}.learning-row-kids{flex-shrink:0;gap:4px;display:flex}.learning-row-footer{border-top:1px solid var(--color-border-soft);justify-content:space-between;align-items:center;display:flex}.learning-row-results{text-align:start;font:inherit;color:var(--color-primary);cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:4px;padding:10px 14px;font-size:.9rem;font-weight:600;display:flex}.learning-row-results span{font-size:1.1rem}.learning-row-delete{border:none;border-inline-start:1px solid var(--color-border-soft);cursor:pointer;background:0 0;padding:10px 16px;font-size:1.05rem}.learning-form-screen{flex-direction:column;height:100%;padding-bottom:80px;display:flex}.learning-tabs{padding:8px var(--spacing-md) 0;border-bottom:1px solid var(--color-border-soft);gap:4px;display:flex}.learning-tabs button{font:inherit;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-bottom:3px solid #0000;flex:1;padding:8px 4px;font-size:.9rem}.learning-tabs button.is-active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:700}.learning-form-error{margin:10px var(--spacing-md) 0;background:var(--color-danger-light);color:var(--color-danger);border-radius:var(--radius-md);padding:8px 12px;font-size:.88rem}.learning-form-body{padding:var(--spacing-md);overflow-y:auto}.learning-details{flex-direction:column;gap:18px;display:flex}.learning-card input,.learning-card textarea{border:1px solid var(--color-border);border-radius:var(--radius-md);width:100%;font:inherit;background:var(--color-bg);color:var(--color-text);padding:10px 12px}.learning-goal-summary{align-items:center;gap:10px;display:flex}.learning-goal-summary-text{color:var(--color-text-muted);flex:1;font-size:.9rem;line-height:1.4}.learning-goal-change{border:1px solid var(--color-primary);color:var(--color-primary);border-radius:var(--radius-full);font:inherit;cursor:pointer;background:0 0;flex-shrink:0;padding:5px 14px;font-size:.85rem;font-weight:600}.learning-freq-options{flex-direction:column;gap:8px;display:flex}.learning-freq-row{border:1.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg);cursor:pointer;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.learning-freq-row.is-on{border-color:var(--color-primary);background:var(--color-primary-light)}.learning-freq-row input{accent-color:var(--color-primary);margin-top:3px}.learning-freq-text{flex-direction:column;gap:2px;display:flex}.learning-freq-label{font-size:.92rem;font-weight:600}.learning-freq-hint{color:var(--color-text-muted);font-size:.8rem}.learning-threshold{flex-direction:column;gap:6px;margin-top:10px;display:flex}.learning-threshold-input{align-items:center;gap:8px;display:flex}.learning-threshold-input .ob-input{max-width:110px}.learning-threshold-input span{font-weight:700}.learning-goal-group{margin-top:10px}.learning-goal-group-head{color:var(--color-text-muted);align-items:center;gap:6px;margin-bottom:6px;font-size:.85rem;font-weight:700;display:flex}.learning-questions,.learning-enrichments{flex-direction:column;gap:14px;display:flex}.learning-hint{color:var(--color-text-muted);text-align:center;padding:16px;font-size:.88rem}.learning-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);flex-direction:column;gap:10px;padding:14px;display:flex}.learning-card-head{align-items:center;gap:10px;display:flex}.learning-card-num{background:var(--color-primary-light);width:26px;height:26px;color:var(--color-primary-dark);border-radius:var(--radius-full);place-items:center;font-size:.85rem;font-weight:700;display:grid}.learning-type-toggle{gap:4px;margin-inline-start:auto;display:flex}.learning-type-toggle button{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-full);font:inherit;cursor:pointer;padding:4px 12px;font-size:.82rem}.learning-type-toggle button.is-on{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.learning-card-title{font-weight:700}.learning-options{flex-direction:column;gap:8px;display:flex}.learning-options-hint{color:var(--color-text-muted);margin:0;font-size:.8rem}.learning-option-row{align-items:center;gap:8px;display:flex}.learning-correct-dot{border-radius:var(--radius-full);border:2px solid var(--color-border);background:var(--color-bg);width:28px;height:28px;color:var(--color-success);cursor:pointer;flex:0 0 28px;font-weight:800}.learning-correct-dot.is-on{border-color:var(--color-success);background:var(--color-success-light)}.learning-option-row input{flex:1}.learning-option-del,.learning-card-delete{color:var(--color-danger);cursor:pointer;background:0 0;border:none;font-size:1rem}.learning-card-delete{align-self:flex-end;font-size:.85rem}.learning-mini-btn,.learning-add-btn{background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius-md);font:inherit;color:var(--color-primary);cursor:pointer;align-self:flex-start;padding:8px 14px}.learning-add-btn{text-align:center;align-self:stretch;padding:12px}.learning-card-actions{justify-content:flex-end;gap:14px;display:flex}.learning-card-actions button{font:inherit;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;font-size:.85rem}.learning-danger{color:var(--color-danger)!important}.learning-modal-overlay{z-index:1000;background:#00000073;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.learning-modal{background:var(--color-surface);border-radius:var(--radius-lg);text-align:center;width:100%;max-width:340px;padding:20px}.learning-modal-actions{gap:10px;margin-top:16px;display:flex}.learning-modal-actions button{border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-bg);font:inherit;cursor:pointer;flex:1;padding:10px}.learning-sheet{background:var(--color-surface);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:460px;max-height:80vh;display:flex;overflow:hidden}.learning-sheet-header h3{flex:1;margin:0;font-size:1rem}.learning-sheet-header button{cursor:pointer;background:0 0;border:none;font-size:1.1rem}.learning-results{padding:var(--spacing-md);flex-direction:column;gap:10px;display:flex;overflow-y:auto}.learning-result-child{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.learning-result-head{background:var(--color-bg);width:100%;font:inherit;cursor:pointer;border:none;align-items:center;gap:10px;padding:10px 12px;display:flex}.learning-result-name{text-align:start;flex:1;font-weight:600}.learning-result-score{color:var(--color-primary);font-size:.85rem;font-weight:700}.learning-result-none{color:var(--color-text-muted);font-size:.8rem}.learning-result-detail{padding:10px 12px}.learning-result-stats{color:var(--color-text-muted);gap:14px;margin-bottom:8px;font-size:.85rem;display:flex}.learning-answers{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.learning-answer-item{border-top:1px solid var(--color-border-soft);padding-top:8px}.learning-answer-q{font-size:.88rem;font-weight:600}.learning-answer-a{color:var(--color-text-muted);margin-top:2px;font-size:.85rem}.learning-answer-foot{align-items:center;gap:8px;margin-top:4px;display:flex}.learning-answer-status{border-radius:var(--radius-full);padding:1px 8px;font-size:.75rem;font-weight:700}.learning-answer-status--ok{background:var(--color-success-light);color:var(--color-success)}.learning-answer-status--bad{background:var(--color-danger-light);color:var(--color-danger)}.learning-answer-status--open{background:var(--color-primary-light);color:var(--color-primary-dark)}.learning-answer-status--none{background:var(--color-border-soft);color:var(--color-text-muted)}.learning-answer-attempts{color:var(--color-text-muted);font-size:.75rem}.arrival-alert-overlay{z-index:1000;animation:.2s ease-out arrivalAlertFade}@keyframes arrivalAlertFade{0%{opacity:0}to{opacity:1}}.arrival-alert{background:var(--color-surface);border-radius:var(--radius-xl);width:min(92vw,380px);padding:var(--spacing-lg);box-shadow:var(--shadow-lg);text-align:center;animation:.32s cubic-bezier(.34,1.56,.64,1) arrivalAlertPop}@keyframes arrivalAlertPop{0%{transform:scale(.85)}to{transform:scale(1)}}.arrival-alert-head{margin-bottom:var(--spacing-md);justify-content:center;align-items:center;gap:8px;display:flex}.arrival-alert-pin{font-size:26px;line-height:1}.arrival-alert-title{color:var(--color-text);margin:0;font-size:18px;font-weight:800}.arrival-alert-who{flex-direction:column;align-items:center;gap:8px;display:flex}.arrival-alert-line{color:var(--color-text);margin:0;font-size:17px;line-height:1.4}.arrival-alert-line strong{font-weight:800}.arrival-alert-address{color:var(--color-text);margin:0;font-size:14px;font-weight:600}.arrival-alert-time{color:var(--color-text-muted);margin:0;font-size:13px}.arrival-alert-map{width:100%;height:180px;margin-top:var(--spacing-md);border:1px solid var(--color-border-soft);border-radius:var(--radius-md)}.arrival-alert-gps-addr{text-align:center;min-height:18px;margin-top:6px}.arrival-alert-addr-link{color:var(--color-primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:600;text-decoration:underline}.arrival-alert-addr-text{color:var(--color-text-muted);font-size:13px}.arrival-alert-actions{gap:var(--spacing-sm);margin-top:var(--spacing-md);display:flex}.arrival-alert-btn{flex:1;font-size:16px;font-weight:700}.arrival-alert-nav-choice{flex-direction:column}.arrival-alert-nav-q{color:var(--color-text);margin:0 0 2px;font-size:15px;font-weight:700}.arrival-alert-nav-choice .arrival-alert-btn{flex-direction:column;align-items:center;gap:2px;width:100%;line-height:1.25;display:flex}.arrival-alert-nav-sub{opacity:.75;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;font-weight:500;overflow:hidden}.arrival-alert-nav-back{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;margin-top:2px;font-family:inherit;font-size:14px}
