.position-purchase-trigger{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;margin:0 0 6px 8px;padding:0 10px;border:1px solid var(--tap-border);border-radius:99px;background:var(--paper);color:var(--deep);font-size:.76rem;font-weight:700;white-space:nowrap;cursor:pointer}
.position-purchase-trigger:hover,.position-purchase-trigger:focus-visible{background:var(--tap-bg-hover);outline:2px solid var(--accent);outline-offset:2px}
.pxp{display:grid;gap:12px;min-width:0}
.pxp-intro,.pxp-preview,.pxp-empty,.pxp-error,.pxp-label{margin:0;font-size:.84rem;line-height:1.45;overflow-wrap:anywhere}
.pxp-intro{color:var(--muted)}.pxp-intro b{color:var(--ink)}.pxp-label{font-weight:700}
.pxp-option,.pxp-fact,.pxp-line,.pxp-choice,.pxp-save{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:48px;padding:10px 12px;border:1px solid var(--tap-border);border-radius:10px;background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer}
.pxp-option{display:grid;gap:4px}.pxp-option small,.pxp-fact small{color:var(--muted);font-size:.76rem;line-height:1.4}.pxp-fact span{display:grid;gap:3px;min-width:0}.pxp-fact strong{font:600 .84rem 'DM Mono','Manrope',ui-sans-serif,system-ui,sans-serif;white-space:nowrap}
.pxp-option:hover,.pxp-fact:hover,.pxp-line:hover,.pxp-choice:hover,.pxp-save:hover,.pxp-option:focus-visible,.pxp-fact:focus-visible,.pxp-line:focus-visible,.pxp-choice:focus-visible,.pxp-save:focus-visible{background:var(--tap-bg-hover);outline:2px solid var(--accent);outline-offset:1px}
.pxp-option.is-selected,.pxp-line.is-selected,.pxp-choice.is-selected{border-color:var(--deep);background:var(--tap-bg-hover)}
.pxp-back{justify-self:start;min-height:44px;padding:6px 4px;border:0;background:transparent;color:var(--deep);font:600 .82rem Manrope,Arial,sans-serif;cursor:pointer}
.pxp-back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.pxp-search,.pxp-amount-label{display:grid;gap:5px;color:var(--muted);font-size:.76rem}
.pxp-search input,.pxp-amount{box-sizing:border-box;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--tap-border);border-radius:9px;background:var(--paper);color:var(--ink);font:inherit}
.pxp-search input:focus-visible,.pxp-amount:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.pxp-facts,.pxp-sources,.pxp-lines{display:grid;gap:8px;max-height:min(42vh,360px);overflow:auto}
.pxp-close-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pxp-choice{justify-content:center;min-height:48px;font-size:.78rem;font-weight:700}
.pxp-line{min-height:44px;font-size:.8rem}.pxp-line b{font:600 .78rem 'DM Mono','Manrope',ui-sans-serif,system-ui,sans-serif;white-space:nowrap}
.pxp-save{justify-content:center;min-height:48px;border-color:var(--deep);background:var(--deep);color:#fff;font-weight:700}
.pxp-save[disabled]{opacity:.45;cursor:default}.pxp-error{color:var(--warn)}
@media(max-width:360px){.pxp-close-choices{grid-template-columns:1fr}.pxp-fact{align-items:start}.pxp-fact strong{white-space:normal;text-align:right}}
/* Карточка позиции и выбор покупки закрываются крестиком и по фону: нижняя «Закрыть» не нужна. Класс position-sheet ставят и снимают
   features/position-panel.js и features/position-purchase-panel.js; пустую нижнюю полосу схлопываем, чтобы не оставалось пустого места. */
#sheet-overlay.position-sheet #sheet-done{display:none}
#sheet-overlay.position-sheet .sheet-foot{padding:0;margin:0}
