:root{
  --ppt-bg:#f6f3ee;
  --ppt-card:#ffffff;
  --ppt-text:#17151f;
  --ppt-muted:#6d6258;
  --ppt-line:#e4ddd2;
  --ppt-soft:#efe8dc;
  --ppt-soft-2:#fff3df;
  --ppt-orange:#d85b00;
  --ppt-orange-2:#f4b640;
  --ppt-dark:#202020;
  --ppt-link:#5d3f2f;
  --ppt-radius:18px;
  --ppt-shadow:0 10px 30px rgba(39,35,31,.06);
}

*{box-sizing:border-box}

html{
  min-width:320px;
  background:var(--ppt-bg);
}

body{
  margin:0;
  min-height:100vh;
  font-family:Arial,"Helvetica Neue",sans-serif;
  background:var(--ppt-bg);
  color:var(--ppt-text);
  font-size:16px;
  line-height:1.35;
}

a{
  color:var(--ppt-link);
  text-decoration:none;
}

a:hover{
  text-decoration:underline;
}

.wrap{
  width:100%;
  max-width:none;
  margin:0;
  padding:24px clamp(14px,3vw,42px);
}

.card{
  width:100%;
  background:var(--ppt-card);
  border:1px solid var(--ppt-line);
  border-radius:var(--ppt-radius);
  padding:clamp(16px,2vw,24px);
  margin:0 0 18px;
  box-shadow:var(--ppt-shadow);
}

h1{
  font-size:clamp(28px,4vw,46px);
  line-height:1.08;
  margin:0 0 12px;
  letter-spacing:-.02em;
  font-weight:700;
}

h2{
  font-size:clamp(20px,2.4vw,28px);
  line-height:1.15;
  margin:0 0 14px;
  font-weight:700;
}

h3{
  margin:0 0 10px;
}

p{
  margin:0 0 12px;
}

.small{
  font-size:13px;
  color:var(--ppt-muted);
  line-height:1.4;
}

.grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:16px;
  width:100%;
}

.badge{
  display:inline-block;
  border-radius:999px;
  padding:5px 10px;
  background:var(--ppt-soft);
  color:var(--ppt-text);
  margin:2px;
  font-size:13px;
  line-height:1.2;
  white-space:normal;
}

.table{
  width:100%;
  border-collapse:collapse;
  font-size:14px;
}

.table th,
.table td{
  border-bottom:1px solid #eee4d8;
  padding:9px 10px;
  vertical-align:top;
  text-align:left;
}

.table th{
  position:sticky;
  top:0;
  z-index:1;
  background:#fff8ef;
  font-weight:700;
}

.warn{
  background:var(--ppt-soft-2);
}

.ok{
  background:#edf6e9;
}

.blocked{
  opacity:.55;
}

.filters a{
  display:inline-block;
  margin:3px 6px 3px 0;
  padding:7px 11px;
  border-radius:999px;
  background:var(--ppt-soft);
  color:var(--ppt-text);
}

form{
  margin:0;
}

label{
  display:block;
  margin:14px 0 6px;
  color:var(--ppt-text);
  font-weight:600;
}

input,
select,
textarea{
  width:100%;
  max-width:100%;
  padding:12px 13px;
  border:1px solid #cfc6b8;
  border-radius:12px;
  background:#fff;
  color:var(--ppt-text);
  font:inherit;
}

button,
.button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:12px 18px;
  border:0;
  border-radius:12px;
  background:var(--ppt-orange);
  color:#fff;
  font:inherit;
  font-weight:700;
  cursor:pointer;
}

button:hover,
.button:hover{
  filter:brightness(.96);
  text-decoration:none;
}

.err{
  background:#ffe5df;
  border:1px solid #e8a596;
  border-radius:12px;
  padding:10px 12px;
  margin:10px 0;
}

.ppt-topbar{
  width:100%;
  background:var(--ppt-dark);
  color:#fff;
  padding:12px clamp(14px,3vw,42px);
}

.ppt-brand{
  display:flex;
  align-items:center;
  gap:12px;
  font-weight:700;
}

.ppt-brand-mark{
  width:42px;
  height:42px;
  border-radius:12px;
  background:var(--ppt-orange);
}

.ppt-page-title{
  background:linear-gradient(90deg,#fff 0%,#fff 72%,#f8efe1 100%);
  border-left:8px solid var(--ppt-orange);
}

.table-wrap{
  width:100%;
  overflow:auto;
}

@media (max-width:760px){
  .wrap{
    padding:14px 10px;
  }

  .card{
    border-radius:14px;
    padding:14px;
  }

  .grid{
    grid-template-columns:1fr;
    gap:12px;
  }

  .table{
    min-width:760px;
  }

  .table th,
  .table td{
    padding:8px;
  }

  h1{
    font-size:30px;
  }

  h2{
    font-size:22px;
  }

  button,
  .button{
    width:100%;
  }
}

/* PPT brand logo and favicon base */
.ppt-brandbar{
  width:100%;
  background:#fff;
  border-bottom:1px solid var(--ppt-line,#e4ddd2);
  padding:14px clamp(14px,3vw,42px);
}

.ppt-brandbar-link{
  display:inline-flex;
  align-items:center;
  max-width:min(620px,100%);
}

.ppt-brandbar-logo{
  display:block;
  width:min(520px,100%);
  height:auto;
  max-height:92px;
  object-fit:contain;
}

@media (max-width:760px){
  .ppt-brandbar{
    padding:10px 12px;
  }
  .ppt-brandbar-logo{
    max-height:68px;
  }
}

/* PPT clean navigation */
.ppt-brandbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}

.ppt-brandnav{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  font-size:15px;
  font-weight:700;
}

.ppt-brandnav a{
  color:var(--ppt-text,#17151f);
  padding:8px 10px;
  border-radius:999px;
}

.ppt-brandnav a:hover{
  color:var(--ppt-orange,#d85b00);
  background:var(--ppt-soft,#efe8dc);
  text-decoration:none;
}

@media (max-width:760px){
  .ppt-brandbar{
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }

  .ppt-brandnav{
    width:100%;
    gap:6px;
    font-size:14px;
  }

  .ppt-brandnav a{
    padding:7px 8px;
    background:var(--ppt-soft,#efe8dc);
  }
}

/* PPT9_CURATOR_BANK_HUMAN_UI_START */
.curator-bank-screen .curator-hero p {
    max-width: 980px;
}

.curator-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(160px, 1fr));
    gap: 14px;
    margin-top: 22px;
}

.metric-card {
    display: block;
    padding: 18px 20px;
    border: 1px solid var(--line, #e4d8c8);
    border-radius: 18px;
    background: #fffaf2;
    text-decoration: none;
    color: inherit;
}

.metric-card span {
    display: block;
    font-size: 14px;
    color: #6b5b4a;
    margin-bottom: 8px;
}

.metric-card b {
    display: block;
    font-size: 34px;
    line-height: 1;
}

.curator-filter {
    display: grid;
    grid-template-columns: minmax(260px, 1.5fr) minmax(200px, 1fr) minmax(220px, 1fr) auto;
    gap: 14px;
    align-items: end;
}

.curator-filter label {
    display: grid;
    gap: 7px;
    font-weight: 700;
}

.curator-filter input,
.curator-filter select {
    width: 100%;
    min-height: 46px;
    border: 1px solid #d8c8b8;
    border-radius: 14px;
    padding: 0 14px;
    background: #fff;
    font: inherit;
}

.curator-filter-actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

.curator-summary-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.human-chipline {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    margin-top: 10px;
}

.human-chip {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 12px;
    border-radius: 999px;
    background: #f3eadc;
    color: #1f1b17;
    text-decoration: none;
    font-size: 14px;
}

.human-chip.warn {
    background: #fff1d6;
}

.human-chip.ok {
    background: #eaf3df;
}

.curator-list-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 18px;
}

.human-practice-list {
    display: grid;
    gap: 16px;
}

.human-practice-card {
    border: 1px solid #e2d4c3;
    border-radius: 22px;
    background: #fffdf8;
    padding: 20px;
}

.human-practice-card.needs-review {
    background: #fff7e8;
}

.human-practice-card.is-ready {
    background: #f5fbef;
}

.human-practice-main {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 18px;
    align-items: start;
}

.human-practice-main h3 {
    margin: 6px 0 6px;
    font-size: 24px;
    line-height: 1.2;
}

.human-card-kicker {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    color: #6b5b4a;
    font-size: 14px;
}

.human-card-kicker span {
    display: inline-flex;
    padding: 4px 10px;
    border-radius: 999px;
    background: #f1e7d8;
}

.human-state {
    white-space: nowrap;
    border-radius: 999px;
    background: #1f1b17;
    color: #fff;
    padding: 8px 13px;
    font-size: 14px;
    font-weight: 700;
}

.human-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin-top: 12px;
    color: #5f5144;
    font-size: 15px;
}

.human-attention {
    margin-top: 14px;
}

.human-details {
    margin-top: 14px;
    border-top: 1px solid #eadfce;
    padding-top: 12px;
}

.human-details summary {
    cursor: pointer;
    font-weight: 800;
}

.human-description {
    margin-top: 10px;
    color: #332b24;
    line-height: 1.55;
}

.human-empty {
    margin-top: 14px;
    padding: 14px;
    border-radius: 16px;
    background: #fff;
    color: #6b5b4a;
}

.service-details {
    color: #6b5b4a;
}

.service-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(140px, 1fr));
    gap: 12px;
    margin-top: 12px;
}

.service-grid div {
    display: grid;
    gap: 4px;
    padding: 10px;
    border-radius: 12px;
    background: #fff;
}

.service-grid b {
    color: #3b3128;
}

@media (max-width: 900px) {
    .curator-metrics,
    .curator-summary-grid,
    .service-grid {
        grid-template-columns: 1fr 1fr;
    }

    .curator-filter {
        grid-template-columns: 1fr;
    }

    .curator-filter-actions {
        align-items: stretch;
    }
}

@media (max-width: 620px) {
    .curator-metrics,
    .curator-summary-grid,
    .service-grid,
    .human-practice-main {
        grid-template-columns: 1fr;
    }

    .human-state {
        width: fit-content;
    }

    .curator-filter-actions {
        flex-direction: column;
    }

    .curator-filter-actions .btn {
        width: 100%;
        text-align: center;
    }

    .human-practice-card {
        padding: 16px;
        border-radius: 18px;
    }

    .human-practice-main h3 {
        font-size: 21px;
    }
}
/* PPT9_CURATOR_BANK_HUMAN_UI_END */


/* VIDEO_PPT003_CURATOR_NAV */
.curator-workspace-context{display:grid;gap:18px}
.curator-workspace-nav{display:flex;flex-wrap:wrap;gap:8px}
.curator-workspace-nav a{display:inline-flex;align-items:center;min-height:38px;padding:8px 12px;border:1px solid #e2d6c8;border-radius:999px;background:#fffaf3;color:#3c2f26;font-weight:700;text-decoration:none}
.curator-workspace-nav a:hover{background:#f4e7d8;text-decoration:none}
.curator-workspace-nav a.is-active{background:#1f2937;color:#fff;border-color:#1f2937}
@media(max-width:700px){.curator-workspace-nav a{flex:1 1 auto;justify-content:center}}
