.kkcp{max-width:1100px;margin:28px auto;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#262626}.kkcp *{box-sizing:border-box}.kkcp-login{max-width:460px;margin:8vh auto;background:#fff;border:1px solid #e7e7e7;border-radius:18px;padding:34px;box-shadow:0 10px 35px rgba(0,0,0,.06)}.kkcp-login h2{margin:0 0 6px}.kkcp-login p{color:#777}.kkcp-login label{display:block;font-weight:700;margin:18px 0}.kkcp-login input{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid #ccc;border-radius:9px}.kkcp button{border:0;border-radius:9px;background:#df5686;color:#fff;padding:11px 18px;font-weight:700;cursor:pointer}.kkcp-login button{width:100%}.kkcp-head{display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;border:1px solid #eee;border-radius:16px;padding:20px 24px}.kkcp-head small{color:#b54a70;font-weight:800;letter-spacing:.08em}.kkcp-head h2{margin:3px 0}.kkcp-head span{font-size:13px;color:#777}.kkcp-logout{background:#555!important}.kkcp-nav{display:flex;gap:8px;overflow:auto;margin:14px 0}.kkcp-nav a{white-space:nowrap;text-decoration:none;color:#555;background:#fff;border:1px solid #e2e2e2;border-radius:999px;padding:9px 15px;font-weight:700}.kkcp-nav a.active{background:#df5686;color:#fff;border-color:#df5686}.kkcp-main{display:grid;gap:14px}.kkcp-panel{background:#fff;border:1px solid #e8e8e8;border-radius:16px;padding:22px}.kkcp-panel h3{margin-top:0}.kkcp-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.kkcp-cards>div{background:#fff;border:1px solid #e8e8e8;border-radius:15px;padding:18px}.kkcp-cards span{display:block;color:#777;font-size:13px}.kkcp-cards strong{display:block;font-size:24px;margin-top:5px}.kkcp-booking{border:1px solid #e8e8e8;border-radius:14px;padding:18px;margin:14px 0}.kkcp-booking-head{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #eee;padding-bottom:12px}.kkcp-booking-head h4{margin:3px 0 0}.kkcp-booking-head span{font-size:13px;font-weight:700;background:#f7edf1;border-radius:999px;padding:6px 10px;height:max-content}.kkcp dl{margin:12px 0}.kkcp dl>div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid #eee;padding:9px 0}.kkcp dt{font-weight:700;color:#666}.kkcp dd{margin:0}.kkcp-response-state{background:#fafafa;border-radius:10px;padding:12px;margin-top:12px}.kkcp-response-form{margin-top:14px}.kkcp-response-buttons{display:flex;flex-wrap:wrap;gap:8px}.kkcp-response-buttons label{border:1px solid #ddd;border-radius:9px;padding:9px 12px;font-weight:700}.kkcp-response-form textarea{width:100%;margin:10px 0;padding:10px;border:1px solid #ccc;border-radius:9px}.kkcp-response-form small{display:block;margin-top:7px;color:#777}.kkcp-locked{color:#777}.kkcp-alert{border-radius:10px;padding:12px 14px;margin:12px 0}.kkcp-alert.success{background:#edf9ef;color:#246c31}.kkcp-alert.error{background:#fff0f0;color:#a22}.kkcp-profile{display:grid;grid-template-columns:220px 1fr;gap:22px}.kkcp-profile img{width:100%;border-radius:14px}.kkcp-profile h4{font-size:22px;margin:0 0 10px}.kkcp-sub{margin:18px 0 26px}.kkcp-sub h4{border-left:4px solid #df5686;padding-left:10px}.kkcp-note{color:#666;background:#fafafa;padding:10px;border-radius:8px}.kkcp-table-wrap{overflow:auto}.kkcp table{width:100%;border-collapse:collapse}.kkcp th,.kkcp td{text-align:left;border-bottom:1px solid #eee;padding:10px;white-space:nowrap}.kkcp th{background:#fafafa}.kkcp-cards.mini{margin-bottom:16px}@media(max-width:760px){.kkcp{margin:12px}.kkcp-head{padding:16px}.kkcp-cards{grid-template-columns:1fr 1fr}.kkcp-profile{grid-template-columns:1fr}.kkcp-profile img{max-width:260px}.kkcp dl>div{grid-template-columns:1fr;gap:4px}.kkcp-panel{padding:16px}}@media(max-width:420px){.kkcp-cards{grid-template-columns:1fr}.kkcp-response-buttons{display:grid}.kkcp-response-buttons label{width:100%}}
.kkcp-content-grid{display:grid;grid-template-columns:300px 1fr;gap:18px}.kkcp-content-list{display:grid;align-content:start;gap:8px}.kkcp-content-item{display:grid;gap:6px;text-decoration:none!important;color:#333!important;border:1px solid #e5e5e5;border-radius:12px;padding:13px}.kkcp-content-item.active{border-color:#df5686;background:#fff7fa}.kkcp-content-item small{color:#777}.kkcp-badge{display:inline-block;width:max-content;background:#f2f2f2;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:700}.kkcp-badge.important{background:#fff0f0;color:#b22}.kkcp-content-body{border-left:1px solid #eee;padding-left:20px}.kkcp-content-text{line-height:1.8}.kkcp-resource{display:inline-block;background:#555;color:#fff!important;text-decoration:none!important;border-radius:9px;padding:10px 14px;font-weight:700}.kkcp-read-ok{font-weight:700;color:#28743a;background:#edf9ef;border-radius:9px;padding:10px}.kkcp-staff-content{border-top:1px solid #eee;padding:18px 0}.kkcp-staff-content:first-of-type{border-top:0}@media(max-width:760px){.kkcp-content-grid{grid-template-columns:1fr}.kkcp-content-body{border-left:0;border-top:1px solid #eee;padding:18px 0 0}}

/* v1.1.2 standalone cast portal */
body.kkcp-standalone{margin:0;background:#f5f6f8;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",sans-serif;color:#222}
.kkcp-standalone-wrap{max-width:1180px;margin:0 auto;padding:24px 16px 48px}
@media(max-width:640px){.kkcp-standalone-wrap{padding:12px 8px 32px}}

/* v1.1.7 contents readability */
.kkcp-content-page{padding:0;overflow:hidden}.kkcp-content-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px 30px 24px;border-bottom:1px solid #eee;background:linear-gradient(180deg,#fff 0%,#fffafb 100%)}.kkcp-content-hero h3{font-size:26px;margin:4px 0 8px}.kkcp-content-hero p{margin:0;color:#666;line-height:1.7}.kkcp-eyebrow{font-size:11px;font-weight:800;letter-spacing:.12em;color:#b54a70}.kkcp-content-count{white-space:nowrap;background:#fff;border:1px solid #eadde2;border-radius:12px;padding:10px 14px;color:#777;font-size:12px}.kkcp-content-count strong{font-size:20px;color:#333;margin:0 3px}.kkcp-content-tools{padding:20px 30px;border-bottom:1px solid #eee;background:#fff}.kkcp-content-search{display:grid;grid-template-columns:auto minmax(0,420px);align-items:center;gap:12px;font-weight:700}.kkcp-content-search span{font-size:13px}.kkcp-content-search input{width:100%;border:1px solid #dcdcdc;border-radius:10px;padding:11px 13px;background:#fff;font-size:14px}.kkcp-content-filters{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px}.kkcp-content-filters button{background:#fff;color:#555;border:1px solid #ddd;border-radius:999px;padding:7px 12px;font-size:12px}.kkcp-content-filters button.active{background:#df5686;color:#fff;border-color:#df5686}.kkcp-content-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:24px 30px;background:#f8f8f9}.kkcp-content-card{display:flex;flex-direction:column;min-height:190px;background:#fff;border:1px solid #e6e6e6;border-radius:14px;padding:17px;text-decoration:none!important;color:#282828!important;transition:.15s ease}.kkcp-content-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.06);border-color:#dfb7c6}.kkcp-content-card.active{border:2px solid #df5686;padding:16px}.kkcp-content-card-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.kkcp-content-card h4{font-size:17px;line-height:1.45;margin:13px 0 8px}.kkcp-content-card p{font-size:13px;line-height:1.7;color:#707070;margin:0 0 14px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.kkcp-content-card-meta{margin-top:auto;display:flex;justify-content:space-between;gap:10px;color:#888;font-size:11px}.kkcp-read-state{margin-left:auto;font-size:10px;font-weight:800;border-radius:999px;padding:4px 7px}.kkcp-read-state.read{background:#edf9ef;color:#28743a}.kkcp-read-state.unread{background:#fff3e6;color:#9a5a00}.kkcp-content-detail{max-width:860px;margin:34px auto;padding:0 30px 42px}.kkcp-content-detail-head{padding-bottom:20px;border-bottom:1px solid #eee;margin-bottom:26px}.kkcp-content-detail-head h2{font-size:28px;line-height:1.45;margin:12px 0 6px}.kkcp-content-detail-badges{display:flex;flex-wrap:wrap;gap:7px}.kkcp-content-date{font-size:12px;color:#888;margin:0}.kkcp-content-text{font-size:15px;line-height:2;color:#333}.kkcp-content-text h2,.kkcp-content-text h3,.kkcp-content-text h4{line-height:1.5;margin-top:2em}.kkcp-content-text p{margin:1em 0}.kkcp-content-text ul,.kkcp-content-text ol{padding-left:1.5em}.kkcp-content-text img{max-width:100%;height:auto;border-radius:10px}.kkcp-content-text table{display:block;overflow:auto;width:100%;border-collapse:collapse}.kkcp-content-actions{margin-top:24px}.kkcp-confirm-box{margin-top:30px;background:#fff8f1;border:1px solid #f1dcc4;border-radius:12px;padding:16px 18px}.kkcp-confirm-box p{margin:0 0 12px;line-height:1.7}.kkcp-empty,.kkcp-content-noresult{padding:34px;text-align:center;color:#777}.kkcp-staff-list{display:grid;gap:18px;padding:24px 30px;background:#f8f8f9}.kkcp-staff-content{background:#fff;border:1px solid #e5e5e5;border-radius:14px;padding:24px;margin:0}.kkcp-staff-content h3{font-size:21px;margin:10px 0 4px}.kkcp-staff-content+.kkcp-staff-content{border-top:1px solid #e5e5e5}
@media(max-width:900px){.kkcp-content-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.kkcp-content-hero{display:block;padding:20px 18px}.kkcp-content-hero h3{font-size:22px}.kkcp-content-count{display:inline-block;margin-top:14px}.kkcp-content-tools{padding:16px 18px}.kkcp-content-search{grid-template-columns:1fr;gap:6px}.kkcp-content-cards{grid-template-columns:1fr;padding:16px 18px}.kkcp-content-card{min-height:0}.kkcp-content-detail{margin:26px auto;padding:0 18px 30px}.kkcp-content-detail-head h2{font-size:23px}.kkcp-staff-list{padding:16px 18px}.kkcp-staff-content{padding:18px}}

/* v1.1.8: shortcode output alignment */
.kkcp-shortcode-root{
  display:block!important;
  float:none!important;
  clear:both!important;
  width:calc(100% - 32px)!important;
  max-width:1100px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  position:relative;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  text-align:left;
}
.entry-content>.kkcp-shortcode-root,.post-content>.kkcp-shortcode-root,.wp-block-post-content>.kkcp-shortcode-root,.site-main>.kkcp-shortcode-root{margin-left:auto!important;margin-right:auto!important;}
@media(max-width:760px){.kkcp-shortcode-root{width:calc(100% - 24px)!important;margin-left:auto!important;margin-right:auto!important;}}


/* v1.1.9: unify content pages with the standard fixed-page / portal UI */
.kkcp-content-page{
  padding:22px!important;
  overflow:visible!important;
  background:#fff!important;
  border:1px solid #e8e8e8!important;
  border-radius:16px!important;
}
.kkcp-content-hero{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:0 0 18px!important;
  margin:0 0 18px!important;
  background:none!important;
  border:0!important;
  border-bottom:1px solid #eee!important;
}
.kkcp-content-hero h3{
  margin:2px 0 6px!important;
  font-size:22px!important;
  line-height:1.45!important;
}
.kkcp-content-hero p{
  margin:0!important;
  color:#666!important;
  line-height:1.75!important;
}
.kkcp-content-count{
  flex:0 0 auto!important;
  border:1px solid #e8e8e8!important;
  background:#fafafa!important;
  border-radius:12px!important;
  padding:9px 12px!important;
}
.kkcp-content-tools{
  padding:0 0 18px!important;
  margin:0 0 18px!important;
  background:none!important;
  border:0!important;
  border-bottom:1px solid #eee!important;
}
.kkcp-content-search{
  grid-template-columns:auto minmax(0,420px)!important;
}
.kkcp-content-search input{
  border-radius:9px!important;
}
.kkcp-content-filters{
  margin-top:12px!important;
}
.kkcp-content-filters button{
  border-radius:9px!important;
  padding:8px 12px!important;
}
.kkcp-content-cards{
  padding:0!important;
  background:transparent!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
}
.kkcp-content-card{
  min-height:0!important;
  border-radius:14px!important;
  padding:16px!important;
  box-shadow:none!important;
}
.kkcp-content-card:hover{
  transform:none!important;
  box-shadow:none!important;
  border-color:#d8b1c0!important;
  background:#fffafb!important;
}
.kkcp-content-card.active{
  padding:15px!important;
  background:#fff7fa!important;
}
.kkcp-content-detail{
  max-width:none!important;
  margin:22px 0 0!important;
  padding:22px 0 0!important;
  border-top:1px solid #eee!important;
}
.kkcp-content-detail-head{
  margin-bottom:20px!important;
  padding-bottom:16px!important;
}
.kkcp-content-detail-head h2{
  font-size:24px!important;
}
.kkcp-content-text{
  font-size:15px!important;
  line-height:1.9!important;
}
.kkcp-staff-list{
  display:grid!important;
  gap:12px!important;
  padding:0!important;
  background:transparent!important;
}
.kkcp-staff-content{
  border-radius:14px!important;
  padding:18px!important;
  box-shadow:none!important;
}
.kkcp-empty,.kkcp-content-noresult{
  padding:24px 12px!important;
}
@media(max-width:760px){
  .kkcp-content-page{padding:16px!important}
  .kkcp-content-hero{display:block!important}
  .kkcp-content-count{display:inline-block!important;margin-top:12px!important}
  .kkcp-content-search{grid-template-columns:1fr!important}
  .kkcp-content-cards{grid-template-columns:1fr!important}
  .kkcp-content-detail{margin-top:18px!important;padding-top:18px!important}
  .kkcp-content-detail-head h2{font-size:21px!important}
}

/* v1.2.0: content list and detail are separate screens */
.kkcp-content-detail-toolbar{margin:0 0 16px;padding:0 0 14px;border-bottom:1px solid #eee}
.kkcp-content-back{display:inline-flex;align-items:center;gap:6px;color:#555!important;text-decoration:none!important;font-weight:700;font-size:13px;background:#fafafa;border:1px solid #e2e2e2;border-radius:9px;padding:8px 12px}
.kkcp-content-back:hover{background:#f3f3f3}
.kkcp-content-detail-only{margin:0!important;padding:0!important;border-top:0!important}
.kkcp-staff-content.kkcp-content-card{border-top:1px solid #e6e6e6!important;margin:0!important}


/* v1.2.6: Lightning fixed-page one-column integration */
body.kkcp-staff-contents-page .site-body-container,
body.kkcp-cast-portal-page .site-body-container{
  display:block!important;
}

body.kkcp-staff-contents-page .main-section.main-section--col--two,
body.kkcp-cast-portal-page .main-section.main-section--col--two{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
  flex-basis:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

body.kkcp-staff-contents-page .sub-section.sub-section--col--two,
body.kkcp-cast-portal-page .sub-section.sub-section--col--two{
  display:none!important;
  width:0!important;
  max-width:0!important;
  flex:0 0 0!important;
}

body.kkcp-staff-contents-page .entry.entry-full,
body.kkcp-staff-contents-page .entry-body,
body.kkcp-cast-portal-page .entry.entry-full,
body.kkcp-cast-portal-page .entry-body{
  width:100%!important;
  max-width:100%!important;
}

body.kkcp-staff-contents-page .kkcp-shortcode-root,
body.kkcp-cast-portal-page .kkcp-shortcode-root,
.kkcp-shortcode-root{
  box-sizing:border-box!important;
  display:block!important;
  float:none!important;
  clear:both!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  transform:none!important;
  width:100%!important;
  max-width:1100px!important;
  min-width:0!important;
  margin:28px auto!important;
  padding:0!important;
}

body.kkcp-staff-contents-page .kkcp-shortcode-root > .kkcp-panel,
body.kkcp-cast-portal-page .kkcp-shortcode-root > .kkcp-panel,
.kkcp-shortcode-root > .kkcp-panel{
  width:100%!important;
  max-width:100%!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

.kkcp-content-cards{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.kkcp-content-cards > .kkcp-content-card:only-child{
  grid-column:1 / -1!important;
  width:100%!important;
}

@media(max-width:760px){
  body.kkcp-staff-contents-page .kkcp-shortcode-root,
  body.kkcp-cast-portal-page .kkcp-shortcode-root,
  .kkcp-shortcode-root{
    width:100%!important;
    max-width:100%!important;
    margin:12px auto!important;
  }
  .kkcp-content-cards{grid-template-columns:1fr!important}
}


/* v1.2.7: cleaner staff/cast contents list UI */
.kkcp-content-page{
  padding:0!important;
  overflow:hidden!important;
}

.kkcp-content-hero{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding:22px 26px 18px!important;
  margin:0!important;
  background:#fff!important;
  border-bottom:1px solid #ededed!important;
}

.kkcp-content-hero h3{
  font-size:21px!important;
  margin:2px 0 5px!important;
  line-height:1.4!important;
}

.kkcp-content-hero p{
  font-size:13px!important;
  color:#777!important;
  line-height:1.65!important;
}

.kkcp-content-count{
  background:#fafafa!important;
  border:1px solid #e8e8e8!important;
  border-radius:10px!important;
  padding:8px 11px!important;
  font-size:11px!important;
  color:#777!important;
}
.kkcp-content-count strong{
  font-size:17px!important;
}

.kkcp-content-tools{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) auto!important;
  grid-template-areas:"search search" "filters filters"!important;
  gap:12px!important;
  padding:16px 26px!important;
  margin:0!important;
  border-bottom:1px solid #ededed!important;
  background:#fcfcfc!important;
}

.kkcp-content-search{
  grid-area:search!important;
  display:grid!important;
  grid-template-columns:56px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  margin:0!important;
}
.kkcp-content-search span{
  font-size:12px!important;
  color:#555!important;
}
.kkcp-content-search input{
  height:38px!important;
  padding:8px 12px!important;
  font-size:13px!important;
  border:1px solid #ddd!important;
  border-radius:8px!important;
  box-shadow:none!important;
}
.kkcp-content-search input:focus{
  outline:none!important;
  border-color:#d94f7d!important;
  box-shadow:0 0 0 2px rgba(217,79,125,.08)!important;
}

.kkcp-content-filters{
  grid-area:filters!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin:0!important;
}
.kkcp-content-filters button{
  min-height:30px!important;
  padding:6px 11px!important;
  border-radius:7px!important;
  font-size:11px!important;
  font-weight:700!important;
  background:#fff!important;
  color:#555!important;
  border:1px solid #ddd!important;
}
.kkcp-content-filters button.active{
  background:#d94f7d!important;
  border-color:#d94f7d!important;
  color:#fff!important;
}

/* one-column content list */
.kkcp-content-cards{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  padding:0 26px 10px!important;
  background:#fff!important;
}

.kkcp-content-card,
.kkcp-staff-content.kkcp-content-card{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  grid-template-areas:
    "badges meta"
    "title action"
    "excerpt action"!important;
  column-gap:22px!important;
  row-gap:6px!important;
  align-items:center!important;
  min-height:0!important;
  width:100%!important;
  padding:18px 2px!important;
  margin:0!important;
  border:0!important;
  border-bottom:1px solid #ededed!important;
  border-radius:0!important;
  background:#fff!important;
  color:#333!important;
  box-shadow:none!important;
  text-decoration:none!important;
  transition:background .15s ease!important;
}
.kkcp-content-card:last-child{
  border-bottom:0!important;
}
.kkcp-content-card:hover{
  transform:none!important;
  box-shadow:none!important;
  background:#fffafb!important;
}

.kkcp-content-card-top{
  grid-area:badges!important;
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  margin:0!important;
}

.kkcp-content-card h4{
  grid-area:title!important;
  margin:0!important;
  font-size:16px!important;
  font-weight:700!important;
  line-height:1.5!important;
  color:#222!important;
}

.kkcp-content-card p{
  grid-area:excerpt!important;
  margin:0!important;
  font-size:12px!important;
  line-height:1.7!important;
  color:#777!important;
  display:block!important;
  -webkit-line-clamp:unset!important;
  overflow:visible!important;
}

.kkcp-content-card-meta{
  display:contents!important;
}
.kkcp-content-card-meta > span:first-child{
  grid-area:meta!important;
  align-self:start!important;
  font-size:10px!important;
  color:#999!important;
  white-space:nowrap!important;
}
.kkcp-content-card-meta > span:last-child{
  grid-area:action!important;
  align-self:center!important;
  justify-self:end!important;
  min-width:90px!important;
  text-align:right!important;
  font-size:11px!important;
  font-weight:700!important;
  color:#d94f7d!important;
  white-space:nowrap!important;
}
.kkcp-content-open b{
  font-size:18px!important;
  line-height:1!important;
  vertical-align:-1px!important;
}

.kkcp-badge{
  padding:3px 7px!important;
  border-radius:5px!important;
  font-size:10px!important;
}
.kkcp-read-state{
  font-size:9px!important;
  padding:3px 6px!important;
}

.kkcp-content-noresult,
.kkcp-empty{
  padding:28px 24px!important;
  font-size:13px!important;
}

/* detail page: easier reading */
.kkcp-content-detail-toolbar{
  padding:18px 26px 0!important;
  margin:0!important;
  border:0!important;
}
.kkcp-content-detail-only{
  max-width:820px!important;
  margin:0 auto!important;
  padding:20px 26px 36px!important;
}
.kkcp-content-detail-head{
  margin-bottom:24px!important;
}
.kkcp-content-detail-head h2{
  margin:10px 0 6px!important;
  font-size:25px!important;
}
.kkcp-content-text{
  font-size:15px!important;
  line-height:1.95!important;
}

@media(max-width:760px){
  .kkcp-content-hero{
    display:block!important;
    padding:18px!important;
  }
  .kkcp-content-count{
    display:inline-block!important;
    margin-top:10px!important;
  }
  .kkcp-content-tools{
    padding:14px 18px!important;
  }
  .kkcp-content-search{
    grid-template-columns:1fr!important;
    gap:5px!important;
  }
  .kkcp-content-cards{
    padding:0 18px 8px!important;
  }
  .kkcp-content-card,
  .kkcp-staff-content.kkcp-content-card{
    grid-template-columns:1fr!important;
    grid-template-areas:
      "badges"
      "title"
      "excerpt"
      "meta"
      "action"!important;
    gap:7px!important;
    padding:16px 0!important;
  }
  .kkcp-content-card-meta > span:last-child{
    justify-self:start!important;
    text-align:left!important;
  }
  .kkcp-content-detail-toolbar{
    padding:16px 18px 0!important;
  }
  .kkcp-content-detail-only{
    padding:18px 18px 28px!important;
  }
}


/* v1.2.8: category filtering must override grid !important */
.kkcp-content-card[hidden],
.kkcp-staff-content[hidden]{
  display:none!important;
}

/* v1.3.0: audience labels on staff content view */
.kkcp-audience-badge{font-weight:700!important}
.kkcp-audience-cast{background:#fff0f5!important;color:#b63867!important}
.kkcp-audience-staff{background:#eef5ff!important;color:#315f9f!important}
.kkcp-audience-both{background:#eef8f0!important;color:#347143!important}


/* v1.3.1: compact 2-column content cards */
.kkcp-content-cards{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
  padding:18px 26px 24px!important;
  background:#fff!important;
}

.kkcp-content-card,
.kkcp-staff-content.kkcp-content-card{
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  min-height:180px!important;
  width:100%!important;
  padding:16px!important;
  margin:0!important;
  border:1px solid #e6e6e6!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#333!important;
  box-shadow:none!important;
  text-decoration:none!important;
  transition:border-color .15s ease, background .15s ease!important;
}

.kkcp-content-card:hover{
  transform:none!important;
  box-shadow:none!important;
  border-color:#d9b3c1!important;
  background:#fffafb!important;
}

.kkcp-content-card-top{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  align-items:center!important;
  margin:0 0 10px!important;
}

.kkcp-content-card h4{
  margin:0 0 8px!important;
  font-size:16px!important;
  line-height:1.5!important;
  color:#222!important;
}

.kkcp-content-card p{
  margin:0 0 14px!important;
  font-size:12px!important;
  line-height:1.7!important;
  color:#777!important;
  display:-webkit-box!important;
  -webkit-line-clamp:3!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}

.kkcp-content-card-meta{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:auto!important;
  padding-top:12px!important;
  border-top:1px solid #f0f0f0!important;
}

.kkcp-content-card-meta > span:first-child{
  font-size:10px!important;
  color:#999!important;
  white-space:nowrap!important;
}

.kkcp-content-card-meta > span:last-child{
  font-size:11px!important;
  font-weight:700!important;
  color:#d94f7d!important;
  white-space:nowrap!important;
}

.kkcp-content-cards > .kkcp-content-card:only-child{
  grid-column:auto!important;
  max-width:540px!important;
}

@media(max-width:760px){
  .kkcp-content-cards{
    grid-template-columns:1fr!important;
    padding:14px 18px 18px!important;
  }
  .kkcp-content-card,
  .kkcp-staff-content.kkcp-content-card{
    min-height:0!important;
  }
  .kkcp-content-cards > .kkcp-content-card:only-child{
    max-width:none!important;
  }
}


/* v1.3.2: keep the two-column grid even when only one item exists */
.kkcp-content-cards > .kkcp-content-card:only-child{
  grid-column:auto!important;
  width:100%!important;
  max-width:none!important;
}
@media(max-width:760px){
  .kkcp-content-cards > .kkcp-content-card:only-child{
    width:100%!important;
    max-width:none!important;
  }
}

/* v1.3.5 cast self-service scheduling */
.kkcp-shift-tools{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;margin:14px 0}.kkcp-shift-switch{display:flex;gap:7px}.kkcp-shift-switch a{padding:8px 12px;border:1px solid #ddd;border-radius:9px;text-decoration:none;color:#333;background:#fff}.kkcp-shift-switch a.active{background:#df5686;border-color:#df5686;color:#fff}.kkcp-shift-range{font-size:17px;font-weight:700}.kkcp-shift-list{display:grid;gap:8px;margin:16px 0}.kkcp-shift-row{display:grid;grid-template-columns:86px 1fr;align-items:center;gap:12px;border:1px solid #e9e9e9;background:#fff;border-radius:10px;padding:12px}.kkcp-shift-date{display:flex;gap:6px;align-items:center}.kkcp-shift-date strong{font-size:17px}.kkcp-shift-date span{color:#777}.kkcp-shift-fields,.kkcp-shift-times{display:flex;flex-wrap:wrap;align-items:end;gap:12px}.kkcp-shift-fields label,.kkcp-shift-times label{display:grid;gap:5px;font-size:12px;color:#666}.kkcp-shift-fields select{font-size:14px;padding:8px 10px;min-width:100px;border-radius:8px;border:1px solid #ddd;background:#fff;color:#222}.kkcp-shift-save{padding:13px 24px;border:0;border-radius:10px;background:#df5686;color:#fff;font-weight:700;cursor:pointer}.kkcp-shift-locked{color:#999}@media(max-width:650px){.kkcp-shift-row{grid-template-columns:1fr;gap:8px}.kkcp-shift-fields,.kkcp-shift-times{gap:7px}.kkcp-shift-fields select{min-width:0}.kkcp-shift-save{width:100%}}
