:root{--bg:#f6f5ef;--paper:#fffefa;--green:#294f43;--green2:#3f7460;--ink:#23342d;--muted:#7b8881;--border:#e3e8de;--light:#eef4eb;--orange:#cc8343;--red:#b8574d;--shadow:0 12px 38px #223c2b10;font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}input,textarea,select{width:100%;padding:12px 13px;background:white;border:1px solid #dbe3d9;border-radius:11px;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--green2);box-shadow:0 0 0 3px #42795b1c}label{display:block;font-size:13px;font-weight:650;margin:8px 0 5px}h1,h2,h3,p{margin:0}h1{font-size:29px;letter-spacing:-.8px}h2{font-size:21px;letter-spacing:-.3px}h3{font-size:16px}small,.muted{color:var(--muted)}a{color:var(--green2)}.layout{display:grid;grid-template-columns:238px minmax(0,1fr);min-height:100vh}.sidebar{background:#22483d;color:#dbe9df;padding:27px 16px;display:flex;flex-direction:column;gap:15px;position:sticky;top:0;height:100vh}.brand{display:flex;gap:12px;align-items:center;padding:4px 11px 19px}.brand-icon{width:40px;height:40px;background:#d8e9d1;border-radius:13px;display:grid;place-items:center;color:#1c493a;font-size:24px}.brand strong{color:white;font-size:17px}.brand small{font-size:11px;color:#b9d0c2;display:block}.nav{display:grid;gap:5px}.nav-btn{border:0;border-radius:12px;text-align:left;padding:13px 14px;color:#e2ede4;background:transparent;display:flex;align-items:center;gap:11px;font-weight:600}.nav-btn:hover{background:#ffffff15}.nav-btn.active{background:#d8e9d1;color:#204838}.nav-ico{font-size:18px;width:23px;text-align:center}.side-bottom{margin-top:auto;display:grid;gap:12px;padding:10px 9px}.side-bottom small{color:#c0d8c8}.main{min-width:0;max-width:1440px;width:100%;margin:0 auto;padding:33px 39px 55px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:32px}.eyebrow{text-transform:uppercase;color:#789080;letter-spacing:1.8px;font-size:10px;font-weight:750;margin-bottom:8px}.top-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.chip{border-radius:100px;padding:8px 12px;background:var(--light);border:1px solid #d5e4d2;font-size:12px;font-weight:650;color:var(--green)}.chip.orange{background:#fff2e6;color:#a66a39;border-color:#f2d9be}.btn{border-radius:11px;border:1px solid #d9e3d8;background:var(--paper);padding:10px 15px;color:var(--green);font-weight:700;font-size:13px}.btn:hover{filter:brightness(.97)}.btn.primary{background:var(--green);color:white;border-color:var(--green)}.btn.ghost{background:transparent}.btn.danger{color:var(--red);border-color:#edd4d1}.btn.tiny{font-size:11px;padding:7px 10px}.row{display:flex;align-items:center;gap:10px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.stack{display:grid;gap:14px}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.panel{background:var(--paper);border:1px solid var(--border);border-radius:19px;padding:22px;box-shadow:var(--shadow)}.panel.soft{background:#eff5ed}.kpi{min-height:137px;display:flex;flex-direction:column;justify-content:space-between}.kpi .icon{font-size:25px}.kpi .value{font-size:32px;font-weight:760;letter-spacing:-1px}.section-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:25px 0 15px}.section-head:first-child{margin-top:0}.section-head p{color:var(--muted);font-size:13px;margin-top:5px}.pills{display:flex;gap:7px;flex-wrap:wrap}.pill{padding:8px 12px;border:1px solid #dce7db;background:white;border-radius:100px;color:#4f6659;font-size:12px;font-weight:700}.pill.active{background:var(--green);color:white;border-color:var(--green)}.item{border:1px solid #e2e8de;border-radius:13px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:white}.item-name{font-weight:700;font-size:14px}.item-sub{font-size:12px;color:var(--muted);margin-top:4px}.tag{display:inline-block;border-radius:9px;padding:5px 9px;font-size:11px;font-weight:750;background:#eaf2e8;color:#357357}.tag.warn{color:#a06329;background:#fff2df}.tag.danger{color:#a44947;background:#fee9e5}.empty{padding:30px;color:var(--muted);background:#f7f9f3;border:1px dashed #d6e0d2;border-radius:13px;text-align:center;font-size:14px}.cabinet{border:1px solid #dce5d9;border-radius:15px;background:#fbfcfa;overflow:hidden}.cabinet-top{background:#e7eee4;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:13px 15px}.cabinet-title{font-size:15px;font-weight:750}.shelf{padding:12px 14px;border-bottom:5px solid #d2c6aa;min-height:99px}.shelf:last-child{border-bottom:0}.shelf-label{font-size:11px;color:#8d9a89;font-weight:700;margin-bottom:10px;text-transform:uppercase}.jars{display:flex;gap:9px;align-items:end;flex-wrap:wrap}.jar{border:1px solid #cfdfcf;border-radius:8px 8px 5px 5px;background:#f1f5df;min-width:70px;max-width:125px;padding:8px 9px;display:flex;flex-direction:column;gap:3px;text-align:left}.jar:nth-child(3n){background:#f7e9d6}.jar:nth-child(3n+2){background:#e7eff1}.jar b{font-size:12px;line-height:1.25;overflow-wrap:anywhere}.jar small{font-size:10px;color:#75887c}.jar:hover{border-color:var(--green)}.recipe-card{display:grid;gap:12px}.recipe-hero{background:linear-gradient(135deg,#e3edd8,#f5eacb);height:95px;border-radius:11px;display:flex;justify-content:center;align-items:center;font-size:43px}.recipe-ingredients{font-size:12px;color:#627267;line-height:1.55}.cal-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 12px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar .weekday{text-align:center;font-size:11px;color:#809185;font-weight:750;padding:12px 3px}.day{border:1px solid #e3e8de;border-radius:12px;background:white;min-height:102px;padding:10px;text-align:left;display:flex;flex-direction:column;gap:8px;overflow:hidden;color:var(--ink)}.day:hover{border-color:#98b6a0}.day.today{border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.day.other{opacity:.3;pointer-events:none}.day .date{font-size:12px;font-weight:760}.day .meal{font-size:12px;font-weight:650;line-height:1.34}.day .plus{font-size:19px;font-weight:350;color:#93a297}.day .cooked{color:#5b936b}.day.selected{background:#eef6ec}.list-split{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:17px}.checkbox-line{display:flex;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--border)}.checkbox-line input{width:18px;height:18px;accent-color:var(--green)}.checkbox-line:last-child{border-bottom:0}.view-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.menu-day{padding:13px;background:#f5f9f2;border-radius:12px;border:1px solid #e0e9de;min-height:110px}.menu-day .date{font-size:11px;color:#7a9280;font-weight:750;margin-bottom:12px}.menu-day b{font-size:13px}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#21493c,#6a9679)}.login-card{max-width:460px;width:100%;background:white;border-radius:22px;padding:30px;box-shadow:0 20px 65px #11251d4d}.login-card h1{margin-bottom:8px}.login-card p{margin-bottom:24px;color:var(--muted);line-height:1.6}.login-card .btn{width:100%;margin-top:12px}.login-switch{display:flex;gap:7px;margin:20px 0}.login-switch button{flex:1}.info{background:#edf5ec;border:1px solid #dcebd8;border-radius:12px;padding:13px;font-size:13px;line-height:1.5;color:#426450}.alert{padding:13px;border:1px solid #efd8b7;border-radius:11px;background:#fff4e5;font-size:13px;color:#8e602f}.search{max-width:310px}dialog{border:0;border-radius:20px;padding:0;max-width:min(510px,calc(100vw - 32px));width:100%;max-height:90vh;overflow:auto;box-shadow:0 25px 85px #112a1e49;color:var(--ink)}dialog::backdrop{background:#0c211b99}#modal-content{padding:25px}.modal-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.modal-head button{border:0;background:#eef3eb;border-radius:50%;width:32px;height:32px;font-size:20px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 12px}.form-grid .wide{grid-column:span 2}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}.form-hint{font-size:12px;color:var(--muted);line-height:1.5;margin-top:7px}.mini{font-size:12px}.text-red{color:var(--red)}.text-green{color:var(--green2)}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(80px);background:#244b3c;color:white;padding:12px 18px;border-radius:12px;z-index:30;box-shadow:var(--shadow);opacity:0;transition:.2s;max-width:min(95vw,520px);text-align:center;font-size:13px}#toast.show{transform:translateX(-50%) translateY(0);opacity:1}.rights{line-height:1.6}.rights p{margin:5px 0}.fade{color:var(--muted);font-size:13px;line-height:1.6}.big-emoji{font-size:34px}.quick{border:1px dashed #cfdfc9;border-radius:12px;padding:13px;background:#f7faf5;cursor:pointer;text-align:left;color:var(--green);font-weight:700}.quick:hover{border-style:solid}.notice{border-left:3px solid #d8a069;background:#fff8ec;padding:12px 14px;font-size:13px;line-height:1.45;border-radius:8px}.statline{font-size:13px;color:#6f8175;padding:3px 0}.suggest{border-left:3px solid #94af92;padding:8px 10px;background:#f4f8f1;border-radius:5px}.head-desc{color:var(--muted);font-size:13px;line-height:1.6;margin-top:8px}.auth-note{font-size:12px;color:var(--muted);margin-top:14px}.footnote{font-size:12px;color:#85928a;margin-top:16px;line-height:1.6}@media(max-width:1200px){.main{padding:26px 25px 45px}.grid.four{grid-template-columns:repeat(2,1fr)}.list-split{grid-template-columns:1fr}.view-menu{grid-template-columns:repeat(2,1fr)}}@media(max-width:850px){.layout{display:block;padding-bottom:70px}.sidebar{position:fixed;z-index:12;bottom:0;top:auto;left:0;right:0;height:auto;padding:7px 4px calc(5px + env(safe-area-inset-bottom));box-shadow:0 -8px 20px #1a402c26}.brand,.side-bottom{display:none}.nav{display:flex;justify-content:space-around;gap:2px}.nav-btn{padding:7px 3px;display:grid;justify-items:center;gap:4px;flex:1;font-size:10px}.nav-ico{font-size:20px}.main{padding:20px 15px 35px}.topbar{align-items:flex-start}.topbar h1{font-size:25px}.grid.three{grid-template-columns:repeat(2,1fr)}.calendar .day{min-height:84px;padding:6px;border-radius:8px}.calendar{gap:3px}.day .meal{font-size:10px}.day .date{font-size:10px}.panel{padding:16px}.section-head{align-items:flex-start}.side-bottom{display:none}}@media(max-width:540px){.grid.two,.grid.three,.grid.four{grid-template-columns:1fr}.topbar{flex-direction:column}.top-right{justify-content:space-between;width:100%}.day{min-height:77px!important}.calendar .weekday{font-size:9px;padding:5px 0}.view-menu{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:span 1}}

/* Moduł do aranżacji mebli — wspólne dane z magazynem */
.builder-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:14px 0}.builder-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,1fr);gap:16px;margin-top:15px;align-items:start}.room-canvas-wrap{background:#ecf0e9;border:1px solid #dce6d9;border-radius:19px;overflow-x:auto;overflow-y:hidden;padding:14px}.room-board{height:490px;min-width:560px;position:relative;overflow:hidden;border-radius:13px;background:linear-gradient(180deg,#f7faf6 0%,#f3f3ed 83%,#d5c5aa 83%,#c4aa85 85%,#e7e8df 85%);border:1px solid #d2dcd1;background-image:linear-gradient(0deg,transparent 93%,#edf0ea 94%),linear-gradient(90deg,#e9eee6 1px,transparent 1px),linear-gradient(0deg,#e9eee6 1px,transparent 1px);background-size:auto,34px 34px,34px 34px}.room-caption{position:absolute;left:17px;top:14px;color:#83978a;font-weight:800;text-transform:uppercase;font-size:11px;letter-spacing:1.4px;z-index:0;pointer-events:none}.room-caption span{font-weight:400;letter-spacing:0;text-transform:none}.cab-box{z-index:1;position:absolute;border-radius:8px;border:2px solid #c8b79e;box-shadow:inset 0 0 0 5px #ffffff42,3px 6px 6px #57685f1c;background:linear-gradient(135deg,#f1e5d3,#d9c7ae);color:#493f31;min-width:0;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:8px;cursor:pointer;overflow:hidden;transition:box-shadow .14s,border-color .14s;touch-action:manipulation;user-select:none}.cab-box:hover{border-color:#4a8066;box-shadow:0 0 0 3px #4f8c653b,4px 9px 12px #2b493420}.cab-box.chosen{border-color:#2f7050;box-shadow:0 0 0 3px #6fad8755,2px 7px 12px #32543a30}.cab-box.editable{touch-action:none;cursor:grab}.cab-box.editable:active{cursor:grabbing}.cab-box.kind-drawers{background:repeating-linear-gradient(180deg,#d2b99e 0%,#ebdac6 30%,#bd9a76 31%,#bb9673 33%)}.cab-box.kind-fridge{background:linear-gradient(135deg,#f9fcfc,#c4d6d8);border-color:#afc6c9;color:#3d5760}.cab-box.kind-freezer{background:linear-gradient(135deg,#eff9fc,#aecbd5);border-color:#a5bcc8;color:#34556b}.cab-box.kind-shelf{background:repeating-linear-gradient(180deg,#e4d5b5 0%,#e4d5b5 25%,#af8a58 26%,#c3a475 28%)}.cab-illustration{font-size:25px;line-height:1.1;opacity:.68}.cab-name{text-align:center;font-weight:800;font-size:13px;line-height:1.2;overflow-wrap:anywhere;text-shadow:0 1px 0 #fff8}.cab-count{font-size:10px;opacity:.85;text-align:center}.resize-grip{position:absolute;right:0;bottom:0;display:grid;place-items:center;width:26px;height:26px;border-radius:8px 0 5px 0;background:#285644;color:#fff;font-size:18px;font-weight:700;cursor:nwse-resize}.room-no-cabinets{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#899b8b;min-width:260px;text-align:center;font-size:14px}.cab-inspector{min-height:320px;padding:18px}.cab-inspector h2{font-size:19px}.inspector-empty{display:grid;place-items:center;text-align:center;gap:13px;padding:37px 5px}.inspector-empty p{color:var(--muted);font-size:13px;line-height:1.5}.inspector-shelves{display:grid;gap:9px;margin-top:17px}.inspector-comp{border:1px solid #e0e7dc;background:#fcfefa;border-radius:12px;overflow:hidden}.inspector-comp>.row{padding:6px 9px;gap:5px}.shelf-heading{display:flex;align-items:center;justify-content:space-between;text-align:left;gap:8px;border:0;background:transparent;padding:9px 5px;flex:1;font-size:13px;color:#2e5942;font-weight:800}.shelf-heading small{font-weight:500;font-size:11px;white-space:nowrap}.comp-contents{border-top:1px solid #e4eae0;padding:9px;display:grid;gap:7px}.comp-contents>small{padding:7px}.product-mini{display:flex;gap:8px;align-items:center;justify-content:space-between;border:1px solid #dfe7dc;background:#f2f6ee;border-radius:9px;padding:10px;color:#33493d;text-align:left;font-size:12px}.product-mini b{white-space:nowrap}.inspector-footer{border-top:1px solid #e7ede3;margin-top:16px;padding-top:13px}.builder-grid .panel{box-shadow:0 8px 20px #1a33220c}@media(max-width:1120px){.builder-grid{grid-template-columns:1fr}.cab-inspector{min-height:auto}}@media(max-width:850px){.room-canvas-wrap{padding:8px}.room-board{height:440px;min-width:700px}.builder-top .row{width:100%}.cab-name{font-size:12px}}@media(max-width:540px){.room-board{height:440px;min-width:700px}.cab-inspector{padding:14px}.cab-box{padding:4px}.cab-illustration{font-size:20px}}

/* v0.3 · Skaner */
.scanner-stage{background:#f2f5ef;border:2px dashed #b7ceba;border-radius:13px;min-height:225px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:8px;text-align:center}.scanner-stage video{max-width:100%;border-radius:10px}.scanner-stage canvas{max-width:100%}.scan-code-form .row{align-items:stretch}.scan-code-form input{min-width:0;flex:1}.scan-code-form .btn{flex-shrink:0}.scan-actions{display:flex;gap:8px;flex-wrap:wrap}.scan-thumb{width:115px;height:125px;object-fit:contain;border-radius:10px;background:white;border:1px solid #d9e5db}.scan-product-result{display:flex;align-items:flex-start;gap:15px;flex-wrap:wrap}.scan-product-result>div{flex:1;min-width:170px}.scan-product-result .alert{margin-top:12px}.scan-product-result h3{font-size:19px;margin:6px 0}.thin-separator{border:0;border-top:1px solid #dce6de;width:100%}@media(max-width:540px){.scan-code-form .row{flex-wrap:wrap}.scan-code-form .row button{width:100%}.scanner-stage{min-height:210px}}

@media(max-width:850px){.sidebar .nav{justify-content:flex-start;overflow-x:auto;scrollbar-width:thin;overscroll-behavior-x:contain}.sidebar .nav-btn{min-width:76px;flex:0 0 auto}}

/* v0.4 — znalezione pozycje i kontrolowane przyjęcie produktów */
.scan-match-block{border:1px solid #d5e6d6;border-radius:13px;padding:13px;background:#f5faf4;display:grid;gap:11px}.scan-match-row{display:flex;align-items:center;justify-content:space-between;gap:12px;background:white;border:1px solid #e0e9dd;border-radius:11px;padding:12px}.scan-match-copy{flex:1;min-width:0}.scan-match-copy b{font-size:14px}.scan-match-copy .row{gap:6px}.scan-match-row .btn{white-space:nowrap}.scan-source{display:inline-block;margin-top:8px;color:#357357;font-weight:700}.scan-dest-info{background:#eff5ea;padding:14px;border-radius:12px;border:1px solid #d7e6d3}.scan-dest-info b{color:#24503a}.scan-dest-info .form-hint{margin-top:10px}@media(max-width:560px){.scan-match-row{flex-wrap:wrap}.scan-match-row .btn{width:100%}}

/* v0.5 · Zdjęcia produktów */
.product-thumb{width:52px;height:58px;min-width:52px;object-fit:contain;background:#f4f7ef;border:1px solid #e0e8dd;border-radius:9px;padding:4px;display:inline-flex;align-items:center;justify-content:center;font-size:24px;color:#91a99b;flex-shrink:0}.product-mini{display:flex!important;align-items:center;gap:9px!important;text-align:left}.product-mini-name{flex:1;min-width:0;line-height:1.3}.product-mini b{white-space:nowrap}.product-inventory-line{display:flex;align-items:center;gap:12px;min-width:0}.product-inventory-line>div{min-width:0}.jar{min-height:134px;min-width:103px;max-width:154px;align-items:center;text-align:center;justify-content:end;background:#fff!important;overflow:hidden}.jar-photo{width:85px;height:88px;object-fit:contain;display:flex;justify-content:center;align-items:center;font-size:30px;color:#9bb1a5;max-width:100%;margin:auto}.jar b{display:block;width:100%;text-align:center}.jar small{display:block;width:100%;text-align:center}.photo-placeholder{background:#f1f5ec;border:1px dashed #d4e1d7;border-radius:9px}.photo-edit{padding:12px;border-radius:14px;background:#f5f8f2;border:1px solid #e0e8da}.photo-edit-row{display:flex;gap:14px;align-items:start}.photo-preview{width:132px;min-width:132px;height:148px;background:white;border-radius:12px;border:1px solid #dfe8dc;display:flex;justify-content:center;align-items:center;overflow:hidden}.photo-preview-img{width:100%;height:100%;object-fit:contain;display:flex;align-items:center;justify-content:center;font-size:35px;color:#93a89a}.photo-tools{display:grid;gap:8px;min-width:0}.photo-tools .photo-upload{cursor:pointer;margin:0;display:inline-block}.photo-tools input[type=file]{width:100%;max-width:220px;font-size:12px;padding:5px;background:transparent}.photo-tools .btn{white-space:normal;text-align:left}.scan-photo-selection{display:flex;gap:12px;align-items:center;padding:10px 13px;background:#f3f7ef;border-radius:11px;font-size:13px;color:#5c7667}.scan-match-row>.product-thumb{width:56px;height:64px}.photo-guide{margin-top:12px}.scan-product-result img{background:white}@media(max-width:570px){.photo-edit-row{flex-direction:column}.photo-preview{width:100%;max-width:200px;height:155px}.jar{min-width:104px}.product-inventory-line{gap:7px}.product-thumb{width:43px;min-width:43px;height:48px}.photo-tools{width:100%}}

#photo-viewer{max-width:min(800px,96vw);background:#fefefa}#photo-viewer .photo-viewer-inner{display:grid;gap:12px;padding:16px;justify-items:end}#photo-viewer img{display:block;max-height:74vh;max-width:100%;width:auto;object-fit:contain;margin:auto}#photo-viewer .btn{min-width:100px}

/* v0.6 · Import przepisów z internetu */
.recipe-import-intro{padding:16px 17px;border:1px solid #dce8db;border-radius:14px;background:linear-gradient(125deg,#f0f7ed,#fcfdf8);line-height:1.55;color:#3b5848}
.recipe-import-intro>b{font-size:16px;color:#264c38}
.recipe-import-intro p{font-size:13px;margin:7px 0 0}
.recipe-import-intro a,.recipe-original-source a{color:#1a694d;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.recipe-portal-pills{display:flex;flex-wrap:wrap;gap:6px}.recipe-portal-pills span{font-size:11px;padding:6px 9px;border:1px solid #deeadb;background:#f3f8ed;color:#567665;border-radius:100px}
.recipe-import-alert{font-size:13px;line-height:1.45;padding:11px 13px;background:#fcf7e8;border:1px solid #f1e1b2;border-radius:10px}
.ingredient-import-list{max-height:min(49vh,480px);overflow:auto;border:1px solid #dfe8db;border-radius:13px;background:#fafdf8;padding:11px;display:grid;gap:10px;margin:10px 0 17px}
.ingredient-import-row{padding:12px;border:1px solid #e2eadd;background:white;border-radius:11px}
.ingredient-original{font-size:12px;color:#486853;font-weight:700;margin:0 0 10px}
.import-ingredient-controls{display:grid;grid-template-columns:minmax(0,2fr) minmax(90px,1fr) minmax(95px,1fr);gap:10px}
.import-ingredient-controls input,.import-ingredient-controls select{min-width:0;width:100%}
.import-ingredient-controls label{font-size:11px;display:block}
.recipe-import-warning{margin-top:8px;color:#9a6d1c;font-size:12px}
.recipe-attribution{font-size:11px;color:#4f7962;font-weight:700;margin-top:-4px}
.recipe-original-source{padding:12px;background:#f2f7ee;border-radius:10px;font-size:13px;line-height:1.5;margin-top:16px}
@media(max-width:550px){.import-ingredient-controls{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.import-ingredient-controls>div:first-child{grid-column:span 2}.ingredient-import-list{max-height:45vh}}

/* 0.7 — przenoszenie życzeń domowników na wspólną listę */
.ordered-item{background:#f4f8f1;border-color:#cbdcc8}
.ordered-tag{background:#dbebdc;color:#245e3b}
.shopping-copy{min-width:0;flex:1;overflow-wrap:anywhere}
.ordered-section-label{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:750;color:#52715c;padding:10px 3px 0;border-top:1px solid var(--border)}
.wish-history{margin-top:17px;font-size:12px;color:var(--muted)}
.wish-history summary{cursor:pointer;font-weight:650}
@media(max-width:740px){.list-split .item{align-items:flex-start;flex-direction:column}.list-split .item>.row{width:100%;justify-content:flex-start}}

/* 0.8: bought is an intentionally inert status beside the active reception button. */
.wish-bought-inert:disabled{opacity:.65;cursor:default;filter:saturate(.55)}
