:root{--text:#6b6375;--text-h:#08060d;--bg:#fff;--border:#e5e4e7;--code-bg:#f4f3ec;--accent:#aa3bff;--accent-bg:#aa3bff1a;--accent-border:#aa3bff80;--social-bg:#f4f3ec80;--shadow:#0000001a 0 10px 15px -3px, #0000000d 0 4px 6px -2px;--sans:system-ui, "Segoe UI", Roboto, sans-serif;--heading:system-ui, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, Consolas, monospace;font:18px/145% var(--sans);letter-spacing:.18px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}@media (width<=1024px){:root{font-size:16px}}@media (prefers-color-scheme:dark){:root{--text:#9ca3af;--text-h:#f3f4f6;--bg:#16171d;--border:#2e303a;--code-bg:#1f2028;--accent:#c084fc;--accent-bg:#c084fc26;--accent-border:#c084fc80;--social-bg:#2f303a80;--shadow:#0006 0 10px 15px -3px, #00000040 0 4px 6px -2px}#social .button-icon{filter:invert()brightness(2)}}body{margin:0}#root{text-align:center;border-inline:1px solid var(--border);box-sizing:border-box;flex-direction:column;width:1126px;max-width:100%;min-height:100svh;margin:0 auto;display:flex}h1,h2{font-family:var(--heading);color:var(--text-h);font-weight:500}h1{letter-spacing:-1.68px;margin:32px 0;font-size:56px}@media (width<=1024px){h1{margin:20px 0;font-size:36px}}h2{letter-spacing:-.24px;margin:0 0 8px;font-size:24px;line-height:118%}@media (width<=1024px){h2{font-size:20px}}p{margin:0}code,.counter{font-family:var(--mono);color:var(--text-h);border-radius:4px;display:inline-flex}code{background:var(--code-bg);padding:4px 8px;font-size:15px;line-height:135%}*{box-sizing:border-box;margin:0;padding:0}body{color:#1a1a1a;background:#f4f7f4;font-family:Segoe UI,sans-serif}.status{text-align:center;padding:3rem;font-size:1.2rem}.status.error{color:red}.app-header{color:#fff;text-align:center;background:#2d6a4f;padding:2rem}.app-header h1{margin-bottom:.5rem;font-size:2rem}.app-header p{opacity:.85}.app-main{flex-direction:column;gap:1.5rem;max-width:900px;margin:2rem auto;padding:0 1rem;display:flex}.card{background:#fff;border-radius:10px;padding:1.5rem;box-shadow:0 1px 4px #00000014}.card h2{color:#2d6a4f;margin-bottom:1rem}.tag-list{flex-wrap:wrap;gap:.5rem;list-style:none;display:flex}.tag{color:#2d6a4f;background:#d8f3dc;border-radius:999px;padding:.4rem .9rem;font-size:.9rem;font-weight:500}.items-table{border-collapse:collapse;width:100%;font-size:.95rem}.items-table th{text-align:left;color:#555;background:#f4f7f4;padding:.6rem 1rem;font-weight:600}.items-table td{border-top:1px solid #eee;padding:.6rem 1rem}.items-table tr:hover td{background:#f9fdf9}.auth-container{justify-content:center;align-items:center;min-height:calc(100vh - 60px);padding:2rem;display:flex}.auth-card{background:#fff;border-radius:12px;width:100%;max-width:420px;padding:2.5rem;box-shadow:0 2px 12px #00000014}.auth-card h2{color:#1a1a1a;margin-bottom:.4rem;font-size:1.6rem}.auth-subtitle{color:#6b7280;margin-bottom:1.5rem;font-size:.95rem}.auth-error{color:#dc2626;background:#fee2e2;border-radius:8px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.auth-form{flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;gap:.4rem;display:flex}.form-group label{color:#374151;font-size:.9rem;font-weight:500}.form-group input{border:1px solid #d1d5db;border-radius:8px;outline:none;padding:.7rem 1rem;font-size:1rem;transition:border-color .2s}.form-group input:focus{border-color:#2d6a4f}.btn-primary{color:#fff;cursor:pointer;background:#2d6a4f;border:none;border-radius:8px;margin-top:.5rem;padding:.8rem;font-size:1rem;font-weight:500;transition:background .2s}.btn-primary:hover{background:#245a41}.btn-primary:disabled{cursor:not-allowed;background:#9ca3af}.auth-switch{text-align:center;color:#6b7280;margin-top:1.5rem;font-size:.9rem}.auth-switch a{color:#2d6a4f;font-weight:500}.navbar{background:#2d6a4f;justify-content:space-between;align-items:center;height:60px;padding:0 2rem;display:flex}.nav-logo{color:#fff;font-size:1.1rem;font-weight:600;text-decoration:none}.nav-links{align-items:center;gap:1.5rem;display:flex}.nav-links a{color:#ffffffd9;font-size:.95rem;text-decoration:none;transition:color .2s}.nav-links a:hover{color:#fff}.nav-email{color:#ffffffb3;font-size:.85rem}.btn-logout{color:#fff;cursor:pointer;background:#ffffff26;border:none;border-radius:999px;padding:.4rem 1rem;font-size:.9rem;transition:background .2s}.btn-logout:hover{background:#ffffff40}.btn-signup{background:#fff;border-radius:999px;padding:.4rem 1rem;color:#2d6a4f!important;font-weight:500!important}.dashboard{max-width:900px;margin:2rem auto;padding:0 1rem}.dashboard-header{margin-bottom:2rem}.dashboard-header h1{margin-bottom:.25rem;font-size:1.8rem}.dashboard-header p{color:#6b7280}.dashboard-grid{flex-direction:column;gap:1.5rem;display:flex}.price-search{max-width:1000px;margin:2rem auto;padding:0 1rem}.search-header{margin-bottom:1.5rem}.search-header h1{margin-bottom:.25rem;font-size:1.8rem}.search-header p{color:#6b7280}.search-form{gap:.75rem;margin-bottom:2rem;display:flex}.search-input{border:1px solid #d1d5db;border-radius:8px;outline:none;flex:1;padding:.75rem 1rem;font-size:1rem;transition:border-color .2s}.search-input:focus{border-color:#2d6a4f}.no-results{text-align:center;color:#6b7280;padding:2rem}.results-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.25rem;display:grid}.product-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;transition:box-shadow .2s;display:flex;overflow:hidden}.product-card:hover{box-shadow:0 4px 12px #0000001a}.product-image{object-fit:contain;background:#f9fafb;width:100%;height:160px;padding:1rem}.product-info{flex-direction:column;flex:1;gap:.35rem;padding:1rem;display:flex}.product-brand{color:#6b7280;text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.product-name{color:#1a1a1a;font-size:.9rem;font-weight:600;line-height:1.3}.product-size{color:#9ca3af;font-size:.8rem}.product-price{align-items:center;gap:.5rem;margin:.25rem 0;display:flex}.price-regular{color:#2d6a4f;font-size:1.3rem;font-weight:700}.price-sale{color:#dc2626;font-size:1.3rem;font-weight:700}.price-regular-strike{color:#9ca3af;font-size:.9rem;text-decoration:line-through}.product-badges{flex-wrap:wrap;gap:.35rem;margin:.25rem 0;display:flex}.badge{color:#2d6a4f;background:#d8f3dc;border-radius:999px;padding:.2rem .5rem;font-size:.7rem;font-weight:500}.btn-add{color:#fff;cursor:pointer;background:#2d6a4f;border:none;border-radius:8px;width:100%;margin-top:auto;padding:.6rem;font-size:.9rem;font-weight:500;transition:background .2s}.btn-add:hover{background:#245a41}.btn-added{cursor:default;color:#2d6a4f!important;background:#d8f3dc!important}.grocery-list-page{grid-template-columns:280px 1fr;min-height:calc(100vh - 60px);display:grid}.list-sidebar{background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.list-sidebar h2{color:#1a1a1a;font-size:1.1rem;font-weight:600}.new-list-form{gap:.5rem;display:flex}.new-list-form .btn-primary{flex-shrink:0;padding:.7rem 1rem}.lists-nav{flex-direction:column;gap:.35rem;list-style:none;display:flex}.empty-hint{color:#9ca3af;font-size:.85rem}.list-nav-item{cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:.65rem .85rem;font-size:.95rem;transition:background .15s;display:flex}.list-nav-item:hover{background:#f3f4f6}.list-nav-item.active{color:#2d6a4f;background:#d8f3dc;font-weight:500}.list-nav-name{flex:1}.btn-delete-list{color:#9ca3af;cursor:pointer;background:0 0;border:none;padding:0 .25rem;font-size:1.2rem;line-height:1}.btn-delete-list:hover{color:#dc2626}.list-main{max-width:700px;padding:2rem}.list-main-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.list-main-header h1{margin-bottom:.25rem;font-size:1.6rem}.list-progress{color:#6b7280;font-size:.9rem}.btn-search-more{color:#fff;white-space:nowrap;background:#2d6a4f;border-radius:8px;padding:.6rem 1.1rem;font-size:.9rem;font-weight:500;text-decoration:none}.progress-bar{background:#e5e7eb;border-radius:999px;height:6px;margin-bottom:1.5rem;overflow:hidden}.progress-fill{background:#2d6a4f;border-radius:999px;height:100%;transition:width .3s}.empty-state{text-align:center;color:#6b7280;padding:3rem}.empty-state a{color:#2d6a4f}.list-items{flex-direction:column;gap:.5rem;list-style:none;display:flex}.list-item{background:#fff;border:1px solid #e5e7eb;border-radius:10px;align-items:center;gap:.85rem;padding:.85rem 1rem;transition:opacity .2s;display:flex}.list-item.checked{opacity:.5;background:#f9fafb}.list-item.checked .item-name{text-decoration:line-through}.item-checkbox{accent-color:#2d6a4f;cursor:pointer;flex-shrink:0;width:18px;height:18px}.item-details{flex-direction:column;flex:1;gap:.2rem;display:flex}.item-name{color:#1a1a1a;font-size:.95rem;font-weight:500}.item-meta{color:#9ca3af;font-size:.8rem}.btn-remove-item{color:#9ca3af;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 .25rem;font-size:1.4rem;line-height:1}.btn-remove-item:hover{color:#dc2626}
