Build the Salar Store storefront and connect products, blogs, and home specials to the Meshkee API.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Alireza Hassani
2026-08-16 01:36:29 +03:30
co-authored by Cursor
parent 2783305f07
commit 7d26eaa838
113 changed files with 3269 additions and 96 deletions
+251 -17
View File
@@ -1,26 +1,260 @@
@import "tailwindcss";
:root {
--background: #ffffff;
--foreground: #171717;
}
@theme inline {
--color-background: var(--background);
--color-foreground: var(--foreground);
--font-sans: var(--font-geist-sans);
--font-mono: var(--font-geist-mono);
--color-background: #ffffff;
--color-foreground: #292d32;
--color-brand: #fc2424;
--color-brand-soft: #ffecec;
--color-ink: #292d32;
--color-muted: #f5f6f9;
--font-sans: var(--font-vazir), Tahoma, sans-serif;
--font-oswald: var(--font-oswald), Impact, sans-serif;
--font-carter: var(--font-carter-one), Impact, sans-serif;
}
@media (prefers-color-scheme: dark) {
:root {
--background: #0a0a0a;
--foreground: #ededed;
}
html {
scroll-behavior: smooth;
}
body {
background: var(--background);
color: var(--foreground);
font-family: Arial, Helvetica, sans-serif;
background: #ffffff;
color: var(--color-ink);
font-family: var(--font-sans);
}
.font-oswald {
font-family: var(--font-oswald);
}
.font-carter {
font-family: var(--font-carter);
}
.container-site {
width: min(1200px, calc(100% - 2rem));
margin-inline: auto;
}
.section-title {
font-size: 1.25rem;
font-weight: 800;
color: var(--color-ink);
}
.page-hero {
background-color: #fbfbfc;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='28' viewBox='0 0 28 28'%3E%3Ccircle cx='2' cy='2' r='1' fill='%23292d32' fill-opacity='0.06'/%3E%3C/svg%3E");
background-size: 28px 28px;
}
::selection {
background: #fc2424;
color: #fff;
}
.footer-bottom-bar {
align-items: center;
display: flex;
flex-wrap: wrap;
gap: 12px;
justify-content: space-between;
}
.footer-bottom-site {
color: #9c9c9c;
font-size: 12px;
}
.meshkee-credit {
align-items: center;
color: #9c9c9c;
display: inline-flex;
gap: 10px;
padding: 6px 10px;
position: relative;
text-decoration: none;
transition: color 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
.meshkee-credit:hover {
color: #e0e0e0;
text-decoration: none;
}
.meshkee-credit__frame {
inset: 0;
pointer-events: none;
position: absolute;
}
.meshkee-credit__line {
background: #777;
position: absolute;
transition: transform 0.28s cubic-bezier(0.22, 1, 0.36, 1);
}
.meshkee-credit__line--l {
height: 100%;
left: 0;
top: 0;
transform: scaleY(0);
transform-origin: top;
transition-delay: 0s;
width: 1px;
}
.meshkee-credit__line--b {
bottom: 0;
height: 1px;
left: 0;
transform: scaleX(0);
transform-origin: left;
transition-delay: 0.14s;
width: 100%;
}
.meshkee-credit__line--r {
height: 100%;
right: 0;
top: 0;
transform: scaleY(0);
transform-origin: bottom;
transition-delay: 0.28s;
width: 1px;
}
.meshkee-credit__line--t {
height: 1px;
left: 0;
top: 0;
transform: scaleX(0);
transform-origin: right;
transition-delay: 0.42s;
width: 100%;
}
.meshkee-credit:hover .meshkee-credit__line--l,
.meshkee-credit:hover .meshkee-credit__line--r {
transform: scaleY(1);
}
.meshkee-credit:hover .meshkee-credit__line--b,
.meshkee-credit:hover .meshkee-credit__line--t {
transform: scaleX(1);
}
.meshkee-credit:not(:hover) .meshkee-credit__line--l {
transition-delay: 0.42s;
}
.meshkee-credit:not(:hover) .meshkee-credit__line--b {
transition-delay: 0.28s;
}
.meshkee-credit:not(:hover) .meshkee-credit__line--r {
transition-delay: 0.14s;
}
.meshkee-credit:not(:hover) .meshkee-credit__line--t {
transition-delay: 0s;
}
.meshkee-credit__logo {
aspect-ratio: 1 / 1;
display: block;
flex-shrink: 0;
height: 42px;
mix-blend-mode: screen;
object-fit: contain;
opacity: 0.7;
position: relative;
width: auto;
transition: opacity 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
.meshkee-credit:hover .meshkee-credit__logo {
opacity: 1;
}
.meshkee-credit__text {
display: flex;
flex-direction: column;
justify-content: center;
line-height: 1.25;
min-height: 42px;
position: relative;
}
.meshkee-credit__label {
font-size: 11px;
}
.meshkee-credit__name {
color: #cfcfcf;
font-size: 13px;
font-weight: 600;
transition: color 0.3s cubic-bezier(0.22, 1, 0.36, 1);
}
.meshkee-credit:hover .meshkee-credit__name {
color: #fff;
}
@media (max-width: 575px) {
.footer-bottom-bar {
flex-direction: column;
justify-content: center;
text-align: center;
}
}
.draw-frame {
position: absolute;
inset: 0;
z-index: 5;
pointer-events: none;
border-radius: inherit;
border: 1.5px solid currentColor;
opacity: 0;
transition: opacity 0.25s ease;
}
.draw-frame-host:hover .draw-frame {
opacity: 1;
}
.rich-content {
color: #444;
line-height: 2;
}
.rich-content h2,
.rich-content h3,
.rich-content h4 {
color: var(--color-ink);
font-weight: 800;
margin: 1.5rem 0 0.75rem;
}
.rich-content p,
.rich-content li {
margin-bottom: 0.85rem;
}
.rich-content ul,
.rich-content ol {
padding-inline-start: 1.25rem;
margin-bottom: 1rem;
}
.rich-content a {
color: var(--color-brand);
}
.rich-content img {
border-radius: 12px;
display: block;
height: auto;
margin: 1.25rem auto;
max-width: 100%;
}