:root{--color-primary:#2563eb;--color-primary-dark:#1e40af;--color-primary-light:#3b82f6;--color-secondary:#1e293b;--color-secondary-light:#334155;--color-accent:#f97316;--color-accent-light:#fb923c;--color-text-primary:#0f172a;--color-text-secondary:#334155;--color-text-muted:#64748b;--color-text-light:#94a3b8;--color-bg-primary:#fff;--color-bg-secondary:#f8fafc;--color-bg-tertiary:#f1f5f9;--color-border-light:#e2e8f0;--color-border-medium:#cbd5e1;--color-border-dark:#94a3b8;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-2xl:32px;--space-3xl:48px;--space-4xl:64px;--space-5xl:96px;--space-6xl:128px;--font-display:"Space Grotesk",sans-serif;--font-body:"Inter",sans-serif;--font-mono:"JetBrains Mono",monospace;--font-size-xs:12px;--font-size-sm:14px;--font-size-base:16px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:32px;--font-size-4xl:40px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.2;--line-height-normal:1.5;--line-height-relaxed:1.6;--line-height-loose:1.8;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-full:9999px;--shadow-sm:0 1px 3px #0000001a;--shadow-md:0 4px 6px #0000001a;--shadow-lg:0 10px 15px #0000001a;--shadow-xl:0 20px 25px #00000026;--transition-fast:.15s;--transition-normal:.2s;--transition-slow:.3s;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:1000;--z-modal:1001;--z-popover:1002;--z-tooltip:1003}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-body);color:var(--color-text-primary);background:var(--color-bg-primary);line-height:var(--line-height-normal)}.btn{justify-content:center;align-items:center;gap:var(--space-sm);padding:var(--space-md)var(--space-xl);font-family:var(--font-body);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);white-space:nowrap;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal);-webkit-user-select:none;user-select:none;border:1px solid #0000;line-height:1;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--color-bg-secondary);color:var(--color-text-primary);border-color:var(--color-border-medium)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-tertiary);border-color:var(--color-border-dark)}.btn-ghost{color:var(--color-text-secondary);background:0 0;border-color:#0000}.btn-ghost:hover:not(:disabled){background:var(--color-bg-secondary);color:var(--color-primary)}.btn-lg{padding:var(--space-lg)var(--space-2xl);font-size:var(--font-size-base)}.btn-sm{padding:var(--space-sm)var(--space-lg);font-size:var(--font-size-xs)}.card{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);transition:all var(--transition-normal);overflow:hidden}.card-hover:hover{box-shadow:var(--shadow-lg);border-color:var(--color-primary);transform:translateY(-4px)}.card-header{padding:var(--space-xl);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.card-title{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:var(--line-height-tight)}.card-meta{align-items:center;gap:var(--space-lg);font-size:var(--font-size-xs);color:var(--color-text-muted);display:flex}.card-company,.card-location{align-items:center;gap:var(--space-xs);display:flex}.card-body{padding:var(--space-xl)}.card-text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-secondary);margin-bottom:var(--space-lg)}.card-footer{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-xl);border-top:1px solid var(--color-border-light);display:flex}.card-salary{font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-primary)}.card-tags{gap:var(--space-sm);flex-wrap:wrap;display:flex}.form-label{margin-bottom:var(--space-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary);display:block}.form-input{width:100%;padding:var(--space-md)var(--space-lg);font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.form-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.form-input::placeholder{color:var(--color-text-muted)}.form-input:disabled{background:var(--color-bg-secondary);cursor:not-allowed}.form-error{margin-top:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-error);display:block}.form-select{width:100%;padding:var(--space-md)var(--space-lg);font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal)}.form-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.form-textarea{width:100%;padding:var(--space-md)var(--space-lg);font-family:var(--font-body);font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);resize:vertical;transition:all var(--transition-normal)}.form-textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.form-checkbox{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);cursor:pointer;display:flex}.form-checkbox input[type=checkbox]{border:2px solid var(--color-border-medium);border-radius:var(--radius-sm);cursor:pointer;width:20px;height:20px;accent-color:var(--color-primary)}.form-checkbox label{font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer}.form-radio{align-items:center;gap:var(--space-md);margin-bottom:var(--space-md);cursor:pointer;display:flex}.form-radio input[type=radio]{border:2px solid var(--color-border-medium);cursor:pointer;width:20px;height:20px;accent-color:var(--color-primary)}.form-radio label{font-size:var(--font-size-sm);color:var(--color-text-primary);cursor:pointer}.badge{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;border-radius:var(--radius-md);align-items:center;padding:4px 10px;line-height:1;display:inline-flex}.badge-primary{color:var(--color-primary);background:#dbeafe}.badge-success{color:#059669;background:#d1fae5}.badge-warning{color:#d97706;background:#fef3c7}.badge-error{color:#dc2626;background:#fee2e2}.badge-neutral{background:var(--color-bg-tertiary);color:var(--color-text-muted)}.tag{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--color-text-muted);background:var(--color-bg-secondary);border:1px solid var(--color-border-light);border-radius:var(--radius-sm);transition:all var(--transition-fast);align-items:center;padding:4px 10px;display:inline-flex}.tag-clickable{cursor:pointer}.tag-clickable:hover{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.alert{gap:var(--space-lg);padding:var(--space-lg);border-radius:var(--radius-lg);border:1px solid;display:flex}.alert-icon{flex-shrink:0;font-size:24px}.alert-content{flex:1}.alert-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-xs)}.alert-text{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}.alert-info{color:#1e40af;background:#eff6ff;border-color:#bfdbfe}.alert-success{color:#166534;background:#f0fdf4;border-color:#bbf7d0}.alert-warning{color:#92400e;background:#fffbeb;border-color:#fde68a}.alert-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}.stat-card{align-items:center;gap:var(--space-lg);padding:var(--space-xl);background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);transition:all var(--transition-normal);display:flex}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-icon{border-radius:var(--radius-lg);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.stat-icon-primary{color:var(--color-primary);background:#eff6ff}.stat-icon-success{color:var(--color-success);background:#f0fdf4}.stat-icon-warning{color:var(--color-warning);background:#fffbeb}.stat-icon-error{color:var(--color-error);background:#fef2f2}.stat-content{flex:1}.stat-value{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);color:var(--color-text-primary)}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-xs)}.stat-change{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);border-radius:var(--radius-sm);padding:4px 8px}.stat-change-up{color:#059669;background:#d1fae5}.stat-change-down{color:#dc2626;background:#fee2e2}.list{list-style:none}.list-item{align-items:center;gap:var(--space-md);padding:var(--space-md)var(--space-lg);border-radius:var(--radius-md);transition:all var(--transition-fast);display:flex}.list-interactive .list-item{cursor:pointer}.list-item:hover,.list-item-active{background:var(--color-bg-secondary)}.list-icon{flex-shrink:0;font-size:18px}.list-text{font-size:var(--font-size-sm);color:var(--color-text-primary);flex:1}.list-content{flex:1}.list-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.list-subtitle{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:2px}.pagination{justify-content:center;align-items:center;gap:var(--space-md);display:flex}.pagination-numbers{gap:var(--space-sm);display:flex}.pagination-btn{padding:var(--space-md)var(--space-lg);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled):not(.pagination-btn-active){background:var(--color-bg-secondary);border-color:var(--color-border-medium)}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-btn-active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pagination-dots{padding:0 var(--space-sm);color:var(--color-text-muted);align-items:center;display:flex}.table-container{border:1px solid var(--color-border-light);border-radius:var(--radius-lg);width:100%;overflow-x:auto}.table{border-collapse:collapse;width:100%}.table thead{background:var(--color-bg-secondary)}.table th{padding:var(--space-lg)var(--space-xl);text-align:left;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--color-border-light)}.table td{padding:var(--space-lg)var(--space-xl);font-size:var(--font-size-sm);color:var(--color-text-primary);border-bottom:1px solid var(--color-border-light)}.table tbody tr:last-child td{border-bottom:none}.table tbody tr:hover{background:var(--color-bg-secondary)}.table-cell-right{text-align:right}.table-cell-main strong{font-weight:var(--font-weight-semibold);margin-bottom:2px;display:block}.table-cell-sub{font-size:var(--font-size-xs);color:var(--color-text-muted);display:block}.modal{z-index:var(--z-modal-backdrop);padding:var(--space-xl);justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal-active{display:flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;position:absolute;inset:0}.modal-container{z-index:var(--z-modal);background:var(--color-bg-primary);border-radius:var(--radius-xl);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-xl);animation:.3s ease-out modalSlideUp;position:relative;overflow-y:auto}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:var(--space-xl);border-bottom:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.modal-title{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.modal-close{width:32px;height:32px;color:var(--color-text-muted);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;font-size:20px;display:flex}.modal-close:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.modal-body{padding:var(--space-xl)}.modal-footer{justify-content:flex-end;align-items:center;gap:var(--space-md);padding:var(--space-xl);border-top:1px solid var(--color-border-light);display:flex}.spinner{border:4px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.spinner-sm{border-width:3px;width:24px;height:24px}.spinner-lg{border-width:6px;width:64px;height:64px}@keyframes spin{to{transform:rotate(360deg)}}.progress{background:var(--color-bg-secondary);border-radius:var(--radius-full);width:100%;height:8px;overflow:hidden}.progress-bar{background:linear-gradient(90deg,var(--color-primary),var(--color-primary-light));border-radius:var(--radius-full);height:100%;transition:width var(--transition-slow)}.app-container{min-height:100vh;display:flex}.main-content{background:var(--color-bg-secondary);flex-direction:column;flex:1;min-height:100vh;margin-left:280px;display:flex}@media (max-width:768px){.main-content{margin-left:0}}.sidebar{background:var(--color-bg-primary);border-right:1px solid var(--color-border-light);z-index:100;width:280px;transition:transform var(--transition-normal);position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.sidebar-header{padding:var(--space-xl);border-bottom:1px solid var(--color-border-light)}.sidebar-logo{align-items:center;gap:var(--space-md);color:var(--color-text-primary);text-decoration:none;display:flex}.logo-text{font-family:var(--font-display);color:var(--color-primary);font-size:24px;font-weight:700}.sidebar-nav{padding:var(--space-lg)}.sidebar-link{align-items:center;gap:var(--space-md);padding:var(--space-md)var(--space-lg);margin-bottom:var(--space-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);border-radius:var(--radius-lg);transition:all var(--transition-fast);cursor:pointer;text-align:left;background:0 0;border:none;width:100%;text-decoration:none;display:flex}.sidebar-link:hover{background:var(--color-bg-secondary);color:var(--color-primary)}.sidebar-link-active{background:var(--color-primary);color:#fff}.sidebar-link-logout{color:var(--color-error)}.sidebar-link-logout:hover{background:#fef2f2}.sidebar-icon{flex-shrink:0;font-size:18px}.sidebar-text{flex:1}.sidebar-badge{font-size:var(--font-size-xs);background:var(--color-bg-tertiary);border-radius:var(--radius-sm);color:var(--color-text-muted);padding:2px 8px}.sidebar-badge.badge-new{color:#fff;font-weight:var(--font-weight-semibold);background:linear-gradient(135deg,#10b981 0%,#059669 100%);animation:2s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.sidebar-link-active .sidebar-badge{color:#fff;background:#fff3}.sidebar-link-active .sidebar-badge.badge-new{color:#fff;background:#ffffff4d}.sidebar-divider{background:var(--color-border-light);height:1px;margin:var(--space-lg)0}.sidebar-section-title{padding:var(--space-md)var(--space-lg);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--space-md);margin-bottom:var(--space-sm)}.burger-btn{top:var(--space-lg);left:var(--space-lg);z-index:101;background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);width:48px;height:48px;box-shadow:var(--shadow-md);cursor:pointer;transition:all var(--transition-fast);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:none;position:fixed}.burger-btn:hover{background:var(--color-bg-secondary)}.burger-btn span{background:var(--color-text-primary);width:24px;height:2px;transition:all var(--transition-fast);border-radius:2px;display:block}@media (max-width:768px){.burger-btn{display:flex}.sidebar{transform:translate(-100%)}.sidebar-open{transform:translate(0)}}.sidebar-overlay{z-index:99;background:#00000080;display:none;position:fixed;inset:0}@media (max-width:768px){.sidebar-overlay{display:block}}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.text-primary{color:var(--color-text-primary)}.text-secondary{color:var(--color-text-secondary)}.text-muted{color:var(--color-text-muted)}.text-light{color:var(--color-text-light)}.font-normal{font-weight:var(--font-weight-normal)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.d-none{display:none}.d-block{display:block}.d-flex{display:flex}.d-grid{display:grid}.flex-row{flex-direction:row}.flex-column{flex-direction:column}.align-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}@media (max-width:768px){.hide-mobile{display:none!important}}@media (min-width:769px){.hide-desktop{display:none!important}}.footer{color:#e2e8f0;background:linear-gradient(#0f172a 0%,#1e293b 100%);border-top:1px solid #94a3b81a;margin-top:auto}.footer-content{max-width:1400px;padding:var(--space-4xl)var(--space-xl);margin:0 auto}.footer-grid{gap:var(--space-3xl);margin-bottom:var(--space-3xl);grid-template-columns:2fr 1fr 1fr 1fr 1fr;display:grid}.footer-column{gap:var(--space-lg);flex-direction:column;display:flex}.footer-logo{margin-bottom:var(--space-md)}.footer-logo-text{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);background:linear-gradient(135deg,#60a5fa 0%,#3b82f6 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.footer-description{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:#94a3b8;margin-bottom:var(--space-md)}.footer-stats{gap:var(--space-xl);display:flex}.footer-stat{flex-direction:column;display:flex}.footer-stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-primary);font-family:var(--font-display)}.footer-stat-label{font-size:var(--font-size-xs);color:#64748b;text-transform:uppercase;letter-spacing:.05em}.footer-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:#f1f5f9;margin-bottom:var(--space-sm)}.footer-links{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.footer-links li a{font-size:var(--font-size-sm);color:#94a3b8;transition:color var(--transition-fast);text-decoration:none;display:inline-block}.footer-links li a:hover{color:var(--color-primary)}.footer-bottom{padding-top:var(--space-2xl);border-top:1px solid #94a3b81a}.footer-bottom-content{justify-content:space-between;align-items:center;display:flex}.footer-copyright{font-size:var(--font-size-sm);color:#64748b}.footer-social{gap:var(--space-md);display:flex}.footer-social-link{border-radius:var(--radius-lg);color:#94a3b8;width:40px;height:40px;transition:all var(--transition-fast);background:#94a3b81a;justify-content:center;align-items:center;text-decoration:none;display:flex}.footer-social-link:hover{background:var(--color-primary);color:#fff;transform:translateY(-2px)}.content-wrapper{padding:var(--space-2xl);flex:1}@media (max-width:768px){.content-wrapper{padding:var(--space-lg)}}@media (max-width:1024px){.footer-grid{gap:var(--space-2xl);grid-template-columns:1fr 1fr 1fr}.footer-column:first-child{grid-column:1/-1}}@media (max-width:768px){.footer-content{padding:var(--space-3xl)var(--space-lg)}.footer-grid{gap:var(--space-2xl);grid-template-columns:1fr}.footer-column:first-child{grid-column:1}.footer-stats{justify-content:flex-start}.footer-bottom-content{gap:var(--space-lg);text-align:center;flex-direction:column}}.form-step{animation:.3s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-step-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);margin-bottom:var(--space-md);font-family:var(--font-display);color:var(--color-text-primary)}.form-step-description{font-size:var(--font-size-base);color:var(--color-text-muted);margin-bottom:var(--space-3xl);line-height:var(--line-height-relaxed)}.form-group{margin-bottom:var(--space-2xl)}.form-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-sm);display:block}.form-required{color:var(--color-error);margin-left:2px}.form-input,.form-textarea{width:100%;padding:var(--space-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);transition:all var(--transition-fast);font-family:inherit}.form-input:focus,.form-textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #3b82f61a}.form-input-error{border-color:var(--color-error)}.form-input-error:focus{box-shadow:0 0 0 3px #ef44441a}.form-textarea{resize:vertical;min-height:120px;line-height:var(--line-height-relaxed)}.form-error{color:var(--color-error);font-size:var(--font-size-sm);margin-top:var(--space-xs);align-items:center;gap:var(--space-xs);display:flex}.form-error:before{content:"⚠️";font-size:var(--font-size-xs)}.form-hint{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-top:var(--space-xs)}.form-row{gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.form-checkbox{align-items:center;gap:var(--space-sm);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:var(--font-size-sm);color:var(--color-text-secondary);display:flex}.form-checkbox input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:var(--color-primary)}.form-checkbox:hover{color:var(--color-text-primary)}.checkbox-grid{gap:var(--space-md);padding:var(--space-lg);background:var(--color-bg-secondary);border-radius:var(--radius-lg);grid-template-columns:repeat(auto-fill,minmax(200px,1fr));display:grid}@media (max-width:768px){.form-row,.checkbox-grid{grid-template-columns:1fr}.form-step-title{font-size:var(--font-size-2xl)}}.vacancies-table{gap:var(--space-lg);flex-direction:column;display:flex}.vacancy-row{background:var(--color-bg-primary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);transition:all var(--transition-fast)}.vacancy-row:hover{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.vacancy-row-main{justify-content:space-between;align-items:flex-start;gap:var(--space-xl);margin-bottom:var(--space-lg);display:flex}.vacancy-row-info{flex:1}.vacancy-row-stats{gap:var(--space-xl);flex-shrink:0;display:flex}.vacancy-stat{text-align:center;min-width:80px}.vacancy-stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);font-family:var(--font-display)}.vacancy-stat-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:var(--space-xs)}.vacancy-row-actions{gap:var(--space-sm);padding-top:var(--space-lg);border-top:1px solid var(--color-border-light);flex-wrap:wrap;display:flex}@media (max-width:768px){.vacancy-row{padding:var(--space-lg)}.vacancy-row-main{gap:var(--space-lg);flex-direction:column}.vacancy-row-stats{justify-content:space-around;width:100%}.vacancy-row-actions{flex-direction:column}.vacancy-row-actions .btn{justify-content:center;width:100%}}.experience-block{padding:var(--space-xl);background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-xl)}.experience-block:last-of-type{margin-bottom:var(--space-lg)}.activity-stat{align-items:flex-start;gap:var(--space-md);padding:var(--space-md);background:var(--color-bg-secondary);border-radius:var(--radius-md);display:flex}.activity-stat-icon{font-size:32px;line-height:1}.activity-stat-content{flex:1}.activity-stat-value{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);font-family:var(--font-display);line-height:1.2}.activity-stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.activity-stat-subtext{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-xs)}@media (max-width:768px){.activity-stat{text-align:center;flex-direction:column;align-items:center}}.comment{margin-bottom:var(--space-lg);flex-direction:column;display:flex}.comment-body{gap:var(--space-md);display:flex}.comment-votes{flex-shrink:0}.comment-content{flex:1;min-width:0}.comment-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);font-size:var(--font-size-sm);display:flex}.comment-author{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.comment-time{color:var(--color-text-muted)}.comment-text{color:var(--color-text-primary);margin-bottom:var(--space-sm);word-wrap:break-word;line-height:1.6}.comment-actions{gap:var(--space-md);display:flex}.comment-action-btn{padding:var(--space-xs)var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;transition:all .2s}.comment-action-btn:hover{background:var(--color-background-tertiary);color:var(--color-primary)}.comment-action-delete:hover{color:var(--color-error)}.comment-reply-form{margin-top:var(--space-md);padding:var(--space-md);background:var(--color-background-secondary);border-radius:var(--radius-md)}.comment-reply-textarea{width:100%;padding:var(--space-sm);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--font-size-base);resize:vertical;margin-bottom:var(--space-sm)}.comment-reply-textarea:focus{border-color:var(--color-primary);outline:none}.comment-reply-actions{justify-content:flex-end;gap:var(--space-sm);display:flex}.comment-replies{margin-top:var(--space-md);padding-left:var(--space-2xl);border-left:2px solid var(--color-border)}.comment-level-0{border-left:none}.comment-level-1 .comment-body{padding:var(--space-md);background:var(--color-background-secondary);border-radius:var(--radius-md)}.comment-level-2 .comment-body{padding:var(--space-sm);background:var(--color-background-tertiary);border-radius:var(--radius-sm)}@media (max-width:768px){.comment-replies{padding-left:var(--space-md)}}.code-block{margin:var(--space-lg)0;border-radius:var(--radius-md);border:1px solid var(--color-border);overflow:hidden}.code-block-header{padding:var(--space-sm)var(--space-md);background:#2d2d2d;border-bottom:1px solid #3d3d3d;justify-content:space-between;align-items:center;display:flex}.code-block-language{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#61afef;text-transform:uppercase}.code-block-copy{padding:var(--space-xs)var(--space-sm);border-radius:var(--radius-sm);color:#abb2bf;font-size:var(--font-size-sm);cursor:pointer;background:#ffffff1a;border:1px solid #fff3;transition:all .2s}.code-block-copy:hover{color:#fff;background:#fff3}.code-block pre{padding:var(--space-md);background:#282c34;margin:0;overflow-x:auto}.code-block code{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.6}.code-block pre.line-numbers{padding-left:3.5em;position:relative}.code-block pre.line-numbers>code{position:relative}@media (max-width:768px){.code-block{margin-left:calc(-1*var(--space-md));margin-right:calc(-1*var(--space-md));border-left:none;border-right:none;border-radius:0}.code-block pre{font-size:12px}}.qa-detail-container{max-width:1000px;margin:0 auto}.qa-back-btn{margin-bottom:var(--space-lg)}.qa-question-card{margin-bottom:var(--space-2xl)}.qa-question-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.qa-question-header-content{flex:1;min-width:0}.qa-question-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-sm)0;line-height:1.3}.qa-question-meta{gap:var(--space-md);font-size:var(--font-size-sm);color:var(--color-text-secondary);flex-wrap:wrap;display:flex}.qa-question-body{padding:var(--space-xl)}.qa-vote-content-wrapper{gap:var(--space-lg);display:flex}.qa-question-content{flex:1;min-width:0}.qa-tags{gap:var(--space-sm);margin-top:var(--space-lg);flex-wrap:wrap;display:flex}.qa-delete-btn{color:var(--color-error)}.qa-delete-btn:hover{background:var(--color-error-bg)}.qa-comments-section{padding:var(--space-lg)var(--space-xl);background:var(--color-background-secondary);border-top:1px solid var(--color-border)}.qa-comments-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0 0 var(--space-lg)0;color:var(--color-text-primary)}.qa-answers-section{margin-bottom:var(--space-2xl)}.qa-answers-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);margin:0 0 var(--space-lg)0;color:var(--color-text-primary)}.qa-answers-list{gap:var(--space-lg);flex-direction:column;display:flex}.qa-answer-card{position:relative}.qa-answer-accepted{border:2px solid var(--color-success);box-shadow:0 0 0 4px var(--color-success-bg)}.qa-accepted-badge{align-items:center;gap:var(--space-xs);padding:var(--space-xs)var(--space-sm);background:var(--color-success);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-md);display:inline-flex}.qa-answer-content{flex:1;min-width:0}.qa-answer-footer{justify-content:space-between;align-items:center;gap:var(--space-md);margin-top:var(--space-lg);padding-top:var(--space-md);border-top:1px solid var(--color-border);display:flex}.qa-answer-meta{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.qa-answer-actions{gap:var(--space-sm);display:flex}.qa-answer-form-card{margin-bottom:var(--space-2xl)}.qa-answer-form-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);margin:0}.qa-answer-form-actions{margin-top:var(--space-lg);justify-content:flex-end;display:flex}.qa-answer-login-prompt{text-align:center;padding:var(--space-2xl)}.qa-answer-login-prompt p{margin-bottom:var(--space-lg);color:var(--color-text-secondary)}.prose{color:var(--color-text-primary);word-wrap:break-word;overflow-wrap:break-word;max-width:100%;line-height:1.7}.prose *{overflow-wrap:break-word;max-width:100%}.prose p{margin-bottom:var(--space-md)}.prose p:last-child{margin-bottom:0}.prose h1,.prose h2,.prose h3,.prose h4{margin-top:var(--space-xl);margin-bottom:var(--space-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.prose h1{font-size:var(--font-size-3xl)}.prose h2{font-size:var(--font-size-2xl)}.prose h3{font-size:var(--font-size-xl)}.prose h4{font-size:var(--font-size-lg)}.prose ul,.prose ol{margin:var(--space-md)0;padding-left:var(--space-xl)}.prose li{margin-bottom:var(--space-xs)}.prose a{color:var(--color-primary);text-decoration:underline}.prose a:hover{color:var(--color-primary-dark)}.prose code{background:var(--color-background-tertiary);border-radius:var(--radius-xs);padding:2px 6px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.9em}.prose pre{color:#abb2bf;padding:var(--space-md);border-radius:var(--radius-sm);margin:var(--space-md)0;background:#282c34;overflow-x:auto}.prose pre code{color:inherit;background:0 0;padding:0}.prose blockquote{border-left:4px solid var(--color-border);padding-left:var(--space-md);margin:var(--space-md)0;color:var(--color-text-secondary);font-style:italic}.prose img{max-width:100%;height:auto;margin:var(--space-lg)0;border-radius:var(--radius-sm);display:block}.prose table{border-collapse:collapse;width:100%;margin:var(--space-md)0}.prose th,.prose td{border:1px solid var(--color-border);padding:var(--space-sm);text-align:left}.prose th{background:var(--color-background-secondary);font-weight:var(--font-weight-semibold)}@media (max-width:768px){.qa-question-title{font-size:var(--font-size-xl)}.qa-question-meta{font-size:var(--font-size-xs);gap:var(--space-sm)}.qa-question-body,.qa-comments-section{padding:var(--space-md)}.qa-answer-footer{flex-direction:column;align-items:flex-start}.qa-answer-actions{width:100%}.qa-answer-actions button{flex:1}}.online-indicator-wrapper{align-items:center;gap:var(--space-xs);display:inline-flex}.online-indicator{background:var(--color-text-muted);border-radius:50%;transition:background-color .3s;display:inline-block;position:relative}.online-indicator.online{background:var(--color-success)}.online-indicator.offline{background:var(--color-text-muted)}.online-indicator-sm{width:8px;height:8px}.online-indicator-md{width:10px;height:10px}.online-indicator-lg{width:12px;height:12px}.online-indicator.online .online-pulse{background:var(--color-success);border-radius:50%;width:100%;height:100%;animation:2s ease-out infinite online-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes online-pulse{0%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(2)}}.online-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.online-indicator.online+.online-text{color:var(--color-success)}.qa-mobile-filters-btn,.qa-filters-sidebar-mobile{display:none}.qa-filters-sidebar-desktop{display:block}@media (max-width:768px){.qa-mobile-filters-btn{justify-content:center;width:100%;display:flex!important}.qa-filters-sidebar-desktop{display:none!important}.qa-filters-sidebar-mobile{background:var(--color-background);z-index:1001;width:85%;max-width:350px;height:100vh;padding:var(--space-lg);transition:transform .3s ease-in-out;display:block;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:2px 0 12px #0003}.qa-filters-sidebar-mobile-open{transform:translate(0)!important}.qa-mobile-filters-close{width:100%;padding:var(--space-md);margin-bottom:var(--space-lg);background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;color:var(--color-text);display:block!important}.qa-mobile-filters-close:hover{background:var(--color-background-tertiary)}}.qa-mobile-backdrop{display:none}@media (max-width:768px){.qa-mobile-backdrop{z-index:1000;background:#00000080;display:block;position:fixed;inset:0}}.qa-author{align-items:center;gap:var(--space-sm);display:flex}.qa-author-small{gap:var(--space-xs)}.qa-author-avatar{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff;width:40px;height:40px;font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.qa-author-avatar-small{width:32px;height:32px;font-size:var(--font-size-base)}.qa-author-info{align-items:center;gap:var(--space-xs);flex-wrap:wrap;display:flex}.qa-author-name{font-weight:var(--font-weight-semibold);color:var(--color-text);text-decoration:none;transition:color .2s}.qa-author-name:hover{color:var(--color-primary);text-decoration:underline}.qa-meta-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.qa-meta-separator{color:var(--color-text-muted);font-size:var(--font-size-sm)}.qa-meta-time,.qa-meta-views{font-size:var(--font-size-sm);color:var(--color-text-secondary)}@media (max-width:768px){.qa-author-avatar{width:32px;height:32px;font-size:var(--font-size-base)}.qa-author-avatar-small{width:28px;height:28px;font-size:var(--font-size-sm)}.qa-question-meta{flex-wrap:wrap}}.vote-buttons{align-items:center;gap:var(--space-xs);flex-direction:column;display:flex}.vote-btn{background:var(--color-background-secondary);border:2px solid var(--color-border);cursor:pointer;width:40px;height:40px;color:var(--color-text-secondary);border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:700;line-height:1;transition:all .2s;display:flex}.vote-btn:hover:not(.vote-btn-disabled){border-color:var(--color-primary);transform:scale(1.1);box-shadow:0 2px 8px #0000001a}.vote-btn-up:hover:not(.vote-btn-disabled){border-color:var(--color-success);background:#10b9811a}.vote-btn-up.vote-btn-active{background:var(--color-success);color:#fff;border-color:var(--color-success);box-shadow:0 2px 8px #10b9814d}.vote-btn-down:hover:not(.vote-btn-disabled){border-color:var(--color-error);background:#ef44441a}.vote-btn-down.vote-btn-active{background:var(--color-error);color:#fff;border-color:var(--color-error);box-shadow:0 2px 8px #ef44444d}.vote-btn-disabled{cursor:default;opacity:.5}.vote-score{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--color-text);text-align:center;min-width:40px;padding:var(--space-xs)0}.vote-score-positive{color:var(--color-success)}.vote-score-negative{color:var(--color-error)}.qa-vote-content-wrapper{gap:var(--space-lg);align-items:flex-start;display:flex}.qa-question-content,.qa-answer-content{flex:1;min-width:0}.qa-vote-content-wrapper .vote-buttons{padding:var(--space-sm);border-right:2px solid var(--color-border);flex-shrink:0;min-width:60px}.qa-answer-header{margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--color-border-light)}@media (max-width:768px){.vote-btn{width:36px;height:36px;font-size:16px}.vote-score{font-size:var(--font-size-lg);min-width:36px}.qa-question-card .card-body,.qa-answer-card .card-body{padding:var(--space-md)!important}.qa-vote-content-wrapper{gap:var(--space-md)!important}.qa-answer-header{margin-bottom:var(--space-sm)!important;padding-bottom:var(--space-xs)!important}.prose p{margin-bottom:var(--space-sm)!important}.prose h1,.prose h2,.prose h3,.prose h4{margin-top:var(--space-md)!important;margin-bottom:var(--space-sm)!important}.prose ul,.prose ol{margin:var(--space-sm)0!important}.qa-questions-list{gap:var(--space-md)!important}.qa-vote-content-wrapper .vote-buttons{padding:var(--space-xs)!important}.qa-question-meta,.qa-answer-meta{gap:var(--space-xs)!important}}.qa-author-avatar img,.qa-author-avatar-small img{object-fit:cover;border-radius:50%;width:100%;height:100%}@media (max-width:768px){.qa-mobile-filters-btn{background:var(--color-primary)!important;color:#fff!important;width:100%!important;padding:var(--space-md)!important;border-radius:var(--radius-md)!important;margin-bottom:var(--space-lg)!important;font-weight:var(--font-weight-semibold)!important;cursor:pointer!important;border:none!important;justify-content:center!important;display:flex!important}.qa-filters-sidebar-desktop{display:none!important}.qa-filters-sidebar-mobile{background:var(--color-background)!important;z-index:1001!important;width:85%!important;max-width:350px!important;height:100vh!important;padding:var(--space-lg)!important;transition:transform .3s ease-in-out!important;display:block!important;position:fixed!important;top:0!important;left:0!important;overflow-y:auto!important;transform:translate(-100%)!important;box-shadow:2px 0 12px #0003!important}.qa-filters-sidebar-mobile-open{transform:translate(0)!important}.qa-mobile-backdrop{z-index:1000!important;background:#00000080!important;display:block!important;position:fixed!important;inset:0!important}.qa-mobile-filters-close,.qa-filters-sidebar-mobile{display:block!important}div[style*="gridTemplateColumns: '300px 1fr'"],div[style*="gridTemplateColumns: \"300px 1fr\""]{grid-template-columns:1fr!important}.qa-page-container>div[style*="display: flex"]{flex-direction:column!important}.qa-page-container aside[style*="position: sticky"]{margin-bottom:var(--space-lg);width:100%!important;position:relative!important}}.qa-mobile-filters-toggle{display:none}@media (max-width:768px){.qa-mobile-filters-toggle{width:100%;padding:var(--space-md);background:var(--color-primary);color:#fff;border-radius:var(--radius-md);font-weight:var(--font-weight-semibold);cursor:pointer;border:none;justify-content:center;align-items:center;display:flex!important}.qa-mobile-filters-toggle:hover{background:var(--color-primary-dark)}.qa-page-container aside:not(.qa-filters-hidden){order:-1;width:100%!important;margin-bottom:var(--space-lg)!important;display:block!important;position:relative!important}.qa-page-container aside.qa-filters-hidden{display:none!important}}.qa-comments-section{margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-border)}.qa-comments-list{gap:var(--space-md);margin-bottom:var(--space-md);flex-direction:column;display:flex}.qa-comment{padding:var(--space-md);background:var(--color-bg-secondary);border-radius:var(--radius-md);border-left:3px solid var(--color-border)}.qa-comment-header{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);display:flex}.qa-comment-avatar{object-fit:cover;color:#fff;width:32px;height:32px;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.qa-comment-info{align-items:center;gap:var(--space-xs);flex-wrap:wrap;flex:1;display:flex}.qa-comment-author{font-weight:var(--font-weight-semibold);color:var(--color-text);font-size:var(--font-size-sm);text-decoration:none}.qa-comment-author:hover{color:var(--color-primary)}.qa-comment-time{font-size:var(--font-size-xs);color:var(--color-text-muted)}.qa-comment-delete{color:var(--color-text-muted);cursor:pointer;padding:var(--space-xs);font-size:var(--font-size-lg);background:0 0;border:none;margin-left:auto;line-height:1}.qa-comment-delete:hover{color:var(--color-danger)}.qa-comment-content{font-size:var(--font-size-sm);color:var(--color-text);white-space:pre-wrap;line-height:1.6}.qa-comment-add-btn{border:1px dashed var(--color-border);padding:var(--space-sm)var(--space-md);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;text-align:left;background:0 0;width:100%;transition:all .2s}.qa-comment-add-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-bg-secondary)}.qa-comment-form{padding:var(--space-md);background:var(--color-bg-secondary);border-radius:var(--radius-md);border:1px solid var(--color-border)}.qa-comment-form textarea{resize:vertical;width:100%;min-height:80px}@media (max-width:768px){.qa-comments-section{margin-top:var(--space-md);padding-top:var(--space-md)}.qa-comment{padding:var(--space-sm)}.qa-comment-avatar{width:28px;height:28px}}
.vacancy-card{gap:var(--space-lg);transition:all var(--transition-normal);flex-direction:column;display:flex;position:relative}.vacancy-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.vacancy-card-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xs);line-height:var(--line-height-tight);font-family:var(--font-display)}.vacancy-card-title:hover{color:var(--color-primary)}.vacancy-card-company{align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-sm);display:flex}.vacancy-card-company-logo{border-radius:var(--radius-md);object-fit:cover;border:1px solid var(--color-border-light);width:32px;height:32px}.vacancy-card-meta{gap:var(--space-md);color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.vacancy-card-meta-item{align-items:center;gap:var(--space-xs);display:flex}.vacancy-card-meta-item svg{width:16px;height:16px}.vacancy-card-salary{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-primary);margin-bottom:var(--space-sm)}.vacancy-card-description{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.vacancy-card-tags{gap:var(--space-sm);flex-wrap:wrap;display:flex}.vacancy-card-footer{padding-top:var(--space-md);border-top:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.vacancy-card-stats{gap:var(--space-lg);color:var(--color-text-muted);font-size:var(--font-size-sm);display:flex}.vacancy-card-stat{align-items:center;gap:var(--space-xs);display:flex}.vacancy-card-actions{gap:var(--space-sm);display:flex}.vacancy-save-btn{padding:var(--space-sm);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);background:var(--color-bg-primary);color:var(--color-text-muted);cursor:pointer;transition:all var(--transition-fast);justify-content:center;align-items:center;display:flex}.vacancy-save-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.vacancy-save-btn.saved{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.vacancy-save-btn svg{width:20px;height:20px}.vacancy-card-compact{padding:var(--space-lg)}.vacancy-card-compact .vacancy-card-title{font-size:var(--font-size-lg)}.vacancy-card-compact .vacancy-card-description{-webkit-line-clamp:2}.vacancy-card-featured{border:2px solid var(--color-primary);background:linear-gradient(135deg,#2563eb05 0%,#2563eb0d 100%)}.vacancy-card-featured:before{content:"⭐ Топ вакансия";top:var(--space-lg);right:var(--space-lg);background:var(--color-primary);color:#fff;padding:var(--space-xs)var(--space-md);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);position:absolute}.vacancy-filter-panel{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-xl);margin-bottom:var(--space-xl)}.vacancy-filter-section{margin-bottom:var(--space-xl)}.vacancy-filter-section:last-child{margin-bottom:0}.vacancy-filter-label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-md);font-size:var(--font-size-sm);display:block}.vacancy-filter-search{width:100%;padding:var(--space-md)var(--space-lg);border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);font-size:var(--font-size-base);font-family:var(--font-body);transition:all var(--transition-fast)}.vacancy-filter-search:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.vacancy-filter-chips{gap:var(--space-sm);flex-wrap:wrap;display:flex}.vacancy-filter-chip{padding:var(--space-sm)var(--space-lg);border:1px solid var(--color-border-medium);border-radius:var(--radius-full);background:var(--color-bg-primary);color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.vacancy-filter-chip:hover{border-color:var(--color-primary);color:var(--color-primary)}.vacancy-filter-chip.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.vacancy-filter-range{gap:var(--space-md);grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.vacancy-filter-range input{width:100%;padding:var(--space-sm)var(--space-md);border:1px solid var(--color-border-medium);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.vacancy-filter-actions{gap:var(--space-md);margin-top:var(--space-xl);padding-top:var(--space-xl);border-top:1px solid var(--color-border-light);display:flex}.vacancy-filter-mobile-toggle{width:100%;padding:var(--space-lg);background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);font-size:var(--font-size-base);cursor:pointer;margin-bottom:var(--space-lg);border:none;display:none}@media (max-width:768px){.vacancy-filter-mobile-toggle{justify-content:center;align-items:center;gap:var(--space-sm);display:flex}.vacancy-filter-panel{z-index:var(--z-modal);transition:transform var(--transition-normal);border-radius:0;margin:0;position:fixed;inset:0;overflow-y:auto;transform:translate(-100%)}.vacancy-filter-panel.open{transform:translate(0)}}.application-card{gap:var(--space-lg);align-items:flex-start;display:flex;position:relative}.application-card-avatar{border-radius:var(--radius-xl);object-fit:cover;border:2px solid var(--color-border-light);flex-shrink:0;width:64px;height:64px}.application-card-content{flex:1;min-width:0}.application-card-header{margin-bottom:var(--space-sm);justify-content:space-between;align-items:flex-start;gap:var(--space-md);display:flex}.application-card-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-family:var(--font-display)}.application-card-title{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:var(--space-md)}.application-card-meta{gap:var(--space-lg);color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.application-card-skills{gap:var(--space-sm);margin-bottom:var(--space-md);flex-wrap:wrap;display:flex}.application-card-cover{color:var(--color-text-secondary);line-height:var(--line-height-relaxed);font-size:var(--font-size-sm);-webkit-line-clamp:2;margin-bottom:var(--space-md);-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.application-card-footer{padding-top:var(--space-md);border-top:1px solid var(--color-border-light);justify-content:space-between;align-items:center;display:flex}.application-card-time{color:var(--color-text-muted);font-size:var(--font-size-sm)}.application-card-actions{gap:var(--space-sm);display:flex}.application-status{align-items:center;gap:var(--space-xs);padding:var(--space-xs)var(--space-md);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);display:inline-flex}.application-status:before{content:"";border-radius:50%;width:6px;height:6px}.application-status-new{color:var(--color-info);background:#3b82f61a}.application-status-new:before{background:var(--color-info)}.application-status-viewed{color:var(--color-text-muted);background:#64748b1a}.application-status-viewed:before{background:var(--color-text-muted)}.application-status-invited{color:var(--color-success);background:#10b9811a}.application-status-invited:before{background:var(--color-success)}.application-status-rejected{color:var(--color-error);background:#ef44441a}.application-status-rejected:before{background:var(--color-error)}.application-status-hired{color:var(--color-success);font-weight:var(--font-weight-semibold);background:#10b98133}.application-status-hired:before{background:var(--color-success)}.vacancy-status{align-items:center;gap:var(--space-xs);padding:var(--space-xs)var(--space-md);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);display:inline-flex}.vacancy-status:before{content:"";border-radius:50%;width:6px;height:6px}.vacancy-status-pending{color:var(--color-warning);background:#f59e0b1a}.vacancy-status-pending:before{background:var(--color-warning)}.vacancy-status-active{color:var(--color-success);background:#10b9811a}.vacancy-status-active:before{background:var(--color-success)}.vacancy-status-rejected{color:var(--color-error);background:#ef44441a}.vacancy-status-rejected:before{background:var(--color-error)}.vacancy-status-closed{color:var(--color-text-muted);background:#64748b1a}.vacancy-status-closed:before{background:var(--color-text-muted)}.vacancy-status-archived{color:var(--color-text-light);background:#64748b0d}.vacancy-status-archived:before{background:var(--color-text-light)}.stat-widget{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-xl);transition:all var(--transition-normal)}.stat-widget:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-widget-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:flex-start;display:flex}.stat-widget-icon{border-radius:var(--radius-lg);justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.stat-widget-icon-primary{color:var(--color-primary);background:#2563eb1a}.stat-widget-icon-success{color:var(--color-success);background:#10b9811a}.stat-widget-icon-warning{color:var(--color-warning);background:#f59e0b1a}.stat-widget-icon-error{color:var(--color-error);background:#ef44441a}.stat-widget-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-xs);font-family:var(--font-display);line-height:1}.stat-widget-label{color:var(--color-text-muted);font-size:var(--font-size-sm);margin-bottom:var(--space-md)}.stat-widget-footer{align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);padding-top:var(--space-md);border-top:1px solid var(--color-border-light);display:flex}.stat-widget-trend{align-items:center;gap:var(--space-xs);font-weight:var(--font-weight-medium);display:flex}.stat-widget-trend-up{color:var(--color-success)}.stat-widget-trend-down{color:var(--color-error)}.message-container{gap:var(--space-md);padding:var(--space-xl);flex-direction:column;max-height:600px;display:flex;overflow-y:auto}.message-item{gap:var(--space-md);align-items:flex-start;display:flex}.message-item-own{flex-direction:row-reverse}.message-avatar{object-fit:cover;border:2px solid var(--color-border-light);border-radius:50%;flex-shrink:0;width:40px;height:40px}.message-bubble{max-width:70%;padding:var(--space-md)var(--space-lg);border-radius:var(--radius-lg);position:relative}.message-item-own .message-bubble{background:var(--color-primary);color:#fff;border-bottom-right-radius:var(--radius-sm)}.message-item:not(.message-item-own) .message-bubble{background:var(--color-bg-secondary);color:var(--color-text-primary);border-bottom-left-radius:var(--radius-sm)}.message-text{line-height:var(--line-height-relaxed);word-wrap:break-word}.message-time{font-size:var(--font-size-xs);color:var(--color-text-light);margin-top:var(--space-xs)}.message-item-own .message-time{color:#ffffffb3;text-align:right}.message-input-container{gap:var(--space-md);padding:var(--space-xl);border-top:1px solid var(--color-border-light);background:var(--color-bg-primary);display:flex}.message-input{padding:var(--space-md)var(--space-lg);border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--font-size-base);resize:none;flex:1;min-height:44px;max-height:120px}.message-input:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.message-send-btn{padding:var(--space-md)var(--space-xl);background:var(--color-primary);color:#fff;border-radius:var(--radius-lg);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-fast);border:none}.message-send-btn:hover{background:var(--color-primary-dark)}.message-send-btn:disabled{opacity:.5;cursor:not-allowed}.conversation-item{gap:var(--space-md);padding:var(--space-lg);border-bottom:1px solid var(--color-border-light);cursor:pointer;transition:all var(--transition-fast);display:flex}.conversation-item:hover{background:var(--color-bg-secondary)}.conversation-item.active{background:var(--color-bg-tertiary);border-left:3px solid var(--color-primary)}.conversation-avatar{object-fit:cover;border:2px solid var(--color-border-light);border-radius:50%;flex-shrink:0;width:48px;height:48px;position:relative}.conversation-unread-dot{background:var(--color-error);border:2px solid #fff;border-radius:50%;width:12px;height:12px;position:absolute;top:0;right:0}.conversation-content{flex:1;min-width:0}.conversation-header{margin-bottom:var(--space-xs);justify-content:space-between;align-items:baseline;display:flex}.conversation-name{font-weight:var(--font-weight-semibold);color:var(--color-text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.conversation-time{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-left:var(--space-sm);flex-shrink:0}.conversation-preview{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.conversation-unread{font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.vacancy-form{max-width:800px;margin:0 auto}.vacancy-form-section{background:var(--color-bg-primary);border:1px solid var(--color-border-light);border-radius:var(--radius-xl);padding:var(--space-2xl);margin-bottom:var(--space-xl)}.vacancy-form-section-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-xs);font-family:var(--font-display)}.vacancy-form-section-description{color:var(--color-text-muted);margin-bottom:var(--space-xl);line-height:var(--line-height-relaxed)}.vacancy-form-group{margin-bottom:var(--space-xl)}.vacancy-form-group:last-child{margin-bottom:0}.vacancy-form-label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-sm);font-size:var(--font-size-sm);display:block}.vacancy-form-label-required:after{content:"*";color:var(--color-error);margin-left:var(--space-xs)}.vacancy-form-input,.vacancy-form-textarea,.vacancy-form-select{width:100%;padding:var(--space-md)var(--space-lg);border:1px solid var(--color-border-medium);border-radius:var(--radius-lg);font-family:var(--font-body);font-size:var(--font-size-base);transition:all var(--transition-fast)}.vacancy-form-input:focus,.vacancy-form-textarea:focus,.vacancy-form-select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #2563eb1a}.vacancy-form-textarea{resize:vertical;min-height:120px;font-family:var(--font-body);line-height:var(--line-height-relaxed)}.vacancy-form-hint{font-size:var(--font-size-xs);color:var(--color-text-muted);margin-top:var(--space-xs);display:block}.vacancy-form-error{font-size:var(--font-size-xs);color:var(--color-error);margin-top:var(--space-xs);display:block}.vacancy-form-grid{gap:var(--space-lg);display:grid}.vacancy-form-grid-2{grid-template-columns:repeat(2,1fr)}.vacancy-form-grid-3{grid-template-columns:repeat(3,1fr)}.vacancy-form-actions{gap:var(--space-md);padding-top:var(--space-xl);border-top:1px solid var(--color-border-light);justify-content:flex-end;display:flex}.vacancy-form-progress{margin-bottom:var(--space-3xl);justify-content:space-between;display:flex;position:relative}.vacancy-form-progress:before{content:"";background:var(--color-border-light);z-index:0;height:2px;position:absolute;top:20px;left:0;right:0}.vacancy-form-step{align-items:center;gap:var(--space-sm);z-index:1;flex-direction:column;flex:1;display:flex;position:relative}.vacancy-form-step-number{background:var(--color-bg-primary);border:2px solid var(--color-border-medium);width:40px;height:40px;font-weight:var(--font-weight-semibold);color:var(--color-text-muted);transition:all var(--transition-normal);border-radius:50%;justify-content:center;align-items:center;display:flex}.vacancy-form-step.active .vacancy-form-step-number{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.vacancy-form-step.completed .vacancy-form-step-number{background:var(--color-success);border-color:var(--color-success);color:#fff}.vacancy-form-step-label{font-size:var(--font-size-xs);color:var(--color-text-muted);text-align:center}.vacancy-form-step.active .vacancy-form-step-label{color:var(--color-primary);font-weight:var(--font-weight-medium)}.empty-state{text-align:center;padding:var(--space-5xl)var(--space-xl)}.empty-state-icon{margin-bottom:var(--space-xl);opacity:.5;font-size:64px}.empty-state-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-md);font-family:var(--font-display)}.empty-state-description{color:var(--color-text-muted);line-height:var(--line-height-relaxed);margin-bottom:var(--space-xl);max-width:400px;margin-left:auto;margin-right:auto}.empty-state-action{display:inline-flex}@media (max-width:768px){.vacancy-card{gap:var(--space-md)}.vacancy-card-title{font-size:var(--font-size-lg)}.vacancy-card-meta{gap:var(--space-sm);flex-direction:column}.vacancy-card-footer{gap:var(--space-md);flex-direction:column;align-items:flex-start}.application-card{flex-direction:column}.application-card-avatar{width:48px;height:48px}.application-card-header{gap:var(--space-sm);flex-direction:column;align-items:flex-start}.application-card-footer{gap:var(--space-md);flex-direction:column;align-items:flex-start}.vacancy-form-grid-2,.vacancy-form-grid-3{grid-template-columns:1fr}.stat-widget-value{font-size:var(--font-size-2xl)}.message-bubble{max-width:85%}.vacancy-form-section{padding:var(--space-xl)}.vacancy-form-actions{flex-direction:column-reverse}.vacancy-form-actions button{width:100%}}@media (max-width:480px){.vacancy-card-title,.vacancy-card-salary{font-size:var(--font-size-base)}.vacancy-form-progress{gap:var(--space-sm)}.vacancy-form-step-label{display:none}.vacancy-form-step-number{width:32px;height:32px;font-size:var(--font-size-sm)}}.vacancy-list-header{margin-bottom:var(--space-xl);justify-content:space-between;align-items:center;gap:var(--space-lg);display:flex}.vacancy-list-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-text-primary);font-family:var(--font-display)}.vacancy-list-count{color:var(--color-text-muted);font-size:var(--font-size-lg)}.vacancy-grid{gap:var(--space-xl);display:grid}.vacancy-grid-2{grid-template-columns:repeat(2,1fr)}.vacancy-grid-3{grid-template-columns:repeat(3,1fr)}@media (max-width:1024px){.vacancy-grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.vacancy-grid-2,.vacancy-grid-3{grid-template-columns:1fr}.vacancy-list-header{flex-direction:column;align-items:flex-start}}
