:root{--g:#16834a;--gd:#10663a;--soft:#eaf6ee;--ink:#17231b;--muted:#718078;--line:#e3eae5;--bg:#f7f9f7;--white:#fff;--red:#c7433c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.wrap{max-width:1200px;margin:auto;padding-left:22px;padding-right:22px}
.header{position:sticky;top:0;z-index:8;background:#fff;border-bottom:1px solid var(--line)}.headtop{display:flex;align-items:center;gap:20px;padding-top:13px;padding-bottom:13px}.brand{display:flex;align-items:center;gap:9px;white-space:nowrap;font:800 21px Manrope,sans-serif;letter-spacing:-.8px}.brandmark{display:grid;place-items:center;background:var(--g);color:#fff;width:39px;height:39px;border-radius:13px;font-size:22px}.searchbar{display:flex;flex:1;min-width:100px;border:1px solid #dfe8e1;background:#f7faf7;border-radius:12px;overflow:hidden}.searchbar:focus-within{border-color:var(--g);box-shadow:0 0 0 3px #16834a12}.searchbar input{border:0;outline:0;background:transparent;padding:13px 15px;min-width:0;width:100%;font-size:14px}.searchbar button{border:0;background:var(--g);color:white;padding:0 19px;font-weight:700}.headactions{display:flex;align-items:center;gap:8px}.btn{border:1px solid var(--line);border-radius:10px;background:white;padding:10px 13px;font-size:13px;font-weight:700;color:var(--ink)}.btn:hover{border-color:#b7cfbd}.btn.primary{background:var(--g);color:white;border-color:var(--g)}.btn.primary:hover{background:var(--gd)}.btn.ghost{background:var(--soft);border-color:var(--soft);color:var(--gd)}.subnav{border-top:1px solid #f0f3f0}.subnav-inner{display:flex;gap:22px;align-items:center;overflow:auto;padding-top:10px;padding-bottom:10px;white-space:nowrap}.subnav button{border:0;background:none;color:#55645a;font-size:12px;font-weight:700;padding:3px 0}.subnav button:hover{color:var(--g)}.city{display:flex;align-items:center;gap:7px;border:0;background:none;text-align:left;color:#5d6c62;padding:4px 0;min-width:max-content}.city strong{display:block;color:var(--ink);font-size:12px}.city small{display:block;font-size:10px;margin-bottom:2px}.city .pin{font-size:20px;color:var(--g)}
main{padding-top:24px;padding-bottom:55px;min-height:70vh}.page{display:none}.page.active{display:block}.hero{position:relative;overflow:hidden;border-radius:23px;padding:clamp(25px,5vw,52px);background:#eaf6ee;min-height:265px;display:flex;align-items:center}.hero:after{content:"";position:absolute;right:7%;top:-80px;width:290px;height:290px;border-radius:50%;background:#d7eddd;box-shadow:80px 135px 0 -35px #c5e5ce}.hero-copy{position:relative;z-index:1;max-width:610px}.eyebrow{display:inline-flex;gap:7px;align-items:center;border-radius:25px;background:white;color:var(--gd);font-size:11px;font-weight:700;padding:8px 11px}.hero h1{font:800 clamp(31px,4.6vw,51px)/1.12 Manrope,sans-serif;letter-spacing:-2px;margin:16px 0 12px}.hero h1 span{color:var(--g)}.hero p{color:#5f7064;line-height:1.7;font-size:14px;max-width:490px;margin:0}.hero .searchbar{margin-top:20px;max-width:520px;background:#fff}.hero .searchbar button{padding:0 18px}
.sectionhead{display:flex;justify-content:space-between;align-items:end;gap:12px;margin:30px 0 15px}.sectionhead h2{font:800 21px Manrope,sans-serif;letter-spacing:-.6px;margin:0}.sectionhead p{font-size:12px;color:var(--muted);margin:5px 0 0}.textlink{color:var(--g);font-weight:700;font-size:12px;border:0;background:none;white-space:nowrap}.cats{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:11px}.cat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:14px 6px;text-align:center;min-width:0}.cat:hover,.cat.active{border-color:#94c5a1;background:#fbfefb}.cat .emoji{display:grid;place-items:center;margin:0 auto 9px;width:43px;height:43px;border-radius:14px;background:var(--soft);font-size:22px}.cat strong{font-size:11px}
.promo-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.promo{border-radius:18px;padding:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f3efe4;overflow:hidden}.promo:nth-child(2){background:#e8f0fb}.promo h3{font:800 18px Manrope,sans-serif;margin:0 0 6px}.promo p{font-size:12px;line-height:1.5;color:#5e6b62;margin:0}.promo .promoemoji{font-size:44px}
.toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 13px}.toolbar p{font-size:12px;color:var(--muted);margin:0}.toolbar select{border:1px solid var(--line);border-radius:9px;padding:9px;background:white;color:var(--ink);font-size:12px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.product{border:1px solid var(--line);background:#fff;border-radius:16px;overflow:hidden;min-width:0;transition:transform .18s,box-shadow .18s}.product:hover{transform:translateY(-3px);box-shadow:0 12px 25px #163d1c0d}.art{height:155px;position:relative;display:grid;place-items:center;background:linear-gradient(140deg,#edf7ef,#f8faf8);font-size:59px;cursor:pointer}.art .tag{position:absolute;top:10px;left:10px;border-radius:20px;background:white;color:var(--gd);font-size:9px;font-weight:700;padding:6px 8px}.heart{position:absolute;right:9px;top:8px;border:0;border-radius:50%;width:31px;height:31px;background:#ffffffeb;color:#6d7b71;font-size:17px}.heart.on{color:#d94d58}.pbody{padding:13px}.store{font-size:10px;color:var(--muted);margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pbody h3{font-size:13px;line-height:1.45;margin:0 0 9px;min-height:37px;cursor:pointer}.price{font:800 19px Manrope,sans-serif;color:var(--g)}.oldprice{font-size:10px;color:#9aa59d;text-decoration:line-through;margin-left:5px}.localtag{display:flex;gap:4px;align-items:center;color:#68776d;font-size:10px;margin-top:9px}.localtag b{color:var(--g)}.pcardfoot{display:flex;justify-content:space-between;align-items:center;gap:7px;margin-top:12px}.add{width:33px;height:32px;border:0;border-radius:9px;background:var(--soft);color:var(--g);font-size:21px}.empty{padding:35px 20px;text-align:center;border:1px dashed #cddbd0;border-radius:15px;background:white;color:var(--muted);line-height:1.7;grid-column:1/-1}
.panel{background:white;border:1px solid var(--line);border-radius:17px;padding:22px}.panel h2{font:800 22px Manrope,sans-serif;margin:0 0 7px}.muted{color:var(--muted);font-size:13px;line-height:1.7}.crumb{font-size:12px;color:var(--muted);margin-bottom:16px}.detail{display:grid;grid-template-columns:1fr 1fr;gap:28px}.detail-art{border-radius:17px;background:linear-gradient(140deg,#edf7ef,#f8faf8);min-height:340px;display:grid;place-items:center;font-size:110px;position:relative}.detail h1{font:800 28px/1.2 Manrope,sans-serif;margin:8px 0 12px}.detail-price{font:800 30px Manrope,sans-serif;color:var(--g);margin:18px 0}.detail-actions{display:flex;gap:10px;margin:20px 0}.detail-actions .btn{flex:1;padding:14px}.qty{display:flex;align-items:center;gap:14px;margin:15px 0}.qty button{width:31px;height:31px;border:1px solid var(--line);background:white;border-radius:8px}.qty span{font-weight:700}.shopline{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:17px;margin-top:20px}.shopicon{width:42px;height:42px;background:var(--soft);border-radius:13px;display:grid;place-items:center;font-size:20px}
.cartrow{display:grid;grid-template-columns:65px minmax(0,1fr) auto;gap:14px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0}.cartart{height:62px;border-radius:11px;background:var(--soft);display:grid;place-items:center;font-size:28px}.cartrow h3{font-size:13px;margin:0 0 5px}.cartrow p{font-size:11px;color:var(--muted);margin:0}.cartrow .remove{border:0;background:none;color:var(--red);font-size:11px}.cartlayout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.8fr);gap:20px}.summaryline{display:flex;justify-content:space-between;gap:12px;font-size:13px;padding:8px 0}.summaryline.total{font-weight:800;font-size:17px;border-top:1px solid var(--line);margin-top:7px;padding-top:15px}.summary .btn{width:100%;margin-top:12px;padding:13px}
.formgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{margin-bottom:14px}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px;outline:0;background:white}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--g)}.notice{border-radius:11px;background:var(--soft);padding:12px 14px;color:var(--gd);font-size:12px;line-height:1.6;margin:12px 0}.notice.error{background:#fff0ef;color:#a22c25}.orders-empty{text-align:center;padding:30px 15px}.orders-empty .big{font-size:42px}.seller-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.stat{background:#f7faf7;border-radius:13px;padding:15px}.stat strong{display:block;font:800 22px Manrope,sans-serif}.stat span{font-size:11px;color:var(--muted)}
.footer{background:white;border-top:1px solid var(--line);padding:28px 0 35px}.footgrid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:25px}.footer h4{font:800 13px Manrope,sans-serif;margin:0 0 12px}.footer p,.footer button{font-size:11px;color:var(--muted);line-height:1.8}.footer button{display:block;border:0;background:none;padding:2px 0}.copyright{border-top:1px solid var(--line);padding-top:17px;margin-top:20px;font-size:10px;color:#8b978e}
.modal{display:none;position:fixed;inset:0;z-index:20;background:#0d1c1280;align-items:center;justify-content:center;padding:18px}.modal.open{display:flex}.dialog{width:100%;max-width:430px;background:white;border-radius:20px;padding:25px;box-shadow:0 25px 80px #0002;max-height:90vh;overflow:auto}.dialoghead{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog h2{font:800 24px Manrope,sans-serif;margin:0}.close{border:0;border-radius:9px;background:#f1f5f1;width:35px;height:35px;font-size:22px}.dialog>p{font-size:12px;line-height:1.7;color:var(--muted);margin:9px 0 18px}.dialog .btn.wide{width:100%;padding:13px}.message{display:none;padding:11px;border-radius:10px;background:var(--soft);color:var(--gd);font-size:12px;line-height:1.5;margin:0 0 13px}.message.error{background:#fff0ef;color:#a22c25}.dialoglinks{display:flex;justify-content:space-between;gap:12px;margin-top:15px}.linkbtn{border:0;background:none;color:var(--g);font-size:12px;font-weight:700;padding:0}.citydialog{max-width:390px}
@media(max-width:900px){.headtop{flex-wrap:wrap;gap:11px}.searchbar{order:3;flex-basis:100%;max-width:none}.headactions{margin-left:auto}.cats{grid-template-columns:repeat(4,minmax(0,1fr))}.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero:after{right:-90px;opacity:.65}.hero-copy{max-width:90%}.subnav-inner{gap:17px}.detail{gap:18px}.art{height:135px}.footgrid{grid-template-columns:1fr 1fr}.footgrid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){.wrap{padding-left:14px;padding-right:14px}.headtop{padding-top:10px;padding-bottom:10px}.brand{font-size:18px}.brandmark{width:35px;height:35px}.headactions{gap:5px}.headactions .btn{padding:9px 10px;font-size:11px}.city{order:2}.searchbar{order:3}.subnav-inner{gap:15px}.subnav button{font-size:11px}main{padding-top:15px}.hero{padding:24px 19px;min-height:0}.hero h1{font-size:32px;letter-spacing:-1.3px}.hero p{font-size:12px}.hero:after{right:-170px}.hero .searchbar input{padding:12px;font-size:12px}.hero .searchbar button{padding:0 12px;font-size:12px}.sectionhead{margin-top:25px}.sectionhead h2{font-size:18px}.sectionhead p{font-size:11px}.cats{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.cat{padding:10px 3px;border-radius:12px}.cat .emoji{width:35px;height:35px;font-size:19px}.cat strong{font-size:9px}.promo-row{grid-template-columns:1fr;gap:9px;margin-top:20px}.promo{padding:17px}.promo h3{font-size:16px}.promo .promoemoji{font-size:36px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.art{height:118px;font-size:47px}.art .tag{font-size:8px;top:7px;left:7px}.pbody{padding:10px}.pbody h3{font-size:12px;min-height:34px}.price{font-size:17px}.store{font-size:9px}.localtag{font-size:9px}.toolbar{align-items:start}.toolbar select{max-width:145px}.detail{grid-template-columns:1fr}.detail-art{min-height:220px;font-size:82px}.detail h1{font-size:23px}.cartlayout{grid-template-columns:1fr}.cartrow{grid-template-columns:53px minmax(0,1fr) auto;gap:9px}.cartart{height:53px}.formgrid{grid-template-columns:1fr}.seller-grid{grid-template-columns:1fr 1fr}.footgrid{grid-template-columns:1fr 1fr;gap:16px}.footgrid>div:first-child{grid-column:1/-1}}

/* Login social */
.google-login{width:100%;min-height:46px;display:flex;align-items:center;justify-content:center;gap:11px;border:1px solid var(--line);border-radius:12px;background:#fff;color:#202124;font:600 14px inherit;cursor:pointer;transition:background .2s,border-color .2s;margin:8px 0 15px}
.google-login:hover{background:#f8f9fa;border-color:#c8cdd3}
.google-login:disabled{opacity:.6;cursor:wait}
.google-mark{font:bold 20px Arial,sans-serif;color:#4285f4}
.auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:11px;margin:0 0 15px}
.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}

/* Seller identity document upload */
.seller-documents{margin-top:22px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#fbfdfb}
.seller-documents h3{font:800 16px Manrope,sans-serif;margin:0 0 7px}
.seller-documents .muted{font-size:12px}
.seller-documents input[type=file]{font-size:12px;padding:9px;background:#fff}
.document-confirm{display:flex;align-items:flex-start;gap:9px;font-size:12px;line-height:1.55;color:#526158;margin-top:10px}
.document-confirm input{margin-top:2px;flex:0 0 auto}

/* Admin dashboard */
.admin-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}
.admin-stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px}
.admin-stat small,.admin-data-grid small{display:block;color:var(--muted);font-size:11px;margin-bottom:7px}
.admin-stat strong{font:800 27px Manrope,sans-serif;color:var(--g)}
.admin-controls{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin:18px 0}
.admin-sellers{display:grid;gap:14px}
.admin-seller{padding:19px}
.admin-seller-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.admin-seller-head h3{font:800 18px Manrope,sans-serif;margin:9px 0 2px}
.admin-seller-head p{margin:0}
.admin-status{display:inline-flex;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:800;background:#f2f3f2;color:#58645c}
.admin-status.approved{background:#e8f6ec;color:#176b39}.admin-status.rejected{background:#fff0ef;color:#b13c36}.admin-status.pending{background:#fff6e5;color:#926313}
.admin-data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:18px 0}
.admin-data-grid strong{font-size:12px;overflow-wrap:anywhere}
.admin-docs{border-top:1px solid var(--line);padding-top:14px;display:grid;gap:9px;font-size:12px}
.admin-doc-actions,.admin-actions{display:flex;gap:9px;flex-wrap:wrap;align-items:center}
.admin-doc-actions .btn,.admin-actions .btn{font-size:11px;padding:8px 11px}
.admin-actions{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}
.admin-privacy-note{font-size:11px;color:var(--muted);line-height:1.6;margin:18px 2px}
@media(max-width:700px){.admin-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-controls{grid-template-columns:1fr}.admin-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-seller-head{display:block}.admin-seller-head>small{display:block;margin-top:9px}}

/* Admin app shell */
body.admin-mode{background:#f4f7f5}
body.admin-mode .header{display:none}
body.admin-mode main.wrap{max-width:none;width:100%;padding:0}
body.admin-mode #page-admin{min-height:100vh}
.admin-layout{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}
.admin-sidebar{position:sticky;top:0;height:100vh;background:#123d2a;color:#fff;padding:25px 16px;display:flex;flex-direction:column;gap:9px}
.admin-brand{display:flex;align-items:center;gap:11px;padding:2px 8px 28px;font:800 17px Manrope,sans-serif}
.admin-brand .brandmark{background:#fff;color:var(--g);flex:0 0 39px}
.admin-brand small{display:block;color:#b8d5c4;font:700 9px 'DM Sans',sans-serif;letter-spacing:1px;margin-top:4px}
.admin-side-label{font-size:9px;letter-spacing:1.2px;color:#a7c7b5;font-weight:800;padding:12px 10px 5px}
.admin-side-link{border:0;background:transparent;color:#e2efe7;text-align:left;border-radius:9px;padding:12px 13px;font-size:13px;font-weight:700}
.admin-side-link:hover,.admin-side-link.active{background:#ffffff1c;color:#fff}
.admin-sidebar-bottom{margin-top:auto;border-top:1px solid #ffffff26;padding-top:14px}
.admin-main{min-width:0;padding:32px clamp(18px,4vw,54px);max-width:1500px;width:100%;margin:0 auto}
.admin-topbar{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:25px}
.admin-topbar h2{font:800 27px Manrope,sans-serif;margin:8px 0 5px}
.admin-topbar p{margin:0;color:var(--muted);font-size:13px}
#admin-overview{scroll-margin-top:24px}
#admin-filter-section,#admin-seller-section{scroll-margin-top:24px}
@media(max-width:760px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:relative;height:auto;padding:13px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}.admin-brand{grid-column:1/-1;padding:3px 5px 12px}.admin-side-label{display:none}.admin-sidebar-bottom{margin-top:0;padding-top:0;border:0}.admin-main{padding:22px 15px}.admin-topbar{align-items:flex-start}.admin-topbar h2{font-size:21px}}
