@import url('https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wght@12..96,600;12..96,700;12..96,800&family=Figtree:wght@300;400;500;600;700&family=DM+Mono:wght@400;500&display=swap');

:root {
  --bg: #F4F6FB;
  --bg-white: #FFFFFF;
  --bg-subtle: #EEF1F8;
  --bg-input: #FFFFFF;
  --border: #E3E8F0;
  --border-dark: #C9D2E0;
  --blue: #1A56F5;
  --blue-hover: #1244DC;
  --blue-light: #EEF2FF;
  --blue-mid: #DBEAFE;
  --blue-focus: rgba(26,86,245,0.14);
  --green: #10B981;
  --green-light: #ECFDF5;
  --green-text: #065F46;
  --gold: #F59E0B;
  --gold-light: #FFFBEB;
  --red: #EF4444;
  --red-light: #FEF2F2;
  --text-1: #0D1117;
  --text-2: #4A5568;
  --text-3: #9AA5B4;
  --white: #FFFFFF;
  --font-display: 'Inter', sans-serif;
  --font-body: 'Figtree', sans-serif;
  --font-mono: 'DM Mono', monospace;
  --radius-sm: 6px;
  --radius: 10px;
  --radius-lg: 14px;
  --radius-xl: 20px;
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.05);
  --shadow-sm: 0 1px 4px rgba(0,0,0,0.06), 0 2px 8px rgba(0,0,0,0.04);
  --shadow: 0 2px 8px rgba(0,0,0,0.06), 0 4px 20px rgba(0,0,0,0.05);
  --shadow-lg: 0 8px 32px rgba(0,0,0,0.08), 0 2px 8px rgba(0,0,0,0.04);
  --shadow-blue: 0 0 0 3px rgba(26,86,245,0.14);
  --transition: all 0.15s ease;
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{font-family:var(--font-body);background:var(--bg);color:var(--text-1);line-height:1.6;min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased;}
a{color:var(--blue);text-decoration:none;transition:var(--transition);}
a:hover{color:var(--blue-hover);}
img{max-width:100%;display:block;}
input,textarea,select,button{font-family:var(--font-body);}
::-webkit-scrollbar{width:6px;}
::-webkit-scrollbar-track{background:var(--bg);}
::-webkit-scrollbar-thumb{background:var(--border-dark);border-radius:3px;}

.navbar{background:#FFFFFF;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:100;}
.nav-container{max-width:1280px;margin:0 auto;padding:0 32px;height:60px;display:flex;align-items:center;gap:32px;}
.nav-logo{display:flex;align-items:center;flex-shrink:0;}
.logo-img{height:40px;width:auto;object-fit:contain;}
.nav-links{display:flex;align-items:center;gap:1px;margin-left:auto;}
.nav-link{padding:7px 14px;border-radius:var(--radius-sm);color:var(--text-2);font-size:0.875rem;font-weight:500;transition:var(--transition);}
.nav-link:hover{color:var(--text-1);background:var(--bg);}
.nav-link.active{color:var(--blue);font-weight:600;}
.nav-user-menu{position:relative;margin-left:8px;}
.nav-user-btn{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--border);border-radius:50px;padding:5px 14px 5px 5px;cursor:pointer;color:var(--text-1);transition:var(--transition);font-size:0.875rem;}
.nav-user-btn:hover{border-color:var(--blue);box-shadow:var(--shadow-blue);}
.user-avatar{width:28px;height:28px;border-radius:50%;background:var(--blue);color:white;display:flex;align-items:center;justify-content:center;font-size:0.72rem;font-weight:700;flex-shrink:0;}
.user-name-short{font-size:0.83rem;font-weight:600;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-1);}
.chevron{width:14px;height:14px;color:var(--text-3);}
.user-dropdown{position:absolute;top:calc(100% + 8px);right:0;background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:6px;min-width:210px;box-shadow:var(--shadow-lg);display:none;flex-direction:column;gap:1px;}
.user-dropdown.open{display:flex;}
.dropdown-header{padding:8px 12px 10px;font-size:0.75rem;color:var(--text-3);border-bottom:1px solid var(--border);margin-bottom:4px;font-family:var(--font-mono);word-break:break-all;}
.dropdown-item{padding:8px 12px;border-radius:var(--radius-sm);color:var(--text-2);font-size:0.85rem;font-weight:500;transition:var(--transition);display:block;}
.dropdown-item:hover{background:var(--bg);color:var(--text-1);}
.dropdown-item-danger:hover{background:var(--red-light);color:var(--red);}
.dropdown-divider{height:1px;background:var(--border);margin:4px 0;}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:8px;margin-left:auto;}
.hamburger span{display:block;width:20px;height:1.5px;background:var(--text-2);border-radius:2px;}
.mobile-menu{display:none;flex-direction:column;padding:10px 16px 16px;border-top:1px solid var(--border);background:var(--bg-white);gap:2px;}
.mobile-menu.open{display:flex;}
.mobile-link{padding:10px 14px;border-radius:var(--radius-sm);color:var(--text-2);font-size:0.9rem;font-weight:500;}
.mobile-link:hover{background:var(--bg);color:var(--text-1);}
.mobile-link-danger:hover{background:var(--red-light);color:var(--red);}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 20px;border-radius:var(--radius-sm);font-size:0.875rem;font-weight:600;cursor:pointer;border:none;transition:var(--transition);text-decoration:none;white-space:nowrap;letter-spacing:-0.01em;}
.btn-sm{padding:6px 14px;font-size:0.8rem;}
.btn-lg{padding:12px 28px;font-size:0.95rem;}
.btn-primary{background:#1A56F5;color:white;}
.btn-primary:hover{background:#1244DC;color:white;box-shadow:0 4px 12px rgba(26,86,245,0.3);}
.btn-secondary{background:var(--bg-white);color:var(--text-1);border:1px solid var(--border);}
.btn-secondary:hover{background:var(--bg);border-color:var(--border-dark);color:var(--text-1);}
.btn-outline{background:transparent;color:var(--blue);border:1px solid var(--blue);}
.btn-outline:hover{background:var(--blue-light);color:var(--blue);}
.btn-recommend{background:#EEF2FF;color:#4338CA;border:1px solid #C7D2FE;}
.btn-recommend:hover{background:#E0E7FF;color:#3730A3;border-color:#A5B4FC;}
.btn-ghost{background:transparent;color:var(--text-2);}
.btn-ghost:hover{background:var(--bg);color:var(--text-1);}
.btn-danger{background:var(--red-light);color:var(--red);border:1px solid #FCA5A5;}
.btn-danger:hover{background:var(--red);color:white;}
.btn-full{width:100%;}
.btn:disabled{opacity:0.5;cursor:not-allowed;}
.btn-google{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 16px;background:white;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:0.875rem;font-weight:500;color:var(--text-1);cursor:pointer;transition:var(--transition);text-decoration:none;width:100%;}
.btn-google:hover{background:var(--bg);border-color:var(--border-dark);color:var(--text-1);}

.form-group{display:flex;flex-direction:column;gap:6px;}
.form-label{font-size:0.8rem;font-weight:600;color:var(--text-1);letter-spacing:-0.01em;}
.form-label .required{color:var(--red);margin-left:2px;}
.form-input,.form-select,.form-textarea{background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;color:var(--text-1);font-size:0.9rem;transition:var(--transition);width:100%;}
.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--blue);box-shadow:var(--shadow-blue);}
.form-input::placeholder,.form-textarea::placeholder{color:var(--text-3);}
.form-select{cursor:pointer;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239AA5B4' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:15px;padding-right:36px;}
.form-textarea{resize:vertical;min-height:120px;line-height:1.7;}
.form-hint{font-size:0.75rem;color:var(--text-3);}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;}
.form-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer;}
.form-check input[type="checkbox"]{width:16px;height:16px;cursor:pointer;flex-shrink:0;margin-top:3px;accent-color:var(--blue);}
.form-check-label{font-size:0.875rem;color:var(--text-2);line-height:1.5;}

.card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px;box-shadow:var(--shadow-xs);}

.flash-container{max-width:1280px;margin:16px auto 0;padding:0 32px;display:flex;flex-direction:column;gap:8px;}
.flash{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-radius:var(--radius-sm);font-size:0.85rem;font-weight:500;}
.flash-success{background:var(--green-light);border:1px solid #A7F3D0;color:var(--green-text);}
.flash-error{background:var(--red-light);border:1px solid #FCA5A5;color:#991B1B;}
.flash-info{background:var(--blue-light);border:1px solid var(--blue-mid);color:var(--blue);}
.flash-warning{background:var(--gold-light);border:1px solid #FDE68A;color:#92400E;}
.flash-close{background:none;border:none;cursor:pointer;color:inherit;font-size:1.1rem;opacity:0.5;padding:0 4px;}
.flash-close:hover{opacity:1;}

.main-content{flex:1;}
.container{max-width:1280px;margin:0 auto;padding:0 32px;}
.section{padding:40px 0;}
.page-header{padding:36px 0 24px;}
.page-title{font-family:var(--font-display);font-size:1.85rem;font-weight:800;color:var(--text-1);letter-spacing:-0.03em;}
.page-subtitle{color:var(--text-2);margin-top:6px;font-size:0.9rem;}

.hero{background:var(--bg-white);border-bottom:1px solid var(--border);padding:64px 32px 52px;text-align:center;}
.hero-inner{max-width:1280px;margin:0 auto;}
.hero-title{font-family:var(--font-display);font-size:3rem;font-weight:800;color:var(--text-1);line-height:1.1;letter-spacing:-0.02em;margin-bottom:12px;}
.hero-title .accent{color:var(--blue);}
.hero-subtitle{font-size:1rem;color:var(--text-2);margin-bottom:36px;max-width:480px;line-height:1.65;margin-left:auto;margin-right:auto;}

.counter-row{display:flex;gap:14px;margin-bottom:36px;flex-wrap:wrap;justify-content:center;}
.counter-card{padding:14px 22px;display:flex;align-items:center;gap:14px;}
.counter-label{font-size:0.7rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:0.08em;margin-bottom:2px;}
.counter-icon{width:38px;height:38px;border-radius:var(--radius);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--font-display);font-weight:800;font-size:1.1rem;}
.counter-prefix{font-family:var(--font-display);font-size:2.2rem;font-weight:700;color:var(--text-1);line-height:1;}
.counter-number{font-family:var(--font-display);font-size:3.2rem;font-weight:800;color:var(--text-1);line-height:1;letter-spacing:-0.03em;font-variant-numeric:tabular-nums;}
.counter-value{display:flex;align-items:baseline;gap:1px;}

.search-bar{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:10px;display:flex;gap:0;align-items:stretch;box-shadow:var(--shadow-sm);max-width:840px;margin:0 auto;}
.search-field{flex:1;min-width:140px;padding:2px 14px;display:flex;flex-direction:column;justify-content:center;}
.search-field label{font-size:0.65rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:0.09em;margin-bottom:2px;}
.search-field input{background:transparent;border:none;outline:none;font-size:0.925rem;font-weight:500;color:var(--text-1);font-family:var(--font-body);padding:3px 0;width:100%;}
.search-field input::placeholder{color:var(--text-3);font-weight:400;}
.search-divider{width:1px;background:var(--border);margin:6px 0;flex-shrink:0;}
.search-btn{background:var(--blue);color:white;border:none;padding:0 24px;border-radius:var(--radius);font-size:0.875rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:7px;margin:2px;white-space:nowrap;transition:var(--transition);}
.search-btn:hover{background:var(--blue-hover);}

.section-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;}
.section-title{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--text-1);letter-spacing:-0.02em;display:flex;align-items:center;gap:10px;}
.section-count{font-size:0.72rem;font-weight:600;color:var(--text-3);background:var(--bg);border:1px solid var(--border);padding:2px 8px;border-radius:50px;font-family:var(--font-mono);}

.jobs-grid{display:flex;flex-direction:column;gap:8px;}
.job-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:var(--transition);}
.job-card:hover{border-color:var(--blue);box-shadow:var(--shadow);transform:translateY(-1px);}
.job-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:4px;font-size:0.68rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;background:var(--blue-light);color:var(--blue);border:1px solid var(--blue-mid);}
.job-title{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--text-1);letter-spacing:-0.02em;margin:5px 0 2px;transition:var(--transition);}
.job-card:hover .job-title{color:var(--blue);}
.job-title a{color:inherit;}
.job-company{font-size:0.85rem;color:var(--text-2);font-weight:500;}
.job-pay{font-family:var(--font-display);font-size:1.05rem;font-weight:700;color:var(--text-1);letter-spacing:-0.02em;white-space:nowrap;}
.job-info{display:flex;flex-wrap:wrap;gap:16px;}
.job-info-item{display:flex;align-items:center;gap:5px;font-size:0.8rem;color:var(--text-2);text-align:left;}
.job-info-item [data-lucide]{width:13px;height:13px;color:var(--text-3);flex-shrink:0;}
.job-age{font-size:0.75rem;color:var(--text-3);font-family:var(--font-mono);}
.job-card-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding-top:12px;border-top:1px solid var(--border);margin-top:2px;}

.job-detail-layout{display:grid;grid-template-columns:1fr 300px;gap:24px;align-items:start;}
.job-detail-content{display:flex;flex-direction:column;gap:18px;}
.job-detail-sidebar{display:flex;flex-direction:column;gap:12px;position:sticky;top:76px;}
.job-description{line-height:1.85;color:var(--text-2);font-size:0.925rem;}
.job-description h1,.job-description h2,.job-description h3{font-family:var(--font-display);color:var(--text-1);margin:1.3em 0 0.5em;font-weight:700;letter-spacing:-0.02em;}
.job-description h1{font-size:1.35rem;}
.job-description h2{font-size:1.1rem;}
.job-description h3{font-size:0.975rem;}
.job-description p{margin-bottom:1em;}
.job-description ul,.job-description ol{padding-left:1.5em;margin-bottom:1em;}
.job-description li{margin-bottom:0.35em;}
.job-description strong{color:var(--text-1);font-weight:600;}
.job-description a{color:var(--blue);}
.sidebar-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-xs);}
.sidebar-stat{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid var(--border);}
.sidebar-stat:last-child{border-bottom:none;}
.sidebar-stat-label{font-size:0.78rem;color:var(--text-3);flex-shrink:0;}
.sidebar-stat-value{font-size:0.78rem;font-weight:600;color:var(--text-1);text-align:right;}

.auth-page{min-height:calc(100vh - 60px);display:flex;align-items:center;justify-content:center;padding:48px 24px;background:var(--bg);}
.auth-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-xl);padding:40px;width:100%;max-width:460px;box-shadow:var(--shadow);}
.auth-logo{display:flex;justify-content:center;margin-bottom:28px;}
.auth-logo img{height:34px;}
.auth-title{font-family:var(--font-display);font-size:1.5rem;font-weight:800;color:var(--text-1);text-align:center;margin-bottom:6px;letter-spacing:-0.03em;}
.auth-subtitle{font-size:0.875rem;color:var(--text-2);text-align:center;margin-bottom:28px;}
.auth-form{display:flex;flex-direction:column;gap:16px;}
.auth-footer{text-align:center;font-size:0.85rem;color:var(--text-2);margin-top:20px;}
.auth-divider{text-align:center;color:var(--text-3);font-size:0.8rem;position:relative;}
.auth-divider::before,.auth-divider::after{content:'';position:absolute;top:50%;width:42%;height:1px;background:var(--border);}
.auth-divider::before{left:0;}
.auth-divider::after{right:0;}
.choice-cards{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.choice-card{background:var(--bg-white);border:2px solid var(--border);border-radius:var(--radius-lg);padding:28px 20px;text-align:center;cursor:pointer;transition:var(--transition);display:flex;flex-direction:column;gap:10px;align-items:center;text-decoration:none;}
.choice-card:hover{border-color:var(--blue);box-shadow:var(--shadow-blue);transform:translateY(-2px);}
.choice-title{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--text-1);letter-spacing:-0.02em;}
.choice-desc{font-size:0.78rem;color:var(--text-2);line-height:1.5;}

.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:32px;}
.stat-card{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;gap:4px;box-shadow:var(--shadow-xs);}
.stat-value{font-family:var(--font-display);font-size:2rem;font-weight:800;color:var(--blue);letter-spacing:-0.04em;line-height:1;}
.stat-label{font-size:0.72rem;color:var(--text-3);font-weight:600;margin-top:4px;text-transform:uppercase;letter-spacing:0.06em;}

.table-wrapper{overflow-x:auto;border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--bg-white);}
.data-table{width:100%;border-collapse:collapse;}
.data-table th{background:var(--bg);padding:10px 16px;text-align:left;font-size:0.7rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:0.08em;border-bottom:1px solid var(--border);}
.data-table td{padding:13px 16px;border-bottom:1px solid var(--border);font-size:0.85rem;color:var(--text-2);vertical-align:middle;}
.data-table tr:last-child td{border-bottom:none;}
.data-table tr:hover td{background:var(--bg);}

.status-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:0.68rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;}
.status-submitted{background:var(--blue-light);color:var(--blue);border:1px solid var(--blue-mid);}
.status-reviewing{background:var(--gold-light);color:#92400E;border:1px solid #FDE68A;}
.status-shortlisted{background:var(--green-light);color:var(--green-text);border:1px solid #A7F3D0;}
.status-rejected{background:var(--red-light);color:#991B1B;border:1px solid #FCA5A5;}
.status-unsuccessful{background:var(--red-light);color:#991B1B;border:1px solid #FCA5A5;}
.status-rewarded{background:#F5F3FF;color:#5B21B6;border:1px solid #DDD6FE;}

.apply-layout{max-width:680px;margin:0 auto;}
.file-upload-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:36px;text-align:center;cursor:pointer;transition:var(--transition);background:var(--bg);}
.file-upload-zone:hover,.file-upload-zone.drag-over{border-color:var(--blue);background:var(--blue-light);}
.file-upload-icon{font-size:2rem;margin-bottom:12px;opacity:0.4;}
.file-upload-text{color:var(--text-2);font-size:0.9rem;font-weight:500;}
.file-upload-hint{font-size:0.72rem;color:var(--text-3);margin-top:6px;font-family:var(--font-mono);}
.file-name-display{margin-top:14px;padding:8px 14px;background:var(--blue-light);border-radius:var(--radius-sm);font-size:0.8rem;color:var(--blue);display:none;font-family:var(--font-mono);}

.success-page{max-width:560px;margin:80px auto;text-align:center;padding:0 24px;}
.success-icon{font-size:3.5rem;margin-bottom:20px;}
.success-title{font-family:var(--font-display);font-size:1.7rem;font-weight:800;color:var(--text-1);margin-bottom:10px;letter-spacing:-0.03em;}
.success-message{color:var(--text-2);line-height:1.8;font-size:0.925rem;}
.success-thank-you{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:22px;margin:22px 0;text-align:left;}

.empty-state{text-align:center;padding:64px 24px;}
.empty-state-icon{font-size:2.8rem;margin-bottom:16px;opacity:0.3;}
.empty-state-title{font-family:var(--font-display);font-size:1rem;font-weight:700;color:var(--text-2);margin-bottom:8px;}
.empty-state-desc{font-size:0.84rem;color:var(--text-3);margin-bottom:24px;}

.question-row{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;display:flex;gap:10px;align-items:center;}
.question-remove{background:none;border:none;cursor:pointer;color:var(--text-3);font-size:1.2rem;padding:4px 8px;border-radius:var(--radius-sm);transition:var(--transition);line-height:1;}
.question-remove:hover{color:var(--red);background:var(--red-light);}
.extension-row{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;}

.toggle-switch{position:relative;display:inline-block;width:42px;height:22px;}
.toggle-switch input{opacity:0;width:0;height:0;}
.toggle-slider{position:absolute;cursor:pointer;inset:0;background:var(--border-dark);border-radius:22px;transition:var(--transition);}
.toggle-slider::before{content:'';position:absolute;width:16px;height:16px;left:3px;bottom:3px;background:white;border-radius:50%;transition:var(--transition);box-shadow:var(--shadow-xs);}
.toggle-switch input:checked + .toggle-slider{background:var(--blue);}
.toggle-switch input:checked + .toggle-slider::before{transform:translateX(20px);}

.breadcrumb{display:flex;align-items:center;gap:8px;font-size:0.8rem;color:var(--text-3);margin-bottom:20px;}
.breadcrumb a{color:var(--text-3);}
.breadcrumb a:hover{color:var(--blue);}
.breadcrumb-sep{color:var(--border-dark);}

.filters-bar{background:var(--bg-white);border:1px solid var(--border);border-radius:var(--radius);padding:10px 16px;display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px;}
.filter-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;background:var(--blue-light);color:var(--blue);border:1px solid var(--blue-mid);border-radius:4px;font-size:0.72rem;font-weight:700;}

[data-lucide]{display:inline-block;vertical-align:middle;}

.footer{background:var(--bg-white);border-top:1px solid var(--border);margin-top:auto;}
.footer-container{max-width:1280px;margin:0 auto;padding:48px 32px 32px;display:flex;gap:64px;flex-wrap:wrap;}
.footer-brand{flex:1;min-width:200px;}
.footer-logo{height:28px;margin-bottom:10px;}
.footer-tagline{font-size:0.82rem;color:var(--text-3);}
.footer-links{display:flex;gap:48px;flex-wrap:wrap;}
.footer-col{display:flex;flex-direction:column;gap:10px;}
.footer-col h4{font-size:0.68rem;font-weight:700;color:var(--text-3);text-transform:uppercase;letter-spacing:0.09em;margin-bottom:2px;}
.footer-col a{font-size:0.85rem;color:var(--text-2);}
.footer-col a:hover{color:var(--blue);}
.footer-bottom{border-top:1px solid var(--border);padding:16px 32px;text-align:center;font-size:0.75rem;color:var(--text-3);max-width:1280px;margin:0 auto;}

@media(max-width:900px){
  .job-detail-layout{grid-template-columns:1fr !important;}
  .job-detail-layout > div:last-child{position:static !important;}
}
@media(max-width:768px){
  .nav-links{display:none;}
  .hamburger{display:flex;}
  .hero{padding:44px 24px 36px;}
  .hero-title{font-size:2.2rem;}
  .search-bar{flex-direction:column;padding:12px;}
  .search-divider{display:none;}
  .search-field{min-width:100%;padding:4px 8px;}
  .search-btn{width:100%;justify-content:center;padding:12px;border-radius:var(--radius-sm);}
  .form-row,.form-row-3{grid-template-columns:1fr;}
  .auth-card{padding:28px 20px;}
  .choice-cards{grid-template-columns:1fr;}
  .stats-grid{grid-template-columns:1fr 1fr;}
  .container{padding:0 20px;}
  .flash-container{padding:0 20px;}
  .nav-container{padding:0 20px;}
  .counter-row{flex-direction:row;align-items:center;justify-content:center;}
  .hero{padding-bottom:32px;}
  .container.section{padding-top:24px !important;}
}
@media(max-width:480px){
  .stats-grid{grid-template-columns:1fr;}
  .hero-title{font-size:1.9rem;}
}
@media(max-width:480px){
  .job-card .job-footer-left{width:100%;}
  .job-card .job-footer-right{width:100%;display:flex;gap:8px;}
}
.job-card span, .job-card div, .job-card a, .job-card p { text-align:left; }
@media(max-width:600px){
  .job-card img[style*="height:44px"]{height:32px !important;}
}
@keyframes referGradient {
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
body.dark-mode {
  --bg: #0D1117;
  --bg-white: #161B22;
  --bg-subtle: #21262D;
  --border: #30363D;
  --border-dark: #484F58;
  --text-1: #E6EDF3;
  --text-2: #8B949E;
  --text-3: #484F58;
  --blue-light: #1C2A3A;
  --blue-mid: #1F3A5F;
  --green-light: #0D2B1F;
  --green-text: #3FB950;
  --red-light: #2D1515;
  --gold-light: #2D2100;
}
body.dark-mode .navbar{background:#161B22;border-bottom:1px solid #30363D;}
body.dark-mode .nav-link{color:#8B949E;}
body.dark-mode .nav-link:hover{color:#E6EDF3;background:#21262D;}
body.dark-mode .nav-link.active{color:#E6EDF3;}
body.dark-mode .nav-user-btn{background:#21262D;border-color:#30363D;color:#E6EDF3;}
body.dark-mode .user-dropdown{background:#161B22;border-color:#30363D;}
body.dark-mode .dropdown-item{color:#8B949E;}
body.dark-mode .dropdown-item:hover{background:#21262D;color:#E6EDF3;}
body.dark-mode .card{background:#161B22;border-color:#30363D;}
body.dark-mode .sidebar-card{background:#161B22;border-color:#30363D;}
body.dark-mode .form-input,body.dark-mode .form-select,body.dark-mode .form-textarea{background:#21262D;border-color:#30363D;color:#E6EDF3;}
body.dark-mode .search-bar{background:#161B22;border-color:#30363D;}
body.dark-mode .search-field input{color:#E6EDF3;}
body.dark-mode .job-card{background:#161B22;border-color:#30363D;}
body.dark-mode .job-card:hover{border-color:#6366F1;}
body.dark-mode .table-wrapper{background:#161B22;border-color:#30363D;}
body.dark-mode .data-table th{background:#21262D;}
body.dark-mode .data-table td{border-color:#30363D;}
body.dark-mode .data-table tr:hover td{background:#21262D;}
body.dark-mode .btn-secondary{background:#21262D;border-color:#30363D;color:#E6EDF3;}
body.dark-mode .btn-secondary:hover{background:#30363D;}
body.dark-mode .footer{background:#161B22;border-color:#30363D;}
body.dark-mode .mobile-menu{background:#161B22;border-color:#30363D;}
body.dark-mode .hero{background:#161B22;border-color:#30363D;}
body.dark-mode .auth-card{background:#161B22;border-color:#30363D;}
body.dark-mode .stat-card{background:#161B22;border-color:#30363D;}
body.dark-mode .flash-success{background:#1C3A2A;border-color:#2EA043;color:#3FB950;}
body.dark-mode .flash-error{background:#2D1515;border-color:#F85149;color:#F85149;}
body.dark-mode .flash-info{background:#1C2A3A;border-color:#388BFD;color:#79C0FF;}
body.dark-mode {
  --bg: #0D1117;
  --bg-white: #161B22;
  --bg-subtle: #21262D;
  --border: #30363D;
  --border-dark: #484F58;
  --text-1: #E6EDF3;
  --text-2: #8B949E;
  --text-3: #484F58;
  --blue-light: #1C2A3A;
  --blue-mid: #1F3A5F;
  --green-light: #0D2B1F;
  --green-text: #3FB950;
  --red-light: #2D1515;
  --gold-light: #2D2100;
}
body.dark-mode .navbar{background:#161B22;border-bottom:1px solid #30363D;}
body.dark-mode .nav-link{color:#8B949E;}
body.dark-mode .nav-link:hover{color:#E6EDF3;background:#21262D;}
body.dark-mode .nav-link.active{color:#E6EDF3;}
body.dark-mode .nav-user-btn{background:#21262D;border-color:#30363D;color:#E6EDF3;}
body.dark-mode .user-dropdown{background:#161B22;border-color:#30363D;}
body.dark-mode .dropdown-item{color:#8B949E;}
body.dark-mode .dropdown-item:hover{background:#21262D;color:#E6EDF3;}
body.dark-mode .card{background:#161B22;border-color:#30363D;}
body.dark-mode .sidebar-card{background:#161B22;border-color:#30363D;}
body.dark-mode .form-input,body.dark-mode .form-select,body.dark-mode .form-textarea{background:#21262D;border-color:#30363D;color:#E6EDF3;}
body.dark-mode .search-bar{background:#161B22;border-color:#30363D;}
body.dark-mode .search-field input{color:#E6EDF3;}
body.dark-mode .job-card{background:#161B22;border-color:#30363D;}
body.dark-mode .job-card:hover{border-color:#6366F1;}
body.dark-mode .table-wrapper{background:#161B22;border-color:#30363D;}
body.dark-mode .data-table th{background:#21262D;}
body.dark-mode .data-table td{border-color:#30363D;}
body.dark-mode .data-table tr:hover td{background:#21262D;}
body.dark-mode .btn-secondary{background:#21262D;border-color:#30363D;color:#E6EDF3;}
body.dark-mode .btn-secondary:hover{background:#30363D;}
body.dark-mode .footer{background:#161B22;border-color:#30363D;}
body.dark-mode .mobile-menu{background:#161B22;border-color:#30363D;}
body.dark-mode .hero{background:#161B22;border-color:#30363D;}
body.dark-mode .auth-card{background:#161B22;border-color:#30363D;}
body.dark-mode .stat-card{background:#161B22;border-color:#30363D;}
body.dark-mode .flash-success{background:#1C3A2A;border-color:#2EA043;color:#3FB950;}
body.dark-mode .flash-error{background:#2D1515;border-color:#F85149;color:#F85149;}
body.dark-mode .flash-info{background:#1C2A3A;border-color:#388BFD;color:#79C0FF;}
