*{box-sizing:border-box}body{margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;background:#f5f3ff;color:#211c2e}.center{height:100vh;display:grid;place-items:center}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#ddd6fe,transparent 40%),linear-gradient(145deg,#faf5ff,#f5f3ff)}.login-card{width:min(420px,calc(100vw - 32px));box-shadow:0 24px 70px #5b21b633;text-align:center}.brand-mark{margin:auto;width:58px;height:58px;border-radius:18px;display:grid;place-items:center;color:#fff;font-size:28px;background:linear-gradient(135deg,#7c3aed,#db2777)}.login-card form{text-align:left}.shell{min-height:100vh}.logo{height:64px;color:#fff;font-weight:700;font-size:20px;display:grid;place-items:center;border-bottom:1px solid #ffffff18}.header{background:#fff;display:flex;justify-content:space-between;align-items:center;padding:0 24px;border-bottom:1px solid #eee}.header-title{display:flex;align-items:center;min-width:0}.content{padding:28px;overflow:auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.page-head h2{margin-bottom:4px}.product-img,.product-placeholder{height:180px;object-fit:cover}.product-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#ede9fe,#fce7f3);color:#7c3aed;font-weight:800;letter-spacing:4px}.price{font-size:25px;font-weight:800;color:#7c3aed;margin:14px 0}.price small{font-size:14px}.price del{font-size:13px;font-weight:400;color:#999}.right{float:right}.positive{color:#059669}.negative{color:#dc2626}.upload-box{width:120px;height:70px;border:1px dashed #b8a6d9;border-radius:8px;display:grid;place-content:center;text-align:center;cursor:pointer;color:#7c3aed;gap:4px}.upload-box:hover{border-color:#7c3aed;background:#faf5ff}.mobile-tabs{display:none}@media(max-width:767px){body{overflow-x:hidden}.shell{padding-bottom:calc(64px + env(safe-area-inset-bottom))}.mobile-header{height:56px;line-height:56px;padding:0 8px;position:sticky;top:0;z-index:20}.mobile-menu-button{width:48px;height:48px;font-size:20px;margin-right:2px}.header-title{max-width:62%;white-space:nowrap;overflow:hidden}.header-title .ant-typography{overflow:hidden;text-overflow:ellipsis}.user-area{gap:2px!important}.user-area .ant-tag,.user-name{display:none}.user-area .ant-btn{width:48px;height:48px}.content{padding:14px 12px 22px;overflow-x:hidden}.page-head{align-items:stretch;flex-direction:column;gap:10px}.page-head h2{font-size:24px}.content>.ant-row{row-gap:12px}.ant-card .ant-card-body{padding:16px}.ant-statistic-title{white-space:normal}.content .ant-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.content .ant-table{min-width:680px}.content .ant-table-container{overflow:visible}.ant-form-inline{display:flex;flex-wrap:wrap;gap:8px}.ant-form-inline .ant-form-item{margin:0;flex:1 1 150px}.ant-form-inline .ant-btn{min-height:40px}.ant-modal{max-width:calc(100vw - 24px);margin:12px auto;padding-bottom:0}.ant-modal-content{padding:18px 14px}.ant-space{max-width:100%;flex-wrap:wrap}.product-img,.product-placeholder{height:auto;aspect-ratio:1/1}.mobile-tabs{position:fixed;display:grid;grid-template-columns:repeat(5,1fr);left:0;right:0;bottom:0;z-index:1000;height:calc(64px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:#fff;border-top:1px solid #e8e2f2;box-shadow:0 -6px 20px #2e10651a}.mobile-tab{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#6b6478;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-width:0;min-height:64px;padding:5px 2px;font:inherit;font-size:11px;line-height:1.15;touch-action:manipulation}.mobile-tab-icon{font-size:21px;line-height:1}.mobile-tab.active{color:#7c3aed;font-weight:700;background:#faf7ff}.mobile-tab:active{background:#f0e9ff}.mobile-drawer-menu .ant-menu-item{height:52px;line-height:52px;margin-block:4px;font-size:16px}.mobile-drawer-menu .ant-menu-item-icon{font-size:19px}}
