@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--primary:153 60% 53%;--primary-hover:153 60% 45%;--bg-color:0 0% 98%;--surface:0 0% 100%;--surface-hover:0 0% 96%;--text-main:0 0% 9%;--text-muted:0 0% 40%;--border:0 0% 90%;--shadow-sm:0 2px 4px #0000000a;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 24px #0000001f;--radius:12px;--radius-lg:16px;--radius-full:9999px;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}.dark{--bg-color:0 0% 8%;--surface:0 0% 12%;--surface-hover:0 0% 16%;--text-main:0 0% 96%;--text-muted:0 0% 60%;--border:0 0% 20%;--shadow-sm:0 2px 4px #0003;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 24px #0009}.horizontal-scroll{scroll-snap-type:x mandatory;gap:24px;padding-bottom:16px;display:flex;overflow-x:auto}.horizontal-scroll>*{scroll-snap-align:start;flex:none}.horizontal-scroll::-webkit-scrollbar{height:6px}.horizontal-scroll::-webkit-scrollbar-track{background:0 0}.horizontal-scroll::-webkit-scrollbar-thumb{background:hsl(var(--border));border-radius:var(--radius-full)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:hsl(var(--bg-color));color:hsl(var(--text-main));-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;transition:var(--transition);background:0 0;border:none;font-family:inherit}.btn{border-radius:var(--radius-full);justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:.95rem;font-weight:600;display:inline-flex}.btn-primary{background:hsl(var(--primary));color:#fff}.btn-primary:hover{background:hsl(var(--primary-hover));box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:hsl(var(--surface-hover));color:hsl(var(--text-main))}.btn-secondary:hover{background:hsl(var(--border))}.card{background:hsl(var(--surface));border-radius:var(--radius-lg);border:1px solid hsl(var(--border));transition:var(--transition);flex-direction:column;display:flex;overflow:hidden}.card:hover{box-shadow:var(--shadow-md);border-color:#0000}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;max-width:1400px;margin:0 auto;padding:24px}.header{z-index:50;background:hsl(var(--surface));border-bottom:1px solid hsl(var(--border));justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:sticky;top:0}.header-logo{letter-spacing:-.5px;color:hsl(var(--primary));align-items:center;gap:8px;font-size:1.5rem;font-weight:800;display:flex}.search-bar{background:hsl(var(--surface-hover));border-radius:var(--radius-full);width:100%;max-width:500px;transition:var(--transition);border:1px solid #0000;align-items:center;gap:8px;padding:10px 16px;display:flex}.search-bar:focus-within{background:hsl(var(--surface));border-color:hsl(var(--primary));box-shadow:0 0 0 4px hsla(var(--primary), .1)}.search-bar input{width:100%;color:hsl(var(--text-main));background:0 0;border:none;outline:none;font-size:.95rem}.grid-4{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px;display:grid}.img-container{background:hsl(var(--surface-hover));object-fit:cover;width:100%;height:200px}.card-content{flex-direction:column;flex:1;padding:16px;display:flex}.card-title{color:hsl(var(--text-main));margin-bottom:4px;font-size:1.1rem;font-weight:700}.card-subtitle{color:hsl(var(--text-muted));margin-bottom:12px;font-size:.9rem}.card-footer{justify-content:space-between;align-items:center;margin-top:auto;display:flex}.price-tag{color:hsl(var(--text-main));font-size:1.25rem;font-weight:700}.cart-sidebar{background:hsl(var(--surface));border-left:1px solid hsl(var(--border));width:400px;box-shadow:var(--shadow-lg);z-index:100;flex-direction:column;padding:24px;transition:transform .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(100%)}.cart-sidebar.open{transform:translate(0)}.cart-overlay{z-index:90;opacity:0;pointer-events:none;background:#0006;transition:opacity .3s;position:fixed;inset:0}.cart-overlay.open{opacity:1;pointer-events:auto}
