/* ==========================================================
   Kalaghpar V7 — new listing card + mobile-first home polish
   Loaded last, so it intentionally wins over older layers.
   ========================================================== */

:root{
  --kp-card-shadow:0 4px 0 var(--ink);
  --kp-tone-violet:#5b4bdb; --kp-tone-violet-bg:#ece9ff;
  --kp-tone-mint:#1f9c7e;   --kp-tone-mint-bg:#d9f5ec;
  --kp-tone-coral:#e2523f;  --kp-tone-coral-bg:#ffe5df;
  --kp-tone-saffron:#b27800;--kp-tone-saffron-bg:#fff3cf;
}
html[data-theme="dark"]{
  --kp-card-shadow:0 3px 0 rgba(0,0,0,.45);
  --kp-tone-violet:#a69cff; --kp-tone-violet-bg:#232a52;
  --kp-tone-mint:#58d6b6;   --kp-tone-mint-bg:#16302f;
  --kp-tone-coral:#ff8d7d;  --kp-tone-coral-bg:#3a2224;
  --kp-tone-saffron:#ffc94d;--kp-tone-saffron-bg:#35301a;
}

/* ---------- grids that hold the new card ---------- */
.listing-grid--home,
.browse-results .listing-grid--browse,
.listing-grid--browse{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.browse-results .listing-grid--browse{grid-template-columns:repeat(2,minmax(0,1fr))}
@media (max-width:1150px){
  .listing-grid--home{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:680px){
  .listing-grid--home,
  .browse-results .listing-grid--browse,
  .listing-grid--browse{grid-template-columns:1fr;gap:14px}
}

/* ---------- the card ---------- */
.kp-lc{
  position:relative;display:flex;flex-direction:column;gap:12px;min-width:0;
  padding:14px;background:var(--surface);color:var(--ink);
  border:var(--hard);border-radius:20px;box-shadow:var(--kp-card-shadow);
  transition:transform .15s,box-shadow .15s;
}
.kp-lc[hidden]{display:none}
@media (hover:hover){.kp-lc:hover{transform:translateY(-3px);box-shadow:0 7px 0 var(--ink)}}

.kp-lc__top{display:flex;align-items:center;gap:10px;min-width:0}
.kp-lc__avatar{flex:none;width:42px;height:42px;border-radius:50%;overflow:hidden;border:var(--hard);background:var(--cream-deep);display:grid;place-items:center;font-weight:900}
.kp-lc__avatar img{width:100%;height:100%;object-fit:cover;display:block}
.kp-lc__person{display:flex;flex-direction:column;min-width:0;flex:1;line-height:1.5}
.kp-lc__name{font-size:14px;font-weight:900;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
html[data-theme="dark"] .kp-lc__name{color:#e4e7f5}
.kp-lc__rating{display:flex;align-items:center;gap:4px;font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kp-lc__rating .icon{color:#f2a900;fill:#f2a900;flex:none}
.kp-lc__rating i{font-style:normal;opacity:.6}
.kp-lc__mode{flex:none;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:11px;font-weight:800;border:1.5px solid var(--line-strong);background:var(--surface-2)}
.kp-lc__mode i{width:7px;height:7px;border-radius:50%;background:#9aa0b8}
.kp-lc__mode.is-online{color:#12795f;background:#dcf6ec;border-color:#a7e3cd}
.kp-lc__mode.is-online i{background:#25b88f;box-shadow:0 0 0 3px rgba(37,184,143,.2)}
html[data-theme="dark"] .kp-lc__mode.is-online{color:#58d6b6;background:#12302b;border-color:#1f5a4d}

/* "I need ..." block */
.kp-lc__need{
  display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:15px;
  position:relative;overflow:hidden;background:var(--kp-bg);color:inherit;text-decoration:none;
}
.kp-lc__need:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:5px;background:var(--kp-fg)}
.kp-lc__need{padding-inline-start:17px}
.kp-lc__need--violet{--kp-fg:var(--kp-tone-violet);--kp-bg:var(--kp-tone-violet-bg)}
.kp-lc__need--mint{--kp-fg:var(--kp-tone-mint);--kp-bg:var(--kp-tone-mint-bg)}
.kp-lc__need--coral{--kp-fg:var(--kp-tone-coral);--kp-bg:var(--kp-tone-coral-bg)}
.kp-lc__need--saffron{--kp-fg:var(--kp-tone-saffron);--kp-bg:var(--kp-tone-saffron-bg)}
.kp-lc__need-text{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}
.kp-lc__kicker{font-size:11.5px;font-weight:700;color:var(--muted)}
.kp-lc__subject{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px;line-height:1.5}
.kp-lc__subject b{font-size:17px;font-weight:900;color:var(--ink);overflow-wrap:anywhere}
html[data-theme="dark"] .kp-lc__subject b{color:#f4f5fb}
.kp-lc__kind{display:inline-flex;align-items:center;gap:4px;padding:2px 9px 2px 8px;border-radius:99px;background:var(--kp-fg);color:#fff;font-size:11.5px;font-weight:800;white-space:nowrap}
html[data-theme="dark"] .kp-lc__kind{color:#14172b}
.kp-lc__kind .icon{width:13px;height:13px}
.kp-lc__cat{font-style:normal;font-size:11px;font-weight:700;color:var(--kp-fg)}
.kp-lc__cat:before{content:"#"}
.kp-lc__thumb{flex:none;width:62px;height:62px;border-radius:14px;overflow:hidden;border:var(--hard);background:var(--surface)}
.kp-lc__thumb img{width:100%;height:100%;object-fit:cover;display:block}

/* "I know ..." chips */
.kp-lc__offers{display:flex;align-items:flex-start;gap:8px;min-width:0}
.kp-lc__offers-label{flex:none;display:inline-flex;align-items:center;gap:4px;padding-top:4px;font-size:13px;font-weight:900;color:#12795f}
html[data-theme="dark"] .kp-lc__offers-label{color:#58d6b6}
.kp-lc__offers-label .icon{color:#f2a900}
.kp-lc__offers ul{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;min-width:0}
.kp-lc__offers li{padding:4px 11px;border-radius:99px;font-size:12.5px;font-weight:700;line-height:1.6;color:var(--ink);background:var(--surface-2);border:1.5px solid var(--line-strong)}
html[data-theme="dark"] .kp-lc__offers li{color:#e4e7f5}
.kp-lc__offers li.is-more{color:var(--muted);border-style:dashed}

/* footer */
.kp-lc__foot{display:flex;align-items:center;gap:10px;margin-top:2px;padding-top:12px;border-top:1.5px dashed var(--line-strong)}
.kp-lc__time{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:700;color:var(--muted);white-space:nowrap}
.kp-lc__cta{margin-inline-start:auto;min-height:40px;height:40px;padding:6px 16px;font-size:13px;white-space:nowrap}
.kp-lc__fav{display:grid!important;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;border:var(--hard);background:var(--surface)}
.kp-lc__fav[aria-pressed="true"]{background:#ffe3ea;color:#e0345a}
.kp-lc__fav[aria-pressed="true"] .icon{fill:currentColor}

/* ---------- home: small helper bits ---------- */
.kp-sub{margin:3px 0 0;font-size:12px;color:var(--muted);font-weight:600}
.kp-kinds{display:flex;gap:8px;margin:0 0 14px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}
.kp-kinds::-webkit-scrollbar{display:none}
.kp-kinds a{flex:none;display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:99px;font-size:13px;font-weight:800;color:var(--ink);background:var(--surface);border:var(--hard);box-shadow:0 2px 0 var(--ink)}
html[data-theme="dark"] .kp-kinds a{color:#e4e7f5;box-shadow:none}
.kp-kinds a:nth-child(1) .icon{color:var(--kp-tone-violet)}
.kp-kinds a:nth-child(2) .icon{color:var(--kp-tone-mint)}
.kp-kinds a:nth-child(3) .icon{color:var(--kp-tone-coral)}
.kp-kinds a:nth-child(4) .icon{color:var(--kp-tone-saffron)}
.kp-kinds a:active{transform:translateY(2px);box-shadow:0 0 0 var(--ink)}

/* ==========================================================
   PHONE
   ========================================================== */
@media (max-width:760px){
  body{padding-bottom:92px}

  /* --- compact hero: show search & value in the first screen --- */
  .kp-hero{padding:12px 0 4px}
  .kp-hero-shell{
    display:flex;flex-direction:column;align-items:stretch;gap:0;padding:16px 16px 18px;min-height:0;
    border-radius:24px;box-shadow:-4px 5px 0 var(--ink)
  }
  .kp-hero-bg{display:none}
  .kp-hero-scene{width:100%;order:-1;min-height:0;height:150px;margin:0 0 4px}
  .kp-sun{width:136px;height:136px;box-shadow:0 4px 0 var(--ink)}
  .kp-scene-crow{width:118px}
  .kp-swap{font-size:11px;padding:4px 9px 4px 6px;border-radius:11px;gap:6px;box-shadow:0 3px 0 var(--ink)}
  .kp-swap em{width:22px;height:22px;border-radius:7px}
  .kp-swap em .icon{width:14px;height:14px}
  .kp-swap--a{top:2%;right:2%}
  .kp-swap--b{top:8%;left:2%}
  .kp-swap--c{bottom:6%;right:0}
  .kp-swap--d{bottom:2%;left:0}

  .kp-hero-copy{text-align:center;display:flex;flex-direction:column;align-items:center}
  .kp-pill{font-size:11px;padding:4px 11px}
  .kp-hero-copy h1{font-size:30px;line-height:1.35;margin:10px 0 6px;letter-spacing:-.8px}
  .kp-hero-copy h1 span{display:inline-block}
  .kp-hero-copy h1 .kp-hl{padding:0 10px 2px;border-radius:12px;margin-inline-start:4px}
  .kp-hero-copy p{font-size:13px;line-height:1.95;margin:0 0 14px;max-width:38ch}
  .kp-hero-ctas{display:grid;grid-template-columns:1.25fr 1fr;gap:10px;width:100%}
  .kp-hero-ctas .btn{min-height:46px;height:46px;padding:6px 10px;font-size:14px;width:100%}

  /* search: part of the flow, directly under the CTAs */
  .kp-hero-search{position:static;transform:none;width:100%;max-width:none;margin-top:14px}
  .kp-hero-search .search-bar{min-height:50px;height:50px;border-radius:16px;box-shadow:0 3px 0 var(--ink);padding:4px 6px}
  .kp-hero-search .search-bar input{font-size:12.5px}
  .kp-hero-search .search-submit{width:38px;height:38px;border-radius:11px}

  /* --- categories: clean horizontal chip rail --- */
  .category-section{padding-top:16px;padding-bottom:4px}
  .category-grid{gap:8px;padding:2px 2px 10px;margin-inline:-14px;padding-inline:14px;scroll-padding-inline:14px}
  .category-tile{min-width:84px;max-width:none;min-height:78px;border-radius:16px;box-shadow:0 3px 0 var(--ink);gap:6px}
  .category-title{font-size:11px;font-weight:800}
  .section-heading h2{font-size:18px}
  .section-heading .text-link{font-size:12px;font-weight:800}

  /* --- listings --- */
  .latest-section{padding-top:10px;padding-bottom:6px}
  .latest-section .section-heading{margin-bottom:10px}
  .kp-lc{padding:12px;gap:11px;border-radius:18px}
  .kp-lc__avatar{width:38px;height:38px}
  .kp-lc__name{font-size:13.5px}
  .kp-lc__need{padding:11px 12px;padding-inline-start:16px}
  .kp-lc__subject b{font-size:16px}
  .kp-lc__thumb{width:56px;height:56px}
  .kp-lc__foot{display:grid;grid-template-columns:1fr auto;grid-template-areas:"time time" "cta fav";gap:10px;align-items:center}
  .kp-lc__time{grid-area:time;justify-content:center;font-size:12px}
  .kp-lc__fav{grid-area:fav}
  .kp-lc__cta{grid-area:cta;width:100%;margin:0;min-height:44px;height:44px;font-size:14px}

  /* --- softer rhythm for the story sections below --- */
  .kp-gallery,.exchange-match-section,.kp-together{margin-top:8px}
  .kp-lead{font-size:13px}
  .kp-tile{flex-basis:72%}
}

@media (max-width:380px){
  .kp-hero-copy h1{font-size:27px}
  .kp-lc__subject b{font-size:15px}
  .kp-lc__thumb{display:none}
}

@media (prefers-reduced-motion:reduce){.kp-lc,.kp-kinds a{transition:none}}

/* ---------- V7.1 phone refinements ---------- */
@media (max-width:760px){
  /* hero scene: crow on top, skill chips in a tidy row UNDER it (no overlap) */
  .kp-hero-scene{position:relative;display:flex;flex-wrap:wrap;justify-content:center;align-content:flex-start;gap:6px;height:auto;min-height:0;padding-top:142px;margin:0 0 8px}
  .kp-sun{top:0;left:50%;transform:translateX(-50%)}
  .kp-scene-crow{position:absolute;top:10px;left:50%;transform:translateX(-50%)}
  .kp-swap,.kp-swap--a,.kp-swap--b,.kp-swap--c,.kp-swap--d{position:static;transform:none;font-size:11.5px}
  .kp-hero-copy h1{margin-top:6px}

  /* compact listing cards: footer in ONE row */
  .kp-lc{gap:10px}
  .kp-lc__foot{display:flex;gap:8px;padding-top:10px}
  .kp-lc__time{order:0;font-size:11px;justify-content:flex-start;white-space:normal;line-height:1.5;max-width:92px}
  .kp-lc__fav{order:1;margin-inline-start:auto}
  .kp-lc__cta{order:2;width:auto;flex:1;min-height:40px;height:40px;font-size:13px;padding-inline:10px}
  .kp-lc__thumb{width:52px;height:52px}
  .kp-lc__need{padding-block:10px}

  /* gallery: 2-column grid instead of clipped sideways scroller */
  .kp-tiles{display:grid;grid-template-columns:1fr 1fr;gap:10px;overflow:visible;margin-inline:0;padding-inline:0}
  .kp-tile{flex:none;max-width:none;width:auto;border-radius:16px;box-shadow:0 3px 0 var(--ink)}
  .kp-tile img{aspect-ratio:4/3}
  .kp-tile-body{padding:8px 10px 10px}
  .kp-tile-body b{font-size:13.5px}
  .kp-tile-body small{display:none}
  .kp-gallery .kp-lead{display:none}
}
@media (max-width:760px){
  .kp-sun{left:calc(50% - 68px);transform:none!important}
  .kp-scene-crow{left:calc(50% - 59px);transform:none!important;animation:none}
  .kp-hero-scene{flex-wrap:nowrap;gap:5px;padding-top:146px}
  .kp-swap{flex:1 1 0;min-width:0;justify-content:center;padding:4px 5px;gap:4px;font-size:10.5px;border-radius:10px;box-shadow:0 2px 0 var(--ink)}
  .kp-swap em{width:18px;height:18px;border-radius:6px;flex:none}
  .kp-swap em .icon{width:12px;height:12px}
}
@media (max-width:760px){.kp-lc__time{white-space:nowrap;max-width:none}.kp-lc__cta{padding-inline:8px}}

/* ---------- smart match ---------- */
.kp-lc__match{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;padding:8px 12px;border-radius:12px;font-size:12px;line-height:1.6;border:1.5px solid}
.kp-lc__match-title{display:inline-flex;align-items:center;gap:5px;font-weight:900}
.kp-lc__match-why{color:var(--muted);font-weight:600}.kp-lc__match-why b{color:var(--ink);font-weight:900}
html[data-theme="dark"] .kp-lc__match-why b{color:#f4f5fb}
.kp-lc__match--full{background:#dcf6ec;border-color:#7fd6b8;color:#0d6b53}
.kp-lc__match--half{background:#fff3cf;border-color:#f0cf7a;color:#8a5d00}
html[data-theme="dark"] .kp-lc__match--full{background:#12302b;border-color:#1f5a4d;color:#58d6b6}
html[data-theme="dark"] .kp-lc__match--half{background:#35301a;border-color:#6b5a1f;color:#ffc94d}
.kp-lc--m-full{border-color:#1f9c7e;box-shadow:0 4px 0 #1f9c7e}
.kp-lc__offers li.is-match{background:#dcf6ec;border-color:#25b88f;color:#0d6b53}
html[data-theme="dark"] .kp-lc__offers li.is-match{background:#12302b;color:#58d6b6}

/* ---------- create form: kind picker + skill chips ---------- */
.kp-kind-field{border:0;padding:0;margin:0;min-width:0}
.kp-kind-field legend{padding:0;margin-bottom:8px;font-weight:800;font-size:14px}
.kp-kind-field legend i,.kp-skills-label i{color:#e2523f;font-style:normal}
.kp-kind-pick{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.kp-kind-pick label{position:relative;display:block;cursor:pointer}
.kp-kind-pick input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.kp-kind-pick span{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:8px 6px;border-radius:14px;font-size:13px;font-weight:800;text-align:center;background:var(--surface);color:var(--ink);border:var(--hard);box-shadow:0 3px 0 var(--ink);transition:.15s}
html[data-theme="dark"] .kp-kind-pick span{color:#e4e7f5;box-shadow:none}
.kp-kind-pick input:checked+span{background:#ffc42e;color:#1b1840;transform:translateY(2px);box-shadow:0 1px 0 var(--ink)}
.kp-kind-pick input:focus-visible+span{outline:3px solid #7366f0;outline-offset:2px}
@media (max-width:560px){.kp-kind-pick{grid-template-columns:1fr 1fr}}

.kp-auto-note{font-weight:600;color:var(--muted);font-size:11px;margin-inline-start:6px}
.kp-skills-label{display:block;font-weight:800;font-size:14px;margin-bottom:8px}
.kp-skills-label small{font-weight:600;color:var(--muted);font-size:11.5px;margin-inline-start:6px}
.kp-skills-box{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:8px;border-radius:14px;border:var(--hard);background:var(--surface);min-height:52px}
.kp-skills-box:focus-within{outline:3px solid rgba(115,102,240,.35)}
.kp-skills-box ul{display:contents;margin:0;padding:0;list-style:none}
.kp-skills-box li{display:inline-flex;align-items:center;gap:6px;padding:4px 6px 4px 11px;border-radius:99px;font-size:13px;font-weight:700;background:#dcf6ec;color:#0d6b53;border:1.5px solid #7fd6b8}
html[data-theme="dark"] .kp-skills-box li{background:#12302b;color:#58d6b6;border-color:#1f5a4d}
.kp-skills-box li button{width:20px;height:20px;border-radius:50%;border:0;background:rgba(0,0,0,.12);color:inherit;font-size:14px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0}
.kp-skills-box input{flex:1;min-width:120px;border:0!important;outline:0!important;background:transparent!important;box-shadow:none!important;padding:6px 4px;font:inherit;color:inherit}
.kp-skills-add{flex:none;width:34px;height:34px;border-radius:10px;border:var(--hard);background:#ffc42e;color:#1b1840;display:grid;place-items:center;cursor:pointer}
.kp-skills-suggest{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px}
.kp-skills-suggest small{color:var(--muted);font-weight:700}
.kp-skills-suggest button{padding:4px 11px;border-radius:99px;font:inherit;font-size:12px;font-weight:700;border:1.5px dashed var(--line-strong);background:transparent;color:var(--ink);cursor:pointer}
html[data-theme="dark"] .kp-skills-suggest button{color:#e4e7f5}
.kp-skills-suggest button:disabled{opacity:.35;cursor:default}
.kp-skills-error{margin:6px 0 0;color:#d6402d;font-weight:800;font-size:12.5px}
.kp-pv-need{margin:6px 0 10px}.kp-pv-offers{margin-bottom:10px}
@media (max-width:900px){
  .form-layout{display:flex;flex-direction:column}
  .form-layout .surface-form{order:1}
  .form-layout .form-aside{order:2}
}
