:root{color:#142c4c;font-synthesis:none;--teal:#07839a;--muted:#647c8a;background:#eaf5f7;font-family:Arial,Heebo,sans-serif;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:wait;opacity:.55}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:3px;outline:3px solid #22b2c8}button{background:#fff;border:0;border-radius:14px;min-height:44px;padding:10px 16px}header{background:#e1f5f6;border-bottom:1px solid #cae5e9;justify-content:space-between;align-items:center;padding:22px 28px;display:flex}header strong{letter-spacing:-1px;font-size:27px}header strong span{color:#07839a}header small{color:var(--muted)}main{max-width:1400px;margin:auto;padding:24px 28px 108px}h1{margin:0 0 20px;font-size:28px}.card{background:#fff;border-radius:26px;padding:24px;box-shadow:0 8px 30px #193c5110}nav{padding:8px 16px calc(8px + env(safe-area-inset-bottom));z-index:20;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffef;border-top:1px solid #dce9ed;justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}nav button{color:#647c8a;background:0 0;flex:1;place-items:center;gap:4px;min-width:100px;max-width:170px;font-size:24px;display:grid}nav button span{font-size:13px;font-weight:700}nav button.active{color:#07839a;background:#e0f3f5}header{padding-top:calc(18px + env(safe-area-inset-top))}@media (width<=600px){header{padding-inline:18px}header small{display:none}main{padding:20px 14px 105px}h1{font-size:24px}nav button{min-width:0}}a{color:inherit}.brand{align-items:center;gap:10px;text-decoration:none;display:flex}.brand-symbol{color:#fff;background:#07839a;border-radius:14px;place-items:center;width:40px;height:40px;display:grid}.header-tools{align-items:center;gap:16px;display:flex}.save-status{color:#427b71;align-items:center;gap:6px;font-size:12px;display:flex}.save-status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.save-status.saving{color:#83713c}.save-status.error,.save-status.conflict{color:#b34545}.icon-button{background:0 0;place-items:center;min-width:44px;padding:8px;display:inline-grid}.screen-heading{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.screen-heading h1{margin:8px 0}.screen-heading p{color:var(--muted);margin:0;font-size:14px;line-height:1.6}.eyebrow{letter-spacing:.2px;color:#07839a;font-size:12px;font-weight:700}.primary,.soft{justify-content:center;align-items:center;gap:8px;font-weight:600;display:inline-flex}.primary{color:#fff;background:#07839a;box-shadow:0 5px 12px #07839a18}.soft{color:#076c7e;background:#dff0f3}.small{min-height:38px;padding:8px 12px;font-size:12px}.pill{color:#4b737e;background:#f4fbfc;border:1px solid #c8e1e6;border-radius:30px;padding:8px 13px;font-size:12px}.completed{color:#71878d;text-decoration:line-through}.empty-icon{color:#07839a;background:#e1f2f4;border-radius:20px;place-items:center;width:60px;height:60px;margin-bottom:5px;display:grid}.hint{color:var(--muted);font-size:12px;line-height:1.7}.undo-bar{bottom:calc(87px + env(safe-area-inset-bottom));z-index:21;position:fixed;left:24px}.undo-bar button{border:1px solid #cee3e8;align-items:center;gap:7px;font-size:12px;display:flex;box-shadow:0 3px 12px #142c4c0a}.undo-bar button:disabled{opacity:0;pointer-events:none}.modal{color:#142c4c;background:#f7fbfc;border:0;border-radius:28px;width:min(620px,100% - 28px);max-height:calc(100dvh - 48px);padding:0;box-shadow:0 20px 80px #112b4a30}.modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#193a5066}.modal-head{z-index:2;background:#f7fbfc;border-bottom:1px solid #dfedf0;justify-content:space-between;align-items:center;padding:16px 22px;display:flex;position:sticky;top:0}.modal-head h2{margin:0;font-size:20px}.modal-body{padding:20px 22px}.list-row{border-bottom:1px solid #dfedf0;align-items:center;gap:12px;padding:12px 0;display:flex}.list-row>span{overflow-wrap:anywhere;flex:1}.danger{color:#b03a47;background:#fff0f1;font-size:12px}.error-banner{color:#933743;background:#fff0ef;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 22px;font-size:14px;display:flex}.loading{text-align:center;padding:100px 20px}.time-field{color:#5c7582;justify-content:space-between;align-items:center;gap:12px;font-size:13px;display:flex}.time-control{align-items:center;gap:6px;display:flex}.time-control input{color:#142c4c;background:#f0f7f9;border:1px solid #d3e5ea;border-radius:10px;min-width:105px;padding:10px;font-size:16px}.time-control button{background:0 0;min-width:44px;padding:5px;font-size:11px}input[type=checkbox]{accent-color:#07839a;flex-shrink:0;width:22px;height:22px}.field{gap:7px;margin-bottom:16px;font-size:13px;display:grid}.field input,.field textarea,.field select,.text-input{color:#142c4c;background:#fff;border:1px solid #d6e6eb;border-radius:12px;width:100%;min-width:0;padding:12px;font-size:16px}.field textarea{min-height:70px}.actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;display:flex}.divider{border:0;border-top:1px solid #dcebed;margin:22px 0}@media (width<=600px){header strong{font-size:24px}.header-tools{gap:8px}.save-status{font-size:10px}.brand-symbol{width:33px;height:33px}.brand{gap:7px}.screen-heading{flex-wrap:wrap;align-items:flex-start;gap:12px}.screen-heading h1{font-size:25px}.screen-heading p{font-size:12px}.screen-heading .primary{font-size:13px}.undo-bar{left:14px}.modal{width:100%;max-height:calc(100dvh - 20px);padding-bottom:env(safe-area-inset-bottom);border-radius:26px 26px 0 0;margin:auto auto 0}.modal-body{padding:18px}.modal-head{padding:14px 18px}}.info-card{color:#286777;background:#e6f3f5;border-radius:18px;gap:14px;padding:18px;display:flex}.info-card svg{flex-shrink:0}.info-card h3{margin:0 0 7px;font-size:16px}.info-card p{margin:0;font-size:13px;line-height:1.8}.file-button{cursor:pointer;border-radius:14px;min-height:44px;padding:12px 16px;font-size:14px;position:relative;overflow:hidden}.file-button input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;inset:0}.import-preview{background:#fff;border:1px solid #d7e5e9;border-radius:18px;margin-top:18px;padding:18px}.import-preview p{font-size:13px;line-height:1.8}.check-row{align-items:center;gap:9px;font-size:13px;display:flex}.notice{background:#e1f4ed;border-radius:12px;padding:14px;font-size:13px;line-height:1.8}.calendar-card{flex-direction:column;height:calc(100dvh - 276px);min-height:330px;padding:12px 14px 14px;display:flex;box-shadow:0 5px 30px #142c4c06}.calendar-heading{margin-bottom:16px}.calendar-heading .soft{font-size:13px}.month-heading{flex-shrink:0;align-items:center;gap:6px;padding-bottom:12px;display:flex}.month-heading h2{text-align:center;min-width:145px;margin:0 8px;font-size:21px}.rotate svg{transform:rotate(180deg)}.today-button{color:#07839a;background:#e8f4f6;min-height:36px;margin-inline-start:auto;padding:6px 12px;font-size:12px}.week-labels{color:#72909d;text-align:center;flex-shrink:0;grid-template-columns:repeat(7,minmax(0,1fr));padding:8px 0 12px;font-size:12px;display:grid}.month-grid{background:#e1edf0;border:1px solid #e1edf0;border-radius:16px;flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:1px;min-height:0;display:grid;overflow:hidden}.day-cell{text-align:right;background:#fff;border-radius:0;flex-direction:column;gap:3px;min-width:0;min-height:0;padding:7px 5px;display:flex;overflow:hidden}.outside-day{background:#f7fbfc;min-width:0}.day-number{border-radius:8px;place-items:center;width:23px;height:23px;min-height:23px;font-size:12px;display:grid}.today .day-number{color:#fff;background:#07839a;font-weight:700}.today{background:#f2fafb}.day-tasks{flex-direction:column;gap:1px;width:100%;min-width:0;display:flex}.month-task{color:#126379;white-space:nowrap;text-overflow:ellipsis;background:#e7f3f5;border-radius:4px;min-width:0;height:20px;padding:0 4px;font-size:12px;line-height:20px;display:block;overflow:hidden}.month-task.completed{color:#829993;background:#f0f5f4}.month-time{color:#547d86;font-size:10px}.more-tasks{white-space:nowrap;color:#6a8996;font-size:10px;line-height:20px}.day-date{justify-content:space-between;align-items:center;gap:8px;display:flex}.day-date label{color:#64808b;align-items:center;gap:10px;font-size:12px;display:flex}.day-date input{color:#142c4c;background:#fff;border:1px solid #cde3e8;border-radius:9px;max-width:150px;padding:8px;font-size:15px}.task-card{background:#fff;border:1px solid #dcebed;border-radius:18px;margin-top:14px;padding:16px}.task-title-row{align-items:flex-start;gap:9px;margin-bottom:12px;display:flex}.task-title-row textarea{resize:vertical;min-width:0;color:inherit;background:0 0;border:0;flex:1;font-size:16px;line-height:1.6}.task-title-row input[type=checkbox]{margin-top:5px}.task-title-row .icon-button{min-width:36px;min-height:36px;padding:7px}.short-label{color:#65818c;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;font-size:11px;display:flex}.short-label input{color:#142c4c;border:1px solid #e0ecef;border-radius:8px;min-width:0;max-width:150px;padding:8px;font-size:14px}.empty-inline{text-align:center;color:#74909d;justify-items:center;padding:28px 10px;display:grid}.empty-inline p{margin:12px 0 6px;font-size:16px}.empty-inline small{font-size:12px}.series-label{color:#608693;border-top:1px solid #eaf2f4;justify-content:space-between;align-items:center;gap:5px;margin-top:12px;padding-top:10px;font-size:10px;display:flex}.library-tools{flex-wrap:wrap;gap:8px;display:flex}.library-tools .text-input{flex:1;min-width:140px}.library-tools .primary{font-size:13px}.block{display:block}.muted{color:var(--muted);font-size:11px;line-height:1.9}.scope-note{color:#3b6a7a;background:#e5f3f6;border-radius:12px;padding:14px;font-size:13px;line-height:1.8}.weekday-picker{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.weekday-picker button{background:#e9f2f5;border-radius:10px;min-width:0;min-height:44px;padding:8px 2px;font-size:11px}.weekday-picker button.selected{color:#fff;background:#07839a}.date-fields{gap:12px;margin-top:20px;display:flex}.date-fields .field{flex:1;min-width:0}.date-fields input{max-width:100%;font-size:14px}.skipped{color:#547784;margin-top:20px;font-size:12px}@media (width<=600px){.calendar-card{border-radius:22px;height:calc(100dvh - 287px);min-height:320px;padding:10px 6px 7px}.calendar-heading{gap:10px}.calendar-heading h1{font-size:23px}.calendar-heading .soft{min-height:40px;padding:7px 10px;font-size:11px}.month-heading{gap:0;padding-bottom:5px}.month-heading h2{min-width:115px;margin:0 3px;font-size:19px}.month-heading .icon-button{min-width:34px;padding:5px}.week-labels{padding:7px 0 10px;font-size:10px}.day-cell{gap:1px;padding:5px 2px}.day-number{font-size:11px}.month-task{padding:0 2px;font-size:11px}.month-time{display:none}.more-tasks{font-size:9px}.short-label input{max-width:130px}.date-fields{gap:7px}.date-fields input{padding:10px 6px}.time-field{font-size:12px}}.food-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.day-jumps{flex-wrap:wrap;gap:5px;display:flex}.day-jumps a{color:#387887;background:#dfeff2;border-radius:10px;padding:8px 10px;font-size:11px;text-decoration:none}.food-week{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.food-day{padding:20px;scroll-margin-top:20px}.food-day-heading{color:#07839a;justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.food-day-heading h2{color:#142c4c;align-items:center;gap:10px;margin:0;font-size:18px;display:flex}.day-dot{color:#07839a;background:#e4f3f5;border-radius:10px;place-items:center;width:28px;height:28px;font-size:12px;display:grid}.meal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.meal-card{text-align:right;background:#f5fafb;border:1px solid #e4eef1;flex-direction:column;gap:12px;min-width:0;min-height:100px;padding:14px;display:flex}.meal-heading{align-items:center;gap:7px;width:100%;font-size:12px;display:flex}.meal-symbol{color:#709ca5;font-size:18px;line-height:1}.meal-heading bdi{color:#507986;margin-inline-start:auto;font-size:11px}.meal-empty{color:#8ba1ab;font-size:12px}.meal-items{color:#2e6578;overflow-wrap:anywhere;white-space:pre-wrap;font-size:13px;line-height:1.7}.has-food{background:#eff9f7;border-color:#cee6e2}.food-library-row,.meal-food-row{align-items:center;gap:7px;margin-top:12px;display:flex}.food-library-row .text-input,.meal-food-row .text-input{flex:1;width:0}.food-library-row .icon-button,.meal-food-row .icon-button{min-width:36px;padding:7px}.section-line{justify-content:space-between;align-items:center;display:flex}.section-line h3{margin:0;font-size:17px}@media (width<=700px){.food-week{grid-template-columns:1fr;gap:16px}.food-day{padding:18px}.day-jumps{justify-content:space-between;gap:3px;width:100%}.day-jumps a{padding:8px 7px}.food-summary{gap:14px}.meal-card{min-height:96px;padding:13px}}.pwa-banner{color:#256776;background:#d5eeed;justify-content:center;align-items:center;gap:12px;padding:9px 18px;font-size:12px;display:flex}.pwa-banner button{min-height:32px;padding:6px 12px;font-size:12px}.app:has(.pwa-banner) .calendar-card{height:calc(100dvh - 325px)}main.view-calendar{width:100%;height:calc(100dvh - var(--app-top-height,85px) - var(--app-nav-height,80px));flex-direction:column;padding-bottom:12px;display:flex}.view-calendar>.screen-heading,main>.hint{flex-shrink:0}.app main.view-calendar .calendar-card{flex:1;height:auto;min-height:260px}@media (height<=500px){main.view-calendar{height:auto;padding-bottom:110px}.app main.view-calendar .calendar-card{flex:none;height:360px}}.app main.view-flow{height:auto;min-height:calc(100dvh - var(--app-top-height,85px) - var(--app-nav-height,80px));padding-bottom:calc(130px + env(safe-area-inset-bottom));display:block}.process-heading h1{font-size:30px}.process-heading p{font-size:16px;line-height:1.7}.process-heading .primary{min-height:50px;padding:12px 18px;font-size:16px}.process-overview{color:#67828e;justify-content:space-between;gap:16px;margin:28px 0 16px;font-size:14px;display:flex}.process-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;display:grid}.process-tile{aspect-ratio:1;text-align:right;background:#fff;border:1px solid #dcebed;border-radius:26px;flex-direction:column;align-items:stretch;gap:16px;min-width:0;padding:24px;transition:border-color .15s,box-shadow .15s;display:flex;box-shadow:0 8px 26px #142c4c07}.process-tile-wrap{min-width:0;position:relative}.process-tile-wrap>.process-tile{width:100%}.process-rename{min-height:48px;font-size:15px;position:absolute;top:24px;left:24px}.process-name-field{max-width:640px;margin:0 0 24px}.process-name-field input{width:100%;min-height:54px;font-size:19px}.process-tile:hover{border-color:#7cbec9;box-shadow:0 8px 26px #07839a14}.process-tile-top{justify-content:space-between;align-items:center;display:flex}.process-tile-icon{color:#07839a;background:#e4f4f5;border-radius:16px;place-items:center;width:48px;height:48px;display:grid}.process-index{color:#9bb2bd;font-variant-numeric:tabular-nums;font-size:14px}.process-tile strong{-webkit-line-clamp:3;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:22px;line-height:1.5;display:-webkit-box;overflow:hidden}.process-tile-progress{color:#65828e;gap:10px;margin-top:auto;font-size:14px;display:grid}.progress-track{background:#e9f2f4;border-radius:10px;height:5px;display:block;overflow:hidden}.progress-track>span{background:#07839a;border-radius:10px;height:100%;display:block}.process-tile-open{color:#07839a;justify-content:space-between;align-items:center;font-size:15px;font-weight:700;display:flex}.process-tile.all-done{border-color:#b2ddd0}.process-tile.all-done .process-tile-icon{color:#378466;background:#e8f6ed}.process-empty{text-align:center;flex-direction:column;align-items:center;gap:18px;margin-top:26px;padding:44px 24px;display:flex}.process-empty h2{margin:0;font-size:25px}.process-empty p{color:#6a8491;margin:0;font-size:17px;line-height:1.8}.process-empty .primary,.process-empty .soft{min-height:50px;font-size:16px}.process-empty small{color:#75909c;font-size:13px}.process-back{color:#07839a;background:0 0;align-items:center;gap:9px;min-height:48px;margin-bottom:16px;padding:8px 0;font-size:16px;display:flex}.process-detail-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.process-detail-toolbar .pill{margin-inline-end:auto;font-size:15px}.process-detail-toolbar .soft{min-height:48px;font-size:15px}.process-detail-toolbar .icon-button{min-width:48px;min-height:48px}.example-note{color:#507b89;background:#e0eff2;border-radius:12px;padding:12px 16px;font-size:14px;line-height:1.7}.process-steps{isolation:isolate;padding:36px 30px 12px;position:relative}.process-connectors{z-index:-1;pointer-events:none;color:#07839a;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.process-connectors>path{fill:none;stroke:currentColor;stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round}.process-level{margin-bottom:64px;position:relative}.process-level:last-child{margin-bottom:0}.process-level-title{color:#608591;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;font-size:14px;display:flex}.process-level-title span{background:#eaf5f7;border-radius:10px;padding:5px 10px}.process-level-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:start;gap:64px 24px;display:grid}.process-level.single .process-level-grid{max-width:640px;margin-inline:auto}.process-task{background:#fff;border:1px solid #cfe3e8;border-radius:24px;min-width:0;overflow:hidden;box-shadow:0 7px 22px #142c4c09}.process-task-top{background:#f6fbfc;border-bottom:1px solid #e6f0f3;justify-content:space-between;align-items:center;gap:8px;padding:10px 16px;display:flex}.task-type{color:#4c7b8b;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.task-tools{gap:3px;display:flex}.task-tools .icon-button{min-width:44px;min-height:44px;font-size:22px}.task-tools .icon-button:disabled{cursor:default;opacity:.25}.task-parents{color:#66838e;overflow-wrap:anywhere;flex-wrap:wrap;gap:8px;padding:14px 18px 0;font-size:14px;display:flex}.task-parents span{background:#f0f8f9;border-radius:8px;max-width:100%;padding:6px 9px}.process-task-edit{align-items:flex-start;gap:8px;padding:16px 16px 12px;display:flex}.task-check{cursor:pointer;place-items:center;width:44px;min-width:44px;min-height:48px;display:grid}.task-check input[type=checkbox]{cursor:pointer;width:26px;height:26px;margin:0}.process-task-edit textarea{color:#142c4c;resize:none;background:0 0;border:0;width:100%;min-width:0;min-height:88px;padding:4px 2px;font-size:19px;line-height:1.7;overflow:hidden}.process-task.is-done .process-task-edit textarea{color:#7a938f;text-decoration:line-through}.process-task.is-done{border-color:#c4e4d7}.process-task-bottom{border-top:1px solid #edf3f5;justify-content:space-between;align-items:center;gap:10px;padding:12px 18px 16px;display:flex}.process-task-bottom>span{color:#6c8994;font-size:14px}.process-task-bottom .soft{min-height:48px;font-size:16px}.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}@media (width<=600px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.process-tile{border-radius:22px;gap:12px;min-height:210px;padding:16px}.process-tile-icon{border-radius:13px;width:40px;height:40px}.process-tile-icon svg{width:23px;height:23px}.process-tile strong{-webkit-line-clamp:2;font-size:19px}.process-tile-progress{gap:8px;font-size:13px}.process-tile-open{font-size:14px}.process-overview{font-size:13px}.process-heading h1{font-size:27px}.process-heading p{font-size:16px}.process-steps{padding-inline:22px}.process-task-top{padding:9px 10px}.process-task-edit{gap:3px;padding:14px 10px 12px}.process-task-edit textarea{font-size:19px}.process-task-bottom{padding-inline:14px}.process-level-title,.process-detail-toolbar .pill{font-size:13px}.process-detail-toolbar .soft{font-size:14px}}@media (width<=360px){.process-grid{grid-template-columns:1fr}.process-tile{min-height:0}.process-tile strong{font-size:23px}}@media (prefers-reduced-motion:reduce){.process-tile{transition:none}}.process-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}.process-tile{min-height:0}@media (width<=600px){.process-tile{gap:16px;padding:24px}.process-tile strong{-webkit-line-clamp:3;font-size:22px}.process-tile-icon{width:48px;height:48px}.process-tile-progress{font-size:15px}.process-tile-open{font-size:16px}}nav button{min-width:0;padding-inline:6px}.view-shopping{padding-bottom:calc(145px + env(safe-area-inset-bottom))}.shopping-top{gap:18px;max-width:100%;display:grid}.shopping-top h2{margin:0;font-size:23px}.shopping-progress{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:16px;font-size:15px;display:flex}.shopping-actions{flex-wrap:wrap;gap:10px;display:flex}.shopping-search{background:#fff;border:1px solid #d5e7eb;border-radius:16px;align-items:center;gap:12px;margin:20px 0;padding:6px 16px;display:flex}.shopping-search input{background:0 0;border:0;width:100%;min-width:0;min-height:44px;font-size:17px}.shopping-items{gap:12px;display:grid}.shopping-row{background:#fff;border:1px solid #dbeaec;border-radius:20px;align-items:center;gap:8px;min-width:0;padding:14px 12px;display:flex;position:relative}.shopping-position{text-align:center;color:#78939e;font-variant-numeric:tabular-nums;flex-shrink:0;width:24px;font-size:14px}.shopping-check{place-items:center;min-width:44px;min-height:44px;display:grid}.shopping-check input{accent-color:#07839a;cursor:pointer;width:26px;height:26px}.shopping-row-content{text-align:right;background:0 0;flex:1;gap:8px;min-width:0;padding:8px 4px;display:grid}.shopping-row-content strong{overflow-wrap:anywhere;font-size:19px;line-height:1.5}.shopping-row-content>span{color:#617e8a;overflow-wrap:anywhere;font-size:15px}.shopping-note{white-space:pre-wrap;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.shopping-row.is-bought .shopping-row-content strong{color:#819998;text-decoration:line-through}.shopping-row.is-bought{background:#f8fcfb}.shopping-empty{text-align:center;color:var(--muted);margin-top:20px;padding:40px}.shopping-empty>svg{color:var(--teal)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.field input,.field textarea,.field select{width:100%;min-width:0}.validation{color:#a64f3b;font-size:13px;line-height:1.6}@media (width<=600px){nav{padding-inline:8px}nav button span{font-size:12px}nav button{gap:5px;min-height:58px}.shopping-top{padding:20px}.shopping-progress{font-size:14px}.shopping-row{gap:3px;padding:10px 6px}.form-grid{gap:10px}}.shopping-filter{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0;display:flex}.shopping-filter .hint{margin:0}.shopping-grip{touch-action:none;color:#7695a1;cursor:grab;-webkit-user-select:none;user-select:none;background:#f1f8f9;flex-shrink:0}.shopping-grip.dragging{color:#07839a;cursor:grabbing;background:#c1e7ed}.shopping-row.drop-target{border:2px solid #07839a;box-shadow:0 -4px #07839a}.shopping-footer{margin-top:24px}.product-library-list{gap:10px;margin:16px 0;display:grid}.product-library-item{border:1px solid #dcebed;border-radius:16px;align-items:center;gap:8px;min-width:0;padding:10px;display:flex}.product-library-item .check-row{flex:1;min-width:0}.product-library-item .check-row>span{overflow-wrap:anywhere;gap:5px;min-width:0;display:grid}.product-library-item small{color:var(--muted);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;display:-webkit-box;overflow:hidden}.library-add{width:100%;position:sticky;bottom:0;box-shadow:0 -8px 18px #fff}.item-order{border-block:1px solid #dcebed;margin:18px 0;padding:8px 0 16px}.move-to{align-items:end;gap:12px;max-width:300px;display:flex}.move-to .field{flex:1;margin:14px 0 0}@media (width<=420px){.shopping-row{gap:0}.shopping-position{width:20px}.shopping-grip{min-width:44px;padding-inline:8px}.shopping-check{min-width:40px}.shopping-row-content strong{font-size:18px}}.shopping-management{margin-bottom:18px}.list-picker{margin:0}.list-picker select{min-height:54px;font-size:21px;font-weight:700}.price-summary{border-block:1px solid #deecef;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:16px 0;display:grid}.price-summary>div{gap:7px;min-width:0;font-size:14px;display:grid}.price-summary strong{overflow-wrap:anywhere;font-size:19px}.price-summary small{color:var(--muted);font-size:12px}.shopping-route{margin:18px 0 8px}.shopping-route .field{max-width:380px}.shopping-route .actions{gap:6px}.price-field{border-top:1px solid #e1ecef;margin:8px 0;padding:12px 0}.price-field h3{font-size:16px}.price-result{color:#07839a;font-weight:700}.item-category{color:#07839a!important;font-size:12px!important}.item-actual{color:#378466!important}.settings-list{gap:16px;margin:18px 0;display:grid}.settings-card{border:1px solid #d7e9ec;border-radius:18px;padding:16px}.store-category{border-top:1px solid #e5eff0;justify-content:space-between;align-items:center;gap:8px;display:flex}.store-category>.check-row{flex:1}.store-category .actions{gap:4px}.store-category .actions button{min-width:44px}@media (width<=400px){.shopping-management{gap:6px}.shopping-management button{font-size:14px}.price-summary{gap:8px}.price-summary strong{font-size:17px}.price-summary>div{font-size:12px}}.food-shopping-action{margin:0 0 22px}.food-shopping-action button{min-height:50px}.food-library-row{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;display:grid}.food-library-row .text-input{grid-column:1/-1;width:100%;font-size:17px}.food-library-row>.soft{justify-self:start}.meal-food-block{border:1px solid #dbe9ec;border-radius:18px;margin:14px 0;padding:12px}.meal-food-block .meal-food-row{margin:0}.meal-food-extra{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.meal-food-extra>button{grid-column:1/-1;justify-self:start}.meal-food-extra .field{margin:0}.ingredient-card{background:#f5fafb;border:1px solid #d7e9ed;border-radius:18px;margin:14px 0;padding:16px}.ingredient-card .field{margin-top:12px}.ingredient-card .section-line{gap:12px}.ingredient-day{border-bottom:1px solid #dcebed;padding:12px 0}.meal-selection{margin-right:16px;padding:7px 0}.meal-selection>.check-row>span{gap:5px;display:grid}.meal-selection small{color:var(--muted);line-height:1.6}.servings-choice{background:#f4fafb;border-radius:14px;margin:6px 0;padding:10px}.servings-choice>span{color:#607d8c;font-size:14px}.servings-choice .field{margin-bottom:0}.ingredient-sources{color:#607f8c;font-size:13px;line-height:1.8}.ingredient-note{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px}.ingredient-preview .check-row strong{font-size:19px}.ingredient-preview .scope-note{overflow-wrap:anywhere;font-size:14px}@media (width<=600px){.modal{max-width:100%}}.row-status-actions{flex-wrap:wrap;grid-column:2/-1;align-items:center;gap:8px;display:flex}.row-status-actions button{min-height:44px}.finish-round{width:100%;margin-top:14px}.renewal-suggestions{margin:16px 0;padding:20px}.renewal-editor{border-block:1px solid var(--border);margin:18px 0;padding:12px 0}summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:700}.price-chart{background:#f2f8fa;border-radius:18px;width:100%;height:auto;max-height:220px}.price-points{padding-inline-start:22px;line-height:1.9}.history-summary{margin-block:16px}.upgrade{max-width:700px;margin:30px auto;padding:16px}.upgrade .card{padding:24px}.upgrade textarea{width:100%}.shopping-row{flex-wrap:wrap}.row-status-actions{flex:0 0 100%;padding-inline-start:24px}.product-library-item{flex-wrap:wrap}.product-library-item .check-row{flex-basis:45%}.transfer-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;direction:rtl;line-height:1.7}.shopping-management[hidden],.shopping-route[hidden]{display:none}.shopping-mode{margin-bottom:16px}.shopping-focused .shopping-row{padding:18px 12px}.shopping-focused .shopping-row-content strong{font-size:22px}.shopping-focused .shopping-check input{width:32px;height:32px}.shopping-focused .shopping-note{-webkit-line-clamp:4}.row-status-actions .field{width:100%;margin:4px 0}.is-not-found{background:#fffbf4;border-color:#b78440}.shopping-focused .shopping-actions>button:last-child{display:none}.modal-fields{border:0;min-width:0;margin:0;padding:0}.file-button:has(input:focus-visible){outline-offset:3px;outline:3px solid #07839a}h1,h2{overflow-wrap:anywhere}.screen-heading>div,.process-detail-heading>div{min-width:0;max-width:100%}.modal-head h2{flex:1;min-width:0}.modal-head>button{flex-shrink:0}.day-editor-list .icon-button{width:44px;min-width:44px;height:44px;min-height:44px}.meal-empty{color:#526d7a}.recovery-screen{padding:24px}
