html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#faf7f2;color:#2c2c2c;font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Georgia,serif;line-height:1.5;min-height:100vh;min-height:-webkit-fill-available;overflow-x:hidden}body:before{background-image:radial-gradient(ellipse at 20% 30%,#8b95560f 0,#0000 50%),radial-gradient(ellipse at 80% 70%,#a67b5b0d 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:fixed;right:0;top:0;z-index:0}img{height:auto;max-width:100%}button,input{font-family:inherit}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#ebe5de}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#8b9556,#a67b5b);border:2px solid #ebe5de;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#7a8449,#8b6b4a)}::selection{background:#8b955640;color:#2c2c2c}@keyframes slideIn{0%{opacity:0;transform:translateX(-15px)}to{opacity:1;transform:translateX(0)}}.slide-in{animation:slideIn .5s ease-out}.spinner{animation:spin 1s ease-in-out infinite;border-color:#8b9556 #8b955633 #8b955633 #a67b5b;border-radius:50%;border-style:solid;border-width:3px;height:36px;width:36px}@media (hover:none) and (pointer:coarse){.category-tab,.food-list-toggle,.upload-area,button{-webkit-tap-highlight-color:transparent}}@supports (padding:max(0px)){.app{padding-left:max(0px,env(safe-area-inset-left));padding-right:max(0px,env(safe-area-inset-right))}.footer{padding-bottom:max(1.25rem,env(safe-area-inset-bottom))}}@media (max-width:768px){body{font-size:15px}::-webkit-scrollbar{width:6px}}@media (max-width:480px){body{font-size:14px}::-webkit-scrollbar{width:4px}}*{box-sizing:border-box;margin:0;padding:0}.app{background:#faf7f2;display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;position:relative}.app:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400'%3E%3Ccircle fill='%23E8E4D9' fill-opacity='.4' cx='200' cy='200' r='150'/%3E%3Ccircle fill='%23DED6C8' fill-opacity='.3' cx='300' cy='150' r='100'/%3E%3Ccircle fill='%23D4CDB8' fill-opacity='.25' cx='100' cy='280' r='80'/%3E%3C/svg%3E");background-size:500px 500px;opacity:.5;z-index:-2}.app:after,.app:before{bottom:0;content:"";left:0;position:fixed;right:0;top:0}.app:after{background:radial-gradient(ellipse at 10% 20%,#8b955614 0,#0000 40%),radial-gradient(ellipse at 90% 80%,#a67b5b0f 0,#0000 40%);pointer-events:none;z-index:-1}.header{animation:slideDown .8s ease-out;color:#2c2c2c;padding:2.5rem 1.5rem 1.75rem;position:relative;text-align:center}.header:after{background:linear-gradient(90deg,#0000,#8b9556,#a67b5b,#8b9556,#0000);border-radius:2px;bottom:0;content:"";height:2px;left:50%;max-width:600px;position:absolute;transform:translateX(-50%);width:85%}.header-content{flex-wrap:wrap;gap:1.25rem;margin-bottom:1.25rem}.header-content,.header-icon{align-items:center;display:flex;justify-content:center}.header-icon{animation:floatUp 3s ease-in-out infinite;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#8b955626,#a67b5b1f);border:2px solid #8b9556;border-radius:50%;box-shadow:0 4px 16px #8b955633;flex-shrink:0;padding:1rem}@keyframes floatUp{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.header-icon svg{color:#8b9556}.header-text{text-align:left}.header h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2c2c2c,#4a5d3a,#2c2c2c);-webkit-background-clip:text;background-clip:text;font-size:2.25rem;font-weight:700;line-height:1.2;margin:0 0 .35rem}.header .subtitle,.header h1{font-family:Segoe UI,Georgia,serif;letter-spacing:1px}.header .subtitle{color:#6b5d4f;font-size:.95rem;font-style:italic;font-weight:400;line-height:1.4;margin:0}.header .badges{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:center;margin-top:1.25rem}.header .badge{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffd9;border:1px solid #d4cdb8;border-radius:20px;box-shadow:0 2px 8px #8b95561a;color:#4a5d3a;display:inline-flex;font-family:Segoe UI,Georgia,serif;font-size:.78rem;font-weight:500;gap:.45rem;letter-spacing:.5px;padding:.5rem 1rem;transition:all .3s ease}.header .badge:hover{background:#9caf8826;border-color:#9caf88;box-shadow:0 4px 12px #8b95562e;transform:translateY(-2px)}.header .badge.model-badge{background:#8b95561f;border-color:#8b9556;color:#7a8449}.header .badge svg{height:14px;width:14px}.main-content{display:flex;flex:1 1;flex-direction:column;gap:1.25rem;margin:0 auto;max-width:1280px;padding:1.5rem 1.5rem 2.5rem;position:relative;width:100%;z-index:1}.top-row{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:1fr}@media (min-width:1024px){.top-row{gap:1.5rem;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}}.top-row>*{margin:0!important;min-width:0}.model-status{align-items:center;animation:slideDown .6s ease-out;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffeb;border:2px solid #d4cdb8;border-radius:14px;box-shadow:0 4px 16px #8b95561a;display:flex;gap:1rem;padding:1.25rem 1.5rem;transition:all .3s ease}.model-status.loading{border-color:#8b9556}.model-status.ready{border-color:#9caf88}.model-status.error{border-color:#c47f6b}.model-status .status-icon{align-items:center;border-radius:50%;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.model-status.loading .status-icon{animation:spin 2s linear infinite;background:#8b95561f;color:#8b9556}.model-status.ready .status-icon{background:#9caf8826;color:#9caf88}.model-status.error .status-icon{background:#c47f6b1f;color:#c47f6b}.model-status .status-text{flex:1 1}.model-status .status-text h4{font-family:Segoe UI,Georgia,serif;font-size:1rem;font-weight:600;letter-spacing:.5px;margin:0 0 .2rem}.model-status.loading .status-text h4{color:#8b9556}.model-status.ready .status-text h4{color:#7a8449}.model-status.error .status-text h4{color:#c47f6b}.model-status .status-text p{color:#6b5d4f;font-size:.85rem;margin:0;opacity:.7}.footer{background:linear-gradient(180deg,#0000,#8b95560f);border-top:1px solid #d4cdb8;margin-top:auto;padding:2rem 1.5rem;text-align:center}.footer-content{margin:0 auto;max-width:700px}.footer-info h3{color:#2c2c2c;font-family:Segoe UI,Georgia,serif;font-size:1rem;font-weight:600;letter-spacing:1px;margin:0 0 .4rem}.footer-info p{color:#6b5d4f;font-size:.85rem;line-height:1.5;margin:0 0 1.25rem}.footer .tech-stack{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:center;margin-bottom:1.25rem}.footer .tech-item{background:#ffffffd9;border:1px solid #d4cdb8;border-radius:18px;color:#4a5d3a;font-family:Segoe UI,Georgia,serif;font-size:.75rem;font-weight:500;letter-spacing:.5px;padding:.45rem 1rem;transition:all .3s ease}.footer .tech-item:hover{background:#9caf8826;border-color:#9caf88;transform:translateY(-2px)}.footer .copyright{border-top:1px solid #8b95561f;color:#8b9556;font-family:Segoe UI,Georgia,serif;font-size:.78rem;margin:0;padding-top:1rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease-out}.bottom-panels{grid-gap:1.25rem;align-items:start;display:grid;gap:1.25rem;grid-template-columns:1fr}@media (min-width:1024px){.bottom-panels{gap:1.5rem;grid-template-columns:1fr 1fr}}@media (max-width:768px){.header{padding:1.75rem 1rem 1.5rem}.header-content{flex-direction:column;gap:.75rem}.header-icon{padding:.85rem}.header-icon svg{height:28px;width:28px}.header-text{text-align:center}.header h1{font-size:1.65rem;letter-spacing:.5px}.header .subtitle{font-size:.82rem;letter-spacing:.5px}.header .badges{gap:.5rem}.header .badge{font-size:.72rem;gap:.35rem;padding:.4rem .8rem}.header .badge svg{height:12px;width:12px}.main-content{padding:1rem 1rem 2rem}.model-status{padding:1rem 1.25rem}.model-status .status-icon{height:36px;width:36px}.model-status .status-text h4{font-size:.92rem}.model-status .status-text p{font-size:.8rem}.footer{padding:1.5rem 1rem}.footer-info h3{font-size:.92rem}.footer-info p{font-size:.8rem}.footer .tech-stack{gap:.5rem}.footer .tech-item{font-size:.7rem;padding:.4rem .8rem}}@media (max-width:480px){.header{padding:1.25rem .75rem}.header h1{font-size:1.35rem}.header .subtitle{font-size:.75rem}.header .badges{gap:.4rem;margin-top:1rem}.header .badge{font-size:.65rem;padding:.35rem .65rem}.main-content{padding:.75rem .75rem 1.5rem}.model-status{border-radius:12px;gap:.75rem;padding:.85rem 1rem}.model-status .status-icon{height:32px;width:32px}.model-status .status-text h4{font-size:.85rem}.model-status .status-text p{font-size:.75rem}.footer{padding:1.25rem .75rem}.footer-info h3{font-size:.85rem}.footer-info p{font-size:.75rem}.footer .tech-item{font-size:.65rem;padding:.35rem .7rem}.footer .copyright{font-size:.7rem}}@media (max-width:360px){.header h1{font-size:1.15rem}.header .subtitle{font-size:.7rem}.header .badge{font-size:.6rem;padding:.3rem .55rem}.main-content{padding:.5rem .5rem 1.25rem}}
/*# sourceMappingURL=main.964e2761.css.map*/