:root{--paper: #f4efe3;--paper-inset: #efe9dc;--ink: #211c15;--accent: #c0552f;--accent-hover: #a4471f;--error: #b3261e;--ink-62: rgba(33, 28, 21, .62);--ink-55: rgba(33, 28, 21, .55);--ink-50: rgba(33, 28, 21, .5);--ink-45: rgba(33, 28, 21, .45);--ink-35: rgba(33, 28, 21, .35);--ink-28: rgba(33, 28, 21, .28);--rule: rgba(33, 28, 21, .1);--rule-strong: rgba(33, 28, 21, .16);--field-border: rgba(33, 28, 21, .22);--on-ink: #f4efe3;--on-ink-soft: rgba(244, 239, 227, .6);--font-display: "PT Serif", georgia, serif;--font-text: "PT Sans", -apple-system, "Helvetica Neue", arial, sans-serif;--size-total: 34px;--size-h1: 24px;--size-h2: 21px;--size-row: 15px;--size-num: 13px;--size-caps: 11px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--radius-card: 12px;--radius-button: 10px;--radius-field: 8px;--radius-sheet: 18px;--tabbar-h: 58px}*{box-sizing:border-box;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-text);font-size:var(--size-row);-webkit-font-smoothing:antialiased}h1,h2,h3,.display{font-family:var(--font-display);font-weight:700}h1{font-size:var(--size-h1)}h2{font-size:var(--size-h2)}.num{font-variant-numeric:tabular-nums}.soft{color:var(--ink-50)}.caps{font-size:var(--size-caps);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-50)}hr,.rule{border:0;border-top:1px solid var(--rule)}a{color:var(--accent);text-decoration:none}button{font:inherit;cursor:pointer}input{font:inherit;color:inherit}main{padding:var(--space-4);padding-bottom:calc(var(--tabbar-h) + 40px)}.btn{width:100%;border:none;background:var(--accent);color:#fff;font-size:16px;font-weight:700;padding:14px;border-radius:var(--radius-button)}.btn:hover{background:var(--accent-hover)}.btn-outline{width:100%;border:1px solid var(--accent);background:transparent;color:var(--accent);font-size:16px;font-weight:700;padding:13px;border-radius:var(--radius-button)}.btn-ghost{width:100%;border:1px dashed var(--ink-28);background:transparent;color:var(--accent);font-size:var(--size-row);font-weight:700;padding:12px;border-radius:var(--radius-button)}.btn-quiet{border:1px solid var(--ink-28);background:transparent;color:var(--ink);font-size:var(--size-row);font-weight:700;padding:11px;border-radius:var(--radius-button)}.action{border:none;background:transparent;color:var(--accent);font-size:var(--size-num);font-weight:700;padding:0}.action:disabled{color:var(--ink-28);cursor:default}.screen-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.lines{width:100%;border-collapse:collapse;border-top:1px solid var(--rule-strong)}.lines td{padding:var(--space-3) 0;border-bottom:1px solid var(--rule);vertical-align:middle}.error{color:var(--error);font-size:var(--size-num);margin-top:var(--space-2)}.tabbar{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,1fr);padding:var(--space-2) var(--space-1) var(--space-3);border-top:1px solid rgba(33,28,21,.14);background:var(--paper)}.tab{display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--ink-45);text-decoration:none;font-size:10.5px}.tab-active{color:var(--accent);font-weight:700}.login{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-4)}.login-card{width:100%;max-width:358px}.login-rubric{font-family:var(--font-display);letter-spacing:.24em;color:var(--accent)}.login-title{font-size:34px;line-height:1.05;margin:var(--space-2) 0 var(--space-1)}.login-hint{color:var(--ink-55);font-size:14px;line-height:1.5;margin-bottom:var(--space-5)}.login-input{width:100%;border:0;border-bottom:1.5px solid var(--accent);background:transparent;padding:7px 0;margin-top:var(--space-1);font-size:17px}.login-input:focus{outline:none}.login-submit{margin-top:var(--space-5)}.nutrients-inline b{font-weight:700}.sheet-wrap{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end}.sheet-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;padding:0;background:#211c1547}.sheet{position:relative;max-height:88%;display:flex;flex-direction:column;background:var(--paper);border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;box-shadow:0 -8px 24px #211c1529}.sheet-handle{width:36px;height:4px;border-radius:2px;background:#211c1533;margin:var(--space-2) auto 6px}.sheet-search{display:flex;align-items:center;gap:var(--space-2);margin:6px var(--space-4) var(--space-3);border:1px solid var(--field-border);border-radius:var(--radius-button);padding:10px var(--space-3);color:var(--ink-45)}.sheet-search input{flex:1;min-width:0;border:0;background:transparent;font-size:var(--size-row);color:var(--ink)}.sheet-search input:focus{outline:none}.sheet-body{overflow:auto;padding-bottom:var(--space-4)}.pick-group{padding:var(--space-3) var(--space-4) 2px}.pick-group.accent{color:var(--accent)}.pick-list{list-style:none;padding:0;margin:6px var(--space-4) 0;border-top:1px solid rgba(33,28,21,.12)}.pick-row{width:100%;display:flex;align-items:center;gap:var(--space-3);border:0;border-bottom:1px solid var(--rule);background:transparent;padding:11px 0;text-align:left;color:inherit}.pick-list li:last-child .pick-row{border-bottom:0}.pick-text{flex:1;min-width:0}.pick-title{display:block;font-size:var(--size-row)}.pick-sub{display:block;font-size:12px;color:var(--ink-50)}.pick-kind{color:var(--accent)}.pick-star{font-size:16px;color:var(--ink-28)}.pick-star.on{color:var(--accent)}.pick-empty{padding:var(--space-5) var(--space-4) 6px;text-align:center;color:var(--ink-55);font-size:14px;line-height:1.5}.pick-create{display:flex;align-items:center;gap:var(--space-2);width:calc(100% - var(--space-4) * 2);margin:var(--space-2) var(--space-4) 0;border:0;border-top:1px solid rgba(33,28,21,.12);background:transparent;padding:13px 0;color:var(--accent);font-size:var(--size-row);font-weight:700;text-align:left}.pick-plus{font-size:18px}.totals-bar{position:fixed;left:0;right:0;bottom:var(--tabbar-h);z-index:10;background:var(--ink);color:var(--on-ink);padding:14px var(--space-4) var(--space-3)}.totals-head{display:flex;align-items:baseline;justify-content:space-between}.totals-caps{color:var(--on-ink-soft)}.totals-kcal{font-size:var(--size-total);line-height:1}.totals-unit{font-size:var(--size-row);color:var(--on-ink-soft)}.totals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:var(--space-2)}.totals-value{font-size:22px}.totals-label{font-size:var(--size-caps);color:var(--on-ink-soft)}.weight-input{display:inline-flex;align-items:baseline;gap:2px;border:1px solid var(--field-border);border-radius:var(--radius-field);padding:5px 8px;font-size:14px}.weight-input:focus-within{border-color:var(--accent);border-width:1.5px;padding:4.5px 7.5px}.weight-input input{width:44px;min-width:0;border:0;background:transparent;padding:0;text-align:right;font-size:14px;font-variant-numeric:tabular-nums}.weight-input input:focus{outline:none}.weight-unit{color:var(--ink-50);font-size:12px}.product-form{display:flex;flex-direction:column;gap:var(--space-4);padding-bottom:var(--space-6)}.form-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin:calc(var(--space-4) * -1) calc(var(--space-4) * -1) 0;padding:0 14px 10px;border-bottom:1px solid rgba(33,28,21,.08)}.form-title{font-size:var(--size-num);font-weight:700}.form-head-pad{width:56px}.form-hint{background:var(--paper-inset);margin:0 calc(var(--space-4) * -1);padding:var(--space-2) var(--space-4);font-size:12px;color:var(--ink-62);border-bottom:1px solid var(--rule)}.field{display:block}.field-optional{text-transform:none;letter-spacing:0}.field-line{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);border-bottom:1px solid var(--field-border);padding:7px 0;margin-top:6px}.field-line:focus-within{border-bottom:1.5px solid var(--accent);padding-bottom:6.5px}.field-line input{flex:1;min-width:0;border:0;background:transparent;font-size:var(--size-row)}.field-line input:focus{outline:none}.field-line-name input{font-family:var(--font-display);font-size:17px}.star{border:0;background:transparent;color:var(--ink-28);font-size:20px;line-height:1;padding:0}.star.on{color:var(--accent)}.values{border:1px solid var(--rule-strong);border-radius:var(--radius-card);padding:14px 14px var(--space-4);margin:0}.values-basis{display:flex;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-3);font-size:var(--size-num)}.basis-input{width:54px;border:0;border-bottom:1.5px solid var(--accent);background:transparent;padding:2px 10px;font-size:16px;font-weight:700;text-align:center}.basis-input:focus{outline:none}.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.values-grid label{display:block}.values-label{display:block;font-size:var(--size-caps);color:var(--ink-50)}.values-grid input{width:100%;border:1px solid var(--field-border);border-radius:var(--radius-field);background:transparent;padding:9px 11px;margin-top:var(--space-1);font-size:16px}.values-grid input:focus{outline:none;border-color:var(--accent)}.preview{background:var(--paper-inset);border-radius:var(--radius-card);padding:var(--space-3) 14px}.preview-value{font-size:20px;margin-top:var(--space-1)}.preview-hint{font-size:12px;color:var(--ink-50);margin-top:2px}.form-submit{margin-top:var(--space-2)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.form-delete{width:100%;margin-top:var(--space-6);color:var(--error);border-color:#b3261e66}.expandable>summary{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);cursor:pointer;list-style:none}.expandable>summary::-webkit-details-marker{display:none}.expandable>summary:after{content:"›";color:var(--ink-45);transform:none}.expandable[open]>summary:after{color:var(--accent);transform:rotate(90deg)}.pick-cooking-head{display:flex;align-items:center;gap:var(--space-3);padding:0 var(--space-4) var(--space-3)}.chevron-back{border:0;background:transparent;color:var(--accent);font-size:20px;padding:0;line-height:1}.pick-cooking-name{font-size:19px}.pick-cooking-hint{font-size:12px}.cooking-list{border-top:1px solid rgba(33,28,21,.14);margin:0 var(--space-4)}.cooking-row{padding:var(--space-3) 0;border-bottom:1px solid var(--rule)}.cooking-row:last-child{border-bottom:0}.cooking-date{font-size:var(--size-row);font-weight:700}.cooking-meta{font-size:12px}.cooking-ingredients{list-style:none;padding:0;margin:var(--space-2) 0 0}.cooking-ingredients li{display:flex;justify-content:space-between;font-size:var(--size-num);padding:3px 0}.cooking-take{margin-top:var(--space-2);font-size:14px;padding:9px 14px}.empty{display:flex;flex-direction:column;align-items:center;gap:14px;padding:56px var(--space-6) 40px;text-align:center}.empty-glyph{font-size:46px;color:#211c1529;line-height:1}.empty-title{font-size:20px}.empty-hint{font-size:14px;color:var(--ink-55);line-height:1.5}.calc-lines td{vertical-align:middle}.calc-weight{width:74px}.calc-name{padding-left:var(--space-3)}.calc-dish{font-size:12px;color:var(--accent)}.calc-kcal{text-align:right;white-space:nowrap}.calc-kcal-value{font-size:16px;font-weight:700}.nutrients-inline{font-size:var(--size-caps)}.calc-remove{width:28px;text-align:right}.calc-remove button{border:0;background:transparent;color:var(--ink-35);font-size:15px;padding:0 0 0 var(--space-2)}.calc-add{margin-top:14px}.calc-title{display:block;margin-top:var(--space-5)}.calc-title input{width:100%;border:0;border-bottom:1px solid var(--field-border);background:transparent;padding:7px 0;margin-top:var(--space-1);font-size:var(--size-row)}.calc-title input:focus{outline:none;border-bottom:1.5px solid var(--accent)}.calc-title,.calc-add{margin-bottom:120px}.dish-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule-strong)}.dish-list a{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:14px 0;border-bottom:1px solid var(--rule);color:inherit}.dish-name{display:block;font-size:16px}.dish-meta{display:block;font-size:12px}.chevron{color:var(--ink-35)}.dish-actions{margin-bottom:var(--space-5)}.cooking-card{border:1px solid var(--rule-strong);border-radius:var(--radius-card);padding:14px;margin-bottom:var(--space-3)}.cooking-card-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.cooking-card-date{font-size:16px;font-weight:700}.cooking-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.cooking-fields label{display:block;font-size:var(--size-caps);color:var(--ink-50)}.cooking-fields input{display:block;width:84px;border:0;border-bottom:1.5px solid var(--accent);background:transparent;padding-bottom:2px;font-size:16px;font-variant-numeric:tabular-nums}.cooking-fields input:focus{outline:none}.cooking-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:var(--space-3)}.stat{background:var(--paper-inset);border-radius:var(--radius-button);padding:10px}.stat-dark{background:var(--ink);color:var(--on-ink)}.stat-label{font-size:var(--size-caps);color:var(--ink-50)}.stat-dark .stat-label,.stat-dark .stat-sub{color:var(--on-ink-soft)}.stat-value{font-size:18px}.stat-sub{font-size:var(--size-caps);color:var(--ink-50)}.cooking-composition{border-top:1px solid rgba(33,28,21,.12);margin-top:var(--space-3);padding-top:10px}.cooking-composition ul{list-style:none;padding:0;margin:6px 0 0}.cooking-composition li{display:flex;justify-content:space-between;font-size:var(--size-num);padding:3px 0}.cooking-card-actions{display:flex;gap:var(--space-3);margin-top:var(--space-3);border-top:1px solid rgba(33,28,21,.12);padding-top:10px}.cooking-card-actions button{border:0;background:transparent;padding:0;font-size:var(--size-num);font-weight:700;color:var(--accent)}.cooking-card-actions .danger{color:var(--error)}.dish-title{margin:var(--space-4) 0 var(--space-3);font-size:23px}.cooking-total{font-size:12px;margin-top:10px}.editor-hint{font-size:13px;margin-bottom:var(--space-3)}.editor-weight{width:90px;text-align:right}.editor-remove{width:28px;text-align:right}.editor-remove button{border:0;background:transparent;color:var(--error);font-size:18px;padding:0 0 0 var(--space-2)}.editor-add{margin-top:14px}.editor-save{margin-top:var(--space-4)}.servings{border-top:1px solid rgba(33,28,21,.12);margin-top:var(--space-3);padding-top:10px}.servings-empty{font-size:12px;color:var(--ink-50);line-height:1.5;margin-top:var(--space-1)}.servings-table{margin-top:6px}.serving-weight{width:62px;font-size:var(--size-row);font-weight:700}.serving-label{padding-left:var(--space-2);font-size:12px}.serving-kcal{text-align:right;white-space:nowrap}.serving-kcal-value{font-size:16px;font-weight:700}.serving-remove{width:28px;text-align:right}.serving-remove button{border:0;background:transparent;color:var(--error);font-size:18px;padding:0 0 0 var(--space-2)}.serving-add{display:grid;grid-template-columns:76px 1fr;gap:var(--space-2);align-items:end;margin-top:var(--space-3)}.serving-add label{display:block}.serving-add input{width:100%;border:1px solid var(--field-border);border-radius:var(--radius-field);background:transparent;padding:7px 9px;margin-top:2px;font-size:14px}.serving-add input:focus{outline:none;border-color:var(--accent)}.serving-add-btn{grid-column:1 / -1;width:100%;padding:9px;font-size:14px}.serving-kcal-unit{font-size:var(--size-caps);font-weight:400;color:var(--ink-50)}.progress{height:3px;background:var(--rule);margin:0 calc(var(--space-4) * -1)}.progress-fill{height:100%;background:var(--accent)}.step-title{margin:var(--space-4) 0 2px;font-size:21px}.step-hint{font-size:var(--size-num);margin-bottom:var(--space-3)}.base-card{border:1px solid var(--rule-strong);border-radius:var(--radius-card);padding:14px;margin-bottom:var(--space-3)}.base-card-first{border-color:var(--accent)}.base-ingredients{list-style:none;padding:0;margin:var(--space-2) 0 0}.base-ingredients li{display:flex;justify-content:space-between;font-size:var(--size-num);padding:3px 0}.base-take{margin-top:10px;font-size:14px;padding:10px;border-radius:9px}.base-empty{width:100%;margin-top:var(--space-2)}.row-gone{font-size:12px;color:var(--error)}.raw-total{font-size:12px;margin-top:var(--space-3)}.final-field{margin-bottom:var(--space-5)}.final-weight input{font-family:var(--font-display);font-size:28px}.final-weight{border-bottom:1.5px solid var(--accent)}.final-note{display:block;font-size:12px;color:var(--ink-50);margin-top:var(--space-1)}.required{color:var(--error);text-transform:none;letter-spacing:0}.final-submit{margin-top:var(--space-4)}.search-field{display:flex;align-items:center;gap:var(--space-2);border:1px solid var(--field-border);border-radius:var(--radius-button);padding:9px var(--space-3);color:var(--ink-45);margin-bottom:var(--space-3)}.search-field input{flex:1;min-width:0;border:0;background:transparent;font-size:14px;color:var(--ink)}.search-field input:focus{outline:none}.chips{display:flex;gap:var(--space-2);flex-wrap:wrap;margin-bottom:var(--space-3)}.chip{border:1px solid var(--field-border);background:transparent;color:var(--ink);border-radius:16px;padding:5px var(--space-3);font-size:var(--size-num)}.chip.on{border-color:var(--accent);background:var(--accent);color:#fff;font-weight:700}.list-empty{padding:40px var(--space-4);text-align:center;color:var(--ink-55);font-size:14px;line-height:1.5}.product-name{cursor:pointer}.product-brand{font-size:12px}.product-nobrand{color:var(--ink-35)}.product-kcal{text-align:right;white-space:nowrap;font-size:12px;color:var(--ink-55);cursor:pointer}.product-star{width:44px;text-align:right}.product-star .star{border:0;background:transparent;font-size:17px;line-height:1;color:var(--ink-28);padding:var(--space-3) 0 var(--space-3) var(--space-4)}.product-star .star.on{color:var(--accent)}.calc-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--rule-strong)}.calc-list a{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:14px 0;border-bottom:1px solid var(--rule);color:inherit}.calc-title-cell{display:block;font-size:var(--size-row)}.calc-untitled{color:var(--ink-55);font-style:italic}.calc-meta{display:block;font-size:12px}.calc-kcal{text-align:right}.calc-kcal-value{display:block;font-size:17px;font-weight:700}.calc-kcal-unit{display:block;font-size:var(--size-caps);color:var(--ink-50)}.calc-head{margin:var(--space-4) 0 0;font-size:23px}.calc-date{font-size:var(--size-num);margin-bottom:var(--space-3)}.calc-items td{vertical-align:middle}.calc-item-weight{width:60px;text-align:right;font-size:var(--size-num);color:var(--ink-55)}.calc-item-name{padding-left:var(--space-3)}.calc-item-kcal{text-align:right;font-size:var(--size-row);font-weight:700}.calc-buttons{display:flex;flex-direction:column;gap:var(--space-2);margin-top:var(--space-4);margin-bottom:140px}.calc-delete{width:100%;color:var(--error);border-color:#b3261e66}
