:root{--bg:#f4f7f6;--card:#fff;--ink:#0f1f1c;--muted:#5d6f6a;--line:#e3eae8;--brand:#0aa37a;--brand-dark:#067a5b;--brand-soft:#e6f7f1;--star:#00b67a;--star-empty:#dcdce6;--red:#e05656;--amber:#f5a623;--navy:#0b2a26;--shadow:0 4px 18px rgba(11,42,38,.07);--radius:14px}*{box-sizing:border-box;margin:0;padding:0}body,html{background:var(--bg);color:var(--ink)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:1120px;margin:0 auto;padding:0 20px}header.site{background:#fff;border-bottom:1px solid var(--line);position:-webkit-sticky;position:sticky;top:0;z-index:40}.nav{justify-content:space-between;height:66px}.logo,.nav{display:flex;align-items:center}.logo{gap:9px;font-weight:800;font-size:19px;letter-spacing:-.3px}.logo .dot{width:30px;height:30px;border-radius:8px;background:linear-gradient(135deg,var(--brand),#16c79a);display:grid;place-items:center;color:#fff;font-size:16px;font-weight:900}.logo span.tld{color:var(--brand)}.nav nav{display:flex;gap:26px;font-size:14.5px;font-weight:500;color:var(--muted)}.nav nav a:hover{color:var(--brand)}.nav-cta{display:flex;align-items:center;gap:12px}.menu-btn{border:1px solid var(--line);border-radius:9px;width:40px;height:40px;font-size:18px;cursor:pointer}.menu-btn,.mobile-menu{display:none;background:#fff}.mobile-menu{flex-direction:column;border-top:1px solid var(--line)}.mobile-menu a{padding:14px 20px;font-size:15px;font-weight:600;border-bottom:1px solid var(--line)}.mobile-menu.open{display:flex}.btn{border:none;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:600;cursor:pointer;transition:.15s;display:inline-block}.btn-primary{background:var(--brand);color:#fff}.btn-primary:hover{background:var(--brand-dark)}.btn-ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn-ghost:hover{border-color:var(--brand);color:var(--brand)}.btn-sm{padding:7px 12px;font-size:13px}.hero{background:linear-gradient(160deg,#063e30,#0aa37a);color:#fff;padding:56px 0 120px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 10%,hsla(0,0%,100%,.12),transparent 40%)}.hero .wrap{position:relative;z-index:2}.hero h1{font-size:40px;line-height:1.12;letter-spacing:-1px;max-width:680px;font-weight:800}.hero p{font-size:17px;opacity:.92;margin-top:16px;max-width:560px}.searchbar{margin-top:28px;background:#fff;border-radius:14px;padding:8px;display:flex;gap:8px;max-width:620px;box-shadow:0 14px 40px rgba(0,0,0,.18)}.searchbar input{flex:1 1;border:none;outline:none;font-size:15px;padding:12px 14px;color:var(--ink)}.trustrow{margin-top:22px;display:flex;align-items:center;gap:14px;font-size:14px;opacity:.95;flex-wrap:wrap}.pill{background:hsla(0,0%,100%,.15);padding:5px 12px;border-radius:20px;font-size:13px}.stars{display:inline-flex;gap:1px;font-size:15px;letter-spacing:1px}.stars i{font-style:normal;color:var(--star)}.stars i.e{color:var(--star-empty)}.board{margin-top:-80px;position:relative;z-index:5;padding-bottom:60px}.board-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px}.board-head h2{color:#fff;font-size:22px;font-weight:700}.filters{display:flex;gap:8px;flex-wrap:wrap}.chip{background:#fff;border:1px solid var(--line);border-radius:20px;padding:7px 14px;font-size:13px;font-weight:600;color:var(--muted);cursor:pointer}.chip.active{background:var(--brand-soft);color:var(--brand-dark);border-color:var(--brand)}.supplier-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px 22px;display:grid;grid-template-columns:48px 1fr auto;grid-gap:18px;gap:18px;align-items:center;box-shadow:var(--shadow);margin-bottom:14px;transition:.18s}.supplier-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(11,42,38,.12);border-color:#cfe7df}.rank{font-size:26px;font-weight:800;color:#aebcb8;text-align:center}.rank.top{color:var(--brand)}.sc-logo{width:54px;height:54px;border-radius:12px;background:var(--brand-soft);display:grid;place-items:center;font-weight:800;color:var(--brand-dark);font-size:20px;flex-shrink:0;overflow:hidden}.sc-main{gap:14px;min-width:0}.sc-info h3,.sc-main{display:flex;align-items:center}.sc-info h3{font-size:17px;font-weight:700;gap:8px}.verified{color:var(--brand);font-size:13px;display:inline-flex;align-items:center;gap:3px}.sc-meta{font-size:13px;color:var(--muted);margin-top:3px}.sc-tags{margin-top:7px;display:flex;gap:6px;flex-wrap:wrap}.tag{background:#f0f4f3;color:var(--muted);font-size:11.5px;padding:3px 9px;border-radius:6px;font-weight:600}.sc-score{text-align:right}.sc-score .big{font-size:30px;font-weight:800;color:var(--ink);line-height:1}.sc-score .cnt{font-size:12.5px;color:var(--muted);margin-top:5px}.section{padding:48px 0}.section h2.title{font-size:26px;font-weight:800;letter-spacing:-.5px;margin-bottom:6px}.section p.sub{color:var(--muted);margin-bottom:26px;font-size:15px}.band{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:24px;gap:24px;text-align:center}.stat .n{font-size:30px;font-weight:800;color:var(--brand)}.stat .l{font-size:13px;color:var(--muted);margin-top:2px}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:20px;gap:20px}.blog-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:.18s}.blog-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(11,42,38,.12)}.blog-card .bimg{height:160px;background:linear-gradient(135deg,#0aa37a,#063e30);display:grid;place-items:center;color:#fff;font-size:34px}.blog-card .bbody{padding:18px}.blog-card .bcat{font-size:11.5px;font-weight:700;color:var(--brand);text-transform:uppercase;letter-spacing:.5px}.blog-card h3{font-size:17px;font-weight:700;margin:8px 0;line-height:1.3}.blog-card .bexc{font-size:13.5px;color:var(--muted)}.blog-card .bmeta{font-size:12px;color:var(--muted);margin-top:12px;display:flex;justify-content:space-between}footer.site{background:var(--navy);color:#9fc4ba;padding:46px 0 28px;margin-top:40px}.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;grid-gap:30px;gap:30px}footer.site h4{color:#fff;font-size:14px;margin-bottom:12px}footer.site a{display:block;font-size:13.5px;padding:4px 0;color:#9fc4ba}footer.site a:hover{color:#fff}.foot-bottom{border-top:1px solid hsla(0,0%,100%,.1);margin-top:28px;padding-top:18px;font-size:12.5px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}@media(max-width:860px){.nav nav{display:none}.blog-grid,.stat-grid{grid-template-columns:1fr 1fr}.foot-grid{grid-template-columns:1fr}.hero h1{font-size:30px}}@media(max-width:560px){.wrap{padding:0 14px}.hero{padding:38px 0 110px}.hero h1{font-size:25px;letter-spacing:-.4px}.searchbar{flex-direction:column;padding:10px}.searchbar .btn{width:100%}.board-head{flex-direction:column;align-items:flex-start;gap:12px}.filters{width:100%;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.chip{flex:0 0 auto}.supplier-card{grid-template-columns:auto 1fr;gap:12px;padding:16px}.supplier-card .sc-score{grid-column:1/-1;text-align:left;display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding-top:12px}.sc-score .big{font-size:24px}.sc-score .cnt{margin-top:0}.blog-grid,.stat-grid{grid-template-columns:1fr}.menu-btn{display:block}.hide-mobile{display:none}}.crumbs{font-size:13px;color:var(--muted);padding:18px 0}.crumbs a:hover{color:var(--brand)}.profile-head{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px;display:grid;grid-template-columns:88px 1fr auto;grid-gap:22px;gap:22px;box-shadow:var(--shadow)}.p-logo{width:88px;height:88px;border-radius:16px;background:var(--brand-soft);display:grid;place-items:center;font-size:34px;font-weight:800;color:var(--brand-dark);overflow:hidden}.p-title h1{font-size:26px;font-weight:800;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.p-title .url{color:var(--brand);font-size:14px;font-weight:600;margin-top:4px;display:inline-block}.p-title .desc{color:var(--muted);font-size:14.5px;margin-top:10px;max-width:520px}.p-score{text-align:center;border-left:1px solid var(--line);padding-left:22px}.p-score .n{font-size:42px;font-weight:800;line-height:1}.p-score .c{font-size:13px;color:var(--muted);margin-top:6px}.grid2{display:grid;grid-template-columns:1fr 320px;grid-gap:26px;gap:26px;margin-top:26px;align-items:start}.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow);margin-bottom:20px}.panel h3{font-size:17px;font-weight:700;margin-bottom:14px;display:flex;align-items:center;gap:8px}.certs{display:flex;gap:10px;flex-wrap:wrap}.cert{border:1px solid var(--line);border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600;display:flex;align-items:center;gap:8px;color:var(--muted)}.cert .ic{color:var(--brand)}.products{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:14px;gap:14px}.product{border:1px solid var(--line);border-radius:12px;overflow:hidden}.product .ph{height:120px;background:linear-gradient(135deg,#e6f7f1,#d2efe5);display:grid;place-items:center;color:var(--brand);font-size:30px;overflow:hidden}.product .ph img{width:100%;height:100%;object-fit:cover}.product .pb{padding:12px}.product .pb h4{font-size:14px;font-weight:700}.product .pb .pp{font-size:13px;color:var(--brand-dark);font-weight:700;margin-top:4px}.product .pb .pd{font-size:12px;color:var(--muted);margin-top:4px}.review{border-bottom:1px solid var(--line);padding:16px 0}.review:last-child{border-bottom:none}.rev-head{display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:700;font-size:14px;flex-shrink:0}.rev-name{font-weight:700;font-size:14.5px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.rev-date{font-size:12px;color:var(--muted)}.rev-body{font-size:14px;color:#33433f;margin-top:8px}.rev-verified{font-size:11px;color:var(--brand);padding:2px 8px;border-radius:20px;font-weight:600}.authbox,.rev-verified{background:var(--brand-soft)}.authbox{border:1px dashed var(--brand);border-radius:12px;padding:18px;text-align:center}.bar-row{display:flex;align-items:center;gap:8px;margin:6px 0;font-size:13px}.bar{flex:1 1;height:8px;background:#eef3f1;border-radius:4px;overflow:hidden}.bar>span{display:block;height:100%}@media(max-width:860px){.grid2{grid-template-columns:1fr}.products{grid-template-columns:1fr 1fr}}@media(max-width:560px){.profile-head{grid-template-columns:1fr;text-align:center}.p-logo{margin:0 auto}.p-title h1{justify-content:center;font-size:22px}.p-title .desc{margin-left:auto;margin-right:auto}.p-score{border-left:none;border-top:1px solid var(--line);padding-left:0;padding-top:16px}.products{grid-template-columns:1fr}}.article{max-width:760px;margin:0 auto}.article .a-cover{width:100%;border-radius:14px;margin-bottom:24px;max-height:420px;object-fit:cover}.article h1.a-title{font-size:34px;line-height:1.15;letter-spacing:-.6px;font-weight:800;margin:8px 0 12px}.article .a-meta{color:var(--muted);font-size:13.5px;margin-bottom:26px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.article .a-cat{color:var(--brand);font-weight:700;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.prose{font-size:16.5px;line-height:1.75;color:#26332f}.prose h2{font-size:24px;font-weight:800;margin:30px 0 12px;letter-spacing:-.3px}.prose h3{font-size:19px;font-weight:700;margin:24px 0 10px}.prose p{margin:0 0 16px}.prose ol,.prose ul{margin:0 0 16px 22px}.prose li{margin:6px 0}.prose a{color:var(--brand-dark);text-decoration:underline}.prose img{border-radius:12px;margin:18px 0}.prose blockquote{border-left:3px solid var(--brand);padding:6px 16px;color:var(--muted);margin:18px 0;font-style:italic}.prose strong{font-weight:700}.input{border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:14px;outline:none;font-family:inherit;background:#fff}.input:focus{border-color:var(--brand)}.btn-danger{background:var(--red);color:#fff}.btn-danger:hover{filter:brightness(.93)}.divider{height:1px;background:var(--line);margin:22px 0}.tabs{display:flex;gap:6px;border-bottom:1px solid var(--line);margin-bottom:20px;flex-wrap:wrap}.tabs a{padding:9px 14px;font-size:14px;font-weight:600;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}.tabs a.active{color:var(--brand-dark);border-bottom-color:var(--brand)}.field{margin-bottom:18px}.field label{display:block;font-size:13.5px;font-weight:600;margin-bottom:6px}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font-size:14px;outline:none;font-family:inherit;background:#fff}.field input:focus,.field textarea:focus{border-color:var(--brand)}.field .hint{font-size:12px;color:var(--muted);margin-top:5px}.row2{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px}.note{background:#fffbe9;border:1px solid #f3e2a8;border-radius:10px;padding:10px 14px;font-size:12.5px;color:#8a6d1a;margin:14px 0}.form-wrap{max-width:760px;margin:0 auto}@media(max-width:560px){.row2{grid-template-columns:1fr}}.admin-shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh;background:var(--bg)}.admin-side{background:var(--navy);color:#bfe3d8;padding:18px 0;position:-webkit-sticky;position:sticky;top:0;height:100vh;overflow:auto}.admin-side .a-logo{padding:0 20px 16px;font-weight:800;color:#fff;font-size:16px;border-bottom:1px solid hsla(0,0%,100%,.08);margin-bottom:10px}.admin-side a{display:flex;align-items:center;gap:10px;padding:11px 20px;font-size:14px;color:#bfe3d8}.admin-side a.active,.admin-side a:hover{background:hsla(0,0%,100%,.08);color:#fff}.admin-main{padding:26px;max-width:1000px}.admin-main h1{font-size:22px;font-weight:800;margin-bottom:4px}.admin-main .am-sub{color:var(--muted);font-size:13.5px;margin-bottom:22px}.acards{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin-bottom:24px}.acard{border:1px solid var(--line);border-radius:12px;padding:16px;background:#fff}.acard .n{font-size:24px;font-weight:800}.acard .l{font-size:12.5px;color:var(--muted)}table.adm{width:100%;border-collapse:collapse;font-size:13.5px;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}table.adm th{text-align:left;color:var(--muted);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.4px;background:#f7faf9}table.adm td,table.adm th{padding:11px 12px;border-bottom:1px solid var(--line)}table.adm td{vertical-align:middle}table.adm tr:last-child td{border-bottom:none}.badge{font-size:11.5px;padding:3px 9px;border-radius:20px;font-weight:600;display:inline-block}.badge.ok{background:var(--brand-soft);color:var(--brand-dark)}.badge.pend{background:#fff4e0;color:#b7791f}.badge.hid{background:#fdecec;color:var(--red)}.iconbtn{border:1px solid var(--line);background:#fff;border-radius:7px;padding:5px 9px;cursor:pointer;font-size:13px;color:var(--muted);text-decoration:none;display:inline-block}.iconbtn:hover{border-color:var(--brand);color:var(--brand)}.iconbtn.del:hover{border-color:var(--red);color:var(--red)}.inline-form{display:inline}.stepper{display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}.stepper button{border:none;background:#f5f8f7;width:26px;height:28px;cursor:pointer;font-weight:800;color:var(--muted)}.stepper button:hover{background:var(--brand-soft);color:var(--brand)}.stepper span{min-width:30px;text-align:center;font-weight:700;padding:0 6px}.admin-login{min-height:100vh;display:grid;place-items:center;background:var(--navy)}.admin-login .box{background:#fff;border-radius:16px;padding:32px;width:360px;max-width:90vw;box-shadow:0 20px 60px rgba(0,0,0,.3)}@media(max-width:760px){.admin-shell{grid-template-columns:1fr}.admin-side{position:static;height:auto;display:flex;flex-wrap:wrap;gap:4px;padding:12px}.admin-side .a-logo{width:100%;border:none;margin:0 0 6px;padding:0 6px 8px}.admin-side a{padding:8px 12px;border-radius:8px}.acards{grid-template-columns:1fr 1fr}.admin-main{padding:16px;overflow-x:auto}table.adm{min-width:560px}}