.app{z-index:2;min-height:100vh;color:var(--c-text);font-family:var(--font-instrument-sans), system-ui, sans-serif;position:relative}.app-nav{z-index:10;justify-content:space-between;align-items:center;gap:20px;max-width:980px;margin:0 auto;padding:22px 24px 0;display:flex;position:relative}.app-wordmark{font-family:var(--font-bebas), "Arial Narrow", sans-serif;letter-spacing:2px;color:var(--c-text);white-space:nowrap;font-size:21px;text-decoration:none}.app-nav-links{align-items:center;gap:20px;display:flex}.app-nav-link{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-dim);cursor:pointer;background:0 0;border:none;padding:0;font-size:11.5px;text-decoration:none;transition:color .18s}.app-nav-link:hover,.app-nav-link[aria-current=page]{color:var(--c-text)}.app-body{z-index:10;max-width:980px;margin:0 auto;padding:40px 24px 96px;position:relative}.app-body-narrow{max-width:760px}.app-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;display:flex}.app-title{font-family:var(--font-bebas), "Arial Narrow", sans-serif;letter-spacing:-.025em;text-transform:uppercase;letter-spacing:.012em;margin:0;font-size:clamp(28px,4vw,38px);font-weight:400;line-height:1.05}.app-title-aside{font-family:var(--font-instrument-sans), system-ui, sans-serif;letter-spacing:0;color:var(--c-text-dim);vertical-align:baseline;margin-left:12px;font-size:15px;font-weight:400;display:inline-block}.app-sub{color:var(--c-text-muted);max-width:62ch;margin:10px 0 0;font-size:15px}.app-head-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.app-section-label{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--c-text-dim);margin:0 0 12px;font-size:11px}.app-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:14px;padding:22px}.app-card+.app-card{margin-top:14px}a.app-card{color:inherit;text-decoration:none;transition:border-color .18s,background .18s;display:block}a.app-card:hover{border-color:var(--c-border-strong);background:var(--c-surface-raised)}.app-card-title{font-family:var(--font-instrument-sans), system-ui, sans-serif;letter-spacing:-.015em;color:var(--c-text);margin:0;font-size:18px;font-weight:700}.app-card-meta{color:var(--c-text-muted);margin:5px 0 0;font-size:14px}.app-card-body{color:var(--c-text-muted);margin:14px 0 0;font-size:14.5px;line-height:1.6}.app-card-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.app-btn{font-family:var(--font-instrument-sans), system-ui, sans-serif;border:1px solid var(--c-border-strong);color:var(--c-text);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:15px;font-weight:600;text-decoration:none;transition:border-color .18s,background .18s,color .18s;display:inline-flex}.app-btn:hover{border-color:var(--c-text)}.app-btn:disabled{opacity:.55;cursor:default}.app-btn-primary{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-accent-ink)}.app-btn-primary:hover:not(:disabled){filter:brightness(1.08);border-color:var(--c-accent)}.app-btn-danger{border-color:var(--c-crit);color:var(--c-crit)}.app-btn-danger:hover:not(:disabled){background:var(--c-crit);color:var(--c-accent-ink);border-color:var(--c-crit)}.app-btn-sm{border-radius:9px;padding:7px 13px;font-size:13px}.app-link{color:var(--c-accent-text);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .18s}.app-link:hover{border-bottom-color:var(--c-accent)}.app-pill{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.06em;white-space:nowrap;border:1px solid var(--c-border-strong);color:var(--c-text-muted);border-radius:100px;align-items:center;padding:4px 11px;font-size:11px;display:inline-flex}.app-pill-score{background:var(--c-surface-raised)}.app-pill-score.is-strong{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-accent-ink);font-weight:600}.app-pill-ok{color:var(--c-success);border-color:var(--c-success)}.app-pill-warn{color:var(--c-accent);border-color:var(--c-accent)}.app-tags{flex-wrap:wrap;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.app-tag{font-family:var(--font-jetbrains-mono), monospace;background:var(--c-surface-raised);border:1px solid var(--c-border);color:var(--c-text-muted);border-radius:6px;padding:3px 8px;font-size:11.5px}.app-tag-gap{color:var(--c-accent);border-color:color-mix(in srgb, var(--c-accent) 40%, transparent)}.app-empty{border:1px dashed var(--c-border-strong);text-align:center;color:var(--c-text-muted);border-radius:14px;padding:44px 28px;font-size:15px}.app-label{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text-dim);margin-bottom:7px;font-size:11px;display:block}.app-input,.app-textarea{background:var(--c-surface);border:1px solid var(--c-control-border);width:100%;color:var(--c-text);font-family:var(--font-instrument-sans), system-ui, sans-serif;border-radius:10px;padding:11px 13px;font-size:16px;transition:border-color .18s}.app-input::placeholder,.app-textarea::placeholder{color:var(--c-text-dim)}.app-input:focus,.app-textarea:focus{border-color:var(--c-border-strong);outline:none}.app-textarea{resize:vertical;line-height:1.55}.app-hint{color:var(--c-text-dim);margin:7px 0 0;font-size:13px}.app-error{color:var(--c-crit);margin:8px 0 0;font-size:13.5px}.app-stack{flex-direction:column;gap:14px;display:flex}*+.app-section{margin-top:36px}@media (max-width:640px){.app-nav{flex-wrap:wrap;gap:12px;padding:16px 18px 0}.app-nav-links{gap:14px}.app-body{padding:28px 18px 72px}}.app-nav-link{white-space:nowrap}@media (max-width:560px){.app-nav{flex-direction:column;align-items:flex-start;gap:14px;padding:14px 18px 0}.app-nav-links{scrollbar-width:none;gap:18px;width:100%;padding-bottom:2px;overflow-x:auto}.app-nav-links::-webkit-scrollbar{display:none}}.billing-cols{grid-template-columns:1fr;gap:4px 28px;display:grid}@media (min-width:620px){.billing-cols{grid-template-columns:1fr 1fr}}.billing-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.billing-list li{color:var(--c-text-muted);padding-left:20px;font-size:14.5px;line-height:1.5;position:relative}.billing-list li:before{content:"";background:var(--c-text-dim);border-radius:50%;width:6px;height:6px;position:absolute;top:8px;left:2px}.billing-list-paid li:before{background:var(--c-accent)}.billing-notice{border:1px solid var(--c-border-strong);color:var(--c-text-muted);background:var(--c-surface);border-radius:10px;margin-bottom:24px;padding:13px 16px;font-size:14.5px;line-height:1.55}.billing-notice.is-good{border-color:var(--c-success)}.app-foot{border-top:1px solid var(--c-border);flex-wrap:wrap;gap:20px;margin-top:64px;padding-top:20px;display:flex}.app-foot a{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--c-text-dim);font-size:11px;text-decoration:none;transition:color .18s}.app-foot a:hover{color:var(--c-text)}.app-foot-company{color:var(--c-text-dim);flex-basis:100%;margin:4px 0 0;font-size:12.5px}.job-credit{color:var(--c-text-dim);align-items:center;gap:5px;margin-left:auto;font-size:12.5px;display:inline-flex}.job-credit a{color:var(--c-text-dim);border-bottom:1px solid #0000;text-decoration:none;transition:color .18s,border-color .18s}.job-credit a:hover{color:var(--c-text);border-bottom-color:var(--c-text-dim)}.job-credit-adzuna{min-width:116px;min-height:23px}.job-credit-logo{background:#fff;border-radius:3px;width:auto;height:16px;padding:2px 4px;display:block}.jobfilter-controls{border-bottom:1px solid var(--c-border);flex-wrap:wrap;align-items:center;gap:14px 26px;padding:0 0 12px;display:flex}.jobfilter-score{flex:0 330px;align-items:center;gap:9px;min-width:250px;display:flex}.jobfilter-label{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.14em;text-transform:uppercase;color:var(--c-text-dim);white-space:nowrap;flex:none;margin:0;font-size:10px}.jobfilter-end{font-family:var(--font-jetbrains-mono), monospace;color:var(--c-text-dim);flex:none;font-size:10px}.jobfilter-places,.jobfilter-group{flex:0 auto;align-items:center;gap:10px;min-width:0;display:flex}.jobfilter-range{appearance:none;background:var(--c-border-strong);cursor:pointer;border-radius:2px;outline:none;flex:1;height:4px;margin:0}.jobfilter-range::-webkit-slider-thumb{appearance:none;background:var(--c-accent);border:4px solid var(--c-ground);width:22px;height:22px;box-shadow:0 0 0 1px var(--c-accent);cursor:grab;border-radius:50%}.jobfilter-range::-moz-range-thumb{background:var(--c-accent);border:4px solid var(--c-ground);width:15px;height:15px;box-shadow:0 0 0 1px var(--c-accent);cursor:grab;border-radius:50%}.jobfilter-range:focus-visible{outline:2px solid var(--c-accent);outline-offset:6px}.jobfilter-value{font-family:var(--font-bebas), "Arial Narrow", sans-serif;color:var(--c-accent);text-align:right;font-variant-numeric:tabular-nums;flex:none;min-width:3.4ch;font-size:21px;font-weight:400;line-height:1}.jobfilter-value small{font-family:var(--font-jetbrains-mono), monospace;color:var(--c-text-dim);font-size:11px;font-weight:400}.jobfilter-chips{scrollbar-width:none;gap:8px;padding:2px 0;display:flex;overflow-x:auto}.jobfilter-chips::-webkit-scrollbar{display:none}.jobfilter-chip{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--c-border-strong);color:var(--c-text-dim);cursor:pointer;white-space:nowrap;background:0 0;border-radius:100px;flex:none;padding:8px 14px;font-size:10.5px;transition:border-color .15s,color .15s,background .15s,opacity .15s,transform .15s cubic-bezier(.22,1,.36,1)}.jobfilter-chip:hover:not(:disabled){color:var(--c-text);border-color:var(--c-text-dim);transform:translateY(-1px)}.jobfilter-chip:active:not(:disabled){transform:translateY(0)}.jobfilter-chip:disabled{opacity:.34;cursor:default}.jobfilter-chip[aria-pressed=true]{background:var(--c-accent);border-color:var(--c-accent);color:var(--c-accent-ink);font-weight:700}.jobfilter-chip:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}.jobfilter-n{opacity:.6;margin-left:6px}.jobfilter-summary{color:var(--c-text-dim);text-align:right;flex:auto;min-width:12ch;margin:0;font-size:13px}.jobcard{background:var(--c-surface);border:1px solid var(--c-border);border-radius:14px;flex-direction:column;gap:12px;padding:20px 22px;transition:border-color .28s,box-shadow .28s,translate .22s;display:flex}.jobcard:hover{border-color:var(--c-border-strong);translate:0 -3px}.jobcard-top{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.jobcard-title{letter-spacing:-.005em;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:17px;font-weight:600;line-height:1.28;display:-webkit-box;overflow:hidden}.jobcard-head{flex:1;min-width:0}.jobcard-pay{font-family:var(--font-bebas), "Arial Narrow", sans-serif;letter-spacing:.01em;color:var(--c-text);margin:6px 0 0;font-size:22px;font-weight:400;line-height:1}.jobcard-pay.is-absent{font-family:var(--font-instrument-sans), system-ui, sans-serif;color:var(--c-text-dim);font-size:12.5px}.jobdial{flex:none;width:54px;height:54px;position:relative}.jobdial svg{width:100%;height:100%;display:block;overflow:visible}.jobdial-node{fill:var(--c-line);transition:fill .3s,r .3s}.jobdial-node.is-lit{fill:var(--c-node)}.jobcard:hover .jobdial-node.is-lit{r:2.5}.jobdial-line{fill:none;stroke:var(--c-line);stroke-width:1.1px;stroke-linejoin:round;transition:stroke .3s}.jobdial-num{font-family:var(--font-bebas), "Arial Narrow", sans-serif;color:var(--c-text-dim);justify-content:center;align-items:center;font-size:23px;line-height:1;transition:color .28s;display:flex;position:absolute;inset:0}.jobdial-num small{font-family:var(--font-jetbrains-mono), monospace;color:var(--c-text-dim);margin-left:1px;font-size:9px;font-weight:400}.jobdial.is-strong .jobdial-node.is-lit{fill:var(--c-success)}.jobdial.is-strong .jobdial-line{stroke:var(--c-success)}.jobdial.is-strong .jobdial-num{color:var(--c-success)}.jobdial.is-complete .jobdial-node.is-lit{fill:var(--c-accent)}.jobdial.is-complete .jobdial-line{stroke:var(--c-accent)}.jobdial.is-complete .jobdial-num{color:var(--c-accent)}.joboverlap{margin-top:2px}.joboverlap-label{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-dim);justify-content:space-between;margin-bottom:6px;font-size:10px;display:flex}.joboverlap-label b{color:var(--c-text-muted);font-weight:500}.joboverlap-track{background:var(--c-border);border-radius:2px;height:3px;overflow:hidden}.joboverlap-fill{background:var(--c-line);width:100%;height:100%;transform:scaleX(var(--pct,0));transform-origin:0;border-radius:2px;transition:transform .9s cubic-bezier(.2,.8,.2,1),background .3s}.jobcard:has(.jobdial.is-strong) .joboverlap-fill{background:var(--c-success)}.jobcard:has(.jobdial.is-complete) .joboverlap-fill{background:var(--c-accent)}.jobcard-arrow{transition:transform .2s;display:inline-block}.jobcard:hover .jobcard-arrow{transform:translate(3px)}.jobcard-meta{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.06em;text-transform:uppercase;color:var(--c-text-dim);flex-direction:column;gap:3px;margin:0;font-size:10.5px;display:flex}.jobcard-gaps{color:var(--c-text-dim);margin:2px 0 0;font-size:13.5px}.jobcard-gaps b{color:var(--c-text);font-weight:600}.jobcard-gaps.is-clean b{color:var(--c-accent)}.jobcard-track{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-dim);margin:0;font-size:10px}.jobcard-track span{color:var(--c-text)}.jobcard-cta{flex-wrap:wrap;gap:10px;margin-top:auto;padding-top:6px;display:flex}.jobcard-cta>*{text-align:center;flex:auto}@media (max-width:640px){.jobfilter-controls{gap:22px}}.app-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.jobskel-controls{border-bottom:1px solid var(--c-border);flex-wrap:wrap;gap:30px;padding:4px 0 22px;display:flex}.jobskel-rail{gap:16px;margin-top:26px;display:flex;overflow:hidden}.jobskel-card{background:var(--c-surface);border:1px solid var(--c-border);opacity:.42;border-radius:14px;flex-direction:column;flex:0 0 min(86vw,400px);gap:12px;min-height:232px;padding:20px 21px;display:flex}.jobskel-card:first-child{opacity:1;border-color:var(--c-border-strong)}@media (min-width:620px){.jobskel-card{flex-basis:min(60vw,430px)}}@media (min-width:900px){.jobskel-card{flex-basis:380px}}.jobskel-grow{flex:auto;min-height:12px}.jobskel-bar{background:linear-gradient(90deg, var(--c-border) 0%, var(--c-border-strong) 50%, var(--c-border) 100%);height:12px;animation:1.4s ease-in-out infinite jobskel-shimmer;animation-delay:calc(var(--i,0) * 90ms);background-size:200% 100%;border-radius:5px;display:block}@keyframes jobskel-shimmer{0%{background-position:140% 0}to{background-position:-40% 0}}@keyframes jobcard-in{0%{opacity:0;translate:0 18px}}.jobcard{animation:.42s cubic-bezier(.22,1,.36,1) backwards jobcard-in;animation-delay:calc(var(--i,0) * 45ms)}@media (prefers-reduced-motion:reduce){.jobcard,.jobdial-node,.jobdial-line,.joboverlap-fill,.jobcard-arrow{transition-duration:.01ms!important}.joboverlap-fill{transform:scaleX(var(--pct,0))}.jobcard{opacity:1;will-change:auto;transition:none;animation:none;transform:translate(0,0)}.jobfilter-chip:hover:not(:disabled){transform:none}.jobskel-bar{animation-duration:2.4s}}.trackrows{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.trackrow{border:1px solid var(--c-border);background:var(--c-surface);color:inherit;border-radius:12px;align-items:center;gap:14px;padding:16px 18px;text-decoration:none;transition:border-color .2s,background .2s,transform .2s cubic-bezier(.22,1,.36,1);display:flex}.trackrow:hover{border-color:var(--c-accent);background:var(--c-surface-raised);transform:translate(3px)}.trackrow:focus-visible{outline:2px solid var(--c-accent);outline-offset:2px}.trackrow-name{font-family:var(--font-instrument-sans), system-ui, sans-serif;letter-spacing:-.012em;color:var(--c-text);flex:auto;min-width:0;font-size:17px;font-weight:600;transition:color .2s}.trackrow:hover .trackrow-name{color:var(--c-accent)}.trackrow-meta{font-family:var(--font-jetbrains-mono), monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--c-text-dim);opacity:0;flex:none;font-size:10.5px;transition:opacity .2s}.trackrow:hover .trackrow-meta,.trackrow:focus-visible .trackrow-meta{opacity:1}.trackrow-go{fill:none;width:16px;height:16px;stroke:var(--c-text-dim);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;opacity:.45;flex:none;transition:opacity .2s,stroke .2s,transform .2s cubic-bezier(.22,1,.36,1)}.trackrow:hover .trackrow-go{opacity:1;stroke:var(--c-accent);transform:translate(3px)}@media (prefers-reduced-motion:reduce){.trackrow,.trackrow-go{transition:border-color .2s,color .2s,stroke .2s;transform:none}.trackrow:hover,.trackrow:hover .trackrow-go{transform:none}.trackrow-meta{opacity:1}}.joblist{flex-direction:column;gap:16px;display:flex}.jobcard-skills{margin-top:2px}.jobcard-skills .app-section-label{margin:0 0 8px}.jobcard-skills .app-tags{margin:0}.joblist-more{flex-wrap:wrap;align-items:center;gap:14px;margin-top:22px;display:flex}.joblist-more .jobfilter-summary{margin:0}@media (prefers-reduced-motion:reduce){.jobcard,.jobdial-node,.jobdial-line,.jobcard-arrow{transition-duration:.01ms!important}.jobcard:hover{translate:none}}
