.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#0006,#0009);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:modalFadeIn .4s cubic-bezier(.4,0,.2,1);padding:20px}.modal-content{background:linear-gradient(145deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a,0 0 0 1px #fff3;max-width:90vw;max-height:90vh;overflow-y:auto;position:relative;animation:modalSlideIn .4s cubic-bezier(.175,.885,.32,1.275);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes modalShimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 32px;border-bottom:1px solid rgba(148,163,184,.1);background:linear-gradient(135deg,#fffc,#fff6);border-radius:16px 16px 0 0;position:relative;overflow:hidden}.modal-header:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:modalShimmer 3s ease-in-out infinite}.modal-title{margin:0;font-size:1.5rem;font-weight:700;color:#1e293b;letter-spacing:-.025em;position:relative;z-index:1}.modal-close{background:#94a3b81a;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:8px;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;width:40px;height:40px;position:relative;z-index:1}.modal-close:hover{color:#1e293b;background:#ef44441a;transform:scale(1.1)}.modal-close:active{transform:scale(.95)}.modal-body{padding:32px;position:relative}.modal-body:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 20%,rgba(102,126,234,.05) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(124,58,237,.05) 0%,transparent 50%);pointer-events:none;z-index:0}.modal-body>*{position:relative;z-index:1}.modal-footer{display:flex;justify-content:flex-end;gap:16px;padding:24px 32px;border-top:1px solid rgba(148,163,184,.1);background:linear-gradient(135deg,#f8fafccc,#f1f5f966);border-radius:0 0 16px 16px}.apply-modal{width:600px;max-width:90vw;animation:modalSlideIn .5s cubic-bezier(.175,.885,.32,1.275)}@media (max-width: 768px){.apply-modal{width:95vw;margin:10px}}.form-group{margin-bottom:24px;position:relative;animation:slideInUp .4s ease-out;animation-fill-mode:both}.form-group:nth-child(1){animation-delay:.1s}.form-group:nth-child(2){animation-delay:.2s}.form-group:nth-child(3){animation-delay:.3s}.form-group:nth-child(4){animation-delay:.4s}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#1e293b;font-size:15px;letter-spacing:.025em;transition:color .3s ease}.form-group:focus-within label{color:#6366f1}.form-group input,.form-group textarea,.form-group select{width:100%;padding:14px 16px;border:2px solid rgba(148,163,184,.2);border-radius:12px;font-size:15px;transition:all .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box;background:linear-gradient(145deg,#fff,#f8fafc);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 1px 2px #0000000d;font-family:inherit;color:#1e293b}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 3px #6366f11a,0 4px 6px -1px #0000001a;transform:translateY(-1px);background:#fff}.form-group textarea{resize:vertical;min-height:120px;line-height:1.6;font-family:inherit}.form-group select{background-image:url("data:image/svg+xml;charset=utf-8,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236366f1' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m6 8 4 4 4-4'/%3e%3c/svg%3e");background-position:right 16px center;background-repeat:no-repeat;background-size:20px;padding-right:48px;cursor:pointer}.form-group select:hover{border-color:#94a3b866}.loading-resumes{display:flex;align-items:center;gap:12px;color:#64748b;font-size:15px;padding:16px 20px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:2px solid rgba(148,163,184,.1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:pulse 2s ease-in-out infinite}@media (max-width: 768px){.modal-overlay{padding:16px}.modal-content{max-width:95vw;border-radius:12px}.modal-header,.modal-body,.modal-footer{padding-left:20px;padding-right:20px}.modal-header{padding-top:20px;padding-bottom:20px}.modal-body{padding-top:24px;padding-bottom:24px}.modal-footer{padding-top:20px;padding-bottom:20px;flex-direction:column;gap:12px}.modal-title{font-size:1.25rem}}@media (max-width: 480px){.modal-overlay{padding:12px}.modal-header,.modal-body,.modal-footer{padding-left:16px;padding-right:16px}}:root{--bg: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--bg-secondary: #f8fafc;--card: #ffffff;--card-hover: #fefefe;--muted: #64748b;--muted-light: #94a3b8;--accent: #6366f1;--accent-2: #4f46e5;--accent-3: #7c3aed;--accent-light: #a5b4fc;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--gradient-primary: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-secondary: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--gradient-accent: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--gradient-card: linear-gradient(145deg, #ffffff 0%, #f8fafc 100%);--gradient-glass: linear-gradient(145deg, rgba(255,255,255,.9) 0%, rgba(255,255,255,.7) 100%);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-glow: 0 0 20px rgba(102, 126, 234, .3);--shadow-card: 0 8px 32px rgba(0, 0, 0, .08);--shadow-card-hover: 0 16px 48px rgba(0, 0, 0, .12);--radius-sm: 6px;--radius: 12px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--glass: rgba(255,255,255,.8);--glass-border: rgba(255,255,255,.2);--backdrop-blur: blur(16px);--dur-fast: .15s;--dur-mid: .3s;--dur-slow: .5s;--dur-slower: .8s;--ease-default: cubic-bezier(.4, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-bounce: cubic-bezier(.68, -.55, .265, 1.55);--ease-elastic: cubic-bezier(.175, .885, .32, 1.275);--focus-ring: 0 0 0 3px rgba(99, 102, 241, .1);--focus-ring-error: 0 0 0 3px rgba(239, 68, 68, .1);--focus-ring-success: 0 0 0 3px rgba(16, 185, 129, .1)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #667eea4d}50%{box-shadow:0 0 30px #667eea80}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes heartBeat{0%,to{transform:scale(1)}25%{transform:scale(1.1)}50%{transform:scale(1.2)}75%{transform:scale(1.1)}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--bg);background-attachment:fixed;color:#1e293b;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(120,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,119,198,.3) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(120,219,255,.3) 0%,transparent 50%);animation:float 20s ease-in-out infinite;z-index:-1;pointer-events:none}.app-shell{min-height:100vh;display:flex;flex-direction:column}.site-header{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:var(--gradient-primary);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);color:#fff;box-shadow:var(--shadow-lg);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(255,255,255,.1);transition:all var(--dur-mid) var(--ease-default)}.site-header:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);pointer-events:none}.site-header .brand{font-weight:800;font-size:22px;cursor:pointer;letter-spacing:.5px;-webkit-user-select:none;user-select:none;display:flex;gap:12px;align-items:center;transition:transform var(--dur-mid) var(--ease-bounce);position:relative;z-index:1;color:inherit}.site-header .brand:hover{transform:scale(1.05)}.site-header.scrolled{background:var(--gradient-primary);box-shadow:var(--shadow-xl);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.brand{text-decoration:none!important}.brand-content{display:flex;align-items:center;gap:12px}.brand-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff1a;border-radius:var(--radius);transition:all var(--dur-mid) var(--ease-default)}.brand:hover .brand-icon{background:#fff3;transform:scale(1.05)}.brand:link,.brand:visited,.brand:hover,.brand:active{color:#fff;text-decoration:none}.brand:active .brand-icon{transform:scale(.95);transition:transform .1s ease-out}.brand-text{display:flex;flex-direction:column}.brand-title{font-weight:800;font-size:20px;color:#fff;line-height:1;letter-spacing:-.025em}.brand-subtitle{color:#fffc;font-size:12px;font-weight:500;line-height:1;margin-top:2px}.mobile-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px;border-radius:var(--radius);transition:all var(--dur-mid) var(--ease-default)}.mobile-menu-btn:hover{background:#ffffff1a}.hamburger{width:24px;height:18px;position:relative;display:flex;flex-direction:column;justify-content:space-between}.hamburger span{width:100%;height:2px;background:#fff;border-radius:2px;transition:all var(--dur-mid) var(--ease-default);transform-origin:center}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.nav{display:flex;align-items:center;gap:8px}.nav-link{color:#fffffff2;text-decoration:none;font-weight:600;padding:10px 16px;border-radius:var(--radius);font-size:14px;transition:all var(--dur-mid) var(--ease-default);background:transparent;border:none;cursor:pointer;display:flex;align-items:center;gap:8px;position:relative;overflow:hidden}.nav-link:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:#ffffff1a;transition:left var(--dur-mid) var(--ease-default)}.nav-link:hover:before{left:100%}.nav-link:hover{background:#ffffff1a;transform:translateY(-1px)}.nav-link:active{transform:translateY(0)}.nav-dropdown{position:relative;display:inline-block}.dropdown-arrow{transition:transform var(--dur-mid) var(--ease-default)}.dropdown-arrow.rotated{transform:rotate(180deg)}.submenu{position:absolute;top:calc(100% + 4px);right:0;background:var(--gradient-card);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);min-width:200px;z-index:1000;animation:slideInUp var(--dur-mid) var(--ease-default);overflow:hidden;padding-top:4px;margin-top:-4px}.recruiter-submenu{left:0;right:auto}.submenu-item{display:flex;align-items:center;gap:12px;padding:12px 16px;color:#1e293b;text-decoration:none;font-weight:500;font-size:14px;transition:all var(--dur-mid) var(--ease-default);border:none;background:none;width:100%;text-align:left;cursor:pointer}.submenu-item:hover{background:var(--accent-light);color:var(--accent-2);transform:translate(4px)}.submenu-item svg{flex-shrink:0;opacity:.7;transition:opacity var(--dur-mid) var(--ease-default)}.submenu-item:hover svg{opacity:1}.user-trigger{background:#ffffff1a!important;border-radius:var(--radius-full)!important;padding:8px 16px!important}.user-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#fff3;border-radius:50%;flex-shrink:0}.user-name{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-links{display:flex;align-items:center;gap:8px}.login-link{background:#ffffff1a!important}.signup-link{background:#ffffffe6!important;color:var(--accent-2)!important}.signup-link:hover{background:#fff!important;color:var(--accent)!important}.container{max-width:min(1200px,75vw);width:75%;margin:32px auto;padding:0 24px;position:relative}@media (max-width: 768px){.container{min-width:96%;width:100%;margin:20px 0;padding:0 8px}}.page{background:var(--gradient-card);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-card);animation:slideInUp var(--dur-slow) var(--ease-default) both;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);position:relative;overflow:hidden;transition:all var(--dur-mid) var(--ease-default)}.page:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left var(--dur-slower) var(--ease-default)}.page:hover:before{left:100%}.page:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}@media (max-width: 768px){.page{padding:20px;border-radius:var(--radius)}}.page-header h1{margin:0;font-size:22px;letter-spacing:.2px}.muted{color:var(--muted);margin-top:6px}.controls{display:flex;gap:12px;margin:16px 0 20px;flex-wrap:wrap;align-items:center}.input{padding:14px 16px;border-radius:var(--radius);border:2px solid rgba(148,163,184,.2);min-width:200px;background:var(--gradient-card);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);transition:all var(--dur-mid) var(--ease-default);box-shadow:var(--shadow-sm);font-size:14px;color:#1e293b;position:relative}.input::placeholder{color:var(--muted);transition:color var(--dur-mid) var(--ease-default)}.input:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring),var(--shadow-lg);transform:translateY(-2px);background:#fff}.input:focus::placeholder{color:var(--muted-light)}.input:hover{border-color:#94a3b866;box-shadow:var(--shadow-md)}.input-error{border-color:#d9534f!important}.btn{background:var(--gradient-primary);color:#fff;border:none;padding:12px 24px;border-radius:var(--radius);cursor:pointer;box-shadow:var(--shadow-md);font-weight:600;font-size:14px;letter-spacing:.025em;position:relative;overflow:hidden;transition:all var(--dur-mid) var(--ease-default);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--dur-mid) var(--ease-default)}.btn:hover:before{left:100%}.btn:hover{transform:translateY(-2px) scale(1.05);box-shadow:var(--shadow-xl),var(--shadow-glow)}.btn:active{transform:translateY(0) scale(1.02);transition-duration:var(--dur-fast)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:var(--shadow-sm)}.btn.ghost{background:transparent;color:var(--accent);border:2px solid var(--accent);font-weight:600}.btn.ghost:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.secondary{background:var(--gradient-secondary)}.btn.success{background:linear-gradient(135deg,var(--success) 0%,#059669 100%)}.btn.error{background:linear-gradient(135deg,var(--error) 0%,#dc2626 100%)}.btn.small{padding:8px 16px;font-size:12px;min-height:32px;border-radius:var(--radius-sm)}.btn.danger{background:linear-gradient(135deg,var(--error) 0%,#dc2626 100%)}.heart-icon{display:inline-flex;align-items:center;justify-content:center;font-size:24px;cursor:pointer;transition:all var(--dur-mid) var(--ease-bounce);-webkit-user-select:none;user-select:none;padding:8px;border-radius:var(--radius-full);position:relative;background:#ffffff1a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.heart-icon:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:radial-gradient(circle,rgba(231,76,60,.3) 0%,transparent 70%);border-radius:50%;transform:translate(-50%,-50%);transition:all var(--dur-mid) var(--ease-default);z-index:-1}.heart-icon:hover{transform:scale(1.2);background:#fff3}.heart-icon:hover:before{width:40px;height:40px}.heart-icon:active{transform:scale(.9);animation:heartBeat var(--dur-mid) var(--ease-bounce)}.heart-icon:focus{outline:none;box-shadow:var(--focus-ring)}.heart-icon.favorited{color:#e74c3c;background:#e74c3c1a;animation:heartBeat .6s ease-in-out}.heart-icon.favorited:hover{color:#c0392b;background:#e74c3c33;transform:scale(1.3)}.heart-icon.favorited:before{background:radial-gradient(circle,rgba(231,76,60,.4) 0%,transparent 70%);width:35px;height:35px}.btn.favorited{color:#e74c3c!important;border-color:#e74c3c33!important}.btn.favorited:hover{background:#e74c3c14!important;color:#c0392b!important}.grid{display:grid;grid-template-columns:1fr;gap:24px;list-style:none;padding:0;margin:0;animation:slideInUp var(--dur-slow) var(--ease-default) both}@media (max-width: 768px){.grid{grid-template-columns:1fr;gap:16px}}@media (min-width: 1200px){.grid{grid-template-columns:1fr;gap:32px}}.card{display:flex;flex-direction:column;justify-content:space-between;padding:24px;border-radius:var(--radius-lg);background:var(--gradient-glass);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);transition:all var(--dur-mid) var(--ease-default);box-shadow:var(--shadow-card);border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden;cursor:pointer}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary);transform:scaleX(0);transform-origin:left;transition:transform var(--dur-mid) var(--ease-default)}.card:hover:before{transform:scaleX(1)}.card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-card-hover);background:var(--card-hover)}.card:active{transform:translateY(-4px) scale(1.01)}@media (max-width: 768px){.card{padding:20px;border-radius:var(--radius)}.card:hover{transform:translateY(-4px)}}.card h3{margin:0 0 12px;font-size:18px;font-weight:700;color:#1e293b;line-height:1.4;transition:color var(--dur-mid) var(--ease-default)}.card:hover h3{color:var(--accent)}.meta{color:var(--muted);font-size:14px;margin-bottom:12px;display:flex;align-items:center;gap:8px;font-weight:500}.meta:before{content:"•";color:var(--accent-light);font-weight:700}.desc{color:#475569;max-height:120px;overflow:hidden;text-overflow:ellipsis;line-height:1.6;font-size:15px;margin-bottom:16px}.job-card{position:relative;overflow:visible}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.job-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--gradient-accent);color:#fff;border-radius:var(--radius-full);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;box-shadow:var(--shadow-sm)}.job-title{margin:0!important;font-size:20px!important;font-weight:700!important;color:#1e293b!important;line-height:1.3!important;transition:color var(--dur-mid) var(--ease-default)!important}.job-card:hover .job-title{color:var(--accent)!important}.job-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:16px}.job-card .job-meta{justify-content:flex-start;align-items:flex-start;gap:8px;text-align:left}.job-header{display:flex;flex-direction:column;gap:16px}.job-header.with-company{flex-direction:row;align-items:center;gap:24px}.job-primary{flex:1 1 auto;min-width:0}.company-info{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:120px}.company-logo{width:54px;height:54px;border-radius:14px;background:#94a3b81a;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(148,163,184,.2);box-shadow:var(--shadow-sm)}.company-logo img{width:100%;height:100%;object-fit:contain;background:#fff}.company-logo-fallback{font-size:32px;font-weight:700;color:var(--accent-2)}.company-logo,.company-logo img,.company-logo-fallback{cursor:default}.company-name-link,.company-name-text{font-size:14px;font-weight:600;color:#1f2937;text-align:center;word-break:break-word}.company-name-link{color:var(--accent);text-decoration:none}.company-name-link:hover,.company-name-link:focus{text-decoration:underline}.company-name-above{text-align:left;margin-bottom:8px}.meta-item{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:14px;font-weight:500}.meta-item svg{flex-shrink:0;opacity:.7}.meta-item.salary{color:var(--success);font-weight:600}.meta-item.salary svg{color:var(--success);opacity:1}.job-description{color:#475569!important;max-height:80px!important;overflow:hidden!important;text-overflow:ellipsis!important;line-height:1.6!important;font-size:15px!important;margin-bottom:16px!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}.job-skills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.skill-tag{display:inline-flex;align-items:center;padding:4px 10px;background:#6366f11a;color:var(--accent-2);border-radius:var(--radius-full);font-size:12px;font-weight:500;border:1px solid rgba(99,102,241,.2);transition:all var(--dur-mid) var(--ease-default)}.skill-tag:hover{background:#6366f133;transform:translateY(-1px)}.skill-tag.more{background:#94a3b81a;color:var(--muted);border-color:#94a3b833}.card-actions{display:flex;gap:12px;align-items:center;margin-top:auto;padding-top:20px;border-top:1px solid rgba(148,163,184,.1);justify-content:flex-start}.view-btn{flex:0 0 20%;max-width:120px;min-width:80px;justify-content:center;padding:8px 12px;font-size:14px;white-space:nowrap}.apply-btn{flex:0 0 20%;max-width:120px;min-width:80px;justify-content:center;background:var(--gradient-primary)!important;padding:8px 12px;font-size:14px;white-space:nowrap}.apply-btn:hover{background:var(--gradient-primary)!important;transform:translateY(-2px) scale(1.05)!important;box-shadow:var(--shadow-xl),var(--shadow-glow)!important}.apply-btn:disabled{background:var(--muted)!important;transform:none!important;cursor:not-allowed!important}@media (max-width: 768px){.job-meta{flex-direction:column;gap:8px}.job-header.with-company{flex-direction:column;align-items:flex-start}.company-info{flex-direction:row;align-items:center;gap:12px;min-width:0}.company-name-link,.company-name-text{text-align:left}.job-skills{gap:6px}.skill-tag{font-size:11px;padding:3px 8px}.card-actions{flex-direction:column;gap:8px;align-items:flex-start}.view-btn,.apply-btn{width:100%;flex:none;max-width:none;min-width:none}}.job-details-page{max-width:1200px;margin:0 auto}.job-details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:20px;border-bottom:1px solid rgba(148,163,184,.1)}.back-btn{display:flex;align-items:center;gap:8px;font-weight:500}.favorite-btn{display:flex;align-items:center;gap:8px;background:#ef44441a!important;color:#ef4444!important;border:1px solid rgba(239,68,68,.2)!important}.favorite-btn.favorited{background:var(--gradient-accent)!important;color:#fff!important;border-color:transparent!important}.favorite-btn:hover{background:#ef444433!important;transform:translateY(-2px)!important}.favorite-btn.favorited:hover{background:linear-gradient(135deg,#00f2fe,#4facfe)!important}.job-details-content{display:flex;flex-direction:column;gap:32px}.job-hero{background:var(--gradient-card);padding:40px;border-radius:var(--radius-xl);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);box-shadow:var(--shadow-lg);display:flex;justify-content:space-between;align-items:flex-start;gap:32px}.job-hero-main{flex:1}.job-details-title{font-size:32px!important;font-weight:800!important;color:#1e293b!important;margin:0!important;line-height:1.2!important;background:var(--gradient-text);-webkit-background-clip:text;background-clip:text}.job-details-meta{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:0}.job-details-meta .meta-item{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:16px;font-weight:600}.job-details-meta .meta-item.salary{color:var(--success);font-weight:700}.job-hero-actions{flex-shrink:0}.apply-btn-large{padding:16px 32px!important;font-size:18px!important;font-weight:700!important;background:var(--gradient-primary)!important;border:none!important;border-radius:var(--radius-lg)!important;color:#fff!important;display:flex!important;align-items:center!important;gap:12px!important;min-width:180px!important;justify-content:center!important;box-shadow:var(--shadow-lg)!important;transition:all var(--dur-mid) var(--ease-default)!important}.apply-btn-large:hover{background:var(--gradient-primary)!important;transform:translateY(-3px) scale(1.05)!important;box-shadow:var(--shadow-xl)!important}.apply-btn-large:disabled{background:var(--muted)!important;transform:none!important;cursor:not-allowed!important;box-shadow:var(--shadow-sm)!important}.job-content-grid{display:grid;grid-template-columns:2fr 1fr;gap:32px}.job-description-panel,.job-skills-panel{background:var(--gradient-card);border-radius:var(--radius-xl);border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--dur-mid) var(--ease-default)}.job-description-panel:hover,.job-skills-panel:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.panel-header{padding:24px 32px 20px;border-bottom:1px solid rgba(148,163,184,.1);background:#ffffff0d}.panel-header h3{margin:0!important;font-size:20px!important;font-weight:700!important;color:#1e293b!important;display:flex!important;align-items:center!important;gap:12px!important}.panel-header svg{color:var(--accent)}.panel-content{padding:32px}.job-description-content{color:#475569;line-height:1.7;font-size:16px}.job-description-content h1,.job-description-content h2,.job-description-content h3,.job-description-content h4,.job-description-content h5,.job-description-content h6{color:#1e293b;font-weight:700;margin-top:24px;margin-bottom:12px}.job-description-content ul,.job-description-content ol{padding-left:24px;margin:16px 0}.job-description-content li{margin-bottom:8px}.job-description-content p{margin-bottom:16px}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.skill-tag-large{display:flex;align-items:center;justify-content:center;padding:12px 16px;background:#6366f11a;color:var(--accent-2);border-radius:var(--radius-lg);font-size:14px;font-weight:600;border:1px solid rgba(99,102,241,.2);transition:all var(--dur-mid) var(--ease-default);text-align:center}.skill-tag-large:hover{background:#6366f133;transform:translateY(-2px);box-shadow:var(--shadow-sm)}.verification-icon{display:flex;justify-content:center;margin-bottom:16px}@media (max-width: 1024px){.job-content-grid{grid-template-columns:1fr;gap:24px}.job-hero{flex-direction:column;align-items:stretch;gap:24px;padding:32px}.job-details-title{font-size:28px!important}.apply-btn-large{width:100%!important}}@media (max-width: 768px){.job-details-header{flex-direction:column;gap:16px;align-items:stretch}.job-hero{padding:24px}.job-details-title{font-size:24px!important}.job-details-meta{flex-direction:column;gap:12px}.panel-header,.panel-content{padding:20px}.skills-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:8px}.skill-tag-large{padding:8px 12px;font-size:12px}}.panel{background:var(--gradient-card);padding:24px;border-radius:var(--radius-lg);margin-top:20px;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);box-shadow:var(--shadow-md);transition:all var(--dur-mid) var(--ease-default)}.panel:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)}.form input,.form textarea,.form select{width:100%;padding:14px 16px;border-radius:var(--radius);border:2px solid rgba(148,163,184,.2);margin:10px 0;background:var(--gradient-card);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);resize:vertical;font-size:14px;color:#1e293b;transition:all var(--dur-mid) var(--ease-default);box-shadow:var(--shadow-sm)}.form input.password-with-icon{padding-right:40px}.password-toggle-btn{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);color:var(--muted);display:flex;align-items:center;justify-content:center;transition:all var(--dur-fast) var(--ease-default);width:28px;height:28px}.password-toggle-btn:hover{background:#94a3b81a;color:var(--muted-light)}.password-toggle-btn:focus{outline:none;box-shadow:var(--focus-ring)}.form input:focus,.form textarea:focus,.form select:focus{outline:none;border-color:var(--accent);box-shadow:var(--focus-ring),var(--shadow-lg);transform:translateY(-1px);background:#fff}.form input:hover,.form textarea:hover,.form select:hover{border-color:#94a3b866;box-shadow:var(--shadow-md)}.form textarea{min-height:160px;padding:16px;font-size:15px;line-height:1.6;font-family:inherit}.form-actions{display:flex;gap:8px;margin-top:8px}.list{list-style:none;padding:0;margin:0}.list li{padding:10px 0;border-bottom:1px dashed #eef7fa}.grid-2{display:grid;grid-template-columns:1fr 380px;gap:18px}.form-error{color:#d9534f;font-size:.875em;margin-top:-10px;margin-bottom:10px}.skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:24px;margin-bottom:32px}.skeleton-card{background:var(--gradient-glass);padding:24px;border-radius:var(--radius-lg);animation:pulse 2s ease-in-out infinite;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);position:relative;overflow:hidden}.skeleton-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.6),transparent);animation:shimmer 2s ease-in-out infinite}.skeleton-line{height:16px;background:linear-gradient(90deg,#e2e8f0,#f1f5f9,#e2e8f0);border-radius:var(--radius);margin:12px 0;animation:pulse 2s ease-in-out infinite}.skeleton-line.short{width:40%}.skeleton-line.medium{width:65%}.skeleton-line.long{width:85%}@media (max-width: 768px){.skeleton-grid{grid-template-columns:1fr;gap:16px}}.toast-wrap{position:fixed;right:24px;bottom:24px;display:flex;flex-direction:column;gap:12px;z-index:1100}.toast{padding:16px 20px;border-radius:var(--radius-lg);color:#fff;min-width:280px;max-width:400px;box-shadow:var(--shadow-xl);animation:slideInRight var(--dur-mid) var(--ease-bounce);-webkit-backdrop-filter:var(--backdrop-blur);backdrop-filter:var(--backdrop-blur);border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden;font-weight:500}.toast:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:#fffc}.toast.success{background:linear-gradient(135deg,var(--success) 0%,#059669 100%)}.toast.error{background:linear-gradient(135deg,var(--error) 0%,#dc2626 100%)}.toast.info{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.toast.warning{background:linear-gradient(135deg,var(--warning) 0%,#d97706 100%)}@media (max-width: 768px){.toast-wrap{right:16px;bottom:16px;left:16px}.toast{min-width:auto;width:100%}}.link{color:var(--accent);text-decoration:none;font-weight:600;position:relative;transition:all var(--dur-mid) var(--ease-default)}.link:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--accent);transition:width var(--dur-mid) var(--ease-default)}.link:hover:after{width:100%}.link:hover{color:var(--accent-2)}.muted{color:var(--muted)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-4{gap:16px}.gap-6{gap:24px}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mt-6{margin-top:24px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.p-2{padding:8px}.p-4{padding:16px}.p-6{padding:24px}.rounded{border-radius:var(--radius)}.rounded-lg{border-radius:var(--radius-lg)}.rounded-full{border-radius:var(--radius-full)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-bounce{animation:bounceIn var(--dur-mid) var(--ease-bounce)}.animate-fade-in{animation:fadeIn var(--dur-mid) var(--ease-default)}.animate-slide-up{animation:slideInUp var(--dur-mid) var(--ease-default)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (max-width: 1024px){.grid-2{grid-template-columns:1fr;gap:24px}.site-header{padding:16px 24px;flex-wrap:wrap}.brand{flex-shrink:0}.brand-text{display:none}.mobile-menu-btn{display:block;position:absolute;right:24px;top:50%;transform:translateY(-50%);z-index:1001}.nav{display:none;flex-direction:column;width:100%;background:var(--gradient-primary);position:absolute;top:100%;left:0;padding:16px 0;box-shadow:var(--shadow-lg);border-top:1px solid rgba(255,255,255,.1);z-index:1000;max-height:calc(100vh - 80px);overflow-y:auto}.nav.mobile-open{display:flex}.nav-link,.user-trigger,.recruiter-trigger{width:100%;justify-content:flex-start;padding:12px 24px;border-radius:0}.nav-dropdown{width:100%}.submenu{position:static;width:100%;box-shadow:none;border:none;border-radius:0;background:#fff;padding-left:24px}.submenu-item{color:#1e293b}.auth-links{flex-direction:column;width:100%;padding:0 24px;gap:12px}.login-link,.signup-link{width:100%;justify-content:center}}@media (max-width: 768px){.site-header{padding:12px 16px}.brand-icon{width:36px;height:36px}.mobile-menu-btn{right:16px}.container{width:96%;margin:16px auto;padding:0 12px}.page{padding:20px;border-radius:var(--radius)}.panel{padding:16px;max-width:100%;box-sizing:border-box}.card{padding:16px}.controls{flex-direction:column;align-items:stretch;width:100%}.controls>*{width:100%}.button-group{flex-direction:column}.input{min-width:100%}.grid{grid-template-columns:1fr;gap:16px}.card-body{flex-direction:column;align-items:flex-start;gap:16px}.card-footer{flex-direction:column;align-items:flex-start;gap:12px}.job-details-grid{grid-template-columns:1fr}.job-details-header{flex-direction:column;align-items:flex-start;gap:16px}.job-actions{flex-direction:column;width:100%}.job-actions .btn{width:100%;justify-content:center}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.card,.btn,.input{border:2px solid #000}}.job-card{display:flex;flex-direction:column;gap:16px}.card-header{display:flex;justify-content:space-between;align-items:center;gap:16px}.job-badge{display:inline-flex;align-items:center;gap:8px;background:#667eea1a;color:var(--accent);padding:6px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600}.card-main{flex-grow:1}.job-title{margin:0 0 12px;font-size:20px;line-height:1.3;color:#1e293b}.job-locations{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.job-location-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);background:#6366f11f;color:var(--accent-2);font-size:12px;font-weight:600;letter-spacing:.02em;white-space:nowrap}.job-meta{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:16px;color:var(--muted);font-size:14px}.meta-item{display:flex;align-items:center;gap:6px}.job-description{font-size:14px;color:var(--muted);line-height:1.6;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.job-skills{display:flex;flex-wrap:wrap;gap:8px}.skill-tag{background:var(--bg-secondary);color:var(--muted);padding:4px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:500}.card-actions{display:flex;gap:12px;margin-top:auto}.card-actions .btn{flex-grow:1}@media (max-width: 480px){.card-actions{flex-direction:column}}.auth-page{max-width:450px;width:90%}.auth-page .input{min-width:100%}.auth-page .controls .btn{width:100%;justify-content:center}.auth-page .grid{grid-template-columns:1fr;gap:16px}.stat-card{background:var(--gradient-card);border-radius:var(--radius-lg);padding:24px;text-align:center;box-shadow:var(--shadow-card);border:1px solid rgba(0,0,0,.05);transition:all var(--dur-mid) var(--ease-default)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-card-hover)}.stat-number{font-size:48px;font-weight:800;color:var(--accent);margin-bottom:8px;line-height:1}.stat-label{font-size:16px;color:var(--muted);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.file-name{font-size:14px;color:var(--muted);font-style:italic}.upload-btn:hover{transform:none!important}.upload-btn{box-shadow:none!important}.scroll-to-top-btn{position:fixed;bottom:20px;right:20px;width:50px;height:50px;background:var(--accent);color:#fff;border:none;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);transition:all var(--dur-mid) var(--ease-default);z-index:1000;opacity:0;visibility:hidden}.scroll-to-top-btn:hover{background:var(--accent-2);transform:translateY(-2px);box-shadow:var(--shadow-xl)}.scroll-to-top-btn.visible{opacity:1;visibility:visible}.site-footer{background:var(--card);border-top:1px solid rgba(0,0,0,.1);padding:16px 0;margin-top:auto;color:var(--muted);font-size:14px}.site-footer .footer-content{text-align:center}.site-footer a{color:var(--accent);text-decoration:none;font-weight:500}.site-footer a:hover{text-decoration:underline}.location-select-container{display:flex;flex-wrap:wrap;gap:8px;padding:8px;border:none;border-radius:var(--radius-sm);background:#fff;min-height:42px;align-items:center;transition:all var(--dur-mid) var(--ease-default)}.location-select-container.input-error{border:1px solid var(--error)}.location-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--accent);color:#fff;border-radius:var(--radius-full);font-size:14px;font-weight:500;transition:all var(--dur-fast) var(--ease-default)}.location-pill:hover{background:var(--accent-2)}.location-pill span{line-height:1}.location-pill-remove{background:none;border:none;color:#fff;font-size:20px;line-height:1;cursor:pointer;padding:0;width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all var(--dur-fast) var(--ease-default)}.location-pill-remove:hover{background:#fff3}.location-input{flex:1;min-width:200px;border:none;outline:none;padding:4px;font-size:14px;background:transparent}.location-input::placeholder{color:var(--muted-light)}.location-input-container{position:relative;display:flex;align-items:center;flex:1;min-width:200px}.location-input-container .location-input{flex:1;padding-right:24px}.location-input-container .spinner{position:absolute;right:4px;margin:0}.location-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid #cbd5e1;border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);max-height:200px;overflow-y:auto;z-index:1000;animation:slideInUp var(--dur-fast) var(--ease-out)}.location-dropdown-item{padding:10px 12px;cursor:pointer;font-size:14px;transition:all var(--dur-fast) var(--ease-default);border-bottom:1px solid #f1f5f9}.location-dropdown-item:last-child{border-bottom:none}.location-dropdown-item:hover,.location-dropdown-item.highlighted{background:var(--bg-secondary);color:var(--accent)}.location-dropdown-item.loading,.location-dropdown-item.no-results{cursor:default;color:var(--muted);text-align:center}.location-dropdown-item.loading:hover,.location-dropdown-item.no-results:hover{background:#fff;color:var(--muted)}
