
    body { margin: 0; background: #f6f3eb; color: #1d1711; font-family: "Segoe UI", system-ui, -apple-system, sans-serif; font-size: 14px; }
    a { color: #e6532e; text-decoration: none; } a:hover { color: #bf3918; }
    input, select { font-family: inherit; font-size: 14px; color: #1d1711; background: #fffaf0; border: 1px solid #c9bba4; border-radius: 6px; height: 40px; padding: 0 12px; box-sizing: border-box; width: 100%; }
    input:focus, select:focus { outline: 2px solid #e6532e; outline-offset: 0; border-color: #e6532e; }
    button { font-family: inherit; cursor: pointer; }
    table { border-collapse: separate; border-spacing: 0; width: 100%; }
    th { text-align: left; font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: #5c5047; background: #ebe5d7; padding: 14px 16px; border-bottom: 1px solid #dfd3c0; white-space: nowrap; }
    td { padding: 12px 16px; border-bottom: 1px solid #dfd3c0; vertical-align: top; background: #fffaf0; }
    tr:last-child td { border-bottom: none; }
    tr.total td { font-weight: 700; background: #f3eee2; }
    .tab { height: 40px; padding: 0 16px; border-radius: 6px; border: 1px solid #c9bba4; background: #fffaf0; color: #5c5047; font-weight: 700; font-size: 14px; white-space: nowrap; }
    .navtab { font-size: 13px; padding: 0 9px; }
    .tab-active { border-color: #e6532e; background: #fbeae4; color: #e6532e; }
    .btn { height: 40px; padding: 0 16px; border-radius: 6px; border: 1px solid #c9bba4; background: #fffaf0; color: #1d1711; font-weight: 700; font-size: 14px; white-space: nowrap; }
    .btn-primary { background: #e6532e; border-color: #e6532e; color: #ffffff; }
    .btn-primary:hover { background: #bf3918; }
    .btn-small { height: 32px; padding: 0 12px; font-size: 13px; }
    .label { font-size: 12px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: #5c5047; margin-bottom: 6px; }
    .pill { display: inline-block; padding: 4px 10px; border-radius: 6px; font-weight: 700; font-size: 13px; white-space: nowrap; }
    .pill-green { background: #d9efe0; color: #1e6b45; }
    .pill-grey { background: #ebe5d7; color: #5c5047; }
    .pill-orange { background: #fbeae4; color: #bf3918; }
    .pill-red { background: #fbe4e4; color: #bf3918; }
    .muted { color: #5c5047; }
    .num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
    .neg { color: #bf3918; }
    .card { background: #fffaf0; border: 1px solid #dfd3c0; border-radius: 6px; }
    .kpi { background: #fffaf0; border: 1px solid #dfd3c0; border-radius: 6px; padding: 20px 22px; display: flex; flex-direction: column; gap: 8px; }
    .kpi-v { font-size: 28px; font-weight: 800; }
    .banner { background: #fbe4e4; border: 1px solid #e6532e; border-radius: 6px; padding: 12px 16px; color: #bf3918; display: flex; align-items: center; gap: 12px; }
    .banner-ok { background: #d9efe0; border-color: #1e6b45; color: #1e6b45; }
    tr.head td { background: #ebe5d7; font-weight: 700; text-transform: uppercase; font-size: 11px; letter-spacing: 0.06em; color: #5c5047; }
    .pos { color: #1e6b45; }
    tr.closed td { background: #eef7ef; }
    th.closed { background: #d9efe0; color: #1e6b45; }
    td.closed { background: #eef7ef; }
    .cell-input.closed { background: #eef7ef; border-color: #bfe0c8; }
    .crumb { color: #e6532e; font-weight: 700; cursor: pointer; }
    .crumb:hover { text-decoration: underline; color: #bf3918; }
    .overlay { position: fixed; inset: 0; background: rgba(29, 23, 17, 0.45); z-index: 40; }
    .modal { position: fixed; top: 40px; left: 50%; transform: translateX(-50%); width: 900px; max-width: calc(100vw - 32px); max-height: calc(100vh - 80px); overflow: auto; background: #fffaf0; border: 1px solid #c9bba4; border-radius: 8px; padding: 24px; display: flex; flex-direction: column; gap: 18px; z-index: 41; box-shadow: 0 12px 40px rgba(29, 23, 17, 0.25); box-sizing: border-box; }
    input:disabled { background: #f3eee2; color: #5c5047; }
    .cell-input { height: 30px; padding: 0 6px; text-align: right; width: 68px; }
    .override { background: #fbeae4; border-color: #e6532e; }
    h1 { margin: 0; font-size: 34px; font-weight: 800; letter-spacing: -0.02em; }
    h2 { margin: 0; font-size: 18px; font-weight: 800; }
    .dense td, .dense th { padding: 9px 8px; font-size: 12.5px; }
    .dense { overflow-x: auto !important; }
    input.override { background: #fbeae4; border-color: #e6532e; }
    .xdense td, .xdense th { padding: 7px 6px; font-size: 12px; }
    .dense td:first-child { white-space: nowrap; }
