/* ProClean CRM app layout v0.5.3 - standalone responsive app */

html {
  width: 100%;
  min-width: 0;
}
body.pc-app-standalone {
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  background: #f5f5f7;
  overflow-x: auto;
}
body.pc-app-standalone,
body.pc-app-standalone * {
  box-sizing: border-box;
}
html,
body {
  overflow-x: auto;
}
body.page .entry-content,
body.page .wp-block-post-content,
body.page .site-main,
body.page .content-area,
body.page main,
body.page article,
body.page .site-content {
  max-width: none !important;
  width: 100% !important;
}
body:has(.pc-app) .entry-content,
body:has(.pc-app) .wp-block-post-content,
body:has(.pc-app) .site-main,
body:has(.pc-app) .content-area,
body:has(.pc-app) main,
body:has(.pc-app) article,
body:has(.pc-app) .site-content,
body:has(.pc-app) .wp-site-blocks {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  overflow-x: visible !important;
}
.pc-app,
.pc-app *,
.pc-app *::before,
.pc-app *::after {
  box-sizing: border-box;
}
.pc-app {
  --pc-pink: #d63384;
  --pc-pink-dark: #9b1f5a;
  --pc-dark: #202124;
  --pc-bg: #f5f5f7;
  --pc-border: #e4e4e7;
  --pc-muted: #667085;
  font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background: var(--pc-bg);
  min-height: 100vh;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: clamp(10px, 1.6vw, 22px);
  color: var(--pc-dark);
  overflow-x: visible;
  font-size: 14px;
  line-height: 1.42;
}
.pc-app > * {
  max-width: 100%;
  min-width: 0;
}
.pc-app a { text-decoration: none; }
.pc-app h1 { font-size: clamp(20px, 2vw, 28px); line-height: 1.15; margin: 0 0 14px; overflow-wrap: anywhere; }
.pc-app h2 { font-size: clamp(17px, 1.35vw, 22px); line-height: 1.2; margin: 0 0 12px; overflow-wrap: anywhere; }
.pc-app h3 { font-size: clamp(15px, 1.05vw, 18px); line-height: 1.25; margin: 0 0 6px; overflow-wrap: anywhere; }
.pc-app p { font-size: 14px; line-height: 1.45; overflow-wrap: anywhere; }
.pc-app code { white-space: pre-wrap; overflow-wrap: anywhere; }

.pc-app-top {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  background: linear-gradient(135deg, #202124 0%, #34343a 100%);
  color: #fff;
  border-radius: 16px;
  padding: 12px 14px;
  margin-bottom: 12px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.pc-app-brand { display: flex; align-items: center; gap: 10px; min-width: 0; max-width: 100%; }
.pc-app-brand img {
  width: 40px;
  height: 40px;
  object-fit: contain;
  background: #fff;
  border-radius: 11px;
  padding: 4px;
  flex: 0 0 auto;
}
.pc-app-brand strong {
  display: block;
  font-size: clamp(17px, 1.35vw, 22px);
  line-height: 1.1;
  white-space: normal;
  overflow-wrap: anywhere;
}
.pc-app-brand span { display: block; color: #d9d9d9; font-size: 12px; overflow-wrap: anywhere; }
.pc-app-admin {
  color: #fff;
  border: 1px solid rgba(255,255,255,.35);
  padding: 7px 10px;
  border-radius: 999px;
  font-size: 13px;
  flex: 0 0 auto;
  white-space: nowrap;
}
.pc-app-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin: 0 0 12px;
  padding: 0;
  width: 100%;
  max-width: 100%;
  overflow: visible;
}
.pc-app-nav a {
  white-space: normal;
  background: #fff;
  border: 1px solid var(--pc-border);
  color: var(--pc-dark);
  padding: 7px 11px;
  border-radius: 999px;
  font-weight: 750;
  font-size: 13px;
  line-height: 1.2;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.pc-app-nav a.active { background: var(--pc-pink); color: #fff; border-color: var(--pc-pink); }
.pc-app-alert {
  background: #e8f5e9;
  border: 1px solid #a5d6a7;
  padding: 9px 11px;
  border-radius: 13px;
  margin-bottom: 12px;
  font-size: 14px;
  max-width: 100%;
}
.pc-app-login {
  max-width: min(520px, calc(100vw - 24px));
  margin: 48px auto;
  padding: 24px;
  background: #fff;
  border-radius: 20px;
  text-align: center;
  box-shadow: 0 15px 40px rgba(0,0,0,.08);
}
.pc-app-cards {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 12px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.pc-app-cards a,
.pc-app-panel {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 16px;
  box-shadow: 0 10px 24px rgba(0,0,0,.045);
  min-width: 0;
  max-width: 100%;
}
.pc-app-cards a {
  padding: 13px;
  color: var(--pc-dark);
  display: block;
  overflow-wrap: anywhere;
}
.pc-app-cards strong {
  display: block;
  color: var(--pc-pink);
  font-size: clamp(24px, 2.6vw, 34px);
  line-height: 1;
}
.pc-app-cards span { display: block; margin-top: 5px; color: #555; font-size: 13px; }
.pc-app-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(0, .75fr);
  gap: 12px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  align-items: start;
}
.pc-app-panel {
  padding: 14px;
  width: 100%;
  overflow: visible;
}
.pc-app-section-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 12px;
  min-width: 0;
}
.pc-app-section-head > * { min-width: 0; }
.pc-app-actions { display: flex; flex-wrap: wrap; gap: 8px; max-width: 100%; min-width: 0; }
.pc-app-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid #d4d4d8;
  color: var(--pc-dark);
  padding: 7px 11px;
  border-radius: 11px;
  font-weight: 800;
  cursor: pointer;
  font-size: 13px;
  min-height: 36px;
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  text-align: center;
  line-height: 1.2;
}
.pc-app-primary { background: var(--pc-pink) !important; color: #fff !important; border-color: var(--pc-pink) !important; }
.pc-app-job-list { display: grid; gap: 10px; width: 100%; max-width: 100%; min-width: 0; }
.pc-app-job-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  border: 1px solid #ececec;
  border-radius: 15px;
  padding: 11px;
  background: #fafafa;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.pc-app-job-card > * { min-width: 0; max-width: 100%; }
.pc-app-job-card h3 { margin: 7px 0 4px; overflow-wrap: anywhere; }
.pc-app-job-card p { margin: 4px 0; overflow-wrap: anywhere; }
.pc-app-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  justify-content: flex-start;
  align-items: flex-start;
  min-width: 0;
  max-width: 100%;
}
.pc-app-badge {
  display: inline-block;
  background: #f6d7e6;
  color: #8a164d;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  max-width: 100%;
  overflow-wrap: anywhere;
}
.pc-app-muted { color: var(--pc-muted); }
.pc-app-address { font-size: 13px; color: #333; }
.pc-app-detail-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, .8fr);
  gap: 14px;
  margin-top: 14px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.pc-app-detail-grid > * { min-width: 0; max-width: 100%; }
.pc-app-form label,
.pc-app-detail-grid label {
  display: block;
  font-weight: 750;
  margin-bottom: 10px;
  font-size: 14px;
  max-width: 100%;
}
.pc-app-form input,
.pc-app-form textarea,
.pc-app-form select,
.pc-app-detail-grid input,
.pc-app-detail-grid textarea,
.pc-app-detail-grid select {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin-top: 5px;
  border: 1px solid #d4d4d8;
  border-radius: 11px;
  padding: 8px 10px;
  background: #fff;
  font-size: 14px;
  min-height: 37px;
}
.pc-app-form textarea,
.pc-app-detail-grid textarea { min-height: 86px; resize: vertical; overflow-wrap: anywhere; }
.pc-app-form-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}
.pc-app-form-row > * { min-width: 0; }

@media (min-width: 980px) {
  .pc-app-job-card {
    grid-template-columns: minmax(0, 1fr) minmax(0, auto);
  }
  .pc-app-card-actions { justify-content: flex-end; }
}
@media (min-width: 1500px) {
  .pc-app { padding-left: 26px; padding-right: 26px; }
  .pc-app-grid { grid-template-columns: minmax(0, 1.7fr) minmax(0, .55fr); }
}
@media (max-width: 1180px) {
  .pc-app-grid,
  .pc-app-detail-grid { grid-template-columns: 1fr; }
  .pc-app-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .pc-app {
    padding: 9px;
    font-size: 13px;
  }
  .pc-app-top {
    border-radius: 14px;
    padding: 10px;
    flex-wrap: wrap;
  }
  .pc-app-brand img { width: 36px; height: 36px; }
  .pc-app-brand strong { font-size: 16px; }
  .pc-app-admin { display: none; }
  .pc-app-nav { gap: 6px; margin-bottom: 10px; }
  .pc-app-nav a { padding: 7px 9px; font-size: 12px; }
  .pc-app-cards { grid-template-columns: 1fr 1fr; gap: 8px; }
  .pc-app-cards a { padding: 11px; border-radius: 14px; }
  .pc-app-cards strong { font-size: 24px; }
  .pc-app-panel { padding: 11px; border-radius: 14px; }
  .pc-app-section-head { flex-direction: column; }
  .pc-app-form-row { grid-template-columns: 1fr; gap: 0; }
  .pc-app-btn { min-height: 35px; padding: 7px 9px; font-size: 12px; }
}
@media (max-width: 430px) {
  .pc-app-cards { grid-template-columns: 1fr; }
  .pc-app-actions .pc-app-btn,
  .pc-app-card-actions .pc-app-btn {
    width: 100%;
  }
  .pc-app-nav a { flex: 1 1 calc(50% - 6px); text-align: center; }
}

/* Standalone app safety */
body.pc-app-standalone .pc-app {
  width: 100%;
  max-width: none;
  min-width: 0;
}
body.pc-app-standalone .pc-app-login {
  width: min(520px, calc(100% - 24px));
}
@media (max-width: 760px) {
  body.pc-app-standalone .pc-app {
    padding: 8px;
  }
}


/* v0.5.4 - app native quote/customer screens */
.pc-app-table-wrap { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 10px 0 14px; }
.pc-app-table { width: 100%; border-collapse: collapse; min-width: 680px; background: #fff; border: 1px solid var(--pc-border); border-radius: 14px; overflow: hidden; }
.pc-app-table th, .pc-app-table td { padding: 10px; border-bottom: 1px solid #eee; text-align: left; vertical-align: top; font-size: 13px; overflow-wrap: anywhere; }
.pc-app-table th { background: #fafafa; font-weight: 850; }
.pc-app-summary { margin: 12px 0 16px auto; max-width: 420px; background: #fff; border: 1px solid var(--pc-border); border-radius: 14px; padding: 12px; }
.pc-app-summary div { display: flex; justify-content: space-between; gap: 12px; padding: 6px 0; border-bottom: 1px solid #eee; }
.pc-app-summary div:last-child { border-bottom: 0; }
.pc-app-total { font-size: 18px; font-weight: 900; color: var(--pc-pink); }
.pc-app-inline-form { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.pc-app-inline-form select { border: 1px solid #d4d4d8; border-radius: 11px; padding: 8px 10px; min-height: 36px; max-width: 100%; }
.pc-print-doc.pc-app-print-doc { background: #fff; border: 1px solid var(--pc-border); border-radius: 16px; padding: 22px; max-width: 1100px; margin: 12px auto; box-shadow: 0 10px 24px rgba(0,0,0,.045); }
.pc-print-head { display: flex; justify-content: space-between; gap: 18px; border-bottom: 3px solid #222; padding-bottom: 14px; margin-bottom: 18px; }
.pc-print-brand { display: flex; align-items: center; gap: 12px; min-width: 0; }
.pc-print-brand img { width: 68px; height: 68px; object-fit: contain; }
.pc-print-title { text-align: right; }
.pc-print-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-bottom: 16px; }
.pc-print-box { border: 1px solid #ddd; border-radius: 12px; padding: 12px; }
.pc-print-note { margin-top: 16px; border-top: 1px solid #ddd; padding-top: 10px; }
.pc-signatures { display: grid; grid-template-columns: 1fr 1fr; gap: 70px; margin-top: 55px; }
.pc-signatures div { border-top: 1px solid #333; text-align: center; padding-top: 8px; }
@media (max-width: 760px) {
  .pc-print-head, .pc-print-grid, .pc-signatures { grid-template-columns: 1fr; display: grid; }
  .pc-print-title { text-align: left; }
  .pc-print-doc.pc-app-print-doc { padding: 14px; }
  .pc-app-table { min-width: 560px; }
}
@media print {
  body.pc-app-standalone { background: #fff; }
  .pc-app-top, .pc-app-nav, .pc-no-print, .pc-app-alert { display: none !important; }
  .pc-app { padding: 0 !important; background: #fff !important; }
  .pc-print-doc.pc-app-print-doc { box-shadow: none; border: 0; border-radius: 0; max-width: none; margin: 0; padding: 0; }
  .pc-app-table-wrap { overflow: visible; }
  .pc-app-table { min-width: 0; font-size: 11px; }
  .pc-app-table th, .pc-app-table td { padding: 6px; font-size: 11px; }
}

.pc-app-audit{margin-top:24px;border-top:1px solid #e5e7eb;padding-top:16px}
.pc-app-audit-list{display:grid;gap:10px}
.pc-app-audit-list article{background:#f9fafb;border:1px solid #e5e7eb;border-radius:14px;padding:12px;min-width:0}
.pc-app-audit-list article strong{display:block;font-size:13px;color:#111827;word-break:break-word}
.pc-app-audit-list article span{display:inline-block;margin-top:4px;font-size:12px;color:#be185d;font-weight:700}
.pc-app-audit-list article p{margin:6px 0 0;font-size:13px;white-space:pre-wrap;word-break:break-word}
.pc-app-table input{width:100%;max-width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:8px;padding:8px;font-size:14px}
.pc-app-check{display:flex;gap:6px;align-items:center;font-size:13px;white-space:nowrap}


/* v0.5.6 – úprava nabídky/zakázky: přidávání služeb z ceníku */
.pc-app-add-service-panel{
  margin: 18px 0;
  padding: 16px;
  border: 1px solid rgba(214,51,132,.22);
  background: #fff7fb;
  border-radius: 16px;
}
.pc-app-add-service-panel h2,
.pc-app-add-service-panel h3{
  margin-top: 0;
  margin-bottom: 6px;
}
.pc-edit-quote-table input,
.pc-edit-quote-table select{
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.pc-new-quote-row td{
  background: #fffdf5;
}
@media (max-width: 760px){
  .pc-edit-quote-table thead{ display:none; }
  .pc-edit-quote-table,
  .pc-edit-quote-table tbody,
  .pc-edit-quote-table tr,
  .pc-edit-quote-table td{ display:block; width:100%; }
  .pc-edit-quote-table tr{
    margin: 0 0 12px;
    border: 1px solid rgba(0,0,0,.08);
    border-radius: 14px;
    padding: 10px;
    background: #fff;
  }
  .pc-edit-quote-table td{
    border: 0 !important;
    padding: 5px 0 !important;
  }
}

/* v0.5.8 – práva a bezpečné mazání */
.pc-app-btn.pc-app-danger{
  background:#fee2e2;
  border-color:#fecaca;
  color:#991b1b;
}
.pc-app-btn.pc-app-danger:hover{
  background:#fecaca;
  color:#7f1d1d;
}
.pc-app-card-actions form,
.pc-app-actions form{
  margin:0;
  display:inline-flex;
}

/* v0.6 – Google kalendář */
.pc-app-calendar-box{
  margin-top:18px;
  padding:16px;
  border:1px solid rgba(214,51,132,.22);
  border-radius:16px;
  background:linear-gradient(135deg, rgba(214,51,132,.06), rgba(31,41,55,.03));
  min-width:0;
}
.pc-app-calendar-box h2{margin-top:0;}
.pc-app-alert.pc-app-error{
  background:#fef2f2;
  color:#991b1b;
  border-color:#fecaca;
}

/* v0.6.3 – volba chování Google Kalendáře při mazání */
.pc-app-actions form.pc-app-delete-form{
  display:block;
  width:100%;
  max-width:720px;
  margin-top:10px;
}
.pc-app-calendar-delete{
  width:100%;
  box-sizing:border-box;
  margin:0 0 10px;
  padding:12px;
  border:1px solid #fecaca;
  border-radius:14px;
  background:#fff7f7;
  display:grid;
  gap:8px;
  font-size:14px;
}
.pc-app-calendar-delete label{
  display:flex;
  gap:8px;
  align-items:flex-start;
  line-height:1.35;
}
.pc-app-calendar-delete input{margin-top:2px;}


/* v0.7 – šablony zpráv */
.pc-message-layout{display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:18px;align-items:start}.pc-message-list{display:flex;flex-direction:column;gap:8px;min-width:0}.pc-message-editor{min-width:0}.pc-message-output{width:100%;min-height:360px;box-sizing:border-box;border:1px solid rgba(15,23,42,.16);border-radius:16px;padding:14px;font-size:15px;line-height:1.5;resize:vertical;background:#fff;color:#111827;white-space:pre-wrap}.pc-message-editor .pc-app-actions{margin-top:12px}.pc-message-list .pc-app-btn{justify-content:flex-start;text-align:left;white-space:normal;line-height:1.25}
@media(max-width:800px){.pc-message-layout{grid-template-columns:1fr}.pc-message-output{min-height:320px;font-size:14px}.pc-message-list{display:grid;grid-template-columns:1fr 1fr}.pc-message-list h2{grid-column:1/-1}}
@media(max-width:520px){.pc-message-list{grid-template-columns:1fr}.pc-message-output{min-height:280px}}

/* v0.7.1 */
.pc-app-notice{background:#fff7e6;border:1px solid #f3d39a;border-radius:14px;padding:12px 14px;margin:12px 0;color:#3b2a05;line-height:1.45}
.pc-message-list .pc-app-btn{white-space:normal;text-align:left;justify-content:flex-start}

/* v0.9 – zálohy / exporty */
.pc-app-grid-2{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  align-items:stretch;
  margin:16px 0 22px;
}
.pc-app-export-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:14px;
  margin-top:14px;
}
.pc-app-export-card h3{margin:0 0 8px;}
.pc-app-warning{
  box-sizing:border-box;
  margin:14px 0;
  padding:12px 14px;
  border:1px solid #f3d39a;
  border-radius:14px;
  background:#fff7e6;
  color:#3b2a05;
  line-height:1.45;
}
@media(max-width:760px){
  .pc-app-grid-2{grid-template-columns:1fr;}
  .pc-app-export-grid{grid-template-columns:1fr;}
}


/* v0.9.2 – oprava přihlašovací obrazovky /app */
body.pc-app-standalone {
  --pc-pink: #d63384;
  --pc-pink-dark: #9b1f5a;
  --pc-dark: #202124;
}
.pc-app-login .pc-app-btn.pc-app-primary,
body.pc-app-standalone .pc-app-login a.pc-app-btn.pc-app-primary {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  min-width: 180px;
  padding: 12px 22px !important;
  border-radius: 999px !important;
  background: #d63384 !important;
  color: #ffffff !important;
  border: 2px solid #d63384 !important;
  box-shadow: 0 10px 22px rgba(214, 51, 132, .28);
  font-weight: 850;
  text-decoration: none !important;
}
.pc-app-login .pc-app-btn.pc-app-primary:hover,
.pc-app-login .pc-app-btn.pc-app-primary:focus {
  background: #9b1f5a !important;
  border-color: #9b1f5a !important;
  color: #ffffff !important;
  outline: 3px solid rgba(214,51,132,.22);
  outline-offset: 3px;
}
.pc-app-login h1 {
  color: #202124;
  margin-bottom: 10px;
}
.pc-app-login p {
  color: #3f3f46;
}

/* v1.0 system status */
.pc-status-list{display:flex;flex-direction:column;gap:10px}
.pc-status-row{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:12px;border:1px solid rgba(0,0,0,.08);border-radius:14px;background:#fff}
.pc-status-row p{margin:.25rem 0 0}
.pc-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:72px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}
.pc-status-ok{background:#dcfce7;color:#166534}
.pc-status-warn{background:#fef3c7;color:#92400e}
.pc-app-mini-table{width:100%;border-collapse:collapse}
.pc-app-mini-table th,.pc-app-mini-table td{padding:9px 8px;border-bottom:1px solid rgba(0,0,0,.08);vertical-align:top;text-align:left;word-break:break-word}
.pc-app-mini-table th{width:42%;color:#555;font-weight:700}
.pc-app-checklist{margin:0;padding-left:20px}
.pc-app-checklist li{margin:8px 0}
@media(max-width:700px){.pc-status-row{flex-direction:column}.pc-status-pill{align-self:flex-start}.pc-app-mini-table th,.pc-app-mini-table td{display:block;width:100%;padding:7px 0}.pc-app-mini-table th{border-bottom:0}.pc-app-mini-table td{padding-bottom:12px}}

.pc-error{color:#b42318;font-weight:700;background:#fff1f1;border:1px solid #ffd0d0;border-radius:10px;padding:10px 12px;}


.pc-app-message-body{white-space:pre-wrap;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:16px;line-height:1.55;overflow:auto;max-width:100%;}
.pc-app-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0;}
.pc-app-meta-grid>div{background:rgba(0,0,0,.035);border-radius:14px;padding:12px;}
@media(max-width:800px){.pc-app-meta-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.pc-app-meta-grid{grid-template-columns:1fr;}}


.pc-app-attachments{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:12px 0 20px;}
.pc-app-attachment{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:10px;overflow:hidden;}
.pc-app-attachment img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:12px;background:#f4f4f4;}
.pc-app-attachment span{font-size:13px;line-height:1.25;word-break:break-word;}
.pc-app-attachment small{display:block;color:#777;margin-top:3px;}
.pc-app-file-icon{display:flex;align-items:center;justify-content:center;height:110px;font-size:42px;background:#f4f4f4;border-radius:12px;}
.pc-app-upload-form{margin-top:14px;border-top:1px solid rgba(0,0,0,.08);padding-top:14px;}


.pc-app-modal{display:none;position:fixed;inset:0;z-index:999999;}
.pc-app-modal.pc-app-modal-open{display:block;}
.pc-app-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);}
.pc-app-modal-box{position:absolute;inset:4vh 4vw;background:#fff;border-radius:18px;box-shadow:0 20px 80px rgba(0,0,0,.35);display:flex;flex-direction:column;overflow:hidden;}
.pc-app-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(0,0,0,.08);}
.pc-app-modal-head>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.pc-app-modal-body{flex:1;overflow:auto;background:#111;display:flex;align-items:center;justify-content:center;padding:12px;}
.pc-app-modal-image{max-width:100%;max-height:100%;object-fit:contain;border-radius:10px;}
.pc-app-modal-frame{width:100%;height:100%;border:0;background:#fff;border-radius:10px;}
.pc-app-modal-lock{overflow:hidden;}
@media(max-width:700px){.pc-app-modal-box{inset:2vh 2vw;border-radius:14px}.pc-app-modal-head{align-items:flex-start;flex-direction:column}.pc-app-modal-body{padding:8px}}


.pc-app-deleted-card{opacity:.82;border-style:dashed;}
.pc-app-deleted-list{margin-top:10px;}


.pc-app-email-reply-form{margin-top:12px;border-top:1px solid rgba(0,0,0,.08);padding-top:14px;}
.pc-app-reply-history{display:flex;flex-direction:column;gap:12px;margin:12px 0 18px;}
.pc-app-reply-item{background:rgba(0,0,0,.035);border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:14px;}


.pc-app-message-main-actions{padding:12px 0 16px;border-bottom:1px solid rgba(0,0,0,.08);margin-bottom:18px;}


.pc-app-after-message-actions{margin-top:18px;}
.pc-app-message-main-actions{padding:8px 0 18px;border-bottom:1px solid rgba(0,0,0,.08);margin-bottom:18px;}
.pc-app-reply-channel-buttons{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 10px;}
.pc-reply-panel{margin-top:12px;}
.pc-app-email-reply-form{margin-top:12px;border-top:1px solid rgba(0,0,0,.08);padding-top:14px;}
.pc-app-reply-history{display:flex;flex-direction:column;gap:12px;margin:12px 0 18px;}
.pc-app-reply-item{background:rgba(0,0,0,.035);border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:14px;}


.pc-app-success{background:#ecfdf3;border-color:#abefc6;color:#067647;}
.pc-app-badge-success{background:#dcfae6;color:#067647;border-color:#abefc6;}


.pc-app-email-reply-form input[type=file]{padding:12px;background:#fff;border:1px dashed rgba(0,0,0,.2);border-radius:12px;}
.pc-app-reply-item .pc-app-attachments{margin-top:10px;}


.pc-app-admin-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:16px;}
.pc-app-admin-group{background:rgba(0,0,0,.035);border:1px solid rgba(0,0,0,.06);border-radius:18px;padding:16px;}
.pc-app-admin-group h2{margin-top:0;}
.pc-app-admin-group p{color:#666;margin-top:-4px;}


.pc-app-start-panel{margin-top:12px;}
.pc-app-workflow-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px;}
.pc-app-workflow-actions .pc-app-btn strong{margin-right:5px;}
.pc-app-stats-bottom{margin-top:10px;}


.pc-app-applicant-status{font-weight:700;}


.pc-app-job-card h3 .pc-app-applicant-status{font-size:12px;vertical-align:middle;margin-left:6px;}


.pc-app-filter-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;align-items:end;margin:16px 0 14px;}
.pc-app-filter-form label{display:flex;flex-direction:column;gap:6px;font-weight:600;}
.pc-app-filter-form input,.pc-app-filter-form select,.pc-app-inline-form select{min-height:38px;border:1px solid rgba(0,0,0,.15);border-radius:10px;padding:8px;background:#fff;}
.pc-app-filter-actions{display:flex;gap:8px;align-items:end;flex-wrap:wrap;}
.pc-app-subpanel{background:rgba(0,0,0,.025);border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:14px;margin:16px 0;}
.pc-app-inline-form{display:flex;gap:10px;flex-wrap:wrap;align-items:center;}
.pc-app-timeline{display:flex;flex-direction:column;gap:10px;margin-top:10px;}
.pc-app-timeline-item{border-left:4px solid rgba(216,39,120,.35);background:rgba(0,0,0,.025);border-radius:12px;padding:12px 14px;}
.pc-app-timeline-item p{margin:8px 0 0;}


.pc-app-badge.pc-app-applicant-status{font-weight:700;border-width:1px;}
.pc-app-status-new{background:#fff7d6;color:#8a5b00;border-color:#f3d27a;}
.pc-app-status-contacted{background:#e8f1ff;color:#1455b8;border-color:#b9d1ff;}
.pc-app-status-agreed{background:#e7f8ec;color:#146c2e;border-color:#9fd5ad;}
.pc-app-status-rejected{background:#fdecec;color:#b42318;border-color:#f5b6b2;}
.pc-app-status-reserve{background:#f1ebff;color:#6941c6;border-color:#d4c2ff;}
.pc-app-status-default{background:#f2f4f7;color:#344054;border-color:#d0d5dd;}


.pc-app-danger-zone{border-color:#f5b6b2;background:#fff5f5;}
.pc-app-danger-zone h2{color:#b42318;}


.pc-app-next-contact{font-weight:700;}
.pc-app-next-contact-overdue{background:#fdecec;color:#b42318;border-color:#f5b6b2;}
.pc-app-next-contact-today{background:#fff7d6;color:#8a5b00;border-color:#f3d27a;}
.pc-app-next-contact-future{background:#e8f1ff;color:#1455b8;border-color:#b9d1ff;}


.pc-app-alert-reminder{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:#fff7d6;border-color:#f3d27a;color:#8a5b00;}
.pc-app-btn-small{padding:6px 10px;font-size:13px;}
.pc-app-checkbox{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;font-weight:700;}
.pc-app-checkbox input{min-height:auto!important;width:auto!important;}


.pc-app-onboarding-box{border-color:#abefc6;background:#f6fef9;}
.pc-app-checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px;margin:12px 0;}
.pc-app-checklist label{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:10px;display:flex;gap:8px;align-items:center;}
.pc-app-checklist input{width:auto!important;min-height:auto!important;}


.pc-app-documents-box{border-color:#d0d5dd;background:#f9fafb;}
.pc-app-attachment-wrap{display:flex;flex-direction:column;gap:6px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:8px;}
.pc-app-attachment-wrap .pc-app-attachment{margin:0;}


.pc-app-onboarding-list{display:flex;flex-direction:column;gap:12px;margin-top:14px;}
.pc-app-onboarding-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:14px;box-shadow:0 8px 24px rgba(0,0,0,.04);}
.pc-app-onboarding-main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap;}
.pc-app-progress{height:10px;background:#eaecf0;border-radius:999px;overflow:hidden;margin-top:10px;}
.pc-app-progress div{height:100%;background:#d82778;border-radius:999px;}
.pc-app-onboarding-stats{margin:12px 0 16px;}


.pc-app-customer-detail > .pc-app-grid{align-items:start;}
.pc-app-customer-stats{margin:14px 0;}
.pc-app-customer-history{margin-top:16px;}
.pc-app-customer-history > .pc-app-panel{background:#fff;}


.pc-app-danger-soft{background:#fff5f5!important;border-color:#f5b6b2!important;color:#b42318!important;}
.pc-app-complaint-new{background:#fff7d6;color:#8a5b00;border-color:#f3d27a;}
.pc-app-complaint-review{background:#e8f1ff;color:#1455b8;border-color:#b9d1ff;}
.pc-app-complaint-accepted{background:#f1ebff;color:#6941c6;border-color:#d4c2ff;}
.pc-app-complaint-rejected{background:#fdecec;color:#b42318;border-color:#f5b6b2;}
.pc-app-complaint-resolved{background:#e7f8ec;color:#146c2e;border-color:#9fd5ad;}
.pc-app-priority-low{background:#f2f4f7;color:#344054;border-color:#d0d5dd;}
.pc-app-priority-normal{background:#e8f1ff;color:#1455b8;border-color:#b9d1ff;}
.pc-app-priority-high{background:#fff7d6;color:#8a5b00;border-color:#f3d27a;}
.pc-app-priority-urgent{background:#fdecec;color:#b42318;border-color:#f5b6b2;font-weight:800;}
.pc-app-complaint-detail .pc-app-message-body{margin-bottom:12px;}


.pc-app-top-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.pc-app-logout{background:#fff5f5!important;border-color:#f5b6b2!important;color:#b42318!important;}
@media(max-width:640px){
  .pc-app-top-actions{width:100%;justify-content:flex-start;margin-top:8px;}
}


/* v2.5.3 mobile header fix */
.pc-app-top{
  max-width:100%;
  box-sizing:border-box;
}
.pc-app-top-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.pc-app-top-actions .pc-app-admin{
  white-space:nowrap;
}
@media(max-width:760px){
  .pc-app-top{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
    overflow:visible!important;
  }
  .pc-app-brand{
    width:100%!important;
    min-width:0!important;
  }
  .pc-app-brand div{
    min-width:0!important;
  }
  .pc-app-brand strong,
  .pc-app-brand span{
    overflow-wrap:anywhere;
  }
  .pc-app-top-actions{
    width:100%!important;
    justify-content:flex-start!important;
    gap:8px!important;
    margin-top:0!important;
  }
  .pc-app-top-actions .pc-app-admin{
    flex:0 0 auto;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
  }
}
@media(max-width:380px){
  .pc-app-top-actions{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .pc-app-top-actions .pc-app-admin{
    width:100%!important;
  }
}


.pc-app-worker-alert{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;border-radius:18px;padding:12px 14px;margin:12px 0;box-shadow:0 8px 24px rgba(0,0,0,.05);}
.pc-app-worker-alert-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;flex-wrap:wrap;}
.pc-app-worker-alert-head strong{font-size:15px;}
.pc-app-worker-alert-head span{font-size:12px;opacity:.75;}
.pc-app-worker-alert-list{display:flex;flex-direction:column;gap:6px;}
.pc-app-worker-alert-item{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid rgba(124,45,18,.12);border-radius:12px;padding:9px 10px;text-decoration:none;color:#7c2d12;}
.pc-app-worker-alert-item:hover{background:#ffedd5;color:#7c2d12;}
.pc-app-worker-alert-item small{white-space:nowrap;opacity:.75;}
@media(max-width:640px){
  .pc-app-worker-alert-item{align-items:flex-start;flex-direction:column;}
  .pc-app-worker-alert-item small{white-space:normal;}
}


.pc-app-notifications{margin:12px 0;}
.pc-app-notification-box{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;border-radius:18px;padding:12px 14px;box-shadow:0 8px 24px rgba(0,0,0,.05);}
.pc-app-notification-item{align-items:stretch!important;}
.pc-app-notification-link{display:flex;justify-content:space-between;align-items:center;gap:10px;flex:1;text-decoration:none;color:#7c2d12;}
.pc-app-notification-link:hover{color:#7c2d12;}
.pc-app-notification-dismiss{white-space:nowrap;background:#fff!important;border-color:#fed7aa!important;color:#7c2d12!important;}
.pc-app-notification-dismiss:hover{background:#ffedd5!important;}
@media(max-width:640px){
  .pc-app-notification-item{flex-direction:column!important;}
  .pc-app-notification-link{align-items:flex-start;flex-direction:column;}
  .pc-app-notification-dismiss{width:100%;}
}


/* v3.0 worker mobile mode */
.pc-worker-hero{background:linear-gradient(135deg,#111827,#3f3f46);color:#fff;border-radius:22px;padding:18px;margin:0 0 14px;box-shadow:0 12px 30px rgba(0,0,0,.14);}
.pc-worker-hero h1{margin:0 0 6px;font-size:26px;color:#fff;}
.pc-worker-hero p{margin:0 0 14px;color:rgba(255,255,255,.82);}
.pc-worker-quick-actions{display:flex;gap:8px;flex-wrap:wrap;}
.pc-worker-stats{margin:10px 0 14px;}
.pc-worker-panel{margin-bottom:14px;}
.pc-worker-card-list{display:flex;flex-direction:column;gap:12px;}
.pc-worker-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:14px;box-shadow:0 8px 24px rgba(0,0,0,.04);}
.pc-worker-card h3{margin:8px 0 4px;font-size:18px;}
.pc-worker-customer{font-weight:700;margin:0 0 4px;}
.pc-worker-time{font-size:15px;font-weight:800;margin:6px 0;color:#111827;}
.pc-worker-address{background:#f9fafb;border:1px solid #eaecf0;border-radius:12px;padding:8px;margin:8px 0 0;}
.pc-worker-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.pc-worker-actions form{margin:0;}
.pc-worker-done{background:#e7f8ec!important;border-color:#9fd5ad!important;color:#146c2e!important;font-weight:800!important;}
.pc-worker-note-box{border-color:#b9d1ff;background:#f8fbff;}
@media(max-width:640px){
  .pc-worker-hero{border-radius:18px;padding:16px;}
  .pc-worker-quick-actions .pc-app-btn{width:100%;justify-content:center;}
  .pc-worker-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
  .pc-worker-actions .pc-app-btn,.pc-worker-actions form,.pc-worker-actions button{width:100%;text-align:center;justify-content:center;}
}


.pc-worker-start{background:#e8f1ff!important;border-color:#b9d1ff!important;color:#1455b8!important;font-weight:800!important;}
.pc-worker-in-progress{background:#e8f1ff!important;border-color:#b9d1ff!important;color:#1455b8!important;font-weight:800!important;display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;}
.pc-worker-photo-warning{margin:10px 0!important;}


/* v3.1 internal messages */
.pc-internal-message-list{display:flex;flex-direction:column;gap:12px;margin-top:14px;}
.pc-internal-message-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:14px;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;box-shadow:0 8px 24px rgba(0,0,0,.04);}
.pc-internal-message-card h3{margin:8px 0 4px;}
.pc-internal-unread{border-color:#d82778;background:#fff8fb;}
.pc-internal-done{opacity:.72;}
.pc-internal-message-new{border-color:#b9d1ff;background:#f8fbff;}
.pc-internal-message-detail .pc-app-message-body{font-size:16px;line-height:1.55;}
@media(max-width:640px){
  .pc-internal-message-card{flex-direction:column;}
  .pc-internal-message-card .pc-app-card-actions{width:100%;}
  .pc-internal-message-card .pc-app-card-actions .pc-app-btn,
  .pc-internal-message-card .pc-app-card-actions form,
  .pc-internal-message-card .pc-app-card-actions button{width:100%;justify-content:center;}
}


/* v3.1.1 internal message conversations */
.pc-internal-thread{display:flex;flex-direction:column;gap:10px;margin:10px 0 16px;}
.pc-internal-thread-item{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:12px;max-width:86%;box-shadow:0 6px 18px rgba(0,0,0,.035);}
.pc-internal-thread-item h3{font-size:15px;margin:8px 0 6px;}
.pc-internal-thread-item p{margin:0;white-space:pre-wrap;}
.pc-internal-thread-mine{align-self:flex-end;background:#f8fbff;border-color:#b9d1ff;}
@media(max-width:640px){
  .pc-internal-thread-item{max-width:100%;}
}


/* v3.1.2 internal message admin filters */
.pc-internal-filters{background:#f8fafc;border:1px solid #dcdcde;border-radius:16px;padding:12px;margin:12px 0 14px;}
.pc-internal-message-card .pc-app-danger{white-space:nowrap;}
.pc-internal-message-detail .pc-app-actions form{margin:0;}
@media(max-width:640px){
  .pc-internal-filters .pc-app-form-row{grid-template-columns:1fr!important;}
}


/* v3.2 PWA install and notification preparation */
.pc-pwa-box{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f8fbff;border:1px solid #b9d1ff;border-radius:18px;padding:12px 14px;margin:12px 0;box-shadow:0 8px 24px rgba(0,0,0,.04);}
.pc-pwa-box p{margin:.25rem 0 0;}
.pc-pwa-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.pc-pwa-status{font-size:13px;}
@media(max-width:640px){.pc-pwa-box{flex-direction:column;align-items:stretch}.pc-pwa-actions{display:grid;grid-template-columns:1fr}.pc-pwa-actions .pc-app-btn{width:100%;justify-content:center}}


/* v3.3.1 push diagnostics */
.pc-pwa-device-status{font-size:12px;margin-top:6px;line-height:1.35;}
.pc-pwa-actions{gap:8px;flex-wrap:wrap;}


/* v3.3.2 hard push repair */
#pcPwaHardFix{font-weight:700;}


/* v3.4 manager simplified dashboard + app settings route */
.pc-manager-hero{background:linear-gradient(135deg,#111827,#52525b);color:#fff;border-radius:22px;padding:18px;margin:0 0 14px;box-shadow:0 12px 30px rgba(0,0,0,.14);}
.pc-manager-hero h1{margin:0 0 6px;font-size:26px;color:#fff;}
.pc-manager-hero p{margin:0 0 14px;color:rgba(255,255,255,.82);}
.pc-manager-stats{margin:10px 0 14px;}
.pc-manager-panel{margin-bottom:14px;}
.pc-app-settings-help{margin-top:14px;}
@media(max-width:640px){
  .pc-app-top-actions{width:100%;justify-content:flex-start;flex-wrap:wrap;}
  .pc-manager-hero{border-radius:18px;padding:16px;}
  .pc-manager-hero .pc-worker-quick-actions .pc-app-btn{width:100%;justify-content:center;}
}


/* v3.5 communication center */
.pc-comm-stats{margin:12px 0 14px;}
.pc-comm-filters{background:#f8fafc;border:1px solid #dcdcde;border-radius:16px;padding:12px;margin:12px 0 16px;}
.pc-comm-list{display:flex;flex-direction:column;gap:12px;margin-top:12px;}
.pc-comm-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:14px;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;box-shadow:0 8px 24px rgba(0,0,0,.04);}
.pc-comm-card-new{border-color:#d82778;background:#fff8fb;}
.pc-comm-card-deleted{opacity:.72;background:#fafafa;}
.pc-comm-card h3{margin:8px 0 6px;}
.pc-comm-main{min-width:0;}
.pc-comm-actions form{margin:0;}
.pc-comm-source{font-weight:800;}
@media(max-width:740px){
  .pc-comm-card{flex-direction:column;}
  .pc-comm-actions{width:100%;}
  .pc-comm-actions .pc-app-btn,.pc-comm-actions form,.pc-comm-actions button{width:100%;justify-content:center;}
  .pc-comm-filters .pc-app-form-row{grid-template-columns:1fr!important;}
}


/* v3.6.1 Meta webhook visibility */
.pc-meta-webhook-box{margin:12px 0 16px;background:#f8fbff;border:1px solid #b9d1ff;border-radius:16px;padding:14px;}
.pc-app-code{display:inline-block;max-width:100%;white-space:normal;word-break:break-all;background:#111827;color:#fff;border-radius:8px;padding:8px 10px;}


/* v3.6.2 visible WhatsApp Meta app page */
.pc-meta-webhook-box{margin:12px 0 16px;background:#f8fbff;border:1px solid #b9d1ff;border-radius:16px;padding:14px;}
.pc-app-code{display:inline-block;max-width:100%;white-space:normal;word-break:break-all;background:#111827;color:#fff;border-radius:8px;padding:8px 10px;}
.pc-app-steps{padding-left:22px;}
.pc-app-steps li{margin:8px 0;}


/* v3.7 stabilization */
.pc-nav-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;border-radius:999px;background:#d82778;color:#fff;font-size:12px;font-weight:800;padding:0 6px;margin-left:4px;}
.pc-app-nav a.active .pc-nav-count{background:#111827;color:#fff;}
.pc-ops-panel{border-color:#f0c0d7;background:#fffafd;}
.pc-ops-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;}
.pc-ops-card{display:block;text-decoration:none;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:14px;box-shadow:0 8px 22px rgba(0,0,0,.04);}
.pc-ops-card strong{display:block;font-size:28px;line-height:1;margin-bottom:6px;color:#111827;}
.pc-ops-card span{color:#374151;font-weight:700;}
.pc-ops-urgent{border-color:#f3a4c6;background:#fff3f8;}
.pc-ops-warn{border-color:#f0d28a;background:#fffaf0;}
.pc-ops-info{border-color:#b9d1ff;background:#f8fbff;}
.pc-storage-panel{border-color:#d4d4d8;background:#fafafa;}
.pc-storage-cards a{cursor:default;}
.pc-integration-checks{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;}
.pc-integration-check{border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fff;padding:12px;}
.pc-integration-check strong{display:block;margin-bottom:4px;}
.pc-integration-check span{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800;}
.pc-check-ok span{background:#e8f7ef;color:#176b3a;}
.pc-check-warn span{background:#fff3f8;color:#b91c5c;}
.pc-integration-check p{margin:8px 0 0;color:#6b7280;font-size:13px;}
@media(max-width:740px){
  .pc-ops-grid,.pc-integration-checks{grid-template-columns:1fr;}
}


/* v3.8 in-app help */
.pc-help-hero{background:linear-gradient(135deg,#111827,#52525b);color:#fff;border-radius:22px;padding:18px;margin-bottom:14px;}
.pc-help-hero h1{margin:0 0 6px;color:#fff;}
.pc-help-hero p{margin:0;color:rgba(255,255,255,.86);}
.pc-help-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin:14px 0;}
.pc-help-card{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:18px;padding:16px;box-shadow:0 8px 24px rgba(0,0,0,.04);}
.pc-help-card h2{margin:0 0 8px;font-size:18px;}
.pc-help-card p{margin:0 0 10px;color:#4b5563;line-height:1.45;}
.pc-help-card ul{margin:8px 0 0 18px;padding:0;}
.pc-help-card li{margin:7px 0;line-height:1.42;}
.pc-help-important{border-color:#d82778;background:#fff8fb;}
@media(max-width:740px){
  .pc-help-grid{grid-template-columns:1fr;}
  .pc-help-hero{border-radius:18px;padding:16px;}
}


/* v3.9 invoice bridge */
.pc-invoice-panel{border-color:#d82778;background:#fffafd;}
.pc-invoice-panel .pc-app-form{margin-top:10px;}
.pc-invoice-job-list .pc-app-job-card{border-left:4px solid #d82778;}


/* v3.9.1 external invoice upload */
.pc-external-invoice-box{margin-top:16px;padding:14px;border:1px dashed #d82778;border-radius:16px;background:#fff;}
.pc-external-invoice-box h3{margin-top:0;}
.pc-external-invoice-box input[type=file]{background:#fff;}


/* v3.9.2 cleaner manual invoice button */
.pc-external-invoice-box{margin-top:16px;}
.pc-external-invoice-box summary{list-style:none;display:inline-flex;cursor:pointer;}
.pc-external-invoice-box summary::-webkit-details-marker{display:none;}
.pc-external-invoice-box[open]{padding:14px;border:1px dashed #d82778;border-radius:16px;background:#fff;margin-top:16px;}
.pc-external-invoice-box[open] summary{margin-bottom:12px;}
.pc-manual-invoice-toggle{width:auto;}


/* v3.9.4 OA CRM API token */
.pc-oa-token-box{border:1px solid #d82778;background:#fff8fb;border-radius:16px;padding:14px;margin:12px 0;}
.pc-oa-token-box h3{margin:0 0 8px;}
.pc-token-copy-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:10px 0;}
.pc-token-copy-row input{flex:1;min-width:280px;font-family:monospace;font-size:13px;}
.pc-token-actions{margin:10px 0;}


/* v3.9.7 clearer job/invoice navigation */
.pc-jobs-filters,.pc-invoice-filters{margin:12px 0 16px;}
.pc-invoice-table-wrap{overflow-x:auto;}
.pc-invoice-table{width:100%;border-collapse:separate;border-spacing:0 8px;}
.pc-invoice-table th{text-align:left;font-size:12px;color:#6b7280;font-weight:800;padding:8px;}
.pc-invoice-table td{background:#fff;border-top:1px solid rgba(0,0,0,.08);border-bottom:1px solid rgba(0,0,0,.08);padding:10px;vertical-align:top;}
.pc-invoice-table td:first-child{border-left:1px solid rgba(0,0,0,.08);border-radius:12px 0 0 12px;}
.pc-invoice-table td:last-child{border-right:1px solid rgba(0,0,0,.08);border-radius:0 12px 12px 0;}
@media(max-width:740px){
  .pc-invoice-table th{display:none;}
  .pc-invoice-table,.pc-invoice-table tbody,.pc-invoice-table tr,.pc-invoice-table td{display:block;width:100%;}
  .pc-invoice-table tr{margin-bottom:12px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:8px;}
  .pc-invoice-table td{border:0!important;border-radius:0!important;}
}


/* v3.9.8 public numbering */
.pc-number-badge{background:#111827;color:#fff;border-color:#111827;}
.pc-quotes-filters{margin:12px 0 16px;}


/* v3.9.9 reset before production start */
.pc-reset-panel .pc-app-card ul{margin:8px 0 0 18px;padding:0;}
.pc-reset-panel .pc-app-card li{margin:6px 0;}
.pc-reset-warning{border-color:#ef4444;background:#fff1f2;color:#7f1d1d;}
.pc-reset-form{margin-top:16px;border:1px solid #ef4444;background:#fff7f7;border-radius:18px;padding:16px;}
.pc-app-danger{background:#dc2626!important;color:#fff!important;border-color:#dc2626!important;}
.pc-app-danger:hover{filter:brightness(.95);}


/* v4.0.0 Compact Desktop UI + Meta preparation */
@media (min-width: 900px){
  .pc-app{
    padding:12px 16px;
    font-size:13px;
    line-height:1.34;
  }
  .pc-app h1{font-size:22px;margin:0 0 8px;}
  .pc-app h2{font-size:16px;margin:0 0 8px;}
  .pc-app h3{font-size:14px;margin:0 0 4px;}
  .pc-app p{font-size:13px;line-height:1.35;margin:6px 0;}
  .pc-app-top{padding:8px 12px;border-radius:12px;margin-bottom:8px;}
  .pc-app-brand img{width:32px;height:32px;border-radius:9px;padding:3px;}
  .pc-app-brand strong{font-size:17px;}
  .pc-app-brand span{font-size:11px;}
  .pc-app-admin{padding:5px 8px;font-size:12px;}
  .pc-app-nav{gap:5px;margin-bottom:8px;}
  .pc-app-nav a{padding:5px 9px;font-size:12px;border-radius:999px;}
  .pc-nav-count{min-width:17px;height:17px;font-size:10px;padding:0 5px;}
  .pc-app-panel{padding:10px 12px;border-radius:12px;box-shadow:0 4px 14px rgba(0,0,0,.035);}
  .pc-app-section-head{margin-bottom:8px;gap:8px;align-items:center;}
  .pc-app-cards{gap:8px;margin-bottom:8px;grid-template-columns:repeat(6,minmax(0,1fr));}
  .pc-app-cards a{padding:9px 10px;border-radius:12px;}
  .pc-app-cards strong{font-size:22px;}
  .pc-app-cards span{font-size:12px;margin-top:3px;}
  .pc-app-grid{gap:10px;grid-template-columns:minmax(0,1.55fr) minmax(340px,.75fr);}
  .pc-manager-hero,.pc-help-hero{padding:12px 14px;border-radius:14px;margin-bottom:10px;}
  .pc-manager-hero h1{font-size:21px;}
  .pc-ops-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:8px;}
  .pc-ops-card{padding:10px;border-radius:12px;}
  .pc-ops-card strong{font-size:22px;margin-bottom:4px;}
  .pc-app-job-list,.pc-comm-list,.pc-app-audit-list,.pc-internal-thread{gap:7px;}
  .pc-app-job-card,.pc-comm-card,.pc-help-card,.pc-internal-thread-item,.pc-app-onboarding-card{padding:9px 10px;border-radius:12px;box-shadow:none;}
  .pc-app-job-card{gap:7px;}
  .pc-app-job-card h3{margin:4px 0 2px;}
  .pc-app-card-actions,.pc-app-actions{gap:5px;}
  .pc-app-btn{min-height:28px;padding:5px 8px;border-radius:8px;font-size:12px;line-height:1.15;}
  .pc-app-btn-small{padding:4px 7px;font-size:12px;}
  .pc-app-badge{padding:2px 7px;font-size:10.5px;}
  .pc-comm-filters,.pc-jobs-filters,.pc-invoice-filters,.pc-quotes-filters,.pc-app-filter-form{padding:8px;margin:8px 0 10px;border-radius:12px;display:flex;flex-wrap:wrap;gap:8px;align-items:end;}
  .pc-comm-filters .pc-app-form-row{display:flex;flex-wrap:wrap;gap:8px;align-items:end;width:100%;}
  .pc-comm-filters label,.pc-jobs-filters label,.pc-invoice-filters label,.pc-quotes-filters label,.pc-app-filter-form label{min-width:170px;flex:1 1 170px;margin:0;font-size:12px;}
  .pc-app-form label,.pc-app-detail-grid label{margin-bottom:7px;font-size:13px;}
  .pc-app-form input,.pc-app-form textarea,.pc-app-form select,.pc-app-detail-grid input,.pc-app-detail-grid textarea,.pc-app-detail-grid select,.pc-app-inline-form select{min-height:30px;padding:6px 8px;border-radius:8px;font-size:13px;margin-top:3px;}
  .pc-app-form textarea,.pc-app-detail-grid textarea{min-height:68px;}
  .pc-app-form-row{gap:8px;}
  .pc-app-detail-grid{gap:10px;margin-top:10px;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);}
  .pc-app-table-wrap{margin:6px 0 10px;}
  .pc-app-table{border-radius:10px;}
  .pc-app-table th,.pc-app-table td{padding:6px 7px;font-size:12px;line-height:1.25;}
  .pc-invoice-table{border-spacing:0 5px;}
  .pc-invoice-table th{padding:5px 7px;font-size:11px;}
  .pc-invoice-table td{padding:7px;font-size:12px;}
  .pc-app-meta-grid{gap:8px;margin:8px 0;grid-template-columns:repeat(4,minmax(0,1fr));}
  .pc-app-meta-grid>div{padding:8px;border-radius:10px;}
  .pc-app-message-body{padding:10px;border-radius:12px;line-height:1.4;}
  .pc-app-attachments{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin:8px 0 12px;}
  .pc-app-attachment{padding:7px;border-radius:12px;gap:5px;}
  .pc-app-attachment img{border-radius:8px;}
  .pc-app-upload-form{margin-top:8px;padding-top:8px;}
  .pc-app-audit{margin-top:12px;padding-top:10px;}
  .pc-app-calendar-box,.pc-external-invoice-box[open],.pc-subpanel,.pc-app-subpanel,.pc-oa-token-box,.pc-reset-form{padding:10px;border-radius:12px;margin:10px 0;}
  .pc-app-admin-groups{gap:10px;margin-top:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
  .pc-app-admin-group{padding:10px;border-radius:12px;}
}
@media (min-width: 1280px){
  .pc-app-job-list.pc-density-list,.pc-app-job-list{gap:6px;}
  .pc-app-cards{grid-template-columns:repeat(8,minmax(0,1fr));}
  .pc-comm-card{display:grid;grid-template-columns:minmax(0,1fr) auto;}
}
.pc-app details.pc-app-details,.pc-app .pc-app-details{border:1px solid rgba(0,0,0,.08);border-radius:12px;background:#fff;margin:8px 0;padding:0;}
.pc-app details.pc-app-details>summary,.pc-app .pc-app-details>summary{cursor:pointer;font-weight:850;padding:8px 10px;list-style:none;}
.pc-app details.pc-app-details>summary::-webkit-details-marker{display:none;}
.pc-app details.pc-app-details[open]>summary{border-bottom:1px solid rgba(0,0,0,.08);}
.pc-app details.pc-app-details>*:not(summary){margin:10px;}
.pc-meta-result pre,.pc-meta-webhook-box pre,.pc-app-table pre{max-height:260px;overflow:auto;background:#111827;color:#fff;border-radius:8px;padding:8px;font-size:11px;white-space:pre-wrap;}
.pc-meta-token-copy textarea{width:calc(100% - 20px);font-family:monospace;font-size:12px;border:1px solid #d4d4d8;border-radius:10px;padding:8px;}
.pc-meta-actions{margin-top:8px;}
.pc-meta-compact-grid .pc-app-code{font-size:11px;padding:6px 7px;}
.pc-compact-table{min-width:760px;}


/* v4.0.1 OA-inspired compact desktop refresh */
.pc-app{
  --pc-header-dark:#0f172a;
  --pc-header-dark-2:#16213a;
  --pc-surface:#ffffff;
  --pc-surface-2:#f8fafc;
  --pc-line:#d9e1ec;
  --pc-line-soft:#e9eef5;
  --pc-text:#0f172a;
  --pc-muted-2:#64748b;
  max-width: 1680px;
  margin: 0 auto;
  padding: 14px 16px 22px;
  background:#eef2f7;
  color:var(--pc-text);
}
.pc-app-shell-head{
  background:linear-gradient(135deg,var(--pc-header-dark) 0%, var(--pc-header-dark-2) 100%);
  border-radius:18px;
  padding:14px 16px 12px;
  margin:0 0 12px;
  box-shadow:0 14px 38px rgba(15,23,42,.18);
}
.pc-app-top{
  background:transparent;
  padding:0;
  margin:0 0 10px;
  border-radius:0;
  box-shadow:none;
  gap:14px;
}
.pc-app-brand img{
  width:44px;
  height:44px;
  border-radius:12px;
  padding:5px;
  background:#fff;
}
.pc-app-brand strong{
  font-size:18px;
  color:#fff;
  letter-spacing:.01em;
}
.pc-app-brand span{
  color:rgba(255,255,255,.85);
  font-size:12px;
  margin-top:2px;
}
.pc-app-brand small{
  display:block;
  color:rgba(255,255,255,.62);
  font-size:11px;
  margin-top:2px;
}
.pc-app-top-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.pc-app-user-chip{
  display:inline-flex;
  align-items:center;
  padding:7px 10px;
  border-radius:999px;
  color:#dbeafe;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.10);
  font-size:13px;
  font-weight:700;
}
.pc-app-admin{
  background:transparent;
  color:#dbeafe;
  border:1px solid rgba(148,163,184,.45);
  padding:8px 12px;
  font-size:13px;
}
.pc-app-admin:hover{background:rgba(255,255,255,.07);}
.pc-app-nav{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin:0;
  padding:0;
}
.pc-app-nav a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:transparent;
  border:1px solid transparent;
  color:rgba(255,255,255,.9);
  padding:10px 14px;
  font-size:14px;
  font-weight:700;
  border-radius:12px;
}
.pc-app-nav a:hover{background:rgba(255,255,255,.08);}
.pc-app-nav a.active{
  background:var(--pc-pink);
  border-color:var(--pc-pink);
  color:#fff;
  box-shadow:0 8px 22px rgba(214,51,132,.28);
}
.pc-app-nav .pc-nav-count{
  background:rgba(255,255,255,.16);
  color:#fff;
  min-width:20px;
  height:20px;
  font-size:11px;
}
.pc-app-nav a.active .pc-nav-count{
  background:rgba(0,0,0,.22);
  color:#fff;
}
.pc-app-alert{
  border-radius:12px;
  border-color:#c8d5e6;
  background:#f8fbff;
}
.pc-app-panel,
.pc-app-cards a,
.pc-ops-card,
.pc-help-card,
.pc-app-job-card,
.pc-comm-card,
.pc-integration-check,
.pc-status-row,
.pc-app-table,
.pc-app-summary{
  border-color:var(--pc-line);
  box-shadow:0 6px 16px rgba(15,23,42,.04);
}
.pc-app-panel{
  border-radius:14px;
  background:var(--pc-surface);
}
.pc-app-section-head h1,
.pc-app-section-head h2,
.pc-app-panel > h1,
.pc-app-panel > h2{
  color:#0f172a;
}
.pc-app-muted{color:var(--pc-muted-2);}
.pc-app-btn{
  border-color:#cfd8e4;
  border-radius:10px;
  font-weight:700;
  color:#0f172a;
  background:#fff;
}
.pc-app-btn:hover{background:#f8fafc;}
.pc-app-primary{box-shadow:0 8px 20px rgba(214,51,132,.16);}
.pc-app-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.pc-app-cards a{
  padding:12px 14px;
  border-radius:14px;
  background:linear-gradient(180deg,#fff 0%, #fbfdff 100%);
}
.pc-app-cards strong{
  font-size:28px;
  color:#111827;
}
.pc-app-cards span{
  color:#5b6778;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.pc-app-grid{grid-template-columns:minmax(0,1.45fr) minmax(360px,.8fr);gap:12px;}
.pc-app-start-panel{
  background:linear-gradient(180deg,#ffffff 0%, #fbfbff 100%);
}
.pc-app-workflow-actions{gap:8px;margin-top:10px;}
.pc-app-workflow-actions .pc-app-btn{border-radius:999px;padding:8px 14px;}
.pc-app-workflow-actions .pc-app-primary{padding-inline:16px;}
.pc-ops-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;}
.pc-ops-card{border-radius:14px;padding:12px;}
.pc-ops-card strong{font-size:26px;}
.pc-app-job-list{gap:8px;}
.pc-app-job-card{
  border-radius:14px;
  background:var(--pc-surface-2);
  border:1px solid var(--pc-line-soft);
  padding:11px 12px;
}
.pc-app-job-card h3{font-size:15px;}
.pc-app-badge{
  background:#ffe4ef;
  color:#a61f61;
  font-size:10.5px;
}
.pc-app-detail-grid{gap:12px;}
.pc-comm-center .pc-app-cards{grid-template-columns:repeat(4,minmax(0,1fr));}
.pc-comm-filters,.pc-jobs-filters,.pc-invoice-filters,.pc-quotes-filters,.pc-app-filter-form{
  background:#f8fafc;
  border-color:var(--pc-line);
  border-radius:14px;
  padding:10px;
}
.pc-comm-list{gap:8px;}
.pc-comm-card{
  border-radius:14px;
  padding:12px;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:10px;
  background:#fff;
}
.pc-comm-card h3{font-size:15px;margin:6px 0 4px;}
.pc-comm-card p{margin:3px 0;}
.pc-comm-card-new{border-left:4px solid var(--pc-pink);background:#fff9fc;}
.pc-comm-actions{justify-content:flex-end;}
.pc-comm-actions .pc-app-btn{min-width:125px;}
.pc-app-table{border-radius:12px;overflow:hidden;}
.pc-app-table th{
  background:#f5f8fc;
  color:#334155;
  text-transform:uppercase;
  font-size:11px;
  letter-spacing:.03em;
}
.pc-app-table th,.pc-app-table td{padding:8px 9px;}
.pc-invoice-table{border-spacing:0 6px;}
.pc-invoice-table td:first-child,.pc-invoice-table td:last-child{border-radius:10px;}
.pc-integration-check{border-radius:14px;padding:12px;}
.pc-meta-webhook-box,
.pc-app-calendar-box,
.pc-oa-token-box,
.pc-external-invoice-box[open],
.pc-reset-form{
  border-radius:14px;
}
@media (min-width: 1280px){
  .pc-app-cards{grid-template-columns:repeat(6,minmax(0,1fr));}
  .pc-comm-center .pc-app-cards{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width: 980px){
  .pc-app-shell-head{padding:12px 12px 10px;}
  .pc-app-top{margin-bottom:8px;}
  .pc-app-nav a{padding:8px 11px;font-size:13px;}
  .pc-app-cards,.pc-comm-center .pc-app-cards{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pc-app-grid,.pc-app-detail-grid{grid-template-columns:1fr;}
  .pc-comm-card{grid-template-columns:1fr;}
  .pc-comm-actions{justify-content:flex-start;}
}
@media (max-width: 760px){
  .pc-app{padding:8px;background:#eef2f7;}
  .pc-app-shell-head{border-radius:14px;}
  .pc-app-brand strong{font-size:16px;}
  .pc-app-brand img{width:38px;height:38px;}
  .pc-app-admin{display:none;}
  .pc-app-user-chip{display:none;}
  .pc-app-nav{gap:6px;}
  .pc-app-nav a{flex:1 1 calc(50% - 6px);justify-content:center;}
}


/* v4.0.2 communication workspace */
.pc-comm-workspace{padding:12px;}
.pc-comm-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;}
.pc-comm-head h1{margin:0 0 3px;}
.pc-comm-mini-stats{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin:8px 0 10px;}
.pc-comm-mini-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:0 8px;align-items:center;background:#fff;border:1px solid var(--pc-line);border-radius:12px;padding:8px 10px;color:#0f172a;box-shadow:0 4px 12px rgba(15,23,42,.035);}
.pc-comm-mini-card span{grid-row:1/3;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;background:#fff0f6;color:var(--pc-pink);font-size:11px;font-weight:900;}
.pc-comm-mini-card strong{font-size:20px;line-height:1;color:#111827;}
.pc-comm-mini-card em{font-style:normal;font-size:11px;color:#64748b;font-weight:750;text-transform:uppercase;letter-spacing:.02em;}
.pc-comm-quick-tabs{display:flex;gap:6px;overflow-x:auto;padding:2px 0 8px;margin:0 0 4px;}
.pc-quick-tab{white-space:nowrap;border:1px solid #cfd8e4;background:#fff;color:#0f172a;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;}
.pc-quick-tab.active{background:var(--pc-pink);border-color:var(--pc-pink);color:#fff;}
.pc-comm-filterbar{display:flex!important;align-items:end;gap:8px;flex-wrap:wrap;margin:6px 0 10px!important;padding:8px!important;}
.pc-comm-filterbar label{min-width:150px;flex:0 1 190px;margin:0!important;font-size:12px;}
.pc-comm-filterbar .pc-filter-grow{flex:1 1 280px;}
.pc-comm-list-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:8px 0;}
.pc-comm-list-head h2{margin:0;}
.pc-comm-thread-list{display:flex;flex-direction:column;gap:6px;}
.pc-comm-thread-row{display:grid;grid-template-columns:46px minmax(0,1fr) minmax(120px,170px) auto;gap:9px;align-items:center;background:#fff;border:1px solid var(--pc-line-soft);border-radius:12px;padding:8px 9px;min-height:58px;}
.pc-comm-row-new{border-left:4px solid var(--pc-pink);background:#fff9fc;}
.pc-comm-row-deleted{opacity:.68;background:#f8fafc;}
.pc-comm-platform{width:38px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:950;background:#eef2ff;color:#1e3a8a;}
.pc-platform-facebook{background:#eaf2ff!important;color:#1d4ed8!important;}
.pc-platform-instagram{background:#fff0f6!important;color:#be185d!important;}
.pc-platform-whatsapp{background:#ecfdf3!important;color:#15803d!important;}
.pc-platform-email,.pc-platform-imap,.pc-platform-mail{background:#fff7ed!important;color:#c2410c!important;}
.pc-comm-thread-main{min-width:0;}
.pc-comm-thread-top{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#64748b;}
.pc-comm-thread-main h3{font-size:14px;margin:2px 0 1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-comm-thread-main p{margin:0;color:#334155;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:12.5px;}
.pc-comm-thread-main small{display:block;margin-top:2px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-comm-thread-state{display:flex;flex-direction:column;gap:4px;align-items:flex-start;}
.pc-comm-thread-actions{display:flex;gap:5px;align-items:center;justify-content:flex-end;flex-wrap:wrap;}
.pc-comm-thread-actions form{margin:0;}
.pc-comm-status-new{background:#ffe4ef!important;color:#9f1239!important;}
.pc-comm-status-answered{background:#e0f2fe!important;color:#075985!important;}
.pc-comm-status-resolved{background:#dcfce7!important;color:#166534!important;}
.pc-comm-status-error{background:#fee2e2!important;color:#991b1b!important;}
.pc-comm-status-muted{background:#e5e7eb!important;color:#374151!important;}
.pc-comm-detail-shell{display:grid;gap:10px;}
.pc-comm-detail-head{display:grid;grid-template-columns:minmax(0,1.2fr) auto auto;align-items:center;gap:10px;background:#fff;border:1px solid var(--pc-line);border-radius:14px;padding:10px 12px;box-shadow:0 6px 16px rgba(15,23,42,.035);}
.pc-comm-detail-title{display:flex;align-items:center;gap:10px;min-width:0;}
.pc-comm-detail-title h1{font-size:20px;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-comm-detail-title p{margin:0;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pc-comm-detail-badges,.pc-comm-detail-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap;}
.pc-comm-link-strip{display:flex;gap:8px;flex-wrap:wrap;background:#f8fafc;border:1px solid var(--pc-line);border-radius:12px;padding:8px 10px;color:#334155;font-size:12.5px;}
.pc-comm-thread-panel,.pc-quick-reply-panel{padding:12px;}
.pc-comm-chat{display:flex;flex-direction:column;gap:7px;max-height:430px;overflow:auto;padding:2px 3px 4px;}
.pc-chat-bubble{max-width:min(780px,86%);border:1px solid #dbe3ef;border-radius:14px;padding:9px 10px;background:#fff;line-height:1.38;font-size:13px;}
.pc-chat-in{align-self:flex-start;background:#f8fafc;border-top-left-radius:5px;}
.pc-chat-out{align-self:flex-end;background:#fff0f6;border-color:#f3c8da;border-top-right-radius:5px;}
.pc-chat-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:4px;font-size:11.5px;color:#64748b;}
.pc-quick-templates{display:flex;gap:6px;overflow-x:auto;padding-bottom:7px;margin-bottom:8px;}
.pc-quick-templates .pc-app-btn{white-space:nowrap;}
.pc-reply-panel-quick,.pc-meta-reply-form{margin-top:8px;}
.pc-quick-reply-form textarea{min-height:86px!important;}
.pc-quick-reply-row{display:grid;grid-template-columns:1fr 1.2fr;gap:8px;}
.pc-quick-reply-actions{display:flex;justify-content:flex-end;margin-top:7px;}
.pc-comm-detail-section{background:#fff;margin:0;}
.pc-raw-payload{background:#111827;color:#fff;border-radius:10px;padding:10px;max-height:300px;overflow:auto;font-size:11px;white-space:pre-wrap;}
.pc-meta-review-panel{border-color:#b9d1ff;background:#f8fbff;}
@media (max-width:1180px){
  .pc-comm-mini-stats{grid-template-columns:repeat(4,minmax(0,1fr));}
  .pc-comm-thread-row{grid-template-columns:42px minmax(0,1fr) auto;}
  .pc-comm-thread-state{display:none;}
  .pc-comm-detail-head{grid-template-columns:1fr;}
  .pc-comm-detail-badges,.pc-comm-detail-actions{justify-content:flex-start;}
}
@media (max-width:760px){
  .pc-comm-mini-stats{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pc-comm-head{flex-direction:column;}
  .pc-comm-thread-row{grid-template-columns:38px minmax(0,1fr);align-items:start;}
  .pc-comm-thread-actions{grid-column:1/-1;justify-content:flex-start;}
  .pc-comm-thread-main h3,.pc-comm-thread-main p,.pc-comm-thread-main small{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
  .pc-quick-reply-row{grid-template-columns:1fr;}
  .pc-chat-bubble{max-width:94%;}
}


/* v4.0.3 email visibility fix in communication center */
.pc-platform-e-mail,
.pc-platform-email,
.pc-platform-imap,
.pc-platform-mail,
.pc-platform-smtp,
.pc-platform-webmail{
  background:#fff7ed!important;
  color:#c2410c!important;
}
@media (min-width:1280px){
  .pc-comm-mini-stats{grid-template-columns:repeat(8,minmax(0,1fr));}
}


/* v4.0.4 communication email fallback diagnostics */
.pc-comm-debug-mini{
  margin:6px 0 8px;
  padding:6px 8px;
  border:1px dashed #cbd5e1;
  border-radius:10px;
  background:#f8fafc;
  color:#64748b;
  font-size:11.5px;
}


/* v4.0.5 direct e-mail fallback diagnostics */
.pc-comm-debug-mini small{
  display:block;
  margin-top:4px;
  color:#475569;
  line-height:1.35;
}


/* v4.0.6 bulk message selection */
.pc-comm-bulk-form{margin:0;}
.pc-comm-bulkbar{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:8px 0 10px;
  padding:8px;
  border:1px solid #d9e1ec;
  border-radius:12px;
  background:#f8fafc;
}
.pc-comm-bulkbar select{
  min-height:30px;
  border:1px solid #cfd8e4;
  border-radius:9px;
  padding:5px 8px;
  background:#fff;
  font-size:12.5px;
}
.pc-comm-select-all,
.pc-comm-row-check{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:12px;
  font-weight:750;
  color:#334155;
}
.pc-comm-row-check{
  justify-content:center;
  align-self:center;
}
.pc-comm-row-check span{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.pc-comm-row-check input,
.pc-comm-select-all input{
  width:16px;
  height:16px;
  accent-color:var(--pc-pink);
}
.pc-comm-thread-row{
  grid-template-columns:26px 46px minmax(0,1fr) minmax(120px,170px) auto;
}
@media (max-width:1180px){
  .pc-comm-thread-row{grid-template-columns:26px 42px minmax(0,1fr) auto;}
}
@media (max-width:760px){
  .pc-comm-bulkbar{align-items:stretch;}
  .pc-comm-bulkbar select,.pc-comm-bulkbar .pc-app-btn{width:100%;}
  .pc-comm-thread-row{grid-template-columns:24px 38px minmax(0,1fr);}
  .pc-comm-thread-actions{grid-column:1/-1;}
}


/* v4.0.7 email deletion via IMAP */
.pc-comm-debug-mini strong{color:#0f172a;}

/* v4.0.8 manual WhatsApp + drag/drop attachments + ARES */
.pc-drop-panel{border:1px dashed #d63384;border-radius:14px;background:#fff8fb;padding:10px;margin:8px 0 12px}.pc-drop-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:82px;border:1px dashed rgba(214,51,132,.45);border-radius:12px;background:#fff;cursor:pointer;text-align:center}.pc-drop-zone strong{font-size:14px;color:#111827}.pc-drop-zone span{font-size:12px;color:#667085}.pc-drop-zone.pc-drop-over{background:#fff0f6;border-color:#d63384}.pc-drop-meta{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:8px;margin-top:8px}.pc-drop-meta label{margin:0!important;font-size:12px}.pc-drop-meta input,.pc-drop-meta select{min-height:32px!important}.pc-attachment-compact-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;margin-top:8px}.pc-attachment-compact-item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:8px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;padding:7px}.pc-attachment-preview{width:58px;height:58px;border-radius:10px;background:#f8fafc;display:flex;align-items:center;justify-content:center;overflow:hidden}.pc-attachment-preview img{width:100%;height:100%;object-fit:cover}.pc-attachment-compact-item strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pc-attachment-compact-item small{display:block;color:#64748b;font-size:11px}.pc-attachment-compact-item p{font-size:12px;margin:3px 0;color:#334155}.pc-quick-customer-panel{border-color:#d9e1ec;background:#fbfdff}.pc-ares-status{display:inline-flex;align-items:center;min-height:28px}@media(max-width:760px){.pc-drop-meta{grid-template-columns:1fr}.pc-attachment-compact-list{grid-template-columns:1fr}}

/* v4.0.9 – logické skupiny horního menu + katalog položek podle kategorií */
.pc-app-nav-organized{
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  gap:8px;
  margin:0 0 12px;
}
.pc-app-nav-organized .pc-app-nav-section{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:5px;
  padding:7px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(15,23,42,.28);
  border-radius:15px;
  min-width:0;
}
.pc-app-nav-organized .pc-app-nav-section-title{
  flex:0 0 100%;
  color:rgba(255,255,255,.58);
  font-size:10px;
  line-height:1;
  font-weight:850;
  text-transform:uppercase;
  letter-spacing:.055em;
  padding:0 5px 2px;
}
.pc-app-nav-organized a,
.pc-app-nav-organized summary{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:33px;
  padding:7px 10px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.045);
  color:rgba(255,255,255,.92);
  font-size:12.5px;
  font-weight:800;
  cursor:pointer;
  text-decoration:none;
  white-space:nowrap;
}
.pc-app-nav-organized a:hover,
.pc-app-nav-organized summary:hover{
  background:rgba(255,255,255,.10);
}
.pc-app-nav-organized a.active,
.pc-app-nav-organized summary.active{
  background:var(--pc-pink);
  border-color:var(--pc-pink);
  color:#fff;
  box-shadow:0 8px 22px rgba(214,51,132,.24);
}
.pc-app-nav-settings{position:relative;}
.pc-app-nav-settings summary{list-style:none;}
.pc-app-nav-settings summary::-webkit-details-marker{display:none;}
.pc-app-nav-settings summary::after{content:'▾';font-size:11px;opacity:.75;}
.pc-app-nav-settings[open] summary::after{content:'▴';}
.pc-app-nav-settings-menu{
  display:flex;
  flex-wrap:wrap;
  gap:5px;
  align-items:center;
}
.pc-app-nav-settings-menu a{background:rgba(255,255,255,.065);}
.pc-service-catalog{
  border:1px solid #e5e7eb;
  background:#fbfbfd;
  border-radius:16px;
  padding:12px;
  margin:10px 0 12px;
}
.pc-service-catalog-head{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:flex-end;
  gap:8px;
  margin-bottom:9px;
}
.pc-service-catalog-head strong{font-size:15px;}
.pc-service-catalog-head span,
.pc-service-catalog-hint{color:#667085;font-size:12.5px;}
.pc-service-catalog-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  margin-bottom:10px;
}
.pc-service-catalog-tab{
  appearance:none;
  border:1px solid #d7dce5;
  background:#fff;
  color:#1f2937;
  border-radius:999px;
  padding:7px 10px;
  font-weight:850;
  font-size:12.5px;
  cursor:pointer;
}
.pc-service-catalog-tab span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:19px;
  height:19px;
  margin-left:4px;
  padding:0 5px;
  border-radius:999px;
  background:#f1f5f9;
  font-size:11px;
}
.pc-service-catalog-tab:hover{border-color:#d63384;color:#9b1f5a;background:#fff7fb;}
.pc-service-catalog-tab.active{border-color:#d63384;background:#d63384;color:#fff;box-shadow:0 8px 20px rgba(214,51,132,.18);}
.pc-service-catalog-tab.active span{background:rgba(255,255,255,.22);color:#fff;}
.pc-service-catalog-row{align-items:end;}
.pc-service-catalog-footer{
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  margin-top:8px;
}
.pc-service-catalog-extra-actions{margin-top:8px;}
@media(max-width:900px){
  .pc-app-nav-organized .pc-app-nav-section{flex:1 1 100%;}
  .pc-app-nav-organized a,
  .pc-app-nav-organized summary{flex:1 1 auto;justify-content:center;white-space:normal;text-align:center;}
  .pc-service-catalog-footer .pc-app-btn{width:100%;justify-content:center;}
}

/* v4.0.10 – ručně zadané položky mimo katalog */
.pc-manual-item-box{
  border:1px dashed #d63384;
  background:#fff7fb;
  border-radius:16px;
  padding:12px;
  margin:10px 0 12px;
}
.pc-manual-item-row{align-items:end;}
