/* clients.css - Clients, Inbox, Reminders, My profile, dashboard cards.
   2026-10-15. ASCII only. Uses the portal tokens (--navy, --teal, ...). */

.nav-badge{margin-left:auto;background:#e8674a;color:#fff;border-radius:999px;font-size:10.5px;font-weight:700;
  min-width:20px;height:20px;padding:0 6px;display:inline-grid;place-items:center;box-shadow:0 0 0 2px var(--navy)}
.nav-badge[hidden]{display:none}
.my-profile-link{display:block;margin-bottom:8px}
.btn-link{background:none;border:none;color:var(--teal-dark);font-weight:600;font-size:13px;padding:0}
.btn-link:hover{text-decoration:underline}

/* ---------- avatars, pills ---------- */
.cl-av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:15px;color:#fff;flex:none;
  background:linear-gradient(135deg,var(--navy),var(--navy-light));letter-spacing:.02em}
.cl-av.sm{width:34px;height:34px;font-size:12.5px}
.cl-av.lg{width:76px;height:76px;font-size:26px;box-shadow:0 16px 30px -16px rgba(13,43,62,.6)}
.cl-av.t-seller{background:linear-gradient(135deg,#a8642f,#d39b5a)}
.cl-av.t-both{background:linear-gradient(135deg,var(--navy),var(--teal))}
.cl-type{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:3px 9px;
  background:#e3eef8;color:#245078}
.cl-type.t-seller{background:#f6e8d7;color:#8a4f1d}
.cl-type.t-both{background:color-mix(in srgb,var(--teal) 15%,#fff);color:var(--teal-dark)}
.cl-st{font-size:12px;font-weight:600;color:var(--driftwood);display:inline-flex;align-items:center;gap:5px}
.cl-st::before{content:"";width:7px;height:7px;border-radius:50%;background:#c9bfa9}
.cl-st.s-active::before{background:#2e7d5b}
.cl-st.s-invited::before{background:#d39b2a}
.cl-st.s-inactive::before{background:#b4412e}
.cl-badge{background:#e8674a;color:#fff;border-radius:999px;font-size:11px;font-weight:700;min-width:22px;height:22px;padding:0 7px;display:inline-grid;place-items:center}

/* ---------- client list ---------- */
.cl-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.cl-toolbar input[type=search]{padding:9px 12px;border:1px solid var(--border);border-radius:999px;font:inherit;font-size:14px;min-width:220px;background:#fff}
.cl-toolbar #cl-convert{margin-left:auto;display:inline-flex;align-items:center;gap:6px}
.cl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:16px}
.cl-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px;cursor:pointer;outline:none;
  transition:transform .2s,box-shadow .2s,border-color .2s}
.cl-card:hover,.cl-card:focus-visible{transform:translateY(-3px);border-color:color-mix(in srgb,var(--teal) 40%,var(--border));
  box-shadow:0 20px 36px -22px rgba(13,43,62,.5)}
.cl-card-top{display:flex;gap:12px;align-items:center}
.cl-card-id{flex:1;min-width:0}
.cl-name{font-family:var(--font-display);font-size:19px;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cl-sub{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:4px}
.cl-stats{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px;font-size:13px;color:var(--ink)}
.cl-stats span{display:inline-flex;align-items:center;gap:5px}
.cl-stats .cmk-ic{width:15px;height:15px;color:var(--teal-dark)}
.cl-foot{display:flex;justify-content:space-between;gap:8px;margin-top:12px;padding-top:10px;border-top:1px solid var(--border);font-size:12px;color:var(--driftwood)}
.cl-foot span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cl-empty{text-align:center;padding:56px 16px;color:var(--driftwood)}
.cl-empty .cmk-ic.big{width:44px;height:44px;color:var(--teal);opacity:.8}
.cl-empty h3{font-family:var(--font-display);font-weight:500;font-size:22px;color:var(--navy);margin:10px 0 6px}

/* convert picker / modal */
.clp-list{max-height:52vh;overflow-y:auto;display:flex;flex-direction:column;gap:6px}
.clp-row{display:flex;align-items:center;gap:10px;text-align:left;border:1px solid var(--border);background:#fff;border-radius:12px;padding:9px 10px;font:inherit}
.clp-row:hover{border-color:var(--teal);background:var(--sand-light)}
.clp-main{flex:1;min-width:0;display:flex;flex-direction:column}
.clp-main small{color:var(--driftwood);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.clp-st{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--driftwood);font-weight:700}
.cv-who{display:flex;gap:12px;align-items:center;background:var(--sand-light);border-radius:12px;padding:12px}
.cv-types{display:grid;gap:8px}
.cv-type{display:flex;gap:10px;align-items:flex-start;border:1.5px solid var(--border);border-radius:12px;padding:12px;cursor:pointer;transition:border-color .2s,background .2s}
.cv-type:has(input:checked){border-color:var(--teal);background:color-mix(in srgb,var(--teal) 7%,#fff)}
.cv-type input{margin-top:3px;accent-color:var(--teal)}
.cv-type span{display:flex;flex-direction:column}
.cv-type small{color:var(--driftwood)}
.cv-link{width:100%;font:12px var(--font-mono);padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--sand-light);margin-top:6px}
.cv-panel{display:flex;align-items:center;gap:12px;border:1px solid color-mix(in srgb,var(--teal) 35%,var(--border));
  background:linear-gradient(135deg,color-mix(in srgb,var(--teal) 8%,#fff),#fff);border-radius:14px;padding:12px 14px;margin:6px 0 16px}
.cv-panel div{flex:1;display:flex;flex-direction:column}
.cv-panel small{color:var(--driftwood)}
.cv-ic{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--navy);color:#fff;flex:none}
.cv-ic.ok{background:#2e7d5b}

/* ---------- client page ---------- */
.cl-back{background:none;border:none;color:var(--teal-dark);font-weight:600;font-size:14px;margin-bottom:10px;padding:0}
.cl-hero{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid var(--border);border-radius:20px;
  padding:20px 22px;position:relative;overflow:hidden}
.cl-hero::before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:linear-gradient(90deg,var(--teal),var(--navy))}
.cl-hero-id{flex:1;min-width:240px}
.cl-hero h1{font-family:var(--font-display);font-weight:500;font-size:clamp(24px,3vw,32px);color:var(--navy);line-height:1.1}
.cl-contact{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--driftwood);margin-top:8px}
.cl-contact span{display:inline-flex;gap:5px;align-items:center}
.cl-hero-act{display:flex;flex-wrap:wrap;gap:8px}
.cl-hero-act .btn-sm{display:inline-flex;align-items:center;gap:6px}
.cl-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--border);margin:18px 0;scrollbar-width:none}
.cl-tabs::-webkit-scrollbar{display:none}
.cl-tabs button{flex:none;background:none;border:none;border-bottom:2px solid transparent;padding:11px 14px;font-size:14px;color:var(--driftwood);margin-bottom:-1px;
  display:inline-flex;align-items:center;gap:6px}
.cl-tabs button.on{color:var(--navy);border-bottom-color:var(--teal);font-weight:600}
.cl-tabs button i{width:8px;height:8px;border-radius:50%;background:#e8674a}
.cl-tabs button span{background:var(--navy);color:#fff;border-radius:999px;font-size:10.5px;padding:1px 7px}
.cl-ov{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.cl-tile{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;background:#fff;border:1px solid var(--border);
  border-radius:14px;padding:14px;font:inherit;color:var(--ink);transition:transform .2s,border-color .2s}
.cl-tile:hover{transform:translateY(-2px);border-color:var(--teal)}
.cl-tile .cmk-ic{color:var(--teal-dark);width:22px;height:22px}
.cl-tile b{font-family:var(--font-display);font-weight:500;font-size:22px;color:var(--navy)}
.cl-tile span{font-size:12.5px;color:var(--driftwood)}
.cl-tile.hot{border-color:#e8674a;background:linear-gradient(135deg,#fff3ef,#fff)}
.cl-tile.hot .cmk-ic{color:#e8674a}
.cl-two{display:grid;grid-template-columns:1.4fr 1fr;gap:14px;margin-top:14px}
.cl-panel{background:#fff;border:1px solid var(--border);border-radius:16px;padding:16px 18px}
.cl-panel h3{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--driftwood);margin-bottom:10px}
.cl-mini{padding:8px 0;border-bottom:1px solid var(--sand)}
.cl-mini:last-child{border-bottom:none}
.cl-mini b{color:var(--navy);font-size:13.5px}
.cl-mini span{float:right;font-size:12px;color:var(--driftwood)}
.cl-mini p{font-size:13.5px;color:var(--ink);margin-top:3px;clear:both}
.cl-dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:14px;margin-bottom:12px}
.cl-dl dt{color:var(--driftwood)}
.cl-dl dd{color:var(--ink);text-transform:capitalize}
.cl-dl.grid{grid-template-columns:repeat(auto-fill,minmax(150px,auto) minmax(180px,1fr));background:#fff;border:1px solid var(--border);border-radius:14px;padding:16px;margin-top:14px}
@media (max-width:860px){.cl-two{grid-template-columns:1fr}.cl-dl.grid{grid-template-columns:auto 1fr}}
.cl-prop-head{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}
.cl-prop-act{display:flex;gap:8px;flex-wrap:wrap}
.cl-prop-act .btn-sm{display:inline-flex;gap:6px;align-items:center}
.cl-pill{display:inline-block;border-radius:999px;font-size:12px;font-weight:700;padding:4px 11px;background:var(--sand);color:var(--navy)}
.cl-pill.p-submitted{background:#fdf0d7;color:#8a5a0c}.cl-pill.p-in_review{background:#e3eef8;color:#245078}
.cl-pill.p-listed{background:#ddf0e6;color:#1f6a46}
.cl-note{display:flex;gap:8px;align-items:center;background:#ddf0e6;color:#1f6a46;border-radius:12px;padding:10px 14px;margin-top:12px;font-size:14px}
.cl-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;margin-top:14px}
.cl-photo{aspect-ratio:4/3;border-radius:12px;overflow:hidden;background:var(--sand-light);cursor:zoom-in}
.cl-photo img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.cl-photo:hover img{transform:scale(1.05)}
.cl-reqs{display:flex;flex-direction:column;gap:12px}
.cl-req{background:#fff;border:1px solid var(--border);border-radius:14px;padding:14px 16px}
.cl-req header{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:8px}
.cl-req-svc{font-family:var(--font-display);font-size:18px;color:var(--navy)}
.cl-req-st{margin-left:auto;font:inherit;font-size:13px;font-weight:600;border-radius:999px;padding:5px 10px;border:1px solid var(--border);background:#fff}
.cl-req-st.s-new{background:#fdf0d7;border-color:#efd29a}.cl-req-st.s-in_progress{background:#e3eef8;border-color:#bcd3ea}
.cl-req-st.s-done{background:#ddf0e6;border-color:#a9d7bd}
.cl-req p{font-size:14px;line-height:1.55}
.cl-req-note{display:flex;flex-direction:column;gap:4px;margin-top:10px;font-size:12px;color:var(--driftwood)}
.cl-req-note input{padding:8px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:14px;color:var(--ink)}

/* special dates */
.cl-dates-intro,.rm-intro{display:flex;gap:12px;align-items:flex-start;background:linear-gradient(135deg,#fff6ec,#fff);border:1px solid #f0dcc2;
  border-radius:14px;padding:14px 16px;font-size:14px;line-height:1.5;color:var(--ink)}
.cl-dates-intro .cmk-ic,.rm-intro .cmk-ic{color:#c06a2c;width:24px;height:24px;margin-top:2px}
.cl-date-form{display:grid;grid-template-columns:1.1fr .7fr 1fr 1.3fr auto;gap:10px;align-items:end;margin:14px 0;background:#fff;
  border:1px solid var(--border);border-radius:14px;padding:14px}
.cl-date-form label{display:flex;flex-direction:column;gap:4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--driftwood)}
.cl-date-form input,.cl-date-form select{padding:9px 10px;border:1px solid var(--border);border-radius:8px;font:inherit;font-size:14px;color:var(--ink);
  text-transform:none;letter-spacing:0;font-weight:400;background:#fff}
.cl-date-form .btn-sm{display:inline-flex;gap:6px;align-items:center;height:40px}
@media (max-width:900px){.cl-date-form{grid-template-columns:1fr 1fr}.cl-date-form .btn-sm{grid-column:1/-1}}
.cl-dates{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.cl-date{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--border);border-radius:14px;padding:12px 14px}
.cl-date.due{border-color:#e8674a;box-shadow:0 0 0 3px #fde5dd}
.cl-date-ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#fff1e6;color:#c06a2c;flex:none}
.cl-date-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--driftwood)}
.cl-date-main b{color:var(--navy);font-size:14px}
.cl-date-main .gift{color:var(--teal-dark);display:inline-flex;gap:4px;align-items:center}
.cl-date-big{text-align:center;line-height:1}
.cl-date-big b{display:block;font-family:var(--font-display);font-weight:500;font-size:24px;color:var(--navy)}
.cl-date-big span{font-size:12px;color:var(--driftwood)}

/* ---------- threads ---------- */
.cl-thread-wrap{height:min(68vh,720px);background:#fff;border:1px solid var(--border);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.th-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border);background:#fff}
.th-who{flex:1;min-width:0;display:flex;flex-direction:column}
.th-who b{color:var(--navy)}
.th-who span{font-size:12px;color:var(--driftwood)}
.th-back{display:none}
.th-lock{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--driftwood);padding:7px 14px;background:var(--sand-light);border-bottom:1px solid var(--border)}
.th-lock .cmk-ic{width:14px;height:14px}
.th-body{flex:1;overflow-y:auto;padding:16px 18px;background:
  radial-gradient(600px 300px at 100% 0,color-mix(in srgb,var(--teal) 6%,transparent),transparent 70%),#fcfaf6}
.th-day{text-align:center;margin:14px 0 10px}
.th-day span{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--driftwood);background:#fff;
  border:1px solid var(--border);border-radius:999px;padding:3px 10px}
.th-msg{display:flex;flex-direction:column;max-width:min(560px,82%);margin-bottom:12px}
.th-msg.me{margin-left:auto;align-items:flex-end}
.th-bub{padding:10px 14px;border-radius:18px;font-size:14.5px;line-height:1.5;white-space:normal;word-wrap:break-word;
  background:#fff;border:1px solid var(--border);color:var(--ink);border-bottom-left-radius:6px}
.th-msg.me .th-bub{background:linear-gradient(135deg,var(--navy),var(--navy-light));color:#fff;border:none;border-bottom-left-radius:18px;border-bottom-right-radius:6px}
.th-meta{font-size:11px;color:var(--driftwood);margin-top:4px;padding:0 4px}
.th-compose{display:flex;gap:10px;align-items:flex-end;padding:12px 14px;border-top:1px solid var(--border);background:#fff}
.th-compose textarea{flex:1;resize:none;border:1px solid var(--border);border-radius:14px;padding:10px 12px;font:inherit;font-size:14.5px;max-height:160px}
.th-compose textarea:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 18%,transparent)}
.th-send{display:inline-flex;align-items:center;gap:6px;height:44px;border-radius:14px !important;padding:0 16px !important}

/* ---------- inbox ---------- */
.ib{display:grid;grid-template-columns:340px 1fr;gap:0;height:calc(100vh - 230px);min-height:480px;background:#fff;border:1px solid var(--border);
  border-radius:18px;overflow:hidden}
.ib-list{border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0;background:#fdfbf7}
.ib-list input{margin:12px;padding:9px 12px;border:1px solid var(--border);border-radius:999px;font:inherit;font-size:14px;background:#fff}
#ib-threads{overflow-y:auto;flex:1}
.ib-t{display:flex;gap:10px;align-items:center;width:100%;text-align:left;border:none;background:none;padding:12px 14px;border-left:3px solid transparent;font:inherit}
.ib-t:hover{background:var(--sand-light)}
.ib-t.on{background:#fff;border-left-color:var(--teal);box-shadow:inset 0 -1px 0 var(--border),inset 0 1px 0 var(--border)}
.ib-t[hidden]{display:none}
.ib-t-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.ib-t-top{display:flex;justify-content:space-between;gap:8px}
.ib-t-top b{color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ib-t-top small{color:var(--driftwood);font-size:11.5px;flex:none}
.ib-t-prev{font-size:13px;color:var(--driftwood);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ib-t.unread .ib-t-prev{color:var(--ink);font-weight:600}
.ib-t-agent{font-size:11px;color:var(--teal-dark);font-weight:600}
.ib-thread{display:flex;flex-direction:column;min-height:0}
.ib-thread .th-body{flex:1}
#ib-seg i{font-style:normal;background:#e8674a;color:#fff;border-radius:999px;font-size:10.5px;padding:0 6px;margin-left:2px}
#ib-seg i:empty{display:none}
@media (max-width:860px){
  .ib{grid-template-columns:1fr;height:calc(100vh - 250px)}
  .ib-thread{display:none}
  .ib.show-thread .ib-list{display:none}
  .ib.show-thread .ib-thread{display:flex}
  .th-back{display:grid}
  .th-head .th-open{display:none}
  .cl-thread-wrap{height:70vh}
}

/* ---------- reminders ---------- */
.rm-h{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--driftwood);margin:22px 0 10px}
.rm-list{display:flex;flex-direction:column;gap:10px}
.rm{display:flex;gap:16px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px;transition:box-shadow .2s}
.rm.due{border-color:#e8674a;box-shadow:0 18px 34px -26px rgba(232,103,74,.8)}
.rm.done{opacity:.75}
.rm-date{width:64px;height:64px;border-radius:14px;background:linear-gradient(160deg,var(--navy),var(--navy-light));color:#fff;
  display:flex;align-items:baseline;justify-content:center;padding-top:14px;flex:none}
.rm.due .rm-date{background:linear-gradient(160deg,#c9532f,#e8674a)}
.rm-date b{font-family:var(--font-display);font-size:26px;font-weight:500}
.rm-date span{font-size:14px;opacity:.85}
.rm-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.rm-top{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.rm-top b{color:var(--navy);font-size:15.5px}
.rm-ic .cmk-ic{color:#c06a2c}
.rm-kind{font-size:13px;color:var(--ink)}
.rm-when{font-size:12.5px;color:var(--driftwood)}
.rm-gift{font-size:13px;color:var(--teal-dark);display:flex;gap:5px;align-items:center}
.rm-doneline{font-size:12.5px;color:#1f6a46;display:flex;gap:4px;align-items:center;flex-wrap:wrap}
.rm-doneline .cmk-ic{width:14px;height:14px}
.rm-act{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;max-width:340px}
.rm-btn{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:#fff;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600;color:var(--navy)}
.rm-btn:hover{border-color:var(--teal)}
.rm-btn.on{background:#2e7d5b;border-color:#2e7d5b;color:#fff}
.rm-skip,.rm-open{background:none;border:none;font-size:12.5px;color:var(--driftwood);padding:6px 8px}
.rm-open{color:var(--teal-dark);font-weight:600}
@media (max-width:760px){.rm{flex-wrap:wrap}.rm-act{max-width:none;justify-content:flex-start;width:100%}}

/* ---------- dashboard cards ---------- */
.dash-two{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0 6px}
.dash-card{background:#fff;border:1px solid var(--border);border-radius:16px;padding:14px 16px}
.dash-card header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.dash-card h3{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--navy);display:flex;gap:7px;align-items:center}
.dash-card h3 .cmk-ic{color:var(--teal-dark)}
.dash-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:none;background:none;padding:8px 6px;border-radius:10px;font:inherit}
.dash-row:hover{background:var(--sand-light)}
.dash-row > span:nth-child(2){flex:1;min-width:0;display:flex;flex-direction:column}
.dash-row small{color:var(--driftwood);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dash-date{width:40px;height:40px;border-radius:10px;background:#fff1e6;color:#c06a2c;display:flex;align-items:baseline;justify-content:center;padding-top:7px;font-size:11px;flex:none}
.dash-date b{font-family:var(--font-display);font-size:18px;font-weight:500}
@media (max-width:860px){.dash-two{grid-template-columns:1fr}}

/* ---------- my profile ---------- */
.pf{display:grid;grid-template-columns:340px 1fr;gap:18px;align-items:start}
.pf-card{background:#fff;border:1px solid var(--border);border-radius:20px;padding:24px;text-align:center;position:relative;overflow:hidden}
.pf-card::before{content:"";position:absolute;inset:0 0 auto 0;height:90px;background:linear-gradient(135deg,var(--navy),var(--teal))}
.pf-photo{position:relative;width:120px;height:120px;margin:28px auto 12px;border-radius:50%;border:4px solid #fff;overflow:hidden;
  background:var(--sand);display:grid;place-items:center;box-shadow:0 16px 30px -16px rgba(0,0,0,.5)}
.pf-photo img{width:100%;height:100%;object-fit:cover}
.pf-photo > span{font-family:var(--font-display);font-size:40px;color:var(--navy)}
.pf-up{position:absolute;left:0;right:0;bottom:0;background:rgba(13,43,62,.78);color:#fff;font-size:11px;font-weight:600;padding:6px 0;cursor:pointer;
  display:flex;gap:4px;justify-content:center;align-items:center;opacity:0;transition:opacity .2s}
.pf-photo:hover .pf-up,.pf-up:focus-within{opacity:1}
@media (hover:none){.pf-up{opacity:1}}
.pf-card h2{font-family:var(--font-display);font-weight:500;font-size:24px;color:var(--navy)}
.pf-title{color:var(--teal-dark);font-weight:600;font-size:14px;margin-top:2px}
.pf-lines{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--driftwood);margin-top:12px}
.pf-lines span{display:inline-flex;gap:5px;align-items:center;justify-content:center}
.pf-bio{font-size:14px;line-height:1.6;color:var(--ink);margin-top:12px;text-align:left}
.pf-prev{margin-top:14px;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.pf-form{background:#fff;border:1px solid var(--border);border-radius:20px;padding:22px;display:grid;grid-template-columns:1fr 1fr;gap:14px}
.pf-form label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--driftwood)}
.pf-form input,.pf-form textarea{padding:10px 12px;border:1px solid var(--border);border-radius:10px;font:inherit;font-size:14.5px;color:var(--ink);
  text-transform:none;letter-spacing:0;font-weight:400}
.pf-form .wide{grid-column:1/-1}
@media (max-width:860px){.pf{grid-template-columns:1fr}.pf-form{grid-template-columns:1fr}}
@media (max-width:860px){
  .nav-item{position:relative}
  .nav-item .nav-badge{position:absolute;top:2px;right:10px;margin:0;min-width:18px;height:18px;font-size:10px}
}
@media (min-width:861px){.sidebar{overflow-y:auto;scrollbar-width:thin}}

/* staff sign-in: door to the client portal */
.client-door{text-align:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--border);font-size:13px;color:var(--driftwood)}
.client-door a{color:var(--teal-dark);font-weight:600;text-decoration:none}
.client-door a:hover{text-decoration:underline}
/* language (2026-10-15) */
.lang-chip{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:6px;font-size:10px;font-weight:700;letter-spacing:.06em;
  background:var(--sand-light);color:var(--navy);border:1px solid var(--border);vertical-align:middle}
.cv-langs{display:flex;gap:10px;flex-wrap:wrap}
.cv-lang{display:flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--border);border-radius:10px;cursor:pointer;font-size:14px}
.cv-lang:has(input:checked){border-color:var(--navy);background:var(--sand-light)}
.cl-lang{display:inline-flex;align-items:center;gap:6px;padding:0 4px 0 10px;border:1px solid var(--border);border-radius:9px;background:#fff;height:34px}
.cl-lang .cmk-ic{width:16px;height:16px;color:var(--navy)}
.cl-lang select{border:0;background:transparent;font:inherit;font-size:13px;padding:4px 2px;height:30px}

/* Platform Admin: delete a client portal (2026-10-15) */
.cl-hero-act .cl-del{color:#b4412e;border-color:#e6c2ba}
.cl-hero-act .cl-del:hover{background:#fbefec}
.cl-del-confirm{display:block;margin-top:12px;font-size:13px;font-weight:600;color:var(--navy);text-align:left}
.cl-del-confirm input{display:block;width:100%;margin-top:6px;height:40px;padding:0 12px;border:1px solid var(--border);border-radius:9px;font:inherit;font-size:16px;letter-spacing:.08em}
.cmk-confirm-act .btn-sm:disabled{opacity:.45;cursor:not-allowed}

/* Territories page: open to every agent (2026-10-15) */
.terr-note{display:flex;gap:12px;align-items:flex-start;margin:0 0 18px;padding:14px 16px;border:1px solid var(--border);border-left:3px solid #6f9a1c;border-radius:12px;background:#fff;font-size:14px;line-height:1.5;color:var(--navy);max-width:760px}
.terr-note .cmk-ic{flex:none;width:20px;height:20px;margin-top:1px;color:#5b7f16}
.terr-note b{font-weight:600}
