.login-container{min-height:100vh;display:flex;overflow:hidden;background:#0a0e27;transition:background .3s ease}.login-container[data-theme=dark]{background:#0f0f0f}.login-showcase{flex:1;position:relative;display:flex;align-items:center;justify-content:center;padding:60px;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2);transition:background .3s ease}.showcase-background{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden}.gradient-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.5;animation:float 25s ease-in-out infinite}.orb-1{width:600px;height:600px;background:linear-gradient(135deg,#f093fb,#f5576c);top:-15%;left:-15%;animation-delay:0s}.orb-2{width:500px;height:500px;background:linear-gradient(135deg,#4facfe,#00f2fe);bottom:-15%;right:-15%;animation-delay:8s}.orb-3{width:450px;height:450px;background:linear-gradient(135deg,#43e97b,#38f9d7);top:50%;left:50%;transform:translate(-50%,-50%);animation-delay:16s}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(40px,-40px) scale(1.15)}66%{transform:translate(-30px,30px) scale(.85)}}.showcase-content{position:relative;z-index:1;max-width:600px;width:100%;animation:fadeInLeft .8s ease-out}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.brand-section{text-align:center;margin-bottom:40px}.brand-icon{font-size:64px;margin-bottom:16px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.brand-title{color:#fff!important;font-size:48px!important;font-weight:800!important;margin-bottom:8px!important;text-shadow:0 4px 20px rgba(0,0,0,.2);letter-spacing:-1px}.brand-subtitle{color:#ffffffe6!important;font-size:16px!important;font-weight:300;letter-spacing:2px}.concept-visualization{margin-bottom:30px}.knowledge-graph-demo{background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:20px;border:1px solid rgba(255,255,255,.2);margin-bottom:20px;animation:fadeInUp .8s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.graph-svg{width:100%;height:auto;filter:drop-shadow(0 4px 20px rgba(0,0,0,.15))}.connection-line{stroke:#fff9;stroke-width:2;animation:dashFlow 3s linear infinite}.connection-weak{stroke:#ffffff4d;stroke-width:1.5}@keyframes dashFlow{to{stroke-dashoffset:-10}}.node{transition:all .3s ease;cursor:pointer}.node-center{fill:#faad14;filter:drop-shadow(0 0 10px rgba(250,173,20,.6));animation:pulse 2s ease-in-out infinite}.node-mastered{fill:#52c41a;filter:drop-shadow(0 0 8px rgba(82,196,26,.5));animation:nodeFloat 3s ease-in-out infinite;animation-delay:0s}.node-learning{fill:#1890ff;filter:drop-shadow(0 0 8px rgba(24,144,255,.5));animation:nodeFloat 3s ease-in-out infinite;animation-delay:.5s}.node-review{fill:#ff7875;filter:drop-shadow(0 0 8px rgba(255,120,117,.5));animation:nodeFloat 3s ease-in-out infinite;animation-delay:1s}.node-new{fill:#d9d9d9;filter:drop-shadow(0 0 8px rgba(217,217,217,.5));animation:nodeFloat 3s ease-in-out infinite;animation-delay:1.5s}@keyframes nodeFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.node:hover{transform:scale(1.1)}.node-text{fill:#fff;font-size:12px;font-weight:600;text-anchor:middle;pointer-events:none}.node-text-center{font-size:14px}.highlights-compact{display:flex;justify-content:space-around;gap:16px;animation:fadeInUp 1s ease-out}.highlight-compact-item{display:flex;flex-direction:column;align-items:center;gap:8px;background:#ffffff1a;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:12px;padding:16px 20px;border:1px solid rgba(255,255,255,.2);transition:all .3s ease;animation:fadeInUp .6s ease-out backwards;flex:1}.highlight-compact-item:hover{background:#ffffff26;transform:translateY(-5px)}.highlight-compact-icon{font-size:32px;animation:bounce 2s ease-in-out infinite}.highlight-compact-item:nth-child(1) .highlight-compact-icon{animation-delay:0s}.highlight-compact-item:nth-child(2) .highlight-compact-icon{animation-delay:.2s}.highlight-compact-item:nth-child(3) .highlight-compact-icon{animation-delay:.4s}.highlight-compact-text{color:#fff!important;font-size:14px!important;font-weight:600!important;text-align:center}.showcase-footer{text-align:center;margin-top:40px}.footer-text{color:#fff9!important;font-size:13px!important}.login-form-section{width:480px;background:#fff;display:flex;align-items:center;justify-content:center;padding:60px 50px;box-shadow:-10px 0 40px #0000001a;animation:fadeInRight .8s ease-out;position:relative;transition:background .3s ease,box-shadow .3s ease}[data-theme=dark] .login-form-section{box-shadow:-10px 0 40px #00000080}@keyframes fadeInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}.form-container{width:100%;max-width:380px}.form-header{text-align:center;margin-bottom:40px}.form-title{color:#1a1a1a!important;font-size:32px!important;font-weight:700!important;margin-bottom:8px!important;transition:color .3s ease}.form-subtitle{color:#666!important;font-size:14px!important;line-height:1.6;transition:color .3s ease}.login-tabs,.login-tabs .ant-tabs-nav{margin-bottom:32px}.login-tabs .ant-tabs-tab{font-size:16px;font-weight:500;padding:12px 24px}.login-tabs .ant-tabs-ink-bar{background:linear-gradient(135deg,#667eea,#764ba2);height:3px}.login-form{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.form-input{border-radius:12px;padding:12px 16px;font-size:15px;border:2px solid #e8e8e8;transition:all .3s ease}.form-input:hover{border-color:#d0d0d0}.form-input:focus,.ant-input-affix-wrapper-focused.form-input{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.input-icon{color:#999;font-size:16px}.submit-button{height:50px;font-size:16px;font-weight:600;border-radius:12px;background:linear-gradient(135deg,#667eea,#764ba2);border:none;margin-top:12px;transition:all .3s ease;box-shadow:0 4px 15px #667eea4d}.submit-button:hover{transform:translateY(-2px);box-shadow:0 6px 25px #667eea66}.submit-button:active{transform:translateY(0)}@media (max-width: 1024px){.login-showcase{padding:40px}.brand-title{font-size:48px!important}.features-grid{grid-template-columns:1fr}.login-form-section{width:420px;padding:40px 30px}}@media (max-width: 768px){.login-container{flex-direction:column}.login-showcase{min-height:40vh;padding:30px 20px}.brand-section{margin-bottom:30px}.brand-icon{font-size:60px}.brand-title{font-size:36px!important}.brand-subtitle{font-size:16px!important}.concept-visualization{margin-bottom:20px}.knowledge-graph-demo{padding:15px;margin-bottom:15px}.highlights-compact{flex-direction:column;gap:12px}.login-form-section{width:100%;min-height:60vh;padding:30px 20px}.form-container{max-width:100%}.form-title{font-size:28px!important}}@media (max-width: 480px){.brand-icon{font-size:50px}.brand-title{font-size:32px!important}.form-title{font-size:24px!important}.submit-button{height:46px}}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}.ant-card{border-radius:12px;box-shadow:0 2px 8px #0000000f}.ant-card-hoverable:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px);transition:all .3s ease}.ant-btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);border:none}.ant-btn-primary:hover{background:linear-gradient(135deg,#5568d3,#6a3f8f);box-shadow:0 4px 12px #667eea66}.ant-menu-dark.ant-menu-horizontal>.ant-menu-item-selected{background-color:#fff3}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .5s ease-out}:root{--color-primary: #667eea;--color-secondary: #764ba2;--color-background: #f5f7fa;--color-surface: #ffffff;--color-text: #1a1a1a;--color-text-secondary: #666666;--color-border: #e8e8e8;--color-hover: #f0f0f0;--color-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--color-shadow: rgba(0, 0, 0, .1);--transition-theme: all .3s cubic-bezier(.4, 0, .2, 1)}[data-theme=dark]{--color-primary: #7c3aed;--color-secondary: #a855f7;--color-background: #0f0f0f;--color-surface: #1a1a1a;--color-text: #e5e5e5;--color-text-secondary: #a3a3a3;--color-border: #2a2a2a;--color-hover: #262626;--color-gradient: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);--color-shadow: rgba(0, 0, 0, .5)}body{background-color:var(--color-background);color:var(--color-text);transition:var(--transition-theme)}.theme-card{background-color:var(--color-surface);border:1px solid var(--color-border);transition:var(--transition-theme)}.theme-card:hover{background-color:var(--color-hover);box-shadow:0 4px 12px var(--color-shadow)}.theme-text-primary{color:var(--color-text);transition:var(--transition-theme)}.theme-text-secondary{color:var(--color-text-secondary);transition:var(--transition-theme)}.theme-gradient{background:var(--color-gradient);transition:var(--transition-theme)}.theme-border{border-color:var(--color-border);transition:var(--transition-theme)}.theme-shadow{box-shadow:0 2px 8px var(--color-shadow);transition:var(--transition-theme)}.theme-hover:hover{background-color:var(--color-hover);transition:var(--transition-theme)}[data-theme=dark]{scrollbar-color:#2a2a2a #0f0f0f}[data-theme=dark] ::-webkit-scrollbar{width:8px;height:8px}[data-theme=dark] ::-webkit-scrollbar-track{background:#0f0f0f}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#2a2a2a;border-radius:4px}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#3a3a3a}[data-theme=dark] img{opacity:.9;transition:opacity .3s ease}[data-theme=dark] img:hover{opacity:1}[data-theme=dark] pre,[data-theme=dark] code{background-color:#1a1a1a;border-color:#2a2a2a}::selection{background-color:var(--color-primary);color:#fff}[data-theme=dark] ::selection{background-color:var(--color-primary);color:#fff}@keyframes theme-fade-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.theme-fade-in{animation:theme-fade-in .3s ease-out}@media (max-width: 768px){:root{font-size:14px}}@media print{[data-theme=dark]{--color-background: #ffffff;--color-surface: #ffffff;--color-text: #000000;--color-text-secondary: #666666;--color-border: #e8e8e8}}
