@font-face{font-family:Vazirmatn;src:url('/fonts/Vazirmatn-Variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{color-scheme:light;--ink:#18352a;--muted:#63736b;--green-950:#123d2c;--green-800:#1c5d41;--green-700:#26724f;--green-100:#e8f2eb;--cream:#faf7f0;--paper:#fffdf9;--surface:#fff;--surface-soft:#f8fbf8;--surface-muted:#f4faf6;--line:#dce7df;--coral:#d96f58;--coral-dark:#b84f3f;--gold:#eab662;--danger:#a8424c;--body-glow-one:rgba(194,224,198,.5);--body-glow-two:rgba(244,216,194,.38);--header-bg:rgba(255,253,249,.9);--header-border:rgba(28,93,65,.1);--panel-bg:rgba(255,253,249,.93);--card-bg:#fff;--input-bg:#fff;--input-border:#cadbd0;--label:#2e4c3e;--nav-text:#385448;--hero-copy:#52665c;--notice-bg:#edf6ef;--notice-text:#235c3e;--notice-border:#d4e8d8;--shadow-sm:0 8px 24px rgba(25,69,48,.07);--shadow-md:0 18px 50px rgba(25,69,48,.11);--radius-sm:.8rem;--radius:1.25rem;--radius-lg:2rem;font-family:Vazirmatn,Tahoma,"Segoe UI",sans-serif;background:var(--cream);color:var(--ink);font-synthesis:none}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;min-height:100vh;background:radial-gradient(circle at 95% 5%,var(--body-glow-one),transparent 28rem),radial-gradient(circle at 2% 42%,var(--body-glow-two),transparent 24rem),var(--cream);font-size:1rem;line-height:1.75;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:url("data:image/svg+xml,%3Csvg width='80' height='80' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8 48c18-2 29-13 32-34M23 33c-7-6-8-13-6-19 8 2 13 8 14 16M41 21c7-7 14-8 20-6-2 8-8 13-17 14' fill='none' stroke='%237aa58a' stroke-width='1'/%3E%3C/svg%3E")}
a{color:inherit;text-underline-offset:.2em}img,svg{max-width:100%}button,input,textarea,select{font:inherit}h1,h2,h3,h4,p{overflow-wrap:anywhere}h1,h2,h3{line-height:1.35;letter-spacing:-.025em}h2{font-size:clamp(1.45rem,3vw,2.2rem)}
.site-header{position:sticky;top:0;z-index:50;background:var(--header-bg);border-bottom:1px solid var(--header-border);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.header-inner{width:min(1240px,calc(100% - 2rem));min-height:5.25rem;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}
.brand{display:flex;align-items:center;gap:.75rem;text-decoration:none;flex:none}.brand-mark{width:2.9rem;height:2.9rem;border-radius:1rem;display:grid;place-items:center;background:var(--green-950);color:#fff;font-size:1.55rem;box-shadow:0 8px 20px rgba(18,61,44,.22);transform:rotate(-4deg)}.brand>span:last-child{display:grid;line-height:1.25}.brand strong{font-size:1.18rem;font-weight:900}.brand small{font-size:.7rem;color:var(--muted);font-weight:550;margin-top:.18rem}
.primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:.2rem}.primary-nav>a,.nav-dropdown>summary{display:inline-flex;align-items:center;min-height:2.75rem;padding:.55rem .78rem;border-radius:.75rem;text-decoration:none;color:var(--nav-text);font-size:.88rem;font-weight:650;white-space:nowrap;cursor:pointer;transition:.2s ease}.primary-nav>a:hover,.nav-dropdown>summary:hover{background:var(--green-100);color:var(--green-800)}.nav-login{background:var(--green-950)!important;color:#fff!important;padding-inline:1rem!important}.admin-link{color:var(--coral-dark)!important}.nav-dropdown{position:relative}.nav-dropdown>summary{list-style:none}.nav-dropdown>summary::-webkit-details-marker{display:none}.nav-dropdown>summary::after{content:"⌄";margin-inline-start:.35rem}.nav-dropdown[open]>summary{background:var(--green-100)}.nav-dropdown>div{position:absolute;top:calc(100% + .5rem);right:0;min-width:13rem;padding:.55rem;background:var(--paper);border:1px solid var(--line);border-radius:1rem;box-shadow:var(--shadow-md);display:grid}.nav-dropdown>div a{padding:.65rem .8rem;border-radius:.65rem;text-decoration:none;font-size:.87rem}.nav-dropdown>div a:hover{background:var(--green-100)}
.page-shell{position:relative;width:min(1180px,calc(100% - 2rem));margin:0 auto;padding:clamp(2rem,5vw,4.5rem) 0;min-height:calc(100vh - 14rem)}
.site-footer{width:min(1180px,calc(100% - 2rem));margin:2rem auto 0;padding:2rem 0 2.5rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:1rem;color:var(--muted)}.site-footer>div{display:grid}.site-footer strong{color:var(--green-950);font-size:1.1rem}.site-footer span,.site-footer small{font-size:.82rem}
.home-page{display:grid;gap:clamp(4rem,9vw,7rem)}.hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr);gap:clamp(2rem,6vw,5rem);align-items:center;min-height:calc(100vh - 11rem)}.hero-copy{position:relative;z-index:2}.hero h1,.panel h1{margin:.65rem 0 1.1rem;font-size:clamp(2.5rem,5.8vw,5rem);font-weight:900;color:var(--green-950)}.hero h1 em{font-style:normal;color:var(--coral);position:relative;white-space:nowrap}.hero h1 em::after{content:"";position:absolute;height:.5rem;left:0;right:0;bottom:.2rem;background:rgba(234,182,98,.42);border-radius:99px;z-index:-1;transform:rotate(-1deg)}.panel h1{font-size:clamp(2rem,4vw,3.25rem)}.hero-copy>p{max-width:40rem;color:var(--hero-copy);font-size:clamp(1rem,1.8vw,1.18rem);line-height:2}.eyebrow{display:inline-flex;align-items:center;gap:.55rem;color:var(--green-700);font-size:.82rem;font-weight:850;letter-spacing:.02em}.eyebrow i{width:.55rem;height:.55rem;background:var(--coral);border-radius:50%;box-shadow:0 0 0 .32rem rgba(217,111,88,.13)}.eyebrow.light{color:#cde9d8}.hero-actions{margin-top:1.8rem}.trust-row{display:flex;gap:1.3rem;flex-wrap:wrap;margin-top:2.1rem;padding-top:1.25rem;border-top:1px solid var(--line)}.trust-row span{display:grid;color:var(--muted);font-size:.74rem}.trust-row b{color:var(--green-950);font-size:1rem}
.hero-visual{position:relative;min-height:34rem;display:grid;place-items:center}.hero-visual::before{content:"";position:absolute;width:88%;aspect-ratio:1;border-radius:45% 55% 57% 43%/48% 43% 57% 52%;background:linear-gradient(145deg,#dcebdc,#f8eddb);transform:rotate(7deg)}.hero-visual svg{position:relative;width:min(100%,32rem);filter:drop-shadow(0 25px 24px rgba(42,83,58,.18))}.sun-orb{position:absolute;top:8%;right:3%;width:5rem;height:5rem;border-radius:50%;background:rgba(234,182,98,.7);filter:blur(.2px)}.floating-note{position:absolute;z-index:3;display:grid;grid-template-columns:auto 1fr;column-gap:.65rem;align-items:center;padding:.75rem .9rem;border:1px solid rgba(255,255,255,.65);border-radius:1rem;background:rgba(255,253,249,.88);box-shadow:var(--shadow-md);backdrop-filter:blur(10px)}.floating-note>span{grid-row:span 2;width:2.2rem;height:2.2rem;display:grid;place-items:center;border-radius:.7rem;background:#fbe8e1;color:var(--coral-dark)}.floating-note strong{font-size:.78rem}.floating-note small{font-size:.65rem;color:var(--muted)}.note-one{top:20%;left:-2%}.note-two{bottom:15%;right:-2%}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin-bottom:1.6rem}.section-heading h2{margin:.3rem 0 0;color:var(--green-950)}.section-heading>a{color:var(--green-700);font-weight:750;font-size:.88rem}.category-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.category-cards>a{position:relative;overflow:hidden;display:grid;gap:.25rem;min-height:12rem;padding:1.35rem;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,253,249,.84);text-decoration:none;box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}.category-cards>a:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:#b9d2c1}.category-cards strong{font-size:1.05rem;color:var(--green-950)}.category-cards small{color:var(--muted)}.category-icon{width:4.2rem;height:4.2rem;margin-bottom:1.1rem;border-radius:1.4rem;display:grid;place-items:center;font-size:2rem}.category-icon.rose{background:#fbe4df;color:#b95245}.category-icon.plant{background:#dfeee3;color:#34714d}.category-icon.gift{background:#fff0cf;color:#b47b23}.category-icon.pot{background:#eee3d8;color:#8a5a3f}
.experience-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,7vw,6rem);align-items:center;padding:clamp(2rem,5vw,4rem);border-radius:var(--radius-lg);background:#edf4ee;border:1px solid #d9e8dc}.experience-section h2{margin:.45rem 0;color:var(--green-950)}.experience-section p{color:var(--muted)}.steps-list{list-style:none;margin:0;padding:0;display:grid;gap:.75rem}.steps-list li{display:flex;align-items:center;gap:1rem;padding:1rem;border-radius:1rem;background:rgba(255,255,255,.72);border:1px solid rgba(28,93,65,.08)}.steps-list li>span{font-weight:900;color:var(--coral);font-size:1.2rem}.steps-list li div{display:grid}.steps-list small{color:var(--muted)}
.vendor-cta{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:clamp(2rem,5vw,4rem);border-radius:var(--radius-lg);color:#fff;background:radial-gradient(circle at 10% 0,rgba(109,166,126,.45),transparent 18rem),var(--green-950);box-shadow:0 25px 60px rgba(18,61,44,.2)}.vendor-cta h2{margin:.4rem 0;color:#fff}.vendor-cta p{margin:0;color:#d4e4da}.light-button{background:#fff!important;color:var(--green-950)!important;flex:none}
.panel,.application-card,.hero-card{background:var(--panel-bg);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.panel{padding:clamp(1.25rem,4vw,3.25rem)}.narrow{max-width:38rem;margin-inline:auto}.panel>h1:first-of-type{margin-top:.45rem}.shop-description{max-width:52rem;color:var(--muted);font-size:1.03rem;line-height:1.95}
.actions,.review-actions{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.actions{margin-top:1.5rem}.button,button{min-height:2.85rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border:1px solid transparent;border-radius:.85rem;padding:.72rem 1.15rem;background:var(--green-800);color:#fff;font-weight:750;text-decoration:none;cursor:pointer;box-shadow:0 7px 16px rgba(28,93,65,.14);transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.button:hover,button:hover:not(:disabled){transform:translateY(-2px);background:var(--green-950);box-shadow:0 10px 22px rgba(28,93,65,.2)}.button.secondary,button.secondary{background:#edf4ef;color:var(--green-800);border-color:#d5e5da;box-shadow:none}.button.secondary:hover,button.secondary:hover:not(:disabled){background:#dfece3}.button.danger,button.danger{background:#fff0f0;color:var(--danger);border-color:#f0d0d2;box-shadow:none}button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.actions .button,.actions button{flex:0 1 auto}
form{display:grid;gap:1.15rem;margin-top:1.5rem}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 1.15rem}.full-width{grid-column:1/-1}label{display:block;margin-bottom:.42rem;color:var(--label);font-size:.87rem;font-weight:750}input,textarea,select{width:100%;min-height:3.05rem;border:1px solid var(--input-border);border-radius:.82rem;background:var(--input-bg);padding:.72rem .85rem;color:var(--ink);font-size:1rem;transition:border-color .18s ease,box-shadow .18s ease}select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--green-700) 50%),linear-gradient(135deg,var(--green-700) 50%,transparent 50%);background-position:1rem 53%,.7rem 53%;background-size:.35rem .35rem,.35rem .35rem;background-repeat:no-repeat;padding-inline-end:2rem}textarea{min-height:8rem;resize:vertical}input[type=checkbox],input[type=radio]{width:1.15rem;min-height:1.15rem;height:1.15rem;padding:0;accent-color:var(--green-700);vertical-align:middle;margin-inline-end:.4rem}input:focus,textarea:focus,select:focus,button:focus-visible,a:focus-visible,summary:focus-visible{outline:none;border-color:#559574;box-shadow:0 0 0 4px rgba(38,114,79,.14)}.validation-message,.validation-errors{color:#a63841;font-size:.82rem}.validation-summary-valid{display:none}
.notice,.empty-state{border-radius:1rem;padding:1rem 1.15rem;background:var(--notice-bg);color:var(--notice-text);border:1px solid var(--notice-border)}.notice.danger{background:#fff0f0;color:var(--danger);border-color:#f0d0d2}.empty-state{text-align:center;padding:2.2rem;color:var(--muted);border-style:dashed}.hint{color:var(--muted);font-size:.86rem}.status-badge{display:inline-flex;align-items:center;border-radius:999px;padding:.28rem .68rem;background:var(--green-100);color:var(--green-800);font-size:.75rem;font-weight:700}.spaced{margin-top:1.15rem}hr{border:0;border-top:1px solid var(--line)}.product-step{position:relative}.product-step>.status-badge:first-child{margin-bottom:.65rem}.product-step+.product-step,.product-step .product-image-manager{margin-top:1.25rem}
.application-list,.product-admin-list{display:grid;gap:1rem}.application-card,.product-admin-card{padding:1.2rem;display:flex;align-items:center;justify-content:space-between;gap:1.2rem;border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-sm)}.application-card h2,.product-admin-card h2,.product-admin-card h3{margin:.35rem 0}.product-admin-card{border:1px solid var(--line)}
.public-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin:1.5rem 0}.product-card{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:.7rem;min-width:0;padding:1.05rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-sm);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.product-cover{width:calc(100% + 2.1rem);max-width:none;margin:-1.05rem -1.05rem .25rem;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius) var(--radius) .3rem .3rem;background:#e4eee6}.product-card h2,.product-card h3,.product-card p{margin:0}.product-card h2,.product-card h3{font-size:1.15rem}.product-card h2 a,.product-card h3 a{text-decoration:none}.product-card p{color:var(--muted);line-height:1.75;font-size:.88rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.product-card strong{margin-top:auto;color:var(--green-800);font-size:1.08rem}.product-card small{color:var(--muted)}.product-card .button{width:100%;margin-top:.35rem}.product-card-actions{display:grid;gap:.55rem;margin-top:.35rem}
.product-detail{max-width:58rem;margin-inline:auto}.product-image-manager,.media-manager{margin-top:1.5rem;padding:1.25rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.product-image-grid,.product-gallery,.shop-media-grid,.public-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));gap:1rem}.product-image-card,.shop-media-card{overflow:hidden;border:1px solid var(--line);border-radius:1rem;background:var(--card-bg);box-shadow:var(--shadow-sm)}.product-image-card img,.product-gallery img,.shop-media-card img,.public-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}.product-image-card>div,.shop-media-card>div{padding:.85rem}.product-gallery{margin-bottom:1.5rem}.product-gallery img,.public-gallery img{border-radius:1rem;border:1px solid var(--line);box-shadow:var(--shadow-sm)}.product-gallery img.cover{grid-column:span 2;aspect-ratio:16/10}.media-manager{padding-top:1.5rem}.shop-heading{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.shop-logo{width:6.5rem;height:6.5rem;object-fit:cover;border-radius:1.5rem;border:4px solid #fff;box-shadow:var(--shadow-md)}.shop-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:.8rem}.shop-facts>div{padding:1rem;border-radius:1rem;background:var(--surface-muted);border:1px solid var(--line)}.shop-facts dt{font-size:.76rem;color:var(--muted)}.shop-facts dd{margin:.25rem 0 0;font-weight:750}fieldset{min-width:0;border:1px solid var(--line)!important;border-radius:1rem!important;background:var(--surface-soft)!important}legend{padding:0 .5rem;color:var(--green-950);font-weight:800}
@media(max-width:1024px){.header-inner{align-items:flex-start;padding-block:.8rem;flex-direction:column;gap:.55rem}.primary-nav{width:100%;justify-content:flex-start;overflow-x:auto;padding-bottom:.25rem;scrollbar-width:none}.primary-nav::-webkit-scrollbar{display:none}.hero{grid-template-columns:1fr .85fr}.category-cards{grid-template-columns:repeat(2,1fr)}.public-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){body{font-size:.95rem}.page-shell{width:min(100% - 1rem,42rem);padding:1.5rem 0 3rem}.header-inner{width:calc(100% - 1rem)}.brand small{display:none}.primary-nav>a,.nav-dropdown>summary{font-size:.8rem;padding:.45rem .65rem;min-height:2.45rem}.nav-dropdown>div{position:fixed;top:8.5rem;right:.75rem;left:.75rem}.hero{grid-template-columns:1fr;min-height:auto;text-align:center;gap:1rem}.hero-copy>p{margin-inline:auto}.hero-actions,.trust-row{justify-content:center}.hero-visual{min-height:25rem}.hero-visual svg{width:min(90%,25rem)}.note-one{left:0}.note-two{right:0}.experience-section{grid-template-columns:1fr;padding:1.4rem}.vendor-cta{align-items:flex-start;flex-direction:column}.panel{border-radius:1.35rem;padding:1.15rem}.form-grid{grid-template-columns:1fr}.full-width{grid-column:auto}.application-card,.product-admin-card{align-items:stretch;flex-direction:column}.product-admin-card>.review-actions{width:100%}.product-admin-card>.review-actions button{flex:1}.site-footer{align-items:flex-start;flex-direction:column}.product-gallery img.cover{grid-column:auto}.actions>.button,.actions>button{flex:1 1 11rem}}
@media(max-width:520px){.hero h1{font-size:2.35rem}.hero-visual{min-height:21rem}.floating-note{padding:.55rem}.floating-note small{display:none}.category-cards,.public-products{grid-template-columns:1fr}.category-cards>a{min-height:9rem;grid-template-columns:auto 1fr;align-items:center}.category-icon{grid-row:span 2;margin:0 .1rem 0 .7rem}.section-heading{align-items:flex-start}.trust-row{gap:.8rem}.trust-row span{flex:1}.shop-facts{grid-template-columns:1fr}.review-actions{align-items:stretch}.review-actions input[type=number]{max-width:none}.site-footer{font-size:.85rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
.auth-panel{max-width:48rem;margin-inline:auto}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;padding:.35rem;margin-bottom:1.5rem;border-radius:999px;background:var(--green-100)}.auth-tabs a{padding:.7rem 1rem;border-radius:999px;text-align:center;color:var(--muted);font-weight:750;text-decoration:none}.auth-tabs a.active{color:#fff;background:var(--green-800);box-shadow:var(--shadow-sm)}.auth-intro{max-width:62ch;color:var(--muted);line-height:2}.role-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin:1.4rem 0}.role-preview article{display:grid;gap:.3rem;padding:1rem;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-soft)}.role-preview strong{color:var(--green-800)}.role-preview span{color:var(--muted);font-size:.86rem;line-height:1.7}.active-roles{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0 1.7rem}.role-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.42rem .85rem;border:1px solid #bdd7c5;border-radius:999px;color:var(--green-800);background:var(--green-100);font-size:.88rem;font-weight:800}.role-badge::before{content:"✓"}.dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.dashboard-card{padding:1.35rem;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#fff,#f7faf7);box-shadow:var(--shadow-sm)}.dashboard-card>span{display:inline-grid;place-items:center;width:2.8rem;height:2.8rem;border-radius:1rem;background:var(--green-100);font-size:1.35rem}.dashboard-card h2{margin:.8rem 0 .3rem}.dashboard-card p{color:var(--muted)}.dashboard-card.vendor{background:linear-gradient(145deg,#fff,#f0f7ee)}.dashboard-card.admin{background:linear-gradient(145deg,#fff,#fff3ec)}.dashboard-card.apply{border-style:dashed}.logout-form{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--line)}.access-message{text-align:center}
@media(max-width:760px){.role-preview,.dashboard-grid{grid-template-columns:1fr}.auth-panel{padding-inline:1rem}}
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card-bg);box-shadow:var(--shadow-sm)}.admin-table{width:100%;border-collapse:collapse;min-width:58rem}.admin-table th,.admin-table td{padding:1rem;text-align:right;border-bottom:1px solid var(--line);vertical-align:top}.admin-table th{background:var(--surface-muted);color:var(--green-800);font-size:.84rem}.admin-table td small{display:block;margin-top:.25rem;color:var(--muted)}.active-roles.compact{margin:0;gap:.35rem}.active-roles.compact .role-badge{padding:.28rem .6rem;font-size:.76rem}@media(max-width:760px){.table-scroll{border-radius:1rem}.admin-table th,.admin-table td{padding:.75rem}.admin-table .review-actions button{flex:1 1 9rem}}

.theme-toggle{min-height:2.75rem;padding:.48rem .7rem;border-color:var(--line);background:var(--paper);color:var(--green-800);box-shadow:none}.theme-toggle:hover:not(:disabled){background:var(--green-100);color:var(--green-950);box-shadow:none}.theme-toggle-dark{display:none}.theme-toggle-text{font-size:.82rem}[data-theme=dark] .theme-toggle-light{display:none}[data-theme=dark] .theme-toggle-dark{display:inline}
[data-theme=dark]{color-scheme:dark;--ink:#edf7f0;--muted:#a8b9af;--green-950:#d7f3df;--green-800:#85d39e;--green-700:#7ad098;--green-100:#183426;--cream:#09140f;--paper:#101f17;--surface:#14251c;--surface-soft:#102017;--surface-muted:#16291f;--line:#2a4435;--coral:#ff9b82;--coral-dark:#ffb09c;--gold:#f4c76f;--danger:#ff9aa4;--body-glow-one:rgba(61,134,82,.22);--body-glow-two:rgba(217,111,88,.16);--header-bg:rgba(10,22,16,.88);--header-border:rgba(132,205,154,.16);--panel-bg:rgba(15,29,21,.94);--card-bg:#14251c;--input-bg:#0c1a13;--input-border:#345443;--label:#cfe8d8;--nav-text:#c5d8cc;--hero-copy:#b7c9bf;--notice-bg:#142c20;--notice-text:#c6f2d4;--notice-border:#315a42;--shadow-sm:0 10px 28px rgba(0,0,0,.28);--shadow-md:0 22px 60px rgba(0,0,0,.38)}
[data-theme=dark] body::before{opacity:.11;filter:brightness(1.35)}[data-theme=dark] .brand-mark{background:#d7f3df;color:#102017;box-shadow:0 8px 20px rgba(0,0,0,.28)}[data-theme=dark] .nav-login{background:#d7f3df!important;color:#102017!important}[data-theme=dark] .admin-link{color:var(--coral)!important}[data-theme=dark] .hero-visual::before{background:linear-gradient(145deg,#183a27,#2d2119)}[data-theme=dark] .floating-note{background:rgba(16,31,23,.9);border-color:rgba(132,205,154,.2)}[data-theme=dark] .floating-note>span{background:#34221d;color:var(--coral)}[data-theme=dark] .experience-section{background:#101f17;border-color:var(--line)}[data-theme=dark] .steps-list li{background:rgba(20,37,28,.78);border-color:var(--line)}[data-theme=dark] .vendor-cta{background:radial-gradient(circle at 10% 0,rgba(109,166,126,.22),transparent 18rem),#102017}[data-theme=dark] .light-button{background:#d7f3df!important;color:#102017!important}[data-theme=dark] .button.secondary,[data-theme=dark] button.secondary{background:#182f23;color:#bff0ce;border-color:#335742}[data-theme=dark] .button.secondary:hover,[data-theme=dark] button.secondary:hover:not(:disabled){background:#203c2d}[data-theme=dark] .button.danger,[data-theme=dark] button.danger{background:#341d22;color:#ffadb5;border-color:#5a3038}[data-theme=dark] .category-cards>a{background:rgba(20,37,28,.88);border-color:var(--line)}[data-theme=dark] .category-cards>a:hover{border-color:#4d785e}[data-theme=dark] .category-icon.rose{background:#3a2420;color:#ffb09c}[data-theme=dark] .category-icon.plant{background:#193626;color:#8be0a6}[data-theme=dark] .category-icon.gift{background:#3a301d;color:#f4c76f}[data-theme=dark] .category-icon.pot{background:#33261f;color:#d1a184}[data-theme=dark] input,[data-theme=dark] textarea,[data-theme=dark] select{box-shadow:inset 0 0 0 1px rgba(255,255,255,.01)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#718479}[data-theme=dark] .product-cover{background:#1c3024}[data-theme=dark] .shop-logo{border-color:#14251c}[data-theme=dark] .auth-tabs{background:#183426}[data-theme=dark] .role-preview article,[data-theme=dark] .dashboard-card{background:linear-gradient(145deg,#14251c,#102017)}[data-theme=dark] .dashboard-card.vendor{background:linear-gradient(145deg,#14251c,#13291d)}[data-theme=dark] .dashboard-card.admin{background:linear-gradient(145deg,#14251c,#2a1d18)}[data-theme=dark] .table-scroll{background:var(--card-bg)}

/* Snapp-inspired marketplace skin: clean white surfaces, vivid green CTAs, soft gray sections. */
:root{
    --ink:#1f2933;
    --muted:#697586;
    --green-950:#102a1d;
    --green-800:#00b862;
    --green-700:#00d170;
    --green-100:#e9fff3;
    --cream:#f4f6f8;
    --paper:#fff;
    --surface:#fff;
    --surface-soft:#f7f8fa;
    --surface-muted:#f1f3f5;
    --line:#e5e7eb;
    --coral:#00d170;
    --coral-dark:#00a85a;
    --gold:#ffcf4a;
    --danger:#d92d20;
    --body-glow-one:rgba(0,209,112,.13);
    --body-glow-two:rgba(0,184,98,.09);
    --header-bg:rgba(255,255,255,.94);
    --header-border:rgba(17,24,39,.08);
    --panel-bg:#fff;
    --card-bg:#fff;
    --input-bg:#fff;
    --input-border:#d9dee7;
    --label:#344054;
    --nav-text:#344054;
    --hero-copy:#526071;
    --notice-bg:#edfff5;
    --notice-text:#027a48;
    --notice-border:#b9f6d3;
    --shadow-sm:0 8px 22px rgba(16,24,40,.06);
    --shadow-md:0 20px 60px rgba(16,24,40,.10);
    --radius-sm:1rem;
    --radius:1.25rem;
    --radius-lg:2rem;
}

body{
    background:
        radial-gradient(circle at 88% 4%,var(--body-glow-one),transparent 24rem),
        radial-gradient(circle at 8% 38%,var(--body-glow-two),transparent 20rem),
        var(--cream);
}

body::before{display:none}

.site-header{
    background:var(--header-bg);
    border-bottom:1px solid var(--header-border);
    box-shadow:0 1px 0 rgba(16,24,40,.03);
}

.header-inner{min-height:4.75rem}

.brand-mark{
    border-radius:.95rem;
    background:var(--green-700);
    color:#fff;
    box-shadow:0 10px 24px rgba(0,209,112,.28);
    transform:none;
}

.brand strong{color:#101828}

.primary-nav>a,
.nav-dropdown>summary,
.theme-toggle{
    border-radius:999px;
    color:#344054;
    font-weight:750;
}

.primary-nav>a:hover,
.nav-dropdown>summary:hover,
.theme-toggle:hover:not(:disabled){
    background:#f2f4f7;
    color:#101828;
}

.nav-login,
.button,
button{
    background:var(--green-700)!important;
    color:#fff!important;
    border-color:var(--green-700)!important;
    border-radius:999px;
    box-shadow:0 12px 28px rgba(0,209,112,.22);
}

.nav-login:hover,
.button:hover,
button:hover:not(:disabled){
    background:var(--green-800)!important;
    border-color:var(--green-800)!important;
    box-shadow:0 14px 34px rgba(0,184,98,.26);
}

.button.secondary,
button.secondary,
.theme-toggle{
    background:#fff!important;
    color:#1f2933!important;
    border-color:var(--line)!important;
    box-shadow:none;
}

.button.secondary:hover,
button.secondary:hover:not(:disabled){
    background:#f2f4f7!important;
    color:#101828!important;
    border-color:#d0d5dd!important;
    box-shadow:none;
}

.button.danger,
button.danger{
    background:#fff5f5!important;
    color:var(--danger)!important;
    border-color:#ffd0d0!important;
    box-shadow:none;
}

.admin-link{color:#027a48!important}

.nav-dropdown>div{
    background:#fff;
    border-color:var(--line);
    box-shadow:0 18px 48px rgba(16,24,40,.14);
}

.page-shell{width:min(1200px,calc(100% - 2rem))}

.home-page{gap:clamp(3rem,7vw,5.5rem)}

.hero{
    grid-template-columns:minmax(0,1fr) minmax(21rem,.9fr);
    min-height:min(720px,calc(100vh - 9rem));
    padding:clamp(1.2rem,3vw,2.5rem) 0;
}

.hero h1,
.panel h1{
    color:#101828;
    letter-spacing:-.04em;
}

.hero h1 em{color:var(--green-700)}

.hero h1 em::after{
    height:.62rem;
    bottom:.05rem;
    background:rgba(0,209,112,.18);
}

.eyebrow{
    color:#027a48;
    background:#edfff5;
    border:1px solid #b9f6d3;
    border-radius:999px;
    padding:.28rem .75rem;
}

.eyebrow i{
    background:var(--green-700);
    box-shadow:0 0 0 .28rem rgba(0,209,112,.15);
}

.eyebrow.light{
    color:#d1fadf;
    background:rgba(255,255,255,.12);
    border-color:rgba(255,255,255,.2);
}

.hero-copy>p{color:var(--hero-copy)}

.trust-row{border-top:0;padding-top:0}

.trust-row span{
    min-width:7.5rem;
    padding:.85rem 1rem;
    border:1px solid var(--line);
    border-radius:1.1rem;
    background:#fff;
    box-shadow:var(--shadow-sm);
}

.trust-row b{color:#101828}

.hero-visual{
    min-height:32rem;
    border-radius:2.2rem;
    background:
        radial-gradient(circle at 18% 18%,rgba(255,255,255,.55),transparent 9rem),
        linear-gradient(145deg,#00d170,#00b862);
    overflow:hidden;
    box-shadow:0 28px 70px rgba(0,184,98,.22);
}

.hero-visual::before{
    width:72%;
    background:rgba(255,255,255,.22);
    border-radius:36% 64% 55% 45%/52% 45% 55% 48%;
}

.hero-visual svg{
    width:min(88%,30rem);
    filter:drop-shadow(0 28px 22px rgba(16,24,40,.18));
}

.sun-orb{background:rgba(255,255,255,.35)}

.floating-note{
    background:rgba(255,255,255,.92);
    border-color:rgba(255,255,255,.72);
    box-shadow:0 18px 42px rgba(16,24,40,.14);
}

.floating-note>span{
    background:#edfff5;
    color:#027a48;
}

.section-heading h2,
.experience-section h2,
.vendor-cta h2,
.category-cards strong,
.product-card h2,
.product-card h3,
.panel h1{
    color:#101828;
}

.section-heading>a{color:#027a48;text-decoration:none}

.category-cards>a,
.product-card,
.application-card,
.product-admin-card,
.panel,
.hero-card,
.dashboard-card,
.role-preview article,
.table-scroll{
    background:#fff;
    border-color:var(--line);
    box-shadow:var(--shadow-sm);
}

.category-cards>a:hover,
.product-card:hover{
    border-color:#b9f6d3;
    box-shadow:0 22px 54px rgba(16,24,40,.11);
}

.category-icon{border-radius:1.2rem}

.category-icon.rose,
.category-icon.plant,
.category-icon.gift,
.category-icon.pot{
    background:#edfff5;
    color:#027a48;
}

.experience-section{
    background:#fff;
    border-color:var(--line);
    box-shadow:var(--shadow-sm);
}

.steps-list li{
    background:#f7f8fa;
    border-color:#eef0f3;
}

.steps-list li>span{color:var(--green-700)}

.vendor-cta{
    background:
        radial-gradient(circle at 12% 12%,rgba(255,255,255,.24),transparent 17rem),
        linear-gradient(135deg,#00d170,#00a85a);
    box-shadow:0 28px 70px rgba(0,184,98,.24);
}

.vendor-cta p{color:#eafff2}

.light-button{
    background:#fff!important;
    color:#027a48!important;
    border-color:#fff!important;
    box-shadow:none!important;
}

input,
textarea,
select{
    border-radius:1rem;
    background:#fff;
}

input:focus,
textarea:focus,
select:focus,
button:focus-visible,
a:focus-visible,
summary:focus-visible{
    border-color:var(--green-700);
    box-shadow:0 0 0 4px rgba(0,209,112,.16);
}

.status-badge,
.role-badge{
    background:#edfff5;
    color:#027a48;
    border-color:#b9f6d3;
}

.admin-table th{
    background:#f7f8fa;
    color:#344054;
}

.site-footer{
    border-top-color:var(--line);
    color:#697586;
}

.site-footer strong{color:#101828}

[data-theme=dark]{
    color-scheme:dark;
    --ink:#f2f4f7;
    --muted:#98a2b3;
    --green-950:#d1fadf;
    --green-800:#00b862;
    --green-700:#00d170;
    --green-100:#063f27;
    --cream:#0b1210;
    --paper:#101917;
    --surface:#101917;
    --surface-soft:#121d1a;
    --surface-muted:#17221f;
    --line:#25332f;
    --coral:#00d170;
    --coral-dark:#00b862;
    --body-glow-one:rgba(0,209,112,.16);
    --body-glow-two:rgba(0,184,98,.10);
    --header-bg:rgba(12,20,18,.92);
    --header-border:rgba(255,255,255,.08);
    --panel-bg:#101917;
    --card-bg:#101917;
    --input-bg:#0d1614;
    --input-border:#2b3a36;
    --label:#d0d5dd;
    --nav-text:#d0d5dd;
    --hero-copy:#b8c1cc;
    --notice-bg:#063f27;
    --notice-text:#d1fadf;
    --notice-border:#075e39;
    --shadow-sm:0 10px 28px rgba(0,0,0,.24);
    --shadow-md:0 22px 60px rgba(0,0,0,.35);
}

[data-theme=dark] body{
    background:
        radial-gradient(circle at 88% 4%,var(--body-glow-one),transparent 24rem),
        radial-gradient(circle at 8% 38%,var(--body-glow-two),transparent 20rem),
        var(--cream);
}

[data-theme=dark] .brand strong,
[data-theme=dark] .hero h1,
[data-theme=dark] .panel h1,
[data-theme=dark] .section-heading h2,
[data-theme=dark] .experience-section h2,
[data-theme=dark] .vendor-cta h2,
[data-theme=dark] .category-cards strong,
[data-theme=dark] .product-card h2,
[data-theme=dark] .product-card h3,
[data-theme=dark] .site-footer strong{
    color:#f9fafb;
}

[data-theme=dark] .brand-mark,
[data-theme=dark] .nav-login{
    background:var(--green-700)!important;
    color:#05130d!important;
}

[data-theme=dark] .primary-nav>a:hover,
[data-theme=dark] .nav-dropdown>summary:hover,
[data-theme=dark] .theme-toggle:hover:not(:disabled),
[data-theme=dark] .button.secondary:hover,
[data-theme=dark] button.secondary:hover:not(:disabled){
    background:#182420!important;
    color:#f2f4f7!important;
    border-color:#31423d!important;
}

[data-theme=dark] .button.secondary,
[data-theme=dark] button.secondary,
[data-theme=dark] .theme-toggle,
[data-theme=dark] .nav-dropdown>div,
[data-theme=dark] .trust-row span,
[data-theme=dark] .category-cards>a,
[data-theme=dark] .product-card,
[data-theme=dark] .application-card,
[data-theme=dark] .product-admin-card,
[data-theme=dark] .panel,
[data-theme=dark] .hero-card,
[data-theme=dark] .dashboard-card,
[data-theme=dark] .role-preview article,
[data-theme=dark] .table-scroll,
[data-theme=dark] .experience-section{
    background:#101917!important;
    border-color:var(--line)!important;
}

[data-theme=dark] .steps-list li{
    background:#121d1a;
    border-color:#25332f;
}

[data-theme=dark] .eyebrow{
    color:#d1fadf;
    background:#063f27;
    border-color:#075e39;
}

[data-theme=dark] input,
[data-theme=dark] textarea,
[data-theme=dark] select{
    background:#0d1614;
    border-color:#2b3a36;
    color:#f2f4f7;
}

[data-theme=dark] .admin-table th{
    background:#121d1a;
    color:#d0d5dd;
}

@media(max-width:1024px){
    .header-inner{
        align-items:flex-start;
        flex-direction:column;
        gap:.65rem;
        padding-block:.75rem;
    }

    .primary-nav{
        width:100%;
        justify-content:flex-start;
        overflow-x:auto;
        padding-bottom:.25rem;
        scrollbar-width:none;
    }

    .primary-nav::-webkit-scrollbar{display:none}

    .hero{
        grid-template-columns:1fr;
        min-height:auto;
    }

    .category-cards,
    .public-products{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media(max-width:760px){
    body{font-size:.95rem}

    .page-shell{
        width:calc(100% - 1rem);
        padding:1.25rem 0 2.5rem;
    }

    .header-inner{width:calc(100% - 1rem)}

    .brand small{display:none}

    .brand-mark{
        width:2.65rem;
        height:2.65rem;
        border-radius:.85rem;
    }

    .primary-nav{
        gap:.35rem;
        overscroll-behavior-inline:contain;
    }

    .primary-nav>a,
    .nav-dropdown>summary,
    .theme-toggle{
        flex:0 0 auto;
        min-height:2.45rem;
        padding:.45rem .65rem;
        font-size:.8rem;
    }

    .theme-toggle-text{font-size:.78rem}

    .nav-dropdown>div{
        position:fixed;
        top:8.25rem;
        right:.75rem;
        left:.75rem;
        min-width:0;
        z-index:70;
    }

    .home-page{gap:2.25rem}

    .hero{
        display:grid;
        grid-template-columns:1fr;
        gap:1rem;
        padding:.25rem 0 0;
        text-align:right;
    }

    .hero-copy{min-width:0}

    .hero h1,
    .panel h1{
        font-family:Tahoma,Vazirmatn,"Segoe UI",sans-serif;
        margin:.75rem 0 1rem;
        font-size:clamp(1.55rem,6.5vw,2rem);
        font-weight:700;
        line-height:1.45;
        letter-spacing:0;
        border:0;
        outline:0;
        box-shadow:none;
        background:transparent;
        text-shadow:none;
        overflow-wrap:normal;
        word-break:normal;
    }

    .hero h1 em{
        display:inline;
        white-space:normal;
    }

    .hero h1 em::after{display:none}

    .hero-copy>p{
        max-width:none;
        font-size:.98rem;
        line-height:1.95;
    }

    .hero-actions,
    .trust-row{
        justify-content:stretch;
    }

    .actions>.button,
    .actions>button,
    .hero-actions .button{
        flex:1 1 100%;
        width:100%;
    }

    .trust-row{
        display:grid;
        grid-template-columns:1fr;
        gap:.65rem;
        margin-top:1.25rem;
    }

    .trust-row span{
        min-width:0;
        padding:.75rem .85rem;
    }

    .hero-visual{
        min-height:18rem;
        border-radius:1.35rem;
        margin-top:.5rem;
    }

    .hero-visual svg{width:min(86%,18rem)}

    .floating-note{
        max-width:9.5rem;
        padding:.55rem .65rem;
        border-radius:.8rem;
    }

    .floating-note>span{
        width:1.8rem;
        height:1.8rem;
        border-radius:.55rem;
    }

    .floating-note strong{font-size:.72rem}
    .floating-note small{display:none}
    .note-one{top:.85rem;left:.75rem}
    .note-two{right:.75rem;bottom:.85rem}

    .section-heading{
        align-items:flex-start;
        flex-direction:column;
        gap:.6rem;
    }

    .experience-section,
    .vendor-cta{
        border-radius:1.35rem;
        padding:1.2rem;
    }

    .experience-section{grid-template-columns:1fr}

    .vendor-cta{
        align-items:stretch;
        flex-direction:column;
    }

    .panel{
        border-radius:1.25rem;
        padding:1rem;
    }

    .auth-panel{padding:1rem}

    .form-grid,
    .role-preview,
    .dashboard-grid{
        grid-template-columns:1fr;
    }

    .full-width{grid-column:auto}

    .application-card,
    .product-admin-card{
        align-items:stretch;
        flex-direction:column;
    }

    .review-actions{
        align-items:stretch;
        flex-direction:column;
    }

    .review-actions button,
    .product-admin-card>.review-actions button{
        width:100%;
        flex:1 1 auto;
    }

    .product-gallery img.cover{grid-column:auto}

    .site-footer{
        width:calc(100% - 1rem);
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:520px){
    .hero h1,
    .panel h1{
        font-size:1.6rem;
    }

    .category-cards,
    .public-products{
        grid-template-columns:1fr;
    }

    .category-cards>a{
        min-height:auto;
        grid-template-columns:auto 1fr;
        align-items:center;
        padding:1rem;
    }

    .category-icon{
        grid-row:span 2;
        width:3.4rem;
        height:3.4rem;
        margin:0 .1rem 0 .65rem;
        font-size:1.55rem;
    }

    .shop-facts{grid-template-columns:1fr}

    .table-scroll{
        width:100%;
        max-width:100%;
    }
}
