*{box-sizing:border-box}body{margin:0;background:#f5f4ed;color:#243f34;font:16px -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}header{padding:24px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #dddeda;background:#fafaf6}.brand{color:inherit;text-decoration:none;font-size:25px}header span{color:#7c867a;font-size:13px}main{max-width:1140px;margin:auto;padding:42px 28px}#auth{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center;padding-top:30px}.eyebrow{font-size:11px;letter-spacing:2px;color:#798c64}h1{font-size:58px;line-height:1.1;letter-spacing:-2px;margin:22px 0}p{color:#718071;line-height:1.6}.intro p{max-width:400px}.tiles{display:grid;gap:15px;margin-top:35px}.tiles span{font-size:15px}.panel,.content{background:white;border:1px solid #e1e4da;border-radius:24px;padding:30px}.panel h2{margin-top:0}label{display:block;font-size:13px;margin-top:18px}input,select{font:inherit;background:#fafaf7;border:1px solid #dce1d5;border-radius:10px;padding:13px;min-width:0;color:#243f34}label input{display:block;width:100%;margin-top:7px}button{font:inherit;border:0;border-radius:10px;background:#234c3e;color:#fff;padding:13px 20px;cursor:pointer}.panel button{width:100%;margin-top:22px}.secondary{background:#eaf0e5;color:#37583b}.welcome{display:flex;justify-content:space-between;align-items:center}.welcome h1{font-size:42px}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin:30px 0}.summary>div{background:#e8ecdd;border-radius:17px;padding:22px}small{font-size:10px;letter-spacing:1px}strong{display:block;font-size:28px;margin-top:10px}nav{display:flex;gap:10px;margin:30px 0 20px}nav button{background:transparent;color:#667760}nav button.active{background:#234c3e;color:#fff}.sectionhead{display:flex;align-items:center;justify-content:space-between}.sectionhead h2{margin:0}.sectionhead p{font-size:14px}#addform{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;margin:20px 0 25px}.row{display:flex;align-items:center;gap:14px;padding:18px 0;border-top:1px solid #edf0e8}.row .details{flex:1}.row h3{font-size:16px;margin:0}.row p{margin:4px 0 0;font-size:12px}.done h3{text-decoration:line-through;color:#82907d}.check{width:25px;height:25px;accent-color:#234c3e}.delete{background:transparent;color:#9b6a5d;padding:8px}.empty{padding:30px;text-align:center;color:#83907a}.invite{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;padding:25px 0}.invite h3{margin:0}.invite p{font-size:13px}#invitecode{width:100%;overflow-wrap:anywhere;user-select:all}#status{color:#996044}footer{text-align:center;padding:25px;font-size:12px;color:#87917f}button:disabled{opacity:.5}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bda45b;outline-offset:2px}[hidden]{display:none!important}#calendar{margin:20px 0}.monthhead{display:flex;align-items:center;justify-content:space-between}.monthgrid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.day{border:1px solid #e4e8dd;min-height:55px;border-radius:8px;padding:7px;font-size:12px}.day.event{background:#e8eddf}.day.today{border:2px solid #517b52}.day small{display:block;font-size:9px;letter-spacing:0}.week{font-size:10px;text-align:center;padding:10px}@media(max-width:700px){header{padding:20px}header span{max-width:140px;text-align:right}main{padding:25px 16px}#auth{grid-template-columns:1fr;gap:30px;padding-top:0}h1{font-size:42px}.tiles{display:none}.welcome h1{font-size:31px}.welcome{align-items:flex-start}.welcome button{font-size:12px}.summary{gap:7px}.summary>div{padding:14px}strong{font-size:21px}small{font-size:8px}nav{gap:0;justify-content:space-between}nav button{padding:12px 9px;font-size:13px}.content{padding:20px 15px}#addform{grid-template-columns:1fr 1fr}#addform input:first-child{grid-column:1/-1}.sectionhead h2{font-size:21px}.sectionhead button{font-size:11px}.day{padding:4px;min-height:47px}}
textarea{display:block;width:100%;font:inherit;border:1px solid #dce1d5;background:#fafaf7;border-radius:10px;padding:13px;margin-top:7px;resize:vertical}.meal-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.meal-fields input,.meal-fields select{width:100%}#meal-form>button{margin:20px 0}.meal-day{border-top:1px solid #e1e4da;padding:12px 0}.meal-day>h3{font-size:15px;text-transform:capitalize}.meal-card{padding:18px;background:#f5f6ef;border-radius:14px;margin:12px 0}.meal-card h3{margin:8px 0}.meal-card li{color:#718071;font-size:14px;line-height:1.6}.meal-actions{display:flex;gap:8px;flex-wrap:wrap}.meal-actions button{font-size:12px}.empty-meal{font-size:13px}#meal-status{color:#996044}@media(max-width:700px){#tabs{overflow-x:auto}#tabs button{white-space:nowrap;padding:12px 8px;font-size:12px}.meal-fields{gap:8px}}
.notification-panel{border-top:1px solid #dddeda;padding:25px 0}.notification-panel p{font-size:13px}.notification-panel button{margin:6px 0}
.weather-panel{background:white;border:1px solid #e1e4da;border-radius:22px;padding:24px;margin:25px 0}.weather-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.weather-card{background:#edf1e6;border-radius:16px;padding:20px}.weather-card strong{font-size:32px}.weather-card h3{font-size:16px;margin-bottom:8px}.weather-card p,.weather-panel>p,.weather-panel>a{font-size:12px}.weather-panel>a{color:#527559}@media(max-width:600px){.weather-grid{grid-template-columns:1fr}.weather-panel{padding:18px}}
.weather-panel{padding:12px 14px;margin:12px 0;border-radius:16px}.weather-panel .sectionhead h2{font-size:15px}.weather-panel .sectionhead p{font-size:11px;margin:3px 0 8px}.weather-actions{display:flex;gap:5px}.weather-actions button{padding:9px 10px;font-size:11px;min-height:36px}.weather-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.weather-card{padding:10px 12px;border-radius:10px;min-width:0}.weather-card small{font-size:10px;letter-spacing:0}.weather-card strong{font-size:24px;margin:4px 0}.weather-card h3{font-size:12px;margin:0;line-height:1.3}.weather-card p{display:none;margin:5px 0;font-size:11px}.weather-panel #weather-status{display:none}.weather-expanded .weather-card p,.weather-expanded #weather-status{display:block}.weather-panel>a{display:block;font-size:9px;margin-top:6px;text-align:right}@media(max-width:360px){.weather-card{padding:9px}.weather-card strong{font-size:21px}.weather-actions button{padding:8px}}
.weather-error #weather-status{display:block;color:#996044;font-size:11px;margin:6px 0}
.meal-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.meal-fields>label{min-width:0}.meal-fields input,.meal-fields select{display:block;min-width:0;max-width:100%;box-sizing:border-box}#meal-form input[type=date]{min-inline-size:0;inline-size:100%;max-inline-size:100%;text-align:left}#meal-form input[type=date]::-webkit-date-and-time-value{min-width:0;text-align:left}@media(max-width:480px){.meal-fields{grid-template-columns:minmax(0,1fr)}.meal-fields>label{margin-top:12px}}
/* Spójny wygląd Domogara */
:root{--ink:#243c36;--muted:#677a72;--green:#306653;--line:#e1e8e2;--surface:#fff;--radius:20px}
body{background:#f2f5f1;color:var(--ink);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}p{color:var(--muted)}
header{background:#ffffffed;border-bottom:1px solid var(--line);padding:18px max(24px,calc((100vw - 1080px)/2));gap:16px}.brand{font-size:23px;letter-spacing:-.7px;white-space:nowrap}.brand b{font-weight:750}header span{font-size:12px;color:var(--muted)}
main{max-width:1080px;padding:30px 24px}h1,h2,h3{letter-spacing:-.5px}h1{font-weight:750}.welcome h1{font-size:34px;margin:8px 0 6px;letter-spacing:-1.3px}.welcome p{margin:0;font-size:13px;text-transform:capitalize}.eyebrow{font-size:10px;letter-spacing:1.6px;color:#60846e;font-weight:650}.welcome{align-items:center;padding:8px 0 10px}
button{background:var(--green);font-size:14px;font-weight:600;min-height:44px;border-radius:12px;padding:11px 16px;transition:background .15s,box-shadow .15s}button:hover{background:#24523f}.secondary{background:#edf3ee;color:#365e4b}.secondary:hover{background:#dfeae1}button:disabled{cursor:default}.delete{background:#fff1ee;color:#99564b;min-width:40px}.delete:hover{background:#f8e3de}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #8eb7a0;outline-offset:3px}
input,select,textarea{background:#f8faf8;border:1px solid #d9e3dc;border-radius:12px;color:var(--ink);font-size:16px;min-height:46px;padding:11px 12px;max-width:100%;box-shadow:inset 0 1px 2px #243c3603}label{color:#496357;font-weight:550;font-size:13px}input::placeholder,textarea::placeholder{color:#83948b;font-weight:400}.panel,.content{border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 4px 22px #2d493a05;padding:25px}.sectionhead{gap:14px;align-items:flex-start}.sectionhead h2{font-size:22px;line-height:1.25}.sectionhead p{font-size:13px;margin:7px 0 0;max-width:500px}.sectionhead button{flex-shrink:0}
.summary{gap:12px;margin:16px 0}.summary>div{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 20px;box-shadow:0 2px 8px #243c3603}.summary>div:nth-child(2){background:#faf4e8;border-color:#eee5d3}.summary>div:nth-child(3){background:#eaf2ed;border-color:#dae7df}.summary small{font-size:10px;letter-spacing:.8px;color:#687b71;font-weight:600}.summary strong{font-size:26px;letter-spacing:-.8px;margin:4px 0 0;font-weight:750}
#tabs{background:#e6ece6;padding:5px;border-radius:15px;margin:20px 0 14px;gap:4px;overflow-x:auto;justify-content:flex-start}#tabs button{flex:1;min-width:max-content;font-size:13px;padding:10px 13px;border-radius:11px;color:#61756a;background:transparent;min-height:42px}#tabs button.active{background:#fff;color:#234c3e;box-shadow:0 2px 7px #243c3610}#tabs button:hover{background:#ffffff85}#tabs button.active:hover{background:#fff}
#addform{padding:15px;background:#f2f6f2;border:1px solid #e5ece5;border-radius:15px;margin:20px 0;gap:9px}.row{margin:8px 0;padding:14px;border:1px solid #e6ece6;border-radius:13px;background:#fff;gap:12px}.row .details{min-width:0}.row h3{font-size:15px;overflow-wrap:anywhere;line-height:1.4}.row p{font-size:12px;line-height:1.5}.row.done{background:#f7faf7;border-color:#eaf0e8}.check{flex-shrink:0;width:22px;height:22px;min-height:0;margin:0}.row .delete{padding:6px;min-height:36px;flex-shrink:0}.empty{background:#f8faf7;border:1px dashed #dce6db;border-radius:15px;padding:28px 15px;font-size:14px}
.monthhead{gap:10px;margin:15px 0}.monthhead h3{font-size:16px;text-align:center;text-transform:capitalize;margin:0}.monthhead button{min-width:42px;padding:8px}.monthgrid{gap:5px}.day{background:#fafcf9;border:1px solid #e6ece4;border-radius:10px;padding:9px;min-height:64px;color:#587064}.day.today{border:2px solid #63977a;background:#edf6ef;font-weight:700}.day.event{background:#e7f0e6}.week{font-size:11px;color:#7d8e83;font-weight:600}.day small{color:#55734f;font-size:10px;margin-top:7px}
#feed-all{margin:16px 0 0;background:#5c7650}#meal-panel>h2{margin:0;font-size:22px}#meal-panel>p{font-size:13px;margin:7px 0 20px}#meal-form{background:#f5f8f3;border:1px solid #e4ebe0;border-radius:16px;padding:4px 16px 0}#meal-form label{margin-top:14px}#meal-form>button{width:100%;margin:15px 0}.meal-day{border-top:1px solid var(--line);padding:13px 0}.meal-day>h3{font-size:14px;color:#55715e;margin:5px 0}.meal-card{background:#fff;border:1px solid #e1e9df;border-left:3px solid #96b18a;border-radius:13px;margin:10px 0;padding:16px}.meal-card small{color:#8a815f;font-weight:650;font-size:10px}.meal-card h3{font-size:17px}.meal-card ul{padding-left:18px;margin:10px 0 15px}.meal-actions{gap:8px}.meal-actions button{font-size:12px;min-height:40px}.empty-meal{font-size:12px;color:#8c998f;margin:8px 0 3px}
.weather-panel{border:1px solid var(--line);border-radius:16px;background:#fff;padding:12px 14px;margin:10px 0}.weather-panel .sectionhead{align-items:center}.weather-panel .sectionhead h2{font-size:14px}.weather-panel .sectionhead p{font-size:11px;margin:2px 0 7px}.weather-card{background:#f0f5ef;padding:10px 12px;border-radius:11px}.weather-card:nth-child(2){background:#f8f2e7}.weather-card strong{font-size:24px;color:#344c40}.weather-card h3{font-size:11px;font-weight:500}.weather-actions button{min-height:36px;font-size:11px;padding:8px 10px}.weather-panel>a{font-size:9px;color:#87998b}
.invite,.notification-panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px 20px;margin-top:16px;gap:10px}.invite h3,.notification-panel h3{font-size:16px;margin:0}.invite p,.notification-panel p{font-size:12px;margin:6px 0}.notification-panel button{font-size:12px}.invite button{font-size:12px}.invite:has(button:disabled){display:none}#status:empty,#push-status:empty,#meal-status:empty{display:none}footer{font-size:11px;padding:24px 16px;color:#92a092}
#auth{gap:60px;padding:35px 0}.intro h1{font-size:62px;letter-spacing:-2.5px}.intro p{font-size:16px;line-height:1.8}.tiles span{background:#e9f0e7;border-radius:12px;padding:13px 16px;width:max-content}.panel h2{font-size:27px;letter-spacing:-1px;margin:0}.panel>p{font-size:13px}.panel{padding:30px}#switchauth{font-size:12px}
@media(max-width:700px){header{padding:14px 18px}.brand{font-size:21px}header span{font-size:11px;max-width:145px}main{padding:16px 14px}.welcome{padding:4px 0 8px;gap:10px}.welcome h1{font-size:25px;letter-spacing:-.8px}.welcome .eyebrow{font-size:9px}.welcome p{font-size:12px}.welcome button{font-size:11px;padding:8px 11px;min-height:36px}.summary{gap:7px;margin:12px 0}.summary>div{padding:12px 10px;border-radius:13px}.summary small{font-size:8px;letter-spacing:.3px}.summary strong{font-size:21px}.summary #members{font-size:17px;line-height:1.75}#tabs{margin:16px 0 12px;gap:2px;border-radius:13px}#tabs button{font-size:12px;padding:9px 11px;min-height:42px}.content{padding:20px 14px;border-radius:18px}.sectionhead h2{font-size:20px}.sectionhead p{font-size:12px}.sectionhead button{font-size:11px;padding:8px 10px;min-height:36px}#addform{padding:10px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#addform input[type=date]{min-inline-size:0;max-inline-size:100%}#addform button{grid-column:1/-1}#addform select{min-width:0}.day{min-height:49px;padding:6px;font-size:11px}.day small{font-size:9px;margin-top:4px}.monthhead h3{font-size:14px}.row{padding:12px 10px}.row h3{font-size:14px}.weather-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.weather-card p{font-size:11px}.invite,.notification-panel{padding:16px}.meal-fields{grid-template-columns:minmax(0,1fr)}.meal-card{padding:14px}#auth{gap:25px;padding:12px 0}.intro h1{font-size:43px;margin:12px 0}.intro p{font-size:14px;margin-bottom:0}.panel{padding:24px}.panel h2{font-size:25px}.notification-panel button{width:100%}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
#meal-form .meal-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}#meal-form .meal-fields>label{display:block;min-width:0;max-width:100%;overflow:hidden}#meal-form .meal-fields input,#meal-form .meal-fields select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;margin-top:7px}#meal-form input[type="date"]{display:block;-webkit-appearance:none;appearance:none;width:100%;min-width:0;max-width:100%;min-inline-size:0;max-inline-size:100%;overflow:hidden}#meal-form input[type="date"]::-webkit-date-and-time-value{min-width:0;text-align:left}#meal-form input[type="date"]::-webkit-datetime-edit{padding:0;min-width:0}@media(max-width:700px){#meal-form .meal-fields{grid-template-columns:minmax(0,1fr)}}
.today-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}.today-card{padding:18px;border:1px solid #e1e8e2;border-radius:16px;background:#f8faf7;min-width:0}.today-card h3{font-size:17px;margin:0}.today-count{background:#e4eee3;border-radius:20px;min-width:26px;padding:3px 8px;text-align:center;font-size:12px;color:#426347}.today-item{padding:12px 0;border-bottom:1px solid #e5ece3}.today-item b{font-size:14px;overflow-wrap:anywhere}.today-item p{font-size:11px;margin:3px 0 0}.today-card>button{margin-top:14px;font-size:12px;width:100%}.today-empty{font-size:12px;margin:18px 0}.today-shopping{background:#fcf7ee}.today-pets{background:#f0f6ed}.today-meals{background:#faf6f0}#today-status:empty{display:none}@media(max-width:700px){.today-grid{grid-template-columns:minmax(0,1fr);gap:12px}.today-card{padding:16px}}
.settings-section{margin-top:20px;padding:18px;background:#f7faf6;border:1px solid #e1e8e2;border-radius:16px}.settings-section h3{margin:0;font-size:17px}.settings-section p{font-size:12px}.settings-toggle{display:flex;justify-content:space-between;align-items:center;margin:0;padding:13px 0;border-bottom:1px solid #e1e8e2}.settings-toggle:last-child{border:0}.settings-toggle input{width:22px;height:22px;min-height:0;accent-color:#306653}.settings-toggle span{font-size:14px}#city-search button{margin-top:12px}#city-results{display:grid;gap:8px;margin-top:12px}#city-results button{text-align:left;white-space:normal}#settings-panel>h2{margin-top:0}#settings-status{font-size:13px;color:#79613e}
#new-home-form button{margin-top:12px}#new-home-result{overflow-wrap:anywhere;user-select:all;padding:10px;background:#edf3ee;border-radius:10px}#new-home-result:empty{display:none}
.home-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.settings-gear{width:42px;height:42px;min-height:42px;padding:0;font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.settings-gear[aria-pressed=true]{background:#dbeadd;color:#234c3e}@media(max-width:700px){.welcome .settings-gear{width:38px;height:38px;min-height:38px;font-size:23px;padding:0}.home-actions{gap:6px}}

#home-name-form button{margin-top:12px}#home-name-status{font-size:12px}
