/* Design tokens (dark-first, with flexible accent) */
.octopus-careers{
  --oc-accent: var(--octopus-accent, var(--wp--preset--color--primary, #00e676));
  --oc-text: rgba(255,255,255,.92);
  --oc-muted: rgba(255,255,255,.67);
  --oc-border: rgba(255,255,255,.12);
  --oc-border-soft: rgba(255,255,255,.08);
  --oc-surface: rgba(255,255,255,.06);
  --oc-surface-2: rgba(255,255,255,.08);
  --oc-bg: transparent;
}
.octopus-careers,
.octopus-careers *{box-sizing:border-box}
.octopus-careers a{color:var(--oc-accent)}
.octopus-careers .button{
  background:var(--oc-accent);color:#000;border:1px solid var(--oc-accent);
  border-radius:8px;padding:.55rem .9rem;line-height:1.2;cursor:pointer;
  text-decoration:none;display:inline-flex;align-items:center;gap:.35rem;font-weight:600
}
.octopus-careers .button:hover{filter:brightness(1.05)}
.octopus-careers .button.button-secondary{background:transparent;color:var(--oc-text);border-color:var(--oc-border)}
.octopus-careers .button.button-secondary:hover{background:var(--oc-surface-2)}
.octopus-careers{color:var(--oc-text)}

/* Hide author/meta/comments on single job pages regardless of theme markup */
body.single-job_listing .entry-meta,
body.single-job_listing .byline,
body.single-job_listing .author,
body.single-job_listing .posted-on,
body.single-job_listing .comments-link,
body.single-job_listing .cat-links,
body.single-job_listing .tags-links,
body.single-job_listing .edit-link,
body.single-job_listing .entry-footer,
body.single-job_listing .comments-area,
body.single-job_listing .comment-respond{display:none !important}
.octopus-careers-title{margin:0 0 .25rem 0;font-size:1.1rem;line-height:1.4}
.octopus-careers-title a{text-decoration:none}
.octopus-careers-meta{display:flex;gap:.75rem;flex-wrap:wrap;margin:.25rem 0 .5rem 0;padding:0;list-style:none;opacity:.9}
.octopus-careers-meta.meta-large{gap:1rem;margin:.5rem 0 1rem}
.octopus-careers-meta .meta-item{display:inline-flex;gap:.35rem;align-items:center;white-space:nowrap}
.octopus-careers-icon{display:inline-flex;align-items:center;opacity:.9;color:var(--oc-muted)}
.octopus-careers-card-header{margin-bottom:.25rem}
.octopus-careers-card-actions{display:flex;gap:.5rem;margin-top:.5rem}

.octopus-careers-header{display:flex;align-items:center;justify-content:space-between;margin:.25rem 0 1rem}
.octopus-careers-heading{margin:0;font-size:1.25rem;line-height:1.3}
.octopus-careers-count{font-size:.95rem;opacity:.8}

.octopus-careers-filters{margin-bottom:1rem}
.octopus-careers-toolbar{display:grid;gap:.5rem;grid-template-columns:repeat(12,1fr);background:var(--oc-surface);border:1px solid var(--oc-border-soft);border-radius:12px;padding:.75rem}
.octopus-careers-input{display:flex;align-items:center;gap:.5rem;border:1px solid var(--oc-border);border-radius:8px;padding:.45rem .65rem;background:var(--oc-surface-2);color:var(--oc-text)}
.octopus-careers-input input{border:0;outline:none;width:100%;background:transparent;padding:.3rem 0;color:var(--oc-text)}
.octopus-careers-input input::placeholder{color:var(--oc-muted)}
.octopus-careers-input select{border:0;outline:none;width:100%;background:transparent;padding:.3rem 0;color:var(--oc-text)}
.octopus-careers-input option{color:#000}
.octopus-careers-actions{display:flex;gap:.5rem;justify-content:flex-end;align-items:center}
@media (min-width: 901px){
  .octopus-careers-input:nth-child(1){grid-column:span 3} /* search */
  .octopus-careers-input:nth-child(2){grid-column:span 2} /* location */
  .octopus-careers-input:nth-child(3){grid-column:span 2} /* department */
  .octopus-careers-input:nth-child(4){grid-column:span 2} /* type */
  .octopus-careers-input:nth-child(5){grid-column:span 2} /* work model */
  .octopus-careers-actions{grid-column:span 1;justify-self:end}
}
@media (max-width: 900px){
  .octopus-careers-toolbar{grid-template-columns:1fr}
  .octopus-careers-actions{justify-content:stretch}
  .octopus-careers-actions .button{width:100%}
}

/* Cards grid */
.octopus-careers-list{display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.octopus-careers-item{padding:1rem;border-radius:12px;border:1px solid var(--oc-border-soft);background:var(--oc-surface);transition:box-shadow .2s ease, border-color .2s ease}
.octopus-careers-item:hover{box-shadow:0 10px 34px rgba(0,0,0,.35);border-color:var(--oc-border)}
.octopus-careers-pagination{margin-top:1rem}

/* Forms and layout */
.octopus-careers-form{display:grid;gap:.75rem;max-width:640px;background:var(--oc-surface);padding:1rem;border:1px solid var(--oc-border-soft);border-radius:12px}
.octopus-careers-form label span{display:block;margin-bottom:.35rem;font-weight:500}
.octopus-careers-form input[type="text"],
.octopus-careers-form input[type="email"],
.octopus-careers-form input[type="file"],
.octopus-careers-form textarea{width:100%;padding:.55rem .65rem;border:1px solid var(--oc-border);border-radius:8px;background:var(--oc-surface-2);color:var(--oc-text)}
.octopus-careers-form select{
  width:100%;
  padding:.55rem .65rem;
  border:1px solid var(--oc-border);
  border-radius:8px;
  background:var(--oc-surface-2);
  color:var(--oc-text);
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  background-image: linear-gradient(45deg, transparent 50%, var(--oc-text) 50%), linear-gradient(135deg, var(--oc-text) 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% - 3px), calc(100% - 12px) calc(50% - 3px);
  background-size:6px 6px,6px 6px;
  background-repeat:no-repeat;
}
.octopus-careers-form input::file-selector-button{background:var(--oc-accent);border:0;color:#000;border-radius:6px;padding:.35rem .6rem;margin-right:.5rem}
.octopus-careers-form textarea{min-height:120px}
.octopus-careers-grid{display:grid;gap:2rem;grid-template-columns:2fr 1fr}
.octopus-careers-main{min-width:280px}
.octopus-careers-aside{min-width:260px;align-self:start;position:sticky;top:1.5rem}
@media (max-width: 900px){
  .octopus-careers-grid{grid-template-columns:1fr}
  .octopus-careers-aside{position:static}
}
.octopus-careers-back{margin:0 0 .75rem 0}
.octopus-careers-criteria{margin:1rem 0}
.octopus-careers-criteria h4{margin:.25rem 0 .5rem 0;font-size:1rem}
.octopus-careers-criteria ul{margin:0;padding-left:1.1rem;display:grid;gap:.35rem}
.octopus-careers-criteria li{list-style:disc;color:var(--oc-text)}

/* Notices */
.octopus-careers-notice{margin:1rem 0;padding:.75rem 1rem;border-radius:10px;border:1px solid var(--oc-border-soft);background:var(--oc-surface)}
.octopus-careers-notice.success{border-color:var(--oc-border)}
.octopus-careers-notice.error{border-color:var(--oc-border)}

/* Badges and subtle meta styles are inherited from theme colors; no hard colors */
.octopus-careers-card-actions .button{white-space:nowrap}

/* Panel */
.octopus-careers-panel{margin-top:1.25rem;border:1px solid var(--oc-border-soft);border-radius:12px;background:var(--oc-surface)}
.octopus-careers-panel .panel-header{padding:1rem 1rem .5rem 1rem}
.octopus-careers-panel .panel-sub{margin:.25rem 0 0 0;color:var(--oc-muted)}
.octopus-careers-panel .octopus-careers-form{border:0;border-radius:0 0 12px 12px}
.octopus-careers-panel{max-width:1000px;margin-left:auto;margin-right:auto}
.octopus-careers-panel .panel-grid{display:grid;gap:1rem;align-items:start}
@media (min-width: 900px){
  .octopus-careers-panel .panel-grid{grid-template-columns:1.1fr 1.6fr}
}
.octopus-careers-form button[type="submit"]{width:100%}

/* Hide common author meta in single job pages */
.octopus-careers-main .byline,
.octopus-careers-main .author,
.octopus-careers-main .posted-on,
.octopus-careers-main .entry-meta{display:none !important}
.octopus-careers-form .button.is-loading{opacity:.75;pointer-events:none;position:relative}
.octopus-careers-form .button.is-loading:after{
  content:'';width:16px;height:16px;border-radius:50%;
  border:2px solid rgba(255,255,255,.4);border-top-color:#fff;
  position:absolute;right:12px;top:50%;transform:translateY(-50%);
  animation: ocspin 1s linear infinite;
}
@keyframes ocspin{to{transform:translateY(-50%) rotate(360deg)}}
.octopus-careers-notice{margin:1rem 0}
.octopus-careers-filters-row{display:flex;gap:.5rem;flex-wrap:wrap;align-items:flex-end}
.octopus-careers-list{display:grid;gap:1rem}
.octopus-careers-item{padding:1rem;border-radius:6px}
.octopus-careers-pagination{margin-top:1rem}
.octopus-careers-form{display:grid;gap:.75rem;max-width:640px}
.octopus-careers-grid{display:flex;gap:2rem;flex-wrap:wrap}
.octopus-careers-main{flex:2 1 420px;min-width:280px}
.octopus-careers-aside{flex:1 1 320px;min-width:260px}

