/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.table{display:table}}:root{color:#243b35;font-synthesis:none;background:#f7f8f4;font-family:Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:#fff;border:1px solid #dde4dd;border-radius:8px;padding:10px 14px}button:hover{filter:brightness(.97)}a:focus-visible,button:focus-visible{outline-offset:3px;outline:3px solid #789e72}button:disabled{opacity:.5;cursor:wait}.app{min-height:100vh}.app,aside{display:flex}aside{background:#fff;border-right:1px solid #e3e8df;flex-direction:column;flex-shrink:0;width:245px;height:100vh;padding:36px 22px;position:sticky;top:0}.brand{color:#294f3e;align-items:center;gap:12px;font-size:36px;text-decoration:none;display:flex}.brand span{letter-spacing:-.5px;font-size:19px;font-weight:700}.brand small{letter-spacing:1.8px;color:#8a968b;margin-top:7px;font-size:8px;display:block}.navlabel{letter-spacing:1.4px;color:#8b968d;margin:42px 10px 16px;font-size:10px}nav .navlabel{margin-top:32px}nav button{text-align:left;background:0 0;border:0;align-items:center;gap:12px;width:100%;margin:6px 0;padding:12px 10px;font-size:13px;display:flex}nav button.active{color:#31573b;background:#edf3e9;font-weight:700}.avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:35px;height:35px;font-size:13px;font-style:normal;font-weight:600;display:inline-flex}.arrow{color:#849384;margin-left:auto}.sidebar-note{background:#f6f7ef;border-radius:12px;margin-top:auto;padding:22px 18px}.sidebar-note>span{color:#81966c;font-size:27px}.sidebar-note strong{margin-top:12px;font-family:Georgia,serif;font-size:21px;font-weight:400;line-height:1.5;display:block}.sidebar-note p{color:#849084;font-size:12px;line-height:1.7}.foot{color:#98a096;margin:24px 6px 0;font-size:10px}main{width:100%;min-width:0;max-width:1600px;margin:0 auto;padding:0 42px}header{border-bottom:1px solid #e2e7dd;justify-content:space-between;align-items:center;height:94px;display:flex}header>span{letter-spacing:1.7px;color:#869184;font-size:10px}.avatars{display:flex}.avatars .avatar{border:3px solid #f7f8f4;width:37px;height:37px;margin-left:-6px}.intro{justify-content:space-between;align-items:center;gap:20px;padding:40px 0 30px;display:flex}.eyebrow{letter-spacing:1.8px;color:#809071;font-size:9px;font-weight:700}h1{letter-spacing:-1.2px;margin:12px 0;font-family:Georgia,serif;font-size:39px;font-weight:400}p{color:#819083;font-size:13px;line-height:1.6}.intro p{margin:0}.primary{color:#fff;white-space:nowrap;background:#355b43;border-color:#355b43;padding:13px 18px;font-size:12px}.stats{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:30px;display:grid}.stat{text-align:left;border-color:#e5e9e0;align-items:center;gap:11px;padding:17px 14px;display:flex}.stat.selected{border-color:#6b8962}.stat strong{font-size:13px;display:block}.stat div>span{color:#91998e;margin-top:7px;font-size:10px;display:block}.calendar{background:#fff;border:1px solid #e0e6db;border-radius:13px;overflow:hidden}.toolbar{justify-content:space-between;align-items:center;gap:20px;padding:25px 25px 20px;display:flex}h2{margin:7px 0;font-family:Georgia,serif;font-size:19px;font-weight:400}.controls{align-items:center;gap:6px;display:flex}.controls>button{font-size:12px}.toggle{background:#f2f4ee;border-radius:8px;margin-left:12px;padding:3px;display:flex}.toggle button{background:0 0;border:0;padding:7px 14px;font-size:11px}.toggle button.on{background:#fff;box-shadow:0 1px 4px #0001}.legend{color:#879381;gap:18px;padding:0 25px 22px;font-size:10px}.legend,.legend>span{align-items:center;display:flex}.legend>span{gap:6px}.dot{filter:brightness(.8);border-radius:50%;width:7px;height:7px}.legend small{margin-left:auto;font-size:9px}.week{border-top:1px solid #e7ebe2;grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.day{border-right:1px solid #e7ebe2;min-width:0}.day:last-child{border:0}.dayhead{text-align:center;background:#fcfcfa;border-bottom:1px solid #e7ebe2;height:88px;padding:16px;position:relative}.dayhead>span{text-transform:uppercase;color:#8d9789;letter-spacing:1px;font-size:9px;display:block}.dayhead strong{justify-content:center;align-items:center;width:34px;height:34px;margin-top:7px;font-size:23px;font-weight:400;display:inline-flex}.today .dayhead strong{color:#fff;background:#385c43;border-radius:50%}.dayhead small{color:#57774c;font-size:7px;position:absolute;top:9px;right:7px}.daybody{min-height:280px;padding:9px 7px}.event{text-align:left;overflow-wrap:anywhere;border:0;border-radius:7px;width:100%;margin-bottom:8px;padding:12px 10px;font-size:10px;line-height:1.6;display:block}.event-top{opacity:.8;justify-content:space-between;font-size:9px;display:flex}.event strong{margin:4px 0;font-size:12px;display:block}.event small,.event>span:not(.event-top){font-size:9px;display:block}.event small{margin-top:6px}.dayadd{color:#a2af98;opacity:.5;background:0 0;border:1px dashed #dfe5d7;width:100%;padding:8px}.dayadd:hover{opacity:1}.calendarfoot{color:#939b8f;border-top:1px solid #e7ebe2;justify-content:space-between;padding:15px 22px;font-size:9px;display:flex}.bottom{align-items:center;gap:40px;padding:35px 0 30px;display:flex}.bottom>div:first-child{min-width:230px}.bottom h2{font-size:24px}.bottom p{font-size:11px}.highlights{flex-wrap:wrap;flex:1;gap:10px;display:flex}.highlights .event{max-width:200px}.empty-note{color:#748366;background:#eff2e7;border:1px dashed #d7deca;border-radius:10px;width:100%;padding:20px 28px;font-size:12px;line-height:1.9}.empty-note span{opacity:.8;font-size:11px}footer{color:#95a08f;border-top:1px solid #e4e8df;justify-content:space-between;padding:20px 0 30px;font-size:11px;display:flex}footer span{font-family:Georgia,serif;font-style:italic}.overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:30;background:#15261e77;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:540px;max-height:94vh;padding:26px;overflow:auto;box-shadow:0 20px 90px #0003}.modalhead{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.modalhead h2{font-size:26px}.modalhead button{border:0;padding:2px 10px;font-size:25px}label{margin:14px 0;font-size:12px;font-weight:600;display:block}input,select,textarea{color:#243b35;background:#fbfcf9;border:1px solid #d9e1d5;border-radius:7px;width:100%;margin-top:7px;padding:11px;font-size:13px}textarea{resize:vertical;min-height:70px}.fields{gap:12px;display:flex}.fields label{flex:1;min-width:0}.check{align-items:center;gap:10px;display:flex}.check input{width:auto;margin:0}.modalactions{justify-content:flex-end;gap:9px;margin-top:25px;display:flex}.danger{color:#a44c3e;margin-right:auto}.error{color:#963e2b;background:#fbece7;border-radius:8px;margin-bottom:12px;padding:14px;font-size:13px}.empty{text-align:center;color:#899582;padding:90px 20px}.list{padding:0 25px}.listday{border-top:1px solid #e6ebe0;gap:25px;padding:15px 0;display:flex}.listday h3{text-transform:capitalize;width:150px;font-size:12px}.listday>div{flex-wrap:wrap;flex:1;gap:10px;display:flex}.listday .event{width:200px}.listday p{font-size:12px}@media (min-width:1500px){.daybody{min-height:340px}}@media (max-width:1150px){aside{width:195px;padding:26px 15px}main{padding:0 24px}.stat{padding:12px 9px}.stat .arrow{display:none}.stat .avatar{width:28px;height:28px}.stat div>span{font-size:9px}.intro h1{font-size:32px}.dayhead{padding:14px 7px}.legend small{display:none}.daybody{padding:7px 4px}.event{padding:9px 6px}}@media (max-width:800px){.app{display:block}aside{border-bottom:1px solid #e0e5db;border-right:0;width:100%;height:auto;padding:18px;position:static}.brand{font-size:30px}.brand small,.foot,.navlabel,.sidebar-note{display:none}nav{gap:5px;margin-top:17px;display:flex;overflow:auto}nav button{white-space:nowrap;gap:6px;width:auto;margin:0;padding:9px;font-size:11px}nav .avatar{width:24px;height:24px;font-size:10px}nav .arrow{display:none}main{padding:0 18px}header{height:65px}header>span{font-size:8px}.intro{flex-wrap:wrap;padding:28px 0 24px}.intro h1{font-size:32px}.stats{grid-template-columns:repeat(2,1fr);gap:9px;margin-bottom:20px}.toolbar{flex-wrap:wrap;padding:20px 16px}.toolbar h2{font-size:18px}.legend{padding:0 16px 18px}.week{border-bottom:1px solid #e7ebe2;grid-template-columns:repeat(7,minmax(125px,1fr));overflow-x:auto}.daybody{min-height:240px}.calendarfoot{gap:10px;font-size:8px}.bottom{padding:28px 0;display:block}.bottom>div:first-child{margin-bottom:20px}.fields{display:block}.modal{padding:20px}.modalactions{flex-wrap:wrap}.listday{display:block}.list{padding:0 16px}.listday .event{width:100%}.modalactions button{font-size:11px}}.navlink{color:inherit;border-radius:8px;align-items:center;gap:12px;margin:6px 0;padding:12px 10px;font-size:13px;text-decoration:none;display:flex}.navlink:hover{background:#edf3e9}@media (max-width:800px){nav .navlink{white-space:nowrap;gap:6px;width:auto;margin:0;padding:9px;font-size:11px}}.family-screen{place-items:center;min-height:90vh;padding:36px 20px;display:grid}.family-card{background:#fff;border:1px solid #e0e6db;border-radius:22px;width:100%;max-width:520px;padding:36px;box-shadow:0 18px 70px #243b3508}.family-card h1{font-size:35px}.family-card p{color:#65776b;font-size:14px}.family-card h2{margin-top:28px}.family-mark{color:#355b43;font-size:52px}.family-link{color:#355b43;text-underline-offset:4px;margin:20px 0;font-size:13px;display:block}.family-small{line-height:1.7;font-size:12px!important}.family-wide{max-width:760px}.family-bar{background:#edf3e9;border-bottom:1px solid #dce5d8;justify-content:space-between;gap:12px;padding:10px 24px;font-size:12px}.family-bar,.family-bar>div{align-items:center;display:flex}.family-bar>div{gap:18px}.family-bar a{color:#355b43}.family-bar button{padding:6px 10px;font-size:12px}.family-member{border-top:1px solid #e3e8df;justify-content:space-between;align-items:center;gap:16px;padding:20px 0;display:flex}.family-member>div:last-child{flex-wrap:wrap;gap:8px;display:flex}.family-member p{margin:5px 0;font-size:12px}.family-invite{background:#edf3e9;border-radius:12px;padding:20px}.family-invite input{border:1px solid #b9cbb4;border-radius:8px;width:100%;margin-bottom:12px;padding:12px;font-size:12px}.family-go{border-radius:8px;margin-top:20px;text-decoration:none;display:inline-block}.family-app-icon{border-radius:18px}@media (max-width:600px){.family-card{padding:26px 22px}.family-card h1{font-size:30px}.family-bar{flex-wrap:wrap;align-items:flex-start;padding:10px 14px}.family-bar>div{flex-wrap:wrap;gap:12px}.family-member{flex-direction:column;align-items:flex-start}.family-screen{padding:22px 14px}}:root{color:#203e43;background:#f4f7fb}body{background:radial-gradient(at 100% 0,#e3f5ee 0,#0000 42%),radial-gradient(at 0 100%,#fff0de 0,#0000 45%),#f4f7fb}.app>aside{background:linear-gradient(165deg,#e5f5ef,#eef1ff 60%,#fff2e5);border-right-color:#cfdedc}.brand{color:#176a60}.primary{background:#147969;border-color:#147969}.primary:hover{background:#106457}.p0{color:#744900;background:#ffe2a9}.p1{color:#613b8d;background:#e4d5ff}.p2{color:#215b49;background:#bfe9d9}.p3{color:#28549a;background:#caddff}.sidebar-note{background:#fff0d6;border:1px solid #f0d8a8}.sidebar-note strong{color:#785523}.sidebar-note p{color:#795f3b}.eyebrow{color:#33766b}header{border-bottom-color:#cfdddf}h1{color:#214d58}.intro{border-radius:0 0 20px 20px}.stat{border-color:#d6e2e8;box-shadow:0 3px 14px #24475b05}.stat:first-child{background:#fff5df}.stat:nth-child(2){background:#f2eaff}.stat:nth-child(3){background:#e5f6ee}.stat:nth-child(4){background:#e9f1ff}.stat.selected{border-color:#168675;box-shadow:0 0 0 2px #16867520}.calendar{border-color:#cfdfdf}.dayhead{background:#edf4fc}.today .dayhead{background:#ddf4eb}.today .dayhead strong{background:#167967}.today{background:#f1fcf7}.calendar .toolbar{background:linear-gradient(100deg,#eaf8f0,#eef2ff)}.navlink.active,nav button.active{color:#145e50;background:#ceeade}.family-bar{background:linear-gradient(100deg,#d9f2e8,#e8e4ff);border-bottom-color:#c6dad4}.family-card{border-color:#cbdcdb}.family-invite{background:#e1f5ed}