/* Workspace invoice view. Scoped so other operational screens keep their layout. */
.invoice-workspace-shell { background:#f5f7fb; }
.invoice-workspace-shell .sidebar { background:#13233d; box-shadow:none; }
.invoice-workspace-shell .sidebar-item.active { background:#285de0; border-left-color:transparent; }
.invoice-workspace-shell .topbar { box-shadow:none; border-bottom:1px solid #e5eaf1; }
.invoice-workspace-shell .topbar-page-title { display:flex; gap:14px; font-size:13px; font-weight:400; color:#65748a; }
.invoice-workspace-shell .topbar-page-title strong { color:#255edc; font-weight:500; }
.invoice-breadcrumb-separator { color:#a2aec0; }
.invoice-mobile-menu { display:none; }
.invoice-workspace { padding:28px; max-width:1500px; color:#172338; }
.invoice-workspace button,.invoice-workspace select,.invoice-workspace input { font-size:13px; }
.invoice-workspace button,.invoice-workspace .button { border-radius:7px; box-shadow:none; }
.invoice-workspace button.primary,.invoice-workspace .button.primary { background:#285de0; color:#fff; border:1px solid #285de0; }
.invoice-workspace button.primary:hover,.invoice-workspace .button.primary:hover { background:#204fc2; }
.invoice-page-header { display:flex; justify-content:space-between; align-items:center; gap:16px; margin-bottom:24px; }
.invoice-page-header h2 { margin:0 0 6px; font-size:27px; letter-spacing:-.7px; line-height:1.2; }
.invoice-page-header p { margin:0; color:#65748a; font-size:13px; }
.invoice-page-header > button { flex-shrink:0; padding:10px 16px; }
.invoice-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); background:#fff; border:1px solid #e5eaf1; border-radius:10px; padding:20px 0; margin-bottom:24px; }
.invoice-summary > div { padding:0 22px; border-right:1px solid #e5eaf1; min-width:0; }
.invoice-summary > div:last-child { border-right:0; }
.invoice-summary span { display:block; font-size:12px; color:#65748a; }
.invoice-summary strong { display:block; font-weight:500; font-size:25px; letter-spacing:-.5px; margin-top:5px; font-variant-numeric:tabular-nums; overflow-wrap:anywhere; }
.invoice-sheet { background:#fff; border:1px solid #e5eaf1; border-radius:10px; }
.invoice-status-tabs { display:flex; gap:24px; padding:0 20px; border-bottom:1px solid #e5eaf1; }
.invoice-status-tabs button { border:0; border-bottom:2px solid transparent; border-radius:0; background:transparent; padding:17px 0 14px; color:#65748a; font-weight:500; white-space:nowrap; }
.invoice-status-tabs button[aria-pressed="true"] { color:#255edc; border-bottom-color:#255edc; }
.invoice-status-tabs button:hover { background:transparent; color:#255edc; }
.invoice-toolbar { display:flex; gap:8px; align-items:center; padding:18px 18px 10px; flex-wrap:wrap; }
.invoice-toolbar input { flex:1; min-width:190px; width:auto; margin:0; padding:9px 12px; border:1px solid #dce3ed; border-radius:7px; background:#fff; }
.invoice-toolbar select { max-width:100%; width:auto; border:1px solid #dce3ed; background:#fff; padding:9px; border-radius:7px; }
.invoice-toolbar button { margin:0; white-space:nowrap; }
.invoice-selection-bar { display:flex; gap:12px; align-items:center; flex-wrap:wrap; padding:0 18px 12px; }
.invoice-selection-bar button { border:0; background:transparent; color:#52647d; padding:4px 0; font-size:12px; }
.invoice-selection-label { margin-left:auto; font-size:12px; color:#65748a; }
.invoice-table-mount > p { margin:0; padding:35px 20px; color:#65748a; }
.invoice-table-mount > button { margin:0 20px 20px; }
.invoice-table-mount .scroll-x { border:0; border-radius:0; }
.invoice-table-mount table { width:100%; margin:0; border-collapse:collapse; font-size:13px; }
.invoice-table-mount thead th { background:#f7f9fc; color:#65748a; border-top:1px solid #e5eaf1; border-bottom:1px solid #e5eaf1; padding:12px 10px; font-size:11px; font-weight:500; white-space:nowrap; }
.invoice-table-mount td { padding:17px 10px; border-bottom:1px solid #edf0f5; vertical-align:middle; }
.invoice-table-mount th:first-child,.invoice-table-mount td:first-child { padding-left:20px; width:55px; }
.invoice-table-mount th:last-child,.invoice-table-mount td:last-child { padding-right:20px; width:58px; }
.invoice-table-mount th:last-child { font-size:0; }
.invoice-table-mount td:nth-child(6) { white-space:nowrap; font-variant-numeric:tabular-nums; font-weight:500; }
.invoice-table-mount tr:hover td { background:#f7f9fd; }
.invoice-table-mount input[type="checkbox"] { width:16px; height:16px; margin:0; accent-color:#285de0; }
.invoice-number { color:#255edc; font-weight:600; overflow-wrap:anywhere; }
.invoice-cell-secondary { display:block; margin-top:5px; color:#65748a; font-size:11px; font-weight:400; }
.invoice-status { display:inline-flex; align-items:center; gap:5px; padding:4px 8px; border-radius:5px; font-size:11px; font-weight:500; white-space:nowrap; }
.invoice-status::before { content:''; width:5px; height:5px; border-radius:50%; background:currentColor; }
.invoice-status-issued { background:#eaf7f1; color:#11765b; }
.invoice-status-draft { background:#fff4de; color:#966013; }
.invoice-status-cancelled { background:#f2f3f5; color:#637083; }
.invoice-table-mount .invoice-row-actions { border:0; background:transparent; color:#65748a; font-size:21px; padding:2px 8px; box-shadow:none; }
.invoice-table-mount .invoice-sort-heading { border:0; border-radius:0; background:transparent; color:inherit; font:inherit; padding:0; box-shadow:none; }
.invoice-pagination { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:15px 18px; flex-wrap:wrap; }
.invoice-pagination > div { display:flex; align-items:center; gap:8px; }
.invoice-pagination button,.invoice-pagination select { font-size:12px; padding:7px 10px; }
.invoice-pagination select { border:1px solid #dce3ed; border-radius:6px; background:#fff; width:auto; }
.invoice-page-label { color:#65748a; font-size:12px; }
.invoice-footnote { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; padding:16px 0; font-size:11px; color:#65748a; }
.invoice-drawer { position:fixed; inset:0 0 0 auto; margin:0; width:min(480px,100%); height:100dvh; max-height:100dvh; max-width:100%; border:0; border-left:1px solid #e5eaf1; padding:36px 28px; background:#fff; color:#172338; box-shadow:-12px 0 45px #10203d20; overflow:auto; }
.invoice-drawer::backdrop { background:#13233d55; }
.invoice-workspace .invoice-drawer-close { position:absolute; right:15px; top:12px; padding:2px 10px; font-size:25px; border:0; background:transparent; color:#65748a; }
.invoice-eyebrow { text-transform:uppercase; color:#65748a; font-size:11px; letter-spacing:1px; }
.invoice-drawer h2 { font-size:24px; margin:12px 0; overflow-wrap:anywhere; }
.invoice-detail-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 18px; margin:28px 0; }
.invoice-detail-fields dt { color:#65748a; font-size:11px; margin-bottom:5px; }
.invoice-detail-fields dd { margin:0; font-size:14px; overflow-wrap:anywhere; }
.invoice-detail-amounts { padding:18px 0; margin:22px 0; border-top:1px solid #e5eaf1; border-bottom:1px solid #e5eaf1; }
.invoice-detail-amounts > div { display:flex; justify-content:space-between; gap:12px; padding:6px 0; font-size:14px; }
.invoice-detail-amounts strong { font-weight:500; font-variant-numeric:tabular-nums; }
.invoice-detail-amounts > div:last-child { font-size:21px; margin-top:9px; }
.invoice-detail-actions { display:flex; flex-wrap:wrap; gap:8px; }
.invoice-detail-actions .button { font-size:13px; }
.invoice-detail-notes { font-size:13px; white-space:pre-wrap; overflow-wrap:anywhere; color:#65748a; }
.invoice-drawer-content > .danger { background:transparent; border:0; padding:0; color:#b63b3b; margin-top:28px; font-size:13px; }
@media(max-width:1100px) {
  .invoice-toolbar input { flex-basis:100%; }
  .invoice-toolbar .invoice-export { margin-left:auto; }
  .invoice-table-mount td:nth-child(3),.invoice-table-mount th:nth-child(3) { display:none; }
}
@media(max-width:700px) {
  .invoice-workspace { padding:20px 12px; }
  .invoice-page-header { gap:12px; }
  .invoice-page-header h2 { font-size:24px; }
  .invoice-page-header p { font-size:12px; max-width:220px; }
  .invoice-page-header > button { padding:9px 12px; font-size:12px; }
  .invoice-summary { padding:15px 0; margin-bottom:20px; }
  .invoice-summary > div { padding:0 12px; }
  .invoice-summary span { font-size:11px; }
  .invoice-summary strong { font-size:21px; }
  .invoice-status-tabs { gap:20px; padding:0 14px; }
  .invoice-status-tabs button { font-size:12px; }
  .invoice-toolbar { padding:14px 12px 10px; }
  .invoice-selection-bar { padding:0 12px 12px; }
  .invoice-table-mount td:nth-child(4),.invoice-table-mount th:nth-child(4) { display:none; }
  .invoice-table-mount th:first-child,.invoice-table-mount td:first-child { width:32px; padding-left:12px; }
  .invoice-table-mount td,.invoice-table-mount th { padding-left:7px; padding-right:7px; }
  .invoice-table-mount th:last-child,.invoice-table-mount td:last-child { width:34px; padding-right:10px; }
  .invoice-pagination { padding:14px 12px; }
}
@media(max-width:600px) {
  .invoice-workspace-shell .sidebar { display:none; }
  .invoice-workspace-shell .invoice-mobile-menu { display:block; padding:6px 9px; margin-right:9px; font-size:12px; }
  .invoice-workspace-shell .topbar { padding:10px 12px; gap:0; }
  .invoice-workspace-shell .topbar-page-title { gap:8px; font-size:12px; }
  .invoice-workspace-shell .topbar-avatar { display:none; }
  .invoice-workspace-shell.invoice-nav-open .sidebar { display:flex; position:fixed; top:56px; bottom:0; left:0; width:min(280px,85vw); z-index:30; box-shadow:12px 0 30px #13233d40; }
  .invoice-workspace-shell.invoice-nav-open .sidebar .brand-title,
  .invoice-workspace-shell.invoice-nav-open .sidebar .sidebar-section-label,
  .invoice-workspace-shell.invoice-nav-open .sidebar .sidebar-item-label { display:flex !important; opacity:1; width:auto; pointer-events:auto; }
  .invoice-workspace-shell.invoice-nav-open .sidebar .sidebar-item { padding:10px 18px; justify-content:flex-start; }
  .invoice-workspace-shell.invoice-nav-open .sidebar .sidebar-top { padding:16px; justify-content:flex-start; }
  .invoice-workspace-shell.invoice-nav-open .sidebar .sidebar-footer { display:none; }
  .invoice-workspace input[type="search"] { font-size:16px; }
  .invoice-workspace button,.invoice-workspace select,.invoice-detail-actions .button { min-height:40px; }
  .invoice-workspace .invoice-sort-heading { min-height:30px; }
  .invoice-table-mount th:first-child { font-size:0; }
  .invoice-toolbar { gap:8px; }
  .invoice-toolbar select { flex:1; min-width:0; }
  .invoice-toolbar .invoice-export { flex-basis:100%; margin-left:0; }
  .invoice-drawer { padding:38px 22px; }
}
@media(max-width:400px) {
  .invoice-page-header { align-items:flex-start; }
  .invoice-page-header p { max-width:170px; }
  .invoice-summary > div { padding:0 8px; }
  .invoice-summary strong { font-size:18px; }
  .invoice-summary span { font-size:10px; }
  .invoice-status-tabs { gap:15px; padding:0 12px; }
  .invoice-status-tabs button { font-size:11px; }
  .invoice-table-mount td:last-child,.invoice-table-mount th:last-child { display:none; }
  .invoice-table-mount table { table-layout:fixed; font-size:12px; }
  .invoice-table-mount th:nth-child(5) { width:70px; }
  .invoice-table-mount th:nth-child(6) { width:92px; }
  .invoice-table-mount td:nth-child(6) { white-space:normal; overflow-wrap:anywhere; }
  .invoice-status { font-size:10px; padding:3px 5px; }
  .invoice-number { word-break:break-word; }
}
