@keyframes lhViewSpringIn { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: translateX(0); } }
@keyframes lhWizSlideInRight { from { opacity: 0; transform: translateX(28px); } to { opacity: 1; transform: translateX(0); } }
@keyframes lhWizSlideInLeft { from { opacity: 0; transform: translateX(-28px); } to { opacity: 1; transform: translateX(0); } }
.lh-wiz-slide-next { animation: lhWizSlideInRight 210ms var(--ease-apple); }
.lh-wiz-slide-prev { animation: lhWizSlideInLeft 210ms var(--ease-apple); }

.lh-section, .lh-card { background: var(--surface); padding: 18px 22px; border: 0; border-radius: var(--radius-surface); display: flex; flex-direction: column; gap: 16px; overflow: visible; animation: lhViewSpringIn 180ms var(--ease-apple); }
.lh-fixed-view > .lh-section { border-bottom: 1px solid var(--divider); border-radius: 0; }
.lh-fixed-view > .lh-section-header { padding: 14px 20px 0; flex-shrink: 0; }
.lh-section-header, .lh-card-title { font-size: 15px; line-height: 20px; font-weight: 600; letter-spacing: -0.01em; color: var(--text); display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
#fin-subtab-slot, #fin-ota-feed-slot, #rev-subtab-slot, #dir-subtab-slot, #ai-subtab-slot, #apt-pass-tab-body, #infra-inner-slot { display: flex; flex-direction: column; gap: 16px; }

/* Двухъярусный тулбар и аналитические карточки центра «Финансы и Отчёты RC» */
.lh-fin-toolbar { display: flex; flex-direction: column; gap: 10px; padding-bottom: 14px; border-bottom: 1px solid var(--divider); }
.lh-fin-toolbar-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.lh-fin-charts-split { display: grid; grid-template-columns: 1.15fr 0.85fr; gap: 14px; align-items: stretch; }
.lh-fin-donut-layout { display: grid; grid-template-columns: 168px minmax(0, 1fr); gap: 18px; align-items: center; background: var(--canvas); border-radius: 16px; padding: 14px 18px; }
.lh-fin-donut-box { display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.lh-fin-cat-list { display: flex; flex-direction: column; gap: 8px; max-height: 210px; overflow-y: auto; padding-right: 4px; }
.lh-fin-cat-item { display: flex; flex-direction: column; gap: 4px; }
.lh-fin-cat-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 12.5px; }
.lh-fin-cat-name { display: inline-flex; align-items: center; gap: 7px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lh-fin-cat-dot { width: 8px; height: 8px; border-radius: 50%; background: #1d1d1f; flex-shrink: 0; }
.lh-fin-cat-val { font-variant-numeric: tabular-nums; white-space: nowrap; }

.lh-settings-canvas { display: flex; flex-direction: column; gap: 24px; padding: 6px 2px 24px; }
.lh-settings-2col { display: grid; grid-template-columns: 184px minmax(0, 1fr); gap: 24px; align-items: start; padding-bottom: 24px; border-bottom: 1px solid var(--divider); }
.lh-settings-2col:last-child { border-bottom: 0; padding-bottom: 4px; }
.lh-settings-svg-box { width: 184px; height: 132px; border-radius: 16px; background: var(--canvas); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px; padding: 12px; flex-shrink: 0; user-select: none; }
.lh-settings-svg-box svg { width: 148px; height: 96px; display: block; color: var(--text); }
.lh-settings-col-body { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.lh-phones-stack { display: flex; flex-direction: column; gap: 8px; }
.lh-phone-row-item { display: grid; grid-template-columns: 1.1fr 1fr auto; gap: 10px; align-items: center; background: var(--canvas); padding: 8px 10px; border-radius: 12px; }
.lh-rules-clean-list { display: flex; flex-direction: column; gap: 8px; }
.lh-rule-clean-row { display: grid; grid-template-columns: 38px minmax(180px, 1fr) auto; gap: 14px; align-items: center; padding: 12px 14px; border-radius: 14px; background: var(--canvas); transition: background-color 100ms ease; }
.lh-rule-clean-row:hover { background: var(--hover); }
.lh-rule-ico-slot { width: 38px; height: 38px; border-radius: 10px; background: var(--surface); color: var(--text); display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; }

.lh-inline-editor { display: inline-flex; align-items: center; justify-content: flex-end; gap: 6px; flex-wrap: nowrap; }
.lh-inline-edit-trigger { border: 0 !important; outline: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--secondary-text); width: 26px; height: 26px; padding: 0; border-radius: 7px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; transition: color 120ms ease; }
.lh-inline-edit-trigger:hover { color: var(--text); }
.lh-inline-edit-trigger.is-confirm { color: var(--semantic-ok); }
.lh-inline-round-input { width: 196px; height: 32px; padding: 0 11px; border: 0; outline: 0; border-radius: 10px; background: var(--field); color: var(--text); font-size: 13px; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; }
.lh-inline-round-input:focus { background: var(--hover); outline: 2px solid var(--text); outline-offset: -2px; }
.lh-inline-extra-actions { display: inline-flex; align-items: center; gap: 4px; animation: lhWizSlideInRight 160ms var(--ease-apple); }
.lh-map-picker-box, .lh-radar-ymap-box { width: 100%; height: 300px; border-radius: 16px; overflow: hidden; background: #e5e9f0; position: relative; }

.lh-table { width: 100%; border-collapse: collapse; font-size: 13.5px; line-height: 19px; }
.lh-table:not(.lh-fixed-table) th { position: sticky; top: 0; z-index: 5; padding: 10px 14px; text-align: left; font-size: 11.5px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.03em; color: var(--secondary-text); background: var(--surface); border-bottom: 1px solid var(--divider); white-space: nowrap; }
.lh-table:not(.lh-fixed-table) td { padding: 11px 14px; border-bottom: 1px solid var(--divider); vertical-align: middle; }
.lh-table:not(.lh-fixed-table) tbody tr:hover td { background: rgba(0, 0, 0, 0.025); }
.lh-num { text-align: right !important; font-variant-numeric: tabular-nums; white-space: nowrap; }
.lh-nowrap { white-space: nowrap; }

.lh-subtabs { display: inline-flex; align-items: center; gap: 3px; padding: 3px; margin: 0; background: var(--field); border-radius: 11px; flex-wrap: wrap; width: fit-content; max-width: 100%; flex-shrink: 0; }
.lh-subtabs.lh-subtabs-nowrap { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; }
.lh-subtabs.lh-subtabs-nowrap::-webkit-scrollbar { display: none; }
.lh-fixed-view > .lh-subtabs { margin: 10px 20px 0; }
.lh-subtab-btn { height: 32px; padding: 0 11px; border: 0; border-radius: 8px; background: transparent; color: var(--secondary-text); font-size: 13px; font-weight: 500; display: inline-flex; align-items: center; justify-content: center; gap: 5px; cursor: pointer; white-space: nowrap; }
.lh-subtab-btn:hover { color: var(--text); background: rgba(255, 255, 255, 0.55); }
.lh-subtab-btn.is-active { background: var(--surface); color: var(--text); font-weight: 600; }
.lh-subtab-count { font-size: 11px; font-weight: 600; padding: 1px 6px; border-radius: 6px; background: rgba(0, 0, 0, 0.06); color: var(--secondary-text); }
.lh-subtab-btn.is-active .lh-subtab-count { background: var(--field); color: var(--text); }

.lh-label { font-size: 12.5px; font-weight: 500; color: var(--secondary-text); display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.lh-label-head, .lh-inline-title { display: inline-flex; align-items: center; gap: 6px; flex-wrap: nowrap; line-height: 18px; }
.lh-hint-btn { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 17px; height: 17px; border-radius: 50%; border: 0; color: var(--secondary-text); font-size: 11px; font-weight: 600; line-height: 1; cursor: help; background: rgba(0, 0, 0, 0.07); }
.lh-hint-btn:hover { background: var(--text); color: #ffffff; }
.lh-divider { height: 1px; background: var(--divider); border: 0; margin: 4px 0; }

.lh-grid-kpi { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; align-items: stretch; flex-shrink: 0; }
.lh-fixed-view > .lh-grid-kpi { padding: 14px 20px 4px; }
.lh-grid-2 { display: grid; grid-template-columns: repeat(auto-fit, minmax(340px, 1fr)); gap: 14px; align-items: stretch; }
.lh-grid-3 { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 16px; padding: 16px 20px; }
.lh-grid-4 { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; align-items: end; }

.lh-apt-workspace { background: var(--surface); }
.lh-apt-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 12px 18px; border-bottom: 1px solid var(--divider); flex-wrap: wrap; flex-shrink: 0; }
.lh-apt-stage { flex: 1; min-height: 0; display: grid; grid-template-columns: 1fr; overflow: hidden; }
.lh-apt-stage.is-mode-split { grid-template-columns: minmax(420px, 1.15fr) minmax(360px, 0.85fr); }
.lh-apt-list-pane { padding: 16px 18px; overflow-y: auto; }
.lh-apt-cards-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(264px, 1fr)); gap: 16px; }
.lh-apt-cards-grid.is-split-grid { grid-template-columns: repeat(auto-fill, minmax(242px, 1fr)); gap: 14px; }
.lh-apt-map-pane { position: relative; height: 100%; min-height: 360px; border-left: 1px solid var(--divider); background: #e5e9f0; overflow: hidden; }
.lh-apt-map-canvas { width: 100%; height: 100%; z-index: 1; }
.lh-apt-map-canvas.is-placing-event, .lh-apt-map-canvas.is-placing-event * { cursor: crosshair !important; }
.lh-apt-map-controls { position: absolute; top: 14px; right: 14px; z-index: 20; display: flex; flex-direction: column; gap: 6px; }
.lh-apt-map-controls .lh-btn { background: rgba(255, 255, 255, 0.94); backdrop-filter: blur(12px); }

.lh-ymap-price-pin { background: #ffffff; color: #1d1d1f; font-size: 12.5px; font-weight: 600; font-variant-numeric: tabular-nums; padding: 4px 10px; border-radius: 999px; white-space: nowrap; box-shadow: 0 3px 10px rgba(0, 0, 0, 0.15); display: inline-flex; align-items: center; gap: 5px; transform: translate(-50%, -50%); transition: background-color 120ms ease, color 120ms ease, transform 120ms ease; cursor: pointer; }
.lh-ymap-pin-dot { width: 6px; height: 6px; border-radius: 50%; background: #188038; flex-shrink: 0; }
.lh-ymap-price-pin.is-dirty .lh-ymap-pin-dot { background: #d97706; }
.lh-ymap-price-pin.is-in-surge { background: #1d1d1f; color: #ffffff; z-index: 910 !important; }
.lh-ymap-price-pin.is-in-surge .lh-ymap-pin-dot { background: #e11d48; }
.lh-ymap-surge-tag { font-size: 10.5px; font-weight: 600; color: #ff6b81; margin-left: 2px; }
.lh-ymap-price-pin.is-hovered, .lh-ymap-price-pin.is-active { background: #1d1d1f; color: #ffffff; transform: translate(-50%, -56%) scale(1.08); z-index: 950 !important; }
.lh-surge-center-badge { background: rgba(29, 29, 31, 0.92); backdrop-filter: blur(10px); color: #ffffff; padding: 4px 10px; border-radius: 999px; font-size: 11.5px; font-weight: 500; white-space: nowrap; display: inline-flex; align-items: center; gap: 6px; transform: translate(-50%, -50%); cursor: pointer; }
.lh-surge-center-badge strong { color: #ff6b81; font-weight: 600; }
.lh-draft-event-pin { background: #e11d48; color: #ffffff; padding: 4px 11px; border-radius: 999px; font-size: 12px; font-weight: 600; white-space: nowrap; transform: translate(-50%, -100%); pointer-events: none; }

.lh-map-bottom-pill { position: absolute; left: 50%; bottom: 14px; transform: translateX(-50%); z-index: 30; max-width: calc(100% - 24px); display: flex; justify-content: center; }
.lh-map-pill-bar { background: rgba(255, 255, 255, 0.95); backdrop-filter: blur(18px); padding: 5px 6px; border-radius: 999px; display: inline-flex; align-items: center; gap: 6px; flex-wrap: nowrap; box-shadow: 0 8px 26px rgba(0, 0, 0, 0.14); }
.lh-map-pill-step { font-size: 12.5px; font-weight: 500; color: var(--text); padding: 0 10px; white-space: nowrap; }
.lh-map-pill-btn { height: 32px; padding: 0 12px; border: 0; border-radius: 999px; background: var(--field); color: var(--text); font-size: 12.5px; font-weight: 500; cursor: pointer; display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.lh-map-pill-btn:hover { background: var(--hover); }
.lh-map-pill-btn.is-active, .lh-map-pill-btn.is-primary { background: #1d1d1f; color: #ffffff; }
.lh-map-pill-btn.is-danger { background: var(--semantic-err-bg); color: var(--semantic-err); }
.lh-map-rad-slider { width: 116px; accent-color: #1d1d1f; cursor: pointer; }
.lh-map-event-popover { background: rgba(255, 255, 255, 0.97); backdrop-filter: blur(20px); border-radius: 18px; padding: 14px 16px; width: min(520px, 92vw); display: flex; flex-direction: column; gap: 10px; box-shadow: 0 12px 34px rgba(0, 0, 0, 0.16); }
.lh-apt-map-float { position: absolute; left: 14px; right: 14px; bottom: 64px; z-index: 25; background: rgba(255, 255, 255, 0.96); backdrop-filter: blur(18px); border-radius: 16px; padding: 10px 12px; display: flex; align-items: center; gap: 12px; }
.lh-map-float-thumb { width: 76px; height: 57px; aspect-ratio: 4 / 3; border-radius: 10px; object-fit: cover; flex-shrink: 0; background: var(--field); }
.lh-map-float-meta { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; font-size: 13px; }

.lh-apt-tile { background: var(--canvas); border: 0; border-radius: 16px; padding: 8px; cursor: pointer; display: flex; flex-direction: column; gap: 10px; transition: background-color 100ms ease; }
.lh-apt-tile:hover, .lh-apt-tile.is-selected { background: var(--hover); }
.lh-apt-media-wrap { position: relative; width: 100%; aspect-ratio: 4 / 3; background: #e5e5ea; border-radius: 12px; overflow: hidden; flex-shrink: 0; }
.lh-apt-photo, .lh-apt-photo.is-crop-vertical, .lh-apt-photo.is-crop-horizontal { position: absolute; inset: 0; width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center center !important; display: block; }
.lh-apt-gal-nav { position: absolute; top: 50%; transform: translateY(-50%); z-index: 4; width: 28px; height: 28px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, 0.88); color: #1d1d1f; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; opacity: 0; transition: opacity 120ms ease; }
.lh-apt-media-wrap:hover .lh-apt-gal-nav, .lh-apt-tile:hover .lh-apt-pin-focus-btn { opacity: 1; }
.lh-apt-gal-nav.is-prev { left: 8px; } .lh-apt-gal-nav.is-next { right: 8px; }
.lh-apt-photo-count { position: absolute; bottom: 8px; right: 8px; z-index: 3; background: rgba(29, 29, 31, 0.68); backdrop-filter: blur(8px); color: #ffffff; font-size: 11px; font-weight: 500; padding: 2px 8px; border-radius: 999px; pointer-events: none; }
.lh-apt-pin-focus-btn { position: absolute; top: 8px; right: 8px; z-index: 4; width: 30px; height: 30px; border-radius: 9px; border: 0; background: rgba(255, 255, 255, 0.9); color: #1d1d1f; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; opacity: 0; }
.lh-apt-body { padding: 2px 6px 6px; display: flex; flex-direction: column; gap: 5px; flex: 1; }
.lh-apt-head-row, .lh-apt-specs-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.lh-apt-specs-row { font-size: 12px; color: var(--secondary-text); padding-top: 2px; }
.lh-apt-title-txt { font-size: 14.5px; font-weight: 600; color: var(--text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lh-apt-addr-txt { font-size: 12.5px; color: var(--secondary-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lh-apt-price-bar { margin-top: auto; padding-top: 8px; border-top: 1px solid var(--divider); display: flex; justify-content: space-between; align-items: baseline; gap: 8px; font-variant-numeric: tabular-nums; }
.lh-apt-price-main strong { font-size: 15px; font-weight: 600; color: var(--text); }
.lh-apt-floor-tag { font-size: 11.5px; color: var(--secondary-text); background: var(--surface); padding: 2px 8px; border-radius: 6px; }
.lh-apt-table-row { cursor: pointer; }

.lh-spec-table { display: flex; flex-direction: column; gap: 10px; padding: 4px 0; }
.lh-spec-row { display: flex; justify-content: space-between; align-items: center; gap: 16px; font-size: 13.5px; padding-bottom: 8px; border-bottom: 1px solid var(--divider); }
.lh-spec-key { display: inline-flex; align-items: center; gap: 10px; color: var(--secondary-text); font-weight: 500; flex-shrink: 0; }
.lh-spec-val { font-weight: 500; color: var(--text); text-align: right; max-width: 65%; word-break: break-word; }

.lh-kpi-card { background: var(--surface); border: 0; border-radius: 16px; padding: 14px 18px; display: flex; flex-direction: column; justify-content: space-between; gap: 6px; min-height: 82px; }
.lh-section .lh-kpi-card, .lh-modal-body .lh-kpi-card, .lh-pane-scroll .lh-kpi-card { background: var(--canvas); border-radius: 14px; padding: 13px 16px; }
.lh-kpi-val { font-size: 20px; line-height: 24px; font-weight: 600; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; color: var(--text); margin-top: auto; }
.lh-muted { font-size: 12.5px; line-height: 17px; color: var(--secondary-text); }
.lh-text-danger { color: var(--semantic-err); }
.lh-code-block { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 12px; line-height: 17px; background: var(--canvas); padding: 10px 13px; border-radius: 10px; white-space: pre-wrap; word-break: break-word; }
.lh-avatar-lg { width: 52px; height: 52px; border-radius: 50%; background: var(--primary); color: var(--primary-text); display: inline-flex; align-items: center; justify-content: center; font-size: 19px; font-weight: 600; object-fit: cover; }

.lh-btn { border: 0; outline: 0; border-radius: var(--radius-control); height: var(--control-height); padding: 0 14px; font-size: 13px; font-weight: 500; font-family: inherit; cursor: pointer; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; gap: 6px; white-space: nowrap; transition: background-color 100ms ease; }
.lh-btn:active { transform: scale(0.98); }
.lh-btn-sm { height: 32px; padding: 0 12px; font-size: 12.5px; border-radius: 9px; }
.lh-btn-icon { width: var(--control-height); padding: 0; border-radius: 10px; }
.lh-btn-icon.lh-btn-sm { width: 32px; height: 32px; padding: 0; }
.lh-btn-secondary { background: var(--field); color: var(--text); } .lh-btn-secondary:hover { background: var(--hover); }
.lh-btn-primary, .lh-btn-accent { background: #1d1d1f; color: #ffffff; } .lh-btn-primary:hover, .lh-btn-accent:hover { background: #333336; }
.lh-btn-danger { background: var(--semantic-err-bg); color: var(--semantic-err); } .lh-btn-danger:hover { background: var(--semantic-err); color: #ffffff; }
.lh-btn-ghost { background: transparent; color: var(--secondary-text); } .lh-btn-ghost:hover { background: var(--hover); color: var(--text); }
.lh-btn-block { width: 100%; } .lh-btn:disabled, .lh-btn.is-busy { opacity: 0.5; cursor: not-allowed; transform: none; }
.lh-joined { display: inline-flex; align-items: center; gap: var(--joined-gap); }
.lh-joined .lh-joined-main { border-radius: 10px var(--radius-joined-inner) var(--radius-joined-inner) 10px; }
.lh-joined .lh-joined-aux { width: var(--control-height); padding: 0; border-radius: 10px; }

.lh-badge { font-size: 13px; line-height: 18px; padding: 0; background: transparent !important; color: var(--text) !important; font-weight: 500; display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; text-decoration: none; }
.lh-badge::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #8e8e93; flex-shrink: 0; }
.lh-badge-ok::before { background: #188038; } .lh-badge-warn::before, .lh-badge-ostrovok::before { background: #d97706; } .lh-badge-err::before { background: #d93025; } .lh-badge-avito::before { background: #1d1d1f; } .lh-badge-sutochno::before { background: #e11d48; }

.lh-input, .lh-select, .lh-textarea { width: 100%; background: var(--field); color: var(--text); border: 0; outline: 0; border-radius: var(--radius-control); height: var(--control-height); padding: 0 12px; font-size: 13.5px; font-family: inherit; }
.lh-input:focus, .lh-select:focus, .lh-input:focus-visible, .lh-textarea-shell:focus-within, .lh-dropdown.is-open .lh-dropdown-trigger { background: var(--hover); outline: 2px solid var(--text); outline-offset: -2px; }
.lh-input-compact { width: 216px; border-radius: 10px; padding: 0 12px; background: var(--field); }
.lh-textarea-shell { width: 100%; background: var(--field); border: 0; border-radius: var(--radius-control); padding: 2px 0; overflow: hidden; }
.lh-textarea { height: auto; padding: 8px 12px; line-height: 20px; resize: vertical; background: transparent; border: 0; }
.lh-form-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(176px, 1fr)); gap: var(--field-gap); align-items: end; }
.lh-check-row { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; padding: 4px 0; }
.lh-check-label { display: inline-flex; align-items: center; gap: 8px; height: var(--control-height); font-size: 13px; color: var(--text); cursor: pointer; user-select: none; white-space: nowrap; }
input[type="checkbox"] { -webkit-appearance: none; appearance: none; width: 18px; height: 18px; border-radius: 5px; border: 0; background: var(--field); cursor: pointer; display: inline-grid; place-content: center; flex-shrink: 0; }
input[type="checkbox"]:checked { background: #1d1d1f; }
input[type="checkbox"]:checked::before { content: ""; width: 8px; height: 4.5px; border-left: 2px solid #ffffff; border-bottom: 2px solid #ffffff; transform: rotate(-45deg) translate(1px, -1px); }

.lh-file-picker { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; height: var(--control-height); background: var(--field); border-radius: var(--radius-control); padding: 0 6px 0 12px; cursor: pointer; }
.lh-file-name { font-size: 12.5px; color: var(--secondary-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.lh-file-btn { background: var(--surface); color: var(--text); font-size: 12px; font-weight: 500; padding: 4px 10px; border-radius: 7px; display: inline-flex; align-items: center; gap: 5px; flex-shrink: 0; }
.lh-dropdown { position: relative; width: 100%; min-width: 0; }
.lh-topbar-actions .lh-dropdown, .lh-section-header > .lh-dropdown { width: auto; min-width: 210px; max-width: 256px; flex-shrink: 0; }
.lh-dropdown-trigger { width: 100%; height: var(--control-height); background: var(--field); color: var(--text); border: 0; border-radius: var(--radius-control); padding: 0 11px; font-size: 13.5px; display: flex; align-items: center; justify-content: space-between; gap: 8px; cursor: pointer; }
.lh-topbar-actions .lh-dropdown-trigger { height: 32px; border-radius: 9px; font-size: 13px; }
.lh-dropdown-chev { display: inline-flex; transition: transform 150ms var(--ease-apple); color: var(--secondary-text); flex-shrink: 0; }
.lh-dropdown.is-open .lh-dropdown-chev { transform: rotate(180deg); color: var(--text); }
.lh-dropdown-popup { position: fixed; background: var(--surface); border: 0; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.14); border-radius: 12px; padding: 4px; z-index: 950; display: flex; flex-direction: column; opacity: 0; visibility: hidden; pointer-events: none; }
.lh-dropdown-popup.is-open { opacity: 1; visibility: visible; pointer-events: auto; }
.lh-dropdown-option { padding: 7px 10px; border-radius: 8px; font-size: 13px; color: var(--text); cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.lh-dropdown-option:hover, .lh-dropdown-option.is-active, .lh-dropdown-option.is-selected { background: var(--field); }
.lh-dropdown-option.is-selected { font-weight: 600; }
.lh-dd-opt-main { display: inline-flex; align-items: center; gap: 8px; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.lh-dd-opt-ico { color: var(--text); display: inline-flex; flex-shrink: 0; }
input[type="number"]::-webkit-outer-spin-button, input[type="number"]::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input[type="number"] { -moz-appearance: textfield; appearance: textfield; }
.lh-stepper { display: flex; align-items: center; gap: var(--joined-gap); width: 100%; }
.lh-stepper input[type="number"] { text-align: center; border-radius: var(--radius-joined-inner); }
.lh-stepper-btn { width: 32px; height: var(--control-height); border: 0; background: var(--field); color: var(--text); font-size: 15px; font-weight: 500; cursor: pointer; flex-shrink: 0; }
.lh-stepper-btn.is-minus { border-radius: var(--radius-control) var(--radius-joined-inner) var(--radius-joined-inner) var(--radius-control); }
.lh-stepper-btn.is-plus { border-radius: var(--radius-joined-inner) var(--radius-control) var(--radius-control) var(--radius-joined-inner); }
.is-hidden { display: none !important; }
