@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";
:root{--primary:#2d7a50;--primary-dark:#1e5e3e;--primary-light:#e8f5ee;--accent:#4a7c8a;--bg:#f7f8fa;--text:#1e293b;--text-secondary:#475569;--gray:#5a6677;--light:#f7f8fa;--border:#dfe3e8;--card-bg:#fff;--success:#2e8b57;--warning:#c8850e;--danger:#c0392b;--dark:#1e293b;--gray-light:#8a94a3;--white:#fff}@media (prefers-color-scheme:dark){:root{--primary:#5aad7a;--primary-dark:#3d9060;--primary-light:#1a3328;--accent:#6a9aaa;--bg:#121820;--text:#d8dce2;--text-secondary:#8a94a3;--gray:#8a94a3;--light:#1a2230;--border:#2a3444;--card-bg:#1a2230;--success:#5aad7a;--warning:#c8950e;--danger:#d45a4a;--dark:#d8dce2;--gray-light:#5a6677;--white:#1a2230}body{background:#121820}body:before{background:0 0}.card{background:var(--card-bg);border-color:var(--border);box-shadow:0 4px 6px -1px #0003,0 10px 30px -5px #0000004d}.back-link{background:var(--card-bg);border-color:var(--border);box-shadow:0 1px 3px #0003}.upload-zone{border-color:var(--border);background:#1a2230}.upload-zone:hover{border-color:var(--primary);background:#1e2a38;box-shadow:0 4px 12px #0003}.upload-zone.dragging{border-color:var(--accent);background:#1e2a38}.preview-image{border-color:var(--border)}.preview-item{border-color:var(--border);box-shadow:0 4px 10px #0000004d}.add-more-btn{border-color:var(--border)}.add-more-btn:hover{background:#334155}.results-section{border-top-color:var(--border)}.analysis-content{border-color:var(--border);background:#0f172a}.feature-promo{background:var(--card-bg);border-color:var(--border);box-shadow:0 2px 8px #0003}.feature-promo:hover{border-color:var(--primary);box-shadow:0 4px 12px #0003}.feature-icon{background:#1a3328}.meal-option{background:#1e293b}.meal-option:hover{background:#334155;border-color:#475569}.meal-option.selected{border-color:var(--primary);background:#1a3328;box-shadow:0 2px 8px #00000026}.meal-card{background:var(--card-bg);border-color:var(--border);box-shadow:0 2px 8px #0003}.meal-card:hover{border-color:#475569;box-shadow:0 8px 25px #0000004d}.ingredient-tag{border-color:var(--border);background:#334155}.tabs{border-bottom-color:var(--border)}.vitals-tabs{background:#0f172a}.vitals-tabs .tab-btn.active{background:var(--card-bg);box-shadow:0 2px 8px #0000004d}.medication-card{background:var(--card-bg);border-color:var(--border);box-shadow:0 2px 6px #0003}.medication-card:hover{border-color:#475569}.edit-btn{background:#334155}.edit-btn:hover{background:#475569}.med-notes{border-top-color:var(--border)}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000b3}.modal{background:var(--card-bg);border-color:var(--border);box-shadow:0 25px 50px #00000080}.cancel-btn{border-color:var(--border);background:#334155}.cancel-btn:hover{background:#475569}.form-group input[type=text],.form-group input[type=time],.form-group input[type=number],.form-group input[type=date],.form-group select,.form-group textarea{border-color:var(--border);color:var(--text);background:#0f172a}.form-group input:focus,.form-group textarea:focus,.form-group input[type=number]:focus,.form-group input[type=date]:focus,.form-group select:focus{border-color:var(--primary);background:#1a2230;box-shadow:0 0 0 3px #5aad7a1a}.form-group input::placeholder,.form-group textarea::placeholder{color:#475569}.form-section{border-color:var(--border);background:#0f172a}.add-time-btn{border-color:var(--border)}.add-time-btn:hover{background:#334155}.time-slot{border-color:var(--border);background:#1e293b}.time-slot.filled{background:#1a3328;border-color:#3d9060}.average-item,.daily-info{background:#1e2a38}.refresh-btn{border-color:var(--border);background:#1e2a38}.refresh-btn:hover:not(:disabled){background:#1a3328;border-color:#3d9060}.chart-container{background:#1e293b}.reference-card{border-color:var(--border);background:#0f172a}.reading-notes{border-top-color:var(--border)}.setting-row{border-bottom-color:var(--border)}.setting-label input[type=time]{border-color:var(--border);color:var(--text);background:#0f172a}.setting-section{border-top-color:var(--border)}.feature-list li,.paywall-features li,.favorites-group h3,.disclaimer-section{border-bottom-color:var(--border)}}*{box-sizing:border-box;margin:0;padding:0}html,body{-webkit-font-smoothing:antialiased;max-width:100vw;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;overflow-x:hidden}body{background:#f2f4f7;min-height:100vh;position:relative}body:before{content:"";z-index:-1;background:0 0;position:fixed;inset:0}.container{z-index:1;max-width:480px;margin:0 auto;padding:1.5rem;position:relative}.header{text-align:center;margin-bottom:1.5rem;padding-top:1rem}.header h1{color:var(--primary-dark);letter-spacing:-.03em;margin-bottom:.5rem;font-size:1.75rem;font-weight:800}.header p{color:var(--gray);font-size:.9rem;font-weight:400}.back-link{color:var(--gray);background:var(--white);border:1px solid #e2e8f0;border-radius:100px;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.5rem 1rem;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 1px 3px #0000000a}.back-link:hover{background:var(--light);color:var(--dark);transform:translate(-2px)}.card{background:var(--white);border:1px solid #0000000a;border-radius:24px;padding:1.75rem;box-shadow:0 4px 6px -1px #0000000d,0 10px 30px -5px #00000014}.upload-section{margin-bottom:1.5rem}.upload-zone{text-align:center;cursor:pointer;background:#f7f8fa;border:2px dashed #cbd5e1;border-radius:20px;padding:2.5rem 1.5rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.upload-zone:hover{border-color:var(--primary);background:#eef3f0;transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.upload-zone.dragging{border-color:var(--primary);background:#e8f0ec;transform:scale(1.02)}.upload-zone h3{color:var(--dark);margin-bottom:.4rem;font-size:1rem;font-weight:600}.upload-zone p{color:var(--gray);font-size:.85rem}.upload-icon{color:var(--primary);justify-content:center;margin-bottom:1rem;display:flex}.upload-icon svg{width:48px;height:48px}.hidden-input{display:none}.preview-section{text-align:center;margin-top:1.5rem}.preview-image{border:1px solid #e2e8f0;border-radius:16px;max-width:100%;max-height:240px;margin-bottom:1rem;box-shadow:0 10px 30px -10px #00000026}.preview-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem;display:grid}.preview-item{aspect-ratio:1;border:1px solid #e2e8f0;border-radius:12px;position:relative;overflow:hidden;box-shadow:0 4px 10px #00000014}.preview-image-small{object-fit:cover;width:100%;height:100%}.remove-image-btn{color:#fff;cursor:pointer;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex;position:absolute;top:.5rem;right:.5rem}.remove-image-btn:hover{background:#dc2626;transform:scale(1.1)}.add-more-btn{aspect-ratio:1;cursor:pointer;color:var(--gray);border:2px dashed #cbd5e1;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.4rem;transition:all .2s;display:flex}.add-more-btn:hover{border-color:var(--primary);color:var(--primary);background:#f8fafc}.add-more-btn span{font-size:.75rem;font-weight:600}.image-count{color:var(--gray);margin-bottom:.75rem;font-size:.85rem}.upload-hint{margin-top:.25rem;color:var(--gray-light)!important;font-size:.75rem!important}.clear-btn{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:100px;padding:.6rem 1.5rem;font-size:.85rem;font-weight:600;transition:all .2s}.clear-btn:hover{background:#fee2e2;border-color:#fca5a5}.analyze-btn{color:#fff;background:var(--primary);cursor:pointer;text-transform:uppercase;letter-spacing:.05em;border:none;border-radius:16px;width:100%;padding:1rem 2rem;font-size:1rem;font-weight:700;transition:all .2s;position:relative;overflow:hidden}.analyze-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.analyze-btn:active:not(:disabled){transform:translateY(-1px)}.analyze-btn:disabled{opacity:.5;cursor:not-allowed}.analyze-btn span{z-index:1;position:relative}.loading{justify-content:center;align-items:center;gap:.75rem;display:flex}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.results-section{border-top:1px solid #e2e8f0;margin-top:2rem;padding-top:1.5rem;animation:.5s fadeUp}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.results-header{align-items:center;gap:.75rem;margin-bottom:1.25rem;display:flex}.results-header .verdict-icon{border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.verdict-icon.safe{color:#047857;background:#e8f5ee}.verdict-icon.caution{color:#b45309;background:#fef6e0}.verdict-icon.avoid{color:#b91c1c;background:#fdf0f0}.results-header h2{color:var(--dark);font-size:1.1rem;font-weight:700}.verdict{border-radius:16px;margin-bottom:1.25rem;padding:1.25rem}.verdict h3{margin-bottom:.4rem;font-size:1rem;font-weight:700}.verdict p{font-size:.9rem;line-height:1.5}.verdict.safe{background:#e8f5ee;border:1px solid #a7f3d0}.verdict.safe h3{color:#047857}.verdict.safe p{color:#059669}.verdict.caution{background:#fef6e0;border:1px solid #fcd34d}.verdict.caution h3{color:#b45309}.verdict.caution p{color:#d97706}.verdict.avoid{background:#fdf0f0;border:1px solid #fca5a5}.verdict.avoid h3{color:#b91c1c}.verdict.avoid p{color:#dc2626}.analysis-content{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:1.25rem}.analysis-content h3{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;margin:1rem 0 .5rem;font-size:.9rem;font-weight:700}.analysis-content h3:first-child{margin-top:0}.analysis-content p{color:var(--gray);margin-bottom:.6rem;font-size:.9rem;line-height:1.7}.analysis-content ul{margin:.6rem 0;padding-left:1.25rem}.analysis-content li{color:var(--gray);margin-bottom:.4rem;font-size:.9rem;line-height:1.6}.error-message{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:14px;margin-top:1rem;padding:1rem 1.25rem;font-size:.9rem;font-weight:500}.feature-links{flex-direction:column;gap:.75rem;margin-top:1.5rem;display:flex}.feature-link{text-decoration:none}.feature-promo{background:var(--white);border:1px solid #e2e8f0;border-radius:20px;align-items:center;gap:1rem;padding:1.25rem;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 8px #0000000a}.feature-promo:hover{border-color:var(--primary-light);transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.feature-icon{background:var(--primary-light);width:52px;height:52px;color:var(--primary);border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.feature-icon svg{width:28px;height:28px}.feature-promo div{flex:1}.feature-promo h3{color:var(--dark);margin-bottom:.2rem;font-size:.95rem;font-weight:700}.feature-promo p{color:var(--gray);font-size:.8rem;line-height:1.4}.feature-promo .arrow{color:var(--gray-light);align-items:center;transition:all .3s;display:flex}.feature-promo:hover .arrow{color:var(--primary);transform:translate(4px)}.feature-promo .arrow svg{width:20px;height:20px}.paywall{text-align:center;padding:2rem 1rem}.paywall-icon{color:var(--primary);justify-content:center;margin-bottom:1.5rem;display:flex}.paywall-icon svg{width:56px;height:56px}.paywall h2{color:var(--dark);margin-bottom:.5rem;font-size:1.4rem;font-weight:800}.paywall>p{color:var(--gray);margin-bottom:1.5rem;font-size:.9rem}.feature-list{text-align:left;max-width:260px;margin:0 auto 2rem;list-style:none}.feature-list li{color:var(--dark);border-bottom:1px solid #f1f5f9;align-items:center;gap:.75rem;padding:.75rem 0;font-size:.9rem;display:flex}.feature-list li svg{color:var(--success);flex-shrink:0}.feature-list li:last-child{border-bottom:none}.purchase-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:100px;width:100%;margin-bottom:.75rem;padding:1rem 3rem;font-size:1rem;font-weight:700;transition:all .3s;display:block}.purchase-btn:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.purchase-note{color:var(--gray);margin-top:1rem;font-size:.8rem}.meal-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem;display:grid}.meal-option{text-align:center;cursor:pointer;background:#f8fafc;border:2px solid #0000;border-radius:16px;padding:1.25rem 1rem;transition:all .3s}.meal-option:hover{background:#eef3f0;border-color:#c5d8cd;transform:translateY(-2px)}.meal-option.selected{background:var(--primary-light);border-color:var(--primary);box-shadow:0 2px 8px #00000014}.meal-icon{color:var(--gray);justify-content:center;margin-bottom:.5rem;transition:color .2s;display:flex}.meal-icon svg{width:28px;height:28px}.meal-option.selected .meal-icon{color:var(--primary)}.meal-option span:last-child{color:var(--dark);font-size:.85rem;font-weight:600}.tabs{border-bottom:1px solid #e2e8f0;gap:.25rem;margin-bottom:1.25rem;padding-bottom:0;display:flex}.tab-btn{color:var(--gray);cursor:pointer;background:0 0;border:none;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.85rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s;display:flex;position:relative}.tab-btn svg{width:18px;height:18px}.tab-btn:after{content:"";background:0 0;border-radius:2px 2px 0 0;height:2px;transition:all .2s;position:absolute;bottom:-1px;left:0;right:0}.tab-btn:hover,.tab-btn.active{color:var(--primary)}.tab-btn.active:after{background:var(--primary)}.recommendations{flex-direction:column;gap:.75rem;display:flex}.meal-card{background:var(--white);border:1px solid #e2e8f0;border-radius:20px;padding:1.25rem;transition:all .3s;box-shadow:0 2px 8px #0000000a}.meal-card:hover{border-color:#c5d8cd;box-shadow:0 4px 12px #00000014}.meal-card-header{justify-content:space-between;align-items:flex-start;margin-bottom:.6rem;display:flex}.meal-card h3{color:var(--dark);font-size:1rem;font-weight:700}.meal-type-badge{background:var(--primary);color:#fff;text-transform:uppercase;letter-spacing:.03em;border-radius:100px;padding:.25rem .65rem;font-size:.7rem;font-weight:600}.meal-card>p{color:var(--gray);margin-bottom:1rem;font-size:.85rem;line-height:1.5}.ingredients-section h4{color:var(--gray);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;font-weight:600}.ingredients-list{flex-wrap:wrap;gap:.35rem;margin-bottom:1rem;display:flex}.ingredient-tag{color:var(--gray);background:#f1f5f9;border:1px solid #e2e8f0;border-radius:100px;padding:.3rem .65rem;font-size:.75rem}.tips-section{color:#047857;background:#e8f5ee;border:1px solid #a7f3d0;border-radius:12px;padding:.9rem;font-size:.8rem}.favorite-btn{cursor:pointer;color:var(--gray-light);background:0 0;border:none;justify-content:center;align-items:center;padding:.4rem;transition:all .2s;display:flex}.favorite-btn:hover{color:#ef4444;transform:scale(1.15)}.favorite-btn.active{color:#ef4444}.favorite-btn svg{width:20px;height:20px}.loading-meals{text-align:center;color:var(--gray);padding:3rem}.loading-meals .spinner{border:3px solid #e2e8f0;border-top-color:var(--primary);width:36px;height:36px;margin:0 auto 1rem}.empty-favorites{text-align:center;color:var(--gray);padding:3rem}.empty-favorites .heart-empty{color:var(--gray-light);opacity:.5;justify-content:center;margin-bottom:1rem;display:flex}.empty-favorites .heart-empty svg{width:48px;height:48px}.daily-info{color:var(--gray);background:#f5f6f8;border-radius:12px;align-items:center;gap:.6rem;margin-bottom:1.25rem;padding:.75rem 1rem;font-size:.85rem;font-weight:500;display:flex}.daily-info svg{color:var(--primary);flex-shrink:0}.section-title{color:var(--dark);margin-bottom:.75rem;font-size:.9rem;font-weight:700}.recommendations-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.recommendations-header h3{color:var(--dark);font-size:1rem;font-weight:700}.refresh-btn{color:var(--gray);cursor:pointer;background:#f5f6f8;border:1px solid #e2e8f0;border-radius:100px;align-items:center;gap:.4rem;padding:.5rem .9rem;font-size:.8rem;font-weight:600;transition:all .2s;display:flex}.refresh-btn:hover:not(:disabled){background:var(--primary-light);color:var(--primary);border-color:#c5d8cd}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.refresh-btn svg{width:16px;height:16px}.favorites-group{margin-bottom:1.5rem}.favorites-group h3{color:var(--dark);border-bottom:1px solid #e2e8f0;align-items:center;gap:.6rem;margin-bottom:.75rem;padding-bottom:.5rem;font-size:.95rem;font-weight:700;display:flex}.favorites-group h3 svg{color:var(--primary);width:20px;height:20px}.ios-install-prompt{background:#fef3d0;border:1px solid #f59e0b;border-radius:16px;margin-bottom:1.25rem;overflow:hidden}.ios-prompt-header{cursor:pointer;align-items:center;gap:1rem;padding:1rem;transition:background .2s;display:flex}.ios-prompt-header:hover{background:#f59e0b1a}.ios-prompt-header svg{color:#d97706;flex-shrink:0}.ios-prompt-header .chevron{margin-left:auto;transition:transform .3s}.ios-prompt-header .chevron.open{transform:rotate(180deg)}.ios-prompt-header h3{color:#92400e;margin-bottom:.15rem;font-size:.9rem;font-weight:700}.ios-prompt-header p{color:#b45309;font-size:.8rem}.ios-instructions{background:#ffffff80;border-top:1px solid #fbbf24;padding:0 1rem 1rem}.ios-instructions ol{margin:1rem 0;padding-left:1.25rem}.ios-instructions li{color:#78350f;margin-bottom:.6rem;font-size:.85rem;line-height:1.5}.ios-instructions .share-icon{color:#fff;text-align:center;vertical-align:middle;background:#3b82f6;border-radius:4px;width:1.3em;height:1.3em;font-size:.9em;line-height:1.3em;display:inline-block}.ios-note{color:#78350f;background:#92400e1a;border-radius:8px;padding:.75rem;font-size:.8rem;line-height:1.4}.push-badge{color:#1d4ed8;background:#dbeafe;border-radius:100px;margin-top:.3rem;padding:.2rem .5rem;font-size:.7rem;font-weight:600;display:inline-block}.push-active{color:#059669;font-weight:500}.notification-section{margin-bottom:1.25rem}.notification-prompt{background:#eaf1fb;border:1px solid #93c5fd;border-radius:16px;align-items:center;gap:1rem;padding:1rem;display:flex}.bell-icon{color:#3b82f6;flex-shrink:0}.bell-icon svg{width:24px;height:24px}.notification-prompt h3{color:#1d4ed8;font-size:.9rem;font-weight:700}.notification-prompt p{color:#3b82f6;font-size:.8rem}.enable-btn{color:#fff;cursor:pointer;background:#3b82f6;border:none;border-radius:100px;margin-left:auto;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:all .2s}.enable-btn:hover{background:#2563eb;transform:scale(1.05)}.notification-enabled{color:#047857;background:#e8f5ee;border:1px solid #6ee7b7;border-radius:16px;align-items:center;gap:.6rem;padding:1rem;font-size:.9rem;font-weight:600;display:flex}.notification-enabled svg{flex-shrink:0}.notification-enabled span{flex:1}.test-btn{color:#fff;cursor:pointer;background:#10b981;border:none;border-radius:100px;padding:.45rem .9rem;font-size:.8rem;font-weight:600;transition:all .2s}.test-btn:hover{background:#059669}.notification-denied{color:#b45309;background:#fef6e0;border:1px solid #fcd34d;border-radius:16px;align-items:center;gap:.6rem;padding:1rem;font-size:.9rem;display:flex}.notification-denied svg{flex-shrink:0}.drug-warning{background:#fdf0f0;border:1px solid #fca5a5;border-radius:16px;margin-bottom:1.25rem;padding:1.25rem}.drug-warning h3{color:#b91c1c;align-items:center;gap:.5rem;margin-bottom:.6rem;font-size:.95rem;font-weight:700;display:flex}.drug-warning h3 svg{flex-shrink:0}.drug-warning p{color:#dc2626;margin-bottom:.4rem;font-size:.85rem}.drug-warning ul{margin:.5rem 0;padding-left:1.25rem}.drug-warning li{color:#dc2626;margin-bottom:.25rem;font-size:.85rem}.warning-note{font-weight:600;margin-top:.6rem!important}.medications-list{margin-top:1.25rem}.list-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.list-header h2{color:var(--dark);font-size:1.05rem;font-weight:700}.add-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:100px;padding:.5rem 1.1rem;font-size:.85rem;font-weight:600;transition:all .2s}.add-btn:hover{transform:translateY(-1px);box-shadow:0 6px 15px #0000001f}.empty-state{text-align:center;color:var(--gray);padding:3rem 1rem}.pill-icon{color:var(--gray-light);opacity:.5;justify-content:center;margin-bottom:1rem;display:flex}.pill-icon svg{width:48px;height:48px}.empty-state p{margin-bottom:1.5rem}.add-first-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:100px;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.add-first-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000001f}.medication-card{background:var(--white);border:1px solid #e2e8f0;border-radius:16px;margin-bottom:.75rem;padding:1.15rem;transition:all .2s;box-shadow:0 2px 6px #0000000a}.medication-card:hover{border-color:#c5d8cd}.med-header{justify-content:space-between;align-items:flex-start;margin-bottom:.4rem;display:flex}.med-header h3{color:var(--dark);font-size:.95rem;font-weight:700}.med-actions{gap:.4rem;display:flex}.edit-btn{color:var(--gray);cursor:pointer;background:#f1f5f9;border:none;border-radius:8px;padding:.35rem .7rem;font-size:.75rem;font-weight:600;transition:all .2s}.edit-btn:hover{color:var(--dark);background:#e2e8f0}.delete-btn{color:#dc2626;cursor:pointer;background:#fef2f2;border:none;border-radius:8px;padding:.35rem .7rem;font-size:.75rem;font-weight:600;transition:all .2s}.delete-btn:hover{background:#fee2e2}.med-dosage{color:var(--gray);margin-bottom:.6rem;font-size:.85rem}.med-times{flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem;display:flex}.time-badge{background:var(--primary-light);color:var(--primary);border:1px solid #c5d8cd;border-radius:100px;align-items:center;gap:.35rem;padding:.35rem .7rem;font-size:.75rem;font-weight:600;display:inline-flex}.time-badge svg{width:14px;height:14px}.food-badge{color:#8a6510;background:#fef6e0;border:1px solid #fcd34d;border-radius:100px;align-items:center;gap:.35rem;margin-bottom:.4rem;padding:.35rem .7rem;font-size:.75rem;font-weight:600;display:inline-flex}.food-badge svg{width:14px;height:14px}.med-notes{color:var(--gray);border-top:1px solid #f1f5f9;margin-top:.5rem;padding-top:.5rem;font-size:.8rem;font-style:italic}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0006;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--white);border:1px solid #e2e8f0;border-radius:24px;width:100%;max-width:400px;max-height:90vh;padding:1.5rem;animation:.3s slideUp;overflow-y:auto;box-shadow:0 25px 50px #00000026}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.modal h2{color:var(--dark);margin-bottom:1.25rem;font-size:1.15rem;font-weight:700}.form-group{margin-bottom:1rem}.form-group label{color:var(--gray);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.4rem;font-size:.8rem;font-weight:600;display:block}.form-group input[type=text],.form-group input[type=time],.form-group textarea{width:100%;color:var(--dark);background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:.8rem 1rem;font-family:inherit;font-size:.95rem;transition:all .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--gray-light)}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);background:var(--white);outline:none;box-shadow:0 0 0 3px #2d7a501a}.form-group textarea{resize:vertical;min-height:70px}.checkbox-group label{cursor:pointer;color:var(--dark);align-items:center;gap:.6rem;font-size:.9rem;display:flex}.checkbox-group input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary);cursor:pointer}.time-input-row{gap:.5rem;margin-bottom:.5rem;display:flex}.time-input-row input{flex:1}.remove-time-btn{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:0 .9rem;font-size:1.2rem;transition:all .2s}.remove-time-btn:hover{background:#fee2e2}.add-time-btn{color:var(--gray);cursor:pointer;background:0 0;border:1px dashed #cbd5e1;border-radius:12px;width:100%;padding:.6rem;font-size:.85rem;font-weight:600;transition:all .2s}.add-time-btn:hover{border-color:var(--primary);color:var(--primary);background:#f8fafc}.modal-actions{gap:.6rem;margin-top:1.5rem;display:flex}.cancel-btn{color:var(--gray);cursor:pointer;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;flex:1;padding:.8rem;font-weight:600;transition:all .2s}.cancel-btn:hover{color:var(--dark);background:#e2e8f0}.save-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;flex:1;padding:.8rem;font-weight:600;transition:all .2s}.save-btn:hover{transform:translateY(-1px);box-shadow:0 6px 15px #0000001f}.disclaimer-banner{color:#92400e;background:#fef6e0;border:1px solid #fcd34d;border-radius:14px;margin-bottom:1.25rem;padding:.8rem 1rem;font-size:.75rem;line-height:1.5}.disclaimer-banner.warning{color:#991b1b;background:#fdf0f0;border-color:#fca5a5}.disclaimer-banner strong{color:#b45309;font-weight:700}.disclaimer-banner.warning strong{color:#b91c1c}.disclaimer-banner a{color:var(--primary);font-weight:600;text-decoration:underline}.app-footer{text-align:center;color:var(--gray);margin-top:2rem;padding:1.5rem;font-size:.8rem}.app-footer a{color:var(--primary);text-decoration:underline}.app-footer .support-contact{margin-top:.75rem;font-size:.8rem}.app-footer .copyright{margin-top:.4rem;font-size:.75rem}.disclaimer-page{text-align:left}.disclaimer-section{border-bottom:1px solid #e2e8f0;margin-bottom:1.75rem;padding-bottom:1.5rem}.disclaimer-section:last-of-type{border-bottom:none}.disclaimer-section h2{color:var(--dark);margin-bottom:.8rem;font-size:1.05rem;font-weight:700}.disclaimer-section p{color:var(--gray);margin-bottom:.6rem;font-size:.9rem;line-height:1.7}.disclaimer-section ul{margin:.6rem 0;padding-left:1.25rem}.disclaimer-section li{color:var(--gray);margin-bottom:.4rem;font-size:.9rem;line-height:1.6}.disclaimer-acknowledgment{text-align:center;border-top:2px solid var(--primary);margin-top:2rem;padding-top:1.5rem}.acknowledge-btn{background:var(--primary);color:#fff;border-radius:100px;padding:1rem 2.5rem;font-size:.95rem;font-weight:700;text-decoration:none;transition:all .3s;display:inline-block}.acknowledge-btn:hover{transform:translateY(-3px);box-shadow:0 15px 30px #0000001f}.paywall-card{text-align:center;padding:2rem 1.5rem}.paywall-card .paywall-icon{color:#ef4444;justify-content:center;margin-bottom:1.5rem;display:flex}.paywall-card h2{color:var(--dark);margin-bottom:.75rem;font-size:1.5rem;font-weight:800}.paywall-description{color:var(--gray);margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.paywall-features{text-align:left;max-width:280px;margin:0 auto 1.5rem;list-style:none}.paywall-features li{color:var(--dark);border-bottom:1px solid #f1f5f9;align-items:center;gap:.75rem;padding:.6rem 0;font-size:.9rem;display:flex}.paywall-features li:last-child{border-bottom:none}.paywall-price{margin-bottom:1.5rem}.paywall-price .price{color:var(--dark);font-size:2.5rem;font-weight:800;display:block}.paywall-price .price-note{color:var(--gray);font-size:.85rem}.unlock-btn{color:#fff;cursor:pointer;background:#c0392b;border:none;border-radius:16px;width:100%;margin-bottom:.75rem;padding:1rem 2rem;font-size:1rem;font-weight:700;transition:all .3s}.unlock-btn:hover{background:#a93226;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.restore-btn{color:var(--gray);cursor:pointer;background:0 0;border:none;margin:0 auto;font-size:.85rem;text-decoration:underline;display:block}.restore-btn:hover{color:var(--primary)}.paywall-note{color:var(--gray-light);margin-top:1rem;font-size:.75rem}.store-status-warning{text-align:center;background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;margin-top:1rem;padding:.875rem}.store-status-message{color:#92400e;margin:0 0 .5rem;font-size:.8rem;line-height:1.4}.retry-btn{color:#fff;cursor:pointer;background:#f59e0b;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.8rem;font-weight:600;transition:background .2s}.retry-btn:hover{background:#d97706}.retry-btn:disabled{cursor:not-allowed;background:#d1d5db}.vitals-tabs{background:#f1f5f9;border-radius:12px;gap:.25rem;margin-bottom:1rem;padding:.25rem;display:flex}.vitals-tabs .tab-btn{color:var(--gray);cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:.65rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s}.vitals-tabs .tab-btn:after{display:none}.vitals-tabs .tab-btn.active{color:var(--primary);background:#fff;box-shadow:0 2px 8px #00000014}.weekly-averages{margin-bottom:1rem;padding:1.25rem}.weekly-averages h3{color:var(--gray);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.75rem;font-weight:600}.averages-grid{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.average-item{text-align:center;background:#f5f6f8;border-radius:12px;padding:.75rem}.average-label{color:var(--gray);margin-bottom:.25rem;font-size:.75rem;display:block}.average-value{color:var(--dark);font-size:1.5rem;font-weight:800;display:block}.average-unit{color:var(--gray-light);font-size:.7rem;display:block}.log-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.log-header h3{color:var(--dark);font-size:1rem;font-weight:700}.daily-slots{flex-direction:column;gap:.75rem;display:flex}.time-slot{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:1rem}.time-slot.filled{background:#edf8f0;border-color:#86efac}.slot-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.slot-time{color:var(--dark);font-size:.9rem;font-weight:700}.quick-add-btn{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:100px;padding:.35rem .75rem;font-size:.75rem;font-weight:600;transition:all .2s}.quick-add-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px #0000001f}.slot-content{margin-top:.5rem}.reading-row{align-items:center;gap:.5rem;margin-bottom:.35rem;display:flex}.reading-label{color:var(--gray);min-width:55px;font-size:.8rem}.reading-value{font-size:.95rem;font-weight:700}.reading-status{color:var(--gray);margin-left:auto;font-size:.75rem}.reading-notes{color:var(--gray);border-top:1px dashed #d1d5db;margin-top:.5rem;padding-top:.5rem;font-size:.8rem;font-style:italic}.delete-reading-btn{color:#dc2626;cursor:pointer;background:#fef2f2;border:none;border-radius:6px;margin-top:.5rem;padding:.3rem .6rem;font-size:.7rem;font-weight:600}.delete-reading-btn:hover{background:#fee2e2}.slot-empty-text{color:var(--gray-light);text-align:center;padding:.5rem 0;font-size:.85rem}.chart-container{background:#fafafa;border-radius:12px;margin:1rem 0;padding:1rem .5rem}.reference-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:1.5rem;padding:1rem}.reference-card h4{color:var(--gray);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.75rem;font-size:.75rem;font-weight:600}.reference-items{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.ref-item{color:var(--gray);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.ref-color{border-radius:3px;flex-shrink:0;width:12px;height:12px}.setting-row{border-bottom:1px solid #f1f5f9;padding:.75rem 0}.setting-row:last-child{border-bottom:none}.setting-label{width:100%;color:var(--dark);justify-content:space-between;align-items:center;font-size:.9rem;display:flex}.setting-label input[type=checkbox]{width:20px;height:20px;accent-color:var(--primary)}.setting-label input[type=time]{border:1px solid #e2e8f0;border-radius:8px;padding:.5rem;font-size:.9rem}.setting-section{border-top:1px solid #e2e8f0;margin-top:1.5rem;padding-top:1rem}.setting-section h4{color:var(--gray);margin-bottom:.75rem;font-size:.8rem;font-weight:600}.danger-btn{color:#dc2626;cursor:pointer;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:.6rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s}.danger-btn:hover{background:#fee2e2}.form-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin:1rem 0;padding:1rem}.form-section h4{color:var(--dark);margin-bottom:.75rem;font-size:.9rem;font-weight:700}.bp-inputs{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.form-group input[type=number],.form-group input[type=date],.form-group select{width:100%;color:var(--dark);background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:.8rem 1rem;font-family:inherit;font-size:.95rem;transition:all .2s}.form-group input[type=number]:focus,.form-group input[type=date]:focus,.form-group select:focus{border-color:var(--primary);background:var(--white);outline:none;box-shadow:0 0 0 3px #2d7a501a}@media (max-width:600px){.container{padding:1rem}.header h1{font-size:1.5rem}.card{border-radius:20px;padding:1.25rem}.upload-zone{padding:2rem 1rem}.meal-grid{gap:.6rem}.meal-option{padding:1rem .75rem}.meal-icon{font-size:1.75rem}.feature-promo{padding:1rem}.feature-icon{font-size:1.75rem}}
