@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;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{border:0 solid;box-sizing:border-box;margin:0;padding:0}::file-selector-button{border:0 solid;box-sizing:border-box;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;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);line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}hr{border-top-width:1px;color:inherit;height:0}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-size:1em;font-variation-settings:var(--default-mono-font-variation-settings,normal)}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}:-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{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}button,input,optgroup,select,textarea{background-color:#0000;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}::file-selector-button{background-color:#0000;border-radius:0;color:inherit;font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;opacity:1}: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}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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}.rounded{border-radius:.25rem}}:root{--paper:#f6f8f3;--ink:#20392f;--muted:#758079;--green:#217755;--line:#e4e9df;--white:#fff;--p-primary-500:#27845e;--p-primary-600:#217755;background:var(--paper);color:var(--ink);font-family:Segoe UI,system-ui,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer}a{color:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{letter-spacing:-.035em}h1{font-size:clamp(1.65rem,4vw,2.3rem);font-weight:730;line-height:1.2}h2{font-size:1.45rem;font-weight:700}h3{font-size:1.05rem;font-weight:680}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #8abd9e;outline-offset:3px}.muted{color:var(--muted);font-size:.9rem;line-height:1.65}.small{font-size:.78rem}.eyebrow{color:var(--green);font-size:.65rem;font-weight:750;letter-spacing:.14em;margin-bottom:10px}.stack{display:flex;flex-direction:column;gap:22px}.stack label:not(.checkbox-row){display:flex;flex-direction:column;font-size:.84rem;font-weight:650;gap:9px}.stack .p-inputnumber-input,.stack .p-inputtext,.stack .p-textarea{font-weight:400}.p-button{border-radius:12px!important;font-size:.88rem!important;font-weight:600!important;gap:9px;min-height:44px}.p-inputnumber-input,.p-inputtext,.p-select,.p-textarea{border-radius:10px!important;min-height:46px}.p-dialog{border-radius:20px!important}.p-dialog-content>p{line-height:1.6}.p-message{margin-bottom:16px}.app-shell{margin:auto;max-width:1056px;padding:0 20px}.app-header{border-bottom:1px solid var(--line);height:86px;justify-content:space-between}.app-header,.brand{align-items:center;display:flex}.brand{font-size:1.28rem;font-weight:750;gap:10px;letter-spacing:-.05em;text-decoration:none}.brand img{border-radius:11px}.brand-dot{color:#65a37a}.header-actions{align-items:center;display:flex;gap:2px}.header-actions .p-button{color:var(--muted)}.desktop-label{display:none}.page-heading{align-items:center;display:flex;gap:20px;justify-content:space-between;padding:32px 0 25px}.page-heading .muted{margin-top:10px}.wave{color:#d5af4d;display:inline-block;font-size:1.4rem;margin-left:6px;vertical-align:middle}.header-badge{align-items:center;color:var(--green);display:none;font-size:.8rem;gap:8px}.tab-strip{background:#eaf0e6;border-radius:14px;display:flex;gap:5px;margin:0 0 25px;overflow-x:auto;padding:5px;scrollbar-width:thin}.tab-strip button{align-items:center;background:transparent;border:0;border-radius:10px;color:#68766c;display:flex;flex-shrink:0;font-size:.9rem;font-weight:650;gap:8px;justify-content:center;min-height:46px;padding:10px 24px}.tab-strip button.active{background:var(--white);box-shadow:0 2px 7px #234d2b0a;color:var(--green)}.card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 4px 18px #23392b02;padding:24px}.section-title{align-items:center;display:flex;gap:12px;justify-content:space-between;margin:24px 0 20px}.section-title .eyebrow{font-size:.6rem;margin-bottom:7px}.pill{background:#e8f1de;border-radius:30px;color:var(--green);font-size:.73rem;font-weight:650;padding:7px 13px;white-space:nowrap}.pill.soft{background:#f0f4ee;color:#697f6a}.toolbar{gap:18px}.member-picker,.toolbar{display:flex;flex-direction:column}.member-picker{font-size:.78rem;font-weight:600;gap:7px}.date-controls{align-items:center;display:flex;gap:2px;justify-content:center}.date-controls .p-datepicker{max-width:190px;min-width:0}.date-controls .p-inputtext{background:transparent;border-color:var(--line);font-size:.88rem;width:100%}.date-controls>.p-button{padding:8px}.task-card{margin:auto;max-width:760px;padding:25px}.task-card-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:22px}.round-icon{background:#eaf2e1;border-radius:16px;color:var(--green);display:grid;height:52px;place-items:center;width:52px}.task-card h2{font-size:1.8rem;line-height:1.25;margin-bottom:22px}.task-facts{display:grid;gap:10px;grid-template-columns:1fr 1fr;margin-bottom:26px}.fact{align-items:center;background:#f6f7f2;border-radius:15px;color:#74816c;display:flex;gap:11px;padding:17px 13px}.fact.reward{background:#fcf7e8;color:#ae8c36}.fact span{color:#7d806e;display:block;font-size:.65rem;margin-bottom:4px}.fact strong{color:var(--ink);font-size:1.45rem;font-weight:700;line-height:1.2}.task-description{font-size:1rem;line-height:1.8;margin-bottom:25px;overflow-wrap:anywhere;white-space:pre-wrap}.task-footnote{align-items:center;border-top:1px solid var(--line);color:var(--muted);display:flex;font-size:.74rem;gap:8px;margin-top:24px;padding-top:23px}.photo-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.photo-tile{min-width:0;position:relative}.photo-tile>button:first-child{background:#f2f5ef;border:0;border-radius:13px;display:block;overflow:hidden;padding:0;width:100%}.photo-tile img{display:block;height:150px;-o-object-fit:cover;object-fit:cover;width:100%}.remove-photo{background:#ffffffed;border:0;border-radius:50%;color:#874f42;display:grid;height:36px;place-items:center;position:absolute;right:6px;top:6px;width:36px}.full-photo{display:block;margin:auto;max-height:75vh;max-width:100%;-o-object-fit:contain;object-fit:contain}.gallery-navigation{align-items:center;display:flex;gap:15px;justify-content:center;margin-top:10px}.photo-dialog .p-dialog-content{padding:12px}.editor-heading,.photo-heading{align-items:center;display:flex;gap:10px;justify-content:space-between}.photo-heading .muted{font-size:.77rem;margin-top:5px}.photo-count{background:var(--paper);border-radius:50%;display:grid;font-size:.8rem;height:30px;min-width:30px;place-items:center}.form-columns{display:grid;gap:14px;grid-template-columns:1fr 1fr}.form-columns>*{min-width:0}.form-columns .p-inputnumber-input{width:100%}.upload-actions{display:flex;gap:10px}.upload-button{align-items:center;background:#f6faf2;border:1px dashed #a3bfa7;border-radius:12px;color:var(--green);cursor:pointer;display:flex!important;flex-direction:row!important;font-size:.8rem!important;gap:8px;justify-content:center;min-height:48px;padding:12px 18px}.upload-button input{height:1px;opacity:0;position:absolute;width:1px}.upload-button:focus-within{outline:3px solid #8abd9e}.upload-button.secondary{background:#fff;border-color:var(--line);color:#68766c}.evaluation-box{background:#f6f8f2;border-radius:13px;padding:18px}.checkbox-row{align-items:center;display:flex;font-size:.9rem;font-weight:650;gap:10px}.evaluation-box p{color:var(--muted);font-size:.77rem;line-height:1.6;margin:9px 0 0 32px}.editor-actions{align-items:center;display:flex;gap:8px;justify-content:space-between}.editor-actions>.p-button:first-child{flex:1}.dialog-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.empty-card{background:#ffffff80;border:1px dashed #d5dfcf;border-radius:22px;color:var(--muted);padding:44px 20px;text-align:center}.empty-card>.round-icon,.empty-card>svg{color:#7ea47c;margin:0 auto 18px}.empty-card h2,.empty-card h3{color:var(--ink);margin-bottom:12px}.empty-card p{font-size:.9rem;line-height:1.7;margin-bottom:18px}.history-summary{text-align:center}.history-summary .round-icon{margin:0 auto 15px}.reward-total{color:var(--green);font-size:2.5rem;font-weight:750;margin:14px 0}.history-summary .muted{margin:0 auto 24px;max-width:420px}.balance-card{background:#237455;border-radius:22px;color:#fff;margin-bottom:20px;min-height:205px;overflow:hidden;padding:27px;position:relative}.balance-card:after{border:45px solid hsla(0,0%,100%,.024);border-radius:50%;content:"";height:260px;pointer-events:none;position:absolute;right:-80px;top:-80px;width:260px}.balance-label{color:#d3e5d9;font-size:.85rem}.balance-number{font-size:clamp(2.4rem,9vw,3.5rem);font-weight:730;letter-spacing:-.05em;margin:9px 0 5px;overflow-wrap:anywhere;position:relative;z-index:1}.balance-card p:last-child{color:#c4ddce;font-size:.76rem}.pig-icon{opacity:.16;position:absolute;right:22px;top:35px}.balance-edit{background:#ffffff18!important;border-color:#ffffff30!important;color:#fff!important;margin-top:22px!important;min-height:38px}.charts-grid{display:grid;gap:20px;grid-template-columns:1fr;margin-bottom:20px}.chart-card{padding:22px 18px}.chart-heading{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.chart-heading>div:first-child{align-items:center;display:flex;gap:9px}.chart-heading svg{color:#5f846a}.month-nav{align-items:center;display:flex;font-size:.76rem;gap:0;text-transform:capitalize}.month-nav .p-button{min-width:30px;padding:5px}.line-chart{height:220px}.line-chart>.p-chart,.pie-chart>.p-chart{height:100%;position:relative}.chart-caption{color:var(--muted);font-size:.68rem;line-height:1.6;margin-top:18px}.chart-empty{color:#8a9789;flex-direction:column;font-size:.84rem;gap:16px;min-height:190px;text-align:center}.chart-empty,.pie-layout{align-items:center;display:flex;justify-content:center}.pie-layout{flex-wrap:wrap;gap:24px}.pie-chart{height:170px;position:relative;width:170px}.pie-center{align-items:center;display:flex;flex-direction:column;inset:0;justify-content:center;pointer-events:none;position:absolute}.pie-center strong{font-size:1.7rem}.pie-center span{color:var(--muted);font-size:.7rem}.pie-legend{display:flex;flex-direction:column;font-size:.8rem;gap:17px;min-width:120px}.pie-legend>span{align-items:center;display:flex;gap:8px}.pie-legend strong{margin-left:auto}.dot{border-radius:50%;display:inline-block;height:9px;width:9px}.dot.green{background:#258260}.dot.peach{background:#e3a48c}.ledger-card{padding:22px 18px}.ledger-list{list-style:none;margin:0;padding:0}.ledger-list li{align-items:center;border-top:1px solid #f0f2ec;display:flex;gap:12px;padding:18px 0}.movement-icon{border-radius:12px;display:grid;flex-shrink:0;height:37px;place-items:center;width:37px}.movement-icon.positive{background:#edf5e8;color:#397d4b}.movement-icon.negative{background:#faf0e9;color:#b28167}.movement-text{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.movement-text strong{font-size:.82rem;font-weight:600;overflow-wrap:anywhere}.movement-text>span{color:var(--muted);font-size:.68rem}.movement-amount{font-size:.88rem;white-space:nowrap}.movement-amount.positive{color:#27805a}.text-link{background:none;border:0;color:var(--green);font-size:.7rem;min-height:25px;padding:0;text-align:left;text-decoration:underline}.user-grid{display:grid;gap:14px}.user-card{align-items:center;display:flex;gap:15px;padding:20px}.user-card>.p-button{margin-left:auto}.avatar{background:#edf1df;border-radius:15px;color:#618251;display:grid;font-size:1.3rem;font-weight:700;height:46px;place-items:center;width:46px}.user-card .muted{font-size:.8rem}.app-footer{border-top:1px solid var(--line);color:#92a08f;display:flex;font-size:.7rem;gap:16px;justify-content:space-between;margin:40px 0 24px;padding-top:22px}.app-footer span:first-child{font-weight:700}.loading-screen{align-items:center;color:var(--muted);display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:100vh}.loading-line{color:var(--green);font-size:.75rem;margin:10px 0}.login-screen{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100dvh;overflow:hidden;padding:32px 20px;position:relative}.login-card{background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:0 15px 60px #37542b08;max-width:430px;padding:32px 25px;position:relative;width:100%;z-index:1}.login-card>img{margin-bottom:25px}.login-card h1{font-size:2.7rem;letter-spacing:-.06em;margin:0 0 15px}.login-card h1 span{color:#75a36b}.login-card>.muted{margin-bottom:28px}.login-help{color:var(--muted);font-size:.73rem;margin-top:24px;text-align:center}.login-footer{color:#8a9a87;font-size:.76rem;margin-top:25px;text-align:center}.login-decoration{background:#e7eedc;border-radius:50%;color:#aec198;display:grid;height:320px;left:calc(50% - 330px);place-items:center;position:absolute;top:calc(50% - 360px);transform:rotate(-20deg);width:320px}@media(min-width:640px){.app-shell{padding:0 36px}.desktop-label{display:inline}.header-badge{display:flex}.page-heading{padding:40px 0 30px}.toolbar{align-items:flex-end;flex-direction:row;justify-content:space-between}.member-picker{width:240px}.task-card{padding:36px}.task-facts{gap:16px}.fact{padding:20px}.fact span{font-size:.75rem}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-tile img{height:180px}.task-editor{margin:auto;max-width:760px;padding:30px}.editor-actions>.p-button:first-child{flex:initial;min-width:220px}.user-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.balance-card{padding:32px}.balance-edit{bottom:27px;position:absolute;right:30px}.pig-icon{right:40px;top:25px}.ledger-card{padding:27px}.ledger-list li{gap:18px}.movement-text strong{font-size:.9rem}.movement-amount{font-size:1rem}.movement-icon{height:42px;width:42px}.login-card{padding:40px}}@media(min-width:900px){.charts-grid{grid-template-columns:1.2fr 1fr}.chart-card{padding:24px}.chart-heading{min-height:45px}.pie-layout{flex-direction:column;gap:20px}.pie-legend{flex-direction:row;gap:25px;justify-content:center;width:100%}.pie-legend strong{margin-left:5px}.tab-strip button{padding:10px 30px}.app-header{height:92px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
