body.invoice-editor-open { overflow: hidden; }
.invoice-validation-tooltip{position:fixed;z-index:11000;box-sizing:border-box;padding:12px 15px;border:1px solid #b98b5980;border-radius:9px;background:#2d2821;color:#f4dfc4;box-shadow:0 8px 26px #0003;font:500 13px/1.6 Manrope,sans-serif;overflow-wrap:anywhere}
.invoice-editor-fields [aria-invalid="true"]{border-color:#b98b59;outline:2px solid #b98b5920;outline-offset:2px}
html[data-admin-theme="light"] .invoice-validation-tooltip{background:#fff8ed;color:#70491f;border-color:#bc9565;box-shadow:0 8px 26px #60402018}
.quote-validity-option{margin:0 0 16px;border:1px solid var(--admin-line);border-radius:10px;overflow:hidden}
.invoice-editor-fields .quote-validity-option>.invoice-check{display:flex;justify-content:space-between;gap:20px;margin:0;padding:17px 18px;cursor:pointer}
.quote-validity-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:16px;border-top:1px solid var(--admin-line)}
.invoice-editor-fields .quote-validity-fields label{margin:0}
.quote-validity-caption{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.invoice-editor-open .admin-shell,.invoice-editor-open #auth-loading { display: none; }
.invoice-editor-page { position: fixed; inset: 0; z-index: 100; background: var(--admin-bg); color: #eae5de; font-family: Manrope,sans-serif; }
.invoice-editor-form { height: 100%; display: flex; flex-direction: column; }
.invoice-editor-header { flex-shrink: 0; display: flex; justify-content: space-between; align-items: center; gap: 20px; min-height: 80px; padding: 16px 30px; border-bottom: 1px solid var(--admin-line); background: var(--admin-panel); }
.invoice-editor-heading,.invoice-header-actions { display: flex; align-items: center; gap: 16px; }
.invoice-editor-heading h1 { font: 650 16px/1.4 Manrope,sans-serif; margin: 2px 0 0; }
.invoice-editor-heading .eyebrow { font-size: 9px; margin: 0; }
.invoice-header-actions [data-save-state] { font-size: 11px; opacity: .6; }
.invoice-editor-page svg { width: 18px; height: 18px; flex-shrink: 0; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.invoice-editor-page button { cursor: pointer; font-family: inherit; }
.invoice-icon-button { display: inline-flex; align-items: center; justify-content: center; width: 36px; height: 36px; padding: 8px; border: 1px solid var(--admin-line); border-radius: 50%; color: inherit; background: transparent; }
.invoice-button { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 40px; padding: 10px 17px; border: 1px solid #b98b5945; border-radius: 9px; background: #b98b590d; color: #dec09c; font-size: 12px; font-weight: 600; transition: background-color .18s,border-color .18s; }
.invoice-button:hover { background: #b98b5920; border-color: #b98b5980; }
.invoice-button-primary { background: #b98b5925; }
.invoice-editor-page button:disabled { opacity: .4; cursor: default; }
.invoice-editor-layout { flex: 1; min-height: 0; display: grid; grid-template-columns: minmax(380px,42%) minmax(0,1fr); }
.invoice-editor-controls { font-size: 1rem; line-height: 1.55; overflow-y: auto; position: relative; scrollbar-gutter: stable; background: var(--admin-panel); }
.invoice-editor-nav { position: sticky; top: 0; z-index: 2; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; padding: 18px 24px; background: var(--admin-panel); border-bottom: 1px solid var(--admin-line); }
.invoice-editor-nav button { border: 1px solid var(--admin-line); border-radius: 7px; background: transparent; color: inherit; padding: 8px 12px; font-size: 1rem; }
.invoice-editor-nav button:hover { border-color: #b98b5950; color: #bd9363; }
.invoice-editor-fields { max-width: 650px; margin: auto; padding: 22px 42px 60px; }
.invoice-editor-fields section { padding: 30px 0; border-bottom: 1px solid var(--admin-line); scroll-margin-top: 80px; }
.invoice-section-heading { display: flex; align-items: center; gap: 12px; margin-bottom: 26px; }
.invoice-section-heading > span { color: #ad8152; background: #b98b5910; border: 1px solid #b98b5925; border-radius: 8px; padding: 6px 9px; font-size: 11px; font-weight: 700; }
.invoice-section-heading h2 { font: 650 1.125rem/1.4 Manrope,sans-serif; margin: 0; }
.invoice-editor-fields label { display: grid; gap: 9px; font-size: 1em; margin: 20px 0 0; }
.invoice-editor-fields label small { display: inline; margin-left: 4px; opacity: .55; font-size: .875rem; font-weight: 400; }
.invoice-editor-fields input,.invoice-editor-fields select,.invoice-editor-fields textarea { width: 100%; min-width: 0; padding: 11px 12px; border: 1px solid var(--admin-line); border-radius: 8px; background: var(--admin-bg); color: inherit; font: 1rem/1.5 Manrope,sans-serif; }
.invoice-editor-fields textarea { resize: vertical; }
.invoice-editor-fields input:focus,.invoice-editor-fields textarea:focus,.invoice-editor-fields select:focus { border-color: #b98b5980; outline: 2px solid #b98b5915; }
.invoice-editor-fields input::placeholder,.invoice-editor-fields textarea::placeholder { color: inherit; opacity: .4; }
.invoice-editor-fields .invoice-client-label { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 8px; }
.invoice-client-label label { margin: 0; }
.invoice-text-button { display: inline-flex; align-items: center; gap: 5px; background: transparent; color: #bd9363; border: 0; padding: 6px 0; font-size: .875rem; text-align: left; }
.invoice-text-button svg { width: 14px; height: 14px; }
.invoice-field-hint { font-size: .875rem; line-height: 1.65; opacity: .7; margin: 8px 0 0; }
.invoice-selected-client,.invoice-linked-info { white-space: pre-line; font-size: .9375rem; line-height: 1.7; padding: 12px 14px; border: 1px solid var(--admin-line); border-radius: 8px; background: #b98b5906; margin-top: 12px; overflow-wrap: anywhere; }
.invoice-editor-page [hidden] { display: none !important; }
.invoice-add-card { display: flex; align-items: center; gap: 12px; padding: 15px; width: 100%; text-align: left; margin-top: 12px; border: 1px solid var(--admin-line); border-radius: 9px; background: transparent; color: inherit; }
.invoice-add-card > svg { color: #ad8152; }
.invoice-add-card > svg:last-child { margin-left: auto; width: 14px; }
.invoice-add-card span { font-size: 1rem; line-height: 1.5; font-weight: 700; }
.invoice-add-card small { display: block; opacity: .7; font-size: .875rem; font-weight: 400; margin-top: 4px; }
.invoice-add-card:not(:disabled):hover { border-color: #b98b5970; background: #b98b5908; }
.invoice-item { padding: 16px; border: 1px solid var(--admin-line); border-radius: 10px; margin: 16px 0; }
.invoice-item-heading { display: flex; justify-content: space-between; align-items: center; font-size: .9375rem; }
.invoice-item .invoice-icon-button { width: 28px; height: 28px; padding: 6px; border: 0; opacity: .6; }
.invoice-item-grid { display: grid; grid-template-columns: 1fr 1.3fr .8fr; gap: 10px; }
.invoice-vehicle-picker { margin-top: 12px; padding: 20px; border: 1px solid #b98b5950; border-radius: 12px; background: #b98b5906; }
.invoice-vehicle-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; }
.invoice-vehicle-heading h3 { margin: 0; font: 650 1rem/1.5 Manrope,sans-serif; }
.invoice-vehicle-heading p { margin: 5px 0 0; font-size: .8125rem; opacity: .6; }
.invoice-vehicle-list { display: grid; gap: 8px; max-height: 360px; overflow-y: auto; scrollbar-width: thin; padding: 4px; margin: 14px -4px 0; }
.invoice-vehicle-row { display: flex; align-items: center; gap: 12px; width: 100%; padding: 10px; border: 1px solid var(--admin-line); border-radius: 10px; background: var(--admin-panel); color: inherit; text-align: left; transition: border-color .18s,background-color .18s; }
.invoice-vehicle-row:hover { border-color: #b98b5980; background: #b98b5910; }
.invoice-vehicle-thumbnail { width: 86px; height: 62px; flex: 0 0 86px; display: grid; place-items: center; position: relative; overflow: hidden; border-radius: 7px; background: #b98b5910; color: #bd9363; }
.invoice-vehicle-thumbnail svg { width: 28px; height: 28px; }
.invoice-vehicle-thumbnail img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.invoice-vehicle-identity { min-width: 0; }
.invoice-vehicle-identity strong { display: block; font-size: .9375rem; font-weight: 600; overflow-wrap: anywhere; }
.invoice-vehicle-identity small { display: block; font-size: .75rem; line-height: 1.6; opacity: .65; margin-top: 5px; }
.invoice-vehicle-arrow { margin-left: auto; color: #bd9363; }
.invoice-vehicle-selected { display: flex; gap: 14px; align-items: center; padding: 16px 0; }
.invoice-vehicle-data,.invoice-vehicle-empty { font-size: .875rem; line-height: 1.7; opacity: .65; overflow-wrap: anywhere; }
.invoice-vehicle-picker [data-vehicle-add] { margin-top: 16px; }
@media(max-width:420px) { .invoice-vehicle-picker { padding: 14px; } .invoice-vehicle-thumbnail { width: 64px; height: 52px; flex-basis: 64px; } }
.invoice-editor-fields .invoice-check { display: flex; flex-direction: row; align-items: center; gap: 10px; margin-top: 22px; cursor: pointer; }
.invoice-editor-fields .invoice-check input { width: 16px; height: 16px; padding: 0; accent-color: #a47b50; }
.invoice-error { color: #df9c89; font-size: .875rem; margin-top: 20px; }
.invoice-editor-preview { overflow: auto; background: #0c101666; padding: 20px 24px 40px; }
.invoice-preview-label { display: flex; justify-content: space-between; gap: 12px; max-width: 794px; margin: 0 auto 22px; font-size: 10px; opacity: .5; }
.invoice-preview-paper { width: 794px; margin: 0 auto; zoom: var(--invoice-scale, .8); box-shadow: 0 12px 60px #00000020; }
.invoice-editor-page button:focus-visible { outline: 2px solid #bd9363; outline-offset: 3px; }
html[data-admin-theme="light"] .invoice-editor-page { color: #352e27; }
html[data-admin-theme="light"] .invoice-add-card > svg,html[data-admin-theme="light"] .invoice-section-heading > span { color: #805a34; }
html[data-admin-theme="light"] .invoice-editor-preview { background: #edeae5; }
html[data-admin-theme="light"] .invoice-button { color: #805a34; }
@media(max-width:1100px) { .invoice-editor-fields { padding: 16px 24px 40px; } .invoice-header-actions [data-save-state] { display: none; } }
@media(max-width:760px) { .invoice-editor-page { overflow: auto; } .invoice-editor-form { height: auto; min-height: 100%; } .invoice-editor-layout { display: block; } .invoice-editor-header { position: sticky; top: 0; z-index: 5; padding: 12px; gap: 10px; flex-wrap: wrap; } .invoice-editor-heading h1 { font-size: 14px; } .invoice-header-actions { gap: 8px; } .invoice-button { padding: 8px 10px; font-size: 11px; } .invoice-editor-controls { overflow: visible; } .invoice-editor-nav { position: static; padding: 15px 20px; } .invoice-editor-preview { overflow: hidden; } }
@media(prefers-reduced-motion:reduce) { .invoice-editor-page * { transition: none !important; scroll-behavior: auto !important; } }
