:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a25;--bg-card:#161620;--bg-hover:#1e1e2a;--text-primary:#f0f0f5;--text-secondary:#a0a0b0;--text-muted:#6a6a7a;--accent-primary:#ff6b35;--accent-secondary:#ffc234;--accent-glow:#ff6b354d;--success:#34d399;--warning:#fbbf24;--error:#f87171;--border-color:#2a2a3a;--border-glow:#ff6b3533;--font-display:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono","Fira Code","SF Mono","Monaco","Cascadia Code","Roboto Mono",Consolas,monospace;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--text-5xl:3rem;--text-6xl:3.75rem;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:2;--font-thin:100;--font-extralight:200;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-glow:0 0 30px #ff6b3526;--shadow-card:0 4px 24px #0006}*{box-sizing:border-box;margin:0;padding:0}body,html{overflow:hidden}#root,body,html{height:100%;width:100%}#root{overflow:auto}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#0a0a0f;background:var(--bg-primary);color:#f0f0f5;color:var(--text-primary);font-family:Outfit,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-family:var(--font-display);font-size:1rem;font-size:var(--text-base);font-weight:400;font-weight:var(--font-normal);line-height:1.5;line-height:var(--leading-normal);text-rendering:optimizeLegibility}::-webkit-scrollbar{height:6px;width:6px}::-webkit-scrollbar-track{background:#12121a;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#2a2a3a;background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#6a6a7a;background:var(--text-muted)}.animate-fade-in{animation:fadeInUp .5s ease-out forwards}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.text-xs{font-size:.75rem;font-size:var(--text-xs);line-height:1.25;line-height:var(--leading-tight)}.text-sm{font-size:.875rem;font-size:var(--text-sm)}.text-base,.text-sm{line-height:1.5;line-height:var(--leading-normal)}.text-base{font-size:1rem;font-size:var(--text-base)}.text-lg{font-size:1.125rem;font-size:var(--text-lg)}.text-lg,.text-xl{line-height:1.625;line-height:var(--leading-relaxed)}.text-xl{font-size:1.25rem;font-size:var(--text-xl)}.text-2xl{font-size:1.5rem;font-size:var(--text-2xl)}.text-2xl,.text-3xl{line-height:1.25;line-height:var(--leading-tight)}.text-3xl{font-size:2rem;font-size:var(--text-3xl)}.text-4xl{font-size:2.5rem;font-size:var(--text-4xl)}.text-4xl,.text-5xl{line-height:1;line-height:var(--leading-none)}.text-5xl{font-size:3rem;font-size:var(--text-5xl)}.text-6xl{font-size:3.75rem;font-size:var(--text-6xl);line-height:1;line-height:var(--leading-none)}.font-thin{font-weight:100;font-weight:var(--font-thin)}.font-extralight{font-weight:200;font-weight:var(--font-extralight)}.font-light{font-weight:300;font-weight:var(--font-light)}.font-normal{font-weight:400;font-weight:var(--font-normal)}.font-medium{font-weight:500;font-weight:var(--font-medium)}.font-semibold{font-weight:600;font-weight:var(--font-semibold)}.font-bold{font-weight:700;font-weight:var(--font-bold)}.font-extrabold{font-weight:800;font-weight:var(--font-extrabold)}.font-black{font-weight:900;font-weight:var(--font-black)}.font-mono{font-family:JetBrains Mono,Fira Code,SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace;font-family:var(--font-mono)}.text-primary{color:#f0f0f5;color:var(--text-primary)}.text-secondary{color:#a0a0b0;color:var(--text-secondary)}.text-muted{color:#6a6a7a;color:var(--text-muted)}.text-accent{color:#ff6b35;color:var(--accent-primary)}.leading-none{line-height:1;line-height:var(--leading-none)}.leading-tight{line-height:1.25;line-height:var(--leading-tight)}.leading-snug{line-height:1.375;line-height:var(--leading-snug)}.leading-normal{line-height:1.5;line-height:var(--leading-normal)}.leading-relaxed{line-height:1.625;line-height:var(--leading-relaxed)}.leading-loose{line-height:2;line-height:var(--leading-loose)}@media (max-width:768px){:root{--text-3xl:1.75rem;--text-4xl:2rem;--text-5xl:2.25rem;--text-6xl:2.5rem}}.profile-icon-container{position:relative}.profile-icon-button{align-items:center;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:50%;cursor:pointer;display:flex;height:36px;justify-content:center;overflow:hidden;padding:0;transition:all .2s;width:36px}.profile-icon-button:hover{border-color:var(--accent-primary);box-shadow:0 2px 8px var(--accent-glow);transform:scale(1.05)}.profile-avatar{height:100%;object-fit:cover;width:100%}.profile-initials{color:var(--accent-primary);font-size:14px;font-weight:600}.profile-dropdown-overlay{bottom:0;left:0;position:fixed;right:0;top:0;z-index:999}.profile-dropdown{animation:dropdownSlideIn .2s ease-out;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 20px #00000080;min-width:220px;position:absolute;right:0;top:calc(100% + 8px);z-index:1000}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.profile-dropdown-header{padding:16px}.profile-dropdown-name{color:var(--text-primary);font-size:15px;font-weight:600;margin-bottom:4px}.profile-dropdown-email,.profile-dropdown-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-dropdown-email{color:var(--text-secondary);font-size:13px;margin-bottom:8px}.profile-dropdown-stats{color:var(--accent-primary);font-size:12px;font-weight:500}.profile-dropdown-divider{background:var(--border-color);height:1px;margin:0 8px}.profile-dropdown-logout{background:none;border:none;border-radius:0 0 8px 8px;color:var(--error);cursor:pointer;font-size:14px;padding:12px 16px;text-align:left;transition:background .2s;width:100%}.profile-dropdown-logout:hover{background:var(--bg-hover)}.feedback-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#000000bf;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.feedback-modal-content{animation:slideUp .3s ease-out;background:#2d2d2d;border-radius:12px;box-shadow:0 20px 60px #00000080;max-width:500px;position:relative;width:90%}.feedback-modal-close{align-items:center;background:#0000;border:none;border-radius:4px;color:#999;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s ease;width:32px}.feedback-modal-close:hover{background:#ffffff1a;color:#fff}.feedback-modal-body{padding:32px}.feedback-modal-body h2{color:#fff;font-size:24px;margin:0 0 8px}.feedback-modal-body>p{color:#999;font-size:14px;margin:0 0 28px}.rating-section{margin-bottom:24px}.rating-section label{color:#e0e0e0;display:block;font-size:14px;font-weight:500;margin-bottom:12px}.stars{display:flex;gap:8px;margin-bottom:8px}.star{background:#0000;border:none;color:#444;cursor:pointer;font-size:40px;line-height:1;padding:0;transition:all .2s ease}.star:hover{transform:scale(1.15)}.star.filled{color:#ff6b35;transform:scale(1.1)}.rating-text{color:#ff6b35;display:block;font-size:14px;font-weight:500;margin-top:8px}.feedback-text-section{margin-bottom:24px}.feedback-text-section label{color:#e0e0e0;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.feedback-textarea{background:#1a1a1a;border:1px solid #444;border-radius:6px;color:#e0e0e0;font-family:inherit;font-size:14px;min-height:100px;padding:12px;resize:vertical;transition:border-color .2s ease;width:100%}.feedback-textarea:focus{border-color:#ff6b35;outline:none}.feedback-textarea::placeholder{color:#666}.char-count{color:#666;font-size:12px;margin-top:4px;text-align:right}.feedback-actions{display:flex;gap:12px;justify-content:flex-end}.btn-cancel,.btn-submit{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:10px 20px;transition:all .2s ease}.btn-cancel{background:#0000;border:1px solid #444;color:#999}.btn-cancel:hover:not(:disabled){background:#ffffff0d;color:#fff}.btn-submit{background:linear-gradient(135deg,#ff6b35,#ff8555);box-shadow:0 2px 8px #ff6b354d;color:#fff}.btn-submit:hover:not(:disabled){box-shadow:0 4px 12px #ff6b3566;transform:translateY(-2px)}.btn-submit:disabled{cursor:not-allowed;opacity:.5}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.feedback-modal-content{margin:16px;width:95%}.feedback-modal-body{padding:24px}.stars{justify-content:center}.star{font-size:36px}}.challenge-page{background:radial-gradient(ellipse at 20% 20%,#ff6b3514 0,#0000 50%),radial-gradient(ellipse at 80% 80%,#ffc2340d 0,#0000 50%),linear-gradient(180deg,var(--bg-primary) 0,var(--bg-secondary) 100%);min-height:100%;padding-bottom:40px}.challenge-header{align-items:center;background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-sizing:border-box;display:flex;height:50px;justify-content:space-between;padding:8px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.challenge-header .header-left,.challenge-header .header-right{align-items:center;display:flex;gap:12px}.challenge-header .logo{align-items:center;display:flex;gap:10px}.challenge-header .logo-icon{color:var(--accent-primary);font-size:20px;text-shadow:0 0 20px var(--accent-glow)}.challenge-header .logo-text{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-base);font-weight:var(--font-semibold)}.challenge-header .btn-feedback{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:flex;font-size:13px;font-weight:var(--font-medium);gap:6px;height:32px;padding:6px 12px;transition:all .2s ease}.challenge-header .btn-feedback:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.challenge-header .btn-feedback svg{height:18px;width:18px}.hero-section{padding:48px 32px 32px;text-align:center}.hero-section h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--text-primary) 0,var(--accent-primary) 100%);-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:var(--text-4xl);font-weight:var(--font-bold);margin:0 0 12px}.hero-section p{color:var(--text-secondary);font-size:var(--text-lg)}.hero-section p,.stats-bar{margin:0 auto;max-width:600px}.stats-bar{display:flex;gap:32px;justify-content:center;padding:24px}.stat-item{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);display:flex;flex-direction:column;gap:4px;min-width:80px;padding:12px 24px}.stat-item .stat-value{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-2xl);font-weight:var(--font-bold)}.stat-item .stat-label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase}.stat-item.easy .stat-value{color:var(--success)}.stat-item.medium .stat-value{color:var(--warning)}.stat-item.hard .stat-value{color:var(--error)}.filters-section{flex-wrap:wrap;gap:16px;justify-content:center;padding:0 32px 32px}.filters-section,.search-box{align-items:center;display:flex}.search-box{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);gap:10px;padding:10px 16px;transition:all .2s ease;width:300px}.search-box:focus-within{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.search-icon{font-size:14px;opacity:.6}.search-box input{background:#0000;border:none;color:var(--text-primary);flex:1 1;font-family:var(--font-display);font-size:var(--text-sm);outline:none}.search-box input::placeholder{color:var(--text-muted)}.difficulty-filters{display:flex;gap:8px}.filter-btn{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:20px;color:var(--text-secondary);cursor:pointer;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--font-medium);padding:8px 16px;transition:all .2s ease}.filter-btn:hover{background:var(--bg-hover);border-color:var(--text-muted)}.filter-btn.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.filter-btn.active.easy{background:var(--success);border-color:var(--success)}.filter-btn.active.medium{background:var(--warning);border-color:var(--warning)}.filter-btn.active.hard{background:var(--error);border-color:var(--error)}.challenges-container{margin:0 auto;max-width:1200px;padding:0 32px 48px}.challenges-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}.challenge-card{animation:fadeInUp .4s ease-out forwards;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;opacity:0;padding:20px;transition:all .3s ease}.challenge-card:hover{border-color:var(--accent-primary);box-shadow:0 8px 32px #ff6b3526;transform:translateY(-4px)}.card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.card-icon{font-size:30px}.card-title{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 8px}.card-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;font-size:var(--text-sm);line-height:var(--leading-normal);margin:0 0 16px;overflow:hidden}.card-footer{align-items:center;display:flex;justify-content:space-between}.card-tags{display:flex;flex-wrap:wrap;gap:6px}.tag{background:var(--bg-tertiary);border-radius:4px;color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;padding:4px 8px;text-transform:uppercase}.start-btn{background:#0000;border:1px solid var(--accent-primary);border-radius:var(--radius-sm);color:var(--accent-primary);cursor:pointer;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--font-medium);padding:8px 16px;transition:all .2s ease}.start-btn:hover{background:var(--accent-primary);color:#fff}.empty-state,.loading-state{align-items:center;color:var(--text-muted);display:flex;flex-direction:column;justify-content:center;padding:64px}.loading-state .spinner{animation:spin 1s linear infinite;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--accent-primary);height:40px;margin-bottom:16px;width:40px}.empty-icon{font-size:48px;margin-bottom:12px;opacity:.5}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.challenge-header{padding:12px 16px}.hero-section{padding:32px 16px 24px}.hero-section h1{font-size:var(--text-3xl)}.stats-bar{gap:16px;padding:16px}.stat-item{min-width:60px;padding:10px 16px}.stat-item .stat-value{font-size:var(--text-xl)}.filters-section{flex-direction:column;padding:0 16px 24px}.search-box{width:100%}.challenges-container{padding:0 16px 32px}.challenges-grid{grid-template-columns:1fr}}.question-selector{background:var(--bg-primary);border-bottom:1px solid var(--border-color);padding:16px}.question-selector label{color:var(--text-muted);display:block;font-size:var(--text-xs);font-weight:var(--font-medium);letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.question-dropdown{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;font-family:var(--font-display);font-size:var(--text-sm);padding:10px 12px;transition:all .2s ease;width:100%}.question-dropdown:focus,.question-dropdown:hover{border-color:var(--accent-primary)}.question-dropdown:focus{box-shadow:0 0 0 3px #6366f11a;outline:none}.question-details{background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-primary) 100%);border-bottom:1px solid var(--border-color);padding:16px}.question-details h3{color:var(--text-primary);font-size:var(--text-lg);font-weight:var(--font-semibold);margin:0 0 8px}.question-description{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-normal);margin:0 0 12px}.difficulty-badge{border-radius:12px;color:#fff;display:inline-block;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.5px;padding:4px 12px}.panel-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.tab-content{flex:1 1;overflow-y:auto;padding:16px}.requirements-tabs{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;padding:0 12px}.tab{background:none;border:none;color:var(--text-muted);cursor:pointer;flex:1 1;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--font-medium);padding:12px 8px;position:relative;transition:all .2s ease}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--accent-primary)}.tab.active:after{background:var(--accent-primary);border-radius:2px 2px 0 0;bottom:0;content:"";height:2px;left:20%;position:absolute;right:20%}.requirements-list{display:flex;flex-direction:column;gap:0}.requirement-card{align-items:flex-start;animation:fadeInUp .3s ease-out forwards;background:#0000;border:none;border-bottom:1px solid #ffffff0d;border-radius:0;display:flex;gap:8px;opacity:0;padding:8px 0}.requirement-card:last-child{border-bottom:none}.requirement-bullet{color:var(--text-muted);flex-shrink:0;font-size:8px;line-height:2}.requirement-text{color:var(--text-secondary);flex:1 1;font-size:var(--text-sm);line-height:var(--leading-normal)}.requirement-card:hover{background:#ffffff05}.req-checkbox{align-items:center;border:2px solid var(--border-color);border-radius:6px;color:var(--success);cursor:pointer;display:flex;font-size:12px;font-weight:700;height:22px;justify-content:center;min-width:22px;transition:all .2s ease;width:22px}.requirement-card.checked .req-checkbox{background:var(--success);border-color:var(--success);color:var(--bg-primary)}.req-content{flex:1 1;min-width:0}.req-header{align-items:center;display:flex;gap:8px;justify-content:space-between;margin-bottom:6px}.req-header h4{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.req-content p{color:var(--text-muted);font-size:var(--text-xs);line-height:var(--leading-normal)}.metric-badge,.priority-badge{border-radius:4px;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.5px;padding:3px 8px;text-transform:uppercase;white-space:nowrap}.metric-badge{background:var(--bg-tertiary);color:var(--accent-secondary);font-family:var(--font-mono)}.estimates-section{display:flex;flex-direction:column;gap:12px}.estimates-section h3{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);margin:0 0 16px}.estimates-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr}.estimate-item{align-items:center;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-sm);display:flex;justify-content:space-between;padding:12px 14px;transition:all .2s ease}.estimate-item:hover{border-color:var(--accent-primary);transform:translateX(2px)}.estimate-label{color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-medium);text-transform:capitalize}.estimate-value{background:#6366f11a;border-radius:4px;color:var(--accent-secondary);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--font-semibold);padding:4px 10px}.estimate-group{animation:fadeInUp .3s ease-out forwards;opacity:0}.estimate-title{border-bottom:1px dashed var(--border-color);color:var(--text-muted);font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:1px;margin-bottom:10px;padding-bottom:8px;text-transform:uppercase}.estimate-items{background:#ffc2341a;border:1px solid #ffc23433;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:8px;gap:10px;margin-top:10px;padding:12px}.note-icon{font-size:var(--text-base)}.estimate-note p{color:var(--text-secondary);font-size:var(--text-xs);line-height:var(--leading-normal)}.timer-container{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:var(--radius-md);box-sizing:border-box;display:flex;gap:8px;height:32px;padding:6px 12px;transition:all .2s ease}.timer-container:hover{background:var(--bg-hover);border-color:var(--text-muted)}.timer-display{align-items:center;display:flex;gap:6px}.timer-display.running{color:var(--accent-primary)}.timer-display.running .timer-icon{animation:pulse 1s infinite}.timer-icon{font-size:var(--text-sm)}.timer-value{color:var(--text-primary);font-family:var(--font-mono);font-size:13px;font-weight:var(--font-semibold);min-width:50px;text-align:center}.timer-display.running .timer-value{color:var(--accent-primary)}.timer-controls{gap:4px}.timer-btn,.timer-controls{align-items:center;display:flex}.timer-btn{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:50%;color:var(--text-muted);cursor:pointer;height:24px;justify-content:center;transition:all .2s ease;width:24px}.timer-btn:hover:not(:disabled){background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.timer-btn:disabled{cursor:not-allowed;opacity:.4}.timer-btn.start:hover:not(:disabled){background:var(--success);border-color:var(--success);color:#fff}.timer-btn.pause:hover{background:var(--warning);border-color:var(--warning);color:#fff}.timer-btn.stop:hover:not(:disabled){background:var(--error);border-color:var(--error);color:#fff}@media (max-width:768px){.timer-container{padding:4px 8px}.timer-value{font-size:12px;min-width:40px}.timer-btn{height:20px;width:20px}.timer-btn svg{height:10px;width:10px}}.skeleton{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%;border-radius:8px}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-requirements-panel{height:100%;overflow:hidden;padding:20px}.skeleton-header{align-items:center;display:flex;gap:12px;margin-bottom:20px}.skeleton-icon{width:24px}.skeleton-icon,.skeleton-title{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%;border-radius:6px;height:24px}.skeleton-title{flex:1 1}.skeleton-selector{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%;border-radius:8px;height:40px;margin-bottom:20px}.skeleton-question-details{background:#ffffff05;border-radius:12px;margin-bottom:20px;padding:16px}.skeleton-question-title{border-radius:6px;height:22px;margin-bottom:12px;width:70%}.skeleton-question-desc,.skeleton-question-title{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%}.skeleton-question-desc{border-radius:4px;height:14px;margin-bottom:8px;width:100%}.skeleton-question-desc.short{margin-bottom:12px;width:60%}.skeleton-badge{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%;border-radius:12px;height:20px;width:80px}.skeleton-tabs{display:flex;gap:8px;margin-bottom:20px}.skeleton-tab{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%;border-radius:8px;flex:1 1;height:36px}.skeleton-requirements-list{display:flex;flex-direction:column;gap:12px}.skeleton-requirement-card{align-items:flex-start;background:#ffffff05;border-radius:8px;display:flex;gap:12px;padding:12px}.skeleton-bullet{border-radius:50%;flex-shrink:0;height:8px;margin-top:6px;width:8px}.skeleton-bullet,.skeleton-requirement-card .skeleton-text{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%}.skeleton-requirement-card .skeleton-text{border-radius:4px;flex:1 1;height:14px}.skeleton-canvas{align-items:center;background:#ffffff05;border-radius:12px;display:flex;height:100%;justify-content:center;width:100%}.skeleton-canvas-message{padding:40px;text-align:center}.skeleton-canvas-icon{border-radius:50%;height:64px;margin:0 auto 20px;width:64px}.skeleton-canvas-icon,.skeleton-canvas-text{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%}.skeleton-canvas-text{border-radius:6px;height:18px;margin:0 auto 12px;width:200px}.skeleton-canvas-text.short{width:150px}.skeleton-line{margin-bottom:8px}.skeleton-text{display:flex;flex-direction:column;gap:8px}.skeleton-text-line{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,#ffffff0d,#ffffff1a 50%,#ffffff0d);background-size:200% 100%;border-radius:4px}.skeleton-rectangle{border-radius:8px}.skeleton-default{border-radius:6px}.canvas-header{align-items:center;background:linear-gradient(180deg,var(--bg-tertiary) 0,var(--bg-card) 100%);border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:10px 16px}.canvas-header h2{align-items:center;color:var(--text-secondary);display:flex;font-size:12px;font-weight:600;gap:8px;letter-spacing:1.2px;margin:0;text-transform:uppercase}.canvas-header h2 .icon{font-size:14px}.canvas-actions{display:flex;gap:6px;transition:opacity .3s ease,transform .3s ease}.canvas-actions.hidden{opacity:0;pointer-events:none;transform:translateX(10px)}.canvas-actions.visible{opacity:1;pointer-events:all;transform:translateX(0)}.canvas-btn{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;display:flex;font-family:var(--font-display);font-size:11px;gap:4px;padding:5px 10px;transition:all .2s ease}.canvas-btn:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.canvas-tips{display:none}.canvas-container{flex:1 1;overflow:hidden;position:relative}.canvas-fullscreen-btn{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;border:1px solid #ffffff1a;border-radius:8px;bottom:16px;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:16px;transition:all .2s ease;width:40px;z-index:1000}.canvas-fullscreen-btn:hover{background:#000c;border-color:#fff3;transform:scale(1.05)}.canvas-fullscreen-btn:active{transform:scale(.95)}.canvas-fullscreen-btn svg{display:block}.canvas-loading-overlay{align-items:center;background:var(--bg-primary);bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:1000}.canvas-container .excalidraw{height:100%;width:100%}.canvas-container .excalidraw-wrapper{height:100%}.canvas-container>div{height:100%!important}.canvas-container .excalidraw .Island{background:#1e1e28f2!important;border:1px solid #ffffff1a!important;border-radius:8px!important}.canvas-container .excalidraw .ToolIcon_type_button:hover{background:#ff6b3526!important}.canvas-container .excalidraw .ToolIcon_type_button.ToolIcon--selected{background:#ff6b3540!important}.canvas-container .excalidraw .layer-ui__wrapper__footer-left,.canvas-container .excalidraw .layer-ui__wrapper__footer-right{background:#1e1e28e6!important;border:1px solid #ffffff1a!important;border-radius:6px!important}.canvas-container .excalidraw .welcome-screen-center{display:none!important}.canvas-container .excalidraw .context-menu,.canvas-container .excalidraw .dropdown-menu{background:#1e1e28f2!important;border:1px solid #ffffff1a!important;border-radius:8px!important}.canvas-container .excalidraw .context-menu-option:hover{background:#ff6b3526!important}.panel-header .assistant-status{align-items:center;color:var(--success);display:flex;font-size:var(--text-xs);gap:6px}.status-dot{animation:pulse 2s infinite;background:var(--success);border-radius:50%;height:8px;width:8px}.chat-messages{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:16px}.message{animation:fadeInUp .3s ease-out;display:flex;gap:10px}.message.user{flex-direction:row-reverse}.message-avatar{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:50%;display:flex;font-size:var(--text-base);height:32px;justify-content:center;min-width:32px;width:32px}.message-content{border-radius:var(--radius-md);max-width:85%;padding:12px 16px;position:relative}.message.bot .message-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-top-left-radius:4px}.message.user .message-content{background:linear-gradient(135deg,var(--accent-primary) 0,#ff8c5a 100%);border-top-right-radius:4px;color:#fff}.message-content p{word-wrap:break-word;font-size:var(--text-sm);line-height:var(--leading-relaxed);white-space:pre-wrap}.message.bot .message-content p{color:var(--text-secondary)}.message-time{color:var(--text-muted);display:block;font-size:var(--text-xs);margin-top:6px;text-align:right}.message.user .message-time{color:#ffffffb3}.message-content.typing{padding:16px 20px}.typing-indicator{display:flex;gap:4px}.typing-indicator span{animation:typing 1.4s ease-in-out infinite;background:var(--text-muted);border-radius:50%;height:8px;width:8px}.typing-indicator span:first-child{animation-delay:0s}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-8px)}}.suggested-questions{background:var(--bg-secondary);border-top:1px solid var(--border-color);padding:12px 16px}.suggestions-label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;margin-bottom:8px;text-transform:uppercase}.suggestions-list{display:flex;flex-wrap:wrap;gap:6px}.suggestion-chip{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:16px;color:var(--text-secondary);cursor:pointer;font-family:var(--font-display);font-size:var(--text-xs);padding:6px 12px;transition:all .2s ease;white-space:nowrap}.suggestion-chip:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--text-primary)}.chat-input-container{background:var(--bg-card);border-top:1px solid var(--border-color);display:flex;gap:10px;padding:16px}.chat-input{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);flex:1 1;font-family:var(--font-display);font-size:var(--text-sm);outline:none;padding:12px 16px;resize:none;transition:all .2s ease}.chat-input::placeholder{color:var(--text-muted)}.chat-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-glow)}.send-btn{align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0,#ff8c5a 100%);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;height:44px;justify-content:center;transition:all .2s ease;width:44px}.send-btn:hover:not(:disabled){box-shadow:0 4px 15px var(--accent-glow);transform:scale(1.05)}.send-btn:disabled{cursor:not-allowed;opacity:.5}.right-panel-tabs{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);display:flex;padding:0 12px}.right-panel-tabs .tab{align-items:center;background:none;border:none;color:var(--text-muted);cursor:pointer;display:flex;flex:1 1;font-family:var(--font-display);font-size:var(--text-sm);font-weight:var(--font-medium);gap:6px;justify-content:center;padding:12px 8px;position:relative;transition:all .2s ease}.right-panel-tabs .tab:hover{color:var(--text-secondary)}.right-panel-tabs .tab.active{color:var(--accent-primary)}.right-panel-tabs .tab.active:after{background:var(--accent-primary);border-radius:2px 2px 0 0;bottom:0;content:"";height:2px;left:20%;position:absolute;right:20%}.tab-icon{font-size:var(--text-base)}.tab-badge{animation:pulse 2s infinite;border-radius:8px;font-size:10px;font-weight:var(--font-semibold);padding:2px 6px}.right-panel-content{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.score-badge{background:linear-gradient(135deg,var(--accent-primary) 0,#ff8c5a 100%);border-radius:12px;color:#fff;font-size:var(--text-sm);font-weight:var(--font-semibold);padding:4px 10px}.no-evaluation{color:var(--text-muted);padding:48px 24px}.no-eval-icon{font-size:48px}.no-evaluation h3{color:var(--text-secondary);font-size:var(--text-base)}.no-evaluation p{font-size:var(--text-sm);line-height:var(--leading-normal)}.evaluation-panel{flex:1 1;overflow-y:auto;padding:16px}.eval-score-section{background:linear-gradient(135deg,var(--bg-secondary) 0,var(--bg-tertiary) 100%);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:16px;padding:16px}.eval-total-score{align-items:baseline;display:flex;gap:4px;justify-content:center;margin-bottom:16px}.eval-score-value{color:var(--accent-primary);font-size:48px;font-weight:700;line-height:1}.eval-score-max{color:var(--text-muted);font-size:20px}.eval-score-breakdown{display:flex;flex-direction:column;gap:10px}.eval-score-item{align-items:center;display:flex;gap:10px}.eval-score-label{color:var(--text-muted);font-size:var(--text-xs);letter-spacing:.5px;text-transform:uppercase;width:80px}.eval-score-bar{background:var(--bg-primary);border-radius:3px;flex:1 1;height:6px;overflow:hidden}.eval-score-fill{background:linear-gradient(90deg,var(--accent-primary),var(--accent-secondary));border-radius:3px;height:100%;transition:width .5s ease}.eval-score-num{color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-xs);text-align:right;width:40px}.eval-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:16px;padding:14px}.eval-section h3{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-semibold);margin:0 0 12px}.eval-component-tags{display:flex;flex-wrap:wrap;gap:6px}.eval-component-tag{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;color:var(--accent-secondary);font-size:var(--text-xs);padding:4px 10px}.eval-strengths ul{margin:0;padding-left:20px}.eval-strengths li{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin-bottom:6px}.eval-strengths li::marker{color:var(--success)}.eval-gap-item{background:var(--bg-tertiary);border-left:3px solid var(--text-muted);border-radius:var(--radius-sm);margin-bottom:10px;padding:12px}.eval-gap-item.priority-high{border-left-color:var(--error)}.eval-gap-item.priority-medium{border-left-color:var(--warning)}.eval-gap-item.priority-low{border-left-color:var(--success)}.eval-gap-header{margin-bottom:8px}.eval-priority-badge{border-radius:4px;display:inline-block;font-size:var(--text-xs);font-weight:var(--font-semibold);letter-spacing:.5px;padding:2px 8px;text-transform:uppercase}.eval-priority-badge.high{background:#ef444433;color:var(--error)}.eval-priority-badge.medium{background:#f59e0b33;color:var(--warning)}.eval-priority-badge.low{background:#22c55e33;color:var(--success)}.eval-gap-question{color:var(--text-primary);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:var(--leading-normal);margin:0 0 8px}.eval-gap-hint{color:var(--text-muted);font-size:var(--text-xs);font-style:italic;margin:0}.eval-next-steps ol{margin:0;padding-left:20px}.eval-next-steps li{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--leading-relaxed);margin-bottom:6px}.eval-next-steps li::marker{color:var(--accent-primary);font-weight:var(--font-semibold)}.enhanced-suggestions{overflow:hidden}.enhanced-suggestions,.no-evaluation{display:flex;flex-direction:column;height:100%}.no-evaluation{align-items:center;justify-content:center;padding:40px 20px;text-align:center}.no-eval-icon{font-size:64px;margin-bottom:16px;opacity:.5}.no-evaluation h3{color:var(--text-primary);font-size:20px;margin:0 0 8px}.no-evaluation p{color:var(--text-secondary);font-size:14px;margin:0}.evaluation-loading{align-items:center;display:flex;flex-direction:column;gap:12px;height:100%;justify-content:center;padding:40px 20px;text-align:center}.evaluation-loading .loading-spinner{animation:eval-spin .8s linear infinite;border:4px solid #8b5cf633;border-radius:50%;border-top-color:#8b5cf6;height:48px;width:48px}@keyframes eval-spin{to{transform:rotate(1turn)}}.evaluation-loading h3{color:var(--text-primary);font-size:18px;margin:4px 0 0}.evaluation-loading p{color:var(--text-secondary);font-size:14px;margin:0}.evaluation-error{align-items:center;display:flex;flex-direction:column;height:100%;justify-content:center;padding:40px 20px;text-align:center}.evaluation-error h3{color:#f87171;font-size:18px;margin:0 0 8px}.evaluation-error p{color:var(--text-secondary);font-size:14px;margin:0;max-width:280px}.progress-journey{background:var(--bg-secondary);border-top:1px solid var(--border-color);flex-shrink:0;padding:20px}.progress-journey.compact{padding:12px 16px}.progress-journey.compact .journey-header{justify-content:center}.progress-journey.compact .score-display{align-items:center;flex-direction:row;gap:16px}.progress-journey.compact .score-circle{height:56px;width:56px}.progress-journey.compact .score-value{font-size:18px}.progress-journey.compact .score-max{font-size:10px}.progress-journey.compact .badge-label{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;font-size:11px;padding:4px 10px}.progress-journey.compact .score-breakdown{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;bottom:100%;box-shadow:0 -4px 20px #0000004d;display:none;left:50%;margin-bottom:8px;min-width:220px;padding:16px;position:absolute;transform:translateX(-50%);z-index:100}.progress-journey.compact .score-breakdown:after{background:var(--bg-card);border-bottom:1px solid var(--border-color);border-right:1px solid var(--border-color);bottom:-6px;content:"";height:12px;left:50%;position:absolute;transform:translateX(-50%) rotate(45deg);width:12px}.progress-journey.compact:hover .score-breakdown{display:flex}.progress-journey.compact .journey-header{position:relative}.journey-header{gap:32px;max-width:100%}.journey-header,.score-display{align-items:center;display:flex}.score-display{cursor:default;flex-direction:column;flex-shrink:0;gap:12px}.score-circle{height:120px;position:relative;width:120px}.score-circle svg{height:100%;transform:rotate(-90deg);width:100%}.score-bg{fill:none;stroke:#ffffff14;stroke-width:6}.score-fill{fill:none;stroke:var(--accent-primary);stroke-width:6;stroke-linecap:round;transition:stroke-dasharray 1s ease}.score-text{align-items:baseline;display:flex;gap:2px;left:50%;position:absolute;text-align:center;top:50%;transform:translate(-50%,-50%)}.progress-journey .score-value{color:var(--text-primary);font-size:36px;font-weight:700;line-height:1}.progress-journey .score-max{color:var(--text-secondary);font-size:16px;font-weight:500}.badge-label{font-size:13px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.score-breakdown{flex:1 1;gap:12px;min-width:0}.breakdown-item,.score-breakdown{display:flex;flex-direction:column}.breakdown-item{gap:6px}.breakdown-header{align-items:center;display:flex;justify-content:space-between}.breakdown-name{color:var(--text-secondary);font-size:13px;font-weight:500}.breakdown-score{color:var(--text-primary);font-size:13px;font-weight:600}.breakdown-bar{background:#ffffff14;border-radius:3px;height:6px;overflow:hidden}.breakdown-fill{background:linear-gradient(90deg,var(--accent-primary) 0,#ff8c5a 100%);border-radius:3px;height:100%;transition:width 1s ease}.suggestions-tabs{background:var(--bg-secondary);border-bottom:2px solid var(--border-color);display:flex;gap:4px;overflow-x:auto;padding:0 16px}.tab-btn{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:6px;margin-bottom:-2px;padding:12px 16px;transition:all .2s ease;white-space:nowrap}.tab-btn:hover{background:#ffffff0d;color:var(--text-primary)}.tab-btn.active{border-bottom-color:var(--accent-primary);color:var(--accent-primary)}.tab-icon{font-size:16px}.tab-badge{align-items:center;background:var(--accent-primary);border-radius:10px;color:#fff;display:inline-flex;font-size:11px;font-weight:700;height:20px;justify-content:center;min-width:20px;padding:0 6px}.tab-panels{flex:1 1;overflow-y:auto}.tab-content{animation:fadeIn .3s ease-out;padding:20px}.tab-intro{margin-bottom:24px}.tab-intro h3{color:var(--text-primary);font-size:18px;margin:0 0 8px}.tab-intro p{color:var(--text-secondary);font-size:14px;line-height:1.6;margin:0 0 12px}.progress-indicator{color:var(--success);font-size:13px;font-weight:500}.cards-container{display:flex;flex-direction:column;gap:24px}.gap-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:10px;padding:18px 20px;position:relative;transition:all .2s ease}.gap-card.priority-high{border-left:3px solid #ef4444}.gap-card.priority-medium{border-left:3px solid #f59e0b}.gap-card.priority-low{border-left:3px solid #3b82f6}.gap-card.completed{background:#ffffff05;opacity:.5}.gap-card:hover:not(.completed){border-color:var(--text-muted);box-shadow:0 2px 8px #00000026}.card-complete-btn{align-items:center;background:#0000;border:2px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;height:24px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s ease;width:24px;z-index:1}.card-complete-btn:hover{background:#22c55e1a;border-color:var(--success)}.card-complete-btn.checked{background:var(--success);border-color:var(--success);color:#fff}.card-complete-btn svg{display:block}.card-question{align-items:flex-start;color:var(--text-primary);display:flex;flex-wrap:wrap;font-size:15px;font-weight:400;gap:8px;line-height:1.6;margin-bottom:0;padding-right:32px}.priority-badge-inline{align-items:center;border-radius:4px;display:inline-flex;flex-shrink:0;font-size:10px;font-weight:700;letter-spacing:.5px;margin-top:2px;padding:2px 8px;text-transform:uppercase}.priority-badge-inline.high{background:#ef444426;color:#ef4444}.priority-badge-inline.medium{background:#f59e0b26;color:#f59e0b}.priority-badge-inline.low{background:#3b82f626;color:#3b82f6}.card-hint{margin-top:12px}.hint-toggle{align-items:center;background:#ff6b3514;border:1px solid #ff6b3526;border-radius:6px;color:var(--accent-primary);cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:6px;justify-content:flex-start;padding:8px 12px;transition:all .2s ease;width:100%}.hint-toggle:hover{background:#ff6b351f;border-color:#ff6b3540}.hint-content{animation:slideDown .3s ease-out;background:#ffffff08;border-left:3px solid var(--accent-primary);border-radius:4px;color:var(--text-secondary);font-size:14px;line-height:1.6;margin-top:12px;padding:12px}.card-actions{display:flex;gap:8px;margin-top:12px}.action-btn{border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s ease}.action-btn.secondary{background:#0000;border:1px solid var(--border-color);color:var(--text-secondary)}.action-btn.secondary:hover{background:#ffffff0d;border-color:var(--accent-primary);color:var(--text-primary)}.priority-section{margin-bottom:32px}.section-title{align-items:center;border-bottom:2px solid var(--border-color);display:flex;font-size:16px;font-weight:600;gap:8px;margin:0 0 16px;padding-bottom:8px}.section-title.high{color:#ef4444}.section-title.medium{color:#f59e0b}.section-title.low{color:#3b82f6}.strengths-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.strength-card{align-items:flex-start;background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border:1px solid #22c55e33;border-radius:8px;display:flex;gap:12px;padding:16px}.strength-icon{flex-shrink:0;font-size:20px}.strength-card p{color:var(--text-secondary);font-size:14px;line-height:1.6;margin:0}.next-steps-list{display:flex;flex-direction:column;gap:16px}.next-step-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;display:flex;gap:16px;padding:16px}.step-number{align-items:center;background:var(--accent-primary);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:16px;font-weight:700;height:32px;justify-content:center;width:32px}.next-step-item p{color:var(--text-secondary);font-size:14px;line-height:1.6;margin:0;padding-top:4px}.empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:64px;margin-bottom:16px}.empty-state h3{color:var(--text-primary);font-size:20px;margin:0 0 8px}.empty-state p{color:var(--text-secondary);font-size:14px;margin:0;max-width:400px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.journey-header{flex-direction:column;gap:24px}.score-circle{height:120px;width:120px}.score-value{font-size:28px}.current-badge{padding:16px 24px}.badge-icon-large{font-size:40px}.badge-name-large{font-size:14px}.strengths-grid{grid-template-columns:1fr}.suggestions-tabs{padding:0 8px}.tab-btn{font-size:13px;padding:10px 12px}.tab-icon{font-size:14px}.tab-label{display:none}.tab-btn.active .tab-label{display:inline}}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-sizing:border-box;height:50px;justify-content:space-between;padding:8px 16px}.header,.header-left{gap:16px}.back-btn,.header,.header-left{align-items:center;display:flex}.back-btn{background:#0000;border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;height:32px;justify-content:center;transition:all .2s ease;width:32px}.back-btn:hover{background:var(--bg-hover);border-color:var(--accent-primary);color:var(--accent-primary)}.logo{align-items:center;display:flex;gap:10px;text-decoration:none;transition:opacity .2s ease}.logo:hover{opacity:.8}.logo-icon{color:var(--accent-primary);font-size:20px;text-shadow:0 0 20px var(--accent-glow)}.logo-text{color:var(--text-primary);font-family:var(--font-mono);font-size:var(--text-base);font-weight:var(--font-semibold);letter-spacing:.5px}.challenge-badge{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:16px;color:var(--text-secondary);display:flex;font-size:13px;gap:8px;padding:4px 12px}.badge-dot{animation:pulse 2s infinite;background:var(--success);border-radius:50%;height:8px;width:8px}.header-center{display:flex;flex:1 1;justify-content:center}.challenges-link{align-items:center;background:#0000;border:1px solid var(--border-color);border-radius:var(--radius-md);box-sizing:border-box;color:var(--text-secondary);display:flex;font-size:13px;font-weight:var(--font-medium);gap:8px;height:32px;padding:6px 16px;text-decoration:none;transition:all .2s ease}.challenges-link:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.header-right{align-items:center;display:flex;gap:10px}.auto-save-indicator{align-items:center;border-radius:var(--radius-sm);display:flex;font-size:12px;font-weight:500;gap:6px;padding:6px 12px;transition:all .3s ease}.auto-save-indicator.saving{background:#ffc2341a;border:1px solid #ffc2344d;color:var(--warning)}.auto-save-indicator.unsaved{background:#ff6b351a;border:1px solid #ff6b354d;color:var(--accent-primary)}.save-spinner{animation:spin .8s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:initial;display:inline-block;height:12px;width:12px}.unsaved-dot{animation:pulse 2s infinite;background:currentColor;border-radius:50%;height:6px;width:6px}@keyframes spin{to{transform:rotate(1turn)}}.btn{align-items:center;border:1px solid var(--border-color);border-radius:var(--radius-md);box-sizing:border-box;cursor:pointer;display:flex;font-family:var(--font-display);font-size:13px;font-weight:var(--font-medium);gap:6px;height:32px;padding:6px 12px;transition:all .2s ease}.btn-secondary{background:#0000;color:var(--text-secondary)}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.btn-feedback{background:#0000;color:var(--text-secondary)}.btn-feedback:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.btn-feedback svg{flex-shrink:0;height:16px;width:16px}.btn-icon{background:#0000;color:var(--text-secondary);justify-content:center;margin-right:6px;padding:6px;width:32px}.btn-icon:hover{background:var(--bg-hover);border-color:var(--text-muted);color:var(--text-primary)}.btn-icon svg{flex-shrink:0}.btn-primary{background:linear-gradient(135deg,var(--accent-primary) 0,#ff8c5a 100%);border-color:#0000;color:#fff}.btn-primary:hover{border-color:#0000;opacity:.9}.btn.saving{opacity:.8;pointer-events:none}.btn-spinner{animation:btn-spin .8s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:initial;display:inline-block;height:14px;margin-right:8px;vertical-align:middle;width:14px}@keyframes btn-spin{0%{border-right-color:#0000;border-top-color:initial;transform:rotate(0deg)}25%{border-right-color:initial;border-top-color:initial}50%{border-bottom-color:initial;border-right-color:initial;border-top-color:#0000;transform:rotate(180deg)}75%{border-bottom-color:initial;border-left-color:initial;border-right-color:#0000}to{border-bottom-color:#0000;border-left-color:#0000;border-right-color:#0000;border-top-color:initial;transform:rotate(1turn)}}.btn-secondary .btn-spinner{animation:btn-dots 1.2s linear infinite;background:currentColor;border:none;border-radius:2px;height:4px;margin-right:8px;position:relative;width:16px}.btn-secondary .btn-spinner:after,.btn-secondary .btn-spinner:before{background:currentColor;border-radius:50%;content:"";height:4px;position:absolute;top:0;width:4px}.btn-secondary .btn-spinner:before{animation:btn-dots-before 1.2s linear infinite;left:-8px}.btn-secondary .btn-spinner:after{animation:btn-dots-after 1.2s linear infinite;right:-8px}@keyframes btn-dots{0%,20%,80%,to{opacity:1;transform:scaleY(1)}50%{opacity:.3;transform:scaleY(.3)}}@keyframes btn-dots-before{0%,40%,to{opacity:.3;transform:scale(.8)}20%{opacity:1;transform:scale(1)}}@keyframes btn-dots-after{0%,60%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media (max-width:1000px){.header-center{display:none}}@media (max-width:600px){.header{flex-wrap:wrap;gap:12px}.header-left{flex:1 1}.challenge-badge{display:none}}.auth-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.auth-modal-content{animation:modalSlideIn .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;max-width:400px;padding:32px;position:relative;width:90%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.auth-modal-close{align-items:center;background:none;border:none;border-radius:4px;color:#666;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;position:absolute;right:16px;top:16px;transition:all .2s;width:32px}.auth-modal-close:hover{background:#f5f5f5;color:#333}.auth-modal-body{text-align:center}.auth-modal-body h2{color:#333;font-size:var(--text-2xl);margin:0 0 12px}.auth-modal-body p{color:#666;font-size:var(--text-sm);margin:0 0 24px}.google-signin-button{align-items:center;background:#fff;border:1px solid #ddd;border-radius:6px;box-shadow:0 2px 4px #0000001a;color:#333;cursor:pointer;display:flex;font-size:var(--text-base);font-weight:var(--font-medium);gap:12px;justify-content:center;padding:12px 24px;transition:all .2s;width:100%}.google-signin-button:hover{background:#f8f9fa;border-color:#ccc;box-shadow:0 4px 8px #00000026}.google-signin-button:active{box-shadow:0 1px 2px #0000001a;transform:translateY(1px)}.auth-modal-note{color:#999!important;font-size:12px!important;margin-top:20px!important}.welcome-banner{align-items:center;animation:slideDown .4s ease-out;background:linear-gradient(135deg,#ff6b351f,#ffc23414);border:1px solid #ff6b3540;border-radius:10px;box-shadow:0 4px 12px #0000001a;display:flex;gap:16px;justify-content:space-between;margin:12px 16px;padding:14px 20px;position:relative}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.welcome-content{align-items:center;display:flex;flex:1 1;gap:12px}.welcome-emoji{flex-shrink:0;font-size:24px;line-height:1}.welcome-text{align-items:center;color:var(--text-primary);display:flex;flex-wrap:wrap;font-size:14px;gap:8px;line-height:1.5}.welcome-text strong{color:var(--accent-primary);font-weight:600}.welcome-steps{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.step{background:#ffffff14;border:1px solid #ffffff1a;border-radius:6px;color:var(--text-secondary);font-size:13px;font-weight:500;padding:4px 10px;white-space:nowrap}.step-separator{color:var(--accent-primary);font-size:16px;font-weight:600;opacity:.7}.welcome-close{align-items:center;background:#ffffff1a;border:1px solid #ffffff26;border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;flex-shrink:0;font-size:16px;height:28px;justify-content:center;transition:all .2s ease;width:28px}.welcome-close:hover{background:#ffffff26;border-color:var(--accent-primary);color:var(--text-primary)}.welcome-close:active{transform:scale(.95)}.tour-button{background:linear-gradient(135deg,#ff6b35,#ff8555);border:none;border-radius:6px;box-shadow:0 2px 6px #ff6b354d;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:6px 14px;transition:all .2s ease;white-space:nowrap}.tour-button:hover{box-shadow:0 4px 12px #ff6b3566;transform:translateY(-2px)}.tour-button:active{transform:translateY(0)}@media (max-width:768px){.welcome-banner{align-items:flex-start;flex-direction:column;padding:12px 16px}.welcome-close{position:absolute;right:8px;top:8px}.welcome-text{gap:6px}.welcome-steps,.welcome-text{align-items:flex-start;flex-direction:column}.welcome-steps{gap:4px}.step-separator{display:none}}.__floater__open{z-index:10001!important}.react-joyride__tooltip h3{color:#fff;font-size:18px;font-weight:600;margin:0 0 12px}.react-joyride__tooltip p{color:#e0e0e0;font-size:14px;line-height:1.6;margin:0}.react-joyride__spotlight{border-radius:4px}.react-joyride__tooltip div[aria-label*=step]{color:#999;font-size:12px}button[data-action=primary]:hover{background-color:#ff8555!important;transform:translateY(-1px);transition:all .2s ease}button[data-action=back]:hover{color:#fff!important;transition:color .2s ease}button[data-action=skip]:hover{color:#aaa!important;transition:color .2s ease}.react-joyride__beacon{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.1)}}@media (max-width:768px){.react-joyride__tooltip{max-width:90vw!important}.react-joyride__tooltip h3{font-size:16px}.react-joyride__tooltip p{font-size:13px}}.app,.design-page{background:radial-gradient(ellipse at 20% 20%,#ff6b3514 0,#0000 50%),radial-gradient(ellipse at 80% 80%,#ffc2340d 0,#0000 50%),linear-gradient(180deg,var(--bg-primary) 0,var(--bg-secondary) 100%);display:flex;flex-direction:column;height:100vh;overflow:hidden;width:100vw}.main-content{flex:1 1;gap:0;padding:8px}.main-content,.panel{display:flex;overflow:hidden;position:relative}.panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);flex-direction:column;opacity:0;transition:width .3s ease,min-width .3s ease,opacity .3s ease}.panel-left{flex-shrink:0;margin-right:4px;min-width:280px;width:280px}.panel-left.collapsed{border:none;margin-right:0;min-width:0;width:0}.panel-center{flex:1 1;margin:0 4px;min-width:400px}.panel-right{flex-shrink:0;margin-left:4px;min-width:340px;width:340px}.panel-right.collapsed{border:none;margin-left:0;min-width:0!important;width:0!important}.panel-toggle{align-items:center;background:var(--bg-tertiary);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;display:flex;font-size:10px;height:60px;justify-content:center;opacity:.6;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:20px;z-index:100}.panel-toggle:hover{background:var(--bg-hover);color:var(--accent-primary);opacity:1;width:24px}.panel-toggle-left{border-left:none;border-radius:0 var(--radius-sm) var(--radius-sm) 0;left:0}.panel-toggle-left.expanded{left:284px}.panel-toggle-right{border-radius:var(--radius-sm) 0 0 var(--radius-sm);border-right:none;right:0}.panel-toggle-right.expanded{right:344px}.panel-header{background:linear-gradient(180deg,var(--bg-tertiary) 0,var(--bg-card) 100%);border-bottom:1px solid var(--border-color);padding:10px 14px}.panel-header h2{align-items:center;color:var(--text-secondary);display:flex;font-weight:var(--font-semibold);gap:8px;letter-spacing:.5px;margin:0;text-transform:uppercase}.panel-header h2,.panel-header h2 .icon{font-size:var(--text-base)}.panel-content{flex:1 1;overflow-y:auto;padding:16px}@media (max-width:1200px){.panel-left{min-width:260px;width:260px}.panel-toggle-left.expanded{left:264px}.panel-right{max-width:100vw;min-width:50%;width:50%}.panel-toggle-right.expanded{right:284px}}@media (max-width:900px){.main-content{flex-direction:column}.panel{margin:0!important;min-width:0!important;min-width:auto!important;width:100%!important}.panel-center{min-height:400px}.panel-toggle{display:none}}
/*# sourceMappingURL=main.a1e2a3b7.css.map*/