/* Practitioner application + admin review. Builds on styles.css and site.css. */
.pa-main{padding-bottom:var(--space-16)}
.pa-top{max-width:46rem;display:grid;gap:var(--space-4);padding-top:var(--space-12)}
.pa-top h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:.98;letter-spacing:-.04em;font-weight:400}
.pa-top p:not(.label){font-size:var(--text-lg);color:var(--muted);max-width:36rem}
.pa-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:var(--line);border-block:1px solid var(--line);margin:var(--space-12) 0}
.pa-values div{background:var(--bg,#FBFBF6);padding:var(--space-6) var(--space-6) var(--space-6) 0;display:grid;gap:.4rem}
.pa-values div+div{padding-left:var(--space-6)}
.pa-values strong{font-weight:500;font-size:var(--text-base)}
.pa-values span{color:var(--muted);font-size:var(--text-sm)}

.pa-shell{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:var(--space-12);align-items:start}
.pa-steps{position:sticky;top:110px;display:grid;gap:2px;list-style:none;margin:0;padding:0;counter-reset:s}
.pa-steps li{display:flex;align-items:baseline;gap:1rem;padding:.85rem 0;border-top:1px solid var(--line);color:var(--muted);font-size:var(--text-sm);transition:color .2s}
.pa-steps li:last-child{border-bottom:1px solid var(--line)}
.pa-steps li::before{counter-increment:s;content:"0" counter(s);font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.06em}
.pa-steps li[aria-current="step"]{color:var(--ink)}
.pa-steps li.is-done{color:var(--ink)}
.pa-steps li.is-done::after{content:"";margin-left:auto;width:.45rem;height:.45rem;border-radius:50%;background:var(--ink);align-self:center}
.pa-steps-note{margin-top:var(--space-6);font-size:var(--text-sm);color:var(--muted);max-width:18rem}

.pa-panel{background:#F2F2EC;border-radius:var(--r-xl,28px);padding:clamp(1.5rem,3.5vw,3rem);display:grid;gap:var(--space-8);min-width:0}
.pa-panel h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.04;letter-spacing:-.03em;font-weight:400}
.pa-panel-head{display:grid;gap:.6rem}
.pa-panel-head p:not(.label){color:var(--muted);font-size:var(--text-sm);max-width:34rem}
.pa-step[hidden]{display:none}
.pa-step{display:grid;gap:var(--space-8)}
.pa-hint{font-size:var(--text-xs);color:var(--muted);line-height:1.5}
.pa-field-error .pm-field input,.pa-field-error input,.pa-field-error textarea,.pa-field-error select{border-color:#8A2C1D}
.pm-field select{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--cream,#FBFBF6);border:1px solid rgba(28,58,19,.16);border-radius:14px;min-height:52px;padding:.85rem 2.4rem .85rem 1rem;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%231C3A13' stroke-width='1.4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}
.pm-field select:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(28,58,19,.08)}
.pa-nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid rgba(28,58,19,.1)}
.pa-nav .pa-back{background:none;border:0;padding:.75rem 0;font:inherit;font-size:var(--text-sm);color:var(--ink);cursor:pointer;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(28,58,19,.3)}
.pa-nav .pa-back[hidden]{display:block;visibility:hidden}
.pa-nav .btn[disabled]{opacity:.55}
.pa-message{font-size:var(--text-sm);color:#8A2C1D;min-height:1.2em}

/* Documents */
.pa-docs{display:grid;gap:0;border-top:1px solid rgba(28,58,19,.12)}
.pa-doc{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem var(--space-4);align-items:center;padding:var(--space-5) 0;border-bottom:1px solid rgba(28,58,19,.12)}
.pa-doc-title{font-weight:500}
.pa-doc-title em{font-style:normal;font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-left:.5rem}
.pa-doc .pa-hint{grid-column:1}
.pa-pick{grid-row:1/span 2;grid-column:2;position:relative;display:inline-flex;align-items:center;min-height:44px;padding:.55rem 1.1rem;border:1px solid rgba(28,58,19,.22);border-radius:999px;font-size:var(--text-sm);cursor:pointer;background:var(--cream,#FBFBF6);transition:border-color .2s}
.pa-pick:hover{border-color:var(--ink)}
.pa-pick input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.pa-pick:focus-within{outline:2px solid var(--ink);outline-offset:2px}
.pa-files{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.pa-files:empty{display:none}
.pa-files li{display:inline-flex;align-items:center;gap:.6rem;padding:.4rem .5rem .4rem .9rem;border-radius:999px;background:var(--ink);color:var(--cream,#FBFBF6);font-size:var(--text-xs);max-width:100%}
.pa-files li span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:16rem}
.pa-files button{border:0;background:rgba(251,251,246,.16);color:inherit;width:1.6rem;height:1.6rem;border-radius:50%;cursor:pointer;font-size:.9rem;line-height:1}

/* Review */
.pa-review{display:grid;gap:0;border-top:1px solid rgba(28,58,19,.12)}
.pa-review div{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:var(--space-4);padding:.9rem 0;border-bottom:1px solid rgba(28,58,19,.12);font-size:var(--text-sm)}
.pa-review dt{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding-top:.15rem}
.pa-review dd{margin:0;overflow-wrap:anywhere}
.pa-check{display:grid;grid-template-columns:auto 1fr;gap:.9rem;align-items:start;font-size:var(--text-sm);cursor:pointer}
.pa-check input{appearance:none;-webkit-appearance:none;width:22px;height:22px;margin:0;border:1px solid rgba(28,58,19,.3);border-radius:7px;background:var(--cream,#FBFBF6);display:grid;place-content:center;cursor:pointer}
.pa-check input:checked{background:var(--ink);border-color:var(--ink)}
.pa-check input:checked::after{content:"";width:10px;height:6px;border:solid var(--cream,#FBFBF6);border-width:0 0 1.6px 1.6px;transform:rotate(-45deg) translate(1px,-1px)}
.pa-check input:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
.pa-done{display:grid;gap:var(--space-4);align-content:start}
.pa-done h2{font-size:clamp(2.2rem,4vw,3.4rem)}
.pa-ref{font-family:var(--mono);font-size:var(--text-sm);letter-spacing:.08em}
.pa-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-6);align-items:center;background:var(--ink);color:var(--cream,#FBFBF6);border-radius:var(--r-xl,28px);padding:clamp(1.75rem,4vw,3rem);margin-top:var(--space-12)}
.pa-cta h2{font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.05;letter-spacing:-.03em;font-weight:400}
.pa-cta p{color:rgba(251,251,246,.72);font-size:var(--text-sm);margin-top:.5rem;max-width:32rem}
.pa-cta .label{color:rgba(251,251,246,.6)}

/* Admin */
.ad-top{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--space-6);padding-top:var(--space-12);margin-bottom:var(--space-8)}
.ad-top h1{font-size:clamp(2.2rem,4.5vw,3.6rem);line-height:1;letter-spacing:-.04em;font-weight:400}
.ad-top .ad-who{font-size:var(--text-sm);color:var(--muted);display:flex;gap:var(--space-4);align-items:center}
.ad-link{background:none;border:0;padding:0;font:inherit;font-size:var(--text-sm);color:var(--ink);cursor:pointer;text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(28,58,19,.3)}
.ad-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;margin-bottom:var(--space-6);scrollbar-width:none}
.ad-tabs::-webkit-scrollbar{display:none}
.ad-tabs button{flex:none;display:inline-flex;gap:.5rem;align-items:center;min-height:42px;padding:.5rem 1.05rem;border:1px solid rgba(28,58,19,.18);border-radius:999px;background:transparent;font:inherit;font-size:var(--text-sm);color:var(--ink);cursor:pointer}
.ad-tabs button[aria-pressed="true"]{background:var(--ink);color:var(--cream,#FBFBF6);border-color:var(--ink)}
.ad-tabs b{font-weight:500;font-family:var(--mono);font-size:var(--text-xs);opacity:.7}
.ad-grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,8fr);gap:var(--space-8);align-items:start}
.ad-list{display:grid;gap:0;border-top:1px solid var(--line);list-style:none;margin:0;padding:0}
.ad-item{border-bottom:1px solid var(--line)}
.ad-item button{width:100%;text-align:left;background:none;border:0;padding:var(--space-5) var(--space-4);margin:0;font:inherit;color:var(--ink);cursor:pointer;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.35rem var(--space-4);border-radius:16px;transition:background .2s}
.ad-item button:hover{background:rgba(28,58,19,.04)}
.ad-item button[aria-current="true"]{background:#F2F2EC}
.ad-item strong{font-weight:500;font-size:var(--text-base)}
.ad-item small{grid-column:1;color:var(--muted);font-size:var(--text-xs)}
.ad-item .ad-chip{grid-row:1;grid-column:2}
.ad-item time{grid-column:2;justify-self:end;font-family:var(--mono);font-size:var(--text-xs);color:var(--muted)}
.ad-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .7rem;border-radius:999px;font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(28,58,19,.2);white-space:nowrap}
.ad-chip[data-s="submitted"]{background:var(--ink);color:var(--cream,#FBFBF6);border-color:var(--ink)}
.ad-chip[data-s="approved"]{background:var(--sage-soft,#E3E8D8);border-color:transparent}
.ad-chip[data-s="declined"]{color:var(--muted)}
.ad-chip[data-s="info_requested"]{border-style:dashed}
.ad-empty{padding:var(--space-8) 0;color:var(--muted);font-size:var(--text-sm)}
.ad-detail{background:#F2F2EC;border-radius:var(--r-xl,28px);padding:clamp(1.5rem,3vw,2.75rem);display:grid;gap:var(--space-8);min-width:0}
.ad-detail-head{display:grid;gap:.75rem}
.ad-detail-head h2{font-size:clamp(1.9rem,3.2vw,2.7rem);line-height:1.02;letter-spacing:-.03em;font-weight:400}
.ad-meta{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;font-size:var(--text-sm);color:var(--muted)}
.ad-meta a{color:var(--ink);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(28,58,19,.3)}
.ad-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(9.5rem,1fr));gap:8px}
.ad-check{background:var(--cream,#FBFBF6);border-radius:16px;padding:var(--space-4) var(--space-5);display:grid;gap:.3rem;border:1px solid transparent}
.ad-check span{font-family:var(--mono);font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.ad-check strong{font-weight:500;font-size:var(--text-sm)}
.ad-check.is-warn{border-color:#B9862E}
.ad-check.is-bad{border-color:#8A2C1D}
.ad-check.is-bad strong{color:#8A2C1D}
.ad-section{display:grid;gap:var(--space-4)}
.ad-section>h3{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:400}
.ad-dl{display:grid;gap:0;border-top:1px solid rgba(28,58,19,.12);margin:0}
.ad-dl div{display:grid;grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:var(--space-4);padding:.8rem 0;border-bottom:1px solid rgba(28,58,19,.12);font-size:var(--text-sm)}
.ad-dl dt{color:var(--muted)}
.ad-dl dd{margin:0;overflow-wrap:anywhere;white-space:pre-line}
.ad-docs{display:grid;gap:8px;list-style:none;margin:0;padding:0}
.ad-docs a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem var(--space-4);align-items:center;background:var(--cream,#FBFBF6);border-radius:16px;padding:var(--space-4) var(--space-5);color:var(--ink);transition:box-shadow .2s}
.ad-docs a:hover{box-shadow:0 0 0 1px var(--ink) inset}
.ad-docs strong{font-weight:500;font-size:var(--text-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ad-docs small{grid-column:1;color:var(--muted);font-size:var(--text-xs)}
.ad-docs em{grid-row:1/span 2;grid-column:2;font-style:normal;font-size:var(--text-sm)}
.ad-notes textarea,.ad-compose textarea{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--cream,#FBFBF6);border:1px solid rgba(28,58,19,.16);border-radius:14px;padding:.85rem 1rem;min-height:96px;resize:vertical}
.ad-notes textarea:focus,.ad-compose textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 0 0 3px rgba(28,58,19,.08)}
.ad-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.ad-row .ad-saved{font-size:var(--text-xs);color:var(--muted)}
.btn-line{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(28,58,19,.25)}
.btn-line:hover{box-shadow:inset 0 0 0 1px var(--ink)}
.btn[disabled]{opacity:.5;pointer-events:none}
.ad-decision{display:grid;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid rgba(28,58,19,.12)}
.ad-compose{display:grid;gap:var(--space-4);background:var(--cream,#FBFBF6);border-radius:20px;padding:var(--space-5)}
.ad-compose[hidden]{display:none}
.ad-compose p{font-size:var(--text-sm)}
.ad-invite{background:var(--ink);color:var(--cream,#FBFBF6);border-radius:22px;padding:clamp(1.25rem,3vw,2rem);display:grid;gap:var(--space-4)}
.ad-invite .label{color:rgba(251,251,246,.6)}
.ad-invite h3{font-size:var(--text-xl);font-weight:400;letter-spacing:-.02em}
.ad-invite .ad-code{font-family:var(--mono);font-size:clamp(1.8rem,4vw,2.6rem);letter-spacing:.18em;color:var(--cream,#FBFBF6);line-height:1.1}
.ad-invite p{font-size:var(--text-sm);color:rgba(251,251,246,.75)}
.ad-invite .btn-dark{background:var(--cream,#FBFBF6);color:var(--ink)}
.ad-invite .btn-line{color:var(--cream,#FBFBF6);box-shadow:inset 0 0 0 1px rgba(251,251,246,.35)}
.ad-timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;border-left:1px solid rgba(28,58,19,.2);margin-left:.3rem}
.ad-timeline li{position:relative;padding:0 0 var(--space-4) var(--space-5);font-size:var(--text-sm)}
.ad-timeline li::before{content:"";position:absolute;left:-4px;top:.45rem;width:7px;height:7px;border-radius:50%;background:var(--ink)}
.ad-timeline time{display:block;font-family:var(--mono);font-size:var(--text-xs);color:var(--muted)}
.ad-timeline q{display:block;color:var(--muted);quotes:none}
.ad-back{display:none}
.ad-signin{max-width:28rem;margin:var(--space-12) auto 0;display:grid;gap:var(--space-6)}
.ad-signin h1{font-size:clamp(2.2rem,4vw,3.2rem);line-height:1;letter-spacing:-.04em;font-weight:400}
.ad-signin form{background:#F2F2EC;border-radius:var(--r-xl,28px);padding:clamp(1.5rem,4vw,2.5rem);display:grid;gap:var(--space-5)}
.ad-toast{position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--cream,#FBFBF6);padding:.8rem 1.2rem;border-radius:999px;font-size:var(--text-sm);opacity:0;transition:opacity .25s,transform .25s;pointer-events:none;z-index:60}
.ad-toast.is-on{opacity:1;transform:translateX(-50%) translateY(0)}

@media (max-width:1080px){
  .ad-grid{grid-template-columns:1fr}
  .ad-grid.has-detail .ad-list-wrap{display:none}
  .ad-grid:not(.has-detail) .ad-detail{display:none}
  .ad-back{display:inline-flex;justify-self:start}
}
@media (max-width:860px){
  .pa-shell{grid-template-columns:1fr;gap:var(--space-6)}
  .pa-steps{position:static;display:flex;gap:6px}
  .pa-steps li{flex:1;border:0;padding:0;height:3px;border-radius:3px;background:rgba(28,58,19,.15);font-size:0;overflow:hidden}
  .pa-steps li:last-child{border:0}
  .pa-steps li::before,.pa-steps li.is-done::after{display:none}
  .pa-steps li[aria-current="step"],.pa-steps li.is-done{background:var(--ink)}
  .pa-steps-note{display:none}
  .pa-values{grid-template-columns:1fr}
  .pa-values div,.pa-values div+div{padding:var(--space-5) 0}
  .pa-review div,.ad-dl div{grid-template-columns:1fr;gap:.25rem}
  .pa-cta{grid-template-columns:1fr}
  .pa-doc{grid-template-columns:1fr}
  .pa-pick{grid-row:auto;grid-column:1;justify-self:start}
}
.pa-cta .btn{background:var(--cream,#FBFBF6);color:var(--ink)}
.pa-panel[hidden],.pa-step[hidden],.ad-compose[hidden],#paOther[hidden],#paRadius[hidden]{display:none!important}
.pa-step h2:focus,.ad-detail h2:focus,.pa-done:focus{outline:none}

/* Directory: full practitioner bios */
.dir-list{margin-top:var(--space-8);border-top:1px solid var(--line)}
.dir-entry{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:clamp(1.5rem,5vw,4.5rem);padding:clamp(2.5rem,6vw,4.5rem) 0;border-bottom:1px solid var(--line);scroll-margin-top:96px}
.dir-photo img{width:100%;aspect-ratio:8/9;height:auto;object-fit:cover;border-radius:var(--r-lg,22px);background:var(--stone,#F1F1EB);position:sticky;top:110px}
.dir-copy{min-width:0;max-width:44rem}
.dir-copy>.label{margin:0}
.dir-copy h2{font-size:clamp(2rem,3.6vw,3rem);font-weight:400;letter-spacing:-.035em;line-height:1.05;margin:var(--space-4) 0 var(--space-3)}
.dir-role{color:var(--muted);font-size:var(--text-base);margin:0}
.dir-tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:var(--space-6) 0 0}
.dir-tags span{font-size:var(--text-xs);padding:.4rem .8rem;border-radius:99px;box-shadow:inset 0 0 0 1px var(--line-strong,rgba(0,0,0,.18))}
.dir-bio{margin-top:var(--space-8)}
.dir-bio p{margin:0 0 var(--space-5)}
.dir-bio .bio{max-width:68ch}
.dir-details{margin-top:var(--space-4);border-top:1px solid var(--line)}
.dir-details .p-block{display:grid;grid-template-columns:11rem minmax(0,1fr);gap:var(--space-6);padding:var(--space-5) 0;border-bottom:1px solid var(--line)}
.dir-details .p-block-label{margin:0;font-size:var(--text-xs);padding-top:.2rem}
.dir-details ul{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}
.dir-details.migrated-body li,.dir-details li{font-size:var(--text-sm);line-height:1.55;max-width:none;margin:0;padding:0}
.dir-details li::before,.dir-details li::marker{content:none}
.dir-details .p-credits,.dir-details .p-tags{display:grid;gap:var(--space-2);margin:0}
.dir-details .p-credit,.dir-details .p-tag{font-size:var(--text-sm);line-height:1.55;background:none;padding:0;border-radius:0}
.dir-details .p-contact{display:none}
.dir-contact{margin-top:var(--space-6)}
@media (max-width:760px){
  .dir-entry{grid-template-columns:1fr;gap:var(--space-6)}
  .dir-photo img{position:static;max-width:240px;aspect-ratio:4/5}
  .dir-details .p-block{grid-template-columns:1fr;gap:var(--space-3)}
}

/* Performer Pass tiers */
.pm-tiers{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4);margin:var(--space-16) 0}
.pm-tier{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-10);border-radius:var(--r-lg,22px);background:var(--stone-2)}
.pm-tier.is-company{background:var(--ink);color:var(--cream,#FBFBF6)}
.pm-tier.is-company .label,.pm-tier.is-company p,.pm-tier.is-company li{color:rgba(251,251,246,.8)}
.pm-tier-top{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4)}
.pm-tier h3{font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:400;letter-spacing:-.035em;margin:0;line-height:1.1}
.pm-tier p{margin:0;line-height:1.6;max-width:44ch}
.pm-tier ul{list-style:none;padding:var(--space-5) 0 0;margin:auto 0 0;border-top:1px solid var(--line);display:grid;gap:var(--space-3);font-size:var(--text-sm)}
.pm-tier.is-company ul{border-color:rgba(251,251,246,.2)}
.pm-tier li{display:flex;gap:var(--space-3);line-height:1.5}
.pm-tier li::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor;flex-shrink:0;margin-top:.55em;opacity:.7}
.pm-tier-tag{font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;padding:var(--space-2) var(--space-3);border-radius:99px;background:var(--bg);color:var(--ink);white-space:nowrap}
.pm-tier.is-company .pm-tier-tag{background:#D8F06A;color:#1C3A13}
.pm-tiers-head{margin-top:var(--space-16)}
.pm-tiers-head h2{font-size:clamp(1.9rem,3vw,2.75rem);font-weight:400;letter-spacing:-.035em;line-height:1.1;margin:var(--space-3) 0 0}
.pm-tiers-head+.pm-tiers{margin-top:var(--space-8)}
@media (max-width:760px){.pm-tiers{grid-template-columns:1fr}.pm-tier{padding:var(--space-8)}}
.pm-tier .btn{align-self:flex-start;margin-top:var(--space-2)}
/* Admin: directory listing */
.ad-listing{display:flex;gap:var(--space-4);align-items:center;margin:0 0 var(--space-4)}
.ad-listing img{width:72px;height:81px;object-fit:cover;border-radius:12px;flex:none}
.ad-listing h3{margin:var(--space-1) 0 2px;font-size:var(--text-lg);font-weight:500}
.ad-listing p{margin:0}
.ad-listing-form{display:grid;grid-template-columns:140px 1fr;gap:var(--space-5);align-items:start;margin:var(--space-4) 0}
.ad-listing-photo{aspect-ratio:8/9;border-radius:14px;overflow:hidden;background:rgba(31,58,31,.06);display:grid;place-items:center;font-size:13px;color:var(--muted,#6b7a6b);text-align:center;padding:0}
.ad-listing-photo img{width:100%;height:100%;object-fit:cover;display:block}
@media (max-width:640px){.ad-listing-form{grid-template-columns:1fr}.ad-listing-photo{width:140px}}
/* Directory: listing without a headshot */
.pm-monogram{width:100%;aspect-ratio:8/9;border-radius:var(--r-lg,22px);background:var(--ink);color:var(--bg);display:flex;flex-direction:column;justify-content:space-between;padding:clamp(20px,3vw,32px);position:sticky;top:110px;box-sizing:border-box}
.pm-monogram span{font-size:clamp(56px,7vw,96px);line-height:.9;letter-spacing:-.04em;font-weight:500}
.pm-monogram small{font-family:var(--mono,'Geist Mono',monospace);font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.72}
.person-image .pm-monogram{position:static;border-radius:inherit}
@media (max-width:760px){.dir-photo .pm-monogram{position:static;max-width:240px;aspect-ratio:4/5}}
/* Admin: sections and partners */
.ad-switch{display:inline-flex;gap:4px;padding:4px;border-radius:999px;background:#F2F2EC;margin:0 0 var(--space-8)}
.ad-switch button{min-height:40px;padding:.45rem 1.2rem;border:0;border-radius:999px;background:transparent;font:inherit;font-size:var(--text-sm);color:var(--ink);cursor:pointer}
.ad-switch button[aria-pressed="true"]{background:var(--ink);color:var(--cream,#FBFBF6)}
.ap-bar{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}
.ap-bar .pa-hint{margin:0;max-width:52ch}
.ap-form{display:grid;gap:var(--space-6)}
.ap-form select{width:100%;font:inherit;font-size:16px;color:var(--ink);background:var(--cream,#FBFBF6);border:1px solid rgba(28,58,19,.16);border-radius:14px;padding:.8rem 1rem;min-height:52px;-webkit-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#56664F 50%),linear-gradient(135deg,#56664F 50%,transparent 50%);background-position:calc(100% - 20px) 50%,calc(100% - 15px) 50%;background-size:5px 5px;background-repeat:no-repeat}
.ap-logo{display:flex;gap:var(--space-5);align-items:center}
.ap-logo-tile{width:88px;height:88px;border-radius:20px;background:var(--cream,#FBFBF6);box-shadow:inset 0 0 0 1px rgba(28,58,19,.1);display:grid;place-items:center;overflow:hidden;flex:none}
.ap-logo-tile img{width:100%;height:100%;object-fit:contain;padding:10px;box-sizing:border-box}
.ap-logo-tile span{font-size:1.6rem;font-weight:500;letter-spacing:-.03em;color:var(--ink)}
.ap-logo-act{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center}
.ap-logo-act .pa-hint{flex-basis:100%;margin:0}
.ap-file{position:relative;overflow:hidden;cursor:pointer}
.ap-file input{position:absolute;inset:0;opacity:0;cursor:pointer}
.ap-toggle{display:flex;gap:.9rem;align-items:flex-start;padding:var(--space-4) var(--space-5);border-radius:16px;background:var(--cream,#FBFBF6);cursor:pointer}
.ap-toggle input{width:20px;height:20px;margin:.15rem 0 0;accent-color:var(--ink);flex:none}
.ap-toggle span{display:grid;gap:.15rem}
.ap-toggle strong{font-weight:500;font-size:var(--text-sm)}
.ap-toggle small{color:var(--muted);font-size:var(--text-xs)}
.ap-preview{display:grid;gap:var(--space-3)}
.ap-preview .pmp-grid{grid-template-columns:minmax(0,22rem)}
.ap-preview .pmp-card{background:var(--cream,#FBFBF6)}
/* Members */
.am-bar{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}
.am-search{display:grid;gap:.5rem;flex:1 1 22rem;max-width:34rem}
.am-search input{min-height:48px;padding:.7rem 1.1rem;border:1px solid rgba(28,58,19,.18);border-radius:999px;background:#fff;font:inherit;font-size:var(--text-sm);color:var(--ink)}
.am-search input:focus{outline:2px solid var(--ink);outline-offset:2px}
.am-bar .pa-hint{margin:0}
.am-more{margin-top:var(--space-4)}
.am-head{grid-template-columns:minmax(0,1fr) auto;align-items:start}
.am-head .ad-sub{margin:.4rem 0 0;color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere}
.am-pass .pm-field{margin:var(--space-4) 0}
.am-pass textarea{width:100%;min-height:72px;resize:vertical}
.am-state{margin:0;font-size:var(--text-sm)}
.am-state--off{color:#6b1d12}
.am-reason{display:grid;gap:.35rem;margin:var(--space-4) 0 0;padding:var(--space-4);border-radius:14px;background:#F2F2EC;font-size:var(--text-sm)}
.am-pause{border-color:#6b1d12;color:#6b1d12}
.am-pause:hover{background:#6b1d12;color:#FBFBF6}
.am-more[hidden]{display:none}
.am-bar{align-items:flex-end}
.am-bar-act{display:flex;align-items:center;gap:var(--space-5);flex-wrap:wrap}
.am-count{flex-basis:100%}
.am-sec-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-4)}
.am-sec-head h3{margin:0;font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:400}
.am-form{margin-bottom:var(--space-5)}
.am-form .pa-hint{margin:0}
.am-form textarea{width:100%;resize:vertical}
.am-code{margin:0 0 var(--space-6);padding:var(--space-5);border-radius:16px;background:#121211;color:#FBFBF6}
.am-code .label{color:rgba(251,251,246,.6)}
.am-code-num{margin:.35rem 0 .6rem;font-size:1.9rem;letter-spacing:.32em;font-weight:500;font-variant-numeric:tabular-nums}
.am-code .pa-hint{color:rgba(251,251,246,.72);margin:0;overflow-wrap:anywhere}
.am-danger{border-top:1px solid rgba(107,29,18,.18)}
.am-danger{padding-top:var(--space-6)}
.am-danger>h3{color:#6b1d12}
.am-remove{margin-top:var(--space-4)}
.am-remove summary{cursor:pointer;display:inline-flex;font-size:var(--text-sm);color:#6b1d12;text-decoration:underline;text-underline-offset:3px;list-style:none}
.am-remove summary::-webkit-details-marker{display:none}
.am-remove[open] summary{margin-bottom:var(--space-2)}
.am-remove .pm-field{margin:var(--space-4) 0}
.am-remove textarea,.am-remove input{width:100%}
.am-remove-btn{background:#6b1d12;color:#FBFBF6;border:1px solid #6b1d12}
.am-remove-btn:hover{background:#4f150d;border-color:#4f150d}
.am-remove-btn:disabled{opacity:.5}
#amList .ad-chip{justify-self:end}
