*{box-sizing:border-box;margin:0;padding:0}:root{--color-primary:#2563eb;--color-primary-dark:#1d4ed8;--color-accent-yellow:#fff0a3;--color-accent-teal:#d9f1f1;--color-bg:#fff;--color-bg-alt:#f9fafb;--color-text:#111827;--color-text-muted:#6b7280;--color-border:#e5e7eb;--color-tag:#dbeafe;--color-tag-text:#1e40af;--color-tag-yellow:#fef3c7;--color-tag-yellow-text:#92400e;--radius:8px;--shadow:0 1px 3px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a}body{color:var(--color-text);background-color:var(--color-bg-alt);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}a{color:var(--color-primary);text-decoration:none;position:relative;transition:all .2s}a:hover{text-decoration:underline}a:not(.apply-btn):hover{color:var(--color-primary-dark)}.app{max-width:1200px;margin:0 auto;padding:20px}.header{background:var(--color-bg);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;padding:16px 20px}.header-content{display:flex;justify-content:space-between;align-items: center;max-width:1200px;margin:0 auto}.logo{color:var(--color-text);text-decoration:none;font-size:1.5rem;font-weight:900}.logo:hover{text-decoration:none;color:var(--color-primary)}.nav{display:flex;gap:1.5rem}.nav-link{color:var(--color-text-muted);text-decoration:none;transition:color .2s;font-size:.95rem;font-weight:500}.nav-link:hover{color:var(--color-text);text-decoration:none}.nav-link--active{color:var(--color-primary)}.nav-link--active:hover{color:var(--color-primary-dark)}.controls{margin-bottom:20px}.main{margin-bottom:40px}.footer{text-align:center;color:var(--color-text-muted);padding:20px;font-size:.9rem}.search-bar{position:relative;margin-bottom:12px}.search-label{position:absolute;color:var(--color-text-muted);pointer-events:none;background:var(--color-bg);z-index:1;padding:0 4px;transition:all .2s;font-size:1rem;top:50%;left:16px;transform:translateY(-50%)}.search-input{border:2px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);width:100%;padding:12px 40px 12px 16px;transition:border-color .2s;font-size:1rem}.search-input:focus{outline:none;border-color:var(--color-primary)}.search-input:focus+.search-label,.search-input:not(:placeholder-shown)+.search-label{color:var(--color-primary);left:12px;transform:translateY(-1.75rem)scale(.75)}.search-clear{position:absolute;color:var(--color-text-muted);cursor:pointer;z-index:2;background:0 0;border:none;padding:0 8px;font-size:1.5rem;top:50%;right:12px;transform:translateY(-50%)}.search-clear:hover{color:var(--color-text)}.filters{background:var(--color-bg);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid var(--color-border);margin-bottom:16px;padding:16px}.filter-row{display:flex;flex-wrap:wrap;align-items: center;gap:12px}.filter-dropdown{border:2px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg);color:var(--color-text);cursor:pointer;text-transform:capitalize;flex:1;min-width:180px;padding:10px 14px;transition:all .2s;font-size:.95rem;font-weight:500}.filter-dropdown:hover{border-color:var(--color-primary)}.filter-dropdown:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #2563eb1a}.clear-filters-btn{background:var(--color-bg-alt);border:2px solid var(--color-border);border-radius:var(--radius);cursor:pointer;white-space:nowrap;padding:10px 20px;transition:all .2s;font-size:.9rem;font-weight:600}.clear-filters-btn:hover{background:var(--color-text);color:#fff;border-color:var(--color-text)}.results-count{color:var(--color-text-muted);margin-bottom:12px;font-size:.9rem;font-weight:600}.job-list{display:grid;gap:12px}.job-list-empty{background:var(--color-bg);text-align:center;border-radius:var(--radius);box-shadow:var(--shadow);padding:60px 20px}.job-list-empty p{color:var(--color-text-muted);font-size:1.1rem}.job-card{background:var(--color-bg);border-radius:var(--radius);box-shadow:var(--shadow);border:1px solid #0000;padding:18px 20px;transition:all .3s}.job-card:hover{box-shadow:var(--shadow-lg);border-color:var(--color-accent-yellow);transform:translateY(-4px)}.job-header{display:flex;align-items: flex-start;gap:12px;margin-bottom:10px}.company-logo{background:linear-gradient(135deg,var(--color-accent-teal),var(--color-accent-yellow));display:flex;color:var(--color-text);text-transform:uppercase;border-radius:6px;justify-content:center;align-items: center;width:40px;min-width:40px;height:40px;font-size:1.25rem;font-weight:700}.job-header-text{flex:1;min-width:0}.job-title{color:var(--color-text);margin-bottom:4px;font-size:1.1rem;font-weight:700;line-height:1.4}.company-name{color:var(--color-text-muted);text-transform:capitalize;font-size:.9rem;font-weight:500}.job-meta{display:flex;color:var(--color-text-muted);flex-wrap:wrap;align-items: center;gap:6px;margin-bottom:10px;font-size:.85rem}.separator{color:var(--color-border)}.job-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.tag{display:inline-block;text-transform:capitalize;border-radius:12px;padding:3px 10px;font-size:.75rem;font-weight:600}.tag-location{background:var(--color-tag);color:var(--color-tag-text)}.tag-department{color:#92400e;background:#fef3c7}.apply-btn{display:inline-block;background:var(--color-text);color:#fff;border-radius:var(--radius);text-decoration:none;padding:10px 20px;transition:all .2s;font-size:.9rem;font-weight:600}.apply-btn:hover{background:var(--color-primary);text-decoration:none;transform:translate(2px)}.companies-page{max-width:900px;margin:0 auto}.companies-header{background:var(--color-bg);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;padding:32px}.companies-title{color:var(--color-text);margin-bottom:12px;font-size:1.75rem;font-weight:800;line-height:1.3}.companies-description{color:var(--color-text-muted);font-size:1rem;line-height:1.6}.companies-list{display:flex;background:var(--color-border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);flex-direction:column;gap:1px}.company-card{display:flex;background:var(--color-bg);align-items: center;gap:16px;padding:16px 20px;transition:background .2s}.company-card:hover{background:var(--color-bg-alt)}.company-card .company-logo{width:40px;min-width:40px;height:40px}.company-info{flex:1;min-width:0}.company-card .company-name{color:var(--color-text);margin-bottom:2px;font-size:1rem;font-weight:600}.company-card .company-description{color:var(--color-text-muted);display:-webkit-box;-webkit-line-clamp:1;overflow:hidden;-webkit-box-orient:vertical;font-size:.875rem;line-height:1.4}.company-jobs-link{color:var(--color-text-muted);white-space:nowrap;text-decoration:none;font-size:.875rem}.company-jobs-link:hover{color:var(--color-primary);text-decoration:none}@media (max-width:768px){.app{padding:12px}.header{margin-bottom:16px;padding:12px 16px}.header-content{flex-direction:column;gap:12px}.nav{gap:1rem}.filters{padding:12px}.filter-row{gap:8px}.filter-dropdown{min-width:140px;padding:8px 12px;font-size:.9rem}.clear-filters-btn{padding:8px 16px;font-size:.85rem}.job-card{padding:14px 16px}.company-logo{width:36px;min-width:36px;height:36px;font-size:1.1rem}.job-title{font-size:1rem}.job-meta{font-size:.8rem}.tag{padding:2px 8px;font-size:.7rem}.companies-header{padding:20px}.companies-title{font-size:1.4rem}.company-card{flex-wrap:wrap;padding:12px 16px}.company-info{flex-basis:calc(100% - 56px)}.company-jobs-link{margin-left:auto}}
