html,body,#root{width:100%;height:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}.login-page{position:relative;width:100%;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#1a1a1a}.login-bg{position:absolute;top:0;right:0;bottom:0;left:0;background:url(/cover.jpg) center/cover no-repeat;filter:brightness(.55) saturate(1.1);transform:scale(1.05);z-index:0}.login-bg:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#00000040,#00000073 60%,#000000a6)}.login-card{position:relative;z-index:1;width:420px;padding:40px 36px 32px;border-radius:18px;background:#ffffff1f;backdrop-filter:blur(18px) saturate(180%);-webkit-backdrop-filter:blur(18px) saturate(180%);border:1px solid rgba(255,255,255,.25);box-shadow:0 20px 60px #00000073;color:#fff;animation:fadeInUp .7s ease}.login-card .ant-form-item-label>label{color:#ffffffe6!important}.login-card .ant-input-affix-wrapper,.login-card .ant-input{background:#ffffff2e!important;border:1px solid rgba(255,255,255,.3)!important;color:#fff!important}.login-card .ant-input-affix-wrapper input{color:#fff!important;background:transparent!important}.login-card .ant-input::placeholder,.login-card input::placeholder{color:#fff9!important}.login-card .ant-input-affix-wrapper .ant-input-prefix svg,.login-card .ant-input-affix-wrapper .ant-input-suffix svg{color:#ffffffb3!important}.login-card .ant-input-password-icon{color:#ffffffb3!important}.login-title{font-size:30px;font-weight:600;margin:0 0 6px;text-align:center;letter-spacing:2px;text-shadow:0 2px 8px rgba(0,0,0,.5)}.login-subtitle{font-size:13px;text-align:center;color:#ffffffb3;margin-bottom:28px;letter-spacing:1px}.login-footer{margin-top:16px;text-align:center;color:#ffffffbf;font-size:13px}.login-footer a{color:#ffb088!important;margin-left:6px}.login-button{height:42px;font-size:15px;letter-spacing:4px;background:linear-gradient(135deg,#e8743b,#f0a070)!important;border:none!important}.login-button:hover{background:linear-gradient(135deg,#d8652c,#e89260)!important}.app-layout{min-height:100vh;background:#f7f5f1}.app-sider{background:linear-gradient(180deg,#2a2724,#1a1816)!important;box-shadow:4px 0 20px #00000014}.app-logo{height:64px;display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;font-size:18px;font-weight:600;letter-spacing:2px;border-bottom:1px solid rgba(255,255,255,.08)}.app-logo .logo-dot{width:10px;height:10px;border-radius:50%;background:#e8743b;box-shadow:0 0 10px #e8743b}.app-sider .ant-menu{background:transparent!important;border-inline-end:none!important;padding-top:8px}.app-sider .ant-menu-item{color:#ffffffb3!important;margin:4px 12px!important;border-radius:8px!important;height:44px;line-height:44px}.app-sider .ant-menu-item:hover{color:#fff!important;background:#e8743b26!important}.app-sider .ant-menu-item-selected{background:linear-gradient(135deg,#e8743b,#f0a070)!important;color:#fff!important;font-weight:500}.app-header{background:#fff!important;padding:0 24px!important;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 4px #0000000a;border-bottom:1px solid rgba(0,0,0,.04)}.header-title{font-size:16px;font-weight:500;color:#2a2724}.header-user{display:flex;align-items:center;gap:12px;cursor:pointer;padding:4px 12px;border-radius:20px;transition:background .2s}.header-user:hover{background:#0000000a}.app-content{padding:24px;background:#f7f5f1}.content-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 12px #0000000a}.home-hero{position:relative;height:220px;border-radius:14px;background:url(/cover.jpg) center/cover no-repeat;overflow:hidden;margin-bottom:24px;box-shadow:0 8px 24px #00000014}.home-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#0000008c,#00000026 60%,#0000)}.home-hero-text{position:relative;z-index:1;padding:36px 32px;color:#fff}.home-hero-text h1{font-size:32px;font-weight:600;margin:0 0 8px;letter-spacing:1px;text-shadow:0 2px 8px rgba(0,0,0,.4)}.home-hero-text p{margin:0;font-size:15px;color:#ffffffd9;letter-spacing:1px}.stat-card{background:#fff;border-radius:12px;padding:22px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 12px #0000000a;transition:transform .2s,box-shadow .2s;cursor:pointer}.stat-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000014}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:22px;color:#fff;background:linear-gradient(135deg,#e8743b,#f0a070)}.stat-value{font-size:24px;font-weight:600;color:#2a2724;line-height:1}.stat-label{font-size:13px;color:#888;margin-top:6px}.mbti-cover{position:relative;height:180px;border-radius:12px;background:url(/cover.jpg) center/cover no-repeat;overflow:hidden;margin-bottom:20px;display:flex;align-items:center;padding:0 32px;color:#fff}.mbti-cover:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,#000000a6,#00000040)}.mbti-cover>*{position:relative;z-index:1}.mbti-cover h2{font-size:28px;margin:0 0 6px;letter-spacing:2px}.mbti-cover p{margin:0;font-size:14px;color:#ffffffd9}.mbti-question-card{background:#fff;border-radius:14px;padding:36px 40px;box-shadow:0 4px 20px #0000000d;margin-bottom:16px;min-height:320px}.mbti-progress-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;color:#888;font-size:13px}.mbti-question{font-size:20px;font-weight:500;color:#2a2724;margin-bottom:28px;line-height:1.6}.mbti-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.mbti-option{padding:16px 18px;border:1.5px solid #e8e6e1;border-radius:10px;cursor:pointer;transition:all .2s;background:#fff;font-size:14px;color:#555;line-height:1.5}.mbti-option:hover{border-color:#e8743b;background:#fef6f1;color:#2a2724}.mbti-option.selected{border-color:#e8743b;background:linear-gradient(135deg,#fef6f1,#fff5ec);color:#e8743b;font-weight:500}.mbti-actions{margin-top:24px;display:flex;justify-content:space-between}.mbti-result{background:#fff;border-radius:16px;padding:40px;box-shadow:0 4px 24px #0000000d}.mbti-type-display{text-align:center;margin-bottom:32px;padding:32px 0;background:linear-gradient(135deg,#fef6f1,#fff);border-radius:12px}.mbti-type-letters{font-size:64px;font-weight:700;background:linear-gradient(135deg,#e8743b,#f0a070);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:6px;margin:0}.mbti-type-name{font-size:18px;color:#888;margin-top:8px;letter-spacing:2px}.mbti-dimension{margin-bottom:18px;padding:18px 20px;background:#fafaf7;border-radius:10px}.mbti-dim-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;font-size:14px;color:#555}.mbti-dim-bar{height:8px;background:#e8e6e1;border-radius:4px;overflow:hidden;display:flex}.mbti-dim-bar>div{height:100%;transition:width .6s ease}.dim-left{background:linear-gradient(90deg,#e8743b,#f0a070)}.dim-right{background:linear-gradient(90deg,#5b8a99,#7baab8)}.mbti-section-title{font-size:16px;font-weight:600;color:#2a2724;margin:24px 0 12px;display:flex;align-items:center;gap:8px}.mbti-section-title:before{content:"";width:4px;height:16px;background:linear-gradient(180deg,#e8743b,#f0a070);border-radius:2px}.mbti-text-block{color:#555;line-height:1.8;font-size:14px;background:#fafaf7;padding:16px 20px;border-radius:10px}.mbti-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:12px;margin:2px 4px 2px 0;background:#fef6f1;color:#e8743b;border:1px solid #f5d8c0}.chat-container{display:flex;height:calc(100vh - 112px);background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px #0000000a}.chat-sidebar{width:240px;border-right:1px solid #f0ede7;display:flex;flex-direction:column;background:#fafaf7}.chat-sidebar-header{padding:16px;border-bottom:1px solid #f0ede7}.chat-list{flex:1;overflow-y:auto;padding:8px}.chat-list-item{padding:10px 14px;border-radius:8px;cursor:pointer;font-size:14px;color:#555;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between;transition:background .2s}.chat-list-item:hover{background:#f0ede7}.chat-list-item.active{background:linear-gradient(135deg,#fef6f1,#fff5ec);color:#e8743b;font-weight:500}.chat-main{flex:1;display:flex;flex-direction:column}.chat-header{padding:16px 24px;border-bottom:1px solid #f0ede7;display:flex;align-items:center;gap:10px}.chat-header-title{font-size:16px;font-weight:500;color:#2a2724}.chat-messages{flex:1;overflow-y:auto;padding:24px;background:#fafaf7}.chat-message{display:flex;gap:12px;margin-bottom:20px}.chat-message.user{flex-direction:row-reverse}.chat-avatar{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:14px;color:#fff}.chat-avatar.bot{background:linear-gradient(135deg,#e8743b,#f0a070)}.chat-avatar.user-avatar{background:#5b8a99}.chat-bubble{max-width:70%;padding:12px 16px;border-radius:12px;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.chat-message.bot .chat-bubble{background:#fff;color:#2a2724;border:1px solid #f0ede7}.chat-message.user .chat-bubble{background:linear-gradient(135deg,#e8743b,#f0a070);color:#fff}.chat-input-area{padding:16px 20px;border-top:1px solid #f0ede7;background:#fff;display:flex;gap:12px;align-items:flex-end}.chat-textarea{flex:1;resize:none;border:1px solid #e8e6e1;border-radius:10px;padding:10px 14px;font-size:14px;outline:none;font-family:inherit;transition:border-color .2s}.chat-textarea:focus{border-color:#e8743b}.note-card{background:#fff;border-radius:10px;padding:18px;box-shadow:0 2px 8px #0000000a;cursor:pointer;transition:transform .2s,box-shadow .2s;border-left:4px solid #e8743b;height:140px;display:flex;flex-direction:column}.note-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px #00000014}.note-title{font-size:16px;font-weight:500;color:#2a2724;margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-content{font-size:13px;color:#888;line-height:1.6;flex:1;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.note-date{font-size:12px;color:#bbb;margin-top:10px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .4s ease}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0000004d}::-webkit-scrollbar-track{background:transparent}
