@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{min-height:100vh;line-height:1.5}ul,ol{list-style:none;padding:0}a{text-decoration:none;color:inherit}img,picture,video,canvas,svg{display:block;max-width:100%}input,button,textarea,select{font:inherit}button{border:none;background:none;cursor:pointer}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--color-accent: #E8590C;--color-accent-hover: #D14F09;--color-accent-light: rgba(232, 89, 12, .08);--color-danger: #DC2626;--color-danger-light: rgba(220, 38, 38, .08);--color-bg: #F5F5F4;--color-surface: #FFFFFF;--color-text: #1C1917;--color-text-light: #78716C;--color-text-lighter: #A8A29E;--color-border: #E7E5E4;--color-border-hover: #D6D3D1;--font-base: "Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, sans-serif;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: .875rem;--radius-xl: 1.25rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(28, 25, 23, .04);--shadow-md: 0 2px 8px rgba(28, 25, 23, .06), 0 1px 2px rgba(28, 25, 23, .04);--shadow-lg: 0 8px 24px rgba(28, 25, 23, .08), 0 2px 8px rgba(28, 25, 23, .04);--shadow-xl: 0 16px 48px rgba(28, 25, 23, .12), 0 4px 12px rgba(28, 25, 23, .06);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .15s;--duration-normal: .25s;--duration-slow: .4s}.app{width:100%;max-width:40rem;margin:0 auto;padding:clamp(.75rem,3vw,1.5rem);padding-bottom:6rem}.app-header{display:flex;justify-content:space-between;align-items:center;padding:1.1rem 1.25rem;margin-bottom:1.75rem;background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.app-header h1{font-size:clamp(1.1rem,3.5vw,1.4rem);font-weight:800;letter-spacing:-.03em;color:var(--color-text);line-height:1.2}.app-header .product-count{display:block;font-size:.78rem;color:var(--color-text-lighter);font-weight:500;padding-top:.1rem}.app-header .business-name{background:var(--color-text);color:var(--color-bg);padding:.35rem .85rem;border-radius:var(--radius-full);font-size:.8rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap}.search-bar{display:flex;gap:.6rem;align-items:center;margin-bottom:.5rem}.search-bar .search-input-wrap{flex:1;display:flex;align-items:center;gap:.6rem;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-full);padding:0 1rem;height:2.85rem;box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-out)}.search-bar .search-input-wrap:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.search-bar .search-icon{color:var(--color-text-lighter);display:flex;flex-shrink:0}.search-bar .search-input-wrap input{border:none;outline:none;flex:1;font-size:.95rem;background:transparent;color:var(--color-text);height:100%}.search-bar .search-input-wrap input::placeholder{color:var(--color-text-lighter)}.search-bar .search-clear-btn{color:var(--color-text-lighter);display:flex;padding:.2rem;cursor:pointer;transition:color var(--duration-fast) var(--ease-out)}.search-bar .search-clear-btn:hover{color:var(--color-text-light)}.search-hint{font-size:.78rem;color:var(--color-text-lighter);text-align:center;padding:.5rem 0 1.5rem}.search-results{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);overflow:hidden;margin-bottom:1.5rem;box-shadow:var(--shadow-md)}.search-item{display:flex;justify-content:space-between;align-items:center;padding:.95rem 1.15rem;cursor:pointer;border-bottom:1px solid var(--color-border);transition:background var(--duration-fast) var(--ease-out)}.search-item:last-child{border-bottom:none}.search-item:hover{background:var(--color-accent-light)}.search-item .item-name{font-weight:500;color:var(--color-text);text-transform:capitalize}.search-item .item-price-wrap{display:flex;align-items:center;gap:.6rem}.item-price{font-weight:700;color:var(--color-accent)}.item-chevron{color:var(--color-text-lighter);display:flex}.empty-results{text-align:center;color:var(--color-text-lighter);padding:2.5rem 1rem;font-size:.95rem}.title-products-list{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem;padding-top:.5rem}.title-products-list .title-icon{color:var(--color-accent);display:flex}.title-products-list h2{font-size:1.05rem;font-weight:700;letter-spacing:-.02em}.products-container{background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);overflow:hidden;box-shadow:var(--shadow-sm)}.product-row{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.15rem;cursor:pointer;border-bottom:1px solid var(--color-border);transition:all var(--duration-normal) var(--ease-out)}.product-row:last-child{border-bottom:none}.product-row:hover{background:var(--color-accent-light)}.product-row:active{transform:scale(.995)}.product-row .product-info{display:flex;flex-direction:column;gap:.15rem}.product-row .product-name{font-weight:600;font-size:.95rem;color:var(--color-text);text-transform:capitalize}.product-row .product-date{font-size:.75rem;color:var(--color-text-lighter)}.product-row .product-price-wrap{display:flex;align-items:center;gap:.6rem}.product-row .product-price{font-weight:700;font-size:1.05rem;color:var(--color-accent);letter-spacing:-.02em}.product-row .product-chevron{color:var(--color-border-hover);display:flex}.product-row:nth-child(1){animation:slideInItem .3s var(--ease-out) 0s both}.product-row:nth-child(2){animation:slideInItem .3s var(--ease-out) .05s both}.product-row:nth-child(3){animation:slideInItem .3s var(--ease-out) .1s both}.product-row:nth-child(4){animation:slideInItem .3s var(--ease-out) .15s both}.product-row:nth-child(5){animation:slideInItem .3s var(--ease-out) .2s both}.product-row:nth-child(6){animation:slideInItem .3s var(--ease-out) .25s both}.product-row:nth-child(7){animation:slideInItem .3s var(--ease-out) .3s both}.product-row:nth-child(8){animation:slideInItem .3s var(--ease-out) .35s both}.product-row:nth-child(9){animation:slideInItem .3s var(--ease-out) .4s both}.product-row:nth-child(10){animation:slideInItem .3s var(--ease-out) .45s both}.input-field{width:100%;border:1.5px solid var(--color-border);outline:none;border-radius:var(--radius-lg);height:2.85rem;padding:0 1rem;font-size:.95rem;background:var(--color-bg);color:var(--color-text);transition:all var(--duration-normal) var(--ease-out)}.input-field::placeholder{color:var(--color-text-lighter)}.input-field:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.input-prefix{display:flex;align-items:center;border:1.5px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;height:2.85rem;background:var(--color-bg);transition:all var(--duration-normal) var(--ease-out)}.input-prefix:has(input:focus){border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-light)}.input-prefix span{padding:0 .85rem;color:var(--color-text-lighter);font-weight:600;font-size:.95rem;border-right:1.5px solid var(--color-border);display:flex;align-items:center;height:100%;background:var(--color-surface)}.input-prefix input{border:none;outline:none;flex:1;padding:0 1rem;height:100%;font-size:.95rem;background:transparent;color:var(--color-text)}.input-prefix input::placeholder{color:var(--color-text-lighter)}.error-message{font-size:.85rem;color:var(--color-danger);background:var(--color-danger-light);padding:.6rem .85rem;border-radius:var(--radius-md);font-weight:500}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-size:.78rem;font-weight:600;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.06em}.form-group label .optional-hint{font-weight:400;color:var(--color-text-lighter);text-transform:none;letter-spacing:normal}.btn-add{background:var(--color-accent);color:#fff;border-radius:var(--radius-full);height:2.85rem;padding:0 1.2rem;font-weight:600;font-size:.88rem;display:flex;align-items:center;gap:.4rem;white-space:nowrap;box-shadow:var(--shadow-sm);transition:all var(--duration-normal) var(--ease-out)}.btn-add:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-add:active{transform:translateY(0)}.btn-confirm{flex:1;padding:.8rem;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;background:var(--color-accent);color:#fff;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:all var(--duration-normal) var(--ease-out)}.btn-confirm:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-confirm:active{transform:translateY(0)}.btn-cancel{flex:1;padding:.8rem;border-radius:var(--radius-md);font-size:.9rem;font-weight:600;background:var(--color-surface);color:var(--color-danger);border:1.5px solid var(--color-danger);display:flex;align-items:center;justify-content:center;gap:.4rem;transition:all var(--duration-normal) var(--ease-out)}.btn-cancel:hover{background:var(--color-danger-light)}.btn-neutral{flex:1;padding:.8rem;border-radius:var(--radius-lg);font-size:.9rem;font-weight:600;background:var(--color-bg);color:var(--color-text-light);border:1.5px solid var(--color-border);transition:all var(--duration-normal) var(--ease-out)}.btn-neutral:hover{background:var(--color-border)}.bottom-bar{position:fixed;bottom:1.5rem;right:1.5rem;display:flex;gap:.6rem;z-index:50}.bottom-bar-btn{background:var(--color-text);color:var(--color-bg);border-radius:var(--radius-full);width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:all var(--duration-normal) var(--ease-out)}.bottom-bar-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.bottom-bar-btn:active{transform:translateY(0)}.modal-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;z-index:200;animation:fadeIn var(--duration-fast) var(--ease-out)}.modal-container{background:var(--color-surface);width:100%;max-width:32rem;border-radius:var(--radius-xl) var(--radius-xl) 0 0;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s var(--ease-out)}.modal-handle{display:flex;justify-content:center;padding:.75rem 0 0}.modal-handle:after{content:"";width:2.5rem;height:.25rem;border-radius:var(--radius-full);background:var(--color-border)}.modal-header{padding:.75rem 1.5rem 0;display:flex;justify-content:space-between;align-items:center;background:none}.modal-header h2{flex:1;text-align:center;font-size:1.2rem;font-weight:700;color:var(--color-text);text-transform:capitalize}.modal-header .modal-close-btn{color:var(--color-text-light);padding:.25rem;display:flex;transition:color var(--duration-fast) var(--ease-out)}.modal-header .modal-close-btn:hover{color:var(--color-text)}.modal-body{display:flex;flex-direction:column;gap:1.25rem;padding:1.25rem 1.5rem}.modal-footer{display:flex;gap:.75rem;padding:0 1.5rem 1.5rem}.product-detail-card{background:var(--color-bg);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:1rem}.edit-prices{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.product-detail-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1rem}.product-detail-row .product-name{font-size:1.15rem;font-weight:700;color:var(--color-text);text-transform:capitalize}.product-detail-row .product-price{font-size:1.4rem;font-weight:800;color:var(--color-accent)}.product-unit-price{font-size:.85rem;color:var(--color-text-light);margin-bottom:1rem}.product-unit-price strong{font-weight:600;color:var(--color-text)}.product-dates{display:flex;gap:1.5rem;flex-wrap:wrap}.date-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--color-text-lighter)}.confirm-dialog-overlay{position:fixed;inset:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:250;padding:1rem;animation:fadeIn var(--duration-normal) var(--ease-out)}.confirm-dialog{background:var(--color-surface);border-radius:var(--radius-xl);padding:1.75rem;width:100%;max-width:22rem;box-shadow:var(--shadow-xl);animation:scaleIn var(--duration-normal) var(--ease-out)}.confirm-dialog-message{font-size:1rem;color:var(--color-text);text-align:center;line-height:1.5;margin-bottom:1.5rem}.confirm-dialog-actions{display:flex;gap:.75rem}.toast{position:fixed;bottom:6rem;left:50%;transform:translate(-50%);background:var(--color-text);color:var(--color-bg);padding:.7rem 1.4rem;border-radius:var(--radius-full);font-size:.875rem;font-weight:600;z-index:300;box-shadow:var(--shadow-lg);pointer-events:none;animation:fadeIn var(--duration-normal) var(--ease-out)}@media(min-width:640px){.modal-overlay{align-items:center}.modal-container{border-radius:var(--radius-xl);max-width:28rem}.modal-handle{display:none}.modal-body{gap:1.5rem;padding:1.5rem 2rem}.modal-footer{padding:0 2rem 1.5rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
