@import "https://fonts.googleapis.com/css2?family=Roboto:wght@100..900&display=swap";:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}body{margin:0}#root{width:100%}body{background-color:#000;justify-content:center;align-items:flex-start;margin:0;font-family:Roboto,-apple-system,BlinkMacSystemFont,Segoe UI,Oxygen,Ubuntu,Cantarell,sans-serif;display:flex}.app-wrapper{background-color:#000;justify-content:center;align-items:center;width:100vw;min-height:100vh;padding:20px;display:flex}.app-container{background-color:#fafafa;border-radius:8px;flex-direction:column;width:360px;height:640px;display:flex;position:relative;overflow:hidden;box-shadow:0 10px 40px #0000004d}.header{color:#fff;background-color:#a7192f;justify-content:space-between;align-items:center;padding:12px 16px;font-weight:700;display:flex}.header-left{align-items:center;gap:10px;display:flex}.header-icon{width:20px;height:20px}.header-title{font-size:16px;font-weight:600}.header-icons{gap:12px;display:flex}.header-button{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:flex}.header-button img{width:18px;height:18px}.header-button:hover{opacity:.8}.content{flex:1;padding:20px 16px 12px;overflow-y:auto}.section-card{background-color:#fff;border-radius:8px;margin-bottom:16px;padding:16px}.section-title{color:#a7192f;text-align:left;margin:0 0 12px;padding:0;font-size:18px;font-weight:700}.card-text{color:#666;text-align:center;margin:12px 0;font-size:14px;line-height:1.5}.section-button{color:#fff;cursor:pointer;background-color:#666;border:none;border-radius:20px;margin:16px auto 0;padding:8px 20px;font-size:12px;font-weight:500;display:block}.section-button:hover{background-color:#555}.promotions-section{margin-bottom:16px}.promotions-list{flex-direction:column;gap:12px;display:flex}.promotion-card{background-color:#fff;border-radius:8px;gap:12px;padding:12px;display:flex;box-shadow:0 1px 3px #0000001a}.promotion-image{background-color:#e8e8e8;border:1px solid #d5d5d5;border-radius:6px;flex-shrink:0;width:80px;height:80px;overflow:hidden}.image-placeholder{background-color:#d5d5d5;background-image:linear-gradient(135deg,#e8e8e8 25%,#0000 25% 75%,#e8e8e8 75%,#e8e8e8),linear-gradient(135deg,#e8e8e8 25%,#0000 25% 75%,#e8e8e8 75%,#e8e8e8);background-position:0 0,10px 10px;background-repeat:repeat,repeat;background-size:20px 20px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;width:100%;height:100%}.promotion-content{flex-direction:column;flex:1;gap:4px;display:flex}.promotion-title{color:#e74c3c;margin:0;font-size:14px;font-weight:600}.promotion-location{color:#666;margin:0;font-size:12px;font-weight:500}.promotion-description{color:#999;margin:0;font-size:12px;line-height:1.4}.promotion-button{color:#fff;cursor:pointer;background-color:#666;border:none;border-radius:16px;align-self:flex-end;margin-top:4px;padding:6px 16px;font-size:11px;font-weight:500}.promotion-button:hover{background-color:#555}.budget-bar-container{background-color:#e8e8e8;border-radius:10px;height:20px;margin-bottom:12px;overflow:hidden}.budget-bar{background-color:#4caf50;border-radius:10px;height:100%;transition:width .3s,background-color .3s}.budget-bar.over-budget{background-color:#f44336}.budget-info{justify-content:space-between;margin-bottom:8px;display:flex}.budget-spend,.budget-remaining{flex-direction:column;align-items:center;display:flex}.budget-label{color:#666;margin-bottom:2px;font-size:12px}.budget-amount{color:#333;font-size:16px;font-weight:600}.budget-amount.over-budget-text{color:#f44336}.budget-status{text-align:center;color:#555;margin-top:8px;font-size:14px}.flow-card{background-color:#f4f3f8;border-radius:8px;margin-bottom:16px;padding:16px}.flow-card-centered{text-align:center;flex-direction:column;align-items:center;display:flex}.flow-subtitle{color:#666;border-bottom:1px solid #e9ecef;font-size:13px;line-height:1.4}.flow-row{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.flow-label{color:#555;font-size:12px}.flow-footer{justify-content:space-between;gap:8px;margin-top:16px;display:flex}.flow-ghost-button,.flow-primary-button{cursor:pointer;border-radius:20px;flex:1;min-width:100px;padding:6px 12px;font-size:12px}.flow-ghost-button{color:#555;background-color:#0000;border:1px solid #bbb}.flow-primary-button{color:#fff;background-color:#5a5a5a;border:none}.flow-howto{border-top:1px solid #ddd;margin-top:16px;padding-top:12px}.flow-howto-title{color:#a7192f;cursor:pointer;margin-bottom:4px;font-size:13px}.flow-howto-text{color:#666;font-size:12px}.flow-circle-outline{border:6px solid #000;border-radius:70px;justify-content:center;align-items:center;width:140px;height:140px;margin:24px 0 12px;display:flex}.flow-circle-inner{border:4px solid #aaa;border-radius:40px;width:80px;height:80px}.flow-generating-text{color:#666;font-size:13px}.option-card{background-color:#e4e4e4;border-radius:6px;gap:8px;margin-bottom:8px;padding:10px;display:flex}.option-card-selectable{cursor:pointer;text-align:left;border:2px solid #0000;width:100%}.option-card-selected{border-color:#e74c3c}.option-image{background-color:#d0d0d0;border:1px solid #aaa;width:48px;height:48px}.option-content{flex:1}.option-title{color:#e74c3c;margin:0;font-size:13px}.option-meta{color:#555;margin:0;font-size:12px}.plan-grid{gap:8px;margin-top:12px;padding-bottom:8px;display:flex;overflow:auto hidden}.plan-column{flex:none;min-width:160px}.plan-day{color:#a7192f;margin-bottom:8px;font-size:12px;font-weight:600}.plan-card{background-color:#e8e8e8;border-radius:8px;margin-bottom:8px;padding:12px;font-size:12px}.plan-card-header{border-bottom:1px solid #d0d0d0;flex-direction:column;gap:6px;margin-bottom:10px;padding-bottom:8px;display:flex}.plan-date-time{color:#333;font-size:12px;font-weight:500}.plan-restaurant{color:#a7192f;font-size:12px;font-weight:600}.plan-meal-title{color:#333;margin:8px 0;font-size:13px;font-weight:600}.plan-pricing{flex-direction:column;gap:4px;display:flex}.plan-price-row{color:#555;justify-content:space-between;font-size:11px;display:flex}.plan-price-row span:first-child{font-weight:400}.plan-price-row span:last-child{text-align:right;font-weight:500}.plan-total{color:#a7192f;border-top:1px solid #d0d0d0;justify-content:space-between;margin-top:4px;padding-top:4px;font-size:12px;font-weight:600;display:flex}.day-nav{justify-content:center;align-items:center;gap:12px;margin-top:20px;margin-bottom:20px;display:flex}.day-arrow{cursor:pointer;background-color:#0000;border:none;justify-content:center;align-items:center;padding:0 6px;display:flex}.day-arrow img{width:18px;height:18px}.day-arrow:disabled{opacity:.4;cursor:default}.day-label{color:#333;text-align:center;min-width:80px;font-size:16px;font-weight:500}.schedule-fields{margin-bottom:20px}.form-field{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.form-label{color:#333;flex:none;font-size:13px;font-weight:500}.form-input{color:#333;appearance:none;background-color:#c5c5c5;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right 6px center;background-repeat:no-repeat;background-size:16px;border:none;border-radius:4px;flex:1;height:24px;margin-left:8px;padding:0 24px 0 8px;font-size:12px}.form-input:disabled{opacity:.5;cursor:not-allowed}.checkbox-field{align-items:flex-start}.checkbox-label{color:#333;cursor:pointer;flex:1;align-items:center;gap:8px;padding:8px 0;font-size:13px;font-weight:500;display:flex}.checkbox-label input[type=checkbox]{cursor:pointer;accent-color:#a7192f;flex-shrink:0;width:16px;height:16px;margin:0}.meal-input-group{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin-bottom:12px;padding:12px}.meal-input-group .form-field{margin-bottom:10px}.remove-meal-button{color:#fff;cursor:pointer;background-color:#dc3545;border:none;border-radius:6px;width:100%;margin-top:8px;padding:6px 12px;font-size:11px;font-weight:500;transition:background-color .2s}.remove-meal-button:hover{background-color:#c82333}.add-meal-container{justify-content:center;margin:16px 0;display:flex}.add-meal-button{color:#fff;cursor:pointer;background-color:#4a4a4a;border:none;border-radius:16px;padding:6px 14px;font-size:11px;font-weight:500}.add-meal-button:hover{background-color:#3a3a3a}.step-indicator{justify-content:center;gap:8px;margin:16px 0 12px;display:flex}.step-indicator img{object-fit:contain;width:25%;max-width:100%;height:auto}.step-dot{background-color:#2264b1;border-radius:50%;width:8px;height:8px;transition:all .3s;display:inline-block}.step-dot.active{background-color:#2264b1;width:12px}.form-actions{justify-content:center;gap:12px;margin-bottom:16px;display:flex}.btn-back,.btn-next{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:49px;height:20px;font-size:18px;font-weight:700;display:flex}.btn-back{color:#fff;background-color:#6a6a6a}.btn-back:hover{background-color:#5a5a5a}.btn-next{color:#fff;background-color:#5a5a5a}.btn-next:hover{background-color:#4a4a4a}.budget-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.budget-label{color:#333;flex-shrink:0;font-size:13px;font-weight:500}.budget-input-field{color:#333;text-align:center;background-color:#c5c5c5;border:none;border-radius:14px;flex:1;height:28px;padding:0 12px;font-size:12px}.budget-input-field::placeholder{color:#999}.budget-input-field:focus{outline:none;box-shadow:0 0 0 2px #a7192f1a}.presets-label-row{margin-bottom:8px}.presets-label{color:#333;font-size:13px;font-weight:500;display:block}.presets-grid{grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.preset-btn{color:#333;cursor:pointer;background-color:#c5c5c5;border:none;border-radius:8px;padding:10px 12px;font-size:14px;font-weight:500;transition:all .2s}.preset-btn:hover{background-color:#b5b5b5}.preset-btn.active{color:#fff;background-color:#5a5a5a}.bottom-nav{color:#fff;background-color:#a7192f;border-top:1px solid #555;justify-content:space-around;align-items:center;padding:8px 0;display:flex}.bottom-nav button{color:#fff;cursor:pointer;background:0 0;border:none;flex-direction:column;align-items:center;gap:4px;padding:8px 12px;display:flex}.bottom-nav button img{width:20px;height:20px}.bottom-nav button span{font-size:10px;font-weight:500}.bottom-nav button:hover{opacity:.8}.tips-section{margin-bottom:12px}.tips-title{color:#a7192f;margin:0 0 6px;font-size:14px;font-weight:600}.tips-list{color:#555;margin:0;padding-left:16px;font-size:12px;line-height:1.4}.tips-list li{margin-bottom:4px}.howto-section{border-top:1px solid #ddd;margin-top:24px;padding-top:8px}.howto-title{color:#a7192f;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;margin:0;padding:4px 0;font-size:13px;font-weight:600;display:flex}.howto-icon{fill:#a7192f;transition:transform .3s}.howto-icon.expanded{transform:rotate(180deg)}.howto-content{background-color:#f8f9fa;border-top:1px solid #eee;border-radius:6px;margin-top:8px;padding:12px}.howto-subsection{color:#555;font-size:12px;line-height:1.5}.howto-subsection p{margin:0 0 8px}.howto-subsection h4{color:#333;margin:0 0 6px;font-size:13px;font-weight:600}.howto-subsection ul{margin:8px 0;padding-left:16px}.howto-subsection li{margin-bottom:4px}.app-container h1,.app-container h2,.app-container p,.app-container h3{text-align:left;margin-top:0}.app-container h1{margin:0 0 16px;font-size:24px}.app-container h2{margin:0 0 12px;font-size:20px}.app-container h3,.app-container p{margin:0}.chat-fab{color:#fff;cursor:pointer;z-index:10;background-color:#2264b1;border:none;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:2px;width:56px;height:56px;font-size:10px;font-weight:500;display:flex;position:absolute;bottom:80px;right:16px;box-shadow:0 4px 10px #0000004d}.chat-fab img{width:20px;height:20px}.chat-fab:hover{opacity:.9;transform:scale(1.05)}.settings-header{margin-bottom:20px}.settings-title{color:#a7192f;margin:0 0 4px;padding:0;font-size:20px;font-weight:700}.settings-subtitle{color:#999;margin:0;font-size:12px;font-weight:400;line-height:1.4}.filter-card{background-color:#d9d9d9;border-radius:8px;margin-bottom:14px;padding:14px}.filter-section-title{color:#333;text-align:left;margin:0 0 10px;padding-bottom:8px;font-size:13px;font-weight:600}.filter-pills-container{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.filter-pill{color:#333;cursor:pointer;white-space:nowrap;background-color:#0000;border:1px solid #888;border-radius:20px;flex-shrink:0;padding:6px 14px;font-size:12px;font-weight:500;transition:all .2s}.filter-pill:hover{background-color:silver;border-color:#666}.filter-pill:active{background-color:#b0b0b0;border-color:#555}.filter-pill-x{margin-left:6px;font-weight:700;transition:all .2s}.filter-pill-wrapper{flex-shrink:0;align-items:center;gap:4px;display:flex}.filter-remove-btn{color:#666;cursor:pointer;background-color:#0000;border:none;justify-content:center;align-items:center;padding:0 4px;font-size:16px;line-height:1;transition:all .2s;display:flex}.filter-remove-btn:hover{color:#333;transform:scale(1.2)}.custom-button{color:#fff;background-color:#a7192f;border:1px solid #a7192f}.custom-button:hover{background-color:#8b1427;border-color:#8b1427}*{box-sizing:border-box;margin:0;padding:0;font-family:Roboto,sans-serif}body{background:#e4e4e4;width:100px;min-height:100vh}.chat-body{scrollbar-width:thin;scrollbar-color:gray transparent;flex-direction:column;gap:20px;height:460px;margin-bottom:8px;padding:25px 22px;display:flex;overflow-y:auto}.chat-body .message{align-items:center;gap:11px;display:flex}.chat-body .bot-message svg{fill:#e4e4e4;background:#a7192f;border-radius:50%;flex-shrink:0;align-self:flex-end;width:35px;height:35px;margin-bottom:2px;padding:6px}.chat-body .message .message-text{word-wrap:break-word;white-space:pre-line;max-width:75%;padding:12px 16px;font-size:.95rem}.chat-body .bot-message .message-text{background:#e8e8e8;border-radius:13px 13px 13px 3px}.chat-body .user-message{flex-direction:column;align-items:flex-end}.chat-body .user-message .message-text{color:#e4e4e4;background:#a7192f;border-radius:13px 13px 3px}.chat-footer{padding:1vh}.chat-footer .chat-form{background:#e4e4e4;border-radius:32px;outline:1px solid gray;align-items:center;display:flex;box-shadow:0 0 8px #0000000f}.chat-footer .chat-form:focus-within{outline:2px solid #a7192f}.chat-form .message-input{background:0 0;border:none;outline:none;width:100%;height:47px;padding:0 17px;font-size:.95rem}.chat-form button{cursor:pointer;color:#e4e4e4;background:#a7192f;border:none;border-radius:50%;outline:none;flex-shrink:0;width:35px;height:35px;margin-right:6px;font-size:1.15rem;transition:all .2s}.chat-form button:hover{background:#761120}
