/* CV Mojo app (v2 preview): CVs by skill (/skill?q=...). Classes are prefixed
   sks-; shared pieces (ap-*, cvm-*, db-mark, db-card-h) come from app.css. */

.sks [hidden] { display: none !important; }

/* Search another skill */
.sks-search { display: flex; flex-wrap: wrap; gap: 10px; }
.sks-search-field { position: relative; flex: 1 1 260px; min-width: 0; }
.sks-search-field > svg { position: absolute; left: 17px; top: 50%; color: var(--muted); transform: translateY(-50%); pointer-events: none; }
.sks-search .ap-input { min-height: 50px; padding-left: 46px; border-radius: 999px; }
.sks-search .btn { min-height: 50px; padding: 10px 24px; }
.sks-search .ap-error { flex-basis: 100%; margin: 0; }

/* Results */
.sks-main { display: grid; gap: 14px; min-width: 0; }
.sks-count { margin: 0; font-size: 14.5px; font-weight: 700; color: var(--navy); }
.sks-count:focus { outline: none; }
.sks-list { display: grid; gap: 2px; padding: 10px; animation: sks-in .4s ease both; }
.sks-row { gap: 14px; }
.sks-row > svg:last-child { flex: none; color: var(--muted); opacity: .6; transition: transform .15s ease, opacity .15s ease; }
a.sks-row:hover > svg:last-child { opacity: 1; transform: translateX(2px); }
a.sks-row:focus-visible { outline: 3px solid var(--indigo); outline-offset: -3px; }
.sks-row--static { cursor: default; }
.sks-row--static:hover { background: none; }
.sks-reviews { flex: none; }
.sks-more { display: grid; justify-items: center; gap: 10px; }
.sks-more .ap-error { margin: 0; }
@keyframes sks-in { from { opacity: 0; transform: translateY(8px); } }

/* Skills guides card */
.sks-card { --accent: var(--cyan); }
.sks-card .db-card-h { margin-bottom: 10px; }
.sks-guides-label { margin: 0 0 6px; font-size: 12px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--muted); }
.sks-guides { display: grid; gap: 2px; margin: 0 -8px 12px; }
.sks-guide { gap: 12px; padding: 9px 8px; }
.sks-guide > svg:last-child { flex: none; color: var(--muted); }
.sks-guide-ic { flex: none; display: grid; place-items: center; width: 34px; height: 34px; color: var(--navy); background: var(--cyan-soft); border-radius: 11px; transform: rotate(-4deg); }
.sks-note { margin: 0 0 12px; font-size: 14px; color: var(--muted); }
.sks-all { display: inline-flex; align-items: center; gap: 6px; font-size: 14.5px; font-weight: 700; }
.sks-all:focus-visible, .sks-guide:focus-visible { outline: 3px solid var(--indigo); outline-offset: 2px; }

@media (prefers-reduced-motion: reduce) {
  .sks-list { animation: none; }
  .sks-row > svg:last-child { transition: none; }
}
@media (max-width: 760px) {
  .sks-search .btn { width: 100%; }
  .sks-list { padding: 6px 4px; }
  .sks-row { gap: 12px; padding: 10px 8px; }
  .sks-row > svg:last-child { display: none; }
}
@media (max-width: 420px) {
  .sks-row { flex-wrap: wrap; row-gap: 4px; }
  .sks-row .ap-row-main { flex-basis: calc(100% - 54px); }
  .sks-reviews { margin-left: 54px; }
}
