#app{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;background-color:#f5f5f5;line-height:1.6}.container{max-width:1200px;margin:0 auto;padding:0 20px}.portal-container{min-height:100vh;background:linear-gradient(135deg,#00a7e1,#00c4b3);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px}.portal-header{text-align:center;margin-bottom:60px}.portal-title{font-size:48px;color:#fff;font-weight:300;margin-bottom:10px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.portal-subtitle{font-size:18px;color:hsla(0,0%,100%,.8);font-weight:300}.portal-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px;width:100%;max-width:1000px}.portal-card{background:hsla(0,0%,100%,.95);border-radius:20px;padding:40px 30px;text-align:center;transition:all .3s ease;backdrop-filter:blur(10px);border:1px solid hsla(0,0%,100%,.2);box-shadow:0 8px 32px rgba(0,0,0,.1)}.portal-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,.15)}.portal-card-icon{font-size:60px;margin-bottom:20px;color:#00a7e1}.portal-card-title{font-size:24px;color:#333;margin-bottom:15px;font-weight:500}.portal-card-desc{color:#666;font-size:14px;margin-bottom:30px;line-height:1.8}.portal-card-btn{width:100%;height:50px;font-size:16px;font-weight:500;border-radius:25px}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00a7e1,#00c4b3)}.login-form{background:#fff;padding:40px;border-radius:20px;box-shadow:0 20px 40px rgba(0,0,0,.1);width:100%;max-width:400px}.login-title{text-align:center;font-size:28px;color:#333;margin-bottom:30px;font-weight:500}.login-btn{width:100%;height:50px;font-size:16px;font-weight:500;border-radius:25px;margin-top:20px}.product-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 12px rgba(0,0,0,.08);transition:all .3s ease;border:1px solid #f0f0f0}.product-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.12);transform:translateY(-2px)}.product-image{width:100%;height:200px;-o-object-fit:cover;object-fit:cover}.product-info{padding:20px}.product-title{font-size:16px;color:#333;margin-bottom:8px;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-price{font-size:20px;color:#ff4d4f;font-weight:600;margin-bottom:15px}.product-actions{display:flex;gap:10px}.page-container{min-height:100vh;display:flex;flex-direction:column}.page-header{background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.1);padding:0 20px;position:sticky;top:0;z-index:1000}.page-content{flex:1;padding:20px;background:#f5f5f5}@media (max-width:768px){.portal-title{font-size:36px}.portal-cards{grid-template-columns:1fr;gap:20px}.portal-card{padding:30px 20px}.container{padding:0 15px}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease}.text-center{text-align:center}.mb-20{margin-bottom:20px}.mt-20{margin-top:20px}.p-20{padding:20px}.shadow{box-shadow:0 4px 12px rgba(0,0,0,.1)}.border-radius{border-radius:8px}.bg-white{background:#fff}