.resume-uploader{width:100%;max-width:600px;margin:0 auto}.resume-uploader .ant-upload-drag{background:var(--bg-primary, #ffffff)!important;border:2px dashed var(--border, #e2e8f0)!important;border-radius:16px!important;padding:2rem;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease!important}.resume-uploader .ant-upload-drag:hover{border-color:var(--primary, #2563eb)!important;background:#2563eb05!important;box-shadow:0 0 0 4px #2563eb0f!important}.resume-uploader .ant-upload-drag-icon .anticon{font-size:3rem!important;color:var(--primary, #2563eb)!important;margin-bottom:.75rem}.resume-uploader .ant-upload-text{font-size:.9375rem!important;font-weight:600!important;color:var(--text-primary, #0f172a)!important;margin-bottom:.375rem!important}.resume-uploader .ant-upload-hint{font-size:.8125rem!important;color:var(--text-muted, #94a3b8)!important}.resume-uploader .ant-upload-list-item{background:var(--bg-secondary, #f8fafc)!important;border:1px solid var(--border, #e2e8f0)!important;border-radius:10px!important;margin-top:.75rem!important;transition:border-color .15s ease,box-shadow .15s ease!important}.resume-uploader .ant-upload-list-item:hover{border-color:var(--border-light, #cbd5e1)!important;box-shadow:0 1px 3px #0000000a!important}.resume-uploader .ant-upload-list-item-name{color:var(--text-primary, #0f172a)!important;font-weight:500}.resume-uploader .ant-upload-list-item-card-actions .anticon{color:var(--text-muted, #94a3b8)!important;transition:color .15s ease}.resume-uploader .ant-upload-list-item-card-actions .anticon:hover{color:var(--danger, #dc2626)!important}.resume-uploader-success{width:100%;max-width:600px;margin:0 auto;border:1px solid rgba(5,150,105,.25)!important;border-radius:16px!important;background:var(--bg-primary, #ffffff)!important;box-shadow:0 0 0 1px #05966914,0 1px 3px #0000000a,0 4px 12px #00000008!important}.resume-uploader-success .ant-card-body{background:transparent!important}.resume-uploader-success .ant-typography{color:var(--text-primary, #0f172a)!important}.resume-uploader-success .ant-typography.ant-typography-secondary{color:var(--text-secondary, #475569)!important}.resume-uploader-success .ant-card{background:var(--bg-secondary, #f8fafc)!important;border:1px solid var(--border, #e2e8f0)!important;border-radius:12px!important}.resume-uploader-success .ant-card .ant-typography{color:var(--text-primary, #0f172a)!important}.resume-uploader-success .ant-card .ant-typography strong{color:var(--text-muted, #94a3b8)!important;font-weight:500}.resume-uploader-success .ant-btn{background:var(--bg-primary, #ffffff)!important;border:1px solid var(--border, #e2e8f0)!important;color:var(--text-primary, #0f172a)!important;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease!important}.resume-uploader-success .ant-btn:hover{background:var(--bg-secondary, #f8fafc)!important;border-color:var(--border-light, #cbd5e1)!important;box-shadow:0 1px 3px #0000000f!important}@media (max-width: 768px){.resume-uploader .ant-upload-drag{padding:1.5rem!important}.resume-uploader .ant-upload-drag-icon .anticon{font-size:2.5rem!important}.resume-uploader .ant-upload-text{font-size:.875rem!important}.resume-uploader .ant-upload-hint{font-size:.8125rem!important}}.interview-setup{position:relative;min-height:100vh;background:#f8fafc;overflow:hidden;display:flex;justify-content:center}.setup-bg-pattern{position:fixed;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,#94a3b8 .6px,transparent .6px);background-size:28px 28px;opacity:.18;pointer-events:none;z-index:0}.setup-bg-glow{position:fixed;pointer-events:none;z-index:0;border-radius:50%}.setup-bg-glow.glow-1{top:-180px;left:30%;width:700px;height:500px;background:radial-gradient(ellipse,rgba(37,99,235,.07) 0%,transparent 70%)}.setup-bg-glow.glow-2{bottom:-200px;right:20%;width:600px;height:500px;background:radial-gradient(ellipse,rgba(124,58,237,.05) 0%,transparent 70%)}.setup-container{position:relative;z-index:1;width:100%;max-width:1080px;padding:2rem 2rem 3rem;display:flex;flex-direction:column;align-items:center}.setup-header{width:100%;display:flex;justify-content:flex-start;padding-bottom:2rem;flex-shrink:0}.brand-logo{display:flex;align-items:center;gap:.625rem}.brand-logo-mark{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;overflow:visible}.brand-logo-img{width:auto;height:40px;object-fit:contain;display:block}.brand-logo-ai-chip{position:absolute;bottom:-4px;right:-6px;background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;font-size:.5rem;font-weight:800;letter-spacing:.04em;padding:1px 5px;border-radius:6px;line-height:1.4;box-shadow:0 1px 4px #2563eb66;border:1.5px solid white;z-index:2}.brand-logo-text{font-size:1.125rem;font-weight:700;color:#0f172a;letter-spacing:-.02em}.steps-container{width:100%;display:flex;justify-content:center;padding-bottom:2rem;flex-shrink:0}.steps-track{display:flex;align-items:center}.step-connector{width:48px;height:2px;background:#e2e8f0;margin:0 .375rem;border-radius:1px;transition:background .4s ease}.step-connector.filled{background:#059669}.step-item{display:flex;align-items:center;gap:.5rem}.step-indicator{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#fff;border:2px solid #e2e8f0;color:#94a3b8;font-size:.875rem;transition:all .3s cubic-bezier(.34,1.56,.64,1);box-shadow:0 1px 3px #0000000a}.step-item.active .step-indicator{background:#2563eb;border-color:#2563eb;color:#fff;box-shadow:0 0 0 4px #2563eb26,0 2px 8px #2563eb33;transform:scale(1.08)}.step-item.completed .step-indicator{background:#059669;border-color:#059669;color:#fff;box-shadow:0 1px 3px #05966933}.step-title{font-size:.8125rem;font-weight:500;color:#94a3b8;transition:color .2s ease;white-space:nowrap}.step-item.active .step-title{color:#0f172a;font-weight:600}.step-item.completed .step-title{color:#475569}.setup-panels{display:grid;grid-template-columns:1fr 380px;gap:1.5rem;width:100%;align-items:stretch}.setup-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;padding:2.5rem;box-shadow:0 0 0 1px #00000005,0 1px 3px #0000000a,0 8px 24px #0000000f;position:relative;overflow:hidden}.setup-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2563eb,#7c3aed,#2563eb);background-size:200% 100%;animation:gradient-shift 4s ease infinite}@keyframes gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.ai-panel{background:linear-gradient(160deg,#eef2ff,#e8eeff,#f3f0ff);border:1px solid #dbeafe;border-radius:20px;padding:2rem 1.5rem;box-shadow:0 0 0 1px #2563eb0a,0 1px 3px #00000008,0 8px 24px #2563eb0f;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;position:relative;overflow:hidden}.ai-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 60% 50% at 30% 40%,rgba(99,102,241,.06) 0%,transparent 60%),radial-gradient(ellipse 50% 50% at 70% 70%,rgba(37,99,235,.05) 0%,transparent 60%);pointer-events:none;animation:shimmer-drift 14s ease-in-out infinite alternate}@keyframes shimmer-drift{0%{transform:translate(0)}to{transform:translate(15px,-10px)}}.ai-seal-container{flex-shrink:0;position:relative;z-index:1}.seal-illustration{display:flex;align-items:center;justify-content:center}.seal-img{width:200px;height:auto;object-fit:contain}.ai-chat-bubble{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:.875rem 1.125rem;max-width:260px;box-shadow:0 2px 12px #0000000f;position:relative;z-index:1;animation:bubble-in .4s cubic-bezier(.34,1.56,.64,1)}.ai-chat-bubble p{margin:0;font-size:.8125rem;line-height:1.55;color:#334155;font-weight:450}.ai-chat-pointer{position:absolute;top:-7px;left:50%;transform:translate(-50%);width:14px;height:7px;overflow:hidden}.ai-chat-pointer:before{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%) rotate(45deg);width:10px;height:10px;background:#fff;border:1px solid #e2e8f0;border-radius:2px}@keyframes bubble-in{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-features{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;position:relative;z-index:1}.ai-feature-pill{display:flex;align-items:center;gap:.375rem;padding:.3125rem .625rem;background:#ffffffd9;border:1px solid rgba(37,99,235,.12);border-radius:100px;font-size:.6875rem;font-weight:600;color:#475569}.ai-feature-pill .anticon{font-size:.6875rem;color:#2563eb}.step-content{display:flex;flex-direction:column;align-items:flex-start;text-align:left;animation:step-enter .3s ease}@keyframes step-enter{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:translate(0)}}.step-icon-large{width:48px;height:48px;background:linear-gradient(135deg,#eff6ff,#dbeafe);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#2563eb;margin-bottom:1rem}.step-icon-large.ready{background:linear-gradient(135deg,#ecfdf5,#d1fae5);color:#059669}.step-content h2{font-size:1.5rem;font-weight:700;margin:0 0 .375rem;letter-spacing:-.025em;line-height:1.25;color:#0f172a}.step-description{font-size:.9375rem;color:#64748b;margin:0 0 1.75rem;line-height:1.5}.setup-form{width:100%}.setup-form .ant-form-item{margin-bottom:1rem}.setup-form .ant-input-affix-wrapper{height:48px;background:#fff!important;border:1.5px solid #e2e8f0!important;border-radius:12px!important;padding:0 .875rem;box-shadow:none!important;transition:border-color .2s ease,box-shadow .2s ease!important}.setup-form .ant-input-affix-wrapper:hover{border-color:#cbd5e1!important}.setup-form .ant-input-affix-wrapper:focus,.setup-form .ant-input-affix-wrapper-focused{border-color:#2563eb!important;box-shadow:0 0 0 3px #2563eb1a!important}.setup-form .ant-input{font-size:.9375rem;font-weight:450;background:transparent!important;border:none!important;box-shadow:none!important;color:#0f172a!important}.setup-form .ant-input::placeholder{color:#94a3b8!important;font-weight:400}.setup-form .ant-input-prefix{margin-right:.625rem;font-size:.9375rem;color:#94a3b8!important;transition:color .15s ease}.setup-form .ant-input-affix-wrapper-focused .ant-input-prefix{color:#2563eb!important}.topic-pills{display:flex;flex-wrap:wrap;gap:.5rem;width:100%;margin-bottom:1.75rem}.topic-pill{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#fff;border:1.5px solid #e2e8f0;border-radius:100px;cursor:pointer;font-family:inherit;font-size:.8125rem;font-weight:500;color:#334155;transition:all .2s ease;outline:none;white-space:nowrap}.topic-pill:hover{border-color:#93c5fd;background:#f0f7ff;transform:translateY(-1px);box-shadow:0 2px 8px #2563eb14}.topic-pill:active{transform:scale(.97)}.topic-pill.selected{background:linear-gradient(135deg,#2563eb,#4f46e5);border-color:transparent;color:#fff;box-shadow:0 2px 8px #2563eb40}.topic-pill-icon{display:flex;align-items:center;font-size:.875rem}.topic-pill.selected .topic-pill-icon{color:#fff}.topic-pill-check{font-size:.75rem;margin-left:-.125rem;animation:check-pop .25s cubic-bezier(.34,1.56,.64,1)}@keyframes check-pop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.resume-upload-area{width:100%;margin-bottom:1.25rem}.upload-success{display:flex;align-items:center;gap:.5rem;padding:.625rem .875rem;background:#0596690f;border:1px solid rgba(5,150,105,.2);border-radius:10px;color:#059669;font-size:.8125rem;font-weight:500;margin-bottom:1rem}.info-box{display:flex;align-items:flex-start;gap:.625rem;padding:.75rem .875rem;background:#f0f4ff;border:1px solid #dbeafe;border-radius:10px;color:#475569;font-size:.8125rem;text-align:left;margin-bottom:1.75rem;line-height:1.5}.info-box .anticon{color:#2563eb;font-size:.875rem;margin-top:2px;flex-shrink:0}.summary-card{width:100%;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.5rem}.summary-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f1f5f9}.summary-row:last-child{border-bottom:none;padding-bottom:0}.summary-row:first-child{padding-top:0}.summary-label{font-size:.8125rem;color:#94a3b8;font-weight:500}.summary-value{font-weight:600;font-size:.8125rem;color:#0f172a}.summary-value.highlight{color:#2563eb}.badge{display:inline-flex;align-items:center;padding:.1875rem .625rem;background:#f1f5f9;border-radius:100px;font-size:.6875rem;font-weight:600;color:#475569}.badge.success{background:#05966914;color:#059669}.badge.neutral{background:#f1f5f9;color:#94a3b8}.tips-card{width:100%;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.75rem;text-align:left}.tips-card h4{margin:0 0 .5rem;font-size:.8125rem;font-weight:700;color:#0f172a}.tips-card ul{margin:0;padding-left:1.125rem;color:#475569;font-size:.8125rem;line-height:1.6}.tips-card li{margin-bottom:.125rem}.tips-card li:last-child{margin-bottom:0}.step-actions{display:flex;align-items:center;gap:.625rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:12px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease;border:none;outline:none;font-family:inherit}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;box-shadow:0 1px 3px #2563eb33,0 4px 12px #2563eb26}.btn-primary:hover:not(:disabled){box-shadow:0 2px 6px #2563eb40,0 8px 20px #2563eb33;transform:translateY(-1px)}.btn-secondary{background:#fff;color:#0f172a;border:1.5px solid #e2e8f0}.btn-secondary:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.btn-ghost{background:transparent;color:#64748b}.btn-ghost:hover{color:#2563eb;background:#f0f4ff}.btn-large{padding:.75rem 2rem;font-size:.9375rem;border-radius:14px}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.5rem;padding:3rem 0;min-height:300px}.loading-state p{color:#475569;font-size:.9375rem}.error-toast{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#fff;border:1px solid rgba(220,38,38,.2);border-radius:12px;color:#dc2626;font-size:.8125rem;font-weight:500;z-index:100;box-shadow:0 8px 24px #0000001a;animation:toast-in .3s cubic-bezier(.34,1.56,.64,1)}.error-toast button{background:none;border:none;color:#dc2626;font-size:1.125rem;cursor:pointer;opacity:.5;padding:0;line-height:1}.error-toast button:hover{opacity:1}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(16px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media (max-width: 900px){.setup-panels{grid-template-columns:1fr}.ai-panel{order:-1;flex-direction:row;gap:1rem;padding:1.25rem}.seal-img{width:120px}.ai-features{display:none}.ai-chat-bubble{max-width:200px}.ai-chat-pointer{left:-7px;top:50%;transform:translateY(-50%);width:7px;height:14px}.ai-chat-pointer:before{left:4px;top:2px;bottom:auto;transform:rotate(45deg)}.setup-container{padding:1.5rem}.setup-card{padding:1.75rem}}@media (max-width: 640px){.setup-container{padding:1rem}.setup-card{padding:1.5rem;border-radius:16px}.ai-panel{border-radius:16px}.step-title{display:none}.step-content h2{font-size:1.25rem}.topic-pills{gap:.375rem}.topic-pill{font-size:.75rem;padding:.4rem .75rem}.step-actions{flex-direction:column;width:100%}.btn{width:100%}}@media (min-width: 1200px){.setup-panels{grid-template-columns:1fr 400px}}@media (min-width: 1600px){.setup-container{max-width:1140px}}.interview-room{--ir-primary: #2563eb;--ir-primary-light: #3b82f6;--ir-primary-dark: #1d4ed8;--ir-success: #059669;--ir-danger: #dc2626;--ir-warning: #d97706;--ir-bg-page: #f8fafc;--ir-bg-card: #ffffff;--ir-bg-secondary: #f1f5f9;--ir-text-primary: #0f172a;--ir-text-secondary: #475569;--ir-text-muted: #94a3b8;--ir-border: #e2e8f0;--ir-border-light: #cbd5e1;--ir-ai-color: #2563eb;--ir-user-color: #059669}.interview-room{position:relative;height:100vh;background:var(--ir-bg-page);color:var(--ir-text-primary);font-family:Inter,system-ui,-apple-system,sans-serif;overflow:hidden}.interview-room-bg{display:none}.interview-room-container{position:relative;max-width:1400px;margin:0 auto;height:100vh;display:flex;flex-direction:column;padding:1rem 1.5rem}.interview-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;background:var(--ir-bg-card);border-radius:12px;border:1px solid var(--ir-border);margin-bottom:1rem;box-shadow:0 0 0 1px #00000005,0 1px 3px #0000000a;flex-shrink:0}.header-left{display:flex;align-items:center;gap:.875rem}.interview-room .logo-icon{width:40px;height:40px;background:var(--ir-primary);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:#fff}.header-info h1{margin:0;font-size:1.125rem;font-weight:600;color:var(--ir-text-primary);letter-spacing:-.01em}.topic-tag{font-size:.75rem;color:var(--ir-text-muted);text-transform:capitalize}.header-right{display:flex;align-items:center;gap:.75rem}.duration-badge{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:var(--ir-bg-secondary);border-radius:8px;font-size:.8125rem;font-weight:500;font-variant-numeric:tabular-nums;color:var(--ir-text-secondary)}.status-indicator{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:8px;font-size:.8125rem;font-weight:500}.status-indicator.connected{background:#05966914;color:var(--ir-success)}.status-indicator.disconnected{background:var(--ir-bg-secondary);color:var(--ir-text-muted)}.transcript-status{display:flex;align-items:center;padding:.375rem;border-radius:8px;font-size:.8125rem}.transcript-status.active{background:#05966914}.transcript-status.inactive{background:#d9770614}.error-banner{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1.25rem;background:#dc26260f;border:1px solid rgba(220,38,38,.2);border-radius:10px;margin-bottom:1rem;color:var(--ir-danger);font-size:.875rem;flex-shrink:0}.error-banner button{background:none;border:none;color:var(--ir-danger);font-size:1.125rem;cursor:pointer;opacity:.6;transition:opacity .15s}.error-banner button:hover{opacity:1}.interview-content{flex:1;display:grid;grid-template-columns:300px 1fr;gap:1rem;min-height:0;overflow:hidden}.ai-panel{background:var(--ir-bg-card);border-radius:12px;border:1px solid var(--ir-border);padding:1.5rem;display:flex;flex-direction:column;align-items:center;box-shadow:0 0 0 1px #00000005,0 1px 3px #0000000a,0 4px 12px #00000008;overflow-y:auto}.ai-avatar{position:relative;width:120px;height:120px;margin-bottom:1.25rem}.avatar-inner{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--ir-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:#fff;z-index:2;transition:transform .3s ease}.ai-avatar.speaking .avatar-inner{transform:scale(1.05)}.avatar-rings{position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;pointer-events:none}.ring{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid var(--ir-primary);border-radius:50%;opacity:0;animation:ring-pulse 2s ease-out infinite}.ai-avatar.speaking .ring{animation:ring-pulse 1.5s ease-out infinite}.ring-1{animation-delay:0s}.ring-2{animation-delay:.5s}.ring-3{animation-delay:1s}@keyframes ring-pulse{0%{transform:scale(.8);opacity:.6}to{transform:scale(1.4);opacity:0}}.speaking-indicator{position:absolute;bottom:-24px;left:50%;transform:translate(-50%);display:flex;align-items:flex-end;gap:3px;height:18px}.speaking-indicator .wave{width:3px;height:3px;background:var(--ir-primary-light);border-radius:2px;animation:wave .6s ease-in-out infinite}.speaking-indicator .wave:nth-child(1){animation-delay:0s}.speaking-indicator .wave:nth-child(2){animation-delay:.1s}.speaking-indicator .wave:nth-child(3){animation-delay:.2s}.speaking-indicator .wave:nth-child(4){animation-delay:.1s}.speaking-indicator .wave:nth-child(5){animation-delay:0s}@keyframes wave{0%,to{height:3px}50%{height:18px}}.ai-status{text-align:center;margin-bottom:1.5rem}.ai-status h3{margin:0 0 .375rem;font-size:1rem;font-weight:600;color:var(--ir-text-primary)}.ai-status p{margin:0;font-size:.8125rem;color:var(--ir-text-secondary)}.ai-status .status-active{color:var(--ir-success)}.ai-status .status-waiting{color:var(--ir-text-muted)}.user-audio-section{width:100%;margin-top:auto;padding-top:1.5rem;border-top:1px solid var(--ir-border)}.section-label{font-size:.6875rem;font-weight:600;color:var(--ir-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem}.audio-visualizer-container{background:var(--ir-bg-secondary);border-radius:8px;padding:.75rem;height:52px}.audio-bar{display:flex;align-items:flex-end;justify-content:center;gap:2px;height:100%}.audio-bar .bar{width:3px;background:linear-gradient(to top,var(--ir-user-color),var(--ir-primary-light));border-radius:2px;transition:height .1s ease;animation:bar-idle 1s ease-in-out infinite}.audio-bar.muted .bar{background:var(--ir-text-muted);height:10%!important;animation:none}@keyframes bar-idle{0%,to{opacity:.3}50%{opacity:.6}}.muted-label{display:block;text-align:center;font-size:.6875rem;color:var(--ir-warning);margin-top:.375rem}.transcript-panel{background:var(--ir-bg-card);border-radius:12px;border:1px solid var(--ir-border);display:flex;flex-direction:column;min-height:0;overflow:hidden;box-shadow:0 0 0 1px #00000005,0 1px 3px #0000000a,0 4px 12px #00000008}.transcript-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--ir-border);flex-shrink:0}.transcript-header h2{margin:0;font-size:.9375rem;font-weight:600;color:var(--ir-text-primary)}.message-count{font-size:.6875rem;color:var(--ir-text-muted);background:var(--ir-bg-secondary);padding:.1875rem .625rem;border-radius:10px;font-weight:500}.transcript-messages{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:.875rem}.empty-state,.waiting-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem}.empty-icon{font-size:2.5rem;margin-bottom:.875rem}.empty-state h3,.waiting-state h3{margin:0 0 .375rem;font-size:1.125rem;font-weight:600;color:var(--ir-text-primary)}.empty-state p,.waiting-state p{margin:0;color:var(--ir-text-secondary);font-size:.875rem}.waiting-state{gap:.875rem}.message{display:flex;gap:.75rem;animation:message-in .25s ease}@keyframes message-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.message-avatar{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.875rem;flex-shrink:0}.ai-message .message-avatar{background:var(--ir-ai-color);color:#fff}.user-message .message-avatar{background:var(--ir-user-color);color:#fff}.message-content{flex:1;min-width:0}.message-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.message-sender{font-size:.8125rem;font-weight:600}.ai-message .message-sender{color:var(--ir-primary)}.user-message .message-sender{color:var(--ir-success)}.message-time{font-size:.6875rem;color:var(--ir-text-muted)}.message-text{font-size:.875rem;line-height:1.6;color:var(--ir-text-primary);background:var(--ir-bg-secondary);padding:.75rem 1rem;border-radius:3px 10px 10px}.user-message .message-text{background:#2563eb0f;border-top-left-radius:10px;border-top-right-radius:3px}.message.interim .message-text{opacity:.6;font-style:italic}.typing-indicator{font-size:.6875rem;color:var(--ir-text-muted);animation:blink 1s ease-in-out infinite}@keyframes blink{0%,to{opacity:.4}50%{opacity:1}}.interview-controls{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--ir-bg-card);border-radius:12px;border:1px solid var(--ir-border);margin-top:1rem;flex-shrink:0;box-shadow:0 0 0 1px #00000005,0 1px 3px #0000000a}.control-buttons{display:flex;gap:.75rem}.interview-room .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.25rem;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease,transform .1s ease;border:none;outline:none;font-family:inherit}.interview-room .btn:active:not(:disabled){transform:scale(.97)}.interview-room .btn:disabled{opacity:.5;cursor:not-allowed}.interview-room .btn-large{padding:.75rem 1.75rem;font-size:.9375rem}.interview-room .btn-primary{background:var(--ir-primary);color:#fff;box-shadow:0 1px 2px #2563eb33,0 2px 8px #2563eb26}.interview-room .btn-primary:hover:not(:disabled){background:var(--ir-primary-dark);box-shadow:0 2px 4px #2563eb40,0 4px 14px #2563eb33;transform:translateY(-1px)}.interview-room .btn-primary:active:not(:disabled){transform:translateY(0) scale(.97)}.interview-room .btn-secondary{background:var(--ir-bg-card);color:var(--ir-text-primary);border:1px solid var(--ir-border);box-shadow:0 1px 2px #0000000a}.interview-room .btn-secondary:hover:not(:disabled){background:var(--ir-bg-secondary);border-color:var(--ir-border-light);box-shadow:0 1px 3px #0000000f}.interview-room .btn-secondary.btn-muted{background:#d9770614;border-color:var(--ir-warning);color:var(--ir-warning)}.interview-room .btn-danger{background:var(--ir-danger);color:#fff;box-shadow:0 1px 2px #dc262633,0 2px 8px #dc262626}.interview-room .btn-danger:hover:not(:disabled){background:#b91c1c;box-shadow:0 2px 4px #dc262640,0 4px 14px #dc262633;transform:translateY(-1px)}.interview-room .btn-danger:active:not(:disabled){transform:translateY(0) scale(.97)}.controls-hint{font-size:.6875rem;color:var(--ir-text-muted)}@media (max-width: 900px){.interview-content{grid-template-columns:1fr}.ai-panel{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:1rem;padding:1.25rem}.ai-avatar{width:80px;height:80px;margin-bottom:0}.avatar-inner{font-size:1.75rem}.user-audio-section{width:100%;padding-top:.75rem;margin-top:0;border-top:none}}@media (max-width: 600px){.interview-room-container{padding:.75rem}.interview-header{flex-direction:column;gap:.75rem;text-align:center}.header-left,.header-right{justify-content:center}.control-buttons{flex-direction:column;width:100%}.interview-room .btn{width:100%}}@media (min-width: 1921px){.interview-room-container{max-width:1600px}}.transcript-messages::-webkit-scrollbar{width:5px}.transcript-messages::-webkit-scrollbar-track{background:transparent;border-radius:3px}.transcript-messages::-webkit-scrollbar-thumb{background:var(--ir-border);border-radius:3px}.transcript-messages::-webkit-scrollbar-thumb:hover{background:var(--ir-border-light)}.feedback-page{position:relative;min-height:100vh;background:var(--bg-secondary, #f8fafc);color:var(--text-primary, #0f172a);overflow-x:hidden}.feedback-bg,.bg-orb{display:none}.feedback-container{position:relative;max-width:880px;margin:0 auto;padding:2rem 2rem 4rem}.loading-container,.error-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem;background:var(--bg-secondary, #f8fafc)}.loading-animation{position:relative;width:100px;height:100px;margin-bottom:2rem}.loading-ring{position:absolute;top:0;right:0;bottom:0;left:0;border:3px solid var(--border, #e2e8f0);border-top-color:var(--primary, #2563eb);border-radius:50%;animation:spin 1s linear infinite}.loading-icon{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--primary, #2563eb)}@keyframes spin{to{transform:rotate(360deg)}}.loading-container h2,.error-container h2{font-size:1.375rem;font-weight:700;margin:0 0 .5rem;color:var(--text-primary, #0f172a);letter-spacing:-.02em}.loading-container p,.error-container p{color:var(--text-secondary, #475569);font-size:.9375rem;margin:0}.error-icon{font-size:3rem;margin-bottom:1.5rem}.error-container .btn{margin-top:2rem}.feedback-header{text-align:center;padding:1.5rem 0 2.5rem}.completion-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.375rem 1rem;background:var(--success-bg, rgba(5, 150, 105, .08));border:1px solid rgba(5,150,105,.2);border-radius:100px;color:var(--success, #059669);font-size:.8125rem;font-weight:600;margin-bottom:1.25rem;letter-spacing:.01em}.feedback-header h1{font-size:2.25rem;font-weight:800;margin:0 0 .5rem;color:var(--text-primary, #0f172a);letter-spacing:-.03em;line-height:1.15;background:none;-webkit-background-clip:unset;-webkit-text-fill-color:unset;background-clip:unset}.feedback-header p{font-size:1rem;color:var(--text-secondary, #475569);margin:0}.score-hero{display:flex;flex-direction:column;align-items:center;padding:1.5rem 0 2.5rem}.score-circle{position:relative;width:180px;height:180px;margin-bottom:1.25rem;filter:drop-shadow(0 4px 16px rgba(0,0,0,.06))}.score-circle svg{transform:rotate(-90deg);width:100%;height:100%}.score-bg{fill:none;stroke:var(--border, #e2e8f0);stroke-width:8}.score-progress{fill:none;stroke-width:8;stroke-linecap:round;transition:stroke-dasharray 1.2s cubic-bezier(.4,0,.2,1)}.score-value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.score-number{font-size:3rem;font-weight:800;color:var(--score-color);line-height:1;letter-spacing:-.03em}.score-max{font-size:1.125rem;color:var(--text-muted, #94a3b8);font-weight:500}.score-info{display:flex;flex-direction:column;align-items:center;gap:.375rem}.score-emoji{font-size:1.75rem}.score-label{font-size:1.125rem;font-weight:700;letter-spacing:-.01em}.feedback-tabs{display:flex;justify-content:center;gap:.25rem;padding:.375rem;background:var(--bg-primary, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:14px;margin-bottom:2rem;box-shadow:0 1px 2px #00000008,0 1px 3px #0000000a}.tab-btn{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:transparent;border:none;border-radius:10px;color:var(--text-muted, #94a3b8);font-size:.875rem;font-weight:500;cursor:pointer;transition:color .15s ease,background .15s ease,box-shadow .15s ease;font-family:inherit;position:relative}.tab-btn:hover{color:var(--text-primary, #0f172a);background:var(--bg-tertiary, #f1f5f9)}.tab-btn.active{background:var(--primary, #2563eb);color:#fff;box-shadow:0 1px 3px #2563eb4d,0 4px 12px #2563eb26}.tab-btn .anticon{font-size:.875rem}.tab-content{animation:feedbackFadeIn .25s ease}@keyframes feedbackFadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.summary-tab{display:flex;flex-direction:column;gap:1.25rem}.feedback-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:16px;padding:1.5rem;box-shadow:0 0 0 1px #00000005,0 1px 2px #00000008,0 4px 12px #0000000a;transition:box-shadow .2s ease,border-color .2s ease}.feedback-card:hover{box-shadow:0 0 0 1px #00000005,0 2px 4px #0000000a,0 8px 20px #0000000f;border-color:var(--border-light, #cbd5e1)}.card-header{display:flex;align-items:center;gap:.875rem;margin-bottom:1.25rem}.card-icon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.125rem;flex-shrink:0}.card-icon.success{background:var(--success-bg, rgba(5, 150, 105, .08));color:var(--success, #059669)}.card-icon.primary{background:#2563eb14;color:var(--primary, #2563eb)}.card-icon.info{background:#06b6d414;color:#0891b2}.card-header h3{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary, #0f172a);letter-spacing:-.01em}.feedback-list{list-style:none;margin:0;padding:0}.feedback-list li{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 0;border-bottom:1px solid var(--border, #e2e8f0);color:var(--text-secondary, #475569);font-size:.9375rem;line-height:1.6}.feedback-list li:last-child{border-bottom:none;padding-bottom:0}.feedback-list li:first-child{padding-top:0}.feedback-list li.empty{color:var(--text-muted, #94a3b8);font-style:italic}.list-icon{font-weight:700;flex-shrink:0;margin-top:.125rem}.strengths .list-icon{color:var(--success, #059669)}.improvements .list-icon{color:var(--primary, #2563eb)}.detailed-text{color:var(--text-secondary, #475569);font-size:.9375rem;line-height:1.75;margin:0}.scores-tab{display:flex;flex-direction:column;gap:1.25rem}.score-category{background:var(--bg-primary, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:16px;padding:1.5rem;box-shadow:0 0 0 1px #00000005,0 1px 2px #00000008,0 4px 12px #0000000a}.score-category h3{display:flex;align-items:center;gap:.625rem;margin:0 0 1.5rem;font-size:.9375rem;font-weight:700;color:var(--text-primary, #0f172a);letter-spacing:-.01em}.score-category h3 .anticon{color:var(--primary, #2563eb);font-size:1rem}.score-bars{display:flex;flex-direction:column;gap:1.25rem}.score-bar-item{display:flex;flex-direction:column;gap:.5rem}.score-bar-header{display:flex;justify-content:space-between;align-items:center}.score-bar-label{font-size:.8125rem;font-weight:500;color:var(--text-secondary, #475569)}.score-bar-value{font-size:.8125rem;font-weight:700;font-variant-numeric:tabular-nums}.score-bar-track{height:8px;background:var(--bg-tertiary, #f1f5f9);border-radius:100px;overflow:hidden;border:1px solid rgba(0,0,0,.03)}.score-bar-fill{height:100%;border-radius:100px;transition:width 1s cubic-bezier(.4,0,.2,1)}.empty-scores{text-align:center;padding:3rem 2rem;color:var(--text-muted, #94a3b8);font-size:.9375rem}.next-tab{display:flex;flex-direction:column;gap:1.5rem}.next-steps-card{background:var(--bg-primary, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:16px;padding:1.5rem;box-shadow:0 0 0 1px #00000005,0 1px 2px #00000008,0 4px 12px #0000000a}.steps-list{list-style:none;margin:0;padding:0}.steps-list li{display:flex;align-items:flex-start;gap:1rem;padding:.875rem 0;border-bottom:1px solid var(--border, #e2e8f0)}.steps-list li:last-child{border-bottom:none;padding-bottom:0}.steps-list li:first-child{padding-top:0}.step-number{width:30px;height:30px;background:var(--primary, #2563eb);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.8125rem;font-weight:700;color:#fff;flex-shrink:0}.step-text{color:var(--text-secondary, #475569);font-size:.9375rem;line-height:1.6;padding-top:.25rem}.cta-section{text-align:center;padding:2rem;background:var(--bg-primary, #ffffff);border:1px solid var(--border, #e2e8f0);border-radius:16px;box-shadow:0 0 0 1px #00000005,0 1px 2px #00000008}.cta-section p{margin:0 0 1.25rem;color:var(--text-secondary, #475569);font-size:1rem}.feedback-page .btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:background .15s ease,box-shadow .15s ease,transform .1s ease;border:none;outline:none;font-family:inherit}.feedback-page .btn:active{transform:scale(.98)}.feedback-page .btn-primary{background:var(--primary, #2563eb);color:#fff;box-shadow:0 1px 2px #2563eb33,0 2px 8px #2563eb26}.feedback-page .btn-primary:hover{background:var(--primary-dark, #1d4ed8);box-shadow:0 2px 4px #2563eb40,0 4px 14px #2563eb33;transform:translateY(-1px)}.feedback-page .btn-primary:active{transform:translateY(0) scale(.98)}.feedback-page .btn-large{padding:.875rem 2rem;font-size:.9375rem;border-radius:12px}@media (max-width: 640px){.feedback-container{padding:1rem 1rem 3rem}.feedback-header{padding:1rem 0 2rem}.feedback-header h1{font-size:1.625rem}.score-circle{width:150px;height:150px}.score-number{font-size:2.5rem}.feedback-tabs{flex-direction:column;padding:.375rem}.tab-btn{justify-content:center;width:100%;padding:.75rem}.feedback-card,.score-category,.next-steps-card{padding:1.25rem;border-radius:14px}.cta-section{padding:1.5rem;border-radius:14px}}@media (min-width: 1441px){.feedback-container{max-width:960px}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);position:relative;overflow:hidden;padding:2rem}.login-bg-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,var(--border) 1px,transparent 1px);background-size:28px 28px;opacity:.45;pointer-events:none}.login-bg-glow{position:absolute;border-radius:50%;filter:blur(100px);pointer-events:none}.login-bg-glow.glow-1{width:500px;height:500px;background:#2563eb14;top:-120px;right:-100px}.login-bg-glow.glow-2{width:400px;height:400px;background:#8b5cf60f;bottom:-100px;left:-80px}.login-container{position:relative;z-index:1;width:100%;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:2rem}.login-brand{text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.login-logo-mark{width:56px;height:56px;border-radius:16px;background:linear-gradient(135deg,#2563eb,#1d4ed8);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #2563eb40,0 1px 3px #0000000f;margin-bottom:.25rem}.login-logo-svg{width:32px;height:32px}.login-brand-title{font-size:1.5rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em;margin:0}.login-brand-subtitle{font-size:.875rem;color:var(--text-secondary);margin:0}.login-card{width:100%;background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:2rem;position:relative;overflow:hidden;animation:loginSlideUp .5s ease}.login-card-accent{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,#2563eb,#7c3aed,#2563eb);background-size:200% 100%;animation:loginAccentShimmer 4s ease-in-out infinite}.login-card-header{text-align:center;margin-bottom:1.5rem}.login-card-header h2{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.login-card-header p{font-size:.8125rem;color:var(--text-muted);margin:0}.login-card .ant-form-item{margin-bottom:1rem}.login-card .ant-input-affix-wrapper{padding:10px 14px;border-radius:var(--radius-md)!important;background:var(--bg-secondary)!important;border:1.5px solid var(--border)!important;transition:all .2s ease}.login-card .ant-input-affix-wrapper:hover{border-color:var(--primary)!important}.login-card .ant-input-affix-wrapper-focused,.login-card .ant-input-affix-wrapper:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px #2563eb1a!important;background:var(--bg-primary)!important}.login-card .ant-input-prefix{margin-right:10px;color:var(--text-muted)!important;font-size:1rem}.login-btn{width:100%;height:48px;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:.9375rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:.5rem;transition:all .2s ease;box-shadow:0 2px 8px #2563eb40}.login-btn:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 16px #2563eb59;transform:translateY(-1px)}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.login-footer{margin-top:1.5rem;display:flex;justify-content:center}.login-secure-badge{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-muted)}.login-secure-badge .anticon{font-size:.6875rem}@keyframes loginSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes loginAccentShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@media (max-width: 480px){.login-page{padding:1.5rem 1rem}.login-card{padding:1.5rem}.login-brand-title{font-size:1.25rem}}.jd-upload{max-width:640px;margin:0 auto}.jd-upload-header{text-align:center;margin-bottom:1.5rem}.jd-upload-icon{width:48px;height:48px;border-radius:14px;background:#2563eb14;color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:1.25rem;margin:0 auto .75rem}.jd-upload-header h2{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.jd-upload-header p{font-size:.8125rem;color:var(--text-muted);margin:0}.jd-tab-content{padding-top:.5rem}.jd-textarea-wrapper{position:relative}.jd-textarea{width:100%;min-height:280px;padding:1rem;border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);font-size:.875rem;line-height:1.6;resize:vertical;transition:border-color .2s ease}.jd-textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2563eb1a}.jd-textarea::placeholder{color:var(--text-muted)}.jd-textarea:disabled{opacity:.6}.jd-char-count{position:absolute;bottom:.5rem;right:.75rem;font-size:.6875rem;color:var(--text-muted)}.jd-analyze-btn{width:100%;height:48px;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:.9375rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;transition:all .2s ease;box-shadow:0 2px 8px #2563eb40}.jd-analyze-btn:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 4px 16px #2563eb59;transform:translateY(-1px)}.jd-analyze-btn:disabled{opacity:.5;cursor:not-allowed}.jd-dragger-content{padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}.jd-dragger-text{font-size:.9375rem;font-weight:500;color:var(--text-primary);margin:0}.jd-dragger-hint{font-size:.75rem;color:var(--text-muted);margin:0}.jd-details{max-width:800px;margin:0 auto}.jd-details-topbar{display:flex;justify-content:space-between;margin-bottom:1.5rem}.jd-back-btn,.jd-delete-btn{display:flex;align-items:center;gap:.375rem;padding:.5rem .875rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;transition:all .15s ease}.jd-back-btn:hover{border-color:var(--primary);color:var(--primary)}.jd-delete-btn:hover{border-color:var(--danger-light);color:var(--danger);background:var(--danger-bg)}.jd-details-header{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1rem;box-shadow:var(--shadow-sm)}.jd-details-header h1{font-size:1.375rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.jd-header-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.jd-meta-tag{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .625rem;border-radius:20px;background:var(--bg-tertiary);color:var(--text-secondary);font-size:.75rem;font-weight:500}.jd-seniority{background:#2563eb14;color:var(--primary);text-transform:capitalize}.jd-remote{background:#05966914;color:var(--success);text-transform:capitalize}.jd-summary{font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin:0}.jd-tech-stack{font-size:.8125rem;color:var(--text-secondary);margin:.5rem 0 0}.jd-section{background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;margin-bottom:.75rem;box-shadow:var(--shadow-xs)}.jd-section h3{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0 0 .75rem;display:flex;align-items:center;gap:.375rem}.jd-section h3 .anticon{color:var(--primary);font-size:.875rem}.jd-section-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.jd-section-half{margin-bottom:0}.jd-dealbreakers{border-color:#dc262633;background:#dc262605}.jd-dealbreakers h3 .anticon{color:var(--danger)}.jd-tag-list{display:flex;flex-wrap:wrap;gap:.375rem}.jd-tag{padding:.25rem .625rem;border-radius:6px;font-size:.75rem;font-weight:500}.jd-tag-danger{background:#dc262614;color:var(--danger);border:1px solid rgba(220,38,38,.15)}.jd-tag-cert{background:#2563eb0f;color:var(--primary);border:1px solid rgba(37,99,235,.12)}.jd-skill-list{display:flex;flex-wrap:wrap;gap:.375rem}.jd-skill-chip{display:inline-flex;align-items:center;gap:.375rem;padding:.3rem .625rem;border-radius:6px;font-size:.75rem}.jd-skill-chip.required{background:#2563eb0f;border:1px solid rgba(37,99,235,.15)}.jd-skill-chip.preferred{background:var(--bg-tertiary);border:1px dashed var(--border)}.jd-skill-name{font-weight:500;color:var(--text-primary)}.jd-skill-level{font-size:.625rem;padding:.1rem .375rem;border-radius:4px;font-weight:600;text-transform:uppercase}.jd-skill-level.expert{background:#dc262614;color:var(--danger)}.jd-skill-level.advanced{background:#2563eb14;color:var(--primary)}.jd-skill-level.intermediate{background:#d9770614;color:var(--warning)}.jd-skill-level.beginner{background:#05966914;color:var(--success)}.jd-responsibilities{padding-left:1.25rem;margin:0}.jd-responsibilities li{font-size:.8125rem;color:var(--text-secondary);line-height:1.7;margin-bottom:.25rem}.jd-info-block{display:flex;gap:.5rem;font-size:.8125rem;color:var(--text-secondary);margin-bottom:.375rem}.jd-info-label{font-weight:600;color:var(--text-primary);white-space:nowrap}.jd-info-list{padding-left:1.25rem;margin:.5rem 0 0}.jd-info-list li{font-size:.8125rem;color:var(--text-secondary);line-height:1.6}.jd-strict-badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.6875rem;font-weight:600}.jd-strict-badge.strict{background:#dc262614;color:var(--danger)}.jd-strict-badge.flexible{background:#05966914;color:var(--success)}.jd-focus-areas{display:flex;flex-direction:column;gap:.5rem}.jd-focus-area{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.jd-focus-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.625rem .75rem;border:none;background:var(--bg-secondary);color:var(--text-primary);font-size:.8125rem;font-weight:600;font-family:var(--font-sans);cursor:pointer;transition:background .1s ease}.jd-focus-header:hover{background:var(--bg-tertiary)}.jd-focus-title{display:flex;align-items:center;gap:.5rem}.jd-focus-title .anticon{font-size:.625rem;color:var(--text-muted)}.jd-priority-badge{font-size:.6875rem;font-weight:600;text-transform:uppercase}.jd-focus-body{padding:.75rem}.jd-focus-rationale{font-size:.8125rem;color:var(--text-secondary);margin:0 0 .5rem;font-style:italic}.jd-suggested-questions{font-size:.8125rem}.jd-suggested-questions strong{color:var(--text-primary);font-size:.75rem}.jd-suggested-questions ul{padding-left:1.25rem;margin:.25rem 0 0}.jd-suggested-questions li{color:var(--text-secondary);line-height:1.6}.jd-factors{display:flex;flex-direction:column;gap:.5rem}.jd-factor{padding:.625rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm)}.jd-factor-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.jd-factor-name{font-size:.8125rem;font-weight:600;color:var(--text-primary)}.jd-importance-badge{font-size:.6875rem;font-weight:600;text-transform:uppercase}.jd-factor-explanation{font-size:.75rem;color:var(--text-secondary);margin:0;line-height:1.5}.jd-hidden-reqs{background:var(--bg-secondary);border-style:dashed}@media (max-width: 640px){.jd-section-row{grid-template-columns:1fr}}.jd-manager{min-height:100vh;background:var(--bg-secondary);position:relative;padding:2rem}.jd-manager-bg-pattern{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(circle,var(--border) 1px,transparent 1px);background-size:28px 28px;opacity:.4;pointer-events:none}.jd-manager-container{position:relative;z-index:1;max-width:900px;margin:0 auto}.jd-manager-header{margin-bottom:2rem}.jd-back-link{display:inline-flex;align-items:center;gap:.375rem;padding:0;border:none;background:none;color:var(--text-muted);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;margin-bottom:.75rem;transition:color .15s ease}.jd-back-link:hover{color:var(--primary)}.jd-manager-header h1{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.jd-manager-header p{font-size:.875rem;color:var(--text-secondary);margin:0}.jd-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}.jd-card{display:flex;flex-direction:column;padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-primary);cursor:pointer;transition:all .2s ease;text-align:left;font-family:var(--font-sans);box-shadow:var(--shadow-xs)}.jd-card:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.jd-card-active{border-color:var(--primary);box-shadow:0 0 0 2px #2563eb1f}.jd-card-add{align-items:center;justify-content:center;gap:.5rem;border-style:dashed;color:var(--text-muted);min-height:160px}.jd-card-add:hover{color:var(--primary);border-color:var(--primary);background:#2563eb05}.jd-card-add-icon{font-size:1.5rem}.jd-card-add span{font-size:.875rem;font-weight:500}.jd-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.625rem}.jd-card-icon{font-size:1.25rem;color:var(--primary)}.jd-card-active-badge{padding:.15rem .5rem;border-radius:4px;background:#2563eb14;color:var(--primary);font-size:.6875rem;font-weight:600}.jd-card-title{font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0 0 .375rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jd-card-meta{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-muted);margin-bottom:.5rem}.jd-card-meta .anticon{font-size:.625rem}.jd-card-seniority{text-transform:capitalize;padding:.1rem .375rem;border-radius:3px;background:var(--bg-tertiary)}.jd-card-stats{display:flex;justify-content:space-between;font-size:.6875rem;color:var(--text-muted);padding-top:.5rem;border-top:1px solid var(--border)}.jd-card-stats .anticon{font-size:.625rem}.jd-upload-wrapper{display:flex;flex-direction:column;align-items:center;gap:1rem}.jd-cancel-btn{padding:.5rem 1.5rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;transition:all .15s ease}.jd-cancel-btn:hover{border-color:var(--text-muted);color:var(--text-primary)}.jd-dropdown{position:relative}.jd-dropdown-trigger{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;transition:all .15s ease;max-width:220px}.jd-dropdown-trigger:hover{border-color:var(--primary);color:var(--primary)}.jd-dropdown-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.jd-dropdown-arrow{font-size:.625rem;transition:transform .2s ease;margin-left:.25rem}.jd-dropdown-arrow.open{transform:rotate(180deg)}.jd-dropdown-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:260px;max-width:320px;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:200;padding:.375rem;animation:jdDropdownIn .15s ease}@keyframes jdDropdownIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.jd-dropdown-section-label{padding:.375rem .625rem .25rem;font-size:.6875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.jd-dropdown-item{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.5rem .625rem;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-primary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;transition:background .1s ease;text-align:left;gap:.5rem}.jd-dropdown-item:hover{background:var(--bg-secondary)}.jd-dropdown-item.active{background:#2563eb0f;color:var(--primary)}.jd-dropdown-item-text{display:flex;align-items:center;gap:.375rem;overflow:hidden;flex:1;min-width:0}.jd-check{font-size:.6875rem;color:var(--primary);flex-shrink:0}.jd-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}.jd-item-company{font-size:.6875rem;color:var(--text-muted);flex-shrink:0}.jd-dropdown-delete{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:var(--text-muted);font-size:.6875rem;cursor:pointer;opacity:0;transition:all .1s ease;flex-shrink:0}.jd-dropdown-item:hover .jd-dropdown-delete{opacity:1}.jd-dropdown-delete:hover{background:var(--danger-bg);color:var(--danger)}.jd-dropdown-divider{height:1px;background:var(--border);margin:.375rem 0}.jd-add-new{color:var(--primary);font-weight:500;gap:.375rem}.jd-add-new:hover{background:#2563eb0f}:root{--primary: #2563eb;--primary-light: #3b82f6;--primary-dark: #1d4ed8;--primary-glow: rgba(37, 99, 235, .15);--success: #059669;--success-light: #10b981;--success-bg: rgba(5, 150, 105, .08);--danger: #dc2626;--danger-light: #ef4444;--danger-bg: rgba(220, 38, 38, .08);--warning: #d97706;--warning-light: #f59e0b;--warning-bg: rgba(217, 119, 6, .08);--bg-primary: #ffffff;--bg-secondary: #f8fafc;--bg-tertiary: #f1f5f9;--bg-card: #ffffff;--bg-card-hover: #f8fafc;--bg-elevated: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--text-dim: #cbd5e1;--border: #e2e8f0;--border-light: #cbd5e1;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 0 0 1px rgba(0, 0, 0, .02), 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .03);--shadow-md: 0 0 0 1px rgba(0, 0, 0, .02), 0 2px 4px rgba(0, 0, 0, .04), 0 8px 20px rgba(0, 0, 0, .06);--shadow-lg: 0 0 0 1px rgba(0, 0, 0, .02), 0 4px 8px rgba(0, 0, 0, .06), 0 16px 32px rgba(0, 0, 0, .08);--shadow-focus: 0 0 0 3px var(--primary-glow);--shadow-card: 0 0 0 1px rgba(0, 0, 0, .02), 0 1px 3px rgba(0, 0, 0, .04), 0 4px 12px rgba(0, 0, 0, .04);--font-sans: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--radius-sm: 8px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg-primary);color:var(--text-primary);font-family:var(--font-sans);line-height:1.6;min-height:100vh;overflow-x:hidden}.app{min-height:100vh;background:var(--bg-secondary)}.app-header{padding:1.25rem 2rem;background:var(--bg-primary);border-bottom:1px solid var(--border)}.header-content{max-width:1200px;margin:0 auto;display:flex;justify-content:center;align-items:center}.logo{display:flex;align-items:center;gap:.75rem}.logo-icon{width:36px;height:36px;color:var(--primary)}.logo-text{font-size:1.375rem;font-weight:700;color:var(--text-primary);letter-spacing:-.02em}.app-auth-header{position:fixed;top:0;right:0;z-index:100;display:flex;align-items:center;gap:.75rem;padding:.75rem 1.25rem}.auth-user-label{font-size:.8125rem;font-weight:500;color:var(--text-muted)}.auth-logout-btn{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-secondary);font-size:.8125rem;font-family:var(--font-sans);cursor:pointer;transition:all .15s ease}.auth-logout-btn:hover{background:var(--danger-bg);border-color:var(--danger-light);color:var(--danger)}.app-main{flex:1;width:100%}.app-footer{padding:1.25rem 2rem;text-align:center;color:var(--text-muted);font-size:.8125rem;border-top:1px solid var(--border);background:var(--bg-primary)}.app-footer p{margin:0}::selection{background:var(--primary);color:#fff}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}*{scrollbar-width:thin;scrollbar-color:var(--border-light) var(--bg-secondary)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}.ant-card{background:var(--bg-card)!important;border:1px solid var(--border)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-xs)!important}.ant-card-head{background:transparent!important;border-bottom:1px solid var(--border)!important;color:var(--text-primary)!important}.ant-input-affix-wrapper{background:var(--bg-primary)!important;border:1.5px solid var(--border)!important;border-radius:var(--radius-md)!important;color:var(--text-primary)!important}.ant-input{background:transparent!important;border:none!important;box-shadow:none!important;color:var(--text-primary)!important}.ant-input-affix-wrapper:hover{border-color:var(--border-light)!important}.ant-input-affix-wrapper:focus,.ant-input-affix-wrapper-focused{border-color:var(--primary)!important;box-shadow:0 0 0 3px #2563eb1a!important}.ant-input::placeholder{color:var(--text-muted)!important}.ant-input-prefix,.ant-input-suffix{color:var(--text-muted)!important}.ant-form-item-has-error .ant-input,.ant-form-item-has-error .ant-input-affix-wrapper{border-color:var(--danger)!important}.ant-form-item-explain-error{color:var(--danger)!important}.ant-btn{border-radius:var(--radius-md)!important;font-weight:500!important;transition:all var(--transition-normal)!important}.ant-btn-primary{background:var(--primary)!important;border:none!important;box-shadow:0 1px 2px #2563eb33!important}.ant-btn-primary:hover{background:var(--primary-dark)!important;box-shadow:0 2px 8px #2563eb4d!important}.ant-btn-default{background:var(--bg-primary)!important;border:1px solid var(--border)!important;color:var(--text-primary)!important}.ant-btn-default:hover{background:var(--bg-secondary)!important;border-color:var(--border-light)!important}.ant-steps-item-icon{background:var(--bg-secondary)!important;border-color:var(--border)!important}.ant-steps-item-finish .ant-steps-item-icon,.ant-steps-item-process .ant-steps-item-icon{background:var(--primary)!important;border-color:var(--primary)!important}.ant-alert{border-radius:var(--radius-md)!important}.ant-alert-info{background:#2563eb0f!important;border:1px solid rgba(37,99,235,.2)!important}.ant-alert-success{background:var(--success-bg)!important;border:1px solid rgba(5,150,105,.2)!important}.ant-alert-error{background:var(--danger-bg)!important;border:1px solid rgba(220,38,38,.2)!important}.ant-upload-drag{background:var(--bg-secondary)!important;border:2px dashed var(--border)!important;border-radius:var(--radius-lg)!important}.ant-upload-drag:hover{border-color:var(--primary)!important}.ant-spin-dot-item{background-color:var(--primary)!important}.ant-message-notice-content{background:var(--bg-primary)!important;border:1px solid var(--border)!important;border-radius:var(--radius-md)!important;color:var(--text-primary)!important;box-shadow:var(--shadow-lg)!important}.ant-tabs-tab{color:var(--text-secondary)!important}.ant-tabs-tab-active .ant-tabs-tab-btn{color:var(--primary)!important}.ant-tabs-ink-bar{background:var(--primary)!important}.ant-progress-text{color:var(--text-primary)!important}.ant-divider{border-color:var(--border)!important}.ant-typography{color:var(--text-primary)!important}.ant-typography.ant-typography-secondary{color:var(--text-secondary)!important}.ant-typography strong{font-weight:600}.ant-form-item-label>label{color:var(--text-primary)!important}.ant-select-selector{background:var(--bg-primary)!important;border:1px solid var(--border)!important;color:var(--text-primary)!important}.ant-select-dropdown{background:var(--bg-primary)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-lg)!important}.ant-select-item{color:var(--text-primary)!important}.ant-select-item-option-active{background:var(--bg-secondary)!important}.ant-select-item-option-selected{background:#2563eb14!important}.ant-badge-count{box-shadow:none!important}.ant-space-item,.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--success)}.text-danger{color:var(--danger)}.text-warning{color:var(--warning)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn .3s ease}.animate-slide-up{animation:slideUp .4s ease}.animate-pulse{animation:pulse 2s ease-in-out infinite}:root{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color-scheme:light;color:#0f172a;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}*{margin:0;padding:0;box-sizing:border-box}body{margin:0;min-height:100vh}#root{min-height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f8fafc}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}
