:root{--color-primary: #1a1a2e;--color-secondary: #f4c430;--color-accent: #e94560;--color-background: #fdfbf7;--color-surface: #ffffff;--color-text-main: #2d3436;--color-text-muted: #636e72;--color-border: #e2e8f0;--font-heading: "Playfair Display", serif;--font-body: "Inter", sans-serif;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--shadow-premium: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);background-color:var(--color-background);color:var(--color-text-main);line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-primary);line-height:1.2}.container{max-width:1200px;margin:0 auto;padding:0 2rem}.app-header{padding:4rem 0;text-align:center;background:linear-gradient(to bottom,white,var(--color-background));border-bottom:1px solid var(--color-border);margin-bottom:3rem}.app-header h1{font-size:3.5rem;margin-bottom:.5rem;color:var(--color-primary)}.subtitle{font-size:1.2rem;color:var(--color-text-muted);font-style:italic}.badge{display:inline-flex;align-items:center;padding:.25em .75em;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-success{background-color:#ecfdf5;color:#047857}.header-controls{margin-top:2rem;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.count-display{display:flex;flex-direction:column;align-items:center;line-height:1}.count-number{font-size:3rem;font-family:var(--font-heading);color:var(--color-primary);font-weight:700}.count-label{font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-top:.25rem}.badge-danger{background-color:#fef2f2;color:#991b1b}.cheese-card{background:var(--color-surface);border-radius:12px;overflow:hidden;box-shadow:var(--shadow-md);display:flex;flex-direction:column;height:100%;border:1px solid var(--color-border);transition:all .3s ease}.cheese-card:hover{box-shadow:var(--shadow-premium);border-color:var(--color-secondary)}.card-header{padding:1.5rem;background-color:var(--color-background);border-bottom:1px solid var(--color-border)}.brand{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-secondary);font-weight:700;display:block;margin-bottom:.5rem}.product-name{font-size:1.5rem;margin-bottom:.5rem;font-family:var(--font-heading);color:var(--color-primary)}.regulated-name{font-size:.875rem;color:var(--color-text-muted);line-height:1.4}.card-body{padding:1.5rem;flex-grow:1}.info-item-header{display:flex;align-items:center;color:var(--color-text-main);font-weight:500;margin-bottom:.5rem;font-size:.875rem}.info-item-header .icon{margin-right:.5rem;color:var(--color-text-muted)}.badges-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.badge{display:inline-flex;align-items:center;padding:.25em .6em;border-radius:9999px;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.ingredients-section h3{font-size:1rem;margin-bottom:.5rem;font-family:var(--font-body);font-weight:600}.ingredients-text{font-size:.875rem;color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.5rem;transition:all .3s ease}.ingredients-text.expanded{-webkit-line-clamp:unset}.expand-btn{background:none;border:none;color:var(--color-accent);font-size:.875rem;cursor:pointer;padding:0;font-weight:500}.card-footer{padding:1.5rem;background-color:#fafafa;border-top:1px solid var(--color-border)}.view-btn{display:flex;justify-content:center;align-items:center;width:100%;padding:.75rem;background-color:var(--color-primary);color:#fff;border-radius:8px;font-weight:600;transition:background-color .2s}.view-btn:hover{background-color:#2c2c44}.cheese-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;padding-bottom:4rem}.search-container{display:flex;align-items:center;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:9999px;padding:.75rem 1.5rem;width:100%;max-width:600px;margin:0 auto;transition:border-color .2s}.search-container.focused{border-color:var(--color-secondary)}.search-icon{color:var(--color-text-muted);margin-right:.75rem}.search-input{border:none;background:transparent;width:100%;font-family:var(--font-body);font-size:1rem;color:var(--color-text-main);outline:none}.search-input::placeholder{color:#a0aec0}.filter-bar{display:flex;gap:1rem;justify-content:center;margin-top:1rem}.filter-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:9999px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-body);font-weight:500;cursor:pointer;transition:all .2s ease;font-size:.875rem}.filter-btn.active{border-color:transparent;color:#fff;box-shadow:var(--shadow-md)}.filter-btn.active.veg{background-color:#059669}.filter-btn.active.halal{background-color:#047857;background-color:#0d9488}.filter-btn:hover:not(.active){background-color:#f9fafb;border-color:#d1d5db}.brand-select-wrapper{position:relative;display:flex;align-items:center}.brand-select{padding:.5rem 2rem .5rem 1rem;border-radius:9999px;border:1px solid var(--color-border);background-color:var(--color-surface);color:var(--color-text-main);font-family:var(--font-body);font-size:.875rem;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;transition:all .2s ease}.brand-select:hover{border-color:#d1d5db;background-color:#f9fafb}.brand-select:focus{outline:none;border-color:var(--color-secondary);box-shadow:0 0 0 2px #f4c43033}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/fromagio/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/fromagio/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/fromagio/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/fromagio/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/fromagio/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/fromagio/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/fromagio/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/playfair-display-cyrillic-400-normal-CjW2EstV.woff2) format("woff2"),url(/fromagio/assets/playfair-display-cyrillic-400-normal-ZiRag6zj.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/playfair-display-vietnamese-400-normal-BV2APVTb.woff2) format("woff2"),url(/fromagio/assets/playfair-display-vietnamese-400-normal-BbvUAu4N.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/playfair-display-latin-ext-400-normal-BxlSGspa.woff2) format("woff2"),url(/fromagio/assets/playfair-display-latin-ext-400-normal-qdZwdvNS.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:400;src:url(/fromagio/assets/playfair-display-latin-400-normal-CFtfchNt.woff2) format("woff2"),url(/fromagio/assets/playfair-display-latin-400-normal-DHYHbkg3.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
