:root{--navy:#102c54;--green:#004d32;--orange:#ff8b17;--paper:#fff;--line:#e7e9ed;--text:#16243c;--muted:#667085;--shadow:0 8px 22px rgba(17,37,64,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--text);font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a{text-decoration:none;color:inherit}.page-width{max-width:1216px;margin:auto}
.topbar{background:var(--green);color:#fff;text-align:center;font-size:13px;padding:7px}.site-header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.header-main{display:grid;grid-template-columns:330px 1fr 160px;align-items:center;gap:30px;padding:14px 18px}.brand-logo{display:flex;align-items:center;gap:10px}.brand-logo strong{font-size:31px;letter-spacing:-1.5px;color:var(--navy)}.brand-logo strong i{font-style:normal;color:var(--orange)}.brand-logo small{display:block;color:#516078;font-size:7px;font-weight:700;letter-spacing:.25px}.brand-paw{font-size:44px}.main-search{border:1px solid var(--line);background:#f8fafc;border-radius:8px;height:46px;display:flex;align-items:center;padding:0 13px}.main-search input{border:0;background:transparent;outline:0;width:100%;color:var(--text)}.main-search span{font-size:28px;color:var(--navy)}.header-icons{display:flex;justify-content:flex-end;gap:14px}.header-action{border:0;background:transparent;color:var(--navy);position:relative;text-align:center;font-weight:700}.header-action span{display:block;font-size:25px;line-height:25px}.header-action small{font-size:10px}.badge{position:absolute;right:-6px;top:-7px;border-radius:50%;background:var(--green);color:#fff;min-width:19px;height:19px;font-size:11px;display:grid;place-items:center}
.main-nav{display:flex;align-items:center;gap:35px;padding:0 18px 8px;font-size:13px;font-weight:700}.main-nav a{padding:12px 0;border-bottom:3px solid transparent}.main-nav a.active{color:var(--green);border-color:var(--green)}.main-nav em{background:#ef3030;color:#fff;font-size:9px;border-radius:3px;font-style:normal;padding:3px 5px}.all-categories{border:0;background:var(--green);color:#fff;padding:10px 21px;border-radius:7px;font-weight:700}.admin-link{margin-left:auto;color:var(--muted)}
.home{padding:10px 18px 55px}.promos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 14px}.promo{border:0;min-height:155px;border-radius:9px;overflow:hidden;position:relative;color:#fff;text-align:left;padding:24px;background-size:cover;background-position:center}.promo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.06) 76%)}.promo-orange{background-image:url('/assets/promos/offer-dog.png')}.promo-blue{background-image:url('/assets/promos/new-cat.png')}.promo-green{background-image:url('/assets/promos/best-parrot.png')}.promo-copy{position:relative;z-index:1;display:grid;gap:7px}.promo-copy b{font-size:46px;line-height:.75}.promo-copy b small{font-size:19px}.promo-copy b.normal{font-size:27px;line-height:1}.promo-copy strong{font-size:16px}.promo-copy i{font-style:normal;background:#fff;color:#293247;border-radius:4px;width:max-content;padding:8px 14px;font-size:11px;font-weight:800;margin-top:8px}
.family-hero{height:335px;border-radius:9px;overflow:hidden;background-image:linear-gradient(90deg,rgba(5,28,19,.72) 0%,rgba(5,28,19,.28) 37%,transparent 64%),url('/assets/pet-family-hero.png');background-size:cover;background-position:center}.hero-copy{color:#fff;padding:43px 45px;width:43%}.hero-copy h1{font-size:36px;line-height:1.05;margin:0 0 12px}.hero-copy p{font-size:16px;line-height:1.55}.shop-button{border:0;background:var(--green);color:#fff;border-radius:4px;padding:12px 20px;font-weight:800}
.department-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:16px 0}.department{border:1px solid var(--line);background:#fff;border-radius:8px;padding:8px 5px 10px;display:grid;gap:4px;place-items:center;min-height:112px;box-shadow:var(--shadow)}.department img{display:block;width:62px;height:54px;object-fit:cover;object-position:center;border-radius:8px}.department b{font-size:14px}.department small{font-size:11px;color:var(--green);font-weight:700}.subcategory-section,.product-section{margin-top:35px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:15px}.section-heading p{font-size:11px;color:var(--green);font-weight:900;margin:0 0 4px}.section-heading h2{font-size:23px;margin:0}.text-button{border:0;background:none;color:var(--green);font-weight:800}
.subcategory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.subcategory{border:0;border-radius:10px;height:180px;overflow:hidden;position:relative;background-color:#20364a;background-size:cover;background-position:center;color:#fff;text-align:left;padding:0}.subcategory:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,20,35,.9),rgba(7,20,35,.05) 80%)}.subcategory b{position:absolute;bottom:18px;left:16px;z-index:1;font-size:14px}
.filter-controls{display:flex;gap:8px}.filter-controls select{width:160px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.card{border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--shadow);background:#fff}.image-wrap{height:210px;padding:12px;box-sizing:border-box;background:#f6f8fa;display:flex;align-items:center;justify-content:center;overflow:hidden;font-size:55px}.image-wrap img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;object-position:center;font-size:0;color:transparent}.image-fallback{font-size:55px}.card-body{padding:16px;display:flex;flex-direction:column;flex:1}.brand{font-size:11px;color:var(--orange);font-weight:900}.card h3{font-size:17px;margin:8px 0}.meta{font-size:12px;color:var(--muted);min-height:38px}.price-row{display:flex;justify-content:space-between;align-items:end;margin:15px 0 10px}.price{font-size:21px;font-weight:900}.wholesale-price{font-size:12px;color:var(--green);font-weight:800}.stock{font-size:12px;font-weight:800;color:#13795b}.stock.out{color:#b42318}.card-actions{display:flex;gap:8px;margin-top:auto}.qty-input{max-width:74px;text-align:center}
.btn{border:0;border-radius:8px;padding:11px 15px;font-weight:800;cursor:pointer}.btn-primary{background:var(--navy);color:#fff}.btn-accent{background:var(--orange);color:#fff}.btn-soft{background:#eef1f5;color:var(--text)}.btn:disabled{opacity:.4}.brand-row{margin-top:45px;border-top:1px solid var(--line);padding-top:20px}.brand-row .section-heading{margin-bottom:13px}.brand-row .section-heading h2{font-size:17px}.brand-row .section-heading span{font-size:12px;font-weight:700}.brand-list{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;color:#1e2c42;padding:12px 20px;border:1px solid var(--line);border-radius:9px}.brand-list b{font-size:17px}.brand-list b:nth-child(1){color:#e72128}.brand-list b:nth-child(4){color:#78a832}.brand-list b:nth-child(6){color:#d3202e}.brand-list b:nth-child(8){color:#f24d20}
footer{border-top:1px solid var(--line);background:#fff;padding:22px 18px}.footer-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;color:var(--green);font-size:28px}.footer-grid span{font-size:12px;color:var(--text);display:inline-block;margin-left:8px}.footer-grid b{font-size:12px}
.modal{position:fixed;inset:0;background:#05140c88;display:none;align-items:center;justify-content:center;padding:18px;z-index:80}.modal.open{display:flex}.modal-card{width:min(760px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:18px}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--line)}.modal-body{padding:20px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 12px;cursor:pointer}.cart-line{display:grid;grid-template-columns:1fr 100px 110px 40px;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid var(--line)}.cart-total{display:flex;justify-content:space-between;font-size:22px;font-weight:900;margin:20px 0}.customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}input,select,textarea{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:#fff}
.invoice-card{width:min(900px,100%)}.invoice-actions>div{display:flex;gap:8px}.invoice-brand{display:flex;justify-content:space-between;gap:24px;padding-bottom:22px;border-bottom:2px solid var(--green)}.invoice-brand>div:first-child{display:grid;gap:5px}.invoice-brand b{font-size:31px;letter-spacing:-1px;color:var(--navy)}.invoice-brand b i{color:var(--orange);font-style:normal}.invoice-brand span{font-size:12px;color:var(--muted)}.invoice-business{display:grid;text-align:right;gap:4px;font-size:13px}.invoice-business strong{font-size:22px;color:var(--green)}.invoice-customer{display:flex;justify-content:space-between;gap:20px;margin:24px 0;padding:18px;background:#f6f8fa;border-radius:10px}.invoice-customer div{display:grid;gap:4px}.invoice-customer small{font-size:10px;font-weight:900;color:var(--green);letter-spacing:.8px}.invoice-customer span{font-size:13px;color:var(--muted)}.invoice-table{min-width:0}.invoice-table th{background:#102c54;color:#fff}.invoice-table td:nth-child(3),.invoice-table td:nth-child(4),.invoice-table td:nth-child(5),.invoice-table th:nth-child(3),.invoice-table th:nth-child(4),.invoice-table th:nth-child(5){text-align:right}.invoice-grand-total{display:flex;justify-content:flex-end;gap:25px;padding:22px 0;font-size:20px}.invoice-grand-total b{font-size:25px;color:var(--green)}.invoice-footer-actions{display:flex;justify-content:flex-end;gap:12px;padding:0 20px 20px}
@media print{body>*:not(#invoiceModal){display:none!important}.invoice-modal{position:static!important;display:block!important;background:#fff!important;padding:0!important}.invoice-modal .modal-card{width:100%!important;max-height:none!important;overflow:visible!important;border-radius:0!important}.invoice-actions,.invoice-footer-actions{display:none!important}.invoice-content{padding:0!important}}
.login{max-width:420px;margin:70px auto;background:#fff;padding:26px;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.admin-shell{max-width:1180px;margin:28px auto;padding:0 18px}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.stat b{display:block;font-size:28px}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px}table{width:100%;border-collapse:collapse;min-width:1100px}th,td{padding:10px;border-bottom:1px solid var(--line);text-align:left;font-size:13px}.admin-toolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.scanner{position:fixed;inset:0;background:#000d;display:none;z-index:120;padding:20px}.scanner.open{display:flex;flex-direction:column;align-items:center;justify-content:center}.scanner video{width:min(640px,100%);border-radius:16px;background:#000}.scanner-actions{display:flex;gap:10px;margin-top:14px}.role-pill,.notice{display:none}
@media(max-width:850px){.header-main{grid-template-columns:1fr auto;gap:10px;padding:10px 14px}.brand-logo strong{font-size:20px}.brand-logo small{display:none}.brand-paw{font-size:31px}.main-search{grid-column:1/-1;grid-row:2}.main-nav{overflow:auto;gap:20px;white-space:nowrap}.main-nav a{font-size:12px}.all-categories{padding:9px 12px}.admin-link{margin-left:0}.home{padding:9px 12px 38px}.promos{grid-template-columns:1fr;gap:9px}.promo{min-height:120px}.family-hero{height:350px;background-position:62% center}.hero-copy{width:70%;padding:35px 25px}.hero-copy h1{font-size:29px}.department-strip{grid-template-columns:repeat(2,1fr)}.subcategory-grid{grid-template-columns:repeat(2,1fr);gap:10px}.subcategory{height:145px}.filter-controls{width:100%}.filter-controls select{width:50%}.section-heading{align-items:flex-start;flex-direction:column}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.card-body{padding:11px}.image-wrap{height:150px}.card h3{font-size:14px}.footer-grid{grid-template-columns:repeat(2,1fr);font-size:22px}.customer-grid{grid-template-columns:1fr}.cart-line{grid-template-columns:1fr 60px 85px 35px}.admin-grid{grid-template-columns:repeat(2,1fr)}}
