@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;650;700;800&display=swap";*{box-sizing:border-box}body{color:#192b29;-webkit-font-smoothing:antialiased;background:#e9eeed;margin:0;font-family:Be Vietnam Pro,system-ui,sans-serif;font-size:14px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}:is(button:focus-visible,a:focus-visible){outline-offset:3px;outline:3px solid #70b3ee}a{color:inherit}button{border:0}input{min-width:0}.phone-shell{background:#f7f8fa;max-width:480px;min-height:100dvh;margin:0 auto;position:relative;box-shadow:0 0 70px #183b2e0b}header{height:92px;padding:calc(23px + env(safe-area-inset-top)) 24px 20px;background:#f7f8fa;justify-content:space-between;align-items:center;display:flex}.header-brand,.login-top{letter-spacing:-.5px;align-items:center;gap:10px;font-size:15px;font-weight:700;display:flex}.brand-icon{color:#fff;background:#12745e;border-radius:15px;place-items:center;width:45px;height:45px;display:grid}.brand-icon.small{border-radius:11px;width:34px;height:34px}.avatar{color:#3d6a59;background:#e5ede8;border:3px solid #fff;border-radius:50%;width:36px;height:36px;font-weight:600}.content{padding:16px 24px 125px}.eyebrow{letter-spacing:1.8px;color:#86948e;font-size:9px;font-weight:650}.greeting h1,h1{letter-spacing:-1.2px;margin:10px 0;font-size:29px;line-height:1.35}.greeting p{color:#8a9391;margin:0 0 25px;font-size:11px;line-height:1.7}.progress-card{color:#fff;background:#173d33;border-radius:22px;padding:23px;position:relative;overflow:hidden;box-shadow:0 7px 13px #163f3310}.progress-card:after{content:"";pointer-events:none;border:1px solid #ffffff08;border-radius:50%;width:180px;height:180px;position:absolute;top:-40px;right:-58px}.progress-top{justify-content:space-between;align-items:center;display:flex}.mini-label{letter-spacing:1.8px;color:#bdd4c9;font-size:8px}.progress-top h2{letter-spacing:-1px;margin:10px 0 1px;font-size:38px;line-height:1.2}.progress-top h2 span{color:#9bb8ab;font-size:21px;font-weight:400}.progress-top p{color:#bfcec8;margin:7px 0 0;font-size:10px}.progress-ring{background:conic-gradient(#a6d3b4 var(--progress),#35594c 0);border-radius:50%;place-items:center;width:76px;height:76px;margin-right:3px;display:grid}.progress-ring>div{color:#c1d9cb;background:#173d33;border-radius:50%;place-items:center;width:64px;height:64px;display:grid}.progress-track{background:#426155;border-radius:4px;height:4px;margin-top:23px;overflow:hidden}.progress-track i{background:#b7d6b7;height:100%;transition:width .3s;display:block}.progress-caption{color:#adc3b7;margin-top:10px;font-size:9px;display:block}.date-heading{align-items:center;gap:11px;margin:29px 0 20px;display:flex}.date-icon{color:#50735d;background:#ecf0ed;border-radius:12px;place-items:center;width:38px;height:40px;display:grid}.date-heading strong{text-transform:capitalize;font-size:13px;display:block}.date-heading span{color:#929b98;margin-top:5px;font-size:10px;display:block}.date-controls{align-items:center;gap:3px;margin-left:auto;display:flex}.icon-btn{color:#657b70;background:0 0;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}.date-picker{color:#658073;place-items:center;width:28px;height:30px;display:grid;position:relative}.date-picker input{opacity:0;cursor:pointer;width:100%;position:absolute;inset:0}.date-picker input::-webkit-calendar-picker-indicator{cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.filters{gap:6px;margin-bottom:20px;display:flex}.filters button{color:#84928c;white-space:nowrap;background:0 0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 11px;font-size:10px;display:flex}.filters button.active{color:#24745a;background:#e8f0eb;font-weight:600}.filters button span{background:#e9edeb;border-radius:5px;place-items:center;min-width:18px;height:17px;font-size:9px;display:inline-grid}.product-list{flex-direction:column;gap:12px;display:flex}.product{background:#fff;border:1px solid #edf0ef;border-radius:17px;align-items:center;gap:12px;min-height:96px;padding:19px 14px;display:flex;box-shadow:0 3px 7px #1b413002}.product-number{color:#7a907b;background:#f1f4ef;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:40px;font-size:12px;display:grid}.purchased .product-number{color:#7a97bc;background:#eef3fa}.product-info{flex:1;min-width:0}.product-category{letter-spacing:1.2px;color:#a1aaa5;font-size:7px;font-weight:600}.product h3{overflow-wrap:anywhere;margin:5px 0;font-size:12px;font-weight:600;line-height:1.65}.product-actions{flex-direction:column;align-self:center;align-items:center;gap:7px;min-width:94px;display:flex}.buy{color:#fff;background:#238760;border-radius:9px;justify-content:center;align-items:center;gap:4px;width:100%;padding:10px;font-size:10px;font-weight:500;display:flex}.buy.bought{background:#347ed4}.product-actions small{color:#3e83cd;align-items:center;gap:3px;font-size:8px;display:flex}.product-link{color:#8c9d95;align-items:center;gap:3px;font-size:9px;text-decoration:none;display:flex}.product-actions:has(.delete){min-width:28px}.delete{color:#bb6a66;background:#fff3f2;border-radius:9px;padding:8px}.list-foot{color:#a2ada5;justify-content:center;gap:5px;margin-top:25px;font-size:8px;line-height:1.7;display:flex}.bottom-nav{width:100%;max-width:480px;height:calc(81px + env(safe-area-inset-bottom));padding:9px 24px calc(12px + env(safe-area-inset-bottom));z-index:10;background:#fff;border-top:1px solid #edf0ed;justify-content:space-between;display:flex;position:fixed;bottom:0}.bottom-nav button{color:#a1aaa6;background:0 0;flex-direction:column;align-items:center;gap:4px;width:86px;font-size:9px;display:flex;position:relative}.bottom-nav button>span{border-radius:11px;place-items:center;width:49px;height:30px;display:grid}.bottom-nav .selected{color:#217251;font-weight:600}.bottom-nav .selected>span{background:#e9f2eb}.bottom-nav i{background:0 0;border-radius:50%;width:3px;height:3px;margin-top:1px}.add-button{color:#2b7856;background:#edf5ef;border:1px dashed #a5c2af;border-radius:12px;justify-content:center;align-items:center;gap:7px;width:100%;margin-bottom:16px;padding:13px;font-size:12px;display:flex}.empty{text-align:center;color:#91a094;padding:35px 15px 40px}.empty-icon{color:#7e9b85;background:#eaf0eb;border-radius:23px;place-items:center;width:70px;height:70px;margin:0 auto 16px;display:grid}.empty h3{color:#58715f;font-size:13px;font-weight:500}.empty p{font-size:11px;line-height:1.9}.primary{color:#fff;background:#1c7356;border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;padding:17px;font-size:13px;font-weight:600;display:flex}.login{min-height:100dvh;padding:30px 28px}.login-top{justify-content:center;margin-top:15px}.login-art{place-items:center;height:192px;margin:18px 0 8px;display:grid;position:relative}.bag{color:#28765b;background:#e4eee4;border:8px solid #eef3eb;border-radius:32px;place-items:center;width:113px;height:113px;display:grid;position:relative;transform:rotate(-9deg)}.bag>span{color:#fff;background:#24765a;border:4px solid #f7f8fa;border-radius:50%;padding:6px;position:absolute;bottom:2px;right:-14px}.orbit{border:1px solid #e5ebe4;border-radius:50%;width:190px;height:190px;position:absolute;transform:scaleY(.75)rotate(-30deg)}.orbit.two{width:250px;height:250px;transform:scaleY(.7)rotate(35deg)}.float-dot{background:#a7c3a4;border-radius:4px;width:10px;height:10px;position:absolute;top:45px;left:65px;transform:rotate(20deg)}.login-copy h1{margin-top:12px;font-size:31px;line-height:1.5}.login-copy p{color:#94a098;margin-bottom:25px;font-size:11px;line-height:1.8}form label{color:#4f6258;margin-bottom:18px;font-size:11px;font-weight:500;display:block}form input{color:#233c30;background:#fff;border:1px solid #e3e9e3;border-radius:11px;outline:0;width:100%;margin-top:9px;padding:15px 14px;font-size:13px;display:block}form input:focus{border-color:#70a584;box-shadow:0 0 0 3px #e0ede3}form input::placeholder{color:#b0b9b2;font-size:11px}.password-field{position:relative}.password-field input{padding-right:48px}.password-field button{color:#9aa99d;background:0 0;position:absolute;top:14px;right:12px}.login-foot{text-align:center;color:#a2afa4;justify-content:center;align-items:center;gap:6px;margin-top:30px;font-size:9px;display:flex}.account-card{text-align:center;background:#fff;border-radius:20px;margin:25px 0;padding:30px}.avatar.large{place-items:center;width:60px;height:60px;margin:auto;font-size:24px;display:grid}.account-card h2{margin-top:18px;font-size:17px}.account-card p{color:#91a093;font-size:12px}.role{color:#608267;background:#e8f0e7;border-radius:7px;padding:7px 10px;font-size:10px;display:inline-block}.setting{text-align:left;color:#526c5a;background:#fff;border-radius:13px;align-items:center;gap:13px;width:100%;margin-bottom:10px;padding:20px 17px;font-size:12px;display:flex}.setting span{flex:1}.logout{color:#bd6a64}.explain{color:#94a095;padding:10px;font-size:10px;line-height:1.9}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#10291d70;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:480px;padding:12px 25px calc(25px + env(safe-area-inset-bottom));background:#f8faf8;border-radius:26px 26px 0 0;max-height:92dvh;overflow:auto}.sheet-handle{background:#dbe4db;border-radius:4px;width:35px;height:4px;margin:0 auto 20px}.sheet-title{justify-content:space-between;align-items:center;display:flex}.sheet-title h2{letter-spacing:-.6px;font-size:20px}.sheet>p{color:#8a9c8f;margin-bottom:23px;font-size:11px;line-height:1.9}.error{color:#a34a3d;background:#fff0ed;border-radius:10px;margin-bottom:14px;padding:12px;font-size:11px;line-height:1.7}.text-btn{color:inherit;background:0 0;margin-left:8px;font-size:11px;text-decoration:underline}.toast{color:#fff;z-index:40;background:#254f3b;border-radius:12px;align-items:center;gap:7px;width:max-content;max-width:90vw;padding:13px 20px;font-size:11px;display:flex;position:fixed;bottom:105px;left:50%;transform:translate(-50%);box-shadow:0 5px 30px #17392230}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (min-width:600px){.phone-shell{border:1px solid #fff;border-radius:30px;min-height:calc(100dvh - 56px);margin:28px auto;overflow:hidden}.bottom-nav{border-radius:0 0 30px 30px;width:478px;bottom:28px}.login{min-height:calc(100dvh - 56px)}}@media (max-width:360px){.content{padding-left:16px;padding-right:16px}.product{gap:9px;padding:16px 10px}.product-actions{min-width:88px}.product h3{font-size:11px}.greeting h1{font-size:26px}}.duplicate-warning{color:#775527;background:#fff6e7;border:1px solid #efd8a9;border-radius:14px;margin:16px 0 0;padding:16px}.duplicate-title{align-items:center;gap:8px;font-size:13px;display:flex}.duplicate-warning p{overflow-wrap:anywhere;margin:10px 0 16px;font-size:11px;line-height:1.9}.duplicate-actions{align-items:stretch;gap:9px;display:flex}.duplicate-actions .primary{flex:1;padding:13px 9px;font-size:11px}.cancel-button{color:#806746;background:#fffdf7;border:1px solid #e3d4ba;border-radius:11px;padding:13px 18px;font-size:11px}.month-calendar{background:#fff;border:1px solid #e6ece7;border-radius:20px;padding:18px 14px 14px;box-shadow:0 4px 12px #193e3004}.month-toolbar{justify-content:space-between;align-items:center;gap:6px;margin:0 0 18px;padding:0 2px;display:flex}.month-toolbar h2{letter-spacing:-.4px;white-space:nowrap;margin:0;font-size:15px}.month-toolbar>div{align-items:center;gap:2px;display:flex}.calendar-today{color:#3b7858;background:#edf4ee;border-radius:8px;margin-right:3px;padding:8px 9px;font-size:9px}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;display:grid}.month-weekdays{color:#9ca89f;text-align:center;margin-bottom:10px;font-size:9px}.month-grid{row-gap:6px}.month-day{color:#50665a;background:0 0;border:1px solid #0000;border-radius:11px;flex-direction:column;justify-content:center;align-items:center;gap:5px;min-width:0;height:43px;font-size:12px;display:flex}.month-day i{background:0 0;border-radius:50%;width:4px;height:4px}.month-day.is-today{border-color:#8fb69c;font-weight:650}.calendar-legend{color:#95a497;border-top:1px solid #edf0ed;justify-content:space-between;align-items:center;gap:8px;margin-top:16px;padding-top:12px;font-size:8px;display:flex}.calendar-legend>span{align-items:center;gap:5px;display:flex}.calendar-legend i{background:#3c9868;border-radius:50%;width:4px;height:4px}.selected-day-summary{background:#eaf1e9;border-radius:8px;padding:7px 9px;color:#5f846a!important;margin-left:auto!important;font-size:10px!important}.admin-purchase-state{border-radius:5px;margin:4px 0 7px;padding:3px 6px;font-size:8px;display:table}@media (max-width:360px){.month-calendar{padding-left:10px;padding-right:10px}.month-toolbar h2{font-size:13px}.month-grid,.month-weekdays{gap:3px}}.product{flex-wrap:wrap}.product-info{flex-basis:0}.expense-row{color:#789080;border-top:1px solid #edf1ed;flex-basis:100%;align-items:center;gap:14px;margin-top:3px;padding-top:12px;font-size:10px;display:flex}.expense-row>span{flex-shrink:0}.expense-row>div{background:#f7faf7;border:1px solid #e3ebe3;border-radius:9px;flex:1;align-items:center;gap:8px;padding:0 10px;display:flex}.expense-row input{color:#294d38;background:0 0;border:0;outline:0;width:100%;padding:11px 0;font-size:12px}.expense-row input::placeholder{color:#a1b0a4;font-size:10px}.expense-row>div:focus-within{border-color:#87b594;box-shadow:0 0 0 2px #e5f0e7}.expense-row input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.expense-row input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.purchase-cost{color:#537962;overflow-wrap:anywhere;margin:5px 0;font-size:10px;line-height:1.7;display:block}.buy.bought:disabled{opacity:1;cursor:default;white-space:nowrap;font-size:9px}.reopen-product{color:#82988b;background:0 0;align-items:center;gap:3px;padding:3px 0;font-size:8px;display:flex}.report-period{background:#eaf0eb;border-radius:12px;gap:3px;margin-bottom:15px;padding:4px;display:flex}.report-period button{color:#809084;background:0 0;border-radius:9px;flex:1;padding:10px 4px;font-size:10px}.report-period button.active{color:#256b4e;background:#fff;font-weight:600;box-shadow:0 2px 5px #193c2508}.report-dates{align-items:center;gap:9px;margin-bottom:20px;display:flex}.report-dates label{color:#819384;flex:1;min-width:0;font-size:10px}.report-dates input{color:#425d49;background:#fff;border:1px solid #e0e9e1;border-radius:10px;width:100%;min-width:0;margin-top:7px;padding:11px 7px;font-size:11px;display:block}.report-dates>span{color:#a0b0a4;margin-top:20px}.report-total{color:#fff;background:#193f32;border-radius:20px;padding:23px 21px}.report-total>span{letter-spacing:1.1px;color:#c2d6c6;align-items:center;gap:8px;font-size:8px;display:flex}.report-total h2{letter-spacing:-1px;overflow-wrap:anywhere;margin:17px 0 9px;font-size:29px;line-height:1.4}.report-total p{color:#b6cdbc;margin:0;font-size:9px;line-height:1.9}.report-stats{gap:10px;margin:14px 0 22px;display:flex}.report-stats>div{color:#8aa18e;background:#fff;border:1px solid #e9eee9;border-radius:13px;flex-direction:column;flex:1;align-items:center;gap:7px;padding:15px 8px;display:flex}.report-stats strong{color:#365e43;font-size:20px}.report-stats span{color:#8b9c8e;font-size:9px}.report-note{color:#9d8254;background:#fff5e5;border:1px solid #f2e5ce;border-radius:10px;padding:12px;font-size:10px;line-height:1.9}.report-table-card{background:#fff;border:1px solid #e7ede6;border-radius:17px;overflow:hidden}.report-table-heading{justify-content:space-between;align-items:center;gap:8px;padding:18px 13px;display:flex}.report-table-heading h2{margin:0;font-size:12px}.report-table-heading>span{color:#98a99a;white-space:nowrap;font-size:8px}.report-table-scroll{overflow-x:auto}.report-table-card table{border-collapse:collapse;table-layout:fixed;width:100%;font-size:10px}.report-table-card th{color:#85988a;text-align:left;background:#f3f7f2;padding:12px 10px;font-size:8px;font-weight:500;line-height:1.8}.report-table-card th:first-child{width:44%}.report-table-card th:nth-child(2){width:26%}.report-table-card th:last-child{text-align:right;width:30%}.report-table-card td{vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid #eef2ec;padding:14px 10px;line-height:1.8}.report-table-card td:nth-child(2){color:#8b9b8b;font-size:9px}.report-table-card td:last-child{text-align:right;color:#366346;font-size:10px}.report-table-card td small{color:#91a894;margin-top:5px;font-size:8px;display:block}.report-table-card td.cost-missing{color:#b5a583;font-style:italic}.report-table-card tfoot th{color:#3c6849;background:#f3f7f2;font-size:10px}.report-table-card tfoot td{background:#f3f7f2;padding:12px 10px;font-weight:650}.report-footnote{color:#9aab9d;margin-top:14px;font-size:9px;line-height:1.9}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.bottom-nav button{width:23%}.admin-product-buttons{align-items:center;gap:6px;display:flex}.edit-product{color:#397652;background:#eaf2ed;border-radius:9px;align-items:center;gap:4px;padding:9px 8px;font-size:10px;display:flex}.admin-product-buttons .delete{place-items:center;padding:9px 8px;display:grid}.product-actions:has(.admin-product-buttons){min-width:0}.product-thumbnail{color:#a1b2a4;background:#edf2ed;border:1px solid #e7ece7;border-radius:12px;flex-shrink:0;align-self:flex-start;place-items:center;width:60px;height:60px;display:grid;overflow:hidden}.product-thumbnail img{object-fit:cover;width:100%;height:100%;display:block}.product-thumbnail>span{place-items:center;display:grid}.image-preview{border:1px dashed #cbdccc;border-radius:12px;align-items:center;gap:13px;margin:0 0 20px;padding:12px;display:flex}.image-preview>span{color:#8a9e8e;flex:1;font-size:10px;line-height:1.9}.image-preview .product-thumbnail{width:76px;height:76px}.metadata-note{color:#56846b;background:#edf5ed;border-radius:9px;margin:-5px 0 18px;padding:10px 12px;font-size:10px;line-height:1.9}@media (max-width:360px){.product-thumbnail{width:48px;height:48px}.admin-product-buttons{flex-direction:column;gap:4px}.admin-product-buttons .delete{padding:6px 8px}}.product.product-card{border:1px solid #e5ebe6;border-radius:18px;min-height:0;padding:16px;display:block;box-shadow:0 3px 12px #213f2a04}.product-overview{align-items:flex-start;gap:14px;display:flex}.product-card .product-thumbnail{background:#f0f3ef;border-radius:12px;width:78px;height:78px}.product-card .product-info{flex:auto;min-width:0}.product-card h3{color:#2b4035;overflow-wrap:anywhere;margin:0;font-size:12px;font-weight:600;line-height:1.7}.product-title h3.collapsed{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.expand-title{color:#829689;text-align:left;background:0 0;padding:3px 0 0;font-size:9px;display:block}.product-card .admin-purchase-state{border-radius:6px;margin:9px 0 0;padding:4px 7px;font-size:9px;line-height:1.4;display:inline-flex}.product-cost-summary{color:#8a9a8e;border-top:1px solid #edf1ed;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:12px 0 0;font-size:10px;display:flex}.product-cost-summary strong{color:#38694c;text-align:right;overflow-wrap:anywhere;font-size:13px}.product-card-footer{border-top:1px solid #edf1ed;margin-top:15px;padding-top:13px}.admin-footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.product-card .product-link{color:#708e79;gap:4px;font-size:10px;line-height:1.6}.product-card .admin-product-buttons{flex-direction:row;flex-shrink:0;align-items:center;gap:8px;display:flex}.product-card .edit-product{border-radius:9px;gap:6px;padding:10px 13px;font-size:11px}.product-card .delete{background:#fff3f1;border-radius:9px;place-items:center;display:grid;padding:10px!important}.member-footer{grid-template-columns:minmax(0,1fr) 112px;align-items:start;gap:12px;display:grid}.product-cost-input{color:#8b9c90;min-width:0;font-size:9px}.product-cost-input>span{margin-bottom:7px;line-height:1.4;display:block}.product-cost-input>div{background:#f8faf7;border:1px solid #dfe8e0;border-radius:9px;align-items:center;gap:5px;height:41px;padding:0 9px;display:flex}.product-cost-input input{color:#315c40;background:0 0;border:0;outline:0;width:100%;min-width:0;padding:0;font-size:12px}.product-cost-input input::placeholder{color:#a5b2a7;font-size:10px}.product-cost-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.product-cost-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.member-footer .product-actions{align-self:start;gap:5px;width:100%;min-width:0;padding-top:20px}.product-card .buy{border-radius:9px;gap:5px;height:41px;padding:0 9px;font-size:11px;line-height:1.2}.product-card .buy.bought:disabled{opacity:1;font-size:11px}.member-footer.is-complete{display:block}.member-footer.is-complete .product-actions{padding-top:0}.product-card .reopen-product{padding:3px 0;font-size:9px;line-height:1.7}.product-list{gap:15px}@media (max-width:360px){.product.product-card{padding:13px}.product-overview{gap:11px}.product-card .product-thumbnail{width:66px;height:66px}.product-card h3{font-size:11px}.member-footer{grid-template-columns:minmax(0,1fr) 102px;gap:10px}.product-card .buy{font-size:10px}.product-card .edit-product{padding:10px 11px}.product-card .product-link{font-size:9px}}.month-day:disabled{color:#c6cdc8;cursor:not-allowed;opacity:.65;background:0 0;border-color:#0000}.month-day:disabled:hover{background:0 0}.month-toolbar .icon-btn:disabled{color:#c5cfc7;opacity:.5;cursor:not-allowed;background:0 0}:root{--matcha:#668c45;--matcha-dark:#354e2c;--matcha-muted:#829272;--matcha-line:#dde6ca;--matcha-paper:#fffef7;--matcha-wash:#eef3dd;--matcha-cream:#f8faed}body{color:var(--matcha-dark);background:#e7eddc}.phone-shell{background:var(--matcha-cream);box-shadow:0 12px 80px #40552c0e}header{background:var(--matcha-cream);padding-left:22px;padding-right:22px}.header-brand,.login-top{color:#3b542f;letter-spacing:-.4px}.header-brand{gap:9px;font-size:13px}.brand-icon.duck-brand{background:#edf2d9;border:1px solid #d8e4bb;border-radius:16px;width:45px;height:45px;overflow:hidden}.brand-icon.duck-brand.small{border-radius:13px;width:39px;height:39px}.duck-mascot{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;display:block}.duck-brand .duck-mascot{width:42px;height:42px;padding:2px}.duck-brand.small .duck-mascot{width:36px;height:36px;padding:2px}.avatar{color:#5b783f;background:#e7edcf;border-color:#fffef5}.content{padding-top:6px}.eyebrow{color:#8d9e76;letter-spacing:1.5px;font-size:8px}.greeting.with-duck{isolation:isolate;background:radial-gradient(at 100% 75%,#e9efce 0,#0000 65%);border-radius:22px;min-height:157px;margin:0 0 18px;padding:20px 0 5px;position:relative}.greeting-copy{z-index:1;width:66%;padding-right:7px;position:relative}.with-duck h1{color:#354e2c;letter-spacing:-1px;margin:10px 0;font-size:26px;line-height:1.4}.with-duck p{color:#8c9b7c;margin-bottom:10px;font-size:10px;line-height:1.9}.greeting-duck{z-index:0;filter:drop-shadow(0 5px 2px #547c3010);width:135px;height:145px;position:absolute;bottom:3px;right:-4px}.title-dot{color:#93af5f}.progress-card{color:#455f32;background:#edf3da;border:1px solid #dae5bd;border-radius:21px;padding:20px;box-shadow:0 5px 15px #536f3210}.progress-card:after{border-color:#b9cd9126}.mini-label{color:#82976a;font-size:8px}.progress-top h2{color:#5f863e;font-size:36px}.progress-top h2 span{color:#94a57c}.progress-top p,.progress-caption{color:#82936d}.progress-ring{background:conic-gradient(#88ac55 var(--progress),#dce6c4 0);width:67px;height:67px}.progress-ring>div{color:#779b4e;background:#edf3da;width:56px;height:56px}.progress-track{background:#dae4c6}.progress-track i{background:#8bad54}.date-icon{color:#789653;background:#eaf0d9;border:1px solid #e1e8d0}.date-heading strong{color:#486438}.date-heading span{color:#94a183}.filters{background:#eff3e1;border:1px solid #e2e9d1;border-radius:13px;gap:3px;margin-bottom:17px;padding:4px}.filters button{color:#91a080;padding:9px 6px}.filters button.active{color:#527333;background:#fffef5;box-shadow:0 2px 5px #495d3010}.filters button span{color:#93a080;background:#e7ecd9}.filters button.active span{color:#6a8849;background:#dce8c4}.product.product-card{background:#fffef9;border-color:#dce6ca;border-radius:20px;box-shadow:0 4px 10px #56713306}.product-card h3{color:#405536}.product-card .product-thumbnail{background:#f0f3e5;border-color:#e5ead8;border-radius:13px}.product-card-footer,.product-cost-summary{border-color:#e9eddd}.product-cost-summary{color:#93a080}.product-cost-summary strong{color:#5e7c43}.product-card .buy{background:#6a944b;border-radius:11px;box-shadow:0 3px 5px #688c4314}.product-card .buy.bought{box-shadow:none;background:#4b8ad7}.product-card .edit-product{color:#6b8b48;background:#eef3df;border:1px solid #e1eacb}.product-card .delete{color:#bd8b71;background:#fff1e9}.product-cost-input{color:#95a185}.product-cost-input>div{background:#fafbf2;border-color:#e2e8d4;border-radius:11px}.product-cost-input input{color:#4c653a}.product-cost-input>div:focus-within{border-color:#9ab773;box-shadow:0 0 0 2px #edf2df}.admin-purchase-state.pending{color:#8a9c6e;background:#eff3e1}.admin-purchase-state.done{color:#6894c4;background:#eef4fb}.add-button{color:#7a9756;background:#f0f5e3;border-color:#bbcd99;border-radius:13px}.list-foot{color:#a0ad8f}.bottom-nav{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffef7f5;border-top-color:#e1e8d2;padding-left:18px;padding-right:18px}.bottom-nav button{color:#9aa98b}.bottom-nav button.selected{color:#6c8d48}.bottom-nav .selected>span{background:#e7efce;border-radius:12px}.bottom-nav .selected i{background:#91ac61}.month-calendar{background:#fffef8;border-color:#d9e4c3;border-radius:22px;box-shadow:0 4px 10px #4d693007}.month-toolbar h2{color:#496338}.calendar-today{color:#81995f;background:#eef3df}.month-weekdays{color:#a2af90}.month-day{color:#61794b}.month-day:hover{background:#f0f4e2}.month-day.is-selected{color:#fff;background:#86a85a;border-color:#86a85a}.month-day.is-today:not(.is-selected){color:#789b4d;border-color:#bbcd95}.month-day i.has-products{background:#92af63}.month-day.is-selected i.has-products{background:#fff2b2}.calendar-legend{color:#9ca98c;border-top-color:#e8eddc}.calendar-legend i{background:#92af63}.icon-btn{color:#8a9c75}.icon-btn:hover{background:#edf3de}.selected-day-summary{color:#869d62!important;background:#eaf1d5!important}.account-card{background:#fffef8;border:1px solid #e0e8ce;border-radius:22px}.account-card h2{color:#4c6739}.account-card p{color:#9aaa87}.role{color:#85a05d;background:#edf3dc;border:1px solid #e0e9cb}.setting{color:#78925a;background:#fffef8;border:1px solid #e4ead7;border-radius:14px}.setting.logout{color:#c08d75}.explain{color:#9eac8f}.primary{color:#fff;background:#7c9e52;border-radius:14px;box-shadow:0 4px 8px #6d8b3510}.login{background:radial-gradient(at 50% 23%,#edf2d9 0,#0000 45%)}.login-top{gap:11px;font-size:17px}.matcha-login-art{height:205px;margin:25px 0 10px;position:relative}.mascot-halo{background:#e4edc9;border-radius:44% 56% 53% 47%/58% 51% 49% 42%;width:180px;height:170px;position:absolute;transform:rotate(-8deg)}.login-duck{z-index:1;filter:drop-shadow(0 5px 3px #6f853615);width:185px;height:200px;position:relative}.leaf-decoration{background:#b7cb87;border-radius:0 100%;width:12px;height:23px;position:absolute;transform:rotate(-25deg)}.leaf-one{top:48px;left:48px}.leaf-two{background:#cad9a6;width:10px;height:18px;bottom:44px;right:50px;transform:rotate(25deg)}.login-copy h1{color:#476034;font-size:29px;line-height:1.5}.login-foot{color:#a0ae90}.login-form label,.sheet form label{color:#7c9264}.login-form input,.sheet input{color:#526c40;background:#fffef9;border-color:#dfe7d0;border-radius:12px}.login-form input:focus,.sheet input:focus{border-color:#a5be80;box-shadow:0 0 0 3px #edf3dd}.login-form input::placeholder,.sheet input::placeholder{color:#b0bba1}.password-field button{color:#9faf8c}.empty{color:#94a580}.empty h3{color:#7e955f}.duck-empty{background:0 0;border:0;border-radius:0;width:90px;height:95px;margin-bottom:13px}.duck-empty .duck-mascot{width:85px;height:95px}.sheet{background:#fbfcf1}.sheet-title h2{color:#4e6839}.sheet-handle{background:#dce6c8}.sheet>p{color:#95a582}.image-preview{background:#f5f8e9;border-color:#d4e1bc}.metadata-note{color:#829c5f;background:#edf4dd}.toast{background:#668747;border:1px solid #8ba761}.modal-backdrop{background:#25371e70}.report-period{background:#eaf0d8;border:1px solid #dfe7cb}.report-period button{color:#92a078}.report-period button.active{color:#7d9955;background:#fffef7}.report-dates label{color:#94a17d}.report-dates input{color:#718854;background:#fffef8;border-color:#dce5c9;border-radius:12px}.report-total{color:#4d6b34;background:#e7efd3;border:1px solid #d3e1b5;border-radius:22px}.report-total>span{color:#829b62}.report-total h2{color:#5c803a}.report-total p{color:#8ea476}.report-stats>div{color:#9db382;background:#fffef7;border-color:#e0e8cd;border-radius:16px}.report-stats strong{color:#799953}.report-stats span{color:#9cac88}.report-table-card{background:#fffef9;border-color:#dce6c9;border-radius:18px}.report-table-heading h2{color:#627e47}.report-table-heading>span{color:#a1af8d}.report-table-card th,.report-table-card tfoot th,.report-table-card tfoot td{color:#8a9e6f;background:#f0f5e2}.report-table-card td{color:#5b7248;border-color:#edf1e2}.report-table-card td:last-child{color:#688b45}.report-table-card td:nth-child(2),.report-table-card td small{color:#9cad8c}.report-footnote{color:#a2b08f}.report-note{color:#a18e58;background:#fff8df;border-color:#f0e6be}@media (max-width:360px){.header-brand{gap:7px;font-size:12px}.greeting.with-duck{min-height:148px}.greeting-duck{width:116px;height:133px;right:-6px}.with-duck h1{font-size:23px}.greeting-copy{width:67%}.with-duck .eyebrow{letter-spacing:1px;font-size:7px}.with-duck p{font-size:9px}.login-top{font-size:15px}}@media (prefers-reduced-motion:no-preference){.greeting-duck{animation:.7s ease-out both duck-hello}@keyframes duck-hello{0%{opacity:0;transform:translateY(7px)rotate(3deg)}to{opacity:1;transform:translateY(0)rotate(0)}}}.with-duck p,.mini-label,.progress-top p,.progress-caption,.eyebrow,.calendar-legend,.list-foot,.report-footnote,.login-foot{color:#778666}.filters button,.bottom-nav button{color:#79896a}.date-heading span,.product-cost-input,.product-cost-summary,.report-dates label,.account-card p,.sheet>p,.explain{color:#7d8d6c}.product-card .product-link,.expand-title,.reopen-product{color:#71895a}.login-copy p{color:#7c8e69}body{color:#2e4323;font-weight:500}.header-brand,.login-top,.greeting h1,.login-copy h1,.sheet-title h2,.product-card h3,.account-card h2{color:#2d4320;font-weight:700}.with-duck p,.eyebrow,.mini-label,.progress-top p,.progress-caption,.calendar-legend,.list-foot,.report-footnote,.login-foot,.login-copy p,.explain,.sheet>p{color:#536640;font-weight:500}.eyebrow,.mini-label{font-weight:650}.filters button,.bottom-nav button,.month-weekdays,.calendar-today,.report-period button{color:#52683e;font-weight:550}.filters button.active,.bottom-nav button.selected{color:#3e5d25;font-weight:700}.date-heading span,.product-cost-input,.product-cost-summary,.report-dates label,.account-card p,.product-card .product-link,.expand-title,.reopen-product,.report-total p,.report-total>span,.report-stats span,.report-table-heading>span,.report-table-card th,.report-table-card td:nth-child(2),.report-table-card td small,.image-preview>span{color:#52693d}.product-cost-summary strong,.report-total h2,.report-stats strong,.progress-top h2{color:#43672d;font-weight:700}.product-card h3{font-size:12px}.product-card .product-link,.expand-title,.reopen-product{font-weight:600}.login-form label,.sheet form label,.setting,.role,.month-day{color:#4d6637;font-weight:550}.primary{background:#628438;font-weight:650}.product-card .buy{background:#5f843d;font-weight:650}.product-card .buy.bought{background:#377dc8}.product-card .edit-product{color:#4c6b2f;font-weight:650}.admin-purchase-state.pending{color:#536d37;font-weight:600}.admin-purchase-state.done{color:#3f72a7;font-weight:600}.selected-day-summary{font-weight:600;color:#4e6b31!important}.product-cost-input input,.login-form input,.sheet input{color:#344e24;font-weight:550}.product-cost-input input::placeholder,.login-form input::placeholder,.sheet input::placeholder{color:#78876a}.report-table-card td{color:#3e5530}.report-table-card td:last-child{color:#44692c;font-weight:600}.list-foot,.report-footnote,.login-foot,.progress-caption,.progress-top p{font-size:10px}.month-day:disabled,.month-toolbar .icon-btn:disabled{color:#b9c3ae;font-weight:400}.greeting-duck{width:142px;height:148px;right:-8px}@media (max-width:360px){.greeting-duck{width:121px;height:134px;right:-8px}}.content{color:#2d421f;font-weight:550}.content p,.content .eyebrow,.content .mini-label,.content .progress-caption,.content .date-heading span,.content .calendar-legend,.content .list-foot,.content .report-footnote,.content .report-table-heading>span,.content .report-table-card td,.content .report-table-card th,.content .report-stats span,.content .account-card p,.content .explain{color:#40562f;font-weight:550}.content .product-card h3{color:#293f1e;font-weight:700}.content .product-cost-input,.content .product-cost-summary,.content .product-link,.content .expand-title,.content .reopen-product,.content .report-dates label,.content .month-weekdays{color:#3e572b;font-weight:600}.content .product-cost-summary strong,.content .report-total h2,.content .report-stats strong,.content .report-table-card td:last-child{color:#355321;font-weight:700}.content .report-total>span,.content .report-total p,.content .setting,.content .role,.content .admin-purchase-state.pending{color:#405c2c;font-weight:600}.content .product-cost-input input{color:#2f4820;font-weight:600}.content .product-cost-input input::placeholder{color:#64774f}.bottom-nav button{color:#50643e;font-weight:550}.bottom-nav button.selected{color:#3e5c25;font-weight:700}@media (max-width:600px){.product-cost-input input,.expense-row input,.login-form input,.sheet input,.report-dates input{font-size:16px}}.product-card .buy.bought{cursor:pointer}.product-card .buy.bought:hover{background:#2e6fba}.product-card .buy.bought:active{transform:translateY(1px)}.member-footer.is-complete .product-actions{flex-direction:row;align-items:stretch;gap:9px;display:flex}.member-footer.is-complete .buy{flex:1;width:auto;min-width:0}.copy-product-link{color:#405c2c;background:#edf3df;border:1px solid #cfddb9;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;height:41px;padding:0 13px;font-size:11px;font-weight:600;display:flex}.copy-product-link:hover{background:#e2edcd}.copy-product-link:active{transform:translateY(1px)}.registration h1,.customer-admin h1{margin:16px 0 10px;font-size:27px}.registration>p,.customer-admin>p{color:#40562f;font-size:13px;line-height:1.6}.platform-notice{color:#364d28;background:#edf3df;border:1px solid #cfddb9;border-radius:12px;margin:15px 0;padding:14px;font-size:13px;line-height:1.6}.platform-card{background:#fffef8;border:1px solid #dee5ce;border-radius:17px;margin:16px 0;padding:18px}.platform-card h2{overflow-wrap:anywhere;margin:0 0 12px;font-size:16px}.compact-form{align-items:end;gap:9px;margin:15px 0;display:flex}.compact-form label{flex:1;gap:7px;min-width:0;font-size:12px;font-weight:600;display:grid}.compact-form input,.audience-field select{width:100%;font:inherit;color:#293f1e;background:#fffef8;border:1px solid #d2ddbf;border-radius:10px;min-height:44px;padding:9px;font-size:16px}.compact-form .primary{width:auto;min-width:70px;height:44px;margin:0;padding:0 14px}.group-chips{flex-wrap:wrap;gap:7px;display:flex}.group-chips span{background:#edf3df;border-radius:20px;padding:7px 10px;font-size:12px}.checkbox-row{align-items:center;gap:9px;font-size:13px;margin:10px 0!important;display:flex!important}.checkbox-row input{accent-color:#527b33;width:18px!important;height:18px!important;min-height:0!important;padding:0!important}.customer-card fieldset,.audience-field{border:1px solid #d8e1c6;border-radius:10px;margin:14px 0;padding:12px}.customer-card legend,.audience-field legend{font-size:12px;font-weight:700}.customer-card p,.customer-card a{overflow-wrap:anywhere;font-size:13px}.customer-actions{justify-content:space-between;gap:10px;margin-top:14px;display:flex}.page-controls{justify-content:space-between;align-items:center;gap:10px;margin:20px 0;font-size:12px;display:flex}.page-controls button{color:#354d23;background:#e8efd9;border:1px solid #cddbb6;border-radius:10px;padding:10px}.page-controls button:disabled{opacity:.45}.registration .report-period button{flex:1}.registration .primary:disabled{opacity:.5}.report-table-scroll td{overflow-wrap:anywhere}.registration small{font-size:11px;font-weight:400}.load-more{color:#354d23;background:#edf3df;border:1px solid #cddbb6;border-radius:12px;width:100%;margin:12px 0;padding:12px}.audience-label{color:#40562f;margin-top:7px;font-size:11px;display:block}
