.customer-page-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin:8px 0 28px; }
.customer-page-heading h1 { font-size:clamp(30px,3vw,44px); letter-spacing:-.04em; margin:8px 0 12px; }
.customer-page-heading p,.customer-help,.customer-handoff p { color:#746f65; line-height:1.65; font-size:16px; margin:0; }
.customer-page-heading > button { flex-shrink:0; }
.customer-panel { background:var(--cortex-surface, #fffdf8); border:1px solid #e9e1d3; border-radius:24px; padding:28px; margin-bottom:22px; }
.customer-section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.customer-section-head h2,.customer-handoff h2 { font-size:22px; margin:0; }
#customerCount { color:#888379; font-weight:500; margin-left:6px; }
.customer-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px 24px; }
.customer-form-grid label { display:flex; flex-direction:column; gap:10px; font-size:16px; }
.customer-form-grid input,.customer-password-row input { width:100%; min-width:0; border:1px solid #e3dccf; border-radius:14px; padding:14px 16px; font-size:17px; font-weight:500; background:#fcfaf6; }
.customer-password-row { display:flex; align-items:center; gap:10px; }
.customer-password-row .button { flex-shrink:0; }
.customer-panel .button { min-height:46px; padding:12px 20px; font-size:16px; }
.customer-help { margin:18px 0 22px; }
.customer-create-actions { display:flex; gap:18px; align-items:center; }
.customer-create-actions span { color:#7a766d; font-size:14px; }
.customer-row { display:grid; grid-template-columns:56px minmax(0,1fr) auto auto; align-items:center; gap:18px; padding:22px 0; border-top:1px solid #efe8db; }
.customer-logo,.profile-logo-preview { display:flex; justify-content:center; align-items:center; flex-shrink:0; width:56px; height:56px; border-radius:16px; background:#f3ecdf; color:#7d5409; font-size:18px; font-weight:600; overflow:hidden; }
.customer-logo img,.profile-logo-preview img,.company-profile-icon img,.profile-heading-mark img { display:block; width:100%; height:100%; object-fit:contain; padding:5px; }
.customer-identity { min-width:0; }
.customer-identity h3 { margin:0 0 6px; font-size:19px; overflow-wrap:anywhere; }
.customer-identity p { margin:4px 0 0; font-size:15px; color:#807c72; overflow-wrap:anywhere; }
.customer-readiness { display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
.customer-status { font-size:13px; padding:7px 11px; border-radius:20px; color:#6b6252; background:#f1ebe0; white-space:nowrap; }
.customer-status.ready { color:#256f56; background:#eaf5ef; }
.customer-readiness small { color:#878379; font-size:13px; }
.customer-counts { display:flex; gap:16px; color:#7f7a70; font-size:14px; padding-left:12px; }
.customer-counts b { font-size:18px; color:#3e3931; }
.customer-empty { color:#847e74; padding:30px 0; }
.customer-handoff { border-color:#cedfd5; background:#f5faf7; }
.customer-handoff p { margin:12px 0; }
.customer-handoff .customer-login-email { font-weight:600; color:#293c32; }
.customer-next-steps { color:#547063; font-size:15px; line-height:1.8; padding-left:22px; margin-bottom:0; }
.profile-logo-control { display:flex; gap:20px; align-items:center; padding:20px; margin:24px 0 0; border:1px solid #ebe4d7; border-radius:18px; background:#fcfaf6; }
.profile-logo-preview { width:76px; height:76px; border-radius:18px; background:white; border:1px solid #ebe4d7; }
.profile-logo-info { min-width:0; flex:1; }
.profile-logo-info > strong { font-size:17px; }
.profile-logo-info p { margin:6px 0 12px; font-size:14px; color:#827b6f; line-height:1.55; }
.profile-logo-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
.profile-logo-actions input[type=file] { max-width:100%; width:280px; font-size:14px; padding:6px; font-weight:400; min-height:44px; }
.profile-logo-actions input::file-selector-button { min-height:34px; border:1px solid #e6dfd2; border-radius:8px; background:white; padding:6px 12px; cursor:pointer; }
.profile-logo-actions .button { min-height:44px; font-size:14px; padding:8px 15px; }
.company-profile-icon.has-logo,.profile-heading-mark.has-logo { background:white; border:1px solid #ebe4d7; overflow:hidden; }
@media(max-width:1100px) { .customer-row { grid-template-columns:56px minmax(0,1fr) auto; } .customer-counts { grid-column:2 / -1; padding:0; } }
@media(max-width:640px) {
  .customer-page-heading { align-items:flex-start; flex-direction:column; gap:16px; margin-bottom:22px; }
  .customer-page-heading h1 { font-size:32px; }
  .customer-panel { padding:20px; border-radius:20px; }
  .customer-form-grid { grid-template-columns:1fr; gap:18px; }
  .customer-create-actions { flex-direction:column; align-items:flex-start; }
  .customer-row { grid-template-columns:48px minmax(0,1fr); gap:12px; }
  .customer-logo { width:48px; height:48px; }
  .customer-readiness { grid-column:2; }
  .customer-counts { grid-column:2; }
  .customer-handoff .customer-password-row { flex-wrap:wrap; }
  .profile-logo-control { align-items:flex-start; gap:14px; padding:16px; }
  .profile-logo-preview { width:54px; height:54px; }
  .profile-logo-actions { gap:8px; }
  .profile-logo-actions input[type=file] { width:100%; }
}

/* PAdmin → 客户能看到的项目 (2026-10-23): ticked items show in the customer's workspace. */
.customer-access-card .access-visible .visible-lead { margin: 0 0 14px; color: #6b6252; font-size: 13px; line-height: 1.6; }
.customer-access-card .visible-presets { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0 0 16px; }
.customer-access-card .visible-presets > span { margin-right: 4px; color: #8a7f6b; font: 650 11px/1 ui-monospace, monospace; letter-spacing: 0.12em; }
.customer-access-card .visible-presets button { min-height: 32px; padding: 0 14px; border: 1px solid rgba(154, 106, 18, 0.22); border-radius: 999px; background: #fffdf8; color: #4a4133; font-size: 13px; font-weight: 600; line-height: 1; cursor: pointer; }
.customer-access-card .visible-presets button.is-active { border-color: #1d1a14; background: #1d1a14; color: #ffd070; }
.customer-access-card .visible-group { margin: 0 0 14px; }
.customer-access-card .visible-group h4 { display: flex; align-items: baseline; gap: 8px; margin: 0 0 8px; color: #1d1a14; font-size: 13px; }
.customer-access-card .visible-group h4 small { color: #8a7f6b; font: 600 11px ui-monospace, monospace; }
.customer-access-card .visible-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.customer-access-card .access-visible label.visible-chip { display: inline-flex; flex-direction: row; align-items: center; gap: 8px; width: auto; min-height: 36px; margin: 0; padding: 0 12px 0 10px; border: 1px solid #e3dccd; border-radius: 12px; background: #fbf8f2; color: #8a7f6b; font-size: 13.5px; font-weight: 600; cursor: pointer; }
.customer-access-card .access-visible .visible-chip input { flex: none; width: 16px; height: 16px; min-height: 0; margin: 0; padding: 0; accent-color: #1d1a14; }
.customer-access-card .access-visible .visible-chip.is-on { border-color: rgba(154, 106, 18, 0.45); background: #fff; color: #1d1a14; box-shadow: 0 2px 8px rgba(60, 40, 10, 0.06); }
.customer-access-card .access-visible .visible-chip em { padding: 2px 7px; border-radius: 999px; background: #e7f4ec; color: #1f6f46; font-size: 11px; font-style: normal; line-height: 1.4; }
.customer-access-card .access-visible .visible-chip.is-off-in-use { border-style: dashed; color: #8a5a00; }
.customer-access-card .access-visible .visible-chip.is-off-in-use em { background: #fbf0d8; color: #8a5a00; }
.customer-access-card .access-visible .visible-empty { margin: 0; color: #9a917f; font-size: 13px; }
.customer-access-card .access-visible .visible-note { margin: 6px 0 0; padding: 10px 12px; border-radius: 10px; background: #fff7e6; color: #6b5420; font-size: 12.5px; line-height: 1.6; }
