/* KittyClub Editorial. Scoped to task28 views; shared shell stays untouched. */
.kc-discovery { --dsc-copy: var(--copy); --dsc-photo: var(--photo-ground); }
.kc-discovery :is(h1,h2) { text-wrap: balance; overflow-wrap: anywhere; }
.kc-discovery :is(input,select) { caret-color: var(--wine); border-radius: 0; }
.kc-discovery :is(input,select)::placeholder { color: var(--muted); opacity: 1; }
.kc-discovery ::selection { background: var(--wine); color: var(--paper); }
.kc-discovery :is(a,button,input,select):focus-visible { outline: 2px solid var(--wine); outline-offset: 4px; }
.kc-discovery .dsc-introduction { max-width: 65ch; color: var(--dsc-copy); font-size: 14px; line-height: 1.8; margin: -10px 0 28px; }
.kc-discovery .dsc-search { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; max-width: 1050px; margin-bottom: 24px; }
.kc-discovery .dsc-search input { width: 100%; min-width: 0; min-height: 48px; padding: 12px 16px; border: 1px solid var(--control-border); background: transparent; font-size: 14px; }
.kc-discovery .dsc-search-options { grid-column: 1/-1; display: flex; flex-wrap: wrap; align-items: end; gap: 20px; padding-top: 6px; }
.kc-discovery .dsc-search-options label { display: flex; flex-direction: column; gap: 8px; font-size: 11px; color: var(--muted); }
.kc-discovery :is(.dsc-search-options,.dsc-creator-filter) select { background: transparent; border: 1px solid var(--control-border); min-height: 44px; padding: 8px 30px 8px 11px; color: var(--ink); font-size: 12px; }
.kc-discovery .dsc-search-options button { min-height: 44px; margin-left: auto; }
.kc-discovery .dsc-tabs { display: flex; align-items: start; gap: 30px; border-bottom: 1px solid var(--line); min-height: 45px; margin: 0 0 26px; overflow-x: auto; scrollbar-width: thin; scrollbar-color: var(--line) var(--paper); }
.kc-discovery .dsc-tabs a { font-size: 13px; min-height: 44px; padding: 10px 0 13px; white-space: nowrap; border-bottom: 2px solid transparent; }
.kc-discovery .dsc-tabs [aria-current] { color: var(--wine); border-bottom-color: var(--wine); }
.kc-discovery .dsc-result-summary { display: flex; justify-content: space-between; gap: 20px; font-size: 12px; margin-bottom: 24px; }
.kc-discovery .dsc-result-summary span { color: var(--muted); font-size: 11px; }
.kc-discovery .dsc-results { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px 32px; padding-bottom: 32px; align-items: start; }
.kc-discovery .dsc-result-portrait { position: relative; display: block; aspect-ratio: 3/4; background: var(--dsc-photo); }
.kc-discovery .dsc-result-portrait .cast-photo { width: 100%; height: 100%; }
.kc-discovery .dsc-status { position: absolute; top: 14px; left: 14px; max-width: calc(100% - 28px); background: var(--wine); color: var(--paper); padding: 7px 9px; font-size: 10px; }
.kc-discovery .dsc-creator-caption { display: flex; justify-content: space-between; align-items: end; gap: 12px; padding: 18px 0 0; }
.kc-discovery .dsc-result-type { display: block; color: var(--muted); font-size: 10px; margin: 0 0 9px; }
.kc-discovery .dsc-creator-caption h2 { font: 400 35px/1.1 var(--serif); letter-spacing: -.025em; margin-bottom: 10px; }
.kc-discovery .dsc-creator-caption h2 i { display: inline; margin-left: 5px; }
.kc-discovery .dsc-creator-caption p { font-size: 11px; color: var(--dsc-copy); }
.kc-discovery .dsc-creator-caption button { min-width: 90px; padding: 9px 13px; font-size: 12px; }
.kc-discovery .dsc-creator-caption .icon { width: 13px; }
.kc-discovery .dsc-content-result { padding-bottom: 24px; border-bottom: 1px solid var(--line); }
.kc-discovery .dsc-content-result>.dsc-result-type { margin-top: 18px; }
.kc-discovery .dsc-content-result h2 { font: 400 38px/1.03 var(--serif); margin: 0 0 14px; }
.kc-discovery .dsc-content-result p { font-size: 13px; line-height: 1.7; color: var(--dsc-copy); }
.kc-discovery .dsc-content-result .fine { font-size: 11px; margin: 14px 0; }
.kc-discovery .dsc-content-result .text-link { display: inline-flex; min-height: 44px; align-items: center; font-size: 12px; }
.kc-discovery .dsc-text-result { padding-top: 12px; border-top: 1px solid var(--ink); }
.kc-discovery .dsc-empty { padding: 48px 0 64px; max-width: 650px; }
.kc-discovery .dsc-empty h2 { font: 400 56px/1 var(--serif); letter-spacing: -.025em; margin-bottom: 22px; }
.kc-discovery .dsc-empty p { font-size: 14px; line-height: 1.8; color: var(--dsc-copy); margin-bottom: 26px; max-width: 65ch; }
.kc-discovery .dsc-back { display: inline-flex; align-items: center; gap: 8px; min-height: 60px; color: var(--muted); font-size: 12px; }
.kc-discovery .dsc-profile { display: grid; grid-template-columns: minmax(280px, .9fr) minmax(320px,1fr); gap: clamp(35px,6vw,90px); max-width: 1120px; padding: 10px 0 42px; }
.kc-discovery .dsc-profile-portrait { position: relative; height: 520px; background: var(--dsc-photo); }
.kc-discovery .dsc-profile-portrait>.cast-photo { width: 100%; height: 100%; }
.kc-discovery .dsc-profile-identity { display: flex; flex-direction: column; align-items: start; padding-top: 20px; }
.kc-discovery .dsc-profile h1 { font: 400 85px/.86 var(--serif); letter-spacing: -.035em; margin: 0 0 24px; }
.kc-discovery .dsc-profile h1 i { display: block; margin-left: 65px; }
.kc-discovery .dsc-handle { font-size: 12px; color: var(--muted); margin: 0 0 28px; }
.kc-discovery .dsc-bio { font-size: 14px; line-height: 1.8; max-width: 65ch; color: var(--dsc-copy); margin-bottom: 24px; }
.kc-discovery .dsc-profile-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: auto; padding-top: 30px; }
.kc-discovery .dsc-profile-actions .text-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 12px; }
.kc-discovery .dsc-profile-actions .fine { flex-basis: 100%; margin-top: 5px; }
.kc-discovery .dsc-follow-note { font-size: 11px; color: var(--muted); margin-top: 15px; }
.kc-discovery .dsc-profile-timeline { max-width: 970px; }
.kc-discovery .dsc-services { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 65px; max-width: 1050px; padding: 5px 0 30px; }
.kc-discovery .dsc-service { border-top: 1px solid var(--line); padding-top: 22px; }
.kc-discovery .dsc-service h2 { font: 400 35px/1.1 var(--serif); margin-bottom: 12px; }
.kc-discovery .dsc-service p { font-size: 13px; color: var(--dsc-copy); line-height: 1.8; margin-bottom: 12px; }
.kc-discovery .dsc-service .text-link { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; }
.kc-discovery .dsc-service .fine { display: block; margin-top: 5px; }
.kc-discovery .dsc-home-controls { display: flex; align-items: start; justify-content: space-between; gap: 32px; margin-bottom: 26px; border-bottom: 1px solid var(--line); }
.kc-discovery .dsc-home-controls .dsc-tabs { border: 0; margin: 0; }
.kc-discovery .dsc-creator-filter { display: flex; gap: 10px; align-items: center; font-size: 11px; padding-bottom: 8px; }
.kc-discovery .dsc-home-layout { display: grid; grid-template-columns: minmax(0,880px) 260px; gap: 64px; max-width: 1240px; }
.kc-discovery .dsc-follow-list { border-left: 1px solid var(--line); padding-left: 28px; }
.kc-discovery .dsc-follow-list h2 { font-size: 14px; font-weight: 500; margin-bottom: 24px; }
.kc-discovery .dsc-person-row { margin-bottom: 24px; }
.kc-discovery .dsc-person-row .person { min-width: 0; }
.kc-discovery .dsc-person-row .person strong { font-size: 13px; }
.kc-discovery .dsc-unfollow { min-height: 44px; padding: 8px 0 0 60px; font-size: 11px; text-decoration: underline; text-underline-offset: 4px; color: var(--muted); }
.kc-discovery .dsc-live-note { font-size: 12px; color: var(--muted); line-height: 1.8; padding-top: 24px; border-top: 1px solid var(--line); margin: 26px 0 12px; }
.kc-discovery .dsc-follow-list>.text-link { display: flex; min-height: 44px; align-items: center; font-size: 12px; }
.kc-discovery .dsc-post { padding-bottom: 28px; margin-bottom: 28px; border-bottom: 1px solid var(--line); }
.kc-discovery .dsc-post-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 22px; }
.kc-discovery .dsc-following-label { font-size: 11px; color: var(--muted); }
.kc-discovery .dsc-post-body { display: block; }
.kc-discovery .dsc-has-media .dsc-post-body { display: grid; grid-template-columns: minmax(220px,.9fr) minmax(0,1fr); gap: 32px; }
.kc-discovery .dsc-post-image { display: block; min-width: 0; aspect-ratio: 3/4; background: var(--dsc-photo); }
.kc-discovery .dsc-post-image>.cast-photo { width: 100%; height: 100%; }
.kc-discovery .dsc-post-copy { display: flex; flex-direction: column; justify-content: center; }
.kc-discovery .dsc-post-copy h2 { font: 400 38px/1.03 var(--serif); letter-spacing: -.02em; margin-bottom: 18px; }
.kc-discovery .dsc-has-media .dsc-post-copy h2 { font-size: 47px; }
.kc-discovery .dsc-post-copy>p { font-size: 14px; line-height: 1.8; color: var(--dsc-copy); white-space: pre-wrap; overflow-wrap: anywhere; }
.kc-discovery .dsc-post-copy>.fine { font-size: 11px; color: var(--muted); margin-top: 18px; }
.kc-discovery .dsc-post-actions { display: flex; align-items: center; gap: 24px; margin-top: 18px; }
.kc-discovery .dsc-post-actions>:is(a,button) { display: inline-flex; align-items: center; min-height: 44px; font-size: 12px; text-decoration: underline; text-underline-offset: 4px; }
.kc-discovery .dsc-post-actions>.primary { text-decoration: none; }
.kc-discovery .dsc-content-detail { max-width: 1000px; padding-top: 20px; }
@media (max-width:1150px) {
  .kc-discovery .dsc-results { gap: 32px 24px; }
  .kc-discovery .dsc-creator-caption { flex-wrap: wrap; }
  .kc-discovery .dsc-home-layout { grid-template-columns: minmax(0,1fr) 210px; gap: 32px; }
  .kc-discovery .dsc-follow-list { padding-left: 22px; }
  .kc-discovery .dsc-has-media .dsc-post-body { grid-template-columns: minmax(170px,.8fr) minmax(0,1fr); gap: 24px; }
  .kc-discovery .dsc-has-media .dsc-post-copy h2 { font-size: 38px; }
  .kc-discovery .dsc-profile-portrait { height: 480px; }
}
@media (max-width:850px) {
  .kc-discovery .dsc-results { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .kc-discovery .dsc-creator-caption { align-items: start; }
  .kc-discovery .dsc-profile { grid-template-columns: minmax(220px,.8fr) minmax(0,1fr); gap: 30px; }
  .kc-discovery .dsc-profile-portrait { height: 440px; }
  .kc-discovery .dsc-profile h1 { font-size: 71px; }
  .kc-discovery .dsc-profile h1 i { margin-left: 30px; }
  .kc-discovery .dsc-home-layout { grid-template-columns: 1fr; }
  .kc-discovery .dsc-follow-list { border-left: 0; border-top: 1px solid var(--ink); padding: 24px 0 0; }
  .kc-discovery .dsc-follow-list h2 { margin-bottom: 20px; }
  .kc-discovery .dsc-person-row { display: inline-flex; flex-direction: column; vertical-align: top; margin: 0 24px 16px 0; }
  .kc-discovery .dsc-services { gap: 30px; }
}
@media (max-width:600px) {
  .kc-discovery .dsc-introduction { font-size: 13px; margin-top: -6px; }
  .kc-discovery .dsc-search { gap: 8px; }
  .kc-discovery .dsc-search input { padding: 10px; font-size: 16px; }
  .kc-discovery .dsc-search>.primary { min-width: 80px; padding: 10px 12px; font-size: 12px; }
  .kc-discovery .dsc-search>.primary .icon { display: none; }
  .kc-discovery .dsc-search-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px 10px; }
  .kc-discovery .dsc-search-options select { width: 100%; min-width: 0; font-size: 12px; }
  .kc-discovery .dsc-search-options button { margin: 0; justify-self: end; }
  .kc-discovery .dsc-tabs { gap: 24px; margin-bottom: 20px; }
  .kc-discovery .dsc-tabs a { font-size: 12px; }
  .kc-discovery .dsc-result-summary { gap: 12px; align-items: start; }
  .kc-discovery .dsc-result-summary span { max-width: 135px; text-align: right; font-size: 10px; }
  .kc-discovery .dsc-results { gap: 30px 14px; }
  .kc-discovery .dsc-creator-caption { padding-top: 14px; gap: 12px; }
  .kc-discovery .dsc-creator-caption h2 { font-size: 32px; }
  .kc-discovery .dsc-creator-caption h2 i { display: block; margin: 0; }
  .kc-discovery .dsc-creator-caption p { font-size: 10px; }
  .kc-discovery .dsc-creator-caption button { width: 100%; font-size: 11px; min-width: 0; }
  .kc-discovery .dsc-result-type { font-size: 9px; }
  .kc-discovery .dsc-status { left: 8px; top: 8px; font-size: 9px; padding: 5px 7px; max-width: calc(100% - 16px); }
  .kc-discovery .dsc-content-result h2 { font-size: 30px; }
  .kc-discovery .dsc-content-result p { font-size: 12px; }
  .kc-discovery .dsc-empty { padding: 36px 0 50px; }
  .kc-discovery .dsc-empty h2 { font-size: 43px; }
  .kc-discovery .dsc-empty p { font-size: 13px; }
  .kc-discovery .dsc-profile { grid-template-columns: 1fr; gap: 28px; padding: 0 0 30px; }
  .kc-discovery .dsc-profile-portrait { height: 450px; }
  .kc-discovery .dsc-profile-identity { padding-top: 0; }
  .kc-discovery .dsc-profile h1 { font-size: 71px; margin-bottom: 22px; }
  .kc-discovery .dsc-profile h1 i { margin-left: 43px; }
  .kc-discovery .dsc-handle { margin-bottom: 20px; }
  .kc-discovery .dsc-bio { font-size: 13px; margin-bottom: 20px; }
  .kc-discovery .dsc-profile-actions { padding-top: 26px; width: 100%; }
  .kc-discovery .dsc-profile-actions>.primary,.kc-discovery .dsc-profile-actions>.secondary { flex: 1 1 auto; }
  .kc-discovery .dsc-services { grid-template-columns: 1fr; gap: 28px; }
  .kc-discovery .dsc-home-controls { flex-direction: column; gap: 12px; margin-bottom: 24px; border: 0; }
  .kc-discovery .dsc-home-controls .dsc-tabs { width: 100%; border-bottom: 1px solid var(--line); }
  .kc-discovery .dsc-creator-filter { width: 100%; padding: 0; }
  .kc-discovery .dsc-creator-filter select { flex: 1; }
  .kc-discovery .dsc-has-media .dsc-post-body { grid-template-columns: 1fr; gap: 22px; }
  .kc-discovery .dsc-post-copy h2 { font-size: 34px; }
  .kc-discovery .dsc-has-media .dsc-post-copy h2 { font-size: 40px; }
  .kc-discovery .dsc-post-copy>p { font-size: 13px; }
  .kc-discovery .dsc-post-top .byline small { font-size: 10px; }
  .kc-discovery .dsc-post-top .dsc-following-label { font-size: 10px; }
  .kc-discovery .dsc-follow-list { display: block; }
}
.kc-discovery .dsc-live-results { font-size: 12px; color: var(--muted); margin: 0 0 24px; }

.kc-discovery .dsc-blocked-actions { display: inline-flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.kc-discovery .dsc-blocked-actions>.fine { color: var(--wine); }
@media (max-width:600px) { .kc-discovery .dsc-creator-caption .dsc-blocked-actions { width: 100%; } }

/* One rule between feed controls and stories; shared native select semantics. */
.kc-discovery .dsc-home-controls{margin-bottom:0;padding-bottom:12px;align-items:center}
.dsc-home-controls+.story-entries{border-top:0}
.kc-discovery .dsc-creator-filter{padding-bottom:0}
.kc-discovery .dsc-select{position:relative;display:block;min-width:0}
.kc-discovery .dsc-select select{appearance:none;display:block;width:100%;min-width:0;cursor:pointer;background:var(--paper);padding:11px 40px 11px 14px;line-height:20px}
.kc-discovery .dsc-select>.icon{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:16px;height:16px;pointer-events:none}
.kc-discovery .dsc-select select:hover{border-color:var(--wine)}
.kc-discovery .dsc-select select:focus-visible{outline-offset:2px}
@supports(appearance:base-select){
  #home-creator,#home-creator::picker(select){appearance:base-select}
  #home-creator::picker-icon{display:none}
  #home-creator::picker(select){background:var(--paper);color:var(--ink);border:1px solid var(--control-border);border-radius:0;padding:6px;box-shadow:0 12px 24px var(--shadow-soft);min-width:anchor-size(width);margin-top:6px}
  #home-creator option{min-height:44px;padding:10px 12px;font-size:13px;gap:12px}
  #home-creator option:checked{background:var(--pale);color:var(--wine);font-weight:500}
  #home-creator option:hover,#home-creator option:focus{background:var(--pale);color:var(--wine)}
  #home-creator option::checkmark{color:var(--wine)}
}
@media(max-width:600px){
  .kc-discovery .dsc-home-controls{gap:12px;align-items:stretch;border-bottom:1px solid var(--line);padding-bottom:16px}
  .kc-discovery .dsc-home-controls .dsc-tabs{border-bottom:0}
  .kc-discovery .dsc-creator-filter{gap:12px;font-size:12px}
  .kc-discovery .dsc-select{flex:1}
  .kc-discovery .dsc-select select,#home-creator option{font-size:16px}
  .dsc-home-controls+.story-entries{padding-block:18px;margin-bottom:24px}
  .dsc-home-controls+.story-entries .story-section-heading{gap:4px}
  .dsc-home-controls+.story-entries .story-section-heading h2{font-size:28px;margin-bottom:4px}
  .dsc-home-controls+.story-entries .story-section-heading p{margin-bottom:4px}
  .dsc-home-controls+.story-entries .story-empty{font-size:12px;margin:8px 0 0}
}

/* Profile reading order is identity/actions, portrait, then supporting context. */
.kc-discovery .dsc-profile{grid-template-areas:"portrait identity" "portrait context";grid-template-rows:auto 1fr;row-gap:24px}
.kc-discovery .dsc-profile-identity{grid-area:identity;min-width:0}
.kc-discovery .dsc-profile-portrait{grid-area:portrait}
.kc-discovery .dsc-profile-context{grid-area:context;min-width:0}
.kc-discovery .dsc-profile-state{font-size:12px;color:var(--wine);margin:0 0 12px}
.kc-discovery .dsc-profile-actions{margin-top:0;padding-top:0}
.kc-discovery .dsc-profile-context .dsc-follow-note{font-size:12px}
.kc-discovery .dsc-filter-tools{grid-column:1/-1;display:flex;align-items:center;gap:12px;font-size:12px}
.kc-discovery .dsc-filter-tools>button{min-height:44px;min-width:44px}
.kc-discovery .dsc-filter-tools>button:last-child{margin-left:auto}
.kc-discovery .dsc-filter-toggle{display:none}
.kc-discovery .dsc-active-filters{font-size:12px;color:var(--copy);overflow-wrap:anywhere}
.kc-discovery .dsc-filter-count{font-variant-numeric:tabular-nums}
.kc-discovery .dsc-filter-options{min-width:0}
@media(max-width:600px){
  .kc-discovery .dsc-profile{grid-template-areas:"identity" "portrait" "context";grid-template-columns:minmax(0,1fr);gap:24px}
  .kc-discovery .dsc-profile h1{font-size:40px;line-height:1;margin-bottom:8px}
  .kc-discovery .dsc-profile h1 i{display:inline;margin-left:6px}
  .kc-discovery .dsc-profile-state{margin-bottom:6px}
  .kc-discovery .dsc-handle{font-size:12px;margin-bottom:16px}
  .kc-discovery .dsc-profile-actions{padding:0;gap:8px 12px}
  .kc-discovery .dsc-profile-actions .fine{font-size:12px;margin-top:0}
  .kc-discovery .dsc-profile-actions>.primary,.kc-discovery .dsc-profile-actions>.secondary{flex:1 1 auto;font-size:13px}
  .kc-discovery .dsc-profile-portrait{height:auto;aspect-ratio:3/4}
  .kc-discovery .dsc-bio{font-size:14px;margin-bottom:16px}
  .kc-discovery.dsc-explore .page-heading{padding-bottom:16px}
  .kc-discovery.dsc-explore .dsc-introduction{margin:0 0 8px;font-size:13px}
  .kc-discovery .dsc-filter-toggle{display:inline-flex;align-items:center;gap:8px;padding:0}
  .kc-discovery .dsc-filter-toggle .icon{width:16px;height:16px}
  .kc-discovery .dsc-filter-toggle[aria-expanded="true"] .icon{transform:rotate(180deg)}
  .kc-discovery .dsc-active-filters{flex:1;min-width:0}
  .kc-discovery .dsc-filter-tools{gap:12px}
  .kc-discovery .dsc-filter-options{display:none}
  .kc-discovery .dsc-filter-options.is-open{display:grid}
  .kc-discovery .dsc-filter-options select{font-size:16px}
  .kc-discovery.dsc-explore .dsc-search{margin-bottom:16px}
  .kc-discovery.dsc-explore .dsc-result-summary{margin-bottom:16px}
  .kc-discovery .dsc-result-type,.kc-discovery .dsc-creator-caption p,.kc-discovery .dsc-post-top .byline small,.kc-discovery .dsc-following-label{font-size:12px}
}
