@charset "UTF-8";
:root{color:#203b32;background:#f5f7f4;--navy:#17664e;--teal:#197458;--border:#dfe7e1;--muted:#66796f}a{color:#17664e}button,.button{background:#17664e;min-height:44px}button:hover,.button:hover{background:#0f513d}button.secondary,.button.secondary{background:#eaf1ec;color:#265e49}label{color:#365346}input,select,textarea{font-size:16px;color:#213c31;border-color:#c7d5cb}input[type=checkbox]{accent-color:#17664e}.sidebar{background:#fff;color:#244e3c;border-right:1px solid var(--border);overflow-y:auto;padding-top:24px}.brand small{color:#6a8274}.brand-icon{background:#e0eedf;color:#17664e;border-radius:14px}.nav-label{margin-top:30px;color:#768a7c}.sidebar nav a{color:#62766b;padding:10px 12px}.sidebar nav a:hover,.sidebar nav a.active{background:#e9f2e9;color:#174f37;box-shadow:none}.sidebar-bottom{font-size:.85rem}.workspace{max-width:1560px}.topline{gap:12px;color:#63776b}.account-link{text-align:right;overflow-wrap:anywhere}.page-title{letter-spacing:-1px}.page-header p{margin-bottom:0}.bottom-nav{display:none}.notice{background:#edf4ed;color:#365b43}.metric.balance{background:#185f46;border-color:#185f46}.metric.balance span,.metric.balance small{color:#d1e6d6}.collection-symbol{color:#286945;background:#edf4e6}.tabs{display:flex;flex-direction:row;gap:6px;margin:24px 0;overflow:auto}.tabs a{color:#5d7364;padding:10px 18px;white-space:nowrap}.tabs a[aria-current=page]{background:#e4eee2;color:#245b37;font-weight:700}.pill.late{background:#fce9e7;color:#ab3434}.pill.soon{background:#fff0d5;color:#8a5a08}.pill.later{background:#e8f0fa;color:#345f94}.amount-late{color:#af3433}.amount-soon{color:#925e09}.amount-later{color:#2a64a1}.full-width{width:100%}.centered{text-align:center}.accent{color:#25744c}.public-shell{max-width:980px;margin:auto;padding:24px}.public-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.public-main{max-width:470px;margin:65px auto 40px}.public-main h1{font-size:3rem;letter-spacing:-1.7px;line-height:1.12;margin-top:22px}.public-main>.muted{font-size:1.08rem;line-height:1.7}.public-footer{text-align:center;color:var(--muted);font-size:.8rem;padding:25px}.landing-art{border-radius:80px 28px 80px 28px;background:radial-gradient(circle at 70% 25%,#eff4cb 0,transparent 45%),#dbe9d8;min-height:170px;margin:28px 0;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;padding:30px}.landing-art span{padding:10px 18px;border-radius:22px;background:#ffffffc9;color:#2a6244;box-shadow:0 7px 14px #214d3510}.landing-art span:nth-child(2){font-size:1.4rem;font-weight:700;transform:rotate(-7deg)}.benefits{margin-top:35px;padding-top:18px;border-top:1px solid var(--border)}.benefits h3{font-size:1rem}.benefits p{font-size:.9rem;color:var(--muted)}.back-link{display:inline-block;margin-top:24px}.due-summary{background:linear-gradient(120deg,#185f46,#277651);color:white;border-radius:23px;padding:30px;margin:24px 0}.due-summary p{color:#deeddf;margin-bottom:8px}.hero-amount{display:block;font-size:3rem;letter-spacing:-1.7px;line-height:1.3}.due-summary .summary-foot{font-size:.85rem;margin-top:16px}.child-filter{margin:20px 0}.dues-group{border:0;background:transparent;margin-top:20px}.dues-group>summary{padding:14px 0;font-size:1.16rem}.dues-group>div{padding:0}.dues-grid,.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.due-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:22px;min-width:0}.due-card h3{margin-top:10px}.due-card .due-amount{display:block;font-size:2.1rem;letter-spacing:-.8px;margin:15px 0}.due-card p{margin-bottom:10px}.due-card .child-name{font-size:.85rem;color:var(--muted)}.due-card details,.quiet{border:0;border-top:1px solid var(--border);border-radius:0;margin:16px 0 0}.due-card summary,.quiet summary{padding:14px 0;font-size:.9rem}.due-card details>div,.quiet>div{padding:0;font-size:.9rem}.compact{margin:0 0 18px}.compact h2{margin:0}.people-list{list-style:none;padding:0;margin:12px 0}.people-list li{display:flex;align-items:center;gap:12px;padding:10px 0}.people-list small,.sibling-row small{display:block;color:var(--muted);font-size:.85rem}.avatar{width:38px;height:38px;border-radius:50%;background:#eef2e5;display:grid;place-items:center;font-weight:700;flex-shrink:0}.child-account>.actions{font-size:.85rem;margin:12px 0 26px}.sibling-row{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:12px 0}.sibling-row a{font-size:.85rem}.preferences-form{margin-top:26px;padding-top:12px;border-top:1px solid var(--border)}.check-row{display:flex;align-items:flex-start;gap:8px;line-height:1.5;padding:8px 0}.check-row input{flex-shrink:0;margin-top:3px}.preferences-form .check-row{font-weight:400}fieldset{border:1px solid var(--border);border-radius:10px;margin:0 0 24px;padding:14px}legend{font-weight:600;font-size:.9rem}.request-card{overflow-wrap:anywhere}.request-card h3{font-size:1.1rem}.expense-row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.expense-row>div{flex:1;min-width:0}.expense-row>strong{font-size:1.3rem;white-space:nowrap}.expense-row>details{width:100%}.expense-row h3{font-size:1rem;margin:8px 0}.payment-list details>summary{display:flex;justify-content:space-between;gap:14px}.payment-list summary strong{display:block}.payment-list summary small{display:block;color:var(--muted)}.payment-list .payment-total{font-size:1.15rem;white-space:nowrap}summary:focus-visible{outline:3px solid #dcac38;outline-offset:3px}.menu-grid .panel{margin:0}h2,h3,p,summary,.panel,.due-card{overflow-wrap:anywhere}button{flex-shrink:0}.collection-card{min-width:0}
@media(max-width:760px){.sidebar{position:static;border-right:0;border-bottom:1px solid var(--border);padding:16px 20px;overflow:visible}.sidebar nav{display:none}.workspace{padding:14px 18px 100px}.topline{font-size:.78rem}.local-note{font-size:.7rem}.bottom-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));position:fixed;z-index:10;bottom:0;left:0;right:0;margin:0;gap:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:#fffffffa;box-shadow:0 -4px 20px #243e3107}.bottom-nav a{color:#647a6b;white-space:normal;text-align:center;font-size:.79rem;padding:13px 5px;min-height:46px;font-weight:600}.bottom-nav a[aria-current=page]{background:#e7f0e4;color:#245f3e}.bottom-nav a:hover{background:#e7f0e4;color:#245f3e}.page-title{font-size:1.85rem;margin-top:24px}.page-header{padding:22px 0 12px}.dues-grid,.menu-grid{grid-template-columns:1fr}.due-summary{padding:24px;margin:20px 0;border-radius:20px}.hero-amount{font-size:2.9rem}.due-card{padding:20px}.due-card .due-amount{font-size:2rem}.public-shell{padding:20px}.public-main{margin-top:42px}.public-main h1{font-size:2.7rem}.public-header>a:not(.brand){font-size:.85rem}.public-header .brand{font-size:1.12rem}.tabs{gap:0}.tabs a{padding:11px 13px;font-size:.84rem}.collection-card{padding:20px}.metrics{gap:10px}.metric{padding:16px}.metric span{font-size:.82rem}.metric strong{font-size:1.25rem}.collection-card footer{flex-wrap:wrap}.section-heading{gap:12px}.table-wrap{border:0;overflow:visible;background:transparent}table,tbody,tr,td{display:block;width:100%}thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}tr{background:white;border:1px solid var(--border);border-radius:12px;margin:12px 0;padding:10px 16px}td{border:0;padding:8px 0;font-size:.9rem}td[data-label]::before{content:attr(data-label);display:block;font-size:.74rem;color:var(--muted);font-weight:600;margin-bottom:5px}td.number,th.number{text-align:left;white-space:normal}.import-table .title{min-width:0;max-width:none}.cell-select{min-width:0;max-width:100%}td input,td select{max-width:100%}.table-wrap table .amount-input{max-width:none}.panel,.collection-card,details{min-width:0}.actions>form{max-width:100%}pre{padding:12px}.sibling-row{align-items:flex-start}.expense-row>strong{font-size:1.15rem}.page-footer{padding-top:24px}.status-row .pill{white-space:normal}.form-grid{gap:0}.payment-list details>summary{padding:17px 15px}.payment-list details>div{padding:0 15px 18px}.pill{max-width:100%;white-space:normal}}
