﻿:root{--bg:#f8f8f4;--ink:#343e38;--muted:#92978e;--green:#748873;--sage:#eaf0e6;--lavender:#efebf8;--peach:#faebe5;--yellow:#faf1d6;--line:#eceee7;font-family:'Pretendard','Apple SD Gothic Neo','Malgun Gothic',system-ui,sans-serif;color:var(--ink);font-size:14px;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg)}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:0;background:none}button:disabled{cursor:default;opacity:.5}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a99bc4;outline-offset:4px}h1,h2,h3,p{margin:0}h2{font-size:17px;letter-spacing:-.6px}small{font-size:12px}.icon{flex-shrink:0;vertical-align:middle}.sidebar{width:248px;position:fixed;inset:0 auto 0 0;background:#fefefd;border-right:1px solid var(--line);padding:37px 22px 0;display:flex;flex-direction:column;z-index:30}.brand{display:flex;gap:9px;align-items:center;padding:0 7px;letter-spacing:-1.2px;font-size:27px;font-weight:750}.brand-icon{display:grid;place-items:center;width:38px;height:38px;background:var(--green);color:#fff;border-radius:12px;transform:rotate(-5deg)}.brand-icon svg{width:24px;height:24px}.brand-light{font-weight:400;color:var(--green)}.brand small{font-size:10px;display:block;letter-spacing:.8px;color:var(--muted);font-weight:400;margin-top:5px}.brand>i{color:#cdbb7b;font-size:18px;margin-top:-18px}.family-selector{margin:35px 0 30px;padding:13px 10px;background:#f5f6ef;border:1px solid #e9ecdf;border-radius:13px;display:flex;gap:10px;align-items:center}.family-emoji{font-size:26px}.family-selector strong{display:block;font-size:12px}.family-selector small{display:block;font-size:10px;color:#92968a;margin-top:5px}.family-selector>span:last-child{margin-left:auto}.nav-label{font-size:9px;font-weight:600;color:#a4a99c;letter-spacing:1.5px;padding-left:14px;margin-bottom:13px}.sidebar nav{display:grid;gap:7px}.nav-item{display:flex;align-items:center;gap:12px;width:100%;padding:13px;border-radius:10px;font-size:12px;color:#7e877c;text-align:left;position:relative}.nav-item:hover{background:#f5f7f1}.nav-item.active{background:#eaf0e4;color:#536f50;font-weight:700}.nav-item.active:before{content:'';width:3px;height:18px;background:#829779;position:absolute;left:0;border-radius:5px}.nav-item .icon{width:19px;height:19px}.nav-dot{width:5px;height:5px;background:#d6aa94;border-radius:50%;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:32px}.sidebar-note{border-radius:16px;background:#f7f6ed;text-align:center;padding:18px 10px;margin:0 5px 16px}.sidebar-note>span{font-size:28px;display:block;margin-bottom:9px}.sidebar-note strong{font-size:12px;line-height:1.8;color:#7e856d;font-weight:500}.sidebar-note p{font-size:10px;color:#a1a58e;margin-top:9px}.sidebar-profile{border-top:1px solid var(--line);display:flex;align-items:center;gap:9px;padding:20px 7px;margin-top:8px}.sidebar-profile strong,.sidebar-profile small{display:block;font-size:11px}.sidebar-profile small{font-size:9px;color:var(--muted);margin-top:4px}.workspace{margin-left:248px}.topbar{height:83px;padding:0 44px;border-bottom:1px solid var(--line);background:#fefefd;display:flex;align-items:center;justify-content:space-between}.breadcrumb{display:flex;align-items:center;gap:17px;font-size:11px}.breadcrumb>span{color:#a1a69d}.breadcrumb strong{font-weight:500}.header-actions{display:flex;align-items:center;gap:20px}.demo-badge{font-size:10px;color:#8b977f;background:#f0f4eb;border-radius:20px;padding:7px 11px;display:flex;gap:5px;align-items:center}.demo-badge i{width:5px;height:5px;border-radius:50%;background:#a0b18f}.mode-switch{font-size:11px;background:#f5f3ec;border-radius:8px;padding:9px 11px;display:flex;gap:6px;align-items:center}.mode-switch .icon{width:16px;height:16px}.icon-button{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:10px;font-size:25px}.icon-button:hover{background:var(--sage)}[hidden]{display:none!important}.notification{position:relative;color:#8b9187}.notification>i{position:absolute;width:5px;height:5px;border-radius:50%;background:#cfaa92;top:6px;right:7px}.header-avatar{display:grid;place-items:center;font-size:20px;background:#eee5d7;width:34px;height:34px;border-radius:50%}main{max-width:1400px;margin:0 auto;padding:27px 44px 16px}.date-line{font-size:11px;color:#939c8c;display:flex;gap:7px;align-items:center;margin-bottom:23px}.date-line .icon{width:15px;height:15px;color:#b8ac7e}.date-line>span{margin-left:auto;font-size:10px;color:#a8ada2}.welcome{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.eyebrow{font-size:9px;letter-spacing:1.8px;color:#96a089;display:block;margin-bottom:10px;font-weight:600}h1{font-size:24px;letter-spacing:-1px;font-weight:700;line-height:1.45}h1>span{font-size:25px;margin-left:4px}.welcome p{font-size:12px;color:#92988d;margin-top:9px;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;padding:10px 16px;border-radius:10px;white-space:nowrap;font-size:11px;font-weight:600;transition:background .15s,transform .15s}.button:hover:not(:disabled){transform:translateY(-1px)}.button .icon{width:16px;height:16px}.primary{color:#fff;background:#7d9174;box-shadow:0 3px 5px #5f795412}.primary:hover{background:#687e60}.secondary{background:#f0f3eb;color:#6e8264;border:1px solid #e2e8db}.light{background:#fffdf6;color:#6b7f5f}.hero{border-radius:22px;min-height:280px;background:#edf1e4;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;position:relative;margin-bottom:23px}.hero-copy{z-index:1;padding:30px 34px}.pill{font-size:10px;font-weight:500;display:inline-flex;align-items:center;padding:5px 9px;border-radius:7px;white-space:nowrap}.sage{background:var(--sage);color:#78876a}.peach{background:var(--peach);color:#b68b78}.lavender{background:var(--lavender);color:#9383b3}.yellow{background:var(--yellow);color:#b59a53}.hero-pill{background:#ffffffa6;color:#7e8c70;font-size:10px;border-radius:20px;gap:5px}.hero-pill .icon{width:12px;height:12px}.hero h2{font-size:30px;color:#596b4e;line-height:1.45;letter-spacing:-1.2px;margin-top:14px}.hero p{font-size:11px;color:#8c987f;line-height:1.8;margin:10px 0 17px}.hero .button{min-height:35px;font-size:10px}.family-art{position:relative;align-self:stretch;min-height:280px}.art-ground{position:absolute;width:360px;height:90px;border-radius:50%;background:#d9e3c6;bottom:33px;left:50%;transform:translateX(-50%)}.house{position:absolute;width:190px;height:125px;background:#fff7e2;left:50%;transform:translateX(-40%);bottom:85px;border-radius:5px;box-shadow:inset -10px 0 #f4edd6}.roof{position:absolute;width:0;height:0;border-left:112px solid transparent;border-right:112px solid transparent;border-bottom:91px solid #c1c9b0;top:-82px;left:-17px}.roof:after{content:'';position:absolute;width:18px;height:45px;background:#b9c2a8;left:52px;top:14px;z-index:-1;border-radius:3px}.house-window{position:absolute;left:28px;top:28px;background:#d5e2de;width:37px;height:40px;border:5px solid #fffdf5;border-radius:15px 15px 3px 3px}.house-window:before{content:'';position:absolute;width:3px;height:30px;left:12px;background:#fff}.house-window:after{content:'';position:absolute;width:27px;height:3px;top:15px;background:#fff}.house-door{position:absolute;width:40px;height:70px;background:#b5c3a1;bottom:0;right:31px;border-radius:22px 22px 0 0}.house-heart{position:absolute;font-size:21px;top:-13px;left:84px;color:#d8a799}.people{position:absolute;bottom:63px;left:50%;transform:translateX(-52%);display:flex;align-items:flex-end;gap:3px;z-index:3}.person{position:relative;width:46px;height:104px;display:block}.person i{position:absolute;left:8px;top:2px;width:33px;height:38px;background:#f1cdb2;border-radius:45% 45% 48% 48%;border-top:11px solid #655a4f;transform:rotate(-5deg);z-index:1}.person i:before{content:'•  •';position:absolute;top:3px;font-style:normal;font-size:13px;width:28px;left:4px;white-space:pre;letter-spacing:1px;color:#62584a}.person i:after{content:'';width:6px;height:3px;border-bottom:2px solid #bc8b76;border-radius:50%;position:absolute;top:17px;left:13px}.person b{position:absolute;bottom:11px;left:4px;width:42px;height:56px;border-radius:18px 18px 8px 8px;background:#a2b6a7;transform:rotate(3deg)}.person b:after{content:'';position:absolute;bottom:-13px;left:7px;width:10px;height:17px;border-radius:0 0 4px 4px;background:#6e7c72;box-shadow:17px 0 #6e7c72}.mom{height:102px}.mom i{border:7px solid #6c5b50;border-bottom:0;width:37px;height:42px;left:6px}.mom i:before{left:0;top:4px;font-size:12px;letter-spacing:0}.mom i:after{left:9px;top:20px}.mom b{background:#d5b5a0;height:57px;width:46px;border-radius:20px 20px 8px 8px}.mom b:after{background:#9f8f7a;box-shadow:17px 0 #9f8f7a}.girl{height:76px;width:39px}.girl i{width:31px;height:34px;left:4px;border:7px solid #6c5648;border-bottom:0}.girl i:before{font-size:11px;left:-2px;top:2px}.girl i:after{left:7px;top:15px}.girl b{width:35px;height:38px;background:#bcb0cf;left:3px}.girl b:after{height:12px;bottom:-9px;background:#a396af;box-shadow:14px 0 #a396af;width:8px}.boy{height:71px;width:36px}.boy i{width:29px;height:31px;left:4px;border-top:9px solid #796448}.boy i:before{font-size:10px;top:1px;left:3px}.boy i:after{left:10px;top:12px}.boy b{height:34px;width:33px;background:#dfcb8d}.boy b:after{height:12px;bottom:-9px;width:8px;background:#ad9e7b;box-shadow:14px 0 #ad9e7b}.art-sun{position:absolute;left:18%;top:29px;color:#e2c477;font-size:49px;transform:rotate(10deg)}.art-star{position:absolute;right:13%;top:75px;font-size:30px;color:#d8bf7c}.art-cloud{position:absolute;background:#fff9;border-radius:30px;width:65px;height:18px}.art-cloud:before{content:'';position:absolute;left:15px;bottom:4px;width:28px;height:28px;background:inherit;border-radius:50%}.cloud-one{top:50px;right:23%}.cloud-two{left:8%;top:114px;width:40px;height:12px}.cloud-two:before{width:20px;height:20px;left:10px}.art-plant{position:absolute;bottom:65px;font-size:40px;z-index:2}.plant-one{left:12%;transform:rotate(-12deg)}.plant-two{right:11%;font-size:47px}.art-caption{font-family:Georgia,serif;font-style:italic;position:absolute;bottom:20px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:15px;color:#8fa07b}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:26px}.summary-card{background:white;border:1px solid var(--line);border-radius:15px;padding:20px 18px;display:flex;align-items:center;gap:13px;text-align:left}.summary-card:hover{border-color:#bdcbb1}.summary-icon{width:43px;height:43px;border-radius:13px;display:grid;place-items:center;font-size:21px;flex-shrink:0}.summary-card>span:nth-child(2){flex:1}.summary-card small{font-size:10px;color:#92998d;display:block;margin-bottom:7px}.summary-card strong{font-size:22px;letter-spacing:-.4px}.summary-card em{font-size:10px;font-style:normal;color:#9ca294;font-weight:400;margin-left:7px}.summary-card>.icon{width:14px;color:#bac1b5}.dashboard-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:21px}.card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:25px;min-width:0}.section-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.section-title h2 .count{margin-left:5px}.count{font-size:10px;border-radius:6px;background:#eff3e9;color:#8b9b7b;padding:3px 6px}.text-button{display:inline-flex;gap:4px;align-items:center;color:#8a947d;font-size:10px;padding:6px 0;white-space:nowrap}.text-button .icon{width:12px;height:12px}.text-button:hover{color:#526a52}.card-subtitle{font-size:10px;line-height:1.7;color:#939c89;margin-bottom:14px}.event-row{display:flex;align-items:center;gap:12px;padding:16px 0}.event-time{font-size:13px;font-weight:600;width:59px;align-self:flex-start;line-height:1.4;flex-shrink:0}.event-time span{font-size:8px;display:block;font-weight:400;color:#a2ad98;margin-top:3px}.event-line{width:3px;align-self:stretch;min-height:34px;border-radius:3px;flex-shrink:0}.event-line.lavender{background:#c7bcdb}.event-line.yellow{background:#e4d398}.event-line.sage{background:#b2c5a4}.event-body{flex:1;min-width:0}.event-body strong{font-size:12px;font-weight:500;overflow-wrap:anywhere}.event-body p{font-size:9px;color:#929b87;margin-top:6px}.event-row>.pill{font-size:9px}.dashed-button{border:1px dashed #dce3d3;background:#fafbf7;color:#8a9b7a;border-radius:9px;width:100%;min-height:36px;margin-top:11px;font-size:10px;display:flex;gap:6px;justify-content:center;align-items:center}.dashed-button .icon{width:13px}.budget-amount{margin-top:25px}.budget-amount small{font-size:10px;color:#929b89;display:block}.budget-amount strong{display:block;margin:9px 0 21px;font-size:31px;letter-spacing:-1px;font-weight:600}.budget-amount strong span{font-size:13px;color:#9ca491;font-weight:400;margin-left:5px}.progress{height:7px;border-radius:10px;background:#f0f1eb;overflow:hidden}.progress>span{height:100%;background:#adbd9e;display:block;border-radius:10px}.peach-progress>span{background:#d9bba7}.purple-progress>span{background:#b7a5d3}.yellow-progress>span{background:#e0c777}.budget-label{display:flex;justify-content:space-between;font-size:9px;color:#929c85;margin-top:10px}.budget-note{margin-top:24px;font-size:10px;color:#8a977b;background:#f4f6ef;padding:14px;border-radius:10px}.budget-note strong{font-weight:500}.child-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.child-card{position:relative;text-align:left;border:1px solid #eeebf4;background:#fcfbff;border-radius:14px;padding:16px 12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.child-card:nth-child(2){background:#fffdf6;border-color:#f1eede}.avatar{width:43px;height:43px;border-radius:50%;display:inline-grid;place-items:center;font-size:28px;flex-shrink:0}.avatar.small{width:31px;height:31px;font-size:20px}.child-card>span:nth-child(2)>strong{font-size:12px;display:block}.child-card>span:nth-child(2)>small{font-size:8px;color:#939383;display:block;margin-top:5px}.star-tag{margin-left:auto;color:#ae9653;font-size:10px}.child-progress{width:100%;margin-top:10px}.child-progress>div:first-child{display:flex;justify-content:space-between;font-size:9px;color:#98909f;margin-bottom:9px}.child-progress b{font-weight:500;color:#9385a8}.encouragement{display:flex;align-items:center;justify-content:center;gap:5px;font-size:9px;color:#939986;margin-top:18px}.encouragement .icon{width:12px;height:12px;color:#a6a58b}.message-preview{width:100%;display:flex;align-items:center;gap:10px;text-align:left;padding:15px 0;border-bottom:1px solid #f1f2ed}.message-preview>.summary-icon{width:34px;height:34px;font-size:17px;border-radius:10px}.message-preview small{display:block;color:#91927e;font-size:9px;margin-bottom:6px}.message-preview strong{font-size:11px;font-weight:500}.unread-dot{width:5px;height:5px;background:#d5b397;border-radius:50%;margin-left:auto}.assistant-mini{display:flex;gap:11px;align-items:center;background:#f7f5fa;border-radius:11px;padding:14px;margin-top:19px}.assistant-mini>span{font-size:26px;color:#a99aba}.assistant-mini strong{font-size:10px;font-weight:500;color:#8c809b}.assistant-mini p{font-size:8px;color:#9b91a5;margin-top:6px}.assistant-mini>button{margin-left:auto;color:#a89bb7}.assistant-mini .icon{width:16px}.page-footer{text-align:center;font-size:9px;color:#a0a892;margin:28px 0 7px}.page-footer span{margin:0 8px;color:#bfad9a}.bottom-nav,.mobile-brand{display:none}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.filter{min-height:35px;border:1px solid var(--line);background:#fff;padding:7px 15px;font-size:12px;border-radius:20px;display:inline-flex;gap:6px;align-items:center}.filter.active{background:var(--green);color:white;border-color:var(--green)}.calendar-layout{display:grid;grid-template-columns:1.4fr 1fr;gap:20px}.month-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;text-align:center;margin-bottom:20px}.calendar-grid>strong{font-size:12px;font-weight:500;color:#9da394;padding:10px 0}.calendar-day{aspect-ratio:1;max-height:78px;border-radius:13px;position:relative;min-height:43px}.calendar-day:hover{background:var(--sage)}.calendar-day.today{box-shadow:inset 0 0 0 1px #c6d2bc}.calendar-day.selected{background:var(--green);color:white}.calendar-dots{display:block;position:absolute;bottom:4px;left:0;right:0;font-size:13px;color:#bbaad5}.empty{padding:30px 12px;text-align:center;font-size:12px;color:#939f85;line-height:1.8}.empty .icon{width:30px;height:30px;margin-bottom:10px}.finance-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.finance-controls>label{display:flex;align-items:center;gap:10px;font-size:12px}.finance-controls input{border:1px solid #dde3d4;padding:10px;border-radius:9px;background:white;color:var(--ink)}.finance-summary .card{padding:22px}.finance-summary .card>small{color:#8c997c}.finance-summary strong{font-size:25px;display:block;margin-top:13px}.finance-summary strong>small{font-size:12px}.sage-text{color:#7e9874}.transaction-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:17px 0}.transaction-row>div{flex:1;min-width:0}.transaction-row strong{font-size:12px;overflow-wrap:anywhere}.transaction-row small{display:block;font-size:9px;color:var(--muted);margin-top:6px}.transaction-row b{font-size:12px;white-space:nowrap}.category-row{margin-top:24px}.category-row>div:first-child{display:flex;justify-content:space-between;font-size:11px;margin-bottom:10px}.category-row strong{font-weight:500}.category-row span{color:#969f8d}.account-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}.account-row>.icon{color:#a0b18e}.account-row strong{font-size:12px}.account-row small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.muted-note{font-size:10px;color:var(--muted);line-height:1.8;margin-top:17px}.stack{display:grid;gap:20px;align-content:start}.growth-banner{background:#eeeaf6;border-radius:20px;padding:25px;display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.growth-banner>div:first-child{display:flex;align-items:center;gap:16px}.growth-banner .avatar{width:65px;height:65px;font-size:40px;background:#e5dfee}.growth-banner h2{font-size:21px;color:#7b6e93}.growth-banner p{margin-top:9px;font-size:12px;color:#92869f}.star-balance{font-size:28px;color:#b49d60}.star-balance strong{font-size:34px}.star-balance span{display:block;font-size:10px;text-align:right;margin-top:3px}.goal-period{font-size:12px;color:#8d947e;margin:25px 0 7px;font-weight:500}.goal-row{display:flex;align-items:center;gap:11px;padding:17px 0;border-bottom:1px solid var(--line)}.goal-emoji{font-size:26px}.goal-row>div{flex:1}.goal-row strong{font-size:13px;overflow-wrap:anywhere}.goal-row small{font-size:10px;display:block;margin-top:6px;color:#aa9652}.complete-button{font-size:11px;background:#ede8f5;color:#927aad;min-height:36px;padding:8px 11px;border-radius:9px;white-space:nowrap}.complete-button:disabled{opacity:1;background:#eef3e7;color:#879873}.complete-button>.icon{width:14px;height:14px}.completed strong{color:#8c987d}.reward-row{display:flex;align-items:center;gap:14px;padding:22px 0;border-bottom:1px solid var(--line)}.reward-row>span{font-size:32px}.reward-row>div{flex:1}.reward-row strong{font-size:12px;overflow-wrap:anywhere}.reward-row small{display:block;font-size:10px;color:#b59e61;margin-top:7px}.record-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:22px}.record-grid>div{background:#f5f6ef;padding:20px;border-radius:15px}.record-grid small{color:#8a9877;font-size:10px}.record-grid strong{display:block;font-size:26px;margin-top:10px}.record-grid span{font-size:10px;font-weight:400;color:#8b9878;display:block;margin-top:6px}.narrow{max-width:800px}.chore-row{display:flex;gap:14px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line)}.chore-row input{accent-color:var(--green);width:20px;height:20px}.chore-row>.pill{margin-left:auto}.chore-row>span{font-size:13px}.strike{text-decoration:line-through;color:#9aa58d}.notice{background:#f2efe3;color:#998c6c;border-radius:12px;font-size:12px;padding:16px;line-height:1.8;margin-bottom:20px}.inbox-card{text-align:left;width:100%}.inbox-card>div{display:flex;align-items:center;justify-content:space-between}.inbox-card h2{margin-top:20px}.inbox-card p{font-size:12px;color:#929c86;line-height:1.9;margin:12px 0}.new-tag{font-size:10px;color:#b79a68}.assistant-card{text-align:center;padding:50px 28px}.assistant-symbol{display:inline-grid;place-items:center;width:80px;height:80px;font-size:55px;color:#a493bf;background:#f0ebf8;border-radius:26px;margin-bottom:25px}.assistant-card>p{font-size:12px;line-height:2;color:#8c997f;margin:20px 0}.assistant-prompts{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}.assistant-reply{background:#f3f5ee;border-radius:15px;padding:22px;text-align:left;font-size:14px;line-height:2;margin-top:30px;color:#74826a}.skip-link{position:fixed;top:-100px;left:20px;background:var(--green);color:white;padding:14px;z-index:200}.skip-link:focus{top:10px}#toast{position:fixed;bottom:32px;left:calc(50% + 124px);transform:translate(-50%,15px);max-width:90vw;width:max-content;z-index:200;background:#465840;color:white;padding:14px 22px;border-radius:12px;box-shadow:0 8px 40px #35472b22;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}#toast.show{opacity:1;transform:translate(-50%,0)}.modal-open{overflow:hidden}.modal-backdrop{position:fixed;inset:0;background:#303a3255;backdrop-filter:blur(3px);z-index:100;display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:#fffefb;border-radius:24px;padding:26px;width:100%;max-width:460px;max-height:90dvh;overflow:auto;box-shadow:0 20px 70px #303a3222}.modal>.section-title{margin-bottom:22px}.form-field{font-size:12px;display:flex;flex-direction:column;gap:8px;margin-bottom:17px;color:#79846e}.form-field input,.form-field select{width:100%;min-height:43px;border:1px solid #e0e5d7;background:white;color:var(--ink);border-radius:9px;padding:10px 12px;min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.submit-button,.full{width:100%}.message-body,.settings-copy{line-height:2;font-size:13px;margin:20px 0;color:#8c947f;overflow-wrap:anywhere}.more-link{width:100%;display:flex;align-items:center;gap:14px;text-align:left;padding:18px 6px;border-bottom:1px solid var(--line);font-size:13px}.more-link>.icon:last-child{margin-left:auto}.more-link>.icon{color:var(--green)}
@media(min-width:1500px){main{padding-top:32px}.hero{min-height:300px}.hero-copy{padding:34px 40px}.hero h2{font-size:34px}.family-art{transform:scale(1.05)}}
@media(max-width:1200px){.sidebar{width:220px;padding-left:14px;padding-right:14px}.workspace{margin-left:220px}.topbar{padding:0 26px}main{padding:25px 26px}.hero-copy{padding:28px}.hero h2{font-size:27px}.summary-card{padding:18px 13px;gap:9px}.summary-card em{display:block;margin:5px 0 0}.summary-card strong{font-size:20px}.child-grid{grid-template-columns:1fr}.child-card{padding:12px}.growth-card .child-card .avatar{width:34px;height:34px;font-size:23px}.child-progress{margin-top:3px}.sidebar-note{padding:13px}.header-actions{gap:13px}#toast{left:calc(50% + 110px)}}
@media(max-width:960px){.sidebar{width:190px;padding:28px 10px 0}.brand{font-size:23px;gap:6px}.brand-icon{width:31px;height:31px}.brand>i{display:none}.nav-item{font-size:11px;gap:8px;padding:13px 10px}.family-selector{padding:10px 7px}.family-selector strong{font-size:10px}.family-selector small{font-size:9px}.workspace{margin-left:190px}.topbar{height:70px;padding:0 20px}main{padding:22px 20px}.hero{grid-template-columns:1.1fr 1fr;min-height:270px}.hero-copy{padding:25px 0 25px 25px}.hero h2{font-size:26px}.family-art{transform:scale(.85);transform-origin:70% 70%}.hero-pill{font-size:8px}.hero p{font-size:10px}.hero .button{font-size:9px}.welcome h1{font-size:21px}.summary-card{padding:15px 10px}.summary-icon{width:32px;height:32px;border-radius:10px}.summary-icon .icon{width:18px}.summary-card small{font-size:9px}.summary-card strong{font-size:17px}.summary-card>.icon{display:none}.dashboard-grid{grid-template-columns:1fr 1fr;gap:14px}.card{padding:20px}h2{font-size:15px}.event-row{gap:8px}.event-time{width:40px;font-size:11px}.event-time span{font-size:7px}.event-body strong{font-size:11px}.event-body p{font-size:8px}.event-row>.pill{font-size:8px;padding:4px 6px}.budget-amount strong{font-size:27px}.header-avatar{display:none}.calendar-layout{grid-template-columns:1fr}.finance-summary strong{font-size:19px}.growth-banner h2{font-size:18px}.growth-banner p{font-size:10px}.growth-banner .avatar{width:50px;height:50px;font-size:30px}.goal-row{gap:8px}.goal-row strong{font-size:11px}.goal-emoji{font-size:20px}.complete-button{padding:7px;font-size:10px}.reward-row{gap:10px}.reward-row>span{font-size:25px}#toast{left:calc(50% + 95px)}}
@media(max-width:760px){.sidebar{display:none}.workspace{margin-left:0}.topbar{height:70px;padding:0 21px;position:sticky;top:0;z-index:40;background:#fefefdf5;backdrop-filter:blur(10px)}.breadcrumb{display:none}.mobile-brand{display:flex;align-items:center;gap:7px;font-size:20px;letter-spacing:-1px;font-weight:700;color:#526a52}.mobile-brand>.icon{color:#839578;width:22px;height:22px}.header-actions{gap:9px}.demo-badge{font-size:9px;padding:6px 8px}.mode-switch{font-size:10px;padding:7px 9px}.notification{display:none}main{padding:22px 21px 110px}.date-line{font-size:10px;margin-bottom:23px}.date-line>span{font-size:9px}.welcome{align-items:flex-start;margin-bottom:22px;gap:10px}.welcome h1{font-size:24px;letter-spacing:-1px;max-width:420px}.welcome h1>span{font-size:23px}.welcome p{font-size:11px;line-height:1.7}.eyebrow{font-size:8px;letter-spacing:1.4px}.welcome>.button{font-size:10px;padding:9px 11px;min-height:36px;margin-top:20px}.hero{min-height:285px;border-radius:21px;grid-template-columns:1.1fr 1fr;margin-bottom:18px}.hero-copy{padding:27px 0 25px 24px}.hero h2{font-size:27px}.hero p{font-size:10px}.hero-pill{font-size:8px;padding:5px 7px;white-space:normal}.family-art{transform:scale(.8);transform-origin:56% 78%;min-width:230px;left:-25px}.summary-grid{gap:9px;margin-bottom:21px}.summary-card{padding:14px 9px;display:flex;gap:8px;flex-direction:column;align-items:flex-start;border-radius:14px}.summary-icon{width:33px;height:33px}.summary-card small{font-size:9px;margin:4px 0 6px;letter-spacing:-.4px}.summary-card strong{font-size:19px}.summary-card em{font-size:9px;margin-top:4px}.dashboard-grid{gap:17px;grid-template-columns:1fr 1fr}.card{padding:21px;border-radius:18px}.schedule-card,.growth-card{grid-column:1 / -1}.budget-card{grid-column:auto;grid-row:3}.message-card{grid-row:3}.child-grid{grid-template-columns:1fr 1fr;gap:12px}.child-card{padding:15px 12px}.growth-card .child-card .avatar{width:38px;height:38px;font-size:24px}.child-progress{margin-top:10px}.event-time{width:60px;font-size:13px}.event-time span{font-size:9px}.event-body strong{font-size:13px}.event-body p{font-size:10px}.event-row{padding:17px 0;gap:13px}.event-row>.pill{font-size:10px;padding:5px 9px}.event-line{min-height:38px}.card-subtitle{font-size:10px}.section-title h2{font-size:16px}.budget-amount strong{font-size:26px}.budget-note{font-size:10px;line-height:1.8}.message-preview{gap:8px}.message-preview strong{font-size:10px}.assistant-mini{padding:10px;gap:6px}.assistant-mini p{line-height:1.7}.assistant-mini strong{font-size:9px}.assistant-mini>span{font-size:20px}.page-footer{font-size:8px;line-height:1.8}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#ffffffed;backdrop-filter:blur(14px);border-top:1px solid #e9eddf;z-index:50;justify-content:space-around;min-height:72px}.bottom-nav>button{display:flex;flex-direction:column;align-items:center;gap:6px;color:#8b987f;flex:1;padding:7px 4px 4px;font-size:10px;border-radius:12px}.bottom-nav>button .icon{width:22px;height:22px}.bottom-nav>button.active{color:#718868;background:#f1f5ec}.calendar-layout{grid-template-columns:1fr}.finance-summary{grid-template-columns:repeat(3,1fr)}.finance-summary .card{padding:17px 12px}.finance-summary strong{font-size:18px}.finance-summary .card>small{font-size:10px}.finance-summary strong>small{font-size:9px}.finance-controls>label{font-size:11px}.transaction-row b{font-size:11px}.growth-banner{padding:20px}.growth-banner h2{font-size:18px}.growth-banner p{font-size:10px}.star-balance{font-size:20px}.star-balance strong{font-size:28px}.goal-row strong{font-size:12px}.complete-button{padding:8px 11px;font-size:11px}.goal-row{gap:11px}.goal-emoji{font-size:24px}.reward-row strong{font-size:12px}#toast{left:50%;bottom:95px;font-size:11px;text-align:center;line-height:1.6}.modal-backdrop{padding:14px}.modal{padding:23px;max-height:85dvh}.assistant-prompts{flex-direction:column}.narrow{max-width:none}}
@media(max-width:530px){.welcome{flex-wrap:wrap}.welcome h1{font-size:23px;max-width:330px}.welcome>.button{margin:0 0 0 auto}.welcome:has(+ .hero)>.button{display:none}.hero{grid-template-columns:1fr .85fr;min-height:280px}.hero-copy{padding:25px 0 25px 20px}.hero h2{font-size:25px;line-height:1.5;margin-top:17px}.hero p{font-size:9px;line-height:1.9}.hero-pill{font-size:7px;letter-spacing:-.2px}.hero-pill .icon{width:10px}.family-art{min-width:220px;transform:scale(.66);transform-origin:40% 87%;left:-55px}.art-sun{left:5%;top:1px}.cloud-one{top:9px;right:13%}.cloud-two{left:-7%;top:80px}.art-star{right:1%;top:44px}.art-caption{font-size:14px;bottom:12px}.art-plant{bottom:55px}.plant-one{left:1%}.plant-two{right:-4%}.summary-card strong{font-size:17px}.summary-card small{font-size:8px}.summary-card em{font-size:8px}.summary-card{padding:13px 10px}.dashboard-grid{grid-template-columns:1fr}.budget-card,.message-card{grid-row:auto}.schedule-card{order:0}.growth-card{order:1}.budget-card{order:2}.message-card{order:3}.budget-amount strong{font-size:30px}.budget-note{margin-top:20px}.child-card{gap:7px;padding:15px 10px}.child-card>span:nth-child(2)>strong{font-size:11px}.child-card>span:nth-child(2)>small{font-size:7px}.star-tag{font-size:9px;margin-left:0}.child-card>.avatar{width:30px!important;height:30px!important;font-size:21px!important}.child-card .star-tag{position:absolute;right:10px;top:58px}.child-progress{margin-top:21px}.child-progress>div:first-child{font-size:8px}.child-progress b{padding-right:2px}.encouragement{font-size:8px}.message-preview{padding:17px 0}.message-preview strong{font-size:12px}.assistant-mini strong{font-size:11px}.assistant-mini p{font-size:9px}.assistant-mini{padding:17px}.assistant-mini>span{font-size:27px}.date-line>span{display:none}.finance-summary{gap:8px}.finance-summary .card{padding:15px 9px}.finance-summary strong{font-size:15px}.finance-summary .card>small{font-size:9px}.finance-summary strong>small{display:block;margin-top:4px}.finance-controls{gap:8px}.finance-controls>.button{padding:10px;font-size:10px}.finance-controls input{max-width:145px;font-size:11px}.growth-banner{padding:18px 15px}.growth-banner>div:first-child{gap:9px}.growth-banner .avatar{width:42px;height:42px;font-size:26px}.growth-banner h2{font-size:16px}.growth-banner p{font-size:9px;max-width:155px;line-height:1.8}.star-balance strong{font-size:24px}.star-balance span{font-size:9px}.header-actions{gap:7px}.mobile-brand{font-size:19px}.demo-badge{font-size:8px;padding:5px 6px}.mode-switch{font-size:9px;padding:7px}.mode-switch>.icon{width:14px}.topbar{padding:0 19px}.record-grid>div{padding:16px}.calendar-grid{gap:3px}.calendar-day{font-size:12px}.transaction-row{gap:9px}.transaction-row small{font-size:8px}.transaction-row strong{font-size:11px}.transaction-row b{font-size:10px}.filter{font-size:11px;padding:7px 13px}.section-title .text-button{font-size:9px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.mobile-break{display:none}@media(max-width:530px){.mobile-break{display:block}}
/* Keep the home illustration independent of the narrow text column. */
.house{bottom:75px}
@media(max-width:530px){.hero{display:block;min-height:265px}.hero-copy{position:relative;padding:23px 20px;width:100%;z-index:2}.hero h2{font-size:24px;white-space:nowrap;line-height:1.5;margin-top:16px}.hero p{max-width:205px;font-size:9px;line-height:1.9;margin-top:10px;margin-bottom:17px}.hero-pill{font-size:8px;white-space:nowrap;max-width:240px}.family-art{position:absolute;left:auto;right:-65px;bottom:5px;width:260px;height:280px;min-width:0;transform:scale(.60);transform-origin:50% 100%;z-index:1;pointer-events:none}.hero .button{font-size:9px;padding:9px 11px;min-height:34px}.hero-copy .button{position:relative}.art-caption{bottom:7px}.summary-card small{font-size:9px}.summary-card em{font-size:9px}.date-line{margin-bottom:19px}.welcome{margin-bottom:20px}}
@media(max-width:350px){.hero h2{font-size:21px}.hero-pill{font-size:7px}.hero-copy{padding-left:17px}.hero p{font-size:8px;max-width:185px}.family-art{right:-83px;transform:scale(.52)}.header-actions .demo-badge{padding:5px}.mobile-brand{font-size:17px}.mode-switch{font-size:8px}.summary-card strong{font-size:15px}.summary-card small{font-size:8px}.summary-card em{font-size:8px}.hero .button{font-size:8px}}
.auth-page{min-height:100dvh;display:grid;place-items:center;padding:32px 20px;margin:0 auto}.auth-card{background:#fffefb;border:1px solid var(--line);border-radius:27px;width:100%;max-width:465px;padding:34px;box-shadow:0 12px 60px #6e835213}.auth-card>.brand{justify-content:center;margin-bottom:24px}.auth-card>.pill{display:table;margin:0 auto 17px}.auth-card h1{text-align:center;font-size:23px}.auth-description{text-align:center;font-size:12px;line-height:1.9;color:#849277;margin:12px 0 25px}.auth-card .form-field{font-size:12px}.auth-card input{font-size:16px;min-height:46px}.auth-card .button{font-size:13px;min-height:45px}.auth-error{color:#ac5a4d;font-size:12px;line-height:1.7;margin-bottom:12px}.auth-demo-link{display:block;text-align:center;font-size:12px;color:var(--green);margin-top:20px}.auth-card .muted-note{text-align:center}@media(max-width:530px){.auth-page{padding:22px 15px;min-height:100dvh}.auth-card{padding:27px 22px;border-radius:24px}.auth-card h1{font-size:22px}}
