:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}.kanban-board{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1rem;min-height:70vh;overflow-x:auto}@media(max-width:900px){.kanban-board{grid-template-columns:repeat(2,minmax(280px,1fr))}}@media(max-width:600px){.kanban-board{grid-template-columns:1fr}}.kanban-column{background:#f8f9fa;border-radius:12px;min-height:400px;display:flex;flex-direction:column}.column-header{padding:1rem;border-top:4px solid #ccc;border-radius:12px 12px 0 0;background:#fff;display:flex;justify-content:space-between;align-items:center}.column-header h3{font-size:1rem;font-weight:600;color:#333;margin:0}.column-count{background:#e9ecef;color:#495057;padding:.2rem .6rem;border-radius:12px;font-size:.85rem;font-weight:600}.column-content{flex:1;padding:.5rem;display:flex;flex-direction:column;gap:.5rem;overflow-y:auto}.kanban-card{background:#fff;border-radius:8px;padding:.875rem;box-shadow:0 1px 3px #0000001a;cursor:grab;transition:box-shadow .2s,transform .2s;border-left:3px solid transparent}.kanban-card:hover{box-shadow:0 4px 12px #00000026}.kanban-card.dropdown-open{z-index:200;position:relative}.kanban-card.dropdown-open:hover{transform:none}.kanban-card:active{cursor:grabbing}.kanban-card.dragging{box-shadow:0 8px 24px #0003;transform:rotate(3deg);cursor:grabbing}.kanban-card.card-offer{border-left-color:#27ae60;background:linear-gradient(to right,#f0fff4,#fff)}.kanban-card.card-rejected{border-left-color:#95a5a6;background:linear-gradient(to right,#f5f5f5,#fff)}.card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.card-icon{font-size:1rem;font-weight:700}.card-icon.offer{color:#27ae60}.card-icon.rejected{color:#95a5a6}.kanban-card h4{font-size:.95rem;font-weight:600;color:#333;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-position{font-size:.85rem;color:#666;margin:0 0 .5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-stage-section{position:relative;margin-top:.5rem}.stage-selector-btn{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.4rem .6rem;background:#fff3cd;border:1px solid #ffc107;border-radius:6px;cursor:pointer;font-size:.8rem;font-weight:500;color:#856404;transition:all .2s}.stage-selector-btn:hover{background:#ffe69c;border-color:#e0a800}.stage-label{flex:1;text-align:left}.stage-arrow{font-size:.6rem;margin-left:.5rem;color:#856404}.stage-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 8px 24px #0003;z-index:300;margin-top:.25rem;overflow:hidden}.stage-dropdown-item{display:flex;align-items:center;width:100%;padding:.5rem .75rem;border:none;background:#fff;cursor:pointer;font-size:.8rem;text-align:left;transition:background .15s}.stage-dropdown-item:hover{background:#f8f9fa}.stage-dropdown-item.active{background:#e8f4fc;color:#2980b9;font-weight:500}.stage-dropdown-item .check-icon{margin-right:.5rem;color:#27ae60}.custom-stage-form{display:flex;gap:.25rem;padding:.5rem;border-top:1px solid #eee;background:#f8f9fa}.custom-stage-form input{flex:1;padding:.35rem .5rem;border:1px solid #ddd;border-radius:4px;font-size:.75rem}.custom-stage-form input:focus{outline:none;border-color:#3498db}.custom-stage-form button{padding:.35rem .6rem;background:#3498db;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:600}.custom-stage-form button:hover{background:#2980b9}.custom-stage-form button:disabled{background:#ccc;cursor:not-allowed}.card-rejection{margin-top:.5rem;padding:.35rem .5rem;background:#f8f9fa;border-radius:4px;font-size:.75rem;color:#666}.card-date{margin-top:.75rem;padding-top:.5rem;border-top:1px solid #eee;font-size:.7rem;color:#999}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:12px;padding:1.5rem;min-width:320px;max-width:400px;box-shadow:0 20px 60px #0000004d}.modal-content h3{margin:0 0 1rem;font-size:1.1rem;color:#333}.stage-options{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.stage-option{padding:.75rem 1rem;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;text-align:left;font-size:.9rem;transition:all .2s}.stage-option:hover{border-color:#3498db;background:#f8f9ff}.stage-option.active{border-color:#3498db;background:#e8f4fc}.custom-stage{display:flex;gap:.5rem;margin-bottom:1rem}.custom-stage input{flex:1;padding:.6rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem}.custom-stage input:focus{outline:none;border-color:#3498db}.custom-stage button{padding:.6rem 1rem;background:#3498db;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.custom-stage button:hover{background:#2980b9}.custom-stage button:disabled{background:#ccc;cursor:not-allowed}.modal-close{width:100%;padding:.6rem;background:#f8f9fa;color:#666;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.modal-close:hover{background:#e9ecef}.end-modal{min-width:360px}.outcome-options{display:flex;gap:1rem;margin-bottom:1rem}.outcome-option{flex:1;display:flex;flex-direction:column;align-items:center;padding:1.25rem;border:2px solid #ddd;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s}.outcome-option:hover{border-color:#999}.outcome-option.selected.offer{border-color:#27ae60;background:#f0fff4}.outcome-option.selected.rejected{border-color:#95a5a6;background:#f5f5f5}.outcome-icon{font-size:1.5rem;margin-bottom:.5rem}.outcome-option.offer .outcome-icon{color:#27ae60}.outcome-option.rejected .outcome-icon{color:#95a5a6}.rejection-form{margin-bottom:1rem}.rejection-form label{display:block;font-size:.85rem;color:#666;margin-bottom:.5rem}.rejection-form select{width:100%;padding:.6rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;margin-bottom:.75rem}.rejection-form select:focus{outline:none;border-color:#3498db}.rejection-form textarea{width:100%;padding:.6rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.9rem;min-height:80px;resize:vertical;font-family:inherit}.rejection-form textarea:focus{outline:none;border-color:#3498db}.modal-actions{display:flex;gap:.75rem}.modal-actions .modal-close{flex:1}.modal-submit{flex:1;padding:.6rem 1rem;background:#3498db;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9rem}.modal-submit:hover{background:#2980b9}.modal-submit:disabled{background:#ccc;cursor:not-allowed}.cv-manager{padding:2rem;max-width:1100px;margin:0 auto}.cv-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.cv-header h2{color:#333;font-size:1.5rem;margin:0}.add-cv-btn{padding:.7rem 1.2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.add-cv-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.cv-empty-state{text-align:center;padding:4rem 2rem;background:#f9f9f9;border-radius:12px}.cv-empty-state .empty-icon{font-size:3rem;margin-bottom:1rem}.cv-empty-state h3{color:#333;margin:0 0 .5rem}.cv-empty-state p{color:#666;margin:0 0 1.5rem}.cv-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;min-height:400px}.cv-list-panel{display:flex;flex-direction:column;gap:1rem}.cv-group{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;overflow:hidden}.cv-group-header{display:flex;align-items:center;gap:.5rem;padding:.8rem 1rem;font-weight:600;font-size:.9rem;color:#fff}.cv-group-header.file{background:linear-gradient(135deg,#27ae60,#2ecc71)}.cv-group-header.link{background:linear-gradient(135deg,#1565c0,#1e88e5)}.cv-group-header.note{background:linear-gradient(135deg,#e65100,#ff9800)}.cv-group-icon{font-size:1rem}.cv-group-title{flex:1}.cv-group-count{opacity:.8;font-weight:500}.cv-group-items{display:flex;flex-direction:column}.cv-item{display:flex;align-items:center;padding:.8rem 1rem;cursor:pointer;border-left:4px solid transparent;transition:all .2s;border-bottom:1px solid #f0f0f0}.cv-item:last-child{border-bottom:none}.cv-item:hover{background:#f8f9ff}.cv-item.selected{background:#f0f4ff}.cv-item.type-file{border-left-color:#27ae60}.cv-item.type-link{border-left-color:#1565c0}.cv-item.type-note{border-left-color:#e65100}.cv-item-content{flex:1;min-width:0}.cv-item-name{font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.95rem}.cv-item-meta{font-size:.8rem;color:#888;margin-top:.2rem}.cv-details-panel{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:1.5rem;display:flex;flex-direction:column}.cv-details-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#888}.cv-details-empty .empty-icon{font-size:2.5rem;margin-bottom:.5rem}.cv-details-empty p{margin:0;font-size:.95rem}.cv-details-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f0f0f0}.cv-details-header h3{margin:0;color:#333;font-size:1.2rem;word-break:break-word}.cv-details-info{display:flex;flex-direction:column;gap:.8rem;margin-bottom:1.5rem}.cv-detail-row{display:flex;gap:.5rem}.cv-detail-label{color:#888;font-size:.9rem;min-width:70px}.cv-detail-value{color:#333;font-size:.9rem;flex:1}.cv-detail-value.cv-link{color:#1565c0;word-break:break-all;font-size:.85rem}.cv-details-actions{display:flex;gap:.8rem;margin-bottom:1.5rem}.cv-action-btn{padding:.6rem 1.2rem;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.cv-action-btn.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.cv-action-btn.primary:hover{transform:translateY(-1px);box-shadow:0 3px 8px #667eea66}.cv-action-btn.secondary{background:#f5f5f5;color:#555;border:1px solid #ddd}.cv-action-btn.secondary:hover{background:#e8e8e8;border-color:#ccc}.cv-action-btn.danger{background:#fee;color:#e74c3c}.cv-action-btn.danger:hover{background:#e74c3c;color:#fff}.cv-assignments-section{flex:1;display:flex;flex-direction:column;border-top:2px solid #f0f0f0;padding-top:1rem}.cv-assignments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}.cv-assignments-header h4{margin:0;font-size:.95rem;color:#333}.assign-btn{padding:.4rem .8rem;background:#3498db;color:#fff;border:none;border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .2s}.assign-btn:hover{background:#2980b9}.no-assignments{color:#888;font-size:.9rem;font-style:italic;margin:0}.cv-assignments-list{display:flex;flex-direction:column;gap:.5rem;max-height:200px;overflow-y:auto}.cv-assignment-item{display:flex;align-items:center;justify-content:space-between;padding:.6rem .8rem;background:#f8f9fa;border-radius:6px}.assignment-info{flex:1;min-width:0}.assignment-company{font-weight:500;font-size:.9rem;color:#333}.assignment-position{font-size:.8rem;color:#666}.remove-btn{width:24px;height:24px;border:none;background:transparent;color:#999;cursor:pointer;border-radius:4px;font-size:.9rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.remove-btn:hover{background:#fee;color:#e74c3c}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:300}.modal-content{background:#fff;border-radius:12px;padding:2rem;width:90%;max-width:500px;max-height:80vh;overflow-y:auto}.modal-content h3{margin:0 0 1rem;color:#333}.selected-cv-info{background:#e8f5e9;padding:.6rem 1rem;border-radius:6px;margin-bottom:1rem;font-size:.9rem;color:#2e7d32}.selected-cv-info strong{color:#1b5e20}.app-select-list{display:flex;flex-direction:column;gap:.5rem;margin:1rem 0;max-height:300px;overflow-y:auto}.app-select-item{padding:.8rem;border:2px solid #eee;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.app-select-item:hover{border-color:#667eea}.app-select-item.selected{border-color:#667eea;background:#f0f4ff}.app-select-item strong{font-size:1rem}.app-select-item span{font-size:.85rem;color:#666}.current-cv{font-size:.8rem;color:#27ae60;font-style:italic}.modal-actions{display:flex;gap:1rem;margin-top:1.5rem}.modal-actions button{flex:1;padding:.8rem;border:none;border-radius:8px;font-size:1rem;cursor:pointer}.modal-actions button:first-child{background:#f5f5f5;color:#666}.modal-actions button.primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.modal-actions button:disabled{opacity:.5;cursor:not-allowed}.add-cv-modal{max-width:550px}.add-cv-options{display:flex;flex-direction:column;gap:1rem;margin:1.5rem 0}.add-cv-option{display:flex;gap:1rem;padding:1.2rem;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s}.add-cv-option:hover{border-color:#667eea;background:#f8f9ff}.option-icon{font-size:2rem;width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:#f5f5f5;border-radius:10px}.option-content h4{margin:0 0 .3rem;font-size:1.1rem;color:#333}.option-content p{margin:0 0 .5rem;font-size:.9rem;color:#666}.option-features{margin:0;padding-left:1.2rem;font-size:.8rem;color:#888}.option-features li{margin-bottom:.2rem}.upload-area{margin:1.5rem 0}.upload-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;border:2px dashed #ccc;border-radius:12px;cursor:pointer;transition:all .2s}.upload-dropzone:hover{border-color:#667eea;background:#f8f9ff}.dropzone-content{display:flex;flex-direction:column;align-items:center;gap:.5rem}.dropzone-icon{font-size:2.5rem}.dropzone-text{font-size:1rem;color:#333;font-weight:500}.dropzone-hint{font-size:.85rem;color:#888}.privacy-info{display:flex;gap:.8rem;padding:1rem;background:#f0f7ff;border-radius:8px;margin:1rem 0}.privacy-icon{font-size:1.5rem}.privacy-info strong{display:block;font-size:.9rem;color:#333;margin-bottom:.2rem}.privacy-info p{margin:0;font-size:.85rem;color:#666}.back-link{background:none;border:none;color:#667eea;font-size:.9rem;cursor:pointer;padding:0;margin-bottom:1rem;display:block}.back-link:hover{text-decoration:underline}.link-form{display:flex;flex-direction:column;gap:1rem}.link-form .form-group{display:flex;flex-direction:column;gap:.4rem}.link-form label{font-size:.9rem;font-weight:600;color:#555}.link-form input{padding:.7rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem}.link-form input:focus{outline:none;border-color:#667eea}.form-hint{font-size:.8rem;color:#888}.form-hint.edit-hint{background:#f8f9fa;padding:.75rem;border-radius:6px;margin-top:.5rem}.type-toggle{display:flex;gap:.5rem}.type-toggle button{flex:1;padding:.7rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .2s}.type-toggle button:hover{border-color:#667eea}.type-toggle button.active{border-color:#667eea;background:#f0f4ff;color:#667eea;font-weight:600}@media(max-width:768px){.cv-layout{grid-template-columns:1fr}.cv-details-panel{order:-1}}.notes-list{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.notes-list h3{margin:0 0 20px;color:#2c3e50;font-size:1.25rem}.note-form{display:flex;flex-direction:column;gap:12px;margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid #eee}.category-buttons{display:flex;gap:8px;flex-wrap:wrap}.category-buttons.small{margin-bottom:8px}.category-buttons.small .category-btn{padding:4px 10px;font-size:12px}.category-btn{padding:6px 14px;border:2px solid #e0e0e0;border-radius:20px;background:#fff;font-size:13px;font-weight:500;color:#666;cursor:pointer;transition:all .2s}.category-btn:hover{border-color:var(--cat-color);color:var(--cat-color)}.category-btn.active{background:var(--cat-bg);border-color:var(--cat-color);color:var(--cat-color)}.note-form textarea{padding:12px;border:2px solid #e0e0e0;border-radius:8px;font-size:14px;font-family:inherit;resize:vertical;min-height:70px;transition:border-color .2s}.note-form textarea:focus{outline:none;border-color:#667eea}.submit-note-btn{align-self:flex-end;padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:transform .2s,opacity .2s}.submit-note-btn:hover:not(:disabled){transform:translateY(-1px)}.submit-note-btn:disabled{opacity:.5;cursor:not-allowed}.notes-container{display:flex;flex-direction:column;gap:12px}.note-item{background:#fafbfc;border-radius:8px;padding:14px 16px;border-left:3px solid var(--note-color);transition:box-shadow .2s}.note-item:hover{box-shadow:0 2px 8px #00000014}.note-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.category-tag{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600}.note-date{color:#95a5a6;font-size:12px}.note-content{color:#2c3e50;font-size:14px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.note-actions{display:flex;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid #eee;opacity:0;transition:opacity .2s}.note-item:hover .note-actions{opacity:1}.action-btn{padding:4px 12px;border:none;border-radius:4px;font-size:12px;cursor:pointer;transition:background .2s}.action-btn.edit{background:#e3f2fd;color:#1976d2}.action-btn.edit:hover{background:#bbdefb}.action-btn.delete{background:#ffebee;color:#c62828}.action-btn.delete:hover{background:#ffcdd2}.note-edit{display:flex;flex-direction:column;gap:10px}.note-edit textarea{padding:10px;border:2px solid #667eea;border-radius:6px;font-size:14px;font-family:inherit;resize:vertical;min-height:80px}.note-edit textarea:focus{outline:none}.edit-actions{display:flex;gap:8px;justify-content:flex-end}.save-btn{padding:6px 16px;background:#27ae60;color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:background .2s}.save-btn:hover{background:#219a52}.cancel-edit-btn{padding:6px 16px;background:#95a5a6;color:#fff;border:none;border-radius:4px;font-size:13px;cursor:pointer;transition:background .2s}.cancel-edit-btn:hover{background:#7f8c8d}.loading,.empty{text-align:center;color:#95a5a6;padding:30px 20px;font-size:14px}.table-container{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;margin:1.5rem}.table-toolbar{display:flex;flex-wrap:wrap;gap:16px;padding:16px 20px;border-bottom:1px solid #e9ecef;background:#fafbfc}.search-box{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:8px 12px;flex:1;min-width:200px;max-width:400px;transition:border-color .2s,box-shadow .2s}.search-box:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-icon{font-size:14px;color:#95a5a6}.search-box input{flex:1;border:none;outline:none;font-size:14px;background:transparent}.search-box input::placeholder{color:#adb5bd}.clear-search{background:none;border:none;font-size:18px;color:#95a5a6;cursor:pointer;padding:0 4px;line-height:1}.clear-search:hover{color:#e74c3c}.status-filters{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.status-filter-btn{padding:6px 12px;background:#fff;border:1px solid #e0e0e0;border-radius:20px;font-size:12px;color:#5a6c7d;cursor:pointer;transition:all .2s}.status-filter-btn:hover{background:#f8f9fa;border-color:var(--status-color, #ced4da);color:var(--status-color, #5a6c7d)}.status-filter-btn.active{background:#2c3e50;border-color:#2c3e50;color:#fff}.filter-info{padding:8px 20px;background:#fff3cd;color:#856404;font-size:13px;border-bottom:1px solid #ffeeba}.app-table{width:100%;border-collapse:collapse;font-size:14px}.app-table thead{background:#f8f9fa;border-bottom:2px solid #e9ecef}.app-table th{padding:12px 16px;text-align:left;font-weight:600;color:#495057;white-space:nowrap;-webkit-user-select:none;user-select:none}.app-table th.sortable{cursor:pointer;transition:background .2s}.app-table th.sortable:hover{background:#e9ecef}.th-content{display:flex;align-items:center;gap:6px}.th-icon{font-size:14px}.sort-arrow{margin-left:4px;font-size:12px;color:#667eea}.checkbox-col{width:40px;text-align:center}.checkbox-col input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#667eea}.app-table tbody tr{border-bottom:1px solid #f0f0f0;cursor:pointer;transition:background .15s}.app-table tbody tr:hover{background:#f8f9ff}.app-table tbody tr.selected{background:#eff3ff}.app-table td{padding:14px 16px;vertical-align:middle}.company-cell{display:flex;align-items:center;gap:10px}.company-initial{width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:14px;flex-shrink:0}.company-name{font-weight:600;color:#2c3e50}.position-col{color:#495057;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.salary-value{color:#27ae60;font-weight:600;font-family:Segoe UI,monospace}.source-link{color:#3498db;font-size:13px}.no-source{color:#adb5bd}.date-value{color:#495057;font-size:13px}.days-value{color:#6c757d;font-size:13px;font-weight:500}.status-badge{display:inline-block;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:600;border:1px solid;white-space:nowrap}.empty-table{text-align:center;padding:60px 20px;color:#6c757d;font-size:16px}@media(max-width:900px){.table-container{margin:1rem;overflow-x:auto}.table-toolbar{flex-direction:column;gap:12px}.search-box{max-width:100%}.app-table{min-width:700px}.position-col{max-width:150px}}@media(max-width:600px){.app-table th,.app-table td{padding:10px 8px}.company-initial{width:28px;height:28px;font-size:12px}.th-icon{display:none}}.selection-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.selection-info{font-weight:600;font-size:14px}.selection-actions{display:flex;gap:10px}.action-btn{padding:8px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.action-btn.delete-btn{background:#e74c3c;color:#fff}.action-btn.delete-btn:hover{background:#c0392b}.confirm-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-modal{background:#fff;padding:24px;border-radius:12px;box-shadow:0 10px 40px #0003;max-width:400px;width:90%;animation:scaleIn .2s ease-out}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.confirm-modal h3{margin:0 0 16px;color:#2c3e50;font-size:18px}.confirm-modal p{margin:0 0 12px;color:#495057;font-size:14px;line-height:1.5}.confirm-warning{color:#e74c3c!important;font-weight:500}.confirm-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.confirm-btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.confirm-btn.cancel{background:#f1f3f4;color:#495057}.confirm-btn.cancel:hover{background:#e9ecef}.confirm-btn.delete{background:#e74c3c;color:#fff}.confirm-btn.delete:hover{background:#c0392b}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:#f5f7fa;color:#333;line-height:1.6}.app{min-height:100vh;display:flex;flex-direction:column}.header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1rem 2rem;display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center}.header-left{display:flex;align-items:center;justify-self:start}.header h1{font-size:1.75rem;margin:0}.header-brand{display:flex;align-items:center;gap:12px}.logo-wrapper{background:transparent;border-radius:0;padding:0;display:flex;align-items:center;justify-content:flex-start;box-shadow:none;width:auto}.logo{height:auto;display:block;width:100%;max-width:none;object-fit:contain;transform:none}.header-tagline{opacity:.9;font-size:.9rem;margin:0}.toolbar{background:#fff;padding:1rem 2rem;display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:center;box-shadow:0 2px 4px #0000001a;position:sticky;top:0;z-index:100}.view-tabs{display:flex;gap:.5rem;justify-self:start}.tab-btn{padding:.6rem 1.2rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.tab-btn:hover{border-color:#667eea;color:#667eea}.tab-btn.active{background:#667eea;border-color:#667eea;color:#fff}.add-btn{padding:.6rem 1.2rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.add-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.form-modal{position:fixed;inset:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:200;padding:1rem}.form-modal-content{background:#fff;border-radius:12px;padding:2rem;width:100%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 10px 40px #0003}.form-modal-content h2{margin-bottom:1.5rem;color:#667eea;font-size:1.3rem}.application-form{display:flex;flex-direction:column;gap:1rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:500px){.form-row{grid-template-columns:1fr}}.form-group{display:flex;flex-direction:column;gap:.3rem}.form-group label{font-size:.85rem;font-weight:600;color:#555}.form-group input,.form-group select{padding:.7rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#667eea}.form-group input::placeholder{color:#aaa}.form-actions{display:flex;gap:1rem;margin-top:.5rem}.cancel-btn{flex:1;padding:.8rem;background:#f5f5f5;color:#666;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s}.cancel-btn:hover{background:#eee}.submit-btn{flex:1;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.8rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,box-shadow .2s}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.main-content{flex:1;background:#f5f7fa}.loading,.empty{text-align:center;color:#888;padding:3rem;font-size:1.1rem}.list-view{max-width:900px;margin:0 auto;padding:2rem}.applications-list{display:flex;flex-direction:column;gap:1rem}.application-card{background:#fff;border:1px solid #eee;border-radius:10px;padding:1.2rem;transition:transform .2s,box-shadow .2s}.application-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.card-header h3{font-size:1.2rem;color:#333}.status-badge{padding:.3rem .8rem;border-radius:20px;color:#fff;font-size:.75rem;font-weight:600;text-transform:uppercase}.position{color:#666;font-size:1rem;margin-bottom:.8rem}.card-details{display:flex;gap:1rem;margin-bottom:.5rem;flex-wrap:wrap}.salary{background:#e8f5e9;color:#2e7d32;padding:.3rem .6rem;border-radius:6px;font-size:.85rem;font-weight:600}.source{background:#e3f2fd;color:#1565c0;padding:.3rem .6rem;border-radius:6px;font-size:.85rem}.date{color:#999;font-size:.8rem;margin-top:.5rem}.offer-link{display:inline-block;margin-top:.5rem;color:#667eea;text-decoration:none;font-size:.9rem;font-weight:500}.offer-link:hover{text-decoration:underline}.application-card.clickable{cursor:pointer}.duplicate-warning{background:#fff3cd;border:1px solid #ffc107;border-radius:8px;padding:1rem;margin-bottom:1rem}.duplicate-warning p{color:#856404;margin:0}.duplicate-warning p:first-child{font-weight:600;margin-bottom:.5rem}.form-group.full-width{grid-column:1 / -1}.form-group textarea{padding:.7rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;min-height:80px;transition:border-color .2s}.form-group textarea:focus{outline:none;border-color:#667eea}.details-view{max-width:1200px;margin:0 auto;padding:2rem}.back-btn{background:none;border:none;color:#667eea;font-size:1rem;font-weight:500;cursor:pointer;padding:.5rem 0;margin-bottom:1rem;transition:color .2s}.back-btn:hover{color:#764ba2}.details-header{background:#fff;border-radius:12px;padding:1.5rem 2rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #0000001a}.details-title{display:flex;align-items:center;gap:1rem;margin-bottom:.5rem}.details-title h2{font-size:1.8rem;color:#333;margin:0}.status-badge.large{padding:.4rem 1rem;font-size:.85rem}.status-info{display:flex;align-items:center;gap:.5rem}.current-stage-badge{padding:.4rem 1rem;background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;border-radius:20px;font-size:.85rem;font-weight:600}.details-position{color:#666;font-size:1.2rem;margin:0}.details-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media(max-width:900px){.details-grid{grid-template-columns:1fr}}.details-info{background:#fff;border-radius:12px;padding:1.5rem 2rem;box-shadow:0 2px 8px #0000001a}.details-info h3{color:#333;font-size:1.25rem;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid #f0f0f0}.info-list{display:flex;flex-direction:column;gap:.8rem}.info-item{display:flex;gap:.5rem}.info-item .label{color:#666;font-weight:500;min-width:120px}.info-item .value{color:#333}.info-item .value.link{color:#667eea;text-decoration:none}.info-item .value.link:hover{text-decoration:underline}.job-description{margin-top:1.5rem;padding-top:1rem;border-top:2px solid #f0f0f0}.job-description h4{color:#666;font-size:1rem;margin-bottom:.5rem}.job-description p{color:#333;line-height:1.6;white-space:pre-wrap}.details-notes{min-height:300px}.edit-btn{padding:.5rem 1rem;background:linear-gradient(135deg,#f39c12,#e67e22);color:#fff;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;margin-left:auto;transition:transform .2s,box-shadow .2s}.edit-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f39c1266}.form-modal-content.large{max-width:700px}.salary-section{background:#f8f9fa;border-radius:8px;padding:1rem;margin:.5rem 0}.section-label{display:block;font-size:.85rem;font-weight:600;color:#555;margin-bottom:.25rem}.section-hint{display:block;font-size:.75rem;color:#888;margin-bottom:.75rem;font-style:italic}.salary-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.salary-inputs{display:flex;align-items:center;gap:.5rem;flex:1}.salary-input{padding:.6rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem;width:110px;transition:border-color .2s}.salary-input:focus{outline:none;border-color:#667eea}.currency-select{padding:.6rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem;background:#fff;cursor:pointer}.currency-select:focus{outline:none;border-color:#667eea}.checkbox-label{display:flex;align-items:center;gap:.4rem;font-size:.9rem;color:#555;cursor:pointer;white-space:nowrap}.checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer}.salary-options{display:flex;align-items:center;gap:1rem;margin-top:.75rem;flex-wrap:wrap}.option-group{display:flex;gap:.75rem}.toggle-label{display:flex;align-items:center;gap:.3rem;font-size:.85rem;color:#555;cursor:pointer}.toggle-label input[type=radio]{width:14px;height:14px;cursor:pointer}.contract-select,.source-select{padding:.5rem .75rem;border:2px solid #e0e0e0;border-radius:6px;font-size:.85rem;background:#fff;cursor:pointer;color:#555}.contract-select:focus,.source-select:focus{outline:none;border-color:#667eea}.job-description-textarea{font-family:inherit;white-space:pre-wrap}.job-description-content{white-space:pre-wrap;word-wrap:break-word;font-family:inherit;font-size:.95rem;line-height:1.6;color:#333;margin:0;background:#f8f9fa;padding:1rem;border-radius:8px;max-height:400px;overflow-y:auto}.info-item .cv-value{display:flex;align-items:center;gap:.8rem}.cv-download-btn{padding:.3rem .7rem;background:#27ae60;color:#fff;border:none;border-radius:5px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.cv-download-btn:hover{background:#219a52;transform:translateY(-1px)}.cv-download-btn.cv-link-btn{background:#1565c0}.cv-download-btn.cv-link-btn:hover{background:#0d47a1}.cv-note-hint{font-size:.8rem;color:#888;font-style:italic;margin-left:.5rem}.badge-widget{position:relative}.badge-widget-header{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;background:#ffffff26;border-radius:10px;cursor:pointer;transition:background .2s;border:1px solid rgba(255,255,255,.2)}.badge-widget-header:hover{background:#ffffff40}.badge-header-title{font-size:.9rem;font-weight:600;white-space:nowrap}.badge-expand-arrow{font-size:.7rem;opacity:.7}.badge-widget-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;min-width:340px;z-index:1000;overflow:hidden}.badge-section-label{font-size:.9rem;text-transform:uppercase;letter-spacing:.5px;color:#333;font-weight:700;padding:.6rem 1rem;background:linear-gradient(135deg,#667eea15,#764ba215);border-bottom:1px solid #e8e8f8;border-left:3px solid #667eea}.badge-row{display:flex;justify-content:space-between;align-items:center;padding:.85rem 1rem;border-bottom:1px solid #f0f0f0}.badge-row:last-child{border-bottom:none}.badge-row-left{display:flex;align-items:center;gap:.75rem}.badge-row-icon{font-size:1.75rem;line-height:1}.badge-row-icon.locked{opacity:.3;filter:grayscale(100%)}.badge-row-icon.special{animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.badge-row-info{display:flex;flex-direction:column;gap:.15rem}.badge-row-name{font-weight:700;font-size:.95rem;color:#333}.badge-row-name.special{background:linear-gradient(90deg,#f39c12,#e67e22);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.badge-row-description{font-size:.75rem;color:#666}.badge-row-progress{display:flex;align-items:center;gap:.5rem;margin-top:.5rem}.badge-progress-bar{width:120px;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.badge-progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .3s ease}.badge-progress-bar.ghosting .badge-progress-fill{background:linear-gradient(90deg,#9b59b6,#8e44ad)}.badge-progress-count{font-size:.8rem;font-weight:600;color:#555}.badge-row-next-line{font-size:.75rem;color:#888;margin-top:.35rem}.badge-row-max{font-size:.7rem;font-weight:700;color:#27ae60;background:#e8f5e9;padding:.25rem .5rem;border-radius:4px}.badge-row.sweet-revenge{background:linear-gradient(135deg,#fffaf0,#fff5e6);border-bottom:none}
