.sidebar .nav-caption { margin-top:22px; margin-bottom:8px; letter-spacing:.12em; }
.sidebar .product-nav { display:grid; gap:10px; }
.sidebar .product-nav button { border:1px solid #ffffff35; border-radius:14px; min-height:56px; font-size:16px; font-weight:700; }
.sidebar .product-nav button.active { background:#d6ef78; color:#242820; border-color:#d6ef78; }
.workspace-tabs { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 6px; }
.workspace-tabs button { background:#fff; border:1px solid #d8dfd9; border-radius:9px; padding:10px 15px; cursor:pointer; }
.workspace-tabs button.active { background:#243e32; color:#fff; }
.business-context { background:#f1f5ef; border:1px solid #dce3d9; border-radius:16px; padding:22px; margin-bottom:24px; }
.business-context h3 { margin:8px 0; font-size:26px; }
.business-context > span { color:#52634f; font-size:12px; font-weight:700; }
.workspace-toolbar { display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:16px; }
.workspace-toolbar input,.workspace-toolbar select,#card-note-filter { border:1px solid #d4ddd5; border-radius:8px; padding:10px; background:white; max-width:100%; }
.workspace-note { padding:16px 22px; border-top:1px solid #e0e6e0; }
.workspace-note p { white-space:pre-wrap; overflow-wrap:anywhere; margin:10px 0; }
.workspace-followup { border-bottom:1px solid #d7dfd6; }
.workspace-followup .workspace-note { border:0; padding-top:0; }
.workspace-home { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin-bottom:18px; }
.workspace-home button { background:#edf2e8; border:1px solid #d4dfcd; border-radius:16px; text-align:left; padding:24px; cursor:pointer; color:#21352a; }
.workspace-home button:nth-child(2) { background:#e4edce; }
.workspace-home strong,.workspace-home span { display:block; margin-top:12px; }
.workspace-home strong { font-size:25px; }
.workspace-home span { font-size:13px; }
@media(max-width:800px) { .workspace-home { grid-template-columns:1fr; } .workspace-toolbar { padding:12px; } .business-context { padding:16px; } }

.main > .business-context { margin:24px 28px 0; }
@media(max-width:800px) { .main > .business-context { margin:16px 12px 0; } }
/* Keep text, date and selection controls aligned across business forms. */
body .field input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
body .field select,
body .p-filters input, body .p-filters select,
body .p-upload-controls input, body .workspace-toolbar input, body .workspace-toolbar select {
  box-sizing:border-box; height:44px; min-height:44px; margin:0; padding:10px 12px;
  border:1px solid #d4ddd5; border-radius:9px; font:inherit; font-size:14px; line-height:22px;
  background-color:#fff; color:#24352b;
}
body .field input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),body .field select { width:100%; }
body .form-grid { align-items:start; gap:18px 20px; }
body .field { min-width:0; }
body .field label { display:block; margin:0 0 8px; line-height:20px; }
body .field textarea { box-sizing:border-box; width:100%; min-height:112px; padding:12px; border:1px solid #d4ddd5; border-radius:9px; font:inherit; resize:vertical; }
.assignment-methods { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin:24px 0 32px; }
.assignment-methods article { padding:24px; border:1px solid #d4dfd6; border-radius:16px; background:#f5f8f3; }
.assignment-methods article:first-child { background:#eaf0df; }
.assignment-methods h4 { font-size:20px; margin:12px 0; }
.assignment-methods p { line-height:1.75; min-height:64px; color:#526258; }
.assignment-step { font-size:12px; font-weight:700; color:#405c46; }
#p-binding-form { max-width:920px; padding:24px; border:1px solid #dce3dc; border-radius:14px; }
#p-binding-form > button { margin-top:20px; }
.customer-search-results { max-height:240px; overflow:auto; margin:8px 0 14px; border:1px solid #dce3dc; border-radius:10px; padding:12px; }
.customer-search-result { display:flex; flex-direction:column; gap:6px; width:100%; text-align:left; padding:12px; margin:4px 0; border:1px solid transparent; border-radius:8px; background:#f5f7f4; color:#24352b; cursor:pointer; }
.customer-search-result span { font-size:12px; color:#607066; }
.customer-search-result:hover,.customer-search-result[aria-pressed="true"] { background:#e8efdc; border-color:#829b62; }
.customer-search-result:focus-visible { outline:2px solid #526d37; outline-offset:2px; }
.customer-search-selection { display:flex; gap:12px; flex-wrap:wrap; align-items:center; padding:12px; background:#eef3e8; border-radius:9px; margin:12px 0 20px; }
.search-empty { padding:12px; color:#6c6053; line-height:1.6; }
@media(max-width:700px) { .assignment-methods { grid-template-columns:1fr; } #p-binding-form { padding:16px; } }

.product-stat { display:flex; flex-direction:column; gap:8px; margin:22px 0; }
.product-stat strong { font-size:32px; font-weight:750; color:#23382c; }
.product-stat span { font-size:13px; color:#5a6b60; }
.workspace-history { margin: 0 0 18px; }
.history-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.history-card { min-width:0; padding:16px; border:1px solid #dfe7df; border-radius:12px; background:#fbfcfa; }
.history-card header { display:flex; justify-content:space-between; align-items:baseline; gap:10px; }
.history-card header span { color:#5c6c61; font-size:12px; }
.history-card header b { color:#21382b; font-size:18px; text-align:right; overflow-wrap:anywhere; }
.history-card>p { color:#7a867d; font-size:11px; line-height:1.6; }
.history-points { display:flex; gap:7px; min-height:118px; align-items:end; overflow-x:auto; padding-top:14px; }
.history-point { flex:1 0 42px; min-width:42px; display:flex; flex-direction:column; justify-content:end; align-items:center; gap:4px; }
.history-bar { width:100%; height:64px; display:flex; align-items:end; justify-content:center; background:linear-gradient(to top,#edf2eb 1px,transparent 1px); background-size:100% 16px; }
.history-bar i { display:block; width:16px; min-height:0; border-radius:4px 4px 1px 1px; background:#6f914b; }
.history-point strong { color:#425b49; font-size:10px; white-space:nowrap; }
.history-point small { color:#89948b; font-size:9px; white-space:nowrap; }
@media(max-width:1050px) { .history-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:520px) { .history-grid { grid-template-columns:1fr; } }
