:root{--red:#9e2024;--red2:#c43b3e;--cream:#faf7ef;--ink:#252525;--muted:#7d7773;--line:#ebe5df;--green:#16885a;--orange:#c27a19;box-sizing:border-box;font-family:"Microsoft YaHei","PingFang SC",sans-serif;color:var(--ink)}*{box-sizing:inherit}body{margin:0;background:#f4f1ee}.hidden{display:none!important}button,input,select,textarea{font:inherit}.login-shell{min-height:100vh;padding:42px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 15% 20%,#fff7e5,transparent 34%),linear-gradient(135deg,#f9f5ec,#f4eeee)}.login-card{width:min(1120px,100%);min-height:650px;display:grid;grid-template-columns:1fr 1.15fr;background:#fff;border-radius:34px;overflow:hidden;box-shadow:0 30px 80px rgba(84,44,32,.16)}.brand-panel{padding:70px 62px;color:#fff;background:linear-gradient(145deg,#8b141c,#b7222d);display:flex;flex-direction:column;justify-content:center}.brand-kicker{letter-spacing:4px;opacity:.75}.brand-mark{width:150px;height:150px;margin:54px 0 30px;border-radius:50%;display:grid;place-items:center;background:#fff4d4;color:var(--red);font:700 76px serif;box-shadow:0 0 0 16px rgba(255,255,255,.12)}.brand-panel h1{font-size:40px;margin:0}.brand-panel p{font-size:20px;opacity:.8}.brand-points{display:flex;gap:24px;margin-top:66px;color:#ffe9a8}.qr-panel{padding:60px 80px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.logo-title{color:var(--red);font-size:38px;font-weight:800;letter-spacing:5px}.qr-panel h2{margin:28px 0 8px;font-size:30px}.muted{color:var(--muted)}.qr-box{width:260px;height:260px;margin:24px 0 12px;padding:12px;display:grid;place-items:center;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 10px 32px rgba(0,0,0,.06)}.qr-box img{max-width:100%;max-height:100%}.qr-status{min-height:28px;color:var(--orange)}.security-note{color:#aaa;font-size:14px}.secondary-button,.primary-button,.link-button,.close-button{border:0;cursor:pointer}.secondary-button{padding:10px 20px;border:1px solid #d9ceca;border-radius:10px;background:#fff;color:#5d5551}.primary-button{padding:11px 22px;border-radius:10px;background:linear-gradient(90deg,var(--red),var(--red2));color:#fff;font-weight:700}.link-button{background:transparent;color:var(--red)}.app-shell{min-height:100vh;display:flex}.sidebar{width:230px;padding:28px 20px;background:#18252b;color:#fff}.side-brand{display:flex;gap:12px;align-items:center;font-size:24px}.side-brand span{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--red);font-weight:800}.enterprise-caption{margin:16px 0 34px;color:#92a1a7}.nav-item{width:100%;padding:15px 16px;border:0;border-radius:10px;text-align:left;background:#5275df;color:#fff;font-size:17px}.main-area{min-width:0;flex:1}.topbar{padding:20px 30px;background:#fff;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.topbar h1{margin:0;font-size:24px}.topbar p{margin:5px 0 0;color:var(--muted);font-size:14px}.top-actions{display:flex;gap:16px;align-items:center}.top-actions select{max-width:280px}.content{padding:28px}.summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:22px}.summary-card{padding:22px;border-radius:14px;background:#fff;border-left:5px solid #5379df;box-shadow:0 8px 22px rgba(50,40,35,.05)}.summary-card span{color:var(--muted)}.summary-card strong{display:block;margin-top:10px;font-size:30px}.summary-card.pending{border-color:#dc951e}.summary-card.approved{border-color:#18a56c}.panel{padding:22px;background:#fff;border-radius:16px;box-shadow:0 10px 30px rgba(50,40,35,.06)}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.filters{display:flex;gap:10px}.filters input,.filters select,.top-actions select,.form-grid input,.form-grid select,.full-field textarea,.spec-row input{min-height:42px;padding:9px 12px;border:1px solid #ddd4cf;border-radius:9px;background:#fff}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:900px}th,td{padding:13px 12px;border-bottom:1px solid #eee;text-align:left;vertical-align:middle}th{background:#faf8f6;color:#635c58;font-weight:600}.product-cell{display:flex;align-items:center;gap:12px}.product-cell img{width:54px;height:54px;border-radius:9px;object-fit:cover;background:#eee}.status-pill{display:inline-block;padding:5px 10px;border-radius:14px;background:#eee;color:#666;font-size:13px}.status-pending{background:#fff1d7;color:#a46100}.status-approved{background:#dbf5e9;color:#08784b}.status-rejected{background:#fde1e1;color:#a72228}.row-actions{min-width:170px;display:flex;flex-wrap:wrap;gap:7px}.row-actions button{padding:6px 10px;border:0;border-radius:7px;cursor:pointer}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:18px}.pagination button{padding:7px 13px;border:1px solid #ddd;border-radius:7px;background:#fff}.modal{position:fixed;inset:0;padding:30px;display:flex;align-items:flex-start;justify-content:center;background:rgba(20,20,20,.46);overflow:auto;z-index:20}.modal-card{width:min(900px,100%);padding:26px;background:#fff;border-radius:18px}.modal-head{display:flex;justify-content:space-between}.modal-head h2{margin:0}.modal-head p{color:var(--muted)}.close-button{font-size:34px;background:transparent;color:#888}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-grid label,.full-field{display:flex;flex-direction:column;gap:7px}.upload-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.upload-card{min-height:170px;padding:14px;border:1px dashed #cdbfba;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:pointer}.upload-card input{display:none}.upload-card img{max-width:170px;max-height:120px;object-fit:cover}.upload-card em{color:var(--muted);font-style:normal}.gallery-preview{display:flex;gap:6px;flex-wrap:wrap}.gallery-preview img{width:58px;height:58px;object-fit:cover;border-radius:6px}.spec-section{margin:18px 0;padding:18px;background:#faf8f6;border-radius:12px}.section-title{display:flex;align-items:center;justify-content:space-between}.spec-row{display:grid;grid-template-columns:2fr 1fr 1fr 1fr auto;gap:9px;margin-top:10px}.spec-row button{border:0;background:transparent;color:#bd2b31;cursor:pointer}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}.toast{position:fixed;top:20px;left:50%;transform:translateX(-50%);padding:12px 22px;border-radius:9px;background:#242424;color:#fff;opacity:0;pointer-events:none;z-index:50;transition:.2s}.toast.show{opacity:1}@media(max-width:800px){.login-shell{padding:16px}.login-card{grid-template-columns:1fr}.brand-panel{display:none}.qr-panel{padding:44px 24px}.sidebar{width:76px;padding:22px 10px}.side-brand strong,.enterprise-caption{display:none}.nav-item{font-size:0;text-align:center}.nav-item:first-letter{font-size:22px}.topbar{align-items:flex-start;gap:16px}.top-actions{flex-wrap:wrap;justify-content:flex-end}.content{padding:16px}.summary-grid{grid-template-columns:1fr}.toolbar{align-items:stretch;flex-direction:column}.filters{flex-wrap:wrap}.form-grid,.upload-row{grid-template-columns:1fr}.spec-row{grid-template-columns:1fr 1fr}.spec-row button{grid-column:2}}
.product-placeholder{width:54px;height:54px;flex:0 0 54px;border-radius:9px;display:grid;place-items:center;background:#f1e8e3;color:#9e2024;font-weight:700}.gallery-preview img{cursor:pointer}
