.banner{align-items:center;animation:slideDown .3s ease-out;display:flex;font-size:14px;font-weight:500;justify-content:space-between;padding:16px 24px;position:relative;width:100%;z-index:1000}.banner-info{background-color:#e3f2fd;border-bottom:2px solid #1976d2;color:#1565c0}.banner-warning{background-color:#fff3e0;border-bottom:2px solid #f57c00;color:#e65100}.banner-success{background-color:#e8f5e9;border-bottom:2px solid #43a047;color:#2e7d32}.banner-error{background-color:#ffebee;border-bottom:2px solid #e53935;color:#c62828}[data-theme=dark] .banner-info{background-color:#1a237e;border-bottom-color:#1976d2;color:#64b5f6}[data-theme=dark] .banner-warning{background-color:#4e342e;border-bottom-color:#f57c00;color:#ffb74d}[data-theme=dark] .banner-success{background-color:#1b5e20;border-bottom-color:#43a047;color:#81c784}[data-theme=dark] .banner-error{background-color:#5e1a1a;border-bottom-color:#e53935;color:#ef5350}.banner-content{flex:1 1;max-width:calc(100% - 40px);padding-right:16px}.banner-message{word-wrap:break-word;line-height:1.5;margin:0}.banner-close{align-items:center;background:none;border:none;border-radius:4px;color:inherit;cursor:pointer;display:flex;flex-shrink:0;font-size:24px;height:32px;justify-content:center;opacity:.7;padding:0;transition:background-color .2s;width:32px}.banner-close:hover{background-color:#00000026;opacity:1}[data-theme=dark] .banner-close:hover{background-color:#ffffff26}.banner[style*=background-color] .banner-close:hover{background-color:#fff3}@media (max-width:768px){.banner{flex-wrap:wrap;font-size:13px;padding:12px 16px}.banner-content{margin-bottom:8px;max-width:calc(100% - 32px);min-width:100%;padding-right:12px}.banner-close{align-self:flex-end}}.feedback-button{align-items:center;background:#3b82f6;background:var(--accent-primary,#3b82f6);border:none;border-radius:50px;bottom:24px;box-shadow:0 4px 12px #3b82f666;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:14px;font-weight:500;gap:8px;padding:12px;position:fixed;right:24px;transition:all .2s ease;z-index:1001}.feedback-button:hover{background:#2563eb;background:var(--accent-hover,#2563eb);box-shadow:0 6px 16px #3b82f680;transform:translateY(-2px)}.feedback-button__icon{align-items:center;display:flex;justify-content:center}.feedback-button__label{margin-left:0;max-width:0;overflow:hidden;transition:max-width .3s ease,margin .3s ease;white-space:nowrap}.feedback-button--expanded .feedback-button__label{margin-left:4px;max-width:100px}.feedback-modal-overlay{align-items:center;animation:fadeIn .15s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:10001}.feedback-modal{animation:slideUp .2s ease;background:#fff;background:var(--bg-primary,#fff);border-radius:12px;box-shadow:0 20px 40px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:100%}.feedback-modal__header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;justify-content:space-between;padding:20px 24px}.feedback-modal__header h2{color:#111827;color:var(--text-primary,#111827);font-size:18px;font-weight:600;margin:0}.feedback-modal__close{align-items:center;background:#0000;border:none;border-radius:6px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;transition:all .15s ease;width:32px}.feedback-modal__close:hover{background:#f3f4f6;background:var(--bg-hover,#f3f4f6);color:#111827;color:var(--text-primary,#111827)}.feedback-modal__form{display:flex;flex-direction:column;gap:20px;padding:24px}.feedback-type-selector{display:flex;gap:8px}.feedback-type-btn{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:2px solid #e5e7eb;border:2px solid var(--border-color,#e5e7eb);border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;flex:1 1;font-family:inherit;font-size:13px;font-weight:500;gap:6px;justify-content:center;padding:10px 12px;transition:all .15s ease}.feedback-type-btn--active,.feedback-type-btn:hover{border-color:#3b82f6;border-color:var(--accent-primary,#3b82f6);color:#3b82f6;color:var(--accent-primary,#3b82f6)}.feedback-type-btn--active{background:#eff6ff;background:var(--accent-light,#eff6ff)}.feedback-type-icon{font-size:16px}.feedback-field{display:flex;flex-direction:column;gap:6px}.feedback-field label{color:#111827;color:var(--text-primary,#111827);font-size:13px;font-weight:500}.feedback-field input,.feedback-field textarea{background:#fff;background:var(--bg-primary,#fff);border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;color:#111827;color:var(--text-primary,#111827);font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .15s ease,box-shadow .15s ease}.feedback-field input:focus,.feedback-field textarea:focus{border-color:#3b82f6;border-color:var(--accent-primary,#3b82f6);box-shadow:0 0 0 3px #3b82f61a;outline:none}.feedback-field input::placeholder,.feedback-field textarea::placeholder{color:#9ca3af;color:var(--text-tertiary,#9ca3af)}.feedback-field textarea{min-height:100px;resize:vertical}.feedback-screenshot-section{margin-top:-8px}.feedback-screenshot-btn{align-items:center;background:#f9fafb;background:var(--bg-secondary,#f9fafb);border:1px dashed #d1d5db;border:1px dashed var(--border-color,#d1d5db);border-radius:8px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;font-family:inherit;font-size:13px;gap:8px;justify-content:center;padding:10px;transition:all .15s ease;width:100%}.feedback-screenshot-btn:hover:not(:disabled){background:#f3f4f6;background:var(--bg-hover,#f3f4f6);border-color:#3b82f6;border-color:var(--accent-primary,#3b82f6);color:#3b82f6;color:var(--accent-primary,#3b82f6)}.feedback-screenshot-btn:disabled{cursor:not-allowed;opacity:.6}.feedback-screenshot-icon{font-size:16px}.feedback-screenshot-preview{border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);border-radius:8px;overflow:hidden;position:relative}.feedback-screenshot-preview img{display:block;max-height:150px;object-fit:cover;width:100%}.feedback-screenshot-remove{background:#000000b3;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:12px;padding:4px 10px;position:absolute;right:8px;top:8px;transition:background .15s ease}.feedback-screenshot-remove:hover{background:#000000d9}.feedback-details{margin-top:-8px}.feedback-details-toggle{align-items:center;background:none;border:none;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;font-family:inherit;font-size:12px;gap:6px;padding:8px 0;transition:color .15s ease}.feedback-details-toggle:hover{color:#111827;color:var(--text-primary,#111827)}.feedback-details-arrow{font-size:8px;transition:transform .2s ease}.feedback-details-arrow--open{transform:rotate(90deg)}.feedback-details-content{background:#f9fafb;background:var(--bg-secondary,#f9fafb);border-radius:8px;margin-top:8px;padding:12px}.feedback-detail-item{display:flex;font-size:12px;gap:8px;line-height:1.6}.feedback-detail-label{color:#6b7280;color:var(--text-secondary,#6b7280);min-width:60px}.feedback-detail-value{color:#111827;color:var(--text-primary,#111827);word-break:break-all}.feedback-modal__actions{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);display:flex;gap:12px;justify-content:flex-end;margin-top:4px;padding-top:8px}.feedback-btn{border-radius:8px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:500;padding:10px 20px;transition:all .15s ease}.feedback-btn:disabled{cursor:not-allowed;opacity:.6}.feedback-btn--secondary{background:#0000;border:1px solid #e5e7eb;border:1px solid var(--border-color,#e5e7eb);color:#6b7280;color:var(--text-secondary,#6b7280)}.feedback-btn--secondary:hover:not(:disabled){background:#f3f4f6;background:var(--bg-hover,#f3f4f6);border-color:#d1d5db;border-color:var(--border-hover,#d1d5db)}.feedback-btn--primary{background:#3b82f6;background:var(--accent-primary,#3b82f6);border:1px solid #3b82f6;border:1px solid var(--accent-primary,#3b82f6);color:#fff}.feedback-btn--primary:hover:not(:disabled){background:#2563eb;background:var(--accent-hover,#2563eb);border-color:#2563eb;border-color:var(--accent-hover,#2563eb)}[data-theme=dark] .feedback-modal{background:#1f2937;background:var(--bg-primary,#1f2937)}[data-theme=dark] .feedback-modal__header{border-color:#374151;border-color:var(--border-color,#374151)}[data-theme=dark] .feedback-modal__header h2{color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .feedback-type-btn{background:#111827;background:var(--bg-secondary,#111827);border-color:#374151;border-color:var(--border-color,#374151);color:#9ca3af;color:var(--text-secondary,#9ca3af)}[data-theme=dark] .feedback-type-btn--active{background:#3b82f626;border-color:#3b82f6;border-color:var(--accent-primary,#3b82f6);color:#60a5fa;color:var(--accent-primary,#60a5fa)}[data-theme=dark] .feedback-field label{color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .feedback-field input,[data-theme=dark] .feedback-field textarea{color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .feedback-field input,[data-theme=dark] .feedback-field textarea,[data-theme=dark] .feedback-screenshot-btn{background:#111827;background:var(--bg-secondary,#111827);border-color:#374151;border-color:var(--border-color,#374151)}[data-theme=dark] .feedback-details-content{background:#111827;background:var(--bg-secondary,#111827)}[data-theme=dark] .feedback-btn--secondary,[data-theme=dark] .feedback-modal__actions{border-color:#374151;border-color:var(--border-color,#374151)}[data-theme=dark] .feedback-btn--secondary{color:#9ca3af;color:var(--text-secondary,#9ca3af)}body:has(.resume-export-modal) .feedback-button{bottom:76px}@media (max-width:768px){.feedback-button{display:none}}@media (max-width:480px){.feedback-button{display:none}.feedback-modal{max-height:85vh}.feedback-modal__form{padding:16px}.feedback-type-btn{font-size:12px;padding:8px}}.navbar{background:var(--bg-primary);border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-md);position:-webkit-sticky;position:sticky;top:0;z-index:100}.navbar-container{align-items:center;display:flex;height:70px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 40px}.navbar-brand{color:inherit;text-decoration:none}.navbar-brand h1{color:var(--color-primary);font-size:24px;margin:0}.navbar-menu{flex:1 1;gap:30px;list-style:none;margin:0 0 0 50px;padding:0}.navbar-menu,.navbar-menu a{align-items:center;display:flex}.navbar-menu a{color:var(--text-secondary);font-weight:500;gap:8px;text-decoration:none;transition:color .3s}.navbar-menu a svg{flex-shrink:0;height:18px;width:18px}.navbar-menu a.active,.navbar-menu a:hover{color:var(--color-primary)}.navbar-menu a.active svg{stroke:var(--color-primary)}.navbar-menu a.admin-link{background:var(--color-primary-light);border-radius:4px;color:var(--color-primary);font-weight:600;padding:6px 12px;transition:all .3s}.navbar-menu a.admin-link:hover{background:var(--color-primary);color:var(--bg-primary)}.navbar-user{align-items:center;display:flex;gap:12px}.navbar-signin-link{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:6px;box-shadow:0 2px 8px #667eea4d;color:#fff;font-size:.9rem;font-weight:600;padding:8px 20px;text-decoration:none;transition:all .2s ease}.navbar-signin-link:hover{box-shadow:0 4px 12px #667eea66;transform:translateY(-1px)}.user-name{color:var(--text-secondary);font-weight:500;white-space:nowrap}.navbar-action-button{align-items:center;background:#0000;border:none;color:var(--text-secondary);cursor:pointer;display:flex;justify-content:center;min-height:44px;min-width:44px;padding:8px;transition:color .3s}.navbar-action-button svg{flex-shrink:0;height:20px;width:20px}.navbar-action-button:hover{color:var(--color-primary)}.btn-admin{background:var(--color-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;min-height:44px;padding:12px 16px;transition:all .3s;white-space:nowrap}.btn-admin:hover{background:#5568d3;box-shadow:0 2px 8px #667eea4d}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:100vh}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:50px;margin-bottom:20px;width:50px}.theme-selector{display:inline-block;position:relative}.theme-button{background:var(--color-primary-light);border:1px solid var(--border-color);border-radius:6px;color:var(--color-primary);cursor:pointer;font-size:14px;font-weight:500;padding:8px 12px;transition:all .3s ease;white-space:nowrap}.theme-button:hover{background:var(--color-primary);color:var(--bg-primary)}.theme-menu{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:6px;box-shadow:var(--shadow-md);display:flex;min-width:150px;opacity:0;position:absolute;right:0;top:calc(100% + 4px);visibility:hidden;z-index:1000}.theme-menu:hover,.theme-selector:has(.theme-menu:hover) .theme-menu,.theme-selector:hover .theme-menu{display:flex;opacity:1;transform:translateY(0)!important;visibility:visible}.theme-menu button{background:#0000;border:none;color:var(--text-primary);cursor:pointer;font-size:14px;padding:10px 16px;text-align:left;transition:all .2s ease}.theme-menu button:hover{background:var(--bg-tertiary)}.theme-menu button:first-child{border-radius:6px 6px 0 0}.theme-menu button:last-child{border-radius:0 0 6px 6px}.theme-menu button.active{background:var(--color-primary-light);color:var(--color-primary);font-weight:600}@media (max-width:1024px){.navbar-menu{display:none}.navbar-user{gap:8px}.user-name{display:none}}@media (max-width:768px){.navbar-container{padding:0 20px}}.bottom-tab-bar{background:var(--bg-primary);border-top:1px solid var(--border-color);bottom:0;display:none;height:64px;left:0;padding-bottom:env(safe-area-inset-bottom,0);position:fixed;right:0;z-index:100}@media (max-width:1024px){.bottom-tab-bar{align-items:center;display:flex;justify-content:space-around}}.tab-item{align-items:center;color:var(--text-tertiary);display:flex;flex:1 1;flex-direction:column;gap:4px;height:100%;justify-content:center;min-width:64px;padding:8px 4px;text-decoration:none;transition:color .2s ease}.tab-item:hover{color:var(--text-secondary)}.tab-item.active{color:var(--color-primary)}.tab-icon{align-items:center;display:flex;justify-content:center}.tab-icon svg{height:24px;width:24px}.tab-label{font-size:11px;font-weight:500;line-height:1.2;text-align:center}[data-theme=dark] .bottom-tab-bar{background:var(--bg-primary);border-top-color:var(--border-color)}.footer{background:var(--bg-secondary);border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:14px;padding:30px 40px}.footer-content{flex-wrap:wrap;gap:20px;justify-content:space-between;margin:0 auto;max-width:1400px}.footer-content,.footer-section{align-items:center;display:flex}.footer-left{flex:1 1;gap:20px;justify-content:flex-start}.footer-center{flex:1 1;justify-content:center;text-align:center}.footer-right{flex:1 1;justify-content:flex-end}.app-branding{align-items:center;display:flex;gap:12px}.app-name{color:var(--text-primary);font-size:20px;font-weight:700;margin:0}.app-tagline{color:var(--text-tertiary);font-size:12px;margin:0}.social-networks{align-items:center;display:flex;gap:12px}.social-link{color:var(--text-tertiary);transition:color .3s}.social-link:hover{color:var(--color-primary)}.social-icon{font-size:20px}.copyright a{color:var(--color-primary);text-decoration:none}.copyright a:hover{text-decoration:underline}.version{background:var(--bg-tertiary);border-radius:4px;font-family:monospace;font-size:12px;padding:4px 8px}.footer-privacy-link{color:var(--text-secondary);display:block;font-size:.75rem;margin-top:8px;text-decoration:none;transition:color .2s}.footer-privacy-link:hover{color:var(--color-primary);text-decoration:underline}@media (max-width:992px){.footer-content{flex-direction:column;gap:25px}}.progress-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.progress-modal{animation:slideUp .3s ease-out;background:#fff;background:var(--bg-primary,#fff);border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:360px;padding:48px 40px;position:relative;text-align:center;width:90%}.progress-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#999;color:var(--text-tertiary,#999);cursor:pointer;display:flex;font-size:20px;height:32px;justify-content:center;padding:4px 8px;position:absolute;right:12px;top:12px;transition:all .2s;width:32px}.progress-modal-close:hover{background:#f0f0f0;background:var(--bg-secondary,#f0f0f0);color:#333;color:var(--text-primary,#333)}.progress-content{align-items:center;display:flex;flex-direction:column;gap:16px}.progress-spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-top-color:#3b82f6;border:3px solid var(--bg-tertiary,#e5e7eb);border-radius:50%;border-top-color:var(--primary,#3b82f6);height:48px;width:48px}.progress-content h2{color:#1f2937;color:var(--text-primary,#1f2937);font-size:20px;font-weight:600;margin:0}.progress-subtitle{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;margin:0}.progress-info{color:#9ca3af;color:var(--text-tertiary,#9ca3af);font-size:12px;margin:8px 0 0}.progress-bar-container{background:#e5e7eb;background:var(--bg-tertiary,#e5e7eb);border-radius:4px;height:8px;margin:4px 0;overflow:hidden;width:100%}.progress-bar{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:4px;height:100%;transition:width .5s ease-out}[data-theme=dark] .progress-modal{background:#1f2937;background:var(--bg-primary,#1f2937)}[data-theme=dark] .progress-content h2{color:#f3f4f6;color:var(--text-primary,#f3f4f6)}[data-theme=dark] .progress-subtitle{color:#d1d5db;color:var(--text-secondary,#d1d5db)}[data-theme=dark] .progress-info{color:#9ca3af;color:var(--text-tertiary,#9ca3af)}[data-theme=dark] .progress-spinner{border-color:#374151;border-color:var(--bg-tertiary,#374151);border-top-color:#3b82f6;border-top-color:var(--primary,#3b82f6)}[data-theme=dark] .progress-bar-container{background:#374151;background:var(--bg-tertiary,#374151)}@media (max-width:480px){.progress-modal{padding:40px 24px}.progress-content h2{font-size:18px}}.maintenance-modal-overlay{align-items:center;animation:fadeIn .3s ease-out;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.maintenance-modal{animation:slideUp .4s ease-out;background:#fff;background:var(--color-background,#fff);border-radius:16px;box-shadow:0 25px 50px -12px #00000040;max-width:480px;padding:48px;text-align:center;width:90%}.maintenance-icon{align-items:center;animation:pulse-glow 2s ease-in-out infinite;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:50%;display:flex;height:80px;justify-content:center;margin:0 auto 24px;width:80px}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 0 #6366f166}50%{box-shadow:0 0 0 20px #6366f100}}.maintenance-icon svg{stroke:#fff;height:40px;width:40px}.maintenance-modal h1{color:#1f2937;color:var(--color-text,#1f2937);font-size:24px;font-weight:600;margin:0 0 16px}.maintenance-modal p{color:#6b7280;color:var(--color-text-secondary,#6b7280);font-size:16px;line-height:1.6;margin:0 0 32px}.maintenance-status{background:#f3f4f6;background:var(--color-surface,#f3f4f6);border-radius:8px;margin-bottom:24px;padding:16px}.status-indicator{align-items:center;color:#6b7280;color:var(--color-text-secondary,#6b7280);display:flex;font-size:14px;gap:12px;justify-content:center}.pulse{animation:pulse-dot 1.5s ease-in-out infinite;background:#f59e0b;border-radius:50%;height:10px;width:10px}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(1.2)}}.retry-button{background:var(--btn-primary-gradient);border:none;border-radius:var(--btn-radius);color:#fff;cursor:pointer;font-size:var(--btn-font-size-lg);font-weight:500;padding:var(--btn-padding-lg);transition:all .2s ease}.retry-button:hover{box-shadow:0 4px 12px #6366f166;transform:translateY(-2px)}.retry-button:active{transform:translateY(0)}[data-theme=dark] .maintenance-modal{background:#1f2937;background:var(--color-background,#1f2937)}[data-theme=dark] .maintenance-modal h1{color:#f9fafb;color:var(--color-text,#f9fafb)}[data-theme=dark] .maintenance-modal p{color:#9ca3af;color:var(--color-text-secondary,#9ca3af)}[data-theme=dark] .maintenance-status{background:#374151;background:var(--color-surface,#374151)}[data-theme=dark] .status-indicator{color:#9ca3af;color:var(--color-text-secondary,#9ca3af)}.maintenance-mode-overlay{align-items:center;animation:fadeIn .4s ease-out;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(135deg,#6366f1f2,#8b5cf6f2);bottom:0;display:flex;justify-content:center;left:0;overflow:hidden;position:fixed;right:0;top:0;z-index:10001}.maintenance-mode-content{animation:slideUp .5s ease-out;max-width:500px;padding:48px;position:relative;text-align:center;width:90%}.maintenance-mode-icon{align-items:center;animation:float 3s ease-in-out infinite;background:#fff3;border-radius:50%;box-shadow:0 20px 40px #0000001a;display:flex;height:120px;justify-content:center;margin:0 auto 32px;width:120px}.icon-emoji{animation:bounceEmoji 2s ease-in-out infinite;font-size:56px}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}@keyframes bounceEmoji{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.maintenance-mode-title{color:#fff;font-size:32px;font-weight:700;margin:0 0 16px;text-shadow:0 2px 10px #0000001a}.maintenance-mode-message-container{align-items:center;display:flex;height:40px;justify-content:center;margin-bottom:16px;overflow:hidden}.maintenance-mode-message{animation:fadeInMessage .5s ease-out;color:#ffffffe6;font-size:18px;margin:0}@keyframes fadeInMessage{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.maintenance-mode-custom-message{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#ffffffb3;font-size:14px;margin:24px 0 0;padding:12px 20px}.sparkle{animation:sparkleAnimation 2s ease-in-out infinite;color:#fff9;font-size:24px;position:absolute}.sparkle-1{animation-delay:0s;left:10%;top:20%}.sparkle-2{animation-delay:.5s;right:15%;top:30%}.sparkle-3{animation-delay:1s;bottom:25%;left:20%}@keyframes sparkleAnimation{0%,to{opacity:.3;transform:scale(1) rotate(0deg)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}}.maintenance-mode-progress{margin-top:40px}.progress-dots{align-items:center;display:flex;gap:8px;justify-content:center}.dot{animation:dotPulse 1.5s ease-in-out infinite;background:#fff6;border-radius:50%;height:10px;width:10px}.dot:first-child{animation-delay:0s}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes dotPulse{0%,to{background:#fff6;transform:scale(1)}50%{background:#ffffffe6;transform:scale(1.3)}}[data-theme=dark] .maintenance-mode-overlay{background:linear-gradient(135deg,#4338caf2,#6d28d9f2)}@media (max-width:480px){.maintenance-mode-content{padding:32px 24px}.maintenance-mode-icon{height:100px;width:100px}.icon-emoji{font-size:44px}.maintenance-mode-title{font-size:24px}.maintenance-mode-message{font-size:16px}.sparkle{display:none}}.maintenance-admin-banner{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#ef4444,#dc2626);border-radius:20px;box-shadow:0 4px 12px #ef44444d;color:#fff;display:flex;font-size:13px;font-weight:500;gap:8px;left:50%;padding:8px 20px;position:fixed;top:70px;transform:translateX(-50%);z-index:1000}.maintenance-admin-dot{animation:pulse-dot 1.5s ease-in-out infinite;background:#fff;border-radius:50%;height:8px;width:8px}@keyframes slideDown{0%{opacity:0;transform:translateX(-50%) translateY(-10px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}:root{--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--text-primary:#1f2937;--text-secondary:#6b7280;--text-tertiary:#9ca3af;--border-color:#e5e7eb;--border-color-light:#f3f4f6;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a;--color-primary:#667eea;--color-primary-light:#f0f4ff;--accent-color:#667eea;--accent-hover:#5a67d8;--color-error:#ef4444;--color-error-light:#fee2e2;--color-success:#10b981;--color-warning:#f59e0b}[data-theme=dark]{--bg-primary:#1f2937;--bg-secondary:#111827;--bg-tertiary:#374151;--text-primary:#f9fafb;--text-secondary:#d1d5db;--text-tertiary:#9ca3af;--border-color:#374151;--border-color-light:#4b5563;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #0006;--shadow-lg:0 10px 15px -3px #00000080;--color-primary:#818cf8;--color-primary-light:#312e81;--accent-color:#818cf8;--accent-hover:#6366f1;--color-error:#f87171;--color-error-light:#7c2d12;--color-success:#34d399;--color-warning:#fbbf24;--bg-light:#374151;--bg-lighter:#4b5563;--status-applied-bg:#3b82f633;--status-applied-text:#93c5fd;--status-interviewing-bg:#fbbf2433;--status-interviewing-text:#fcd34d;--status-offer-bg:#34d39933;--status-offer-text:#6ee7b7;--status-rejected-bg:#f8717133;--status-rejected-text:#fca5a5;--status-archived-bg:#6b728033;--status-archived-text:#9ca3af}*{box-sizing:border-box;margin:0;padding:0}body{background:#f9fafb;background:var(--bg-secondary);color:#1f2937;color:var(--text-primary);transition:background-color .3s ease,color .3s ease}#root{display:flex;flex-direction:column}.App{background:#f9fafb;background:var(--bg-secondary)}.App,.router-wrapper,div[class*=router]{display:flex;flex-direction:column;min-height:100vh}main{background:#f9fafb;background:var(--bg-secondary);flex:1 1}@media (max-width:1024px){main{padding-bottom:calc(64px + env(safe-area-inset-bottom, 0px))}}.banner,.navbar{flex-shrink:0}.routes-container{display:flex;flex:1 1;flex-direction:column}.footer{flex-shrink:0;margin-top:auto}a{color:#667eea;color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}:root{--btn-padding-sm:8px 12px;--btn-padding-md:12px 16px;--btn-padding-lg:14px 24px;--btn-min-height-sm:40px;--btn-min-height-md:44px;--btn-min-height-lg:48px;--btn-font-size-sm:13px;--btn-font-size-md:14px;--btn-font-size-lg:16px;--btn-radius:6px;--btn-radius-sm:4px;--btn-primary-gradient:linear-gradient(135deg,#667eea,#764ba2);--btn-primary-color:#667eea;--btn-primary-hover:#5568d3;--btn-secondary-bg:#f3f4f6;--btn-secondary-text:#374151;--btn-secondary-border:#d1d5db;--btn-secondary-hover-bg:#e5e7eb;--btn-danger-bg:#ef4444;--btn-danger-hover:#dc2626}button{border:none;border-radius:4px;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600;min-height:44px;transition:all .2s ease}button:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--btn-primary-gradient);border-radius:6px;border-radius:var(--btn-radius);color:#fff;min-height:44px;min-height:var(--btn-min-height-md);padding:12px 16px;padding:var(--btn-padding-md)}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px #667eea66;transform:translateY(-2px)}.btn-primary:active:not(:disabled){box-shadow:0 2px 6px #667eea4d;transform:translateY(0)}.btn-secondary{background-color:#f3f4f6;background-color:var(--btn-secondary-bg);border:1px solid #d1d5db;border:1px solid var(--btn-secondary-border);border-radius:6px;border-radius:var(--btn-radius);color:#374151;color:var(--btn-secondary-text);min-height:44px;min-height:var(--btn-min-height-md);padding:12px 16px;padding:var(--btn-padding-md)}.btn-secondary:hover:not(:disabled){background-color:#e5e7eb;background-color:var(--btn-secondary-hover-bg);border-color:#9ca3af}.btn-secondary:active:not(:disabled){background-color:#d1d5db;transform:scale(.98)}.btn-danger{background-color:#ef4444;background-color:var(--btn-danger-bg);border-radius:6px;border-radius:var(--btn-radius);color:#fff;min-height:44px;min-height:var(--btn-min-height-md);padding:12px 16px;padding:var(--btn-padding-md)}.btn-danger:hover:not(:disabled){background-color:#dc2626;background-color:var(--btn-danger-hover);box-shadow:0 4px 12px #ef44444d}.btn-danger:active:not(:disabled){background-color:#b91c1c;transform:scale(.98)}.btn-icon{align-items:center;background-color:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;display:flex;font-size:14px;justify-content:center;min-height:44px;min-width:44px;padding:10px 12px}.btn-icon:hover:not(:disabled){background-color:#e5e7eb;border-color:#9ca3af;color:#374151}.btn-icon:active:not(:disabled){transform:scale(.95)}.btn-icon--danger{border-color:#fecaca;color:#ef4444}.btn-icon--danger:hover:not(:disabled){background-color:#fee2e2;border-color:#f87171;color:#dc2626}.btn-danger-text{color:#ef4444}.btn-danger-text:hover:not(:disabled){background-color:#fee2e2;border-color:#f87171;color:#dc2626}.btn-link{background-color:initial;border:none;color:#667eea;min-height:44px;padding:10px 12px;text-decoration:none}.btn-link:hover:not(:disabled){color:#5568d3;text-decoration:underline}.btn-sm{font-size:13px;font-size:var(--btn-font-size-sm);min-height:40px;min-height:var(--btn-min-height-sm);padding:8px 12px;padding:var(--btn-padding-sm)}.btn-lg{font-size:16px;font-size:var(--btn-font-size-lg);min-height:48px;min-height:var(--btn-min-height-lg);padding:14px 24px;padding:var(--btn-padding-lg)}@keyframes btn-glow-pulse{0%,to{box-shadow:0 0 8px #667eea99,0 0 16px #764ba266}50%{box-shadow:0 0 16px #667eeacc,0 0 32px #764ba299}}.btn-glow:not(:disabled){animation:btn-glow-pulse 2s ease-in-out infinite}.btn-glow:hover:not(:disabled){animation:none;box-shadow:0 4px 12px #667eea66}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.btn-warning:hover:not(:disabled){box-shadow:0 4px 12px #f59e0b66;transform:translateY(-1px)}.btn-warning:active:not(:disabled){box-shadow:0 2px 6px #f59e0b4d;transform:translateY(0)}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-success:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}.btn-success:active:not(:disabled){box-shadow:0 2px 6px #10b9814d;transform:translateY(0)}[data-theme=dark] .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);background:var(--btn-primary-gradient);color:#fff}[data-theme=dark] .btn-danger{background-color:#ef4444;background-color:var(--btn-danger-bg);color:#fff}[data-theme=dark] .btn-secondary{background-color:#1f2937;background-color:var(--bg-tertiary,#1f2937);border:1px solid #4b5563;border:1px solid var(--border-color-light,#4b5563);color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .btn-secondary:hover:not(:disabled){background-color:#374151;background-color:var(--bg-tertiary,#374151);border-color:#4b5563;border-color:var(--border-color-light,#4b5563)}[data-theme=dark] .btn-icon{background-color:#111827;background-color:var(--bg-secondary,#111827);border-color:#374151;border-color:var(--border-color,#374151);color:#d1d5db;color:var(--text-secondary,#d1d5db)}[data-theme=dark] .btn-icon:hover:not(:disabled){background-color:#374151;background-color:var(--bg-tertiary,#374151);border-color:#4b5563;border-color:var(--border-color-light,#4b5563);color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .btn-icon--danger:hover:not(:disabled){background-color:#ef44441a;border-color:#ef4444}[data-theme=dark] .btn-danger-text{color:#f87171}[data-theme=dark] .btn-danger-text:hover:not(:disabled){background-color:#ef44441a;border-color:#ef4444;color:#ef4444}[data-theme=dark] .btn-link{color:#818cf8}[data-theme=dark] .btn-link:hover:not(:disabled){color:#a5b4fc}[data-theme=dark] .btn-warning{background:linear-gradient(135deg,#fbbf24,#f59e0b)}[data-theme=dark] .btn-success{background:linear-gradient(135deg,#34d399,#10b981)}@media (max-width:480px){button{font-size:14px;min-height:48px;padding:14px 16px}.btn-sm{font-size:13px;min-height:44px;padding:10px 14px}.btn-icon{min-height:48px;min-width:48px;padding:12px}}.form{gap:16px}.form,.form-group{display:flex;flex-direction:column}.form-group{flex:1 1;gap:4px}.form-group label{color:#1f2937;color:var(--text-primary,#1f2937);display:block;font-size:14px;font-weight:600}.form-group label.required:after{color:#ef4444;content:" *"}.form-group input,.form-group select,.form-group textarea{background-color:#fff;background-color:var(--bg-primary,#fff);border:1px solid #d1d5db;border:1px solid var(--border-color,#d1d5db);border-radius:4px;color:#1f2937;color:var(--text-primary,#1f2937);font-family:inherit;font-size:14px;padding:10px 12px;transition:all .2s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background-color:#f3f4f6;background-color:var(--bg-secondary,#f3f4f6);color:#6b7280;color:var(--text-secondary,#6b7280);cursor:not-allowed;opacity:.6}.form-group textarea,input[type=date],input[type=email],input[type=month],input[type=number],input[type=password],input[type=search],input[type=text],input[type=url]{box-sizing:border-box;width:100%}.form-group textarea{font-family:inherit;min-height:100px;resize:vertical}.form-group select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%236b7280' d='M6 9 1 4h10z'/%3E%3C/svg%3E");background-position:right 8px center;background-repeat:no-repeat;box-sizing:border-box;padding-right:28px;width:100%}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.form-row.full{grid-template-columns:1fr}.form-row.triple{grid-template-columns:repeat(3,1fr)}.form-hint{color:#6b7280;color:var(--text-secondary,#6b7280);display:block;font-size:12px;margin:-4px 0 -2px}.form-hint.error{color:#ef4444}.form-help{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:13px;line-height:1.4;margin:8px 0 0}.form-actions{display:flex;gap:10px;margin-top:16px}.form-actions,.form-actions.primary-right{justify-content:flex-end}.form-actions.centered{justify-content:center}.form-actions.space-between{justify-content:space-between}.form-actions--with-danger{justify-content:flex-start}.form-actions__spacer{flex:1 1}.form-group.has-error input,.form-group.has-error select,.form-group.has-error textarea{border-color:#ef4444}.form-group.has-error input:focus,.form-group.has-error select:focus,.form-group.has-error textarea:focus{box-shadow:0 0 0 3px #ef44441a}.form-group.has-error .ql-container{border-color:#ef4444}.form-group .error-text{color:#ef4444;display:block;font-size:.8rem;margin-top:.25rem}.form-group.has-success input,.form-group.has-success select,.form-group.has-success textarea{border-color:#10b981}.form-group.has-success input:focus,.form-group.has-success select:focus,.form-group.has-success textarea:focus{box-shadow:0 0 0 3px #10b9811a}[data-theme=dark] .form-group label{color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .form-group input,[data-theme=dark] .form-group select,[data-theme=dark] .form-group textarea{background-color:#111827;background-color:var(--bg-secondary,#111827);border-color:#374151;border-color:var(--border-color,#374151);color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .form-group input:disabled,[data-theme=dark] .form-group select:disabled,[data-theme=dark] .form-group textarea:disabled{background-color:#374151;background-color:var(--bg-tertiary,#374151);color:#d1d5db;color:var(--text-secondary,#d1d5db)}[data-theme=dark] .form-help,[data-theme=dark] .form-hint{color:#d1d5db;color:var(--text-secondary,#d1d5db)}[data-theme=dark] .form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%9ca3af' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}@media (max-width:768px){.form-row{gap:12px}.form-row,.form-row.triple{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}}@media (max-width:480px){.form-group{gap:4px}.form-group input,.form-group select,.form-group textarea{font-size:16px;min-height:40px;padding:12px}.form-group textarea{min-height:80px}.form-actions{gap:8px}.form-actions button{min-height:44px;width:100%}}.modal-overlay{align-items:center;animation:fadeIn .2s ease;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s ease;background-color:#fff;background-color:var(--bg-primary,#fff);border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;max-width:600px;overflow-y:auto;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-content.modal-lg{max-width:900px}.modal-content.modal-sm{max-width:400px}.modal-header{align-items:center;border-bottom:1px solid #e5e7eb;border-bottom:1px solid var(--border-color,#e5e7eb);display:flex;gap:16px;justify-content:space-between;padding:20px 24px}.modal-header h2,.modal-header h3{color:#1f2937;color:var(--text-primary,#1f2937);font-size:18px;font-weight:600;margin:0}.modal-close{align-items:center;background-color:initial;border:none;border-radius:4px;color:#6b7280;color:var(--text-secondary,#6b7280);cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.modal-close:hover{background-color:#f3f4f6;background-color:var(--bg-secondary,#f3f4f6);color:#1f2937;color:var(--text-primary,#1f2937)}.modal-body{padding:24px}.modal-form{padding:0 24px 24px}.modal-footer{border-top:1px solid #e5e7eb;border-top:1px solid var(--border-color,#e5e7eb);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.modal-footer.full-width button{flex:1 1}.modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.dialog-overlay{background-color:#0009}.dialog-content{display:flex;flex-direction:column;max-height:95vh;width:95%}.dialog-body{flex:1 1;overflow-y:auto;padding:24px}.modal-alert{max-width:400px;text-align:center}.modal-alert .modal-body{padding:32px 24px 24px}.modal-alert-icon{display:block;font-size:48px;margin-bottom:16px}.modal-alert h2{color:#1f2937;color:var(--text-primary,#1f2937);font-size:20px;margin:0 0 8px}.modal-alert p{color:#6b7280;color:var(--text-secondary,#6b7280);font-size:14px;line-height:1.5;margin:0}.modal-loading{text-align:center}.modal-loading .spinner{animation:spin 1s linear infinite;border:4px solid #e5e7eb;border:4px solid var(--border-color,#e5e7eb);border-radius:50%;border-top:4px solid #667eea;height:48px;margin:24px auto;width:48px}@keyframes spin{to{transform:rotate(1turn)}}[data-theme=dark] .modal-overlay{background-color:#000000b3}[data-theme=dark] .modal-content{background-color:#111827;background-color:var(--bg-secondary,#111827)}[data-theme=dark] .modal-header{border-bottom-color:#374151;border-bottom-color:var(--border-color,#374151)}[data-theme=dark] .modal-header h2,[data-theme=dark] .modal-header h3{color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .modal-close{color:#d1d5db;color:var(--text-secondary,#d1d5db)}[data-theme=dark] .modal-close:hover{background-color:#374151;background-color:var(--bg-tertiary,#374151);color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .modal-footer{border-top-color:#374151;border-top-color:var(--border-color,#374151)}[data-theme=dark] .modal-alert h2{color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .modal-alert p{color:#d1d5db;color:var(--text-secondary,#d1d5db)}[data-theme=dark] .modal-loading .spinner{border-color:#374151;border-color:var(--border-color,#374151);border-top-color:#818cf8}@media (max-width:768px){.modal-content{max-height:85vh;max-width:90%}.modal-content.modal-lg{max-width:90%}.modal-header{padding:16px 20px}.modal-body{padding:20px}.modal-footer{flex-direction:column;padding:12px 20px}.modal-footer button{width:100%}}@media (max-width:480px){.modal-content{border-radius:12px;max-height:90vh;width:98%}.modal-header{align-items:flex-start;flex-direction:column;gap:0;padding:16px}.modal-close{align-self:flex-end}.modal-body{padding:16px}.modal-footer{padding:12px 16px}}.filter-bar{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px;margin-bottom:20px;padding:16px 20px}.filter-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:16px}.filter-group{display:flex;flex-direction:column;gap:6px;min-width:150px}.filter-group label{color:var(--text-secondary);font-size:12px;font-weight:600;text-transform:uppercase}.filter-input,.filter-select{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);font-size:14px;padding:8px 12px;transition:border-color .2s ease}.filter-input:focus,.filter-select:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-input::placeholder{color:var(--text-secondary);opacity:.7}[data-theme=dark] .filter-input,[data-theme=dark] .filter-select{background:#111827;background:var(--bg-secondary,#111827);border-color:#374151;border-color:var(--border-color,#374151);color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] .filter-input::placeholder{color:#9ca3af;color:var(--text-tertiary,#9ca3af)}@media (max-width:768px){.filter-row{align-items:stretch;flex-direction:column}.filter-group,.filter-input,.filter-select{width:100%}}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{margin:0;min-height:100vh;padding:0}[data-theme=dark]{color-scheme:dark}[data-theme=dark] button,[data-theme=dark] input,[data-theme=dark] select,[data-theme=dark] textarea{background-color:#111827;background-color:var(--bg-secondary,#111827);border-color:#374151;border-color:var(--border-color,#374151);color:#f9fafb;color:var(--text-primary,#f9fafb)}[data-theme=dark] input::placeholder,[data-theme=dark] textarea::placeholder{color:#9ca3af;color:var(--text-tertiary,#9ca3af)}
/*# sourceMappingURL=main.d1e2e196.css.map*/