.listing-page{padding:var(--space-6) var(--layout-gutter) var(--space-12)}.listing-page__inner{max-width:var(--layout-max-width);margin:0 auto}.listing-page__controls{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) 0 var(--space-3);border-bottom:1px solid var(--color-border-default);margin-bottom:var(--space-4)}.listing-page__controls-summary{flex:1;min-width:0}.listing-page__controls-count{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.listing-page__controls-source{font-size:var(--font-size-xs);color:var(--color-text-muted);font-style:italic}.listing-page__controls-sort{flex-shrink:0}.listing-page__layout{display:grid;grid-template-columns:220px 1fr 360px;gap:var(--space-6);align-items:start}.listing-page__filters{position:sticky;top:calc(var(--layout-header-height) + var(--layout-nav-height) + var(--space-6))}.listing-page__main{min-width:0}.listing-page__results{display:flex;flex-direction:column;gap:0}.listing-page__results-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-surface)}.listing-page__card-row{border-bottom:1px solid var(--color-border-default);transition:background var(--duration-fast) var(--ease-default)}.listing-page__card-row:last-child{border-bottom:none}.listing-page__card-row:hover{background:var(--color-brand-50)}.listing-page__card-row--selected{background:var(--color-brand-50);border-left:3px solid var(--color-brand-500)}.listing-page__preview{position:sticky;top:calc(var(--layout-header-height) + var(--layout-nav-height) + var(--space-6));max-height:calc(100vh - var(--layout-header-height) - var(--layout-nav-height) - var(--space-12));overflow-y:auto}.listing-page__preview-sticky{min-height:200px}.listing-page__ai-strip{margin-top:var(--space-6)}.listing-page__ai-card{background:var(--color-brand-50);border:1px solid var(--color-brand-100);border-radius:var(--radius-lg);padding:var(--space-4);text-align:center}.listing-page__ai-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-brand-700);margin-bottom:var(--space-1)}.listing-page__ai-body{font-size:var(--font-size-xs);color:var(--color-brand-600)}.job-search-bar{margin-bottom:var(--space-4)}.job-search-bar__form{display:flex;gap:var(--space-2);align-items:center;background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-2);box-shadow:var(--shadow-sm)}.job-search-bar__input{flex:1;min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:var(--font-size-base);color:var(--color-text-primary);background:var(--color-neutral-50)}.job-search-bar__input:focus{border-color:var(--color-border-focus);outline:none;box-shadow:0 0 0 3px #3b82f626}.job-search-bar__btn{padding:var(--space-3) var(--space-5);background:var(--color-brand-600);color:var(--color-cta-text);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease-default)}.job-search-bar__btn:hover{background:var(--color-brand-700)}.job-search-bar__count{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap;padding:0 var(--space-2)}.job-filters{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);padding:var(--space-4)}.job-filters__heading{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3)}.job-filters__group{border:none;padding:0;margin-bottom:var(--space-4)}.job-filters__label{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.job-filters__options{display:flex;flex-direction:column;gap:var(--space-2)}.job-filters__option{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-secondary);cursor:pointer}.job-filters__option input[type=radio],.job-filters__option input[type=checkbox]{accent-color:var(--color-brand-600)}.job-filters__submit{width:100%;padding:var(--space-2) var(--space-4);background:var(--color-brand-600);color:var(--color-cta-text);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer}.job-sort-menu{display:flex;align-items:center;gap:var(--space-2)}.job-sort-menu__label{font-size:var(--font-size-sm);color:var(--color-text-muted);white-space:nowrap}.job-sort-menu__select{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:var(--font-size-sm);color:var(--color-text-primary);background:var(--color-bg-surface);cursor:pointer}.job-sort-menu__select:focus{border-color:var(--color-border-focus);outline:none}.job-sort-menu__btn{padding:var(--space-2) var(--space-3);background:var(--color-brand-600);color:var(--color-cta-text);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);cursor:pointer}.job-card{padding:var(--space-4) var(--space-4)}.job-card__header{margin-bottom:var(--space-2)}.job-card__title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);margin-bottom:var(--space-1)}.job-card__title-link{color:var(--color-link)}.job-card__title-link:hover{text-decoration:underline}.job-card__company{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.job-card__location{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-bottom:var(--space-2);display:flex;align-items:center;gap:var(--space-2)}.job-card__remote-badge{display:inline-block;padding:1px var(--space-2);background:var(--color-success-500);color:var(--color-neutral-0);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.job-card__salary{font-size:var(--font-size-sm);color:var(--color-success-700);font-weight:var(--font-weight-medium);margin-bottom:var(--space-2)}.job-card__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-card__tags{display:flex;flex-wrap:wrap;gap:var(--space-1);margin-bottom:var(--space-2);list-style:none}.job-card__tag{padding:1px var(--space-2);background:var(--color-bg-subtle);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.job-card__footer{display:flex;align-items:center;justify-content:space-between}.job-card__date{font-size:var(--font-size-xs);color:var(--color-text-muted)}.job-empty-state{text-align:center;padding:var(--space-12) var(--space-4)}.job-empty-state__heading{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-3)}.job-empty-state__body{font-size:var(--font-size-base);color:var(--color-text-secondary);max-width:400px;margin:0 auto;line-height:var(--line-height-relaxed)}.job-pagination{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) 0;margin-top:var(--space-4)}.job-pagination__prev,.job-pagination__next{padding:var(--space-2) var(--space-4);background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-link);text-decoration:none;transition:background var(--duration-fast) var(--ease-default)}.job-pagination__prev:hover,.job-pagination__next:hover{background:var(--color-bg-subtle);text-decoration:none}.job-pagination__info{font-size:var(--font-size-sm);color:var(--color-text-muted)}.job-preview{background:var(--color-bg-surface);border:1px solid var(--color-border-default);border-radius:var(--radius-lg);overflow:hidden}.job-preview--empty{display:flex;align-items:center;justify-content:center;min-height:200px}.job-preview__placeholder{padding:var(--space-4);text-align:center;font-size:var(--font-size-sm);color:var(--color-text-muted)}.job-preview__header{padding:var(--space-5) var(--space-5) var(--space-3);border-bottom:1px solid var(--color-border-default)}.job-preview__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:var(--space-2);line-height:var(--line-height-tight)}.job-preview__company{font-size:var(--font-size-base);color:var(--color-text-secondary);margin-bottom:var(--space-1)}.job-preview__location{font-size:var(--font-size-sm);color:var(--color-text-muted);display:flex;align-items:center;gap:var(--space-2)}.job-preview__remote-badge{display:inline-block;padding:1px var(--space-2);background:var(--color-success-500);color:var(--color-neutral-0);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}.job-preview__salary{font-size:var(--font-size-base);color:var(--color-success-700);font-weight:var(--font-weight-semibold);margin-top:var(--space-2)}.job-preview__body{padding:var(--space-4) var(--space-5)}.job-preview__description{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:var(--line-height-relaxed);margin-bottom:var(--space-4)}.job-preview__tags{display:flex;flex-wrap:wrap;gap:var(--space-1);list-style:none;margin-bottom:var(--space-4)}.job-preview__tag{padding:var(--space-1) var(--space-3);background:var(--color-bg-subtle);border-radius:var(--radius-sm);font-size:var(--font-size-xs);color:var(--color-text-muted)}.job-preview__ai{padding:0 var(--space-5) var(--space-4)}.job-preview__ai-card{background:var(--color-brand-50);border:1px solid var(--color-brand-100);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}.job-preview__ai-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-brand-700);margin-bottom:var(--space-1)}.job-preview__ai-body{font-size:var(--font-size-xs);color:var(--color-brand-600)}.job-preview__actions{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-4) var(--space-5) var(--space-5);border-top:1px solid var(--color-border-default)}.job-preview__apply-btn{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-brand-600);color:var(--color-cta-text);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:background var(--duration-fast) var(--ease-default)}.job-preview__apply-btn:hover{background:var(--color-brand-700)}.job-preview__save-btn{width:100%;padding:var(--space-3) var(--space-4);background:var(--color-bg-surface);color:var(--color-brand-600);border:1px solid var(--color-brand-600);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--duration-fast) var(--ease-default)}.job-preview__save-btn:hover{background:var(--color-brand-50)}@media (max-width: 1024px){.listing-page__layout{grid-template-columns:200px 1fr}.listing-page__preview{display:none}}@media (max-width: 768px){.listing-page__layout{grid-template-columns:1fr}.listing-page__filters{position:static;display:none}.job-search-bar__form{flex-wrap:wrap}.job-search-bar__input{flex:1 1 100%}}
