/* Price management follows the product registry's compact Branch blue layout. */
.branch-price-page { --price-blue:#0869a8; --price-dark:#075486; --price-line:#cddce7; color:#243d50; background:#f3f6f8; }
.branch-price-heading { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; min-height:46px; margin-bottom:10px; padding-bottom:10px; border-bottom:1px solid var(--price-line); }
.branch-price-heading h1 { margin:0; color:#143a57; font-size:20px; }
.branch-price-actions { display:flex; flex-wrap:wrap; gap:6px; }
.branch-price-button { width:auto; min-height:34px; padding:6px 11px; border:1px solid #a7c3d7; border-radius:3px; background:#fff; color:#075b94; font-family:inherit; font-size:13px; font-weight:700; line-height:1.5; box-shadow:none; cursor:pointer; }
.branch-price-button:hover:not(:disabled) { background:#e6f1f8; border-color:#6d9ebe; }
.branch-price-button:disabled { opacity:.48; cursor:not-allowed; }
.branch-price-button:focus-visible,.branch-price-categories button:focus-visible,.branch-price-categories summary:focus-visible { outline:2px solid #0878b7; outline-offset:2px; }
.branch-price-page [data-price-action="update"],.branch-price-confirm-dialog [data-price-action="confirm-pending"] { background:#0869a8; border-color:#0869a8; color:#fff; }
.branch-price-page [data-price-action="update"]:hover:not(:disabled),.branch-price-confirm-dialog [data-price-action="confirm-pending"]:hover:not(:disabled) { background:#075486; }
.branch-price-attention { background:#fff7df; border-color:#d5b96d; color:#805912; }
[data-price-pending-count] { display:inline-block; min-width:18px; margin-left:3px; font-variant-numeric:tabular-nums; }
.branch-price-status { display:grid; grid-template-columns:minmax(0,1fr) 180px; gap:3px 14px; padding:8px 11px; margin-bottom:8px; border:1px solid #c6dce9; border-radius:3px; background:#eef6fb; font-size:13px; }
.branch-price-status-summary { display:flex; align-items:center; gap:8px; min-width:0; }
[data-price-percent] { flex-shrink:0; padding:2px 6px; border:1px solid #aacfe7; border-radius:3px; background:#fff; font-size:12px; font-weight:700; line-height:17px; }
.branch-price-progress { align-self:center; height:5px; overflow:hidden; background:#d3e3ed; border-radius:2px; }
.branch-price-progress > div { width:0; height:100%; background:#0a79b9; transition:width .15s; }
[data-price-status-detail] { grid-column:1/-1; margin:0; color:#597184; font-size:12px; line-height:1.5; }
[data-price-status-detail]:empty { display:none; }
.branch-price-error { border-color:#e3c7ad; background:#fff8ed; }
.branch-price-error [data-price-status-detail] { color:#964321; }
.branch-price-schedule { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:5px 15px; margin:0 0 12px; color:#567082; font-size:12px; }
.branch-price-schedule > div { display:flex; flex-wrap:wrap; gap:5px 14px; }
.branch-price-schedule a { color:#0869a8; }
.branch-price-schedule label { display:flex; align-items:center; gap:5px; margin:0; color:#275773; cursor:pointer; }
.branch-price-schedule input { width:15px; height:15px; margin:0; accent-color:#0869a8; }
[data-price-schedule-note] { flex-basis:100%; font-size:11px; }
.branch-price-catalog { display:grid; grid-template-columns:232px minmax(0,1fr); gap:12px; align-items:start; }
.branch-price-categories { position:sticky; top:12px; max-height:calc(100vh - 222px); overflow:auto; padding-bottom:4px; border:1px solid var(--price-line); background:#eaf2f7; scrollbar-width:thin; scrollbar-color:#a1b9c9 #eaf2f7; }
.branch-price-categories h2 { margin:0; padding:10px 12px; background:#0869a8; color:#fff; font-size:14px; }
.branch-price-categories button { display:block; width:100%; min-height:34px; padding:7px 11px; border:0; border-left:3px solid transparent; border-radius:0; background:transparent; color:#245b7e; text-align:left; font-size:12px; line-height:1.5; cursor:pointer; overflow-wrap:anywhere; }
.branch-price-categories details { margin:0; border-top:1px solid #d2e0e9; }
.branch-price-categories summary { padding:8px 10px; background:#dcebf4; color:#194c70; font-size:13px; line-height:1.4; font-weight:700; cursor:pointer; overflow-wrap:anywhere; }
.branch-price-categories summary::marker { color:#467996; font-size:10px; }
.branch-price-categories summary:hover { background:#cfe3f0; }
.branch-price-categories details button { padding-left:23px; }
.branch-price-categories button[aria-pressed="true"] { border-left-color:#0878b7; background:#fff; color:#075486; font-weight:700; }
.branch-price-categories button:hover { background:#d6e9f4; }
.branch-price-work { min-width:0; }
.branch-price-filter { display:flex; align-items:end; flex-wrap:wrap; gap:7px 12px; margin:0 0 10px; }
.branch-price-filter label { display:flex; flex:0 1 380px; flex-direction:column; gap:4px; margin:0; color:#3b556a; font-size:13px; font-weight:600; }
.branch-price-filter input { width:100%; min-height:35px; padding:7px 9px; border:1px solid #abc4d7; border-radius:3px; background:#fff; color:#243d50; font-size:14px; }
.branch-price-filter > span,.branch-price-filter > small { margin-bottom:8px; color:#597184; font-size:12px; }
.branch-price-filter > small { margin-left:auto; }
.branch-price-table-scroll { overflow:auto; border:1px solid var(--price-line); background:#fff; }
.branch-price-table { width:100%; min-width:1160px; table-layout:auto; border-collapse:collapse; font-size:12px; }
.branch-price-table th { padding:8px 10px; background:#0869a8; color:#fff; text-align:left; white-space:nowrap; }
.branch-price-table td { padding:7px 10px; line-height:1.55; border-bottom:1px solid #e4edf3; }
.branch-price-table td:first-child { width:190px; min-width:145px; }
.branch-price-table td:nth-child(2) { width:118px; white-space:nowrap; }
.branch-price-table td:nth-child(3) { min-width:230px; }
.branch-price-table th:nth-child(n+4),.branch-price-table td:nth-child(n+4) { min-width:92px; text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.branch-price-table td:last-child,.branch-price-table th:last-child { padding-right:15px; }
.branch-price-table small { display:block; margin-top:1px; color:#587184; font-size:11px; }
.branch-price-table tbody tr:nth-child(even) { background:#f5f8fa; }
.branch-price-table tbody tr:hover { background:#eaf4fb; }
.branch-price-code { color:#0870ac; font-variant-numeric:tabular-nums; }
.branch-price-srp { font-weight:700; color:#174b6d; background:#eaf4f94d; }
.branch-price-table .branch-price-empty { padding:38px 12px; color:#6a8294; text-align:center; }
.branch-price-pagination { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:6px; margin-top:9px; color:#567082; font-size:12px; font-variant-numeric:tabular-nums; }
[data-price-filter-label] { margin-right:auto; }
.branch-price-pagination .branch-price-button { min-height:31px; padding:4px 10px; font-size:12px; }
.branch-price-confirm-dialog { width:min(840px,calc(100% - 24px)); max-height:calc(100vh - 40px); padding:18px 20px; border:1px solid #acc6d8; border-radius:4px; background:#fff; color:#243d50; box-shadow:0 12px 50px #15364b33; }
.branch-price-confirm-dialog::backdrop { background:#18374f66; }
.branch-price-confirm-dialog header { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:14px; padding-bottom:12px; border-bottom:1px solid #d3e0ea; }
.branch-price-confirm-dialog h2 { margin:0; color:#144e77; font-size:17px; }
.branch-price-confirm-dialog p { margin:10px 0; font-size:13px; line-height:1.65; }
.branch-price-confirm-table { max-height:45vh; overflow:auto; border:1px solid #d4e1e9; }
.branch-price-confirm-table table { width:100%; min-width:590px; border-collapse:collapse; font-size:13px; }
.branch-price-confirm-table th { position:sticky; top:0; padding:8px 10px; background:#0869a8; color:#fff; text-align:left; }
.branch-price-confirm-table td { padding:8px 10px; border-bottom:1px solid #e4edf3; }
.branch-price-confirm-table tbody tr:nth-child(even) { background:#f5f8fa; }
.branch-price-confirm-table td:first-child { color:#075b94; white-space:nowrap; }
.branch-price-confirm-table th:nth-child(n+3),.branch-price-confirm-table td:nth-child(n+3) { text-align:right; white-space:nowrap; font-variant-numeric:tabular-nums; }
.branch-price-confirm-table td:last-child { color:#a03f24; font-weight:700; }
.branch-price-confirm-dialog .branch-price-confirm-note { color:#607889; font-size:12px; }
.branch-price-confirm-dialog .branch-price-confirm-error { color:#b22f22; }
.branch-price-confirm-error:empty { display:none; }
.branch-price-confirm-dialog footer { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:8px; margin-top:16px; padding-top:13px; border-top:1px solid #d3e0ea; }
@media(max-width:1000px) { .branch-price-catalog { grid-template-columns:200px minmax(0,1fr); gap:10px; } .branch-price-heading h1 { font-size:18px; } }
@media(max-width:700px) { .branch-price-actions { width:100%; } .branch-price-status { grid-template-columns:minmax(0,1fr); gap:5px; } .branch-price-catalog { grid-template-columns:minmax(0,1fr); } .branch-price-categories { position:static; max-height:220px; } .branch-price-filter label { flex:1 1 240px; } .branch-price-filter > small { margin-left:0; } .branch-price-table-scroll { max-height:60vh; } .branch-price-table th { position:sticky; top:0; z-index:1; } .branch-price-confirm-dialog { padding:14px; } .branch-price-confirm-dialog h2 { font-size:15px; } }
@media(max-width:420px) { .branch-price-button { padding:6px 8px; font-size:12px; } .branch-price-pagination [data-price-filter-label] { width:100%; } .branch-price-confirm-dialog footer button { flex:1 1 auto; } }
@media print { .branch-price-actions,.branch-price-status,.branch-price-schedule,.branch-price-categories,.branch-price-filter,.branch-price-pagination { display:none!important; } .branch-price-catalog { display:block; } .branch-price-table-scroll { overflow:visible; border:0; } }
