*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #faf9f7;--surface: #ffffff;--text: #1a1714;--text-muted: #8a8279;--border: #e8e4df;--accent: #3b6b4e;--accent-hover: #2d5540;--accent-light: #eef5f0;--claimed-bg: #f4f9f5;--claimed-border: #c8e0ce;--warm: #c4956a;--warm-light: #fdf6f0;--today-bg: #f0f6f2;--today-border: #a8d4b4;--open-border: #f0e4d0;--skip-bg: #f5f3f0;--skip-border: #ddd8d0;--pending-bg: #fdf6e8;--pending-border: #f0d890;--radius: 10px;--shadow-sm: 0 1px 3px rgba(0,0,0,.04), 0 1px 2px rgba(0,0,0,.03);--shadow: 0 2px 8px rgba(0,0,0,.06), 0 1px 3px rgba(0,0,0,.04);--shadow-lg: 0 8px 24px rgba(0,0,0,.1), 0 2px 8px rgba(0,0,0,.06)}body{font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.55;-webkit-font-smoothing:antialiased}.navbar{position:sticky;top:0;z-index:50;background:#faf9f7d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.navbar-inner{max-width:900px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;cursor:pointer}.brand-logo{width:36px;height:36px;background:var(--accent);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:var(--shadow-sm)}.brand-name{font-family:Outfit,sans-serif;font-weight:700;font-size:20px;letter-spacing:-.5px;color:var(--text)}.brand-name span{color:var(--accent)}.nav-actions{display:flex;align-items:center;gap:12px}.nav-link{font-size:14px;font-weight:500;color:var(--text-muted);text-decoration:none;cursor:pointer;padding:6px 12px;border-radius:8px;transition:all .15s}.nav-link:hover{color:var(--text);background:#0000000a}.nav-btn{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s;text-decoration:none}.nav-btn:hover{background:var(--accent-hover)}.btn-big{padding:14px 32px;border-radius:12px;font-size:16px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .2s;border:none;text-decoration:none;display:inline-flex;align-items:center;gap:8px}.btn-big-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow)}.btn-big-primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-lg),0 0 0 4px #3b6b4e1a;transform:translateY(-1px)}.btn-big-secondary{background:var(--surface);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.btn-big-secondary:hover{border-color:var(--accent);box-shadow:var(--shadow)}.btn-primary{background:var(--accent);color:#fff;border:none;border-radius:8px;padding:9px 22px;font-size:14px;font-weight:600;cursor:pointer;font-family:inherit;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-secondary{background:none;border:1px solid var(--border);border-radius:8px;padding:9px 16px;font-size:14px;color:var(--text-muted);cursor:pointer;font-family:inherit}.btn-claim{flex:1;background:none;border:1px dashed var(--border);border-radius:8px;padding:10px 16px;font-size:14px;color:var(--accent);cursor:pointer;font-family:inherit;font-weight:500;transition:all .15s}.btn-claim:hover{border-color:var(--accent);background:var(--accent-light);border-style:solid}.modal-overlay{display:none;position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;align-items:center;justify-content:center}.modal-overlay.show{display:flex}.modal{background:var(--surface);border-radius:20px;padding:36px;max-width:400px;width:90%;box-shadow:var(--shadow-lg);text-align:center;animation:modalIn .2s ease-out;position:relative}.modal-icon{font-size:56px;margin-bottom:16px;display:block}.modal h2{font-family:Outfit,sans-serif;font-size:22px;font-weight:700;margin-bottom:8px}.modal p{font-size:14px;color:var(--text-muted);margin-bottom:24px;line-height:1.5}.modal input[type=email]{width:100%;padding:12px 16px;border:1px solid var(--border);border-radius:10px;font-size:15px;font-family:inherit;margin-bottom:12px;text-align:center}.modal input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px #3b6b4e1f}.modal .btn-big{width:100%;justify-content:center}.modal-close{position:absolute;top:16px;right:16px;width:32px;height:32px;border:none;background:var(--bg);border-radius:8px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center}.train-container{max-width:660px;margin:0 auto;padding:24px 20px 80px}.header-top{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px}.baby-icon{width:56px;height:56px;background:var(--warm-light);border:2px solid var(--warm);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;flex-shrink:0}.header-text h1{font-family:Outfit,sans-serif;font-size:23px;font-weight:700;letter-spacing:-.3px;line-height:1.3}.organizer{color:var(--text-muted);font-size:14px;margin-top:2px}.info-card{background:var(--warm-light);border:1px solid var(--open-border);border-radius:var(--radius);padding:14px 18px;margin-bottom:16px;font-size:15px;line-height:1.6}.details{display:flex;flex-direction:column;gap:8px;font-size:14px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 18px}.detail{display:flex;gap:10px}.detail-icon{flex-shrink:0;width:20px;text-align:center;font-size:16px}.detail-label{color:var(--text-muted);flex-shrink:0;min-width:100px}.stats{display:flex;gap:1px;background:var(--border);border-radius:var(--radius);overflow:hidden;margin-bottom:20px;box-shadow:var(--shadow-sm)}.stat{flex:1;background:var(--surface);padding:14px 16px;text-align:center}.stat-num{font-family:Outfit,sans-serif;font-size:32px;font-weight:700;color:var(--accent)}.stat-num.warn{color:var(--warm)}.stat-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:500;margin-top:2px}.tabs{display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:4px;margin-bottom:20px}.tab{flex:1;padding:10px 16px;border:none;border-radius:8px;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;background:transparent;color:var(--text-muted);transition:all .15s;display:flex;align-items:center;justify-content:center;gap:6px}.tab:hover{color:var(--text);background:#00000008}.tab.active{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.tab-icon{font-size:16px}.calendar-list{display:flex;flex-direction:column;gap:6px}.day{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm)}.day.past{opacity:.4}.day.today{border-color:var(--today-border);box-shadow:0 0 0 1px var(--today-border),var(--shadow)}.day-header{padding:10px 16px;display:flex;align-items:center;justify-content:space-between}.day-left{display:flex;align-items:center;gap:8px}.day-date{font-weight:600;font-size:14px}.today-badge{font-size:10px;font-weight:700;background:var(--accent);color:#fff;padding:2px 8px;border-radius:10px;text-transform:uppercase;letter-spacing:.8px}.day-status{font-size:12px;color:var(--text-muted)}.day-status.open-status{color:var(--warm)}.day-status.skip-status{color:var(--text-muted);font-style:italic}.day-status.pending-status{color:#b8860b}.slot{padding:12px 16px;border-top:1px solid var(--border);display:flex;align-items:center;gap:14px}.slot.claimed{background:var(--claimed-bg)}.slot.skip{background:var(--skip-bg)}.slot.pending{background:var(--pending-bg)}.pending-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600;padding:3px 10px;border-radius:12px;background:var(--pending-bg);color:#b8860b;border:1px solid var(--pending-border)}.approve-reject-btns{display:flex;gap:6px;margin-top:8px}.btn-approve{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600;cursor:pointer;font-family:inherit}.btn-approve:hover{background:var(--accent-hover)}.btn-reject{background:none;border:1px solid #e8a0a0;border-radius:6px;padding:5px 12px;font-size:12px;font-weight:600;color:#b91c1c;cursor:pointer;font-family:inherit}.btn-reject:hover{background:#fef2f2}.day-settings{padding:8px 16px;border-top:1px solid var(--border);display:flex;flex-direction:column;gap:6px}.day-settings label{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.day-settings input,.day-settings textarea{padding:6px 10px;border:1px solid var(--border);border-radius:6px;font-size:13px;font-family:inherit}.day-settings input:focus,.day-settings textarea:focus{outline:none;border-color:var(--accent)}.day-settings .settings-row{display:flex;gap:8px}.day-settings .settings-row>div{flex:1}.btn-toggle-skip{font-size:11px;padding:3px 8px;border-radius:6px;border:1px solid var(--skip-border);background:var(--skip-bg);color:var(--text-muted);cursor:pointer;font-family:inherit;font-weight:500}.btn-toggle-skip:hover{border-color:var(--text-muted)}.slot-check{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:13px}.slot-check.done{background:var(--accent);color:#fff}.slot-check.open{border:2px dashed var(--border)}.claimed-info{flex:1;min-width:0}.claimer-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.claimer{font-weight:600;font-size:14px}.dish{font-size:13px;color:var(--text-muted);font-style:italic;margin-top:3px}.cuisine-badge{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:600;padding:3px 10px 3px 6px;border-radius:20px;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.cuisine-flag{font-size:18px;line-height:1}.cuisine-american{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.cuisine-asian{background:#fef9ee;color:#a16207;border:1px solid #fde68a}.cuisine-italian{background:#eef5f0;color:#166534;border:1px solid #bbf7d0}.cuisine-japanese{background:#fdf2f8;color:#9d174d;border:1px solid #fbcfe8}.cuisine-mexican{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.cuisine-other{background:#f5f3ff;color:#6d28d9;border:1px solid #ddd6fe}.meta-row{display:flex;align-items:center;gap:8px;margin-top:5px}.protein-icon{font-size:28px;flex-shrink:0;line-height:1;filter:drop-shadow(0 2px 3px rgba(0,0,0,.1))}.protein-label{font-size:12px;color:var(--text-muted);font-weight:500}.delivery-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:500;padding:2px 8px;border-radius:12px;background:var(--accent-light);color:var(--accent)}.ai-comment{font-size:12px;color:var(--accent);margin-top:4px;font-style:italic}.claim-form{flex:1;display:flex;flex-direction:column;gap:8px}.claim-form input[type=text],.claim-form input[type=email],.claim-form select,.claim-form textarea{padding:9px 12px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit;background:#fff;transition:border-color .15s}.claim-form input:focus,.claim-form select:focus,.claim-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px #3b6b4e1f}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.checkbox-label{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text-muted);cursor:pointer}.checkbox-label input[type=checkbox]{accent-color:var(--accent)}.form-actions{display:flex;gap:8px;margin-top:2px}.delivery-toggle{display:flex;gap:4px;background:var(--bg);border-radius:8px;padding:3px}.delivery-toggle button{flex:1;padding:8px 12px;border:none;border-radius:6px;font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;background:transparent;color:var(--text-muted);transition:all .15s}.delivery-toggle button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.cal-grid-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.cal-month{font-family:Outfit,sans-serif;font-size:18px;font-weight:700}.cal-nav{display:flex;gap:4px}.cal-nav button{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--surface);cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .1s}.cal-nav button:hover{background:var(--accent-light);border-color:var(--accent)}.cal-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}.cal-weekday{text-align:center;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:8px 0}.cal-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-day{aspect-ratio:1;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:14px;font-weight:500;border:1px solid transparent;cursor:default;transition:all .1s}.cal-day.outside{color:var(--border)}.cal-day.in-range{background:var(--surface);border-color:var(--border);cursor:pointer}.cal-day.in-range:hover{border-color:var(--accent);box-shadow:var(--shadow-sm)}.cal-day.today-cell{border-color:var(--today-border);background:var(--today-bg);font-weight:700}.cal-day.claimed-cell{background:var(--claimed-bg);border-color:var(--claimed-border)}.cal-day.open-cell{background:var(--warm-light);border-color:var(--open-border)}.cal-day.no-meal-cell{background:var(--skip-bg);border-color:var(--skip-border)}.cal-day.no-meal-cell .cal-day-num{color:var(--text-muted)}.cal-day.pending-cell{background:var(--pending-bg);border-color:var(--pending-border)}.cal-day.past-cell{opacity:.4}.cal-day-num,.cal-day-cuisine{font-size:14px;line-height:1}.cal-popover{position:fixed;z-index:100;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-lg);padding:18px;min-width:280px;max-width:340px;display:none}.cal-popover.show{display:block}.cal-popover-date{font-weight:700;font-size:14px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid var(--border)}.cal-popover-claimed{display:flex;align-items:flex-start;gap:10px}.cal-popover-open{text-align:center;padding:8px 0}.cal-popover-open p{margin-bottom:10px}.legend{display:flex;gap:16px;justify-content:center;margin-top:16px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-muted)}.legend-swatch{width:12px;height:12px;border-radius:3px;border:1px solid}.legend-swatch.claimed-swatch{background:var(--claimed-bg);border-color:var(--claimed-border)}.legend-swatch.open-swatch{background:var(--warm-light);border-color:var(--open-border)}.legend-swatch.today-swatch{background:var(--today-bg);border-color:var(--today-border)}.legend-swatch.skip-swatch{background:var(--skip-bg);border-color:var(--skip-border)}.legend-swatch.pending-swatch{background:var(--pending-bg);border-color:var(--pending-border)}.subscribe-section{margin-top:36px;text-align:center;padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.subscribe-section p{font-size:14px;color:var(--text-muted);margin-bottom:12px}.sub-fields{display:flex;gap:8px;justify-content:center}.sub-fields input{padding:9px 12px;border:1px solid var(--border);border-radius:8px;font-size:14px;font-family:inherit}.sub-fields input:focus{outline:none;border-color:var(--accent)}.footer{margin-top:48px;text-align:center;font-size:12px;color:var(--text-muted);opacity:.6}.footer a{color:var(--accent);text-decoration:none;font-weight:600}.ai-suggestion{background:var(--accent-light);border:1px solid var(--claimed-border);border-radius:8px;padding:10px 14px;margin-bottom:8px;animation:fadeIn .3s ease-out}.ai-suggestion-header{font-size:12px;font-weight:600;color:var(--accent);margin-bottom:6px}.ai-suggestion-list{list-style:none;padding:0}.ai-suggestion-list li{font-size:13px;color:var(--text);padding:3px 0;cursor:pointer;transition:color .1s}.ai-suggestion-list li:hover{color:var(--accent)}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-8deg)}75%{transform:rotate(8deg)}}@keyframes modalIn{0%{opacity:0;transform:scale(.95) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media(max-width:640px){.hero h1{font-size:32px}.hero-sub{font-size:16px}.how-grid{grid-template-columns:1fr}.flip-card{height:220px}.feature-grid{grid-template-columns:1fr 1fr}.train-container{padding:16px 14px 60px}.header-text h1{font-size:19px}.sub-fields{flex-direction:column}.sub-fields input{width:100%}.form-row-2{grid-template-columns:1fr}.food-parade{gap:10px}.food-float{font-size:36px}}
