/* Cake Sales & Smart ERP — tema dashboard.
   Palet: krim mentega, karamel, cokelat panggang. Tanpa font eksternal (CSP 'self'). */

:root {
    --cs-cream: #fbf7f1;
    --cs-paper: #ffffff;
    --cs-ink: #2a1f17;
    --cs-ink-soft: #6b5a4c;
    --cs-line: #ece3d6;
    --cs-caramel: #b5652b;
    --cs-caramel-dark: #964f1e;
    --cs-butter: #f2c14e;
    --cs-choco: #2b1d14;
    --cs-choco-2: #3a281c;
    --cs-sidebar-text: #e9dccd;
    --cs-sidebar-muted: #a8927d;
    --cs-radius: 14px;
    --cs-shadow: 0 1px 2px rgba(43, 29, 20, .05), 0 6px 20px rgba(43, 29, 20, .05);
    --sidebar-w: 256px;

    --bs-body-bg: var(--cs-cream);
    --bs-body-color: var(--cs-ink);
    --bs-link-color: var(--cs-caramel-dark);
    --bs-link-color-rgb: 150, 79, 30;
    --bs-link-hover-color: var(--cs-choco);
    --bs-border-color: var(--cs-line);
    --bs-font-sans-serif: "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
}

body { font-feature-settings: "tnum" 1; }
code { color: var(--cs-caramel-dark); }

/* ---------- Tombol brand ---------- */
.btn-brand {
    --bs-btn-bg: var(--cs-caramel);
    --bs-btn-border-color: var(--cs-caramel);
    --bs-btn-color: #fff;
    --bs-btn-hover-bg: var(--cs-caramel-dark);
    --bs-btn-hover-border-color: var(--cs-caramel-dark);
    --bs-btn-hover-color: #fff;
    --bs-btn-active-bg: var(--cs-choco-2);
    --bs-btn-active-border-color: var(--cs-choco-2);
    --bs-btn-focus-shadow-rgb: 181, 101, 43;
    font-weight: 600;
}
.btn-icon { border: 0; font-size: 1.4rem; line-height: 1; padding: .25rem .5rem; }

/* ---------- Layout ---------- */
.app-sidebar {
    position: fixed; inset: 0 auto 0 0; width: var(--sidebar-w);
    background: linear-gradient(180deg, var(--cs-choco) 0%, var(--cs-choco-2) 100%);
    color: var(--cs-sidebar-text);
    display: flex; flex-direction: column; z-index: 1040;
    transition: transform .2s ease;
}
.app-main { margin-left: var(--sidebar-w); min-height: 100vh; display: flex; flex-direction: column; }
.sidebar-brand { display: flex; align-items: center; gap: .75rem; padding: 1.25rem 1.25rem 1rem; }
.brand-mark {
    width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center;
    background: var(--cs-butter); color: var(--cs-choco); font-size: 1.3rem;
}
.brand-mark-lg { width: 64px; height: 64px; font-size: 2rem; border-radius: 18px; }
.brand-text { display: flex; flex-direction: column; line-height: 1.15; }
.brand-text strong { font-size: 1.05rem; letter-spacing: .2px; }
.brand-text small { color: var(--cs-sidebar-muted); font-size: .75rem; }

.sidebar-nav { flex: 1; overflow-y: auto; padding: .25rem .75rem 1rem; }
.nav-section {
    text-transform: uppercase; font-size: .68rem; letter-spacing: .08em;
    color: var(--cs-sidebar-muted); padding: 1rem .75rem .35rem;
}
.sidebar-nav .nav-link {
    display: flex; align-items: center; gap: .7rem; color: var(--cs-sidebar-text);
    border-radius: 10px; padding: .5rem .75rem; font-size: .92rem;
}
.sidebar-nav .nav-link i { font-size: 1.05rem; opacity: .85; }
.sidebar-nav .nav-link:hover { background: rgba(255, 255, 255, .06); color: #fff; }
.sidebar-nav .nav-link.active { background: rgba(242, 193, 78, .16); color: var(--cs-butter); }
.sidebar-nav .nav-link.active i { opacity: 1; }
.phase-pill {
    margin-left: auto; font-size: .64rem; font-weight: 600; padding: .1rem .4rem;
    border-radius: 6px; background: rgba(255, 255, 255, .08); color: var(--cs-sidebar-muted);
}
.phase-pill-light { background: #f4ece1; color: var(--cs-ink-soft); }
.sidebar-foot { padding: .75rem 1.25rem; font-size: .72rem; color: var(--cs-sidebar-muted); border-top: 1px solid rgba(255, 255, 255, .06); }

.app-topbar {
    position: sticky; top: 0; z-index: 1020; display: flex; align-items: center; gap: .75rem;
    padding: .75rem 1.5rem; background: rgba(251, 247, 241, .9); backdrop-filter: blur(8px);
    border-bottom: 1px solid var(--cs-line);
}
.topbar-title { flex: 1; min-width: 0; }
.topbar-actions { display: flex; align-items: center; gap: 1rem; }
.topbar-clock { font-size: .85rem; color: var(--cs-ink-soft); font-variant-numeric: tabular-nums; }
.btn-user { display: flex; align-items: center; gap: .5rem; border: 1px solid var(--cs-line); background: var(--cs-paper); border-radius: 999px; padding: .25rem .75rem .25rem .25rem; }
.avatar { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; background: var(--cs-caramel); color: #fff; font-weight: 700; font-size: .85rem; }
.role-badge { font-weight: 600; font-size: .68rem; letter-spacing: .02em; }
.app-content { padding: 1.5rem; flex: 1; }
.app-content:focus { outline: none; }
.skip-link { position: absolute; left: 1rem; top: 1rem; z-index: 2000; background: #fff; padding: .5rem 1rem; border-radius: 8px; }

.sidebar-backdrop { display: none; }
@media (max-width: 991.98px) {
    .app-sidebar { transform: translateX(-100%); }
    .app-main { margin-left: 0; }
    body.sidebar-open .app-sidebar { transform: none; box-shadow: 0 0 40px rgba(0, 0, 0, .3); }
    body.sidebar-open .sidebar-backdrop { display: block; position: fixed; inset: 0; background: rgba(0, 0, 0, .35); z-index: 1030; }
    .app-content { padding: 1rem; }
    .app-topbar { padding: .6rem 1rem; }
}

/* ---------- Komponen ---------- */
.panel { background: var(--cs-paper); border: 1px solid var(--cs-line); border-radius: var(--cs-radius); box-shadow: var(--cs-shadow); overflow: hidden; }
.panel-head { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .9rem 1.1rem; border-bottom: 1px solid var(--cs-line); }
.panel .table { --bs-table-bg: transparent; }
.panel .table > :not(caption) > * > * { padding-left: 1.1rem; padding-right: 1.1rem; }
.panel .table thead th { font-size: .75rem; text-transform: uppercase; letter-spacing: .05em; color: var(--cs-ink-soft); font-weight: 600; background: #fdfaf6; }

.welcome-card {
    display: flex; justify-content: space-between; align-items: flex-start; gap: 1.5rem; flex-wrap: wrap;
    padding: 1.5rem 1.75rem; border-radius: var(--cs-radius);
    background:
        radial-gradient(circle at 92% 20%, rgba(242, 193, 78, .35) 0, transparent 40%),
        linear-gradient(135deg, #fff 0%, #f8efe2 100%);
    border: 1px solid var(--cs-line); box-shadow: var(--cs-shadow);
}
.welcome-meta { display: flex; gap: .4rem; flex-wrap: wrap; }
.eyebrow { text-transform: uppercase; font-size: .72rem; letter-spacing: .1em; color: var(--cs-caramel-dark); font-weight: 700; }

.stat-card { background: var(--cs-paper); border: 1px solid var(--cs-line); border-radius: var(--cs-radius); padding: 1rem 1.1rem; height: 100%; box-shadow: var(--cs-shadow); }
.stat-label { font-size: .78rem; color: var(--cs-ink-soft); text-transform: uppercase; letter-spacing: .05em; }
.stat-value { font-size: 1.9rem; font-weight: 700; line-height: 1.2; margin: .2rem 0; }
.stat-value-sm { font-size: 1.15rem; padding: .45rem 0; }
.stat-of { font-size: 1rem; color: var(--cs-ink-soft); font-weight: 500; }
.stat-hint { font-size: .82rem; color: var(--cs-ink-soft); }
.stat-warn { border-color: #f1d79a; background: #fffaf0; }
.stat-warn .stat-value { color: #a86a00; }

.roadmap { list-style: none; margin: 0; padding: .5rem 1.1rem 1rem; }
.roadmap-item { display: flex; align-items: center; gap: .85rem; padding: .45rem 0; position: relative; }
.roadmap-item:not(:last-child)::after { content: ""; position: absolute; left: 15px; top: 38px; bottom: -8px; width: 2px; background: var(--cs-line); }
.roadmap-dot { width: 32px; height: 32px; border-radius: 50%; display: grid; place-items: center; font-weight: 700; font-size: .85rem; background: #f4ece1; color: var(--cs-ink-soft); position: relative; z-index: 1; }
.roadmap-current .roadmap-dot { background: var(--cs-butter); color: var(--cs-choco); box-shadow: 0 0 0 4px rgba(242, 193, 78, .25); }
.roadmap-done .roadmap-dot { background: var(--cs-caramel); color: #fff; }
.roadmap-current .roadmap-label { font-weight: 700; }
.roadmap-next .roadmap-label { color: var(--cs-ink-soft); }

.list-plain { list-style: none; margin: 0; padding: 0; }
.list-plain li { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: .65rem 1.1rem; border-bottom: 1px solid var(--cs-line); }
.list-plain li:last-child { border-bottom: 0; }

.kv { display: grid; grid-template-columns: max-content 1fr; gap: .5rem 1rem; padding: 1rem 1.1rem; margin: 0; }
.kv dt { font-weight: 500; color: var(--cs-ink-soft); }
.kv dd { margin: 0; word-break: break-all; }

.empty-state { text-align: center; padding: 3rem 1.5rem; }
.empty-icon { font-size: 2.5rem; color: var(--cs-butter); margin-bottom: .5rem; }
.empty-text { max-width: 560px; }

.json-pre { font-size: .72rem; background: #fbf7f1; border: 1px solid var(--cs-line); border-radius: 6px; padding: .4rem .5rem; margin: .2rem 0 .4rem; max-width: 420px; white-space: pre-wrap; word-break: break-word; }
.diff-label { font-size: .65rem; text-transform: uppercase; color: var(--cs-ink-soft); letter-spacing: .05em; }
.audit-table details summary { cursor: pointer; color: var(--cs-caramel-dark); }

/* ---------- Login ---------- */
.bare-body { background: var(--cs-cream); }
.login-wrap { min-height: 100vh; display: grid; grid-template-columns: 1.05fr 1fr; }
.login-art {
    background:
        radial-gradient(circle at 20% 15%, rgba(242, 193, 78, .28) 0, transparent 35%),
        radial-gradient(circle at 85% 80%, rgba(181, 101, 43, .35) 0, transparent 40%),
        linear-gradient(160deg, var(--cs-choco) 0%, #4a3122 100%);
    color: var(--cs-sidebar-text); display: flex; align-items: center; padding: 3rem;
}
.login-art-inner { max-width: 440px; }
.login-art h2 { font-size: 2.4rem; font-weight: 800; line-height: 1.1; margin: 1.25rem 0 1rem; color: #fff; }
.login-art p { color: var(--cs-sidebar-text); opacity: .9; }
.login-points { list-style: none; padding: 0; margin: 1.75rem 0 0; }
.login-points li { display: flex; gap: .65rem; align-items: center; padding: .35rem 0; color: var(--cs-sidebar-text); }
.login-points i { color: var(--cs-butter); }
.login-panel { display: flex; align-items: center; justify-content: center; padding: 2rem; }
.login-card { width: 100%; max-width: 400px; }
@media (max-width: 860px) {
    .login-wrap { grid-template-columns: 1fr; }
    .login-art { display: none; }
}

/* ---------- Error ---------- */
.error-wrap { min-height: 100vh; display: grid; place-items: center; padding: 2rem; }
.error-card { text-align: center; max-width: 480px; }
.error-code { font-size: 4.5rem; font-weight: 800; color: var(--cs-caramel); line-height: 1; margin-bottom: .5rem; }

/* ---------- Phase 1: halaman daftar & dokumen ---------- */
.page-actions { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
.page-actions > form { min-width: 0; }
.nav-pills .nav-link { color: var(--cs-ink-soft); font-size: .85rem; }
.nav-pills .nav-link.active { background: var(--cs-choco); color: #fff; }
.cell-truncate { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.row-low > td { background: #fff8e6 !important; }
.lines-table { min-width: 860px; }
.lines-table td { vertical-align: top; }
.lines-table .line-item { width: 34%; }
.lines-table .line-qty { width: 11%; }
.lines-table .line-unit { width: 9%; }
.lines-table .line-money { width: 14%; }
.lines-table .line-lot { width: 28%; }
.lines-table .line-remove { width: 4%; }
.lines-table .lot-cell + .lot-cell { margin-top: .25rem; }
.count-col { width: 160px; }
.count-col + th, td input[name^="counts"] { max-width: 160px; margin-left: auto; }
.mw-100 { max-width: 100% !important; }
.kv dd code, .list-plain code { color: var(--cs-caramel-dark); }
.table td.text-end, .table th.text-end, .table td .font-monospace, .table td.font-monospace { white-space: nowrap; }
.kv dd { word-break: normal; overflow-wrap: anywhere; }

/* ---------- Phase 2: produksi ---------- */
.text-prewrap { white-space: pre-wrap; }
.steps { display: flex; flex-wrap: wrap; gap: .25rem; list-style: none; margin: 0; padding: 0; counter-reset: step; }
.steps .step { flex: 1 1 0; min-width: 7rem; position: relative; padding: .5rem .75rem .5rem 2.25rem; border-radius: .6rem;
    background: var(--cs-paper); border: 1px solid var(--cs-line); font-size: .85rem; color: var(--cs-ink-soft); counter-increment: step; }
.steps .step::before { content: counter(step); position: absolute; left: .6rem; top: 50%; transform: translateY(-50%);
    width: 1.3rem; height: 1.3rem; border-radius: 50%; display: grid; place-items: center; font-size: .72rem; font-weight: 600;
    background: var(--cs-line); color: var(--cs-ink-soft); }
.steps .step.done { color: var(--cs-ink); }
.steps .step.done::before { content: '✓'; background: var(--cs-caramel); color: #fff; }
.steps .step.current { border-color: var(--cs-caramel); color: var(--cs-ink); font-weight: 600; box-shadow: 0 0 0 2px rgba(181, 101, 43, .15); }
.steps .step.current::before { background: var(--cs-caramel-dark); color: #fff; }
.steps .step.failed { border-color: var(--bs-danger); color: var(--bs-danger); }
.steps .step.failed::before { content: '✕'; background: var(--bs-danger); color: #fff; }
.lines-table .line-waste { width: 6.5rem; }
.lines-table .line-stage { width: 10rem; }
.lines-table .line-note { min-width: 9rem; }
details.panel > summary { cursor: pointer; }
.lines-table-compact { min-width: 0; }
.lines-table-compact .line-item { width: auto; }
.lines-table-compact .line-qty { width: 9rem; }
.lines-table-compact .line-unit { width: 6.5rem; }
.primary-actions form { margin: 0; }
@media (max-width: 575.98px) {
    .kv { grid-template-columns: minmax(0, 1fr); gap: .1rem; }
    .kv dd { margin-bottom: .55rem; }
    .steps .step { min-width: 6.5rem; }
}

/* ---------- Phase 3: penjualan ---------- */
.timeline { list-style: none; margin: 0; padding: .5rem 1.1rem 1rem; }
.timeline li { display: grid; grid-template-columns: 8.5rem 1fr; gap: .75rem; padding: .45rem 0; border-bottom: 1px dashed var(--cs-line); }
.timeline li:last-child { border-bottom: 0; }
.order-lines { min-width: 640px; }
.order-summary { position: sticky; top: 1rem; }
.print-body { background: #fff; }
.print-page { max-width: 820px; margin: 1.5rem auto; padding: 0 1rem; font-size: .92rem; }
@media print { .no-print { display: none !important; } .print-page { margin: 0; max-width: none; } }
@media (max-width: 575.98px) { .timeline li { grid-template-columns: 1fr; gap: .1rem; } }
.col-check { width: 2rem; }
.order-lines { min-width: 600px; }
.order-lines td:first-child, .order-lines th:first-child { width: 42%; min-width: 14rem; }
.order-lines td:nth-child(2) { width: 6rem; }
.filter-inline .form-control { width: auto; min-width: 9rem; }
.filter-inline .form-select { width: auto; min-width: 9rem; }

/* ---------- v0.5 pembayaran & laporan ---------- */
.callout { background: #fff8e6; border: 1px solid #f3dfa8; border-radius: var(--cs-radius); padding: .7rem 1rem; font-size: .9rem; }
.pay-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .75rem; padding: .9rem 1.1rem; }
.pay-summary > div { display: flex; flex-direction: column; gap: .1rem; }
.pay-summary span { font-size: .78rem; color: var(--cs-ink-soft); }
.pay-summary strong { font-size: 1.05rem; }
.pay-summary small { font-size: .72rem; color: var(--cs-ink-soft); }
.pay-form > summary { cursor: pointer; font-weight: 500; list-style: none; }
.pay-form > summary::-webkit-details-marker { display: none; }
.pay-form[open] > summary { color: var(--cs-caramel-dark); }
details > summary.btn { list-style: none; }
details > summary.btn::-webkit-details-marker { display: none; }
.proof-img { max-width: 100%; max-height: 520px; border: 1px solid var(--cs-line); border-radius: 8px; }
.report-nav .nav-link { padding: .25rem .8rem; }
.metric-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .75rem; }
.metric { background: var(--cs-paper); border: 1px solid var(--cs-line); border-radius: var(--cs-radius); padding: .8rem 1rem; box-shadow: var(--cs-shadow); }
.metric .m-label { font-size: .78rem; color: var(--cs-ink-soft); }
.metric .m-value { font-size: 1.25rem; font-weight: 600; font-variant-numeric: tabular-nums; }
.metric .m-hint { font-size: .74rem; color: var(--cs-ink-soft); }
.metric-strong { border-color: var(--cs-caramel); }
.bar-cell { position: relative; min-width: 120px; }
.bar-cell .bar { position: absolute; left: 0; top: 20%; bottom: 20%; background: #f3e2cf; border-radius: 3px; z-index: 0; }
.bar-cell span { position: relative; z-index: 1; }
.table td.num, .table th.num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
@media (max-width: 767.98px) {
    .pay-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Lebar batang laporan dalam langkah 5% (CSP melarang style inline). */
.bw-0{width:0%}.bw-1{width:5%}.bw-2{width:10%}.bw-3{width:15%}.bw-4{width:20%}.bw-5{width:25%}.bw-6{width:30%}.bw-7{width:35%}.bw-8{width:40%}.bw-9{width:45%}.bw-10{width:50%}.bw-11{width:55%}.bw-12{width:60%}.bw-13{width:65%}.bw-14{width:70%}.bw-15{width:75%}.bw-16{width:80%}.bw-17{width:85%}.bw-18{width:90%}.bw-19{width:95%}.bw-20{width:100%}
.verify-row { background: #fffaf0; border-top: 1px dashed var(--cs-line); }
details.panel > summary { cursor: pointer; list-style: none; } details.panel > summary::-webkit-details-marker { display: none; }
.ai-qa .ai-q { padding: .7rem 1.1rem; border-bottom: 1px solid var(--cs-line); font-weight: 500; }
.ai-qa .ai-a { padding: .8rem 1.1rem 1rem; }
.ai-text { white-space: normal; line-height: 1.55; }

/* ---------- Dashboard ---------- */
.dash-head { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: space-between; align-items: flex-end; margin-bottom: 1.25rem; }
.dash-notice { background: var(--cs-paper); border: 1px dashed var(--cs-line); border-radius: 10px; padding: .5rem .9rem; font-size: .85rem; color: var(--cs-ink-soft); margin-bottom: 1.25rem; }
.kpi-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(155px, 1fr)); gap: 1rem; }
.kpi-card { display: block; background: var(--cs-paper); border: 1px solid var(--cs-line); border-radius: var(--cs-radius); padding: 1rem 1.1rem; box-shadow: var(--cs-shadow);
    color: inherit; text-decoration: none; transition: border-color .15s, transform .15s; }
.kpi-card:hover { border-color: var(--cs-caramel); transform: translateY(-1px); color: inherit; }
.kpi-label { font-size: .8rem; color: var(--cs-ink-soft); font-weight: 500; }
.kpi-value { font-size: 1.55rem; font-weight: 650; letter-spacing: -.01em; margin: .25rem 0; font-variant-numeric: tabular-nums; }
.kpi-foot { font-size: .78rem; }
.delta { font-weight: 600; }
.delta-up { color: #1f7a4d; }
.delta-down { color: #b42318; }
.chart { width: 100%; height: auto; display: block; }
.chart-grid { stroke: var(--cs-line); stroke-width: 1; }
.chart-axis { font-size: 11px; fill: var(--cs-ink-soft); }
.chart-label { font-size: 11px; fill: var(--cs-ink-soft); }
.chart-label-today { fill: var(--cs-caramel-dark); font-weight: 700; }
.chart-bar { fill: #e7c9a7; }
.chart-bar-today { fill: var(--cs-caramel); }
.chart-hit { fill: transparent; }
g:hover > .chart-bar { fill: var(--cs-caramel-dark); }
.action-list { list-style: none; margin: 0; padding: .35rem 0; }
.action-list a { display: flex; align-items: center; gap: .75rem; padding: .6rem 1.1rem; color: inherit; text-decoration: none; }
.action-list a:hover { background: #fbf4ea; }
.action-icon { width: 2rem; height: 2rem; border-radius: 8px; display: inline-flex; align-items: center; justify-content: center; flex: none; background: #f3ece2; }
.action-label { flex: 1; font-size: .92rem; }
.action-count { font-weight: 700; font-variant-numeric: tabular-nums; min-width: 1.75rem; text-align: right; }
.tone-danger .action-icon { background: #fde8e6; color: #b42318; }
.tone-warn .action-icon { background: #fff2d6; color: #8a5a00; }
.tone-info .action-icon { background: #e6f0fb; color: #1d4f8a; }
.all-clear { display: flex; gap: .75rem; align-items: center; padding: 1.5rem 1.1rem; }
.all-clear .bi { font-size: 1.8rem; color: #1f7a4d; }
.rank-list { list-style: none; margin: 0; padding: .5rem 1.1rem 1rem; }
.rank-list li { display: flex; gap: .75rem; padding: .5rem 0; border-bottom: 1px dashed var(--cs-line); }
.rank-list li:last-child { border-bottom: 0; }
.rank-no { width: 1.6rem; height: 1.6rem; border-radius: 50%; background: #f3ece2; display: inline-flex; align-items: center; justify-content: center; font-size: .8rem; font-weight: 700; flex: none; }
.rank-body { flex: 1; min-width: 0; }
.rank-bar { height: 6px; background: #f3ece2; border-radius: 3px; margin: .3rem 0; overflow: hidden; }
.rank-bar span { display: block; height: 100%; background: var(--cs-caramel); border-radius: 3px; }
@media (max-width: 575.98px) {
    .kpi-grid { gap: .6rem; }
    .kpi-card { padding: .75rem .8rem; }
    .kpi-value { font-size: 1.15rem; }
    .chart-label { font-size: 15px; }
    .chart-label-alt { display: none; }
    .chart-axis { font-size: 15px; }
}

/* ---------- Telegram (v0.7) ---------- */
.code-reveal { border: 1px dashed var(--cs-caramel, #c58b4b); background: #fffaf2; }
.code-big { font-size: 1.9rem; letter-spacing: .18em; font-weight: 700; color: var(--cs-ink, #2b2118); word-break: break-all; }
.log-text { max-width: 26rem; }
.min-w-name { min-width: 11rem; }
@media (max-width: 575.98px) { .code-big { font-size: 1.45rem; letter-spacing: .1em; } .log-text { max-width: 14rem; } }

/* ---------- Produk Masuk (v0.8) ---------- */
.intake-table .intake-product { min-width: 14rem; }
.intake-table .intake-qty { width: 7rem; min-width: 6rem; }
.intake-table .intake-cost { width: 10rem; min-width: 8rem; }
.intake-table .intake-exp { width: 10rem; min-width: 9rem; }
.bill-text { font-size: .85rem; white-space: pre-wrap; }

/* Biaya lain pada form order */
.charge-amt { width: 11rem; }
.charge-x { width: 2.5rem; }
@media (max-width: 575.98px) { .charge-amt { width: 8rem; } }

/* Peta pengiriman (Leaflet) */
.delivery-map { height: 260px; border-radius: .5rem; border: 1px solid var(--bs-border-color); z-index: 0; }
.expense-reason { width: 7rem; }
@media (max-width: 575.98px) { .delivery-map { height: 220px; } }
.dest-marker { filter: hue-rotate(150deg) saturate(1.8); }
