.shop-stock,.shop-dialog{--ui-text-muted:var(--ui-text-secondary);--ui-primary:var(--ui-accent)}
.shop-dialog>header h2{color:var(--ui-header-text)}
.shop-dialog>header{position:sticky;top:0;z-index:2}
@media(min-width:769px){
  .shop-stock .shop-table-scroll:has([data-shop-doc]) :is(th,td),
  .shop-stock .shop-table-scroll:has([data-shop-edit]) :is(th,td){padding:4px 12px;line-height:1.15}
  .shop-stock .shop-table-scroll:has([data-shop-doc]) td small{display:inline;margin:0 0 0 8px;font-size:11px}
  .shop-stock .shop-table-scroll:has([data-shop-edit]) .shop-link{padding:0;line-height:1.15}
  html[data-ui-theme] .app-shell .shop-stock .shop-table-scroll :is([data-shop-doc],[data-shop-edit]){height:20px;min-height:20px;padding:0 8px;font-size:12px;line-height:18px}
}
@media(max-width:768px){body.mobile-app dialog.shop-dialog.m-modal-host{padding:0;width:calc(100% - 16px);max-width:calc(100% - 16px);height:auto;max-height:calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border:1px solid var(--ui-border);border-radius:14px}body.mobile-app dialog.shop-dialog.m-modal-host>header{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:10px;flex-wrap:nowrap}body.mobile-app dialog.shop-dialog.m-modal-host>header h2{color:var(--ui-header-text);font-size:19px;line-height:1.25}body.mobile-app dialog.shop-dialog.m-modal-host>header .eyebrow{color:var(--ui-header-muted)}body.mobile-app dialog.shop-dialog.m-modal-host>header button{margin:0;min-width:44px;min-height:44px}}
.shop-stock{min-width:0;max-width:100%;padding:20px;color:var(--ui-text)}
.shop-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.shop-heading h2{margin:6px 0;font-size:26px}.shop-heading p,.shop-panel p,.shop-start p{color:var(--ui-text-muted);line-height:1.55}.shop-heading p{margin:4px 0;font-size:13px}.shop-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;align-self:flex-end;flex-wrap:wrap}.shop-heading-summary{display:flex;align-items:baseline;gap:10px;padding:8px 11px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface-soft);font-size:12px;white-space:nowrap}.shop-heading-summary span{color:var(--ui-text-muted)}.shop-heading-summary b{color:var(--ui-text);font-size:14px;font-variant-numeric:tabular-nums}.shop-heading-summary small{padding-left:10px;border-left:1px solid var(--ui-border);color:var(--ui-text-muted);font-size:11px}
.shop-start,.shop-panel{padding:20px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:14px;margin:12px 0}.shop-start{max-width:820px}.shop-panel h3,.shop-start h3{margin:0 0 10px}.shop-panel summary{cursor:pointer;font-weight:600;padding:8px 0}
.shop-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.shop-summary article{padding:16px;border-radius:12px;border:1px solid var(--ui-border);background:var(--ui-surface-soft);min-width:0}.shop-summary span{display:block;font-size:12px;color:var(--ui-text-muted);margin-bottom:8px}.shop-summary strong{font-size:25px}.shop-summary .shop-date{font-size:14px}
.shop-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--ui-border);padding:0 0 10px}.shop-tabs .active{background:var(--ui-surface-selected);border-color:var(--ui-accent)}.shop-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:10px 0}.shop-search{flex:1;min-width:180px;max-width:600px}.shop-stock input,.shop-stock select,.shop-dialog input:not([type=checkbox]),.shop-dialog select{width:100%;min-width:0;box-sizing:border-box;min-height:40px;border:1px solid var(--ui-border);border-radius:8px;padding:9px 11px;background:var(--ui-surface-input);color:var(--ui-text);font:inherit}.shop-stock button,.shop-dialog button{cursor:pointer}html[data-ui-theme] .app-shell .shop-stock .tool:not(:disabled):hover,html[data-ui-theme] .shop-dialog .tool:not(:disabled):hover{color:var(--ui-button-primary-text);background:var(--ui-button-primary-hover);border-color:var(--ui-button-primary-hover);box-shadow:0 2px 8px color-mix(in srgb,var(--ui-button-primary-hover) 30%,transparent)}.shop-link{background:none;border:0;text-align:left;color:var(--ui-text);font:inherit;text-decoration:underline;text-decoration-color:var(--ui-border);text-underline-offset:3px;padding:4px 0}.shop-link:hover{color:var(--ui-primary)}
.shop-table-scroll{max-width:100%;overflow-x:auto;border:1px solid var(--ui-border);border-radius:10px;margin:10px 0}.shop-table-scroll table{border-collapse:collapse;width:100%;font-size:13px;table-layout:auto}.shop-table-scroll th{background:var(--ui-surface-soft);color:var(--ui-text-muted);font-weight:600;text-align:left;white-space:normal}.shop-table-scroll td,.shop-table-scroll th{padding:9px 12px;border-bottom:1px solid var(--ui-border);vertical-align:middle}.shop-table-scroll tr:last-child td{border-bottom:0}.shop-table-scroll tbody tr:hover{background:var(--ui-surface-hover)}.shop-table-scroll .numeric{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.shop-stock-balance-table table{table-layout:fixed}.shop-stock-balance-table th,.shop-stock-balance-table td{padding:4px 12px;line-height:1.15}.shop-stock-balance-table .shop-link{padding:0;line-height:1.15}.shop-stock-balance-table .shop-stock-zero-row td{box-shadow:inset 0 1px 0 #c58a22,inset 0 -1px 0 #c58a22}.shop-stock-balance-table .shop-stock-negative-row td{box-shadow:inset 0 1px 0 var(--ui-danger,#b34450),inset 0 -1px 0 var(--ui-danger,#b34450)}.shop-stock-balance-table .shop-stock-zero-row td:first-child{box-shadow:inset 3px 0 0 #c58a22,inset 0 1px 0 #c58a22,inset 0 -1px 0 #c58a22}.shop-stock-balance-table .shop-stock-negative-row td:first-child{box-shadow:inset 3px 0 0 var(--ui-danger,#b34450),inset 0 1px 0 var(--ui-danger,#b34450),inset 0 -1px 0 var(--ui-danger,#b34450)}.shop-stock-balance-table .shop-stock-zero-row td:last-child{box-shadow:inset -1px 0 0 #c58a22,inset 0 1px 0 #c58a22,inset 0 -1px 0 #c58a22}.shop-stock-balance-table .shop-stock-negative-row td:last-child{box-shadow:inset -1px 0 0 var(--ui-danger,#b34450),inset 0 1px 0 var(--ui-danger,#b34450),inset 0 -1px 0 var(--ui-danger,#b34450)}.shop-stock-balance-table .shop-stock-zero-row td:nth-child(4){color:#9a6810;font-weight:700}.shop-stock-balance-table .shop-stock-negative-row td:nth-child(4){color:var(--ui-danger,#b34450);font-weight:700}.shop-stock-balance-table th:nth-child(1){width:13%}.shop-stock-balance-table th:nth-child(2){width:42%}.shop-stock-balance-table th:nth-child(3){width:7%}.shop-stock-balance-table th:nth-child(n+4){width:12.66%}.shop-table-scroll small{display:block;margin-top:4px;color:var(--ui-text-muted)}.shop-table-scroll select{min-width:180px;max-width:340px}.shop-negative,.shop-error{color:var(--ui-danger,#b34450)}.shop-error{white-space:pre-wrap;margin:10px 0}.shop-warning{padding:14px;border:1px solid var(--ui-warning,#b4823e);border-radius:10px;background:var(--ui-surface-warning,#fcf2df);font-size:13px;line-height:1.5}.shop-warning ul{padding-left:20px}.shop-empty{text-align:center;color:var(--ui-text-muted)}
.shop-dialog{box-sizing:border-box;width:min(1100px,calc(100% - 32px));max-width:calc(100% - 32px);max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--ui-border);border-radius:18px;color:var(--ui-text);background:var(--ui-surface);box-shadow:0 25px 90px #102a3450}.shop-dialog::backdrop{background:#0b211b8c;backdrop-filter:blur(4px)}.shop-dialog>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px;background:var(--ui-header-bg);color:var(--ui-header-text);border-radius:16px 16px 0 0}.shop-dialog>header .eyebrow{color:var(--ui-header-muted)}.shop-dialog>header h2{font-size:22px;margin:6px 0}.shop-dialog>header button{min-width:44px;min-height:44px}.shop-dialog-body{padding:22px}.shop-dialog>[data-message]{padding:0 22px 10px}.shop-dialog p{line-height:1.5}.shop-dialog footer{display:flex;justify-content:flex-end;gap:10px;grid-column:1/-1;margin-top:20px}.shop-dialog label{display:flex;flex-direction:column;gap:8px;font-size:13px;min-width:0}.shop-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.shop-check{display:flex!important;flex-direction:row!important;align-items:center;gap:10px;padding:12px 0;line-height:1.5}.shop-check input{width:20px;height:20px;flex-shrink:0}.shop-receipt-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(100px,1fr) minmax(0,1fr) 44px;gap:10px;align-items:end;margin:12px 0}.shop-receipt-row:has(.shop-new-item-fields:not([hidden])){grid-template-columns:minmax(0,2fr) minmax(100px,1fr) minmax(0,1fr) 44px}.shop-new-item-fields{grid-column:1/-1;display:grid;grid-template-columns:2fr 1fr 110px;gap:10px;padding:10px;border:1px solid var(--ui-border);border-radius:9px;background:var(--ui-surface-soft)}.shop-new-item-fields[hidden]{display:none}.shop-new-item{align-self:flex-start;margin-top:7px;padding:0;border:0;background:none;color:var(--ui-accent);font:inherit;text-align:left}.shop-new-item:hover{text-decoration:underline}.shop-pack-row{display:grid;grid-template-columns:minmax(0,3fr) minmax(100px,1fr) 44px;gap:10px;align-items:end;margin:12px 0}
@media(max-width:768px){.shop-stock{padding:12px 0}.shop-heading{gap:10px;margin-bottom:12px}.shop-heading h2{font-size:22px}.shop-heading-actions{width:100%;justify-content:space-between;align-self:auto}.shop-heading-summary{width:calc(100% - 82px);overflow-x:auto}.shop-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.shop-summary article{padding:12px}.shop-start,.shop-panel{padding:16px}.shop-actions{gap:8px}.shop-search{min-width:0;flex-basis:100%;max-width:none}.shop-stock .tool,.shop-stock .primary-action,.shop-dialog button,.shop-dialog input,.shop-dialog select{min-height:44px}.shop-tabs{gap:6px}.shop-table-scroll td,.shop-table-scroll th{padding:10px}.shop-dialog{width:calc(100% - 16px);max-width:calc(100% - 16px);max-height:calc(100dvh - 16px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:14px}.shop-dialog>header{padding:16px;border-radius:12px 12px 0 0}.shop-dialog>header h2{font-size:19px}.shop-dialog-body{padding:16px}.shop-form-grid{grid-template-columns:1fr;gap:12px}.shop-receipt-row,.shop-pack-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:12px;border:1px solid var(--ui-border);border-radius:10px}.shop-receipt-row label:first-child,.shop-pack-row label:first-child,.shop-new-item-fields{grid-column:1/-1}.shop-new-item-fields{grid-template-columns:1fr;padding:0;border:0;background:none}.shop-dialog footer{flex-wrap:wrap}.shop-dialog footer button{flex:1}}
