@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Arial,sans-serif;color:#243c30;background:#f8f8f4;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,DM Sans,sans-serif}a{color:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{width:248px;flex:none;background:#fff;border-right:1px solid #e9ede6;padding:31px 17px 22px;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:0 11px;color:#234a37;font-family:Outfit,sans-serif;font-weight:800;font-size:23px;letter-spacing:-.9px}.brand-light{font-weight:500}.brand-mark{background:#2c6548;color:#fff;width:35px;height:35px;border-radius:11px;display:flex;align-items:center;justify-content:center}.sidebar-context{font-size:10px;letter-spacing:2.1px;color:#a2aca4;font-weight:800;margin:51px 12px 14px}.household-selector{display:flex;align-items:center;gap:11px;border:1px solid #e6ebe5;border-radius:13px;padding:9px;margin:0 4px 25px}.household-avatar{width:35px;height:35px;border-radius:9px;background:#e8f0e7;color:#315f42;display:grid;place-items:center;font-weight:800;font-family:Outfit,sans-serif}.household-selector strong,.household-selector small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:154px}.household-selector strong{font-size:12px}.household-selector small{font-size:10px;color:#8c988d;margin-top:2px}.side-nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:14px;border:0;background:none;color:#718176;width:100%;padding:13px 15px;border-radius:10px;text-align:left;font-size:13px;font-weight:700}.nav-item.selected{color:#22563a;background:#edf4ed}.nav-item:hover:not(.selected){background:#f7f9f5}.nav-count{margin-left:auto;font-size:11px;border-radius:6px;padding:2px 6px;color:#305a3e;background:#e4ece2}.sidebar-tip{margin-top:auto;background:#eaf2e7;border-radius:14px;padding:17px;color:#285640}.tip-icon{margin-bottom:15px}.sidebar-tip strong{font-family:Outfit,sans-serif;font-size:15px}.sidebar-tip p{font-size:11px;line-height:1.55;margin:7px 0 0;color:#66806b}.sidebar-signout{background:none;border:0;color:#748275;display:flex;align-items:center;gap:10px;text-align:left;padding:19px 12px 2px;font-size:12px;font-weight:700}.main-area{min-width:0;flex:1}.topbar{height:70px;border-bottom:1px solid #edf0e9;background:#fff;display:flex;justify-content:flex-end;align-items:center;padding:0 45px}.topbar-right{display:flex;align-items:center;gap:18px}.topbar-house{font-size:12px;font-weight:700;color:#5b6d5e}.topbar-avatar{height:34px;width:34px;border-radius:50%;display:grid;place-items:center;background:#dceadd;color:#365944;font-weight:800;font-size:12px}.mobile-brand{display:none}.page{max-width:1260px;padding:46px 54px 80px;margin:auto}.eyebrow{color:#8b9b86;font-size:10px;letter-spacing:2.2px;font-weight:800;display:block;margin-bottom:11px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:30px}.page-heading h1{font-size:35px;line-height:1.12;letter-spacing:-1.3px;margin-bottom:9px;color:#203d2f}.page-heading p{font-size:13px;color:#8a968b;margin:0}.page-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.button{border:0;border-radius:9px;min-height:42px;padding:0 17px;display:inline-flex;justify-content:center;align-items:center;gap:9px;font-weight:800;font-size:12px;white-space:nowrap}.button.primary{background:#2e6949;color:#fff;box-shadow:0 5px 13px #315d4424}.button.primary:hover{background:#24563b}.button.secondary{background:#f1f3ee;color:#49644f}.button.danger{background:#fce9e5;color:#aa5044}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:21px}.stat-card{text-align:left;background:#fff;border:1px solid #edf0e9;border-radius:15px;padding:19px 21px 17px;min-height:179px;box-shadow:0 3px 18px #344a3208;display:flex;flex-direction:column;align-items:flex-start}.stat-card:hover,.inventory-card:hover{border-color:#c8d8c9;box-shadow:0 8px 24px #344a3212}.stat-icon,.section-icon,.quick-icon{display:grid;place-items:center;flex:none}.stat-icon{width:39px;height:39px;border-radius:11px;margin-bottom:14px}.sage{background:#e6f0e6;color:#356d4b}.peach{background:#fcf0e6;color:#c47e49}.lavender{background:#eeeeef;color:#7c7b9f}.stat-value{font-family:Outfit,sans-serif;font-weight:800;font-size:29px;line-height:1;color:#203e2e}.stat-title{font-weight:700;font-size:12px;margin-top:4px}.stat-foot{font-size:11px;color:#97a49a;margin-top:auto;padding-top:13px;display:flex;gap:6px;align-items:center}.today-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:19px}.card{background:#fff;border:1px solid #edf0e9;border-radius:15px;box-shadow:0 3px 18px #344a3208}.today-grid .card{min-height:334px;padding:23px}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.card-head h2{font-size:20px;letter-spacing:-.4px;margin:0 0 4px}.card-head p{color:#97a296;font-size:12px;margin:0}.section-icon{width:37px;height:37px;border-radius:10px}.compact-list{margin-top:18px}.compact-item{display:flex;align-items:center;gap:12px;padding:12px 2px;border:0;border-bottom:1px solid #f0f2ed;background:none;text-align:left;width:100%;color:inherit}.compact-item:last-child{border-bottom:0}.item-dot{height:9px;width:9px;border-radius:50%;background:#e6a66d;margin:0 5px}.compact-name{font-size:12px;font-weight:800;flex:1;min-width:0;overflow-wrap:anywhere}.compact-item .date-pill{max-width:125px;white-space:normal;text-align:center}.compact-name small{display:block;font-size:10px;color:#a0aa9f;font-weight:500;margin-top:3px}.date-pill{background:#f4f6f1;color:#748773;font-size:10px;padding:5px 8px;border-radius:6px;font-weight:800;white-space:nowrap}.date-pill.urgent{background:#fcf0e6;color:#c07d47}.rotated{transform:rotate(-90deg);color:#a8b2a7}.quick-card .card-head{margin-bottom:21px}.quick-action{display:flex;align-items:center;gap:12px;width:100%;border:1px solid #edf1ec;border-radius:10px;background:#fff;text-align:left;padding:10px;margin:9px 0}.quick-action:hover{background:#f8faf6}.quick-icon{width:37px;height:37px;border-radius:9px}.quick-action>span:nth-child(2){flex:1}.quick-action strong,.quick-action small{display:block}.quick-action strong{font-size:12px;color:#254a34}.quick-action small{font-size:10px;color:#a0aa9f;margin-top:3px}.quick-action>svg{color:#a6b3a8}.empty-inline{display:flex;align-items:center;justify-content:center;flex-direction:column;gap:7px;min-height:200px;color:#9ba99b;text-align:center;font-size:11px}.empty-inline strong{font-family:Outfit,sans-serif;font-size:15px;color:#4a664d}.loading-bar{height:3px;background:linear-gradient(90deg,transparent,#4b8b61,transparent);animation:loading 1s infinite;margin:-46px -54px 42px}@keyframes loading{0%{transform:translate(-30%)}to{transform:translate(30%)}}.alert{display:flex;align-items:center;gap:10px;background:#fff1ea;color:#a45e45;padding:12px 15px;border-radius:9px;margin-bottom:22px;font-size:12px}.offline-banner{background:#f8f0df;color:#8a6539;border:1px solid #eeddbb;border-radius:9px;padding:12px 15px;margin-bottom:18px;font-size:12px}.alert span{flex:1}.alert button{background:none;border:0;color:inherit}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.search-field{display:flex;align-items:center;gap:10px;border:1px solid #e2e8df;background:#fff;border-radius:9px;padding:0 12px;min-height:41px;min-width:220px;max-width:330px;flex:1;color:#a0ada0}.search-field input{border:0;outline:0;background:transparent;width:100%;font-size:12px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{border:1px solid #e3e9e0;background:#fff;color:#809081;border-radius:8px;padding:9px 14px;font-size:11px;font-weight:700}.filters button.active{background:#2e6949;color:#fff;border-color:#2e6949}.list-meta{display:flex;justify-content:space-between;align-items:center;margin:0 1px 14px;font-size:11px;color:#8c9b8c}.toggle-label{display:flex;align-items:center;gap:6px;cursor:pointer}.toggle-label input{accent-color:#2e6949}.inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.swipe-tip{display:none}.swipe-shell{position:relative;min-width:0;overflow:hidden;border-radius:14px;box-shadow:0 3px 18px #344a3208}.swipe-reveal{position:absolute;inset-block:0;width:50%;display:flex;align-items:center;gap:8px;padding:18px;font-size:13px;font-weight:800;pointer-events:none}.swipe-remove{left:0;color:#8b4e43;background:#f9e9e4}.swipe-list{right:0;justify-content:flex-end;color:#1f5b3c;background:#e2f0e5}.inventory-card{position:relative;border:1px solid #edf0e9;background:#fff;border-radius:14px;padding:17px;transition:transform .18s ease;touch-action:pan-y}.swipe-shell.dragging .inventory-card{transition:none}.inventory-top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px}.inventory-main{min-width:0}.inventory-icon{height:50px;width:50px;border-radius:11px;display:grid;place-items:center}.inventory-icon.pantry{background:#f1ece2;color:#a88350}.inventory-icon.fridge{background:#e8f1e8;color:#5d9065}.inventory-icon.freezer{background:#e7f0f4;color:#608ca2}.icon-button{display:grid;place-items:center;border:0;background:transparent;color:#a2aea2;width:27px;height:27px;padding:0}.inventory-card h3{font-size:16px;margin:0 0 3px;overflow-wrap:anywhere}.inventory-card p{font-size:12px;color:#96a295;margin:0}.inventory-tags{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0 0}.status-pill{border-radius:6px;background:#e8f2e8;color:#48805a;font-size:10px;font-weight:800;padding:5px 8px}.status-pill.gone{background:#f1f1ee;color:#939993}.inventory-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;border-top:1px solid #f0f2ed;padding-top:13px;margin-top:14px}.batch-list{display:grid;gap:0;margin-top:14px;border-top:1px solid #eef1eb}.batch-row{display:flex;align-items:center;gap:8px;min-width:0;padding:11px 0;border-bottom:1px solid #eef1eb}.batch-row>div{display:grid;gap:3px;min-width:0;flex:1}.batch-row strong{font-size:12px;overflow-wrap:anywhere}.batch-row small{color:#829183;font-size:10px}.batch-row button{flex:none;border:0;border-radius:7px;padding:8px;background:#edf3ee;color:#245b3c;font-size:11px;font-weight:700}.inventory-actions button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#edf3ee;color:#245b3c;border-radius:9px;min-height:42px;font-size:11px;font-weight:800;padding:7px 8px}.inventory-actions button.remove-action{background:#f5f1ee;color:#8b675b}.empty-card{border:1px dashed #cedccf;background:#fff;border-radius:14px;padding:55px 20px;text-align:center;color:#9aaa9b}.empty-card h3{color:#345941;margin:15px 0 4px}.empty-card p{font-size:12px}.empty-card .button{margin-top:8px}.shopping-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(240px,.75fr);gap:18px}.shopping-layout>*{min-width:0}.shopping-card{padding:24px;min-height:400px}.shopping-add{display:flex;gap:8px;margin:24px 0 15px}.shopping-add input{min-width:0;flex:1;border:1px solid #e2e8df;border-radius:8px;padding:0 13px;font-size:12px;outline-color:#70a477}.shopping-add .amount-input{width:95px;flex:none}.shopping-duplicate-hint{margin:-7px 0 14px;color:#806332;font-size:11px;line-height:1.4}.shopping-list{border-top:1px solid #edf0e9}.shopping-row-edit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.7fr) auto;gap:8px;padding:12px 0;border-bottom:1px solid #edf0e9}.shopping-row-edit input{min-width:0;width:100%;min-height:40px;border:1px solid #dfe7dd;border-radius:8px;padding:0 10px;font-size:13px}.shopping-edit-actions{display:flex;gap:5px}.shopping-edit-actions button{border:0;border-radius:8px;padding:0 9px;color:#2e6949;background:#eef3ee;font-size:12px;font-weight:700}.shopping-edit-actions button[type=submit]{color:#fff;background:#2e6949}.shopping-row,.completed-row{display:flex;align-items:center;gap:12px;border-bottom:1px solid #edf0e9;padding:12px 0}.check-box,.checked-box{height:19px;width:19px;flex:none;border-radius:6px;border:1.5px solid #a8b9aa;background:#fff}.checked-box{background:#3d7854;color:#fff;border:0;display:grid;place-items:center}.shopping-row-name{flex:1;min-width:0;overflow-wrap:anywhere;font-size:12px;font-weight:700}.shopping-row-name small{display:block;font-size:10px;color:#be8b4d;margin-top:3px}.shopping-amount{min-width:0;max-width:32%;overflow-wrap:anywhere;font-size:11px;color:#94a094}.shopping-side{display:grid;align-content:start;gap:18px}.side-note,.invite-card,.account-card,.completed-card{padding:22px}.side-note h3,.invite-card h3,.account-card h3,.completed-card h3{font-size:18px;margin:19px 0 7px}.side-note p,.invite-card p,.account-card p{font-size:11px;color:#96a295;line-height:1.6}.side-note button,.account-card button{border:0;background:none;color:#3d7750;font-size:11px;font-weight:800;display:flex;align-items:center;gap:7px;padding:0;margin-top:15px}.completed-card h3{margin:0 0 12px}.completed-card p{color:#718474;font-size:11px;line-height:1.5}.completed-row{padding:10px 0}.completed-row span{flex:1;font-size:11px;text-decoration:line-through;color:#98a398}.completed-row button:not(.checked-box){background:transparent;border:0;color:#9ba99b;padding:0}.settings-grid{display:grid;grid-template-columns:1.35fr .85fr;gap:18px}.settings-card,.invite-card,.preference-card,.account-card{padding:24px}.preference-card h3{margin:0 0 16px}.preference-option{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.preference-option input{margin:2px 0 0;accent-color:#2e6949}.preference-option span{display:grid;gap:5px}.preference-option strong{font-size:12px}.preference-option small,.preference-card p{font-size:11px;line-height:1.5;color:#7f9080}.preference-card p{margin:14px 0 0}.member-list{margin-top:20px}.member-row{display:flex;align-items:center;gap:12px;padding:13px 0;border-top:1px solid #edf0e9}.member-avatar{width:36px;height:36px;border-radius:50%;background:#e8f0e7;color:#3c7852;display:grid;place-items:center;font-size:13px;font-weight:800}.member-info{flex:1;min-width:0}.member-info strong,.member-info small{display:block;overflow:hidden;text-overflow:ellipsis}.member-info strong{font-size:11px}.member-info small{font-size:10px;color:#97a397;margin-top:3px}.member-actions{display:flex;align-items:center;gap:7px}.member-actions button{border:0;background:none;color:#6b8b72;font-size:10px;font-weight:700}.settings-side{display:grid;align-content:start;gap:18px}.invite-card form{display:grid;gap:8px;margin-top:17px}.invite-card label,.household-switch label{font-size:11px;font-weight:800}.invite-card input,.household-switch select{width:100%;height:39px;border:1px solid #e2e8df;border-radius:8px;padding:0 10px;min-width:0;font-size:11px}.invite-card .button{margin-top:5px}.invite-result{margin-top:16px;display:grid;gap:7px;font-size:10px;line-height:1.5;color:#6d806f}.invite-result button{background:#e8f1e6;border:0;border-radius:7px;color:#346b47;font-size:11px;font-weight:800;padding:8px}.account-card h3{margin:0 0 5px}.household-switch{display:grid;gap:6px;margin-top:16px}.onboarding{max-width:450px;margin:70px auto;background:#fff;border:1px solid #ebeee9;border-radius:17px;padding:35px;text-align:center}.onboard-art{height:65px;width:65px;border-radius:19px;background:#e5efe4;color:#35714b;display:grid;place-items:center;margin:0 auto 22px}.onboarding h1{font-size:29px;margin-bottom:8px}.onboarding p{font-size:12px;color:#93a092;line-height:1.6}.onboard-form{display:grid;text-align:left;gap:9px;margin-top:25px}.onboard-form label{font-size:11px;font-weight:800}.onboard-form input{height:43px;border:1px solid #e0e8de;border-radius:8px;padding:0 12px}.onboard-form button{margin-top:6px}.bottom-nav{display:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#172b1f91;z-index:20;display:grid;place-items:center;padding:20px}.modal{background:#fff;border-radius:17px;width:min(100%,530px);max-height:min(92vh,900px);overflow:auto;box-shadow:0 20px 80px #16271f55}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:25px 27px 18px;border-bottom:1px solid #edf0e9}.modal-header h2{font-size:22px;margin:0}.item-form{padding:23px 27px 27px;display:grid;gap:16px}.item-form label{font-size:11px;font-weight:800;display:grid;align-content:start;gap:7px;color:#3e5945}.item-form input,.item-form select,.item-form textarea{min-width:0;width:100%;border:1px solid #dfe7dd;border-radius:8px;min-height:39px;padding:8px 10px;font-size:12px;outline-color:#77a77d;color:#2d4936;background:#fff}.item-form input,.item-form select{height:42px}.item-form textarea{resize:vertical}.item-form small{font-size:10px;font-weight:400;color:#98a699;line-height:1.4}.reminder-help{grid-column:1 / -1;margin-top:-10px}.transfer-hint{margin:-7px 0 0;padding:10px 12px;border-radius:8px;background:#fff6e8;color:#79562d;font-size:11px;line-height:1.5}.optional{display:inline;color:#9ca99c;font-weight:500}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-row>label:only-child{grid-column:1 / -1}.item-form.location-hidden{grid-template-columns:repeat(2,minmax(0,1fr))}.item-form.location-hidden>.form-row{display:contents}.item-form.location-hidden>label,.item-form.location-hidden>.modal-actions{grid-column:1 / -1}.item-form.location-hidden>.form-row>label:only-child,.item-form.location-hidden>.reminder-field{grid-column:auto}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid #eef1eb;padding-top:20px;margin-top:3px}.modal-actions .danger{margin-right:auto}.receipt-modal{width:min(100%,740px)}.receipt-start,.receipt-review{padding:24px 27px 27px}.receipt-start>p,.receipt-review>p{color:#6c806f;font-size:13px;line-height:1.55;margin-bottom:19px}.receipt-file{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;min-height:90px;padding:15px;border:2px dashed #bed6bf;border-radius:12px;background:#f4f9f2;color:#2e6949;font-size:13px;font-weight:800;text-align:center;cursor:pointer}.receipt-file input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.receipt-file:focus-within{outline:3px solid #6da97a;outline-offset:2px}.receipt-preview{display:block;max-width:100%;max-height:280px;object-fit:contain;margin:18px auto;border-radius:8px}.receipt-start .modal-actions,.receipt-review .modal-actions{margin-top:22px}.receipt-purchase-date,.receipt-line-fields label{display:grid;gap:6px;color:#3e5945;font-size:12px;font-weight:800}.receipt-purchase-date{max-width:220px;margin-bottom:17px}.receipt-purchase-date input,.receipt-line-fields input,.receipt-line-fields select{min-width:0;width:100%;min-height:41px;border:1px solid #dfe7dd;border-radius:8px;background:#fff;color:#2d4936;padding:8px 10px;font-size:13px}.receipt-line-fields small{color:#8c9d8e;font-weight:500}.receipt-lines{display:grid;gap:13px}.receipt-line{padding:15px;border:1px solid #e5ebe3;border-radius:11px}.receipt-line-select{display:flex;align-items:center;gap:10px;color:#254a34;font-size:12px;font-weight:800}.receipt-line-select input{width:20px;height:20px;accent-color:#2e6949}.receipt-line-select em{margin-left:8px;color:#a36b3c;font-style:normal;font-size:11px}.receipt-line-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-top:13px}.receipt-item-name,.receipt-saved-date{grid-column:1 / -1}.saved-dates-hint{padding:11px 13px;margin-bottom:16px;border-radius:9px;background:#eef5ed;color:#2e6949;font-size:12px;line-height:1.5}.package-date-warning{padding:11px 13px;border-radius:9px;background:#fff4df;color:#815d20;font-size:12px;line-height:1.5}.package-date-form{display:grid;gap:15px}.package-date-form>p{color:#6c806f;font-size:12px;line-height:1.5;margin:0}.package-date-form>label:not(.receipt-file),.package-date-fields label{display:grid;gap:6px;color:#3e5945;font-size:12px;font-weight:800}.package-date-form input:not([type=file]),.package-date-form select{min-width:0;width:100%;min-height:42px;padding:8px 10px;border:1px solid #dfe7dd;border-radius:8px;background:#fff;color:#2d4936;font-size:16px}.package-date-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.pending-date-list{border-top:1px solid #e5ebe3;margin-top:20px;padding-top:18px}.pending-date-list h3{margin:0 0 9px;color:#285b40;font-size:14px}.pending-date-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #edf0e9;padding:11px 0}.pending-date-row span{display:grid;gap:3px;min-width:0}.pending-date-row strong{overflow-wrap:anywhere;font-size:13px}.pending-date-row small{color:#829183;font-size:11px}.pending-date-row button{border:0;border-radius:7px;padding:9px;background:#f5f1ee;color:#8b675b;font-size:12px;font-weight:700}.toast{position:fixed;right:25px;bottom:25px;z-index:19;background:#285b40;color:#fff;border-radius:10px;padding:12px 15px;display:flex;align-items:center;gap:9px;box-shadow:0 12px 30px #253e2a40;font-size:12px;font-weight:700}.auth-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#f9faf6}.auth-card{align-self:center;justify-self:center;width:min(440px,calc(100% - 50px));padding:42px 22px}.auth-card .brand{padding:0;margin-bottom:55px}.auth-card .eyebrow{margin-bottom:17px}.auth-card h1{font-size:36px;line-height:1.1;letter-spacing:-1px;margin-bottom:12px}.auth-card>p{color:#8b9b8d;font-size:13px;line-height:1.6;margin-bottom:32px}.auth-card form{display:grid;gap:10px}.auth-card label{font-size:11px;font-weight:800;margin-top:5px}.auth-card input{height:44px;border:1px solid #dfe7dd;border-radius:8px;padding:0 12px;outline-color:#79aa80;background:#fff}.auth-card form .button{margin-top:11px;height:45px}.auth-links{display:flex;justify-content:space-between;margin-top:24px;gap:15px}.auth-links button{border:0;background:none;color:#447b54;font-weight:800;font-size:11px;display:flex;align-items:center;gap:5px;padding:0}.auth-error,.auth-message{padding:11px;border-radius:8px;font-size:11px;line-height:1.5;margin-bottom:16px}.auth-error{background:#fcece6;color:#a35644}.auth-message{background:#eaf3e9;color:#436b4e}.auth-aside{background:#e6eee3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:50px;overflow:hidden}.auth-aside h2{font-size:30px;max-width:340px;margin:0 0 10px}.auth-aside p{font-size:13px;color:#77917c;max-width:320px;line-height:1.6}.auth-art{height:310px;width:340px;position:relative;display:grid;place-items:center;margin-bottom:35px}.art-circle{position:absolute;border-radius:50%}.art-circle.one{height:280px;width:280px;background:#d4e3cf}.art-circle.two{height:190px;width:190px;background:#bcd5b6}.art-basket{position:relative;z-index:1;color:#3d7550;background:#f8faf4;border-radius:25px;width:160px;height:160px;display:grid;place-items:center;box-shadow:0 18px 38px #355e3630}.setup-steps{display:grid;gap:8px}.setup-steps code{background:#eaf1e7;padding:10px;border-radius:7px}.center-state{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:12px;color:#618069}.page .center-state{min-height:min(45vh,400px)}.spinner{height:21px;width:21px;border:2px solid #c9dfca;border-top-color:#3b7652;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:1100px){.page{padding:37px 30px 80px}.inventory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.today-grid{grid-template-columns:1fr 1fr}.topbar{padding:0 30px}}@media(max-width:800px){.swipe-tip{display:block;margin:-2px 0 11px;color:#829385;font-size:11px}.sidebar{display:none}.topbar{justify-content:space-between;height:63px;padding:0 20px}.mobile-brand{display:flex;align-items:center;gap:8px;font-family:Outfit,sans-serif;font-weight:800;color:#28583d}.mobile-brand .brand-mark{width:31px;height:31px}.page{padding:30px 22px 105px}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(66px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e6ece5;z-index:10;justify-content:space-around;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav button{border:0;background:none;color:#96a496;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:58px;font-size:10px;font-weight:800}.bottom-nav button.selected{color:#2e6949}.toast{bottom:calc(78px + env(safe-area-inset-bottom))}.shopping-add input,.item-form input,.item-form select,.item-form textarea,.invite-card input,.household-switch select,.search-field input,.onboard-form input,.auth-card input,.receipt-purchase-date input,.receipt-line-fields input,.receipt-line-fields select{font-size:16px}}@media(max-width:620px){.page{padding:27px 16px calc(96px + env(safe-area-inset-bottom))}.page-heading{align-items:flex-start;margin-bottom:22px}.page-heading h1{font-size:27px}.page-heading p{font-size:12px}.pantry-heading{flex-direction:column}.pantry-heading .page-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.pantry-heading .page-actions .button{width:100%;justify-content:center;min-height:49px;padding:0 8px;font-size:13px}.pantry-heading .page-actions .button:last-child{grid-column:1 / -1}.desktop-action{display:none}.stats-grid{gap:9px}.stat-card{padding:13px 11px;min-height:150px}.stat-icon{height:33px;width:33px;margin-bottom:13px}.stat-value{font-size:24px}.stat-title{font-size:10px;line-height:1.3}.stat-foot{font-size:9px}.today-grid,.shopping-layout,.settings-grid{grid-template-columns:minmax(0,1fr)}.today-grid .card{min-height:unset;padding:19px}.toolbar{display:grid;grid-template-columns:minmax(0,1fr)}.search-field{width:100%;min-width:0;max-width:none}.filters{flex-wrap:nowrap;overflow:auto}.filters button{white-space:nowrap;padding:8px 12px}.inventory-grid{grid-template-columns:1fr;gap:12px}.inventory-card{padding:17px}.inventory-card h3{font-size:18px}.inventory-actions button{min-height:46px;font-size:12px}.shopping-add{display:grid;grid-template-columns:minmax(0,1fr) 48px;gap:8px}.shopping-card{min-width:0;min-height:0}.shopping-add input:first-child{grid-column:1 / -1;min-height:44px}.shopping-add .amount-input{width:100%;min-height:44px}.shopping-add .button{width:48px;min-height:44px;padding:0}.shopping-add .button span{display:none}.shopping-row-edit{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.shopping-row-edit>input:first-child,.shopping-edit-actions{grid-column:1 / -1}.shopping-row-edit input{font-size:16px}.shopping-edit-actions button{min-height:38px}.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-backdrop{padding:0;place-items:end center}.modal{max-height:93vh;border-radius:17px 17px 0 0;width:100%}.modal-header{padding:20px}.item-form{padding:18px 20px 25px}.auth-screen{grid-template-columns:1fr}.auth-aside{display:none}.auth-card{width:min(440px,100%);padding:40px 25px}.topbar-house{display:none}}@media(max-width:390px){.inventory-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr 1fr}.stat-card:last-child{grid-column:span 2}.page-heading .button{padding:0 10px}.page-heading .button svg{width:15px}.page-actions{justify-content:flex-start}.receipt-start,.receipt-review{padding:18px 20px 25px}.receipt-line-fields,.package-date-fields{grid-template-columns:1fr}}.setup-screen{grid-template-columns:1fr}.setup-screen .auth-card{background:#fff;border:1px solid #e5ebe4;border-radius:16px;padding:38px;width:min(480px,calc(100% - 32px))}.setup-screen .auth-card .brand{margin-bottom:34px}.toast button{border:0;background:#e5f2e6;color:#265b3c;border-radius:5px;padding:5px 8px;margin-left:6px;font-size:11px;font-weight:800}
