:root{color:#183b2f;font-synthesis:none;background:#f7f7f1;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{color:#126347;text-underline-offset:.2em}a:hover{color:#0b4834}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #ad7432}.skip-link{z-index:10;color:#fff;background:#173a2c;border-radius:.5rem;padding:.7rem 1rem;position:absolute;top:-5rem;left:1rem}.skip-link:focus{top:1rem}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}p{line-height:1.7}h1{letter-spacing:-.05em;text-wrap:balance;margin:0 0 1rem;font-size:clamp(2.35rem,5vw,3.8rem);line-height:1.14}h2{letter-spacing:-.03em;margin:2.3rem 0 1rem;font-size:1.45rem}.eyebrow{color:#47745c;letter-spacing:.14em;text-transform:uppercase;margin:0 0 .8rem;font-size:.78rem;font-weight:800}.lead{color:#405b4b;max-width:45rem;margin:0 0 1.7rem;font-size:1.1rem}.language-entry{width:min(100% - 3rem,72rem);margin:5rem auto}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-header{background:#fbfcf8;border-bottom:1px solid #d6dfd3}.header-inner{justify-content:space-between;align-items:center;gap:1rem;width:min(100% - 3rem,72rem);min-height:5.5rem;margin:auto;padding-block:.75rem;display:flex}.wordmark{color:#183b2f;letter-spacing:-.05em;white-space:nowrap;align-items:center;gap:.55rem;font-size:1.4rem;font-weight:800;text-decoration:none;display:inline-flex}.wordmark:before{content:"";background:#40865c;border-radius:100% 0;width:.65rem;height:.9rem;display:block;transform:rotate(-24deg)}.app-header nav{flex-wrap:wrap;align-items:center;gap:.2rem;display:flex}.app-header nav a{color:#345343;white-space:nowrap;border-radius:.45rem;align-items:center;min-height:2.75rem;padding:.45rem .7rem;font-size:.93rem;font-weight:700;text-decoration:none;display:inline-flex}.app-header nav a:hover,.app-header nav a[aria-current=page]{color:#0f5a3f;background:#eaf2e8}.app-header nav a[aria-current=page]{box-shadow:inset 0 -2px #287a53}.language-menu{border-left:1px solid #c8d4c8;margin-left:.6rem;padding-left:.6rem;position:relative}.language-menu summary{color:#345343;cursor:pointer;white-space:nowrap;border-radius:.45rem;align-items:center;gap:.45rem;min-height:2.75rem;padding:.45rem .6rem;font-size:.93rem;font-weight:700;list-style:none;display:inline-flex}.language-menu summary::-webkit-details-marker{display:none}.language-menu summary:after{content:"▾";font-size:.8em}.language-menu summary:hover,.language-menu[open] summary{color:#0f5a3f;background:#eaf2e8}.language-menu summary:focus-visible{outline-offset:3px;outline:3px solid #ad7432}.language-options{z-index:5;background:#fbfcf8;border:1px solid #c8d4c8;border-radius:.6rem;min-width:10rem;padding:.35rem;position:absolute;right:0;box-shadow:0 12px 28px #163c2921}.app-header nav .language-options a{width:100%;display:flex}.app-main{flex:1;width:min(100% - 3rem,72rem);margin:0 auto;padding:2.4rem 0 5rem}.app-footer{background:#eaf1e9;border-top:1px solid #d4dfd3;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.6rem max(1.5rem,50vw - 36rem);display:flex}.storage-banner{color:#4d4936;background:#fff9e9;border:1px solid #ded7ba;border-radius:.8rem;flex-wrap:wrap;align-items:center;gap:.35rem 1rem;margin-bottom:2.8rem;padding:.85rem 1.15rem;font-size:.88rem;display:flex}.storage-banner a{white-space:nowrap;margin-left:auto;font-weight:750}.alert{border-radius:.65rem;margin-bottom:1.5rem;padding:.9rem 1rem}.alert.error{z-index:5;color:#8d2922;background:#fff0ed;border:1px solid #dba7a0;position:sticky;top:.75rem;box-shadow:0 8px 20px #8d29221a}.alert.success{color:#1f6136;background:#edf9f0;border:1px solid #a5ccb0}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.7rem;display:flex}.page-heading .lead{margin-bottom:0}.actions{flex-wrap:wrap;align-items:center;gap:.8rem;margin-top:1.2rem;display:flex}.button{color:#fff;text-align:center;background:#165d43;border:1px solid #165d43;border-radius:.6rem;justify-content:center;align-items:center;width:fit-content;min-height:3rem;padding:.65rem 1.15rem;font-weight:750;text-decoration:none;display:inline-flex}.button:hover{color:#fff;background:#0e4734}.button.secondary{color:#165d43;background:0 0}.button.secondary:hover{background:#eaf1e9}.button.danger{background:#963a31;border-color:#963a31}.button.danger:hover{background:#762c25}.back-link{margin:0 0 1.3rem;font-weight:650;display:inline-block}.home-intro{max-width:50rem}.home-recipes{margin-top:2.5rem}.home-recipes h2{margin:0 0 1rem}.home-shortcuts a{font-weight:750}.home-shortcuts{flex-wrap:wrap;gap:.8rem 1.5rem;margin-top:1.3rem;display:flex}.next-step{background:linear-gradient(115deg,#e4eee3,#f7faf4);border:1px solid #c7dac8;border-radius:1rem;justify-content:space-between;align-items:center;gap:1.5rem;margin-top:2.7rem;padding:clamp(1.4rem,3vw,2rem);display:flex}.next-step .eyebrow{margin-bottom:.5rem}.next-step h2{margin:0 0 .4rem;font-size:clamp(1.4rem,2.5vw,1.9rem)}.next-step p:last-child{color:#3b5849;margin:0}.next-step .button{flex-shrink:0}.stat-grid,.data-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;margin-top:1.1rem;display:grid}.stat-card,.panel,.result-panel{background:#fff;border:1px solid #d8e2d6;border-radius:1rem;padding:1.35rem;box-shadow:0 12px 30px #163c2909}.stat-card{color:#183b2f;flex-direction:column;justify-content:space-between;gap:.4rem;min-height:10rem;text-decoration:none;display:flex}.stat-card:hover{background:#fbfdf9;border-color:#98bca1}.stat-card span{color:#405b4b;font-weight:700}.stat-card strong{font-size:clamp(1.7rem,3vw,2.2rem);line-height:1.1}.stat-card small{color:#126347;font-weight:700}.scope-note{color:#526858;border-left:3px solid #93ac96;margin-top:1.4rem;padding-left:.9rem}.empty-state{color:#405b4b;background:#fcfdf9;border:1px dashed #bdccbe;border-radius:.8rem;padding:1.5rem}.empty-state strong{color:#183b2f;font-size:1.15rem;display:block}.empty-state p{margin:.45rem 0 1rem}.list{background:#fff;border:1px solid #d8e2d6;border-radius:.8rem;overflow:hidden}.list-item{color:#183b2f;border-bottom:1px solid #e3eae1;justify-content:space-between;align-items:center;gap:.8rem 1.5rem;padding:1rem 1.2rem;text-decoration:none;display:flex}.list-item:last-child{border-bottom:none}a.list-item:hover{background:#f1f6ef}.list-item strong{font-size:1.03rem}.list-item span:first-child{flex-direction:column;gap:.25rem;display:flex}.list-item small{color:#63796a}.list-item span:last-child{text-align:right}.list-meta{color:#345343;align-items:center;gap:1rem;font-weight:650;display:inline-flex}.list-meta span{color:#247351;font-size:1.2rem}.recipe-list-cost span:first-child{flex-direction:column;gap:.2rem;display:flex}.recipe-list-cost span:first-child strong{color:#183b2f}.recipe-list-cost span:first-child small{color:#63796a;font-size:.8rem;font-weight:500}.price-status:not(:empty){color:#215e43;background:#eaf2e8;border-radius:999px;padding:.3rem .7rem;font-size:.8rem;font-weight:700}.form-stack{gap:1rem;display:grid}.form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));align-items:end;gap:1rem;display:grid}.form-help{color:#526858;grid-column:1/-1;margin:0;font-size:.93rem}label{gap:.4rem;font-size:.92rem;font-weight:700;display:grid}input,select{color:#183b2f;background:#fff;border:1px solid #9cb3a1;border-radius:.5rem;width:100%;min-height:3rem;padding:.55rem .75rem}input:hover,select:hover{border-color:#497e5e}input[type=checkbox]{width:1rem;min-height:1rem}input[type=file]{padding:.5rem}small{color:#63796a;line-height:1.5}.recipe-line{grid-template-columns:minmax(10rem,2fr) minmax(7rem,1fr) minmax(6rem,1fr) auto;align-items:end;gap:.8rem;display:grid}.text-button{color:#8d2922;background:0 0;border:1px solid #0000;border-radius:.5rem;min-height:3rem;padding:.65rem .55rem;font-weight:700}.text-button:hover:not(:disabled){background:#fff3f1;border-color:#e8c9c5}.result-panel{border-color:#b8d2bd;margin-top:3rem}.result-panel h2{margin-top:0}.data-grid h2{margin:0}.result-panel .eyebrow{margin-bottom:.4rem}.result-note{color:#405b4b;max-width:48rem;margin:0}.result-panel h3{margin:1.7rem 0 .8rem;font-size:1.05rem}.cost-totals{flex-wrap:wrap;gap:1.2rem;margin:1.6rem 0;display:flex}.cost-totals div{background:#edf5eb;border-radius:.7rem;flex-direction:column;flex:1;gap:.3rem;min-width:12rem;padding:1.1rem 1.3rem;display:flex}.cost-totals div:last-child{background:#dfeee0}.cost-totals strong{font-size:clamp(1.5rem,3vw,2rem)}.backup-summary{color:#345343;background:#eaf2e8;border:1px solid #c6d9c7;border-radius:999px;width:fit-content;max-width:100%;margin:.5rem 0 2.5rem;padding:.55rem 1rem;font-size:.9rem;font-weight:700}.flow-note{background:#edf5eb;border:1px solid #c7dac8;border-radius:.9rem;justify-items:start;gap:.55rem;margin:1.8rem 0 2.2rem;padding:1.35rem;display:grid}.flow-note h2,.flow-note p{margin:0}.flow-note h2{font-size:1.25rem}.flow-note p{color:#405b4b}.flow-note a{font-weight:750}.flow-note .button{margin-top:.4rem}#purchase-price,#recipe-editor,#current-cost{scroll-margin-top:1.5rem}.inline-success{color:#1f6136;background:#edf9f0;border:1px solid #a5ccb0;border-radius:.6rem;grid-column:1/-1;width:100%;margin:0;padding:.7rem .9rem;font-weight:700}.price-preview{color:#215e43;background:#edf5eb;border-radius:.6rem;grid-column:1/-1;margin:0;padding:.7rem .9rem;font-weight:750}.missing-price{color:#4d4936;background:#fff9e9;border:1px solid #ded7ba;border-radius:.7rem;margin:1rem 0;padding:1rem 1.15rem}.missing-price p{margin:.4rem 0}.missing-price a{font-weight:750}.result-actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.3rem;margin-top:1.5rem;display:flex}.result-actions a:not(.button){font-weight:700}.data-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));margin-top:0}.data-grid .panel{flex-direction:column;align-items:start;gap:.85rem;display:flex}.data-grid .panel:first-child{background:#fbfdf9;border-color:#b9d3bd}.step-label{color:#397459;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.data-grid p{color:#405b4b;margin:0}.data-grid label{width:100%}.import-preview{border-top:1px solid #d8e2d6;gap:.8rem;width:100%;padding-top:1rem;display:grid}.backup-file-name{overflow-wrap:anywhere}.restore-comparison{grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:.7rem;display:grid}.restore-comparison>div{background:#fbfdf9;border:1px solid #d8e2d6;border-radius:.6rem;gap:.45rem;padding:.85rem;display:grid}.restore-comparison strong{font-size:.9rem}.restore-warning{border-left:3px solid #b78b4d;padding-left:.75rem}.checkbox{align-items:start;gap:.6rem;font-weight:500;line-height:1.5;display:flex}@media (width<=43rem){.header-inner{flex-direction:column;align-items:start;gap:.5rem}.app-header nav{justify-content:space-between;gap:0;width:100%}.app-header nav a{padding-inline:.45rem}.language-menu{margin-left:.1rem;padding-left:.4rem}.app-main{width:min(100% - 2rem,72rem)}.next-step{flex-direction:column;align-items:start}.recipe-line{grid-template-columns:1fr 1fr}.recipe-line label:first-child{grid-column:1/-1}.list-item{flex-direction:column;align-items:start}.list-item span:last-child{text-align:left}.backup-summary{border-radius:.8rem}}@media (width<=24rem){.app-header nav{justify-content:start}.language-menu{border-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
