.navbar{position:sticky;top:0;z-index:100;width:100%;background:var(--surface-1, #0f172a);border-bottom:1px solid var(--border, #334155);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.navbar-inner{max-width:1200px;margin:0 auto;padding:0 1.5rem;height:60px;display:flex;align-items:center;gap:2rem}.navbar-logo{font-size:1.1rem;font-weight:700;color:var(--text-primary, #f1f5f9);text-decoration:none;white-space:nowrap;letter-spacing:-.01em}.logo-bracket{color:var(--accent, #6366f1)}.navbar-links{display:flex;align-items:center;gap:.25rem;flex:1}.nav-link{padding:.35rem .75rem;border-radius:6px;font-size:.88rem;font-weight:500;color:var(--text-secondary, #94a3b8);text-decoration:none;transition:color .15s,background .15s}.nav-link:hover{color:var(--text-primary, #f1f5f9);background:var(--surface-2, #1e293b)}.nav-link.active{color:var(--accent, #6366f1);background:#6366f11a}.navbar-actions{display:flex;align-items:center;gap:.5rem;margin-left:auto}.key-btn{display:inline-flex;align-items:center;gap:.4rem}.key-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.key-dot.green{background:#4ade80;box-shadow:0 0 5px #4ade8080}.key-dot.red{background:#f87171;box-shadow:0 0 5px #f8717180}.btn{display:inline-flex;align-items:center;gap:.4rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;border:none;text-decoration:none;transition:opacity .15s,background .15s,color .15s;padding:.55rem 1.1rem}.btn-sm{font-size:.8rem;padding:.35rem .8rem}.btn-primary{background:var(--accent, #6366f1);color:#fff}.btn-primary:hover{opacity:.88}.btn-ghost{background:transparent;color:var(--text-secondary, #94a3b8)}.btn-ghost:hover{background:var(--surface-2, #1e293b);color:var(--text-primary, #f1f5f9)}.btn-outline{background:transparent;color:var(--text-primary, #f1f5f9);border:1px solid var(--border, #334155)}.btn-outline:hover{background:var(--surface-2, #1e293b)}.mobile-menu-btn{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:.25rem;margin-left:auto}.mobile-menu-btn span{display:block;width:22px;height:2px;background:var(--text-primary, #f1f5f9);border-radius:2px;transition:transform .2s,opacity .2s}@media (max-width: 768px){.mobile-menu-btn{display:flex}.navbar-links{display:none;position:absolute;top:60px;left:0;right:0;flex-direction:column;align-items:flex-start;background:var(--surface-1, #0f172a);border-bottom:1px solid var(--border, #334155);padding:.75rem 1.5rem;gap:.25rem}.navbar-links.open{display:flex}.nav-link{width:100%;padding:.6rem .75rem}.navbar-actions{gap:.35rem}.navbar-inner{position:relative}}.home{max-width:1000px;margin:0 auto;padding:2rem 1.5rem}.home__hero{text-align:center;padding:4rem 1rem}.home__title{font-size:3rem;font-weight:800;margin-bottom:1rem;background:linear-gradient(135deg,#fff 30%,var(--purple-light));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.15}.home__subtitle{font-size:1.1rem;color:var(--text-muted);max-width:600px;margin:0 auto 2.5rem;line-height:1.7}.home__actions{display:flex;justify-content:center;gap:1rem}.home__button{padding:.75rem 1.75rem;border-radius:var(--radius);font-size:1rem;text-decoration:none;font-weight:600;transition:all .2s ease}.home__button--primary{background-color:var(--purple);color:#fff;border:1px solid transparent}.home__button--primary:hover{background-color:#6d28d9;box-shadow:var(--glow)}.home__button--secondary{background-color:transparent;color:var(--purple-light);border:1px solid var(--purple)}.home__button--secondary:hover{background-color:#7c3aed22;box-shadow:var(--glow)}.home__features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;margin-top:3rem}.home__feature{background-color:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;transition:all .2s ease}.home__feature:hover{border-color:var(--purple);box-shadow:var(--glow)}.home__feature h3{margin:0 0 .5rem;color:var(--purple-light)}.home__feature p{margin:0;color:var(--text-muted);font-size:.9rem;line-height:1.6}.dashboard{max-width:900px;margin:0 auto;padding:2rem 1.5rem}.dashboard__title{margin:0;color:var(--text)}.dashboard__subtitle{color:var(--text-muted);margin:.25rem 0 1.5rem}.dashboard__quick-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem;margin-bottom:2rem}.dashboard__quick-link{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.25rem;text-decoration:none;color:var(--text);transition:box-shadow .2s,border-color .2s}.dashboard__quick-link:hover{border-color:var(--purple);box-shadow:var(--glow);text-decoration:none}.dashboard__quick-link h3{margin:0 0 .4rem;font-size:1rem;color:var(--purple-light)}.dashboard__quick-link p{margin:0;font-size:.85rem;color:var(--text-muted)}.dashboard__history h2{color:var(--text);margin-bottom:1rem}.dashboard__history-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.dashboard__history-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;display:flex;justify-content:space-between;align-items:flex-start}.dashboard__history-item p{color:var(--text-muted);margin:.25rem 0 0;font-size:.9rem}.dashboard__history-item--clickable{cursor:pointer;transition:box-shadow .2s,border-color .2s,transform .1s}.dashboard__history-item--clickable:hover{border-color:var(--purple);box-shadow:var(--glow);transform:translateY(-1px)}.dashboard__history-type{font-size:.75rem;font-weight:600;background:#7c3aed22;color:var(--purple-light);border:1px solid #7C3AED44;padding:.2rem .5rem;border-radius:20px;margin-bottom:.4rem;display:inline-block}.dashboard__history-type--interview{background:#f9731622;color:#f97316;border-color:#f9731644}.dashboard__history-right{display:flex;flex-direction:column;align-items:flex-end;gap:.4rem;margin-left:1rem;flex-shrink:0}.dashboard__history-date{font-size:.8rem;color:var(--text-dim);white-space:nowrap}.dashboard__history-arrow{color:var(--purple-light);font-size:1rem}.dashboard__info{color:var(--text-muted);font-style:italic}.dashboard__error{color:var(--red)}.analyze__title{margin:0;color:#1e293b}.analyze__subtitle{color:#64748b;margin:.25rem 0 1.5rem}.analyze__notice{background-color:#eff6ff;color:#2563eb;font-size:.85rem;padding:.6rem 1rem;border-radius:6px;margin-bottom:1.5rem}.analyze__error{color:#dc2626;margin-top:1rem}.progress-steps{display:flex;align-items:flex-start;justify-content:space-between;width:100%;margin:2rem 0}.progress-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative;text-align:center}.progress-step__circle{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.9rem;background-color:#e2e8f0;color:#64748b;border:2px solid #e2e8f0;transition:all .3s ease;z-index:2}.progress-step--active .progress-step__circle{background-color:#2563eb;border-color:#2563eb;color:#fff}.progress-step--done .progress-step__circle{background-color:#16a34a;border-color:#16a34a;color:#fff}.progress-step--optional .progress-step__circle{background-color:#fff7ed;border:2px dashed #f97316;color:#f97316;font-size:1rem;transition:background-color .2s,transform .15s}.progress-step--optional .progress-step__circle:hover{background-color:#ffedd5;transform:scale(1.08)}.progress-step__optional-tag{display:block;font-size:.65rem;color:#f97316;font-weight:600;text-transform:uppercase;letter-spacing:.04em;margin-top:2px}.progress-step__label{margin-top:.5rem;font-size:.8rem;color:#475569;max-width:100px}.progress-step--active .progress-step__label{color:#2563eb;font-weight:600}.progress-step--done .progress-step__label{color:#16a34a}.progress-step--optional .progress-step__label{color:#f97316;font-weight:600}.progress-step__line{position:absolute;top:18px;left:50%;width:100%;height:2px;background-color:#e2e8f0;z-index:1}.progress-step--done .progress-step__line{background-color:#16a34a}@media (max-width: 640px){.progress-steps{flex-direction:column;gap:1rem}.progress-step{flex-direction:row;width:100%;text-align:left;gap:.75rem}.progress-step__label{margin-top:0;max-width:none}.progress-step__line{display:none}}.result-panel{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.result-panel--empty{padding:2rem;text-align:center;color:#94a3b8;border:1px dashed #cbd5e1;border-radius:8px}.result-panel__item{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem 1.5rem}.result-panel__title{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:#1e293b}.result-panel__text{margin:0;color:#475569;line-height:1.7}.result-panel__list{margin:0;padding-left:1.25rem;color:#475569;line-height:1.8}.result-panel__risks{display:flex;flex-direction:column;gap:.75rem}.risk-group{display:flex;flex-direction:column;gap:.35rem}.risk-badge{display:inline-block;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:.2rem .6rem;border-radius:999px;width:fit-content}.risk-badge--alto{background-color:#fee2e2;color:#dc2626}.risk-badge--medio{background-color:#fef3c7;color:#d97706}.risk-badge--baixo{background-color:#dcfce7;color:#16a34a}.result-panel__qa{display:flex;flex-direction:column;gap:1rem}.qa-item__question{margin:0 0 .25rem;font-weight:600;color:#1e293b}.qa-item__answer{margin:0;color:#475569;line-height:1.7;padding-left:1.25rem;border-left:3px solid #e2e8f0}.result-panel__map{display:flex;flex-direction:column;gap:.5rem}.map-item{display:flex;flex-direction:column;gap:.2rem}.map-item__key{font-size:.8rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em}.analyze{max-width:900px;margin:0 auto;padding:2rem 1.5rem}.analyze__title{margin:0;color:var(--text)}.analyze__subtitle{color:var(--text-muted);margin:.25rem 0 1.5rem}.analyze__notice{background-color:#7c3aed22;color:var(--purple-light);border:1px solid #7C3AED44;font-size:.85rem;padding:.6rem 1rem;border-radius:var(--radius);margin-bottom:1.5rem}.analyze__error{color:#f87171;margin-top:1rem}.analyze__mode-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.analyze__mode-tab{flex:1;padding:.65rem 1rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text-muted);font-size:.9rem;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.analyze__mode-tab:hover{color:var(--text);border-color:var(--purple-light)}.analyze__mode-tab--active{background:var(--purple);color:#fff;border-color:var(--purple)}.analyze__github{display:flex;flex-direction:column;gap:1rem}.analyze__github-input-row{display:flex;gap:.75rem}.analyze__github-input{flex:1;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:.65rem 1rem;font-size:.95rem;font-family:var(--font-mono, monospace);transition:border-color .2s}.analyze__github-input:focus{outline:none;border-color:var(--purple-light)}.analyze__github-btn{white-space:nowrap;padding:.65rem 1.25rem;border-radius:var(--radius);border:none;background:var(--purple);color:#fff;font-size:.9rem;cursor:pointer;transition:opacity .2s}.analyze__github-btn:disabled{opacity:.5;cursor:not-allowed}.analyze__filetree{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.analyze__filetree-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border);font-size:.9rem;color:var(--text-muted);font-family:var(--font-mono, monospace)}.analyze__toggle-all{background:none;border:none;color:var(--purple-light);font-size:.8rem;cursor:pointer;padding:0}.analyze__toggle-all:hover{text-decoration:underline}.analyze__filelist{max-height:320px;overflow-y:auto;padding:.5rem 0}.analyze__file-item{display:flex;align-items:center;gap:.6rem;padding:.35rem 1rem;cursor:pointer;transition:background .15s}.analyze__file-item:hover{background:var(--bg)}.analyze__file-item input[type=checkbox]{accent-color:var(--purple);width:14px;height:14px;flex-shrink:0}.analyze__file-path{font-size:.82rem;font-family:var(--font-mono, monospace);color:var(--text);word-break:break-all}.analyze__filetree-footer{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-top:1px solid var(--border)}.analyze__selected-count{font-size:.82rem;color:var(--text-muted)}.analyze__github-analyze-btn{padding:.6rem 1.25rem;border-radius:var(--radius);border:none;background:var(--purple);color:#fff;font-size:.9rem;cursor:pointer;transition:opacity .2s}.analyze__github-analyze-btn:disabled{opacity:.5;cursor:not-allowed}.analyze__interview-cta{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:linear-gradient(135deg,#1e1b4b,#0f172a);border:1px solid #4f46e5;border-radius:14px;padding:1.4rem 1.75rem;margin:1.5rem 0}.analyze__interview-cta strong{display:block;font-size:1rem;color:#e0e7ff;margin-bottom:.3rem}.analyze__interview-cta p{margin:0;font-size:.875rem;color:#94a3b8}.btn-interview{background:var(--purple);color:#fff;border:none;border-radius:10px;padding:.7rem 1.5rem;font-size:.95rem;font-weight:700;cursor:pointer;white-space:nowrap;transition:background .2s,transform .15s;flex-shrink:0}.btn-interview:hover{background:#6d28d9;transform:translateY(-2px)}@media (max-width: 600px){.analyze__interview-cta{flex-direction:column;align-items:flex-start}.btn-interview{width:100%;text-align:center}}.json-input{display:flex;flex-direction:column;gap:.75rem}.json-input__label{font-weight:600;color:#1e293b}.json-input__textarea{width:100%;font-family:Courier New,monospace;font-size:.9rem;padding:1rem;border:1px solid #cbd5e1;border-radius:8px;resize:vertical;background-color:#f8fafc;color:#1e293b}.json-input__textarea:focus{outline:none;border-color:#2563eb;background-color:#fff}.json-input__error{color:#dc2626;font-size:.875rem;margin:0}.json-input__button{align-self:flex-start;background-color:#2563eb;color:#fff;border:none;padding:.7rem 1.5rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.json-input__button:hover:not(:disabled){background-color:#1d4ed8}.json-input__button:disabled{background-color:#94a3b8;cursor:not-allowed}.workflow-result{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.workflow-result__section{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem}.workflow-result__section h3{margin:0 0 .75rem;color:#1e293b}.workflow-result__section p{margin:0;color:#475569;line-height:1.6}.workflow-result__nodes{display:flex;flex-direction:column;gap:.75rem}.workflow-result__node{background-color:#f8fafc;border-radius:6px;padding:.75rem 1rem}.workflow-result__node h4{margin:0 0 .35rem;color:#2563eb;font-size:.95rem}.workflow-result__node p{margin:0;font-size:.9rem}.workflow-result__section ul{margin:0;padding-left:1.25rem;color:#475569;line-height:1.6}.workflow-result__issue{color:#b45309}.n8n-analyze{max-width:900px;margin:0 auto;padding:2rem 1.5rem}.n8n-analyze__title{margin:0;color:var(--text)}.n8n-analyze__subtitle{color:var(--text-muted);margin:.25rem 0 1.5rem}.n8n-analyze__notice{background-color:#7c3aed22;color:var(--purple-light);border:1px solid #7C3AED44;font-size:.85rem;padding:.6rem 1rem;border-radius:var(--radius);margin-bottom:1.5rem}.n8n-analyze__error{color:#f87171;margin-top:1rem}.error-input{display:flex;flex-direction:column;gap:.75rem}.error-input__label{font-weight:600;color:#1e293b}.error-input__textarea{width:100%;font-family:Courier New,monospace;font-size:.9rem;padding:1rem;border:1px solid #cbd5e1;border-radius:8px;resize:vertical;background-color:#f8fafc;color:#1e293b}.error-input__textarea:focus{outline:none;border-color:#2563eb;background-color:#fff}.error-input__error{color:#dc2626;font-size:.875rem;margin:0}.error-input__button{align-self:flex-start;background-color:#2563eb;color:#fff;border:none;padding:.7rem 1.5rem;border-radius:6px;font-size:1rem;cursor:pointer;transition:background-color .2s ease}.error-input__button:hover:not(:disabled){background-color:#1d4ed8}.error-input__button:disabled{background-color:#94a3b8;cursor:not-allowed}.error-result{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.error-result__section{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem}.error-result__section h3{margin:0 0 .75rem;color:#1e293b}.error-result__section p{margin:0;color:#475569;line-height:1.6;white-space:pre-wrap}.error-result__prompt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.error-result__prompt-header h3{margin:0}.error-result__copy-button{background-color:#16a34a;color:#fff;border:none;padding:.4rem 1rem;border-radius:6px;font-size:.85rem;cursor:pointer;transition:background-color .2s ease}.error-result__copy-button:hover{background-color:#15803d}.error-result__prompt{background-color:#f8fafc;border-radius:6px;padding:1rem;font-size:.85rem;white-space:pre-wrap;word-break:break-word;color:#334155;margin:0}.error-helper{max-width:800px;margin:0 auto;padding:2rem 1.5rem;display:flex;flex-direction:column;gap:1.5rem}.error-helper__title{font-size:1.75rem;font-weight:700;color:var(--text-primary, #f1f5f9);margin:0}.error-helper__subtitle{font-size:1rem;color:var(--text-secondary, #94a3b8);margin:0;line-height:1.6}.error-helper__notice{display:inline-flex;align-items:center;gap:.5rem;background:var(--surface-2, #1e293b);border:1px solid var(--border, #334155);border-radius:8px;padding:.6rem 1rem;font-size:.85rem;color:var(--text-secondary, #94a3b8);width:fit-content}.error-helper__error{color:var(--error, #f87171);background:#f8717114;border:1px solid rgba(248,113,113,.2);border-radius:8px;padding:.75rem 1rem;font-size:.9rem;margin:0}.concept-card{background:var(--surface, #1e1e2e);border:1.5px solid var(--border, rgba(255,255,255,.08));border-radius:14px;padding:1.25rem;display:flex;flex-direction:column;gap:.875rem;transition:border-color .2s,transform .15s}.concept-card:hover{border-color:#6366f159;transform:translateY(-2px)}.concept-card--preview{border-color:transparent;background:transparent;padding:0}.concept-card--preview:hover{transform:none;border-color:transparent}.concept-card__top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.concept-card__term{margin:0;font-size:1.05rem;font-weight:600;color:var(--text);line-height:1.3}.concept-card__cat{font-size:.7rem;font-weight:500;padding:.2rem .6rem;border-radius:999px;white-space:nowrap;flex-shrink:0;margin-top:2px}.concept-card__cat--frontend{background:#6366f126;color:#818cf8}.concept-card__cat--backend{background:#10b9811f;color:#34d399}.concept-card__cat--infra{background:#f59e0b1f;color:#fbbf24}.concept-card__cat--devops{background:#3b82f61f;color:#60a5fa}.concept-card__cat--db{background:#a855f71f;color:#c084fc}.concept-card__cat--sec{background:#ef44441f;color:#f87171}.concept-card__cat--geral{background:#94a3b81a;color:#94a3b8}.concept-card__explanation{margin:0;font-size:.875rem;color:var(--text-muted);line-height:1.6}.concept-card__block{background:#ffffff08;border-radius:8px;padding:.75rem}.concept-card__block--analogy{border-left:3px solid #6366f1}.concept-card__block--error{border-left:3px solid #f87171;background:#f871710d}.concept-card__block p{margin:0;font-size:.82rem;color:var(--text-muted);line-height:1.55}.concept-card__label{display:block;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6366f1;margin-bottom:.35rem}.concept-card__label--error{color:#f87171}.concept-card__related{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.25rem}.concept-card__tag{font-size:.72rem;padding:.2rem .55rem;border-radius:6px;background:#ffffff0d;color:var(--text-muted);border:1px solid var(--border, rgba(255,255,255,.08))}.glossary{max-width:960px;margin:0 auto;padding:2rem 1.5rem 4rem}.glossary__header{margin-bottom:2rem}.glossary__title{margin:0 0 .25rem;color:var(--text);font-size:1.75rem;font-weight:600}.glossary__subtitle{color:var(--text-muted);margin:0;font-size:.95rem}.glossary__search-bar{margin-bottom:1rem}.glossary__search-input-wrap{position:relative;display:flex;align-items:center}.glossary__search-icon{position:absolute;left:1rem;font-size:1.25rem;color:var(--text-muted);pointer-events:none;line-height:1}.glossary__search-input{width:100%;padding:.75rem 2.75rem;background:var(--surface, #1e1e2e);border:1.5px solid var(--border, rgba(255,255,255,.1));border-radius:10px;color:var(--text);font-size:1rem;transition:border-color .2s;box-sizing:border-box}.glossary__search-input:focus{outline:none;border-color:#6366f1}.glossary__search-input::placeholder{color:var(--text-muted)}.glossary__search-clear{position:absolute;right:.875rem;background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:.85rem;padding:4px;line-height:1;transition:color .15s}.glossary__search-clear:hover{color:var(--text)}.glossary__categories{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.75rem}.glossary__category-btn{padding:.35rem .85rem;border-radius:999px;border:1.5px solid var(--border, rgba(255,255,255,.1));background:transparent;color:var(--text-muted);font-size:.8rem;cursor:pointer;transition:all .15s;white-space:nowrap}.glossary__category-btn:hover{border-color:#6366f1;color:var(--text)}.glossary__category-btn--active{background:#6366f1;border-color:#6366f1;color:#fff}.glossary__info{color:var(--text-muted);font-style:italic}.glossary__error{color:#f87171}.glossary__save-success{background:#10b9811f;border:1px solid rgba(16,185,129,.3);color:#10b981;border-radius:8px;padding:.75rem 1rem;font-size:.9rem;margin-bottom:1.25rem}.glossary__empty-state{text-align:center;padding:3rem 1.5rem;border:1.5px dashed var(--border, rgba(255,255,255,.1));border-radius:12px;margin-bottom:2rem}.glossary__empty-title{font-size:1rem;color:var(--text);margin:0 0 .5rem}.glossary__empty-desc{font-size:.875rem;color:var(--text-muted);margin:0 0 1.25rem}.glossary__gen-error{color:#f87171;font-size:.85rem;margin-bottom:1rem}.glossary__gen-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:.9rem;cursor:pointer;transition:background .2s,opacity .2s}.glossary__gen-btn:hover:not(:disabled){background:#4f46e5}.glossary__gen-btn:disabled{opacity:.6;cursor:not-allowed}.glossary__gen-preview{margin-bottom:2rem;border:1.5px solid rgba(99,102,241,.4);border-radius:14px;padding:1.25rem;background:#6366f10d}.glossary__gen-preview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.glossary__gen-badge{font-size:.78rem;color:#818cf8;font-weight:500;letter-spacing:.01em}.glossary__gen-discard{background:none;border:none;color:var(--text-muted);font-size:.8rem;cursor:pointer;text-decoration:underline}.glossary__gen-actions{display:flex;gap:.75rem;margin-top:1rem}.glossary__gen-save{padding:.55rem 1.25rem;background:#6366f1;color:#fff;border:none;border-radius:8px;font-size:.875rem;cursor:pointer;transition:background .2s,opacity .2s}.glossary__gen-save:hover:not(:disabled){background:#4f46e5}.glossary__gen-save:disabled{opacity:.6;cursor:not-allowed}.glossary__gen-discard-btn{padding:.55rem 1rem;background:transparent;border:1.5px solid var(--border, rgba(255,255,255,.1));color:var(--text-muted);border-radius:8px;font-size:.875rem;cursor:pointer;transition:border-color .15s,color .15s}.glossary__gen-discard-btn:hover{border-color:#f87171;color:#f87171}.glossary__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.25rem}.analysis-detail{max-width:900px;margin:0 auto;padding:2rem 1.5rem}.analysis-detail__loading,.analysis-detail__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem;color:#64748b}.analysis-detail__error button{background:#2563eb;color:#fff;border:none;border-radius:8px;padding:.6rem 1.2rem;cursor:pointer;font-size:.95rem}.analysis-detail__back{background:none;border:none;color:#2563eb;font-size:.95rem;cursor:pointer;padding:0;margin-bottom:1.5rem;display:inline-flex;align-items:center;gap:.3rem;transition:opacity .2s}.analysis-detail__back:hover{opacity:.7}.analysis-detail__header{margin-bottom:2rem}.analysis-detail__type-badge{font-size:.75rem;font-weight:600;background:#eff6ff;color:#2563eb;padding:.25rem .6rem;border-radius:4px;display:inline-block;margin-bottom:.6rem}.analysis-detail__title{margin:0 0 .3rem;font-size:1.6rem;color:#1e293b;word-break:break-all}.analysis-detail__date{margin:0 0 1.25rem;color:#94a3b8;font-size:.85rem}.analysis-detail__interview-btn{display:inline-flex;align-items:center;gap:.5rem;background:var(--purple, #7c3aed);color:#fff;border:none;border-radius:10px;padding:.7rem 1.5rem;font-size:.95rem;font-weight:700;cursor:pointer;transition:background .2s,transform .15s}.analysis-detail__interview-btn:hover{background:#6d28d9;transform:translateY(-2px)}.interview-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.interview-modal{background:#1e293b;border:1px solid #334155;border-radius:16px;padding:2rem;width:100%;max-width:420px;display:flex;flex-direction:column;gap:1.25rem}.interview-modal h2{margin:0;font-size:1.25rem;color:#f1f5f9}.interview-modal p{margin:0;color:#94a3b8;font-size:.9rem}.interview-modal__option{flex:1;padding:.65rem;border-radius:8px;border:1px solid #334155;background:#0f172a;color:#94a3b8;font-size:.9rem;cursor:pointer;transition:border-color .2s,color .2s,background .2s}.interview-modal__option:hover{border-color:var(--purple, #7c3aed);color:#e0e7ff}.interview-modal__option--active{border-color:var(--purple, #7c3aed);background:#4c1d9522;color:#c4b5fd;font-weight:700}.interview-modal__actions{display:flex;gap:.75rem;justify-content:flex-end}.interview-modal__cancel{background:none;border:1px solid #334155;color:#64748b;border-radius:8px;padding:.6rem 1.1rem;font-size:.9rem;cursor:pointer;transition:border-color .2s,color .2s}.interview-modal__cancel:hover{border-color:#64748b;color:#94a3b8}.interview-modal__start{background:var(--purple, #7c3aed);color:#fff;border:none;border-radius:8px;padding:.6rem 1.25rem;font-size:.9rem;font-weight:700;cursor:pointer;transition:background .2s}.interview-modal__start:hover{background:#6d28d9}.interview-sessions{margin-top:2.5rem}.interview-sessions__title{font-size:1.1rem;font-weight:700;color:#1e293b;margin:0 0 1rem}.interview-sessions__empty{color:#94a3b8;font-size:.9rem;padding:1rem 0}.interview-session-card{border:1px solid #e2e8f0;border-radius:10px;margin-bottom:.75rem;overflow:hidden;transition:border-color .2s}.interview-session-card:hover{border-color:#bfdbfe}.interview-session-card__header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.25rem;cursor:pointer;background:#f8fafc;gap:1rem}.interview-session-card__header:hover{background:#f1f5f9}.interview-session-card__meta{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.session-date{font-size:.85rem;color:#64748b}.session-score{font-size:.85rem;font-weight:700;padding:.2rem .6rem;border-radius:20px}.session-score--high{background:#dcfce7;color:#15803d}.session-score--mid{background:#fef9c3;color:#854d0e}.session-score--low{background:#fee2e2;color:#b91c1c}.session-questions-count{font-size:.8rem;color:#94a3b8}.session-chevron{font-size:.75rem;color:#94a3b8;transition:transform .2s}.session-chevron--open{transform:rotate(180deg)}.interview-session-card__body{padding:0 1.25rem 1.25rem;border-top:1px solid #f1f5f9}.session-question-item{padding:1rem 0;border-bottom:1px solid #f1f5f9}.session-question-item:last-child{border-bottom:none}.session-question-item__q{font-size:.9rem;font-weight:600;color:#1e293b;margin-bottom:.5rem}.session-question-item__label{font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;margin:.5rem 0 .2rem}.session-question-item__text{font-size:.85rem;color:#475569;line-height:1.5}.session-question-item__ideal{font-size:.85rem;color:#15803d;background:#f0fdf4;border-left:3px solid #16a34a;padding:.5rem .75rem;border-radius:0 6px 6px 0;line-height:1.5}.analysis-chat__fab{position:fixed;bottom:2rem;right:2rem;width:56px;height:56px;border-radius:50%;background:var(--purple, #7c3aed);color:#fff;font-size:1.4rem;border:none;cursor:pointer;box-shadow:0 4px 20px #7c3aed80;z-index:200;transition:transform .2s,background .2s;display:flex;align-items:center;justify-content:center}.analysis-chat__fab:hover{background:#6d28d9;transform:scale(1.08)}.analysis-chat__window{position:fixed;bottom:5.5rem;right:2rem;width:360px;max-height:500px;background:#1e293b;border:1px solid #334155;border-radius:16px;display:flex;flex-direction:column;z-index:199;box-shadow:0 8px 40px #0006;overflow:hidden}.analysis-chat__header{display:flex;align-items:center;justify-content:space-between;padding:.9rem 1.1rem;background:#0f172a;border-bottom:1px solid #334155;font-size:.85rem;font-weight:600;color:#c4b5fd}.analysis-chat__close{background:none;border:none;color:#64748b;cursor:pointer;font-size:1rem;line-height:1;padding:0;transition:color .2s}.analysis-chat__close:hover{color:#f1f5f9}.analysis-chat__messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem}.analysis-chat__msg{padding:.65rem .9rem;border-radius:12px;font-size:.85rem;line-height:1.5;max-width:90%;white-space:pre-wrap}.analysis-chat__msg--user{background:var(--purple, #7c3aed);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.analysis-chat__msg--assistant{background:#0f172a;color:#cbd5e1;align-self:flex-start;border-bottom-left-radius:4px;border:1px solid #1e293b}.analysis-chat__msg--loading{display:flex;gap:4px;align-items:center;padding:.75rem 1rem}.chat-dot{width:7px;height:7px;border-radius:50%;background:#7c3aed;animation:chatDotBounce 1.2s infinite ease-in-out}.chat-dot:nth-child(2){animation-delay:.2s}.chat-dot:nth-child(3){animation-delay:.4s}@keyframes chatDotBounce{0%,80%,to{transform:scale(.7);opacity:.4}40%{transform:scale(1);opacity:1}}.analysis-chat__input-row{display:flex;gap:.5rem;padding:.75rem 1rem;border-top:1px solid #334155;background:#0f172a}.analysis-chat__input{flex:1;background:#1e293b;border:1px solid #334155;border-radius:8px;padding:.55rem .85rem;color:#f1f5f9;font-size:.85rem;outline:none;transition:border-color .2s}.analysis-chat__input:focus{border-color:var(--purple, #7c3aed)}.analysis-chat__input::placeholder{color:#475569}.analysis-chat__send{background:var(--purple, #7c3aed);color:#fff;border:none;border-radius:8px;padding:.55rem .9rem;font-size:1rem;cursor:pointer;transition:background .2s}.analysis-chat__send:hover:not(:disabled){background:#6d28d9}.analysis-chat__send:disabled{opacity:.4;cursor:not-allowed}.interview{max-width:720px;margin:0 auto;padding:2rem 1.5rem}.interview--done{padding-bottom:4rem}.interview__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:1rem;color:var(--text-muted)}.interview__back{background:none;border:none;color:var(--purple-light);cursor:pointer;font-size:.9rem;padding:0;margin-bottom:1.5rem}.interview__back:hover{text-decoration:underline}.interview__progress{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;color:var(--text-muted);font-size:.85rem}.interview__progress-bar{flex:1;height:4px;background:var(--border);border-radius:99px;overflow:hidden}.interview__progress-fill{height:100%;background:var(--purple-light);border-radius:99px;transition:width .3s ease}.interview__project{color:var(--text-muted);font-size:.85rem;margin-bottom:1.5rem}.interview__question-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;margin-bottom:1.5rem}.interview__question{font-size:1.1rem;color:var(--text);margin:0;line-height:1.6}.interview__answer{width:100%;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:1rem;font-size:.95rem;resize:vertical;font-family:inherit;box-sizing:border-box;margin-bottom:1rem;transition:border-color .2s}.interview__answer:focus{outline:none;border-color:var(--purple-light)}.interview__submit{background:var(--purple);color:#fff;border:none;border-radius:var(--radius);padding:.75rem 1.5rem;font-size:1rem;cursor:pointer;transition:opacity .2s}.interview__submit:disabled{opacity:.5;cursor:not-allowed}.interview__error{color:#f87171;margin-top:.75rem;font-size:.9rem}.interview__feedback{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.interview__score{font-size:2rem;font-weight:700}.interview__feedback-text{color:var(--text);line-height:1.6;margin:0}.interview__ideal{border-top:1px solid var(--border);padding-top:1rem}.interview__ideal-label{color:var(--text-muted);font-size:.85rem;margin-bottom:.4rem}.interview__next{background:var(--purple);color:#fff;border:none;border-radius:var(--radius);padding:.75rem 1.5rem;font-size:1rem;cursor:pointer;align-self:flex-start;transition:opacity .2s}.interview__next:hover{opacity:.9}.interview h1{margin-bottom:.5rem}.interview__avg-score{font-size:1.5rem;font-weight:700;margin-bottom:2rem}.interview__results{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.interview__result-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem}.interview__result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.interview__result-q{color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em}.interview__result-score{font-weight:700;font-size:1.1rem}.interview__result-question{font-weight:600;margin-bottom:.75rem}.interview__result-label{color:var(--text-muted);font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.interview__result-answer,.interview__result-feedback,.interview__result-ideal{color:var(--text);font-size:.9rem;line-height:1.5;margin-bottom:.75rem}.interview__result-ideal{color:#4ade80}.interview__restart{background:var(--purple);color:#fff;border:none;border-radius:var(--radius);padding:.75rem 1.5rem;font-size:1rem;cursor:pointer}.interview-modal__overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.interview-modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:2rem;width:100%;max-width:400px;display:flex;flex-direction:column;gap:1rem}.interview-modal h2{margin:0}.interview-modal p{color:var(--text-muted);margin:0}.interview-modal__options{display:flex;gap:.75rem}.interview-modal__option{flex:1;padding:.6rem;border-radius:var(--radius);border:1px solid var(--border);background:var(--bg);color:var(--text);cursor:pointer;font-size:.9rem;transition:border-color .2s,background .2s}.interview-modal__option--active{border-color:var(--purple-light);background:var(--purple);color:#fff}.interview-modal__actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.interview-modal__cancel{background:none;border:1px solid var(--border);border-radius:var(--radius);color:var(--text-muted);padding:.6rem 1.2rem;cursor:pointer}.interview-modal__start{background:var(--purple);color:#fff;border:none;border-radius:var(--radius);padding:.6rem 1.2rem;cursor:pointer;font-size:.95rem}.analysis-detail__interview-btn{margin-top:1rem;background:var(--purple);color:#fff;border:none;border-radius:var(--radius);padding:.65rem 1.25rem;font-size:.95rem;cursor:pointer;transition:opacity .2s}.analysis-detail__interview-btn:hover{opacity:.85}.auth-page{min-height:calc(100vh - 64px);display:flex;align-items:center;justify-content:center;padding:40px 24px}.auth-card{width:100%;max-width:440px}.auth-logo{font-family:var(--font-mono);font-size:18px;font-weight:500;color:var(--text);margin-bottom:24px;text-align:center}.auth-title{font-size:24px;text-align:center;margin-bottom:4px}.auth-sub{color:var(--text-muted);font-size:14px;text-align:center;margin-bottom:28px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-footer{color:var(--text-muted);font-size:14px;text-align:center;margin-top:20px}:root{--bg: #0D0D12;--bg-card: #13131E;--bg-elevated: #1A1A2E;--border: #2A2A45;--border-glow: #7C3AED55;--purple: #7C3AED;--purple-light:#A78BFA;--purple-dim: #4C1D95;--green: #10B981;--red: #EF4444;--yellow: #F59E0B;--text: #F0EFF8;--text-muted: #8882A8;--text-dim: #5A5575;--font-display: "Space Grotesk", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace;--radius: 8px;--radius-lg: 14px;--shadow: 0 4px 24px #00000066;--glow: 0 0 24px #7C3AED33}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:15px;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}a{color:var(--purple-light);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,textarea{font-family:inherit}h1,h2,h3,h4{font-family:var(--font-display);font-weight:600;line-height:1.2}code,pre{font-family:var(--font-mono)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-card)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--purple-dim)}.container{max-width:1100px;margin:0 auto;padding:0 24px}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.card-glow{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--glow)}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:var(--radius);font-size:14px;font-weight:500;font-family:var(--font-display);border:none;transition:all .18s ease}.btn-primary{background:var(--purple);color:#fff}.btn-primary:hover{background:#6d28d9;box-shadow:0 0 20px #7c3aed55}.btn-outline{background:transparent;color:var(--purple-light);border:1px solid var(--border)}.btn-outline:hover{border-color:var(--purple);background:#7c3aed11}.btn-ghost{background:transparent;color:var(--text-muted);border:none}.btn-ghost:hover{color:var(--text);background:var(--bg-elevated)}.btn-danger{background:transparent;color:var(--red);border:1px solid #EF444433}.btn-danger:hover{background:#ef444411}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-lg{padding:13px 28px;font-size:15px}.btn-sm{padding:7px 14px;font-size:13px}.form-group{display:flex;flex-direction:column;gap:6px}.form-label{font-size:13px;font-weight:500;color:var(--text-muted);font-family:var(--font-display);letter-spacing:.03em;text-transform:uppercase}.form-input{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);color:var(--text);padding:10px 14px;font-size:14px;outline:none;transition:border-color .18s;width:100%}.form-input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7c3aed18}.form-input::placeholder{color:var(--text-dim)}textarea.form-input{resize:vertical;min-height:120px;font-family:var(--font-mono);font-size:13px}.badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:500;font-family:var(--font-display)}.badge-purple{background:#7c3aed22;color:var(--purple-light);border:1px solid #7C3AED44}.badge-green{background:#10b98122;color:var(--green);border:1px solid #10B98144}.badge-red{background:#ef444422;color:var(--red);border:1px solid #EF444444}.badge-yellow{background:#f59e0b22;color:var(--yellow);border:1px solid #F59E0B44}.security-banner{background:#10b98108;border:1px solid #10B98122;border-radius:var(--radius);padding:8px 16px;font-size:13px;color:#6ee7b7;display:flex;align-items:center;gap:8px;margin-bottom:24px}.page-wrapper{min-height:calc(100vh - 64px);padding:40px 0 80px}.page-header{margin-bottom:32px}.page-header h1{font-size:26px;margin-bottom:6px}.page-header p{color:var(--text-muted);font-size:15px}@keyframes spin{to{transform:rotate(360deg)}}.spinner{width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--purple);border-radius:50%;animation:spin .7s linear infinite;display:inline-block}.divider{border:none;border-top:1px solid var(--border);margin:24px 0}.error-msg{background:#ef444412;border:1px solid #EF444433;border-radius:var(--radius);padding:10px 14px;font-size:13px;color:#fca5a5}.success-msg{background:#10b98112;border:1px solid #10B98133;border-radius:var(--radius);padding:10px 14px;font-size:13px;color:#6ee7b7}.terminal-block{background:#080810;border:1px solid var(--border);border-radius:var(--radius);padding:16px;font-family:var(--font-mono);font-size:13px;color:#c4b5fd;line-height:1.7;overflow-x:auto;white-space:pre-wrap;word-break:break-word}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .3s ease both}@keyframes pulse-glow{0%,to{box-shadow:0 0 12px #7c3aed22}50%{box-shadow:0 0 28px #7c3aed55}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0008;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);padding:36px;max-width:520px;width:100%;box-shadow:var(--shadow),var(--glow);animation:fadeIn .25s ease}@media (max-width: 768px){.container{padding:0 16px}.page-wrapper{padding:24px 0 60px}}
