.drink-locations + #einkauf { margin-top:24px; }
#einkauf > .section-heading { gap:12px; margin-bottom:10px; }
#einkauf > .drink-volume-summary { margin:0 0 20px; line-height:1.6; }
#drink-shopping-content { display:grid; gap:16px; }
.shopping-category { margin:0; }
.shopping-table-fields > .table-scroll { margin:0; }
.shopping-category > summary { display:flex; align-items:center; gap:12px; padding:16px 18px; border:1px solid var(--line); border-radius:12px; background:#fff; color:#183765; cursor:pointer; list-style:none; font-size:16px; font-weight:600; line-height:1.5; }
.shopping-category > summary::-webkit-details-marker { display:none; }
.shopping-category > summary::before { content:''; width:8px; height:8px; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(-45deg); transition:transform .15s; flex-shrink:0; }
.shopping-category[open] > summary::before { transform:rotate(45deg); }
.shopping-category > summary > span:first-of-type { min-width:0; overflow-wrap:anywhere; }
.shopping-category > summary:hover { background:#f7f9fc; }
.shopping-category > summary:focus-visible { outline:2px solid #ef8a28; outline-offset:3px; }
.shopping-category-count { margin-left:auto; flex-shrink:0; color:#637189; background:#edf2f8; padding:3px 8px; border-radius:7px; font-size:12px; font-weight:400; }
.shopping-category > .table-scroll { margin-top:12px; }
.shopping-list-toolbar { display:flex; align-items:flex-end; flex-wrap:wrap; gap:16px; margin:14px 0 12px; padding:14px 16px; background:#fff; border:1px solid var(--line); border-radius:12px; }
.shopping-list-filter { display:flex; flex-direction:column; gap:5px; font-size:12px; color:#566477; }
.shopping-list-filter select { min-width:200px; padding:9px 12px; font-size:13px; }
.shopping-list-toolbar .unit-switch { margin-left:auto; }
.shopping-list-toolbar .unit-switch button { min-height:40px; min-width:42px; font-size:13px; }
.shopping-share { position:relative; }
.shopping-share > summary { display:grid; place-items:center; width:40px; height:40px; list-style:none; cursor:pointer; border:1px solid var(--line); border-radius:9px; background:#f6f8fc; color:#183765; }
.shopping-share > summary::-webkit-details-marker { display:none; }
.shopping-share > summary:hover,.shopping-share[open] > summary { background:#e5edf9; border-color:#183765; }
.shopping-share > summary:focus-visible { outline:2px solid #ef8a28; outline-offset:2px; }
.shopping-share-menu { position:absolute; top:calc(100% + 8px); right:0; width:240px; z-index:8; border:1px solid var(--line); border-radius:12px; padding:6px; box-shadow:0 8px 28px #14223826; background:#fff; }
.shopping-share-menu > * { display:block; width:100%; padding:11px 12px; background:transparent; border:0; border-radius:7px; text-align:left; color:#183765; font-size:13px; line-height:1.4; }
.shopping-share-menu > *:hover { background:#edf2f8; }
.shopping-list-feedback { font-size:12px; color:#566477; margin:8px 0; }
.shopping-list-feedback:empty { display:none; }
.shopping-filter-empty { padding:14px; border:1px dashed var(--line); border-radius:10px; color:#566477; font-size:13px; }
[data-list-empty][hidden],[data-list-copy-fallback][hidden],.shopping-export-config[hidden] { display:none; }
@media(max-width:760px) { .shopping-list-toolbar { gap:12px; padding:12px; } .shopping-list-filter { width:100%; } .shopping-list-filter select { width:100%; font-size:16px; } .shopping-list-toolbar .unit-switch { margin-left:0; } .shopping-share { margin-left:auto; } }
@media print { .shopping-list-toolbar,.shopping-list-feedback,[data-list-copy-fallback] { display:none!important; } }
@media(max-width:760px) { .shopping-category > summary { padding:14px; font-size:14px; gap:10px; } .shopping-category-count { font-size:11px; padding:3px 6px; } }
@media(prefers-reduced-motion:reduce) { .shopping-category > summary::before { transition:none; } }
@media print { .shopping-category > summary { display:none; } .shopping-category:not([open]) > :not(summary) { display:block!important; } }
