/* Job application tracker tool styles */
@layer components {
  .jobtrack-page{
    --jobtrack-accent:var(--primary);
    --jobtrack-accent-strong:color-mix(in srgb,var(--primary) 68%, #0A1A1F 32%);
    --jobtrack-accent-soft:color-mix(in srgb,var(--primary) 24%, transparent);
    --jobtrack-surface:color-mix(in srgb,var(--surface) 88%, #09121c 12%);
    --jobtrack-surface-strong:color-mix(in srgb,var(--surface) 78%, #050b12 22%);
    --jobtrack-heat-0:color-mix(in srgb,var(--primary) 10%, var(--surface) 90%);
    --jobtrack-heat-1:color-mix(in srgb,var(--primary) 30%, var(--surface) 70%);
    --jobtrack-heat-2:color-mix(in srgb,var(--primary) 50%, var(--surface) 50%);
    --jobtrack-heat-3:color-mix(in srgb,var(--primary) 70%, var(--surface) 30%);
    --jobtrack-heat-4:color-mix(in srgb,var(--primary) 88%, #ffffff 12%);
  }
  .jobtrack-page [hidden]{
    display:none;
  }

  #jobtrack-auth-modal{
    z-index:2100;
  }

  .jobtrack-hero{
    position:relative;
    overflow:hidden;
    padding:clamp(3rem,7vh,5rem) 0;
    background:
      radial-gradient(900px circle at 8% 12%, color-mix(in srgb,var(--jobtrack-accent) 24%, transparent), transparent 60%),
      radial-gradient(800px circle at 92% 0%, color-mix(in srgb,var(--jobtrack-accent) 20%, #ffffff 8%), transparent 55%),
      linear-gradient(160deg,
        color-mix(in srgb,var(--surface) 90%, #070e15 10%) 0%,
        color-mix(in srgb,var(--surface) 78%, #050b12 22%) 100%);
    border-bottom:1px solid color-mix(in srgb,var(--jobtrack-accent) 25%, transparent);
    box-shadow:0 30px 60px rgba(0,0,0,.4);
  }
  .jobtrack-hero .wrapper{
    max-width:var(--container-max);
    display:grid;
    gap:clamp(1.4rem,2.8vw,2.1rem);
  }
  .jobtrack-lead{
    margin:0;
    max-width:64ch;
    color:var(--text-muted);
    font-size:1.1rem;
    line-height:1.7;
  }
  .jobtrack-steps{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
    gap:clamp(12px,2vw,16px);
  }
  .jobtrack-step{
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:14px 16px;
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 22%, transparent);
    background:linear-gradient(160deg,
      color-mix(in srgb,var(--surface) 92%, #060d14 8%) 0%,
      color-mix(in srgb,var(--surface) 82%, #040a11 18%) 100%);
    box-shadow:0 16px 32px rgba(0,0,0,.28);
  }
  .jobtrack-step-number{
    width:36px;
    height:36px;
    border-radius:12px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    color:color-mix(in srgb,#ffffff 94%, var(--bg) 6%);
    background:linear-gradient(135deg,
      color-mix(in srgb,var(--jobtrack-accent) 78%, #ffffff 22%) 0%,
      color-mix(in srgb,var(--jobtrack-accent-strong) 62%, #071219 38%) 100%);
    box-shadow:0 12px 22px rgba(0,0,0,.28);
  }
  .jobtrack-step h3{
    margin:0 0 4px;
    font-size:1.02rem;
    letter-spacing:.01em;
  }
  .jobtrack-step p{
    margin:0;
    color:var(--text-muted);
    font-size:.95rem;
    line-height:1.6;
  }

  .jobtrack-section{
    padding:clamp(2.8rem,6vh,3.8rem) 0;
  }
  .jobtrack-tool-header{
    display:grid;
    gap:6px;
    margin-bottom:clamp(18px,3vw,24px);
  }
  .jobtrack-tool-header h2{
    margin:0;
    font-size:clamp(1.6rem,2.4vw,2rem);
  }
  .jobtrack-tool-lead{
    margin:0;
    max-width:70ch;
    color:var(--text-muted);
    font-size:1rem;
    line-height:1.6;
  }

  .jobtrack-tabs{
    display:grid;
    gap:clamp(16px,3vw,24px);
  }
  .jobtrack-tablist{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    padding:8px;
    border-radius:18px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 22%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 86%, #04090f 14%);
    box-shadow:0 14px 28px rgba(0,0,0,.28);
  }
  .jobtrack-tab{
    border:0;
    border-radius:999px;
    padding:10px 16px;
    font-family:'Poppins',sans-serif;
    font-weight:600;
    font-size:.95rem;
    color:var(--text-muted);
    background:transparent;
    cursor:pointer;
    transition:background .2s ease,color .2s ease,transform .2s ease;
  }
  .jobtrack-tab[aria-selected="true"]{
    background:color-mix(in srgb,var(--jobtrack-accent) 25%, var(--jobtrack-surface) 75%);
    color:color-mix(in srgb,var(--text-light) 95%, #ffffff 5%);
    transform:translateY(-1px);
  }
  .jobtrack-tab:focus-visible{
    outline:2px solid color-mix(in srgb,var(--jobtrack-accent) 70%, #ffffff 30%);
    outline-offset:2px;
  }
  .jobtrack-tab-panel{
    display:grid;
    gap:clamp(18px,3vw,28px);
  }
  .jobtrack-tab-panel[hidden]{
    display:none;
  }

  .jobtrack-card{
    width:100%;
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
    background:linear-gradient(160deg,
      color-mix(in srgb,var(--jobtrack-surface) 92%, #04090f 8%) 0%,
      color-mix(in srgb,var(--jobtrack-surface-strong) 84%, #04090f 16%) 100%);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 24%, transparent);
    border-radius:20px;
    padding:clamp(1.4rem,2.4vw,2rem);
    box-shadow:0 20px 42px rgba(0,0,0,.32);
    display:grid;
    gap:18px;
    overflow-wrap:anywhere;
    word-break:break-word;
  }

  .jobtrack-kicker{
    margin:0;
    font-size:.78rem;
    letter-spacing:.26em;
    text-transform:uppercase;
    color:color-mix(in srgb,var(--jobtrack-accent) 80%, #ffffff 20%);
  }
  .jobtrack-subtitle{
    margin:6px 0 0;
    color:var(--text-muted);
    font-size:.98rem;
    line-height:1.6;
  }

  .jobtrack-auth-head,
  .jobtrack-panel-head,
  .jobtrack-dashboard-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    flex-wrap:wrap;
  }
  .jobtrack-auth-actions,
  .jobtrack-panel-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
  }
  .jobtrack-bulk-status{
    display:grid;
    gap:4px;
    min-width:140px;
  }
  .jobtrack-bulk-status .jobtrack-label{
    margin:0;
    font-size:.7rem;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:var(--text-muted);
  }
  .jobtrack-bulk-status .jobtrack-input,
  .jobtrack-bulk-status .jobtrack-select{
    min-width:140px;
  }
  .jobtrack-auth-status{
    padding:12px 16px;
    border-radius:14px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--surface) 92%, #02060c 8%);
    font-size:.98rem;
  }
  .jobtrack-auth-meta{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:12px;
  }
  .jobtrack-meta-label{
    display:block;
    font-size:.82rem;
    text-transform:uppercase;
    letter-spacing:.18em;
    color:var(--text-muted);
  }
  .jobtrack-meta-value{
    display:block;
    font-weight:600;
    margin-top:4px;
  }
  .jobtrack-note{
    margin:0;
    color:var(--text-muted);
    font-size:.92rem;
  }
  .jobtrack-overview-grid{
    display:grid;
    gap:14px;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  }
  .jobtrack-overview-item{
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 22%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #050b12 8%);
    border-radius:16px;
    padding:14px 16px;
    text-align:left;
    display:grid;
    gap:6px;
    cursor:pointer;
    color:var(--text-light);
    font-family:inherit;
    transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease;
  }
  .jobtrack-overview-item:hover{
    transform:translateY(-2px);
    border-color:color-mix(in srgb,var(--jobtrack-accent) 45%, transparent);
    box-shadow:0 18px 28px rgba(0,0,0,.32);
  }
  .jobtrack-overview-item:focus-visible{
    outline:2px solid color-mix(in srgb,var(--jobtrack-accent) 70%, #ffffff 30%);
    outline-offset:3px;
  }
  .jobtrack-overview-title{
    font-weight:600;
  }
  .jobtrack-overview-copy{
    color:var(--text-muted);
    font-size:.9rem;
    line-height:1.5;
  }

  .jobtrack-entry-grid{
    display:grid;
    gap:clamp(18px,3vw,28px);
    grid-template-columns:minmax(0,1fr);
  }

  .jobtrack-segmented{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    padding:6px;
    border-radius:999px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 24%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 88%, #050b12 12%);
  }
  .jobtrack-segmented-option{
    position:relative;
    display:flex;
    align-items:center;
    gap:8px;
    padding:6px 16px;
    border-radius:999px;
    font-weight:600;
    color:var(--text-muted);
    cursor:pointer;
    transition:background .2s ease,color .2s ease;
  }
  .jobtrack-segmented-input{
    position:absolute;
    opacity:0;
    pointer-events:none;
  }
  .jobtrack-segmented-input:focus-visible + span{
    outline:2px solid color-mix(in srgb,var(--jobtrack-accent) 70%, #ffffff 30%);
    outline-offset:4px;
    border-radius:999px;
  }
  .jobtrack-segmented-input:checked + span{
    color:color-mix(in srgb,var(--text-light) 96%, #ffffff 4%);
  }
  .jobtrack-segmented-option span{
    display:block;
    padding:6px 10px;
    border-radius:999px;
  }
  .jobtrack-segmented-input:checked + span{
    background:color-mix(in srgb,var(--jobtrack-accent) 30%, transparent);
  }

  .jobtrack-form{
    display:grid;
    gap:14px;
  }
  .jobtrack-form[data-entry-type="application"] [data-jobtrack-entry="prospect"]{
    display:none;
  }
  .jobtrack-form[data-entry-type="prospect"] [data-jobtrack-entry="application"]{
    display:none;
  }
  .jobtrack-form-section{
    display:grid;
    gap:12px;
  }
  .jobtrack-section-head{
    display:grid;
    gap:6px;
  }
  .jobtrack-form-grid{
    display:grid;
    gap:14px;
    grid-template-columns:minmax(0,1fr);
  }
  @media (min-width: 840px) {
    .jobtrack-form-grid{
      grid-template-columns:repeat(2, minmax(0, 1fr));
    }
  }
  .jobtrack-field{
    display:grid;
    gap:6px;
  }
  .jobtrack-field-wide{
    grid-column:1 / -1;
  }
  .jobtrack-label{
    font-weight:600;
    font-size:.95rem;
  }
  .jobtrack-required{
    margin-left:6px;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:var(--text-muted);
  }
  .jobtrack-input,
  .jobtrack-select,
  .jobtrack-textarea{
    width:100%;
    box-sizing:border-box;
    border-radius:12px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 22%, transparent);
    background:color-mix(in srgb,var(--surface) 90%, #050b12 10%);
    color:var(--text-light);
    padding:10px 12px;
    font-size:.98rem;
    font-family:inherit;
  }
  .jobtrack-textarea{
    resize:vertical;
    min-height:110px;
  }
  .jobtrack-file-input{
    padding:8px 12px;
    box-sizing:border-box;
  }
  .jobtrack-prompt-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin-top:8px;
  }
  .jobtrack-prompt-action{
    padding:6px 10px;
    font-size:.82rem;
  }
  .jobtrack-file-input::file-selector-button{
    margin-right:10px;
    border:0;
    border-radius:999px;
    padding:6px 12px;
    background:linear-gradient(135deg,
      color-mix(in srgb,var(--jobtrack-accent) 85%, #ffffff 15%),
      color-mix(in srgb,var(--jobtrack-accent-strong) 85%, #0b141b 15%));
    color:var(--text-light);
    font-weight:600;
    cursor:pointer;
  }
  .jobtrack-file-input::-webkit-file-upload-button{
    margin-right:10px;
    border:0;
    border-radius:999px;
    padding:6px 12px;
    background:linear-gradient(135deg,
      color-mix(in srgb,var(--jobtrack-accent) 85%, #ffffff 15%),
      color-mix(in srgb,var(--jobtrack-accent-strong) 85%, #0b141b 15%));
    color:var(--text-light);
    font-weight:600;
    cursor:pointer;
  }
  .jobtrack-help{
    margin:0;
    color:var(--text-muted);
    font-size:.9rem;
    line-height:1.5;
  }
  .jobtrack-checkbox{
    display:flex;
    align-items:center;
    gap:8px;
    font-size:.9rem;
    color:var(--text-muted);
  }
  .jobtrack-checkbox-input{
    accent-color:var(--jobtrack-accent);
  }
  .jobtrack-input:focus,
  .jobtrack-select:focus,
  .jobtrack-textarea:focus{
    outline:2px solid color-mix(in srgb,var(--jobtrack-accent) 70%, #ffffff 30%);
    outline-offset:2px;
  }
  .jobtrack-form-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
  }
  .jobtrack-form-status{
    margin:0;
    color:var(--text-muted);
    font-size:.92rem;
  }
  .jobtrack-draft-status{
    margin:0;
    color:var(--text-muted);
    font-size:.85rem;
  }
  .jobtrack-form-details{
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
    padding:0;
    overflow:hidden;
  }
  .jobtrack-form-summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:10px;
    padding:14px 16px;
    font-weight:600;
    color:var(--text-light);
  }
  .jobtrack-form-summary::-webkit-details-marker{
    display:none;
  }
  .jobtrack-form-summary::after{
    content:'+';
    margin-left:auto;
    opacity:.7;
  }
  .jobtrack-form-details[open] .jobtrack-form-summary{
    border-bottom:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
  }
  .jobtrack-form-details[open] .jobtrack-form-summary::after{
    content:'-';
  }
  .jobtrack-form-details .jobtrack-form-grid{
    padding:14px 16px 16px;
  }
  .jobtrack-form-status[data-tone="error"]{
    color:var(--danger);
  }
  .jobtrack-form-status[data-tone="success"]{
    color:var(--success);
  }

  .jobtrack-import{
    margin-top:18px;
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
    overflow:hidden;
  }
  .jobtrack-import-summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:10px;
    padding:14px 16px;
    font-weight:600;
    color:var(--text-light);
  }
  .jobtrack-import-summary::-webkit-details-marker{
    display:none;
  }
  .jobtrack-import-summary::after{
    content:'+';
    margin-left:8px;
    opacity:.7;
  }
  .jobtrack-import[open] .jobtrack-import-summary{
    border-bottom:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
  }
  .jobtrack-import[open] .jobtrack-import-summary::after{
    content:'-';
  }
  .jobtrack-import-summary-note{
    margin-left:auto;
    font-size:.78rem;
    color:var(--text-muted);
    font-weight:500;
    letter-spacing:.04em;
    text-transform:uppercase;
  }
  .jobtrack-import-body{
    padding:14px 16px 16px;
    display:grid;
    gap:12px;
  }

  .jobtrack-list-card{
    max-width:100%;
  }
  .jobtrack-list-card > *{
    min-width:0;
  }
  .jobtrack-entry-view{
    min-width:0;
    max-width:100%;
    overflow-x:hidden;
  }
  .jobtrack-table-scroll{
    overflow-x:auto;
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
  }
  .jobtrack-table{
    min-width:2000px;
    display:grid;
    gap:0;
  }
  .jobtrack-table-head,
  .jobtrack-table-row{
    display:grid;
    grid-template-columns:48px 120px 180px 200px 140px 190px 170px 130px 170px 150px 150px 160px 170px;
    align-items:center;
  }
  .jobtrack-table-head{
    position:sticky;
    top:0;
    z-index:1;
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #050b12 8%);
    border-bottom:1px solid color-mix(in srgb,var(--jobtrack-accent) 20%, transparent);
  }
  .jobtrack-table-cell{
    padding:10px 12px;
    font-size:.86rem;
    color:var(--text-muted);
    border-right:1px solid color-mix(in srgb,var(--jobtrack-accent) 12%, transparent);
    min-width:0;
    box-sizing:border-box;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-table-cell:last-child{
    border-right:0;
  }
  .jobtrack-table-header{
    background:transparent;
    border:0;
    text-align:left;
    font-weight:600;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.12em;
    color:color-mix(in srgb,var(--text-light) 85%, #ffffff 15%);
    cursor:pointer;
    white-space:nowrap;
  }
  .jobtrack-table-select{
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:default;
  }
  .jobtrack-table-select .jobtrack-checkbox{
    margin:0;
  }
  .jobtrack-table-select .jobtrack-checkbox-input{
    cursor:pointer;
  }
  .jobtrack-table-header::after{
    content:'';
    margin-left:6px;
    font-size:.75rem;
    opacity:.6;
  }
  .jobtrack-table-header[aria-sort="ascending"]::after{
    content:'▲';
  }
  .jobtrack-table-header[aria-sort="descending"]::after{
    content:'▼';
  }
  .jobtrack-table-body{
    display:grid;
  }
  .jobtrack-table-row{
    border-bottom:1px solid color-mix(in srgb,var(--jobtrack-accent) 12%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 94%, #01060c 6%);
  }
  .jobtrack-table-row[data-jobtrack-row]{
    cursor:pointer;
  }
  .jobtrack-table-row[data-jobtrack-row]:hover{
    background:color-mix(in srgb,var(--jobtrack-surface) 88%, #030812 12%);
  }
  .jobtrack-table-row[data-jobtrack-row]:focus-visible{
    outline:2px solid color-mix(in srgb,var(--jobtrack-accent) 60%, #ffffff 40%);
    outline-offset:-2px;
  }
  .jobtrack-table-row:last-child{
    border-bottom:0;
  }
  .jobtrack-table-row .jobtrack-table-cell{
    color:var(--text-light);
    font-size:.86rem;
  }
  .jobtrack-table-actions{
    display:grid;
    gap:8px;
    min-width:0;
  }
  .jobtrack-table-actions-row{
    display:flex;
    gap:6px;
    flex-wrap:wrap;
    min-width:0;
  }
  .jobtrack-selected-count{
    font-size:.85rem;
    color:var(--text-muted);
  }
  .jobtrack-entry-count{
    font-size:.85rem;
    color:var(--text-muted);
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-scroll{
    overflow-x:visible;
    border:0;
    background:transparent;
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table{
    min-width:0;
    gap:14px;
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-head{
    display:none;
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-row{
    grid-template-columns:1fr;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    border-radius:16px;
    padding:12px;
    background:color-mix(in srgb,var(--jobtrack-surface) 94%, #02060c 6%);
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-cell{
    border-right:0;
    padding:8px 6px;
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:12px;
    border-bottom:1px dashed color-mix(in srgb,var(--jobtrack-accent) 12%, transparent);
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-cell::before{
    content:attr(data-label);
    font-size:.68rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--text-muted);
    flex:0 0 auto;
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-cell[data-cell="select"]::before,
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-cell[data-cell="actions"]::before{
    content:'';
  }
  .jobtrack-entry-view[data-view="cards"] .jobtrack-table-cell:last-child{
    border-bottom:0;
  }
  .jobtrack-progress-summary{
    margin:10px 0 0;
    color:var(--text-muted);
    font-size:.9rem;
  }
  .jobtrack-entries-toolbar{
    position:sticky;
    top:1rem;
    z-index:5;
    display:grid;
    gap:14px;
    max-width:100%;
    padding:14px;
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #050b12 8%);
    box-shadow:0 14px 26px rgba(0,0,0,.28);
  }
  .jobtrack-saved-views{
    display:grid;
    gap:12px;
    padding:14px;
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #050b12 8%);
    box-shadow:0 14px 26px rgba(0,0,0,.28);
  }
  .jobtrack-saved-views-main{
    display:grid;
    gap:12px;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  }
  .jobtrack-saved-views-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
  }
  .jobtrack-entries-toolbar-main{
    display:grid;
    gap:12px;
    min-width:0;
  }
  .jobtrack-entries-toolbar-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:flex-end;
    min-width:0;
    max-width:100%;
  }
  .jobtrack-followup-list{
    display:grid;
    gap:12px;
  }
  .jobtrack-followup-item{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    justify-content:space-between;
    align-items:center;
    padding:12px 14px;
    border-radius:14px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 94%, #03080f 6%);
  }
  .jobtrack-followup-item[data-tone="danger"]{
    border-color:color-mix(in srgb,#ff6b6b 55%, transparent);
    background:color-mix(in srgb,#ff6b6b 10%, var(--jobtrack-surface) 90%);
  }
  .jobtrack-followup-item[data-tone="warning"]{
    border-color:color-mix(in srgb,#f7c948 55%, transparent);
    background:color-mix(in srgb,#f7c948 10%, var(--jobtrack-surface) 90%);
  }
  .jobtrack-followup-title{
    font-weight:600;
    color:var(--text-light);
  }
  .jobtrack-followup-meta{
    font-size:.85rem;
    color:var(--text-muted);
  }
  .jobtrack-followup-actions{
    display:flex;
    gap:8px;
    flex-wrap:wrap;
  }
  .jobtrack-tag-list{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
  }
  .jobtrack-tag{
    font-size:.72rem;
    padding:4px 8px;
    border-radius:999px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 25%, transparent);
    background:color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    color:color-mix(in srgb,var(--text-light) 90%, #ffffff 10%);
    letter-spacing:.02em;
  }
  .jobtrack-custom-fields{
    display:grid;
    gap:10px;
    padding:12px;
    border-radius:14px;
    border:1px dashed color-mix(in srgb,var(--jobtrack-accent) 30%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 94%, #03080f 6%);
  }
  .jobtrack-custom-fields-head{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
  }
  .jobtrack-custom-fields-list{
    display:grid;
    gap:8px;
  }
  .jobtrack-custom-field-row{
    display:grid;
    grid-template-columns:minmax(140px,1fr) minmax(160px,1fr) auto;
    gap:8px;
    align-items:center;
  }
  @media (max-width: 720px) {
    .jobtrack-custom-field-row{
      grid-template-columns:1fr;
      justify-items:stretch;
    }
  }
  .jobtrack-funnel{
    display:grid;
    gap:10px;
  }
  .jobtrack-funnel-row{
    display:grid;
    gap:6px;
  }
  .jobtrack-funnel-meta{
    display:flex;
    justify-content:space-between;
    align-items:center;
    font-size:.86rem;
    color:var(--text-light);
  }
  .jobtrack-funnel-bar{
    position:relative;
    height:10px;
    border-radius:999px;
    background:color-mix(in srgb,var(--jobtrack-surface) 84%, #0a1118 16%);
    overflow:hidden;
  }
  .jobtrack-funnel-bar span{
    position:absolute;
    inset:0;
    width:0;
    border-radius:999px;
    background:linear-gradient(90deg,
      color-mix(in srgb,var(--jobtrack-accent) 70%, #ffffff 30%),
      color-mix(in srgb,var(--jobtrack-accent-strong) 70%, #02060c 30%));
  }
  .jobtrack-funnel-conversions{
    display:grid;
    gap:6px;
    font-size:.82rem;
    color:var(--text-muted);
  }
  .jobtrack-funnel-conversion{
    padding:6px 8px;
    border-radius:10px;
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 12%, transparent);
  }
  .jobtrack-time-table{
    display:grid;
    gap:8px;
  }
  .jobtrack-time-row{
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:12px;
    align-items:center;
    padding:8px 10px;
    border-radius:12px;
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 14%, transparent);
    font-size:.86rem;
  }
  .jobtrack-time-row span{
    color:var(--text-muted);
  }
  .jobtrack-time-row strong{
    color:var(--text-light);
    font-weight:600;
  }
  .jobtrack-entries-toolbar-actions .jobtrack-field{
    flex:1 1 220px;
    min-width:0;
  }
  @media (min-width: 980px) {
    .jobtrack-entries-toolbar{
      grid-template-columns:minmax(0,1fr) minmax(0, 440px);
      align-items:end;
    }
    .jobtrack-entries-toolbar-actions{
      justify-content:flex-end;
    }
  }
  .jobtrack-status-legend{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px;
    font-size:.78rem;
    color:var(--text-muted);
  }
  .jobtrack-legend-label{
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--text-muted);
  }
  .jobtrack-status-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:3px 8px;
    border-radius:999px;
    font-size:.7rem;
    font-weight:600;
    letter-spacing:.05em;
    text-transform:uppercase;
    border:1px solid transparent;
    color:color-mix(in srgb,var(--text-light) 96%, #ffffff 4%);
    background:color-mix(in srgb,var(--jobtrack-accent) 28%, transparent);
  }
  .jobtrack-status-pill[data-tone="applied"]{
    background:color-mix(in srgb,var(--jobtrack-accent) 28%, transparent);
  }
  .jobtrack-status-pill[data-tone="screening"]{
    background:color-mix(in srgb,#F0B429 28%, transparent);
    border-color:color-mix(in srgb,#F0B429 45%, transparent);
  }
  .jobtrack-status-pill[data-tone="interview"]{
    background:color-mix(in srgb,#38BDF8 26%, transparent);
    border-color:color-mix(in srgb,#38BDF8 45%, transparent);
  }
  .jobtrack-status-pill[data-tone="offer"]{
    background:color-mix(in srgb,#22C55E 28%, transparent);
    border-color:color-mix(in srgb,#22C55E 45%, transparent);
  }
  .jobtrack-status-pill[data-tone="rejected"]{
    background:color-mix(in srgb,#F97316 28%, transparent);
    border-color:color-mix(in srgb,#F97316 45%, transparent);
  }
  .jobtrack-status-pill[data-tone="withdrawn"]{
    background:color-mix(in srgb,var(--text-muted) 26%, transparent);
    border-color:color-mix(in srgb,var(--text-muted) 35%, transparent);
  }
  .jobtrack-status-pill[data-tone="active"]{
    background:color-mix(in srgb,#60A5FA 26%, transparent);
    border-color:color-mix(in srgb,#60A5FA 40%, transparent);
  }
  .jobtrack-status-pill[data-tone="interested"]{
    background:color-mix(in srgb,#14B8A6 26%, transparent);
    border-color:color-mix(in srgb,#14B8A6 40%, transparent);
  }
  .jobtrack-status-pill[data-tone="inactive"]{
    background:color-mix(in srgb,var(--text-muted) 26%, transparent);
    border-color:color-mix(in srgb,var(--text-muted) 35%, transparent);
  }
  .jobtrack-filter-details,
  .jobtrack-bulk-details{
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
    overflow:hidden;
  }
  .jobtrack-filter-summary,
  .jobtrack-bulk-summary{
    list-style:none;
    cursor:pointer;
    display:flex;
    align-items:center;
    gap:10px;
    padding:14px 16px;
    font-weight:600;
    color:var(--text-light);
  }
  .jobtrack-filter-summary::-webkit-details-marker,
  .jobtrack-bulk-summary::-webkit-details-marker{
    display:none;
  }
  .jobtrack-filter-summary::after,
  .jobtrack-bulk-summary::after{
    content:'+';
    margin-left:auto;
    opacity:.7;
  }
  .jobtrack-filter-details[open] .jobtrack-filter-summary,
  .jobtrack-bulk-details[open] .jobtrack-bulk-summary{
    border-bottom:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
  }
  .jobtrack-filter-details[open] .jobtrack-filter-summary::after,
  .jobtrack-bulk-details[open] .jobtrack-bulk-summary::after{
    content:'-';
  }
  .jobtrack-filter-details .jobtrack-filter{
    padding:14px 16px 16px;
  }
  .jobtrack-bulk-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    padding:14px 16px 16px;
    align-items:flex-end;
  }
  .jobtrack-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:3px 8px;
    border-radius:999px;
    font-size:.7rem;
    font-weight:600;
    letter-spacing:.05em;
    text-transform:uppercase;
    background:color-mix(in srgb,var(--jobtrack-accent) 28%, transparent);
    color:color-mix(in srgb,var(--text-light) 96%, #ffffff 4%);
    white-space:nowrap;
  }
  .jobtrack-pill[data-tone="prospect"]{
    background:color-mix(in srgb,var(--jobtrack-accent) 12%, var(--jobtrack-surface) 88%);
    color:var(--text-muted);
  }
  .jobtrack-action-pill{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:4px 10px;
    border-radius:999px;
    font-size:.72rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.06em;
    background:color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    color:var(--text-light);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 28%, transparent);
    white-space:nowrap;
  }
  .jobtrack-action-pill[data-tone="warning"]{
    background:color-mix(in srgb,#F0B429 22%, transparent);
    border-color:color-mix(in srgb,#F0B429 45%, transparent);
  }
  .jobtrack-action-pill[data-tone="danger"]{
    background:color-mix(in srgb,#F97316 22%, transparent);
    border-color:color-mix(in srgb,#F97316 45%, transparent);
  }
  .jobtrack-action-pill[data-tone="success"]{
    background:color-mix(in srgb,#22C55E 22%, transparent);
    border-color:color-mix(in srgb,#22C55E 45%, transparent);
  }
  .jobtrack-action-pill[data-tone="muted"]{
    background:color-mix(in srgb,var(--text-muted) 18%, transparent);
    border-color:color-mix(in srgb,var(--text-muted) 30%, transparent);
    color:var(--text-muted);
  }
  .jobtrack-table-example{
    opacity:.7;
  }
  .jobtrack-table-empty{
    padding:16px;
    color:var(--text-muted);
  }
  .jobtrack-import-actions{
    display:grid;
    gap:12px;
  }
  .jobtrack-import-field{
    display:grid;
    gap:6px;
  }
  .jobtrack-import-buttons{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
  }
  .jobtrack-import-progress{
    display:grid;
    gap:6px;
  }
  .jobtrack-import-progress[data-state="hidden"]{
    display:none;
  }
  .jobtrack-import-progress-label{
    font-size:.82rem;
    color:var(--text-muted);
  }
  .jobtrack-import-progress-bar{
    width:100%;
    height:10px;
    accent-color:var(--jobtrack-accent);
  }
  .jobtrack-undo-banner{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:center;
    padding:12px 14px;
    border-radius:12px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
  }
  .jobtrack-undo-banner[data-state="hidden"]{
    display:none;
  }
  .jobtrack-undo-message{
    flex:1;
    font-size:.9rem;
    color:var(--text-muted);
  }

  .jobtrack-recent-list{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:12px;
  }
  .jobtrack-recent-item{
    padding:12px 14px;
    border-radius:14px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--surface) 92%, #02060c 8%);
    display:grid;
    gap:6px;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-recent-title{
    font-weight:600;
    font-size:1rem;
  }
  .jobtrack-recent-meta{
    color:var(--text-muted);
    font-size:.9rem;
  }
  .jobtrack-prospect-list{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:16px;
  }
  .jobtrack-prospect-item{
    padding:16px 18px;
    border-radius:18px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 28%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #02060c 8%);
    display:grid;
    gap:8px;
    overflow-wrap:anywhere;
    word-break:break-word;
    box-shadow:0 16px 28px rgba(0,0,0,.28);
  }
  .jobtrack-prospect-title{
    font-weight:600;
    font-size:1rem;
    min-width:0;
  }
  .jobtrack-prospect-head{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
  }
  .jobtrack-prospect-index{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:10px;
    font-weight:700;
    color:color-mix(in srgb,#ffffff 90%, var(--bg) 10%);
    background:linear-gradient(135deg,
      color-mix(in srgb,var(--jobtrack-accent) 80%, #ffffff 20%),
      color-mix(in srgb,var(--jobtrack-accent-strong) 70%, #0b141b 30%));
    box-shadow:0 10px 18px rgba(0,0,0,.25);
  }
  .jobtrack-prospect-posted{
    margin-left:auto;
    font-size:.8rem;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.12em;
    padding:4px 10px;
    border-radius:999px;
    color:color-mix(in srgb,var(--text-light) 96%, #ffffff 4%);
    background:color-mix(in srgb,var(--jobtrack-accent) 26%, transparent);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 32%, transparent);
  }
  .jobtrack-prospect-meta{
    color:var(--text-muted);
    font-size:.9rem;
  }
  .jobtrack-prospect-link{
    font-size:.9rem;
    color:color-mix(in srgb,var(--jobtrack-accent) 85%, #ffffff 15%);
    text-decoration:underline;
    text-decoration-thickness:2px;
    text-underline-offset:3px;
  }
  .jobtrack-prospect-notes{
    margin:0;
    color:var(--text-muted);
    font-size:.9rem;
    line-height:1.5;
  }
  .jobtrack-prospect-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .jobtrack-prospect-action{
    padding:6px 10px;
    font-size:.85rem;
  }
  .jobtrack-prospect-review-list{
    display:grid;
    gap:12px;
  }
  .jobtrack-prospect-apply{
    margin-top:8px;
    padding-top:10px;
    border-top:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    display:grid;
    gap:10px;
  }
  .jobtrack-prospect-apply summary{
    list-style:none;
    display:flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
    font-weight:600;
    color:var(--text-light);
  }
  .jobtrack-prospect-apply summary::-webkit-details-marker{
    display:none;
  }
  .jobtrack-prospect-apply summary::after{
    content:'+';
    margin-left:auto;
    opacity:.7;
  }
  .jobtrack-prospect-apply[open] summary::after{
    content:'-';
  }
  .jobtrack-prospect-apply-form{
    display:grid;
    gap:10px;
  }
  .jobtrack-prospect-apply-fields{
    display:grid;
    gap:10px;
    grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));
  }
  .jobtrack-prospect-apply-actions{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
  }
  .jobtrack-prospect-empty{
    color:var(--text-muted);
    font-size:.95rem;
  }
  .jobtrack-recent-attachments{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .jobtrack-recent-actions{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
  }
  .jobtrack-attachment-btn{
    padding:6px 10px;
    font-size:.85rem;
  }
  .jobtrack-recent-action{
    padding:6px 10px;
    font-size:.85rem;
  }
  .jobtrack-recent-empty{
    color:var(--text-muted);
    font-size:.95rem;
  }

  .jobtrack-dashboard-head{
    gap:24px;
  }
  .jobtrack-insights-panel{
    gap:16px;
  }
  .jobtrack-insight-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:14px;
  }
  .jobtrack-kpi-meta{
    margin:0;
    font-size:.82rem;
    color:var(--text-muted);
  }
  .jobtrack-filter{
    display:grid;
    gap:12px;
    align-items:end;
    grid-template-columns:minmax(0,1fr);
  }
  @media (min-width: 720px) {
    .jobtrack-filter{
      grid-template-columns:repeat(2, minmax(0, 1fr));
    }
  }
  @media (min-width: 980px) {
    .jobtrack-filter{
      grid-template-columns:repeat(2, minmax(0, 1fr));
    }
  }
  @media (min-width: 980px) {
    .jobtrack-filter-entries{
      grid-template-columns:repeat(3, minmax(0, 1fr));
    }
  }
  .jobtrack-filter-actions{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    align-items:center;
  }

  .jobtrack-kpi-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
    gap:clamp(12px,2vw,16px);
  }
  .jobtrack-kpi{
    padding:16px;
    border-radius:16px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--surface) 92%, #01060c 8%);
    display:grid;
    gap:8px;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-kpi-label{
    margin:0;
    color:var(--text-muted);
    font-size:.88rem;
    text-transform:uppercase;
    letter-spacing:.14em;
  }
  .jobtrack-kpi-value{
    margin:0;
    font-family:'Poppins',sans-serif;
    font-size:clamp(1.6rem,2.8vw,2.1rem);
    font-weight:600;
    color:var(--text-light);
  }

  .jobtrack-panels{
    display:grid;
    gap:clamp(18px,3vw,24px);
    grid-template-columns:minmax(0,1fr);
  }
  @media (min-width: 980px) {
    .jobtrack-panels{
      grid-template-columns:repeat(2,minmax(0,1fr));
    }
  }
  .jobtrack-panel{
    display:grid;
    gap:12px;
    padding:16px;
    border-radius:18px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    background:color-mix(in srgb,var(--surface) 94%, #02060c 6%);
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-panel h3{
    margin:0;
    font-size:1.05rem;
  }
  .jobtrack-panel-subtitle{
    margin:6px 0 0;
    color:var(--text-muted);
    font-size:.9rem;
  }
  .jobtrack-panel-meta{
    font-size:.88rem;
    color:var(--text-muted);
  }

  .jobtrack-chart{
    position:relative;
    min-height:220px;
  }
  .jobtrack-chart canvas{
    width:100% !important;
    height:220px !important;
  }
  .jobtrack-chart-overlay{
    position:absolute;
    inset:0;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:.95rem;
    color:var(--text-muted);
    background:color-mix(in srgb,var(--surface) 80%, transparent);
    border-radius:14px;
  }
  .jobtrack-chart-overlay[data-state="hidden"]{
    display:none;
  }

  .jobtrack-calendar-panel{
    gap:16px;
  }
  .jobtrack-calendar-shell{
    --jobtrack-calendar-cell:16px;
    --jobtrack-calendar-gap:6px;
    --jobtrack-calendar-month-gap:18px;
    --jobtrack-calendar-block-width:calc(var(--jobtrack-calendar-cell) * 7 + var(--jobtrack-calendar-gap) * 6);
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:auto 1fr;
    row-gap:8px;
    overflow-x:auto;
    padding-bottom:4px;
  }
  .jobtrack-calendar-months{
    grid-column:1;
    grid-row:1;
    display:flex;
    gap:var(--jobtrack-calendar-month-gap);
    font-size:.72rem;
    color:var(--text-muted);
    min-height:16px;
    width:max-content;
  }
  .jobtrack-calendar-month{
    flex:0 0 var(--jobtrack-calendar-block-width);
    text-transform:uppercase;
    letter-spacing:.12em;
    font-size:.68rem;
  }
  .jobtrack-calendar{
    grid-column:1;
    grid-row:2;
    display:flex;
    gap:var(--jobtrack-calendar-month-gap);
    align-items:flex-start;
    width:max-content;
  }
  .jobtrack-calendar-month-block{
    flex:0 0 var(--jobtrack-calendar-block-width);
    display:grid;
  }
  .jobtrack-calendar-month-grid{
    display:grid;
    grid-template-columns:repeat(7, var(--jobtrack-calendar-cell));
    grid-auto-rows:var(--jobtrack-calendar-cell);
    gap:var(--jobtrack-calendar-gap);
    padding:2px;
  }
  .jobtrack-calendar-day{
    width:var(--jobtrack-calendar-cell);
    height:var(--jobtrack-calendar-cell);
    border-radius:3px;
    background:var(--jobtrack-heat-0);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 8%, transparent);
    box-sizing:border-box;
    cursor:pointer;
  }
  .jobtrack-calendar-day[data-empty="true"]{
    background:transparent;
    border-color:transparent;
    cursor:default;
    pointer-events:none;
  }

  .jobtrack-weekday-shell{
    --jobtrack-weekday-cell:22px;
    --jobtrack-weekday-gap:10px;
    display:grid;
    gap:8px;
  }
  .jobtrack-weekday-labels{
    display:grid;
    grid-template-columns:repeat(7, var(--jobtrack-weekday-cell));
    gap:var(--jobtrack-weekday-gap);
    font-size:.72rem;
    color:var(--text-muted);
    text-align:center;
  }
  .jobtrack-weekday-grid{
    display:grid;
    grid-template-columns:repeat(7, var(--jobtrack-weekday-cell));
    gap:var(--jobtrack-weekday-gap);
  }
  .jobtrack-weekday-cell{
    width:var(--jobtrack-weekday-cell);
    height:var(--jobtrack-weekday-cell);
    border-radius:6px;
    background:var(--jobtrack-heat-0);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 8%, transparent);
    box-sizing:border-box;
    cursor:pointer;
  }
  .jobtrack-weekday-cell[data-intensity="1"]{background:var(--jobtrack-heat-1);}
  .jobtrack-weekday-cell[data-intensity="2"]{background:var(--jobtrack-heat-2);}
  .jobtrack-weekday-cell[data-intensity="3"]{background:var(--jobtrack-heat-3);}
  .jobtrack-weekday-cell[data-intensity="4"]{background:var(--jobtrack-heat-4);}
  .jobtrack-calendar-day[data-intensity="1"]{background:var(--jobtrack-heat-1);}
  .jobtrack-calendar-day[data-intensity="2"]{background:var(--jobtrack-heat-2);}
  .jobtrack-calendar-day[data-intensity="3"]{background:var(--jobtrack-heat-3);}
  .jobtrack-calendar-day[data-intensity="4"]{background:var(--jobtrack-heat-4);}

  .jobtrack-calendar-legend{
    display:flex;
    align-items:center;
    gap:8px;
    justify-content:flex-end;
    font-size:.85rem;
    color:var(--text-muted);
  }
  .jobtrack-legend-swatches{
    display:flex;
    gap:6px;
  }
  .jobtrack-legend-swatches span{
    width:14px;
    height:14px;
    border-radius:3px;
    background:var(--jobtrack-heat-0);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 8%, transparent);
    box-sizing:border-box;
  }
  .jobtrack-legend-swatches span[data-intensity="1"]{background:var(--jobtrack-heat-1);}
  .jobtrack-legend-swatches span[data-intensity="2"]{background:var(--jobtrack-heat-2);}
  .jobtrack-legend-swatches span[data-intensity="3"]{background:var(--jobtrack-heat-3);}
  .jobtrack-legend-swatches span[data-intensity="4"]{background:var(--jobtrack-heat-4);}

  .jobtrack-dashboard-status{
    margin:0;
    color:var(--text-muted);
    font-size:.95rem;
  }
  .jobtrack-dashboard-status[data-tone="error"]{
    color:var(--danger);
  }
  .jobtrack-dashboard-status[data-tone="success"]{
    color:var(--success);
  }

  .jobtrack-map{
    width:100%;
    min-height:220px;
    display:block;
    overflow:visible;
  }
  .jobtrack-map-svg{
    width:100%;
    height:auto;
    display:block;
  }
  .jobtrack-map-placeholder{
    color:var(--text-muted);
    font-size:.95rem;
  }
  .jobtrack-map-svg .state path,
  .jobtrack-map-svg .state circle{
    fill:var(--jobtrack-heat-0);
    stroke:color-mix(in srgb,var(--jobtrack-accent) 18%, transparent);
    stroke-width:1;
    transition:fill .2s ease;
    cursor:pointer;
  }
  .jobtrack-map-svg .state path:hover,
  .jobtrack-map-svg .state circle:hover{
    stroke:color-mix(in srgb,var(--jobtrack-accent) 65%, transparent);
    stroke-width:1.5;
  }
  .jobtrack-map-svg .state path:focus,
  .jobtrack-map-svg .state circle:focus,
  .jobtrack-map-svg .state path:focus-visible,
  .jobtrack-map-svg .state circle:focus-visible{
    outline:none;
    stroke:color-mix(in srgb,var(--jobtrack-accent) 65%, transparent);
    stroke-width:1.5;
  }
  .jobtrack-map-svg .state path[data-intensity="1"],
  .jobtrack-map-svg .state circle[data-intensity="1"]{fill:var(--jobtrack-heat-1);}
  .jobtrack-map-svg .state path[data-intensity="2"],
  .jobtrack-map-svg .state circle[data-intensity="2"]{fill:var(--jobtrack-heat-2);}
  .jobtrack-map-svg .state path[data-intensity="3"],
  .jobtrack-map-svg .state circle[data-intensity="3"]{fill:var(--jobtrack-heat-3);}
  .jobtrack-map-svg .state path[data-intensity="4"],
  .jobtrack-map-svg .state circle[data-intensity="4"]{fill:var(--jobtrack-heat-4);}
  .jobtrack-map-svg .borders,
  .jobtrack-map-svg .separator1{
    stroke:color-mix(in srgb,var(--jobtrack-accent) 24%, transparent);
    stroke-width:1;
  }
  .jobtrack-map-legend{
    justify-content:flex-end;
  }
  .jobtrack-map-meta{
    display:flex;
    justify-content:flex-end;
    font-size:.85rem;
    color:var(--text-muted);
  }
  .jobtrack-map-remote{
    display:inline-flex;
    align-items:center;
    gap:6px;
    cursor:pointer;
  }
  .jobtrack-map-remote::before{
    content:'';
    width:10px;
    height:10px;
    border-radius:999px;
    background:color-mix(in srgb,var(--jobtrack-accent) 55%, transparent);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 25%, transparent);
  }
  .jobtrack-detail-panel{
    background:color-mix(in srgb,var(--jobtrack-surface) 94%, #02060c 6%);
  }
  .jobtrack-detail-body{
    font-size:.95rem;
    color:var(--text-muted);
    display:grid;
    gap:12px;
    max-height:clamp(220px, 34vh, 360px);
    overflow-y:auto;
    overflow-x:hidden;
    padding-right:4px;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-detail-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:6px;
    color:var(--text-light);
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-detail-entries{
    display:grid;
    gap:8px;
  }
  .jobtrack-detail-entries-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:6px;
    font-size:.72rem;
    text-transform:uppercase;
    letter-spacing:.16em;
    color:var(--text-muted);
  }
  .jobtrack-detail-entry-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:8px;
  }
  .jobtrack-detail-entry{
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 16%, transparent);
    border-radius:12px;
    padding:10px 12px;
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #050b12 8%);
    color:var(--text-light);
    text-align:left;
    width:100%;
    display:grid;
    gap:4px;
    font-family:inherit;
    overflow-wrap:anywhere;
    word-break:break-word;
    cursor:pointer;
    transition:border-color .2s ease, transform .2s ease;
  }
  .jobtrack-detail-entry:hover{
    border-color:color-mix(in srgb,var(--jobtrack-accent) 45%, transparent);
    transform:translateY(-1px);
  }
  .jobtrack-detail-entry[disabled]{
    opacity:.6;
    cursor:not-allowed;
    transform:none;
  }
  .jobtrack-detail-entry:focus-visible{
    outline:2px solid color-mix(in srgb,var(--jobtrack-accent) 70%, #ffffff 30%);
    outline-offset:2px;
  }
  .jobtrack-detail-entry-title{
    font-weight:600;
    font-size:.95rem;
  }
  .jobtrack-detail-entry-meta{
    font-size:.85rem;
    color:var(--text-muted);
  }
  .jobtrack-entry-modal .modal-title-strip{
    padding-bottom:18px;
  }
  .jobtrack-modal-subtitle{
    margin:8px 0 0;
    color:var(--text-muted);
    font-size:.95rem;
  }
  .jobtrack-modal-body{
    display:grid;
    gap:18px;
    padding:20px 32px 24px;
  }
  .jobtrack-entry-modal .modal-body,
  .jobtrack-entry-modal .jobtrack-modal-body{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:18px;
    padding:20px 32px 24px;
    width:100%;
  }
  .jobtrack-modal-status{
    padding:0 32px 24px;
  }
  .jobtrack-modal-meta{
    display:grid;
    gap:10px;
  }
  .jobtrack-modal-meta-row{
    display:grid;
    grid-template-columns:minmax(120px, 160px) minmax(0, 1fr);
    gap:10px;
    align-items:start;
  }
  .jobtrack-modal-meta-label{
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.14em;
    color:var(--text-muted);
  }
  .jobtrack-modal-meta-value{
    color:var(--text-light);
    font-size:.95rem;
    min-width:0;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-modal-notes{
    margin:0;
    color:var(--text-light);
    font-size:.95rem;
    line-height:1.6;
    white-space:pre-line;
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-modal-attachments{
    display:grid;
    gap:10px;
  }
  .jobtrack-modal-attachments-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    flex-wrap:wrap;
  }
  .jobtrack-modal-attachments-title{
    font-weight:600;
    font-size:.95rem;
    margin:0;
  }
  .jobtrack-modal-attachment-list{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:8px;
  }
  .jobtrack-modal-attachment{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
    padding:8px 10px;
    border-radius:10px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 16%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #050b12 8%);
  }
  .jobtrack-modal-attachment-info{
    min-width:0;
    display:grid;
    gap:4px;
    flex:1;
  }
  .jobtrack-modal-attachment-name{
    font-size:.9rem;
    color:var(--text-light);
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-modal-attachment-meta{
    display:flex;
    gap:8px;
    align-items:center;
    color:var(--text-muted);
    font-size:.78rem;
    text-transform:uppercase;
    letter-spacing:.08em;
  }
  .jobtrack-modal-attachment-btn{
    padding:6px 10px;
    font-size:.85rem;
    flex-shrink:0;
  }
  .jobtrack-modal-actions{
    display:grid;
    gap:14px;
  }
  .jobtrack-modal-action-row{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
  }
  .jobtrack-modal-status-form{
    display:grid;
    gap:10px;
  }
  .jobtrack-modal-status-fields{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:flex-end;
  }
  .jobtrack-modal-status-btn{
    align-self:flex-end;
  }
  .jobtrack-modal-apply-form{
    display:grid;
    gap:10px;
  }
  .jobtrack-modal-apply-fields{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    align-items:flex-end;
  }
  .jobtrack-modal-apply-btn{
    align-self:flex-end;
  }
  .jobtrack-modal-history{
    display:grid;
    gap:10px;
  }
  .jobtrack-modal-history-list{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:6px;
  }
  .jobtrack-modal-history-item{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:10px;
    padding:8px 10px;
    border-radius:10px;
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 16%, transparent);
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #050b12 8%);
    overflow-wrap:anywhere;
    word-break:break-word;
  }
  .jobtrack-modal-history-status{
    font-size:.9rem;
    font-weight:600;
    color:var(--text-light);
  }
  .jobtrack-modal-history-date{
    font-size:.78rem;
    color:var(--text-muted);
    text-transform:uppercase;
    letter-spacing:.08em;
  }
  .jobtrack-tooltip{
    position:fixed;
    z-index:200;
    max-width:240px;
    padding:8px 10px;
    border-radius:10px;
    background:color-mix(in srgb,var(--jobtrack-surface) 92%, #03070d 8%);
    border:1px solid color-mix(in srgb,var(--jobtrack-accent) 28%, transparent);
    color:var(--text-light);
    font-size:.82rem;
    line-height:1.3;
    white-space:pre-line;
    box-shadow:0 8px 18px rgba(0,0,0,.35);
    pointer-events:none;
    opacity:0;
    transform:translateY(6px);
    transition:opacity .12s ease, transform .12s ease;
  }
  .jobtrack-tooltip[data-state="visible"]{
    opacity:1;
    transform:translateY(0);
  }

  .jobtrack-auth-actions button[disabled],
  .jobtrack-tab[disabled]{
    opacity:.55;
    cursor:not-allowed;
    pointer-events:none;
  }

  @media (prefers-reduced-motion: reduce) {
    .jobtrack-card,
    .jobtrack-step{
      animation:none;
    }
  }
}
