:root{color:#17202a;background:#f5f7f9;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}.app-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;padding:28px 18px;background:#fff;border-right:1px solid #e5ebef}.brand{display:flex;align-items:center;gap:12px;margin-bottom:34px}.avatar{display:grid;place-items:center;color:#fff;background:#0f766e;font-weight:800}.brand-mark{width:42px;height:42px;border-radius:8px;background-image:url(https://static.cardmart.art/customize_cloud/4764940122-logo.png);background-size:100% 100%}.brand strong,.brand small{display:block}.brand small{margin-top:4px;color:#667987}.sidebar nav{display:grid;gap:8px}.sidebar nav a,.mobile-tabs a{color:#526675;font-weight:700}.sidebar nav a{display:flex;justify-content:space-between;min-height:46px;padding:13px 14px;border-radius:8px}.sidebar nav a.router-link-active,.mobile-tabs a.router-link-active{color:#0f766e;background:#e8f5f2}.sidebar em{min-width:22px;height:22px;border-radius:999px;color:#fff;background:#e11d48;font-size:12px;font-style:normal;text-align:center;line-height:22px}.content{width:min(1180px,100%);padding:28px;margin:0 auto}.hero{min-height:260px;display:flex;align-items:end;padding:36px;border-radius:8px;color:#fff;background:linear-gradient(90deg,#0e2b2de0,#0e2b2d47),url(https://images.unsplash.com/photo-1512436991641-6745cdb1723f?auto=format&fit=crop&w=1600&q=80) center/cover}.hero p,.page-head p,.profile-hero p{margin:0 0 10px;color:#0f766e;font-weight:800;text-transform:uppercase}.hero p{color:#bff3e9}.hero h1,.page-head h1,.profile-hero h1,.detail-panel h1{margin:0;letter-spacing:0}.hero h1{font-size:clamp(34px,5vw,58px)}.hero span{display:block;max-width:560px;margin-top:14px;color:#e7f8f5;line-height:1.7}.toolbar,.page-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:24px 0}.search-box{flex:1;display:flex;align-items:center;gap:12px;min-height:48px;padding:0 16px;border:1px solid #dce5ea;border-radius:8px;background:#fff}.search-box span{width:50px;color:#667987;font-weight:700}.search-box input{width:100%;border:0;outline:0}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips button,.ghost-button{min-height:40px;padding:0 14px;border:1px solid #d8e2e7;border-radius:8px;color:#526675;background:#fff;font-weight:800}.chips button.active{color:#fff;border-color:#0f766e;background:#0f766e}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.product-card,.detail-panel,.list-panel,.summary-panel,.order-card,.address-card,.menu-panel,.stat-grid article{border:1px solid #e2e9ee;border-radius:8px;background:#fff}.product-card{overflow:hidden}.product-image{position:relative;display:block;aspect-ratio:4 / 3;overflow:hidden}.product-image img,.detail-image img,.cart-item img,.order-product img{width:100%;height:100%;object-fit:cover}.product-image img{transition:transform .25s ease}.product-card:hover .product-image img{transform:scale(1.04)}.product-image b{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:999px;color:#fff;background:#e11d48;font-size:12px}.product-info{display:grid;gap:10px;padding:16px}.product-name{font-size:18px;font-weight:900}.product-info p,.cart-item p,.order-product p,.detail-panel p,.address-card p{margin:0;color:#667987;line-height:1.6}.price-row,.meta-row,.detail-price,.order-card header,.order-card footer,.address-card header,.address-card footer,.summary-panel div{display:flex;align-items:center;justify-content:space-between;gap:12px}.price-row strong,.detail-price strong{color:#e11d48;font-size:24px}.price-row span,.detail-price span{color:#9aacb7;text-decoration:line-through}.meta-row{color:#667987;font-size:13px}.primary-button,.dark-button{min-height:42px;padding:0 16px;border:0;border-radius:8px;color:#fff;font-weight:900}.primary-button{background:#0f766e}.dark-button{background:#17202a}.dark-button:disabled{cursor:not-allowed;opacity:.5}.detail-layout,.cart-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:22px}.detail-image{min-height:520px;border-radius:8px;overflow:hidden}.detail-panel{display:flex;flex-direction:column;gap:20px;padding:28px}.pill,.specs span,.address-card header span{width:fit-content;padding:7px 10px;border-radius:999px;color:#0f766e;background:#e8f5f2;font-weight:800;font-size:13px}.specs,.action-row{display:flex;flex-wrap:wrap;gap:10px}.quantity{display:flex;align-items:center;gap:10px}.quantity button{width:34px;height:34px;border:1px solid #d8e2e7;border-radius:8px;background:#fff;font-weight:900}.compact{margin-left:auto}.cart-layout{align-items:start}.list-panel,.summary-panel{padding:18px}.cart-item,.order-product{display:grid;grid-template-columns:auto 94px minmax(0,1fr) auto;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid #edf1f4}.cart-item:last-child{border-bottom:0}.cart-item img,.order-product img{width:94px;height:94px;border-radius:8px}.cart-item h3,.order-product h3,.address-card h3{margin:0 0 8px}.summary-panel{position:sticky;top:28px;display:grid;gap:16px}.full{width:100%}.order-list,.address-grid,.menu-panel{display:grid;gap:16px}.pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px;padding:16px 18px;border:1px solid #e2e9ee;border-radius:8px;background:#fff}.pagination span{color:#667987;font-weight:700}.pagination div{display:flex;flex-wrap:wrap;gap:8px}.pagination button{min-width:40px;min-height:38px;padding:0 12px;border:1px solid #d8e2e7;border-radius:8px;color:#526675;background:#fff;font-weight:800}.pagination button.active{color:#fff;border-color:#0f766e;background:#0f766e}.pagination button:disabled{cursor:not-allowed;opacity:.45}.order-card,.address-card{padding:18px}.order-card header,.order-card footer{padding:0 0 14px}.order-card footer{padding:14px 0 0}.order-card b{color:#e11d48}.address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.address-card{display:grid;gap:12px}.profile-hero{display:flex;align-items:center;gap:18px;min-height:210px;padding:30px;border-radius:8px;color:#fff;background:linear-gradient(90deg,#0f766eeb,#3b82f694),url(https://images.unsplash.com/photo-1556742049-0cfed4f6a45d?auto=format&fit=crop&w=1600&q=80) center/cover}.profile-hero p,.profile-hero span{color:#eafffb}.avatar{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:76px;height:76px;border-radius:50%;background-image:url(https://static.cardmart.art/customize_cloud/4764940122-logo.png);background-size:100% 100%}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:20px 0}.stat-grid article{display:grid;gap:8px;padding:18px}.stat-grid strong{font-size:28px}.stat-grid span{color:#667987}.menu-panel{padding:8px 18px}.menu-panel a{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid #edf1f4}.menu-panel a:last-child{border-bottom:0}.menu-panel b{color:#667987}.empty-state{display:grid;place-items:center;gap:14px;min-height:360px;border:1px dashed #cfdbe2;border-radius:8px;background:#fff}.mobile-tabs{display:none}@media(max-width:960px){.app-shell{display:block}.sidebar{display:none}.content{padding:16px 16px 82px}.hero{min-height:220px;padding:24px}.toolbar,.page-head,.pagination{align-items:stretch;flex-direction:column}.product-grid,.detail-layout,.cart-layout,.address-grid,.stat-grid{grid-template-columns:1fr}.detail-image{min-height:auto;aspect-ratio:4 / 3}.cart-item,.order-product{grid-template-columns:auto 76px minmax(0,1fr)}.cart-item img,.order-product img{width:76px;height:76px}.compact{grid-column:2 / 4;margin-left:0}.summary-panel{position:static}.mobile-tabs{position:fixed;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px;border-top:1px solid #e1e8ed;background:#fffffff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-tabs a{min-height:44px;display:grid;place-items:center;border-radius:8px;font-size:13px}}
