*{box-sizing:border-box}body{color:#15202b;background:#f7f8fa;margin:0;font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.wrap{max-width:1180px;margin:auto;padding-left:24px;padding-right:24px}header{z-index:10;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;height:76px;display:flex}.logo{letter-spacing:-1px;font-size:27px;font-weight:900}.logo span,.eyebrow{color:#d71920}nav{gap:30px;font-weight:800;display:flex}.hero{color:#fff;background:linear-gradient(120deg,#101820,#25313d);padding:95px 0}.hero h1{max-width:700px;margin:12px 0 18px;font-size:58px;line-height:1.02}.lead{color:#dce2e7;font-size:19px}.hero form,.search{max-width:820px;margin-top:32px;display:flex}.hero input,.search input{border:1px solid #d0d5dd;border-radius:4px 0 0 4px;flex:1;padding:19px;font-size:16px}.hero button,.search button{color:#fff;background:#d71920;border:0;padding:0 30px;font-weight:900}.chips{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.chips span{color:#dce2e7;border:1px solid #52606d;border-radius:20px;padding:7px 12px;font-size:12px}.section{padding-top:58px;padding-bottom:75px}.sectionhead{justify-content:space-between;align-items:end;margin-bottom:22px;display:flex}.sectionhead h2{margin:5px 0;font-size:32px}.eyebrow{letter-spacing:1px;font-size:12px;font-weight:900}.grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.card,.panel,.empty{background:#fff;border:1px solid #e1e5ea;border-radius:12px;overflow:hidden}.photo,.mainphoto{text-align:center;color:#9aa3ad;background:#edf0f3;justify-content:center;align-items:center;font-weight:900;display:flex}.photo{height:190px}.cardbody{padding:17px}.cardbody small{color:#d71920;font-weight:900}.cardbody h3{min-height:40px;font-size:17px}.cardbody p{color:#667085;font-size:13px;line-height:1.45}.cardbody b{font-size:13px}.empty{grid-column:1/-1;padding:30px}.dark{color:#fff;background:#101820}.stats{grid-template-columns:repeat(3,1fr);padding-top:42px;padding-bottom:42px;display:grid}.stats div{flex-direction:column;display:flex}.stats b{font-size:25px}.stats span{color:#aab3bb;margin-top:5px}.search{margin-bottom:25px}.result{color:#667085}.detail{grid-template-columns:1.05fr .95fr;gap:55px;margin-top:35px;display:grid}.mainphoto{border-radius:12px;height:480px}.spec{border-top:1px solid #ddd;margin:25px 0}.spec p{border-bottom:1px solid #eee;grid-template-columns:150px 1fr;margin:0;padding:14px 0;display:grid}.spec span{color:#59636e}.wa{color:#fff;background:#111;border-radius:6px;padding:16px 25px;font-weight:900;display:inline-block}.adminGrid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.panel{padding:25px}.panel span{color:#d71920;font-size:12px;font-weight:900}footer{color:#b6bec5;background:#0e151c;padding:38px 0}@media (max-width:850px){.grid{grid-template-columns:repeat(2,1fr)}.hero h1{font-size:43px}.detail{grid-template-columns:1fr}.stats{grid-template-columns:1fr;gap:25px}}@media (max-width:540px){.grid,.adminGrid{grid-template-columns:1fr}.nav{flex-direction:column;align-items:flex-start;gap:14px;height:auto;padding-top:18px;padding-bottom:18px}nav{gap:20px}.hero{padding:65px 0}.hero h1{font-size:37px}.hero form,.search{flex-direction:column}.hero input,.search input{border-radius:4px}.hero button,.search button{padding:16px}.mainphoto{height:320px}}.loginbox{background:#fff;border:1px solid #e1e5ea;border-radius:12px;flex-direction:column;gap:10px;max-width:460px;margin-top:25px;padding:28px;display:flex}.loginbox input{border:1px solid #cfd5dc;border-radius:5px;padding:14px;font-size:16px}.loginbox button,.adminTop button{color:#fff;background:#d71920;border:0;border-radius:5px;padding:13px 20px;font-weight:900}.adminTop{justify-content:space-between;align-items:center;display:flex}.adminHeading{margin-top:45px}.tablewrap{background:#fff;border:1px solid #e1e5ea;border-radius:10px;overflow:auto}table{border-collapse:collapse;width:100%;min-width:900px}th,td{text-align:left;border-bottom:1px solid #edf0f2;padding:13px;font-size:13px}th{background:#f5f6f8}.on,.off{border:0;border-radius:15px;padding:6px 12px;font-weight:900}.on{color:#16723b;background:#e8f7ee}.off{color:#a12b2b;background:#f5e9e9}.importBox{background:#fff;border:1px solid #e1e5ea;border-radius:12px;margin-top:35px;padding:25px}.importBox input[type=file]{margin:18px 0;display:block}.preview{border:1px solid #e1e5ea;border-radius:8px;overflow:auto}.importBtn{color:#fff;background:#d71920;border:0;border-radius:5px;padding:14px 22px;font-size:15px;font-weight:900}.importBtn:disabled{opacity:.55}.success{color:#166534;background:#e8f7ee;border-radius:8px;margin-top:16px;padding:15px}.photo img,.mainphoto img{object-fit:contain;background:#fff;width:100%;height:100%}.imageBtn{color:#d71920;white-space:nowrap;background:#fff;border:1px solid #d71920;border-radius:5px;padding:8px 10px;font-weight:800}.modalBack{z-index:100;background:#0a1219a6;justify-content:center;align-items:center;padding:25px;display:flex;position:fixed;inset:0}.imageModal{background:#fff;border-radius:14px;width:min(1000px,100%);max-height:90vh;padding:28px;overflow:auto}.modalHead{justify-content:space-between;gap:20px;display:flex}.modalHead h2{margin:4px 0}.closeBtn{cursor:pointer;background:#eef0f3;border:0;border-radius:50%;width:42px;height:42px;font-size:28px}.uploadBox{background:#fafbfc;border:2px dashed #cfd5dc;border-radius:10px;flex-direction:column;gap:7px;margin:20px 0;padding:20px;display:flex}.uploadBox span{color:#667085;font-size:13px}.uploadBox input{margin-top:8px}.imageGrid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.imageItem{background:#f8f9fa;border:1px solid #e1e5ea;border-radius:9px;overflow:hidden}.imageItem img{object-fit:contain;background:#fff;width:100%;height:190px}.imageActions{justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex}.imageActions button{background:#fff;border:1px solid #cfd5dc;border-radius:5px;padding:7px 9px;font-weight:700}.imageActions .deleteImg{color:#b42318}.primaryTag{color:#16723b;background:#e8f7ee;border-radius:12px;padding:7px;font-size:11px}.noImages{text-align:center;color:#667085;background:#f7f8fa;border-radius:8px;padding:35px}.thumbs{grid-template-columns:repeat(5,1fr);gap:10px;margin-top:12px;display:grid}.thumbs a{background:#fff;border:1px solid #e1e5ea;border-radius:7px;height:90px;overflow:hidden}.thumbs img{object-fit:contain;width:100%;height:100%}@media (max-width:700px){.imageGrid{grid-template-columns:repeat(2,1fr)}.thumbs{grid-template-columns:repeat(4,1fr)}}.bulkBox{border-top:4px solid #d71920}.filenameExample{background:#f7f8fa;border:1px solid #e1e5ea;border-radius:7px;margin:12px 0;padding:13px}.filenameExample code{font-weight:800}.bulkSummary{flex-wrap:wrap;gap:10px;margin:15px 0;display:flex}.bulkSummary span{border-radius:16px;padding:8px 11px;font-size:12px;font-weight:900}.bulkSummary .matched{color:#16723b;background:#e8f7ee}.bulkSummary .unmatched{color:#9a5b00;background:#fff4e5}.bulkSummary .invalid{color:#a12b2b;background:#fbeaea}.bulkPreview{max-height:420px;margin-bottom:15px;overflow:auto}.status{font-size:11px}.status.matched{color:#16723b}.status.unmatched{color:#9a5b00}.status.invalid{color:#a12b2b}.reason{color:#667085;margin-top:3px;display:block}.bulkWarn{color:#8a4b00;background:#fff4e5;border-radius:8px;margin-top:16px;padding:15px}.productTools{align-items:center;gap:12px;margin:12px 0;display:flex}.productTools input{border:1px solid #cfd5dc;border-radius:6px;width:100%;min-width:320px;max-width:520px;padding:12px;font-size:14px}.productTools span{white-space:nowrap;color:#667085;font-size:13px}.editBtn{color:#fff;white-space:nowrap;background:#15202b;border:0;border-radius:5px;padding:8px 10px;font-weight:800}.editModal{background:#fff;border-radius:14px;width:min(1050px,100%);max-height:92vh;padding:28px;overflow:auto}.qneReadOnly{background:#f5f6f8;border:1px solid #e1e5ea;border-radius:9px;margin:18px 0;padding:16px}.qneReadOnly>b{color:#667085;font-size:13px}.qneReadOnly>div{grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px;display:grid}.qneReadOnly span{color:#667085;flex-direction:column;font-size:11px;display:flex}.qneReadOnly strong{color:#15202b;margin-top:4px;font-size:13px}.editGrid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.editGrid label,.fullField{flex-direction:column;gap:6px;font-size:13px;font-weight:800;display:flex}.editGrid input,.editGrid select,.fullField textarea{font:inherit;background:#fff;border:1px solid #cfd5dc;border-radius:6px;padding:11px}.fullField{margin-top:14px}.editToggles{background:#f7f8fa;border-radius:8px;flex-wrap:wrap;gap:18px;margin-top:20px;padding:15px;display:flex}.editToggles label{font-size:13px;font-weight:800}.editFooter{align-items:center;gap:16px;margin-top:22px;display:flex}.saveBtn{color:#fff;background:#d71920;border:0;border-radius:6px;padding:14px 24px;font-weight:900}.saveBtn:disabled{opacity:.55}.saveOk{color:#16723b}.saveError{color:#a12b2b}@media (max-width:700px){.editGrid,.qneReadOnly>div{grid-template-columns:1fr}.productTools{flex-direction:column;align-items:stretch}.productTools input{min-width:0}.editModal{padding:18px}.editToggles{flex-direction:column}}.price{color:#d71920;margin:10px 0;font-size:20px;font-weight:900}.branchstock{gap:5px;margin:10px 0 14px;display:grid}.branchstock span{color:#16794b;justify-content:space-between;gap:8px;font-size:11px;font-weight:800;display:flex}.branchstock strong{color:#59636e;font-size:10px}.detailprice{font-weight:900;color:#d71920!important;font-size:20px!important}.stockpanel{background:#fff;border:1px solid #e1e5ea;border-radius:10px;margin:0 0 22px;padding:16px}.stockpanel h3{margin:0 0 12px}.stockpanel div{border-top:1px solid #eee;justify-content:space-between;padding:11px 0;font-size:13px;display:flex}.stockpanel div span{color:#16794b;font-weight:900}.hero{background-color:#0b2442;background-image:url(/uni-shifu-branches-hero.png);background-position:50%;background-repeat:no-repeat;background-size:cover;position:relative}.hero:before{content:"";background:linear-gradient(90deg,#031224f0 0%,#031224e0 42%,#031224ab 72%,#03122494 100%);position:absolute;inset:0}.hero .wrap{z-index:1;position:relative}.hero h1,.hero .lead{text-shadow:0 2px 18px #000000e6}@media (max-width:850px){.hero{background-position:42%}}@media (max-width:540px){.hero{background-position:36%}}
