.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.module-card-heading{display:flex;align-items:center;flex-wrap:wrap}.module-card-heading h2{font-size:17px;flex:1;margin:0;overflow-wrap:anywhere}.module-card-heading>.icon{color:var(--accent)}.module-card p{font-size:14px;line-height:1.65;overflow-wrap:anywhere}.rental-panel,.module-journal{padding:18px;margin-top:18px}.rental-panel>summary,.module-journal>summary{cursor:pointer;font-weight:600}.module-journal .history-entry{padding:12px 0;border-bottom:1px solid var(--border)}.helper-modal{max-width:760px}.module-lot{border-bottom:1px solid var(--border)}.module-lot select{flex:1}.module-lot label{flex:0 1 130px}.module-lot input{min-width:0}.module-lot .icon-button{flex-shrink:0}.helper-modal .category-body{display:grid;gap:16px}
/* Поля диалога плагина: единый шаг между блоками. Раньше контейнер был
   display:block без gap, и расстояния задавали собственные margin соседей —
   контекст аккаунта прилегал к переключателю вплотную (0px), а дальше шли
   разнобойные 10 и 12px. Собственные margin обнуляем, чтобы они не
   складывались с gap. */
#helper-fields{display:grid;gap:var(--space-3,16px);align-content:start}
#helper-fields>*{margin-top:0;margin-bottom:0}.zone-picker{position:relative;display:grid;gap:8px}.zone-toggle{width:100%;justify-content:space-between;min-height:44px;text-align:left}.zone-toggle:after{content:'⌄';font-size:18px;margin-left:12px}.zone-options{position:relative;padding:10px;background:var(--surface,#fff);border:1px solid var(--border);border-radius:14px;box-shadow:0 10px 28px #00000014;z-index:5}.zone-options input{width:100%;margin-bottom:8px}.zone-options [role=listbox]{max-height:240px;overflow:auto;overscroll-behavior:contain}.zone-option{display:block;width:100%;text-align:left;padding:10px 12px;border:0;border-radius:9px;font:inherit;color:var(--ink);cursor:pointer;background:transparent;min-height:42px}.zone-option[aria-selected=true],.zone-option:hover{background:var(--accent-soft)}.zone-option:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.analytic-group{border-bottom:1px solid var(--border)}.analytic-group>summary{display:flex;align-items:center;flex-wrap:wrap;cursor:pointer}.analytic-group>summary strong{flex:1;overflow-wrap:anywhere}.analytic-group>.category-body{padding:0 18px 18px}.group-selection{display:grid;max-height:300px;overflow:auto}.group-selection label{overflow-wrap:anywhere}.group-selection small{color:var(--muted);margin-left:auto}.grouping-toolbar{margin-top:20px}.settings-category:not([open]) .category-body{display:none}.supplier-search{display:grid;gap:8px}.supplier-status{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;min-height:36px;font-size:12px;color:var(--muted)}.supplier-search>div:last-child{display:grid;gap:4px;max-height:260px;overflow:auto;overscroll-behavior:contain}.supplier-search>div:last-child:empty{display:none}.supplier-search .text-button{justify-content:flex-start;text-align:left;white-space:normal;overflow-wrap:anywhere;min-height:40px}#module-history:empty,#module-rentals:empty{display:none}#view-modules .toolbar label{min-width:170px}#particle-value{float:right;color:var(--muted)}.page-footer span{overflow-wrap:anywhere}.module-card .status-pill{white-space:normal}.rental-panel .table-scroll{margin-top:12px}
@media(max-width:900px){.module-grid{grid-template-columns:1fr}.module-card{padding:18px}.module-lot{flex-wrap:wrap}.module-lot select{flex-basis:100%}.module-lot label{flex:1}.analytic-group>summary{gap:8px}.analytic-group>summary strong{min-width:100%;}.helper-modal{max-width:calc(100vw - 20px)}.module-actions .button{min-height:44px}#view-modules .toolbar{align-items:stretch;flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.zone-options,.module-card,.analytic-group{animation:none;transition:none}}
