@import '_content/Fotobuch.Assistant/Fotobuch.Assistant.a2p3zebbav.bundle.scp.css';
@import '_content/Fotobuch.Editor/Fotobuch.Editor.nkjjrd7r8e.bundle.scp.css';
@import '_content/Fotobuch.Ui/Fotobuch.Ui.tilioyyt56.bundle.scp.css';

/* /Components/Layout/MainLayout.razor.rz.scp.css */
#blazor-error-ui[b-vm5v0qdj96] {
    color-scheme: light only;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 1000;
}

    #blazor-error-ui .dismiss[b-vm5v0qdj96] {
        cursor: pointer;
        position: absolute;
        right: 0.75rem;
        top: 0.5rem;
    }
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-15nj40o7zv],
.components-reconnect-repeated-attempt-visible[b-15nj40o7zv],
.components-reconnect-failed-visible[b-15nj40o7zv],
.components-pause-visible[b-15nj40o7zv],
.components-resume-failed-visible[b-15nj40o7zv],
.components-rejoining-animation[b-15nj40o7zv] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-retrying[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-failed[b-15nj40o7zv],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-15nj40o7zv] {
    display: block;
}


#components-reconnect-modal[b-15nj40o7zv] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-15nj40o7zv 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-15nj40o7zv 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-15nj40o7zv 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-15nj40o7zv]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-15nj40o7zv 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-15nj40o7zv {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-15nj40o7zv {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-15nj40o7zv {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-15nj40o7zv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-15nj40o7zv] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-15nj40o7zv] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-15nj40o7zv] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-15nj40o7zv] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-15nj40o7zv] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-15nj40o7zv] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-15nj40o7zv 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-15nj40o7zv] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-15nj40o7zv {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Components/Pages/Anbieter.razor.rz.scp.css */
/* Drucken: the research one level deeper ("Recherche-Details"); the recommendations are PrintChooser */
.anb-research-head[b-rcx7i1cwt0] { margin-bottom: var(--sp-2); }
.anb-back[b-rcx7i1cwt0] { display: inline-flex; align-items: center; gap: 6px; margin-bottom: var(--sp-3); color: var(--ink-2); font-size: var(--fs-sm); font-weight: 600; text-decoration: none; }
.anb-back:hover[b-rcx7i1cwt0] { color: var(--ink); }
.anb-back[b-rcx7i1cwt0]  .i { width: 16px; height: 16px; }
.anb-empty-title[b-rcx7i1cwt0] { font-size: var(--fs-2xl); }
.anb-lead[b-rcx7i1cwt0] { max-width: 60rem; margin: -.25rem 0 1rem; }
.anb-empty code[b-rcx7i1cwt0] { background: var(--surface-2); padding: .05rem .3rem; border-radius: 4px; word-break: break-all; }
.anb-empty[b-rcx7i1cwt0] { max-width: 46rem; }
.anb-h2[b-rcx7i1cwt0] { margin-bottom: .75rem; }
.anb-note-inline[b-rcx7i1cwt0] { margin: 0 0 .6rem; font-size: var(--fs-sm); }

/* the research views as tabs of the design system: the underline is drawn inside the tab, so nothing reaches below the bar */
.anb-tabs[b-rcx7i1cwt0] { display: flex; gap: var(--sp-5); margin-bottom: var(--sp-5); border-bottom: 1px solid var(--line); overflow-x: auto; overflow-y: hidden; }
.anb-tabs a[b-rcx7i1cwt0] {
    display: inline-flex; align-items: center; gap: 6px; padding: var(--sp-3) 0; color: var(--ink-2); font-weight: 600;
    text-decoration: none; white-space: nowrap;
}
.anb-tabs a:hover[b-rcx7i1cwt0] { color: var(--ink); }
.anb-tabs a.active[b-rcx7i1cwt0] { color: var(--ink); box-shadow: inset 0 -2px 0 var(--accent); }
.tab-count[b-rcx7i1cwt0] { min-width: 1.3rem; padding: 0 .35rem; border-radius: var(--r-pill); background: var(--accent); color: var(--accent-ink); font-size: var(--fs-xs); text-align: center; }

.anb-notes[b-rcx7i1cwt0] { max-width: 60rem; margin: 0 0 1rem; padding: var(--sp-2) var(--sp-3); border-radius: var(--r-md); background: var(--warn-soft); color: var(--warn); font-size: var(--fs-sm); }
.anb-notes summary[b-rcx7i1cwt0] { cursor: pointer; font-weight: 600; }
.anb-notes ul[b-rcx7i1cwt0] { margin: .4rem 0 0; padding-left: 1.2rem; }
.anb-notes li + li[b-rcx7i1cwt0] { margin-top: .2rem; }

/* ---- print formats ---- */
.table-wrap[b-rcx7i1cwt0] { overflow-x: auto; background: var(--surface); border-radius: var(--r-lg); box-shadow: var(--sh-1); }
.formats[b-rcx7i1cwt0] { border-collapse: collapse; width: 100%; font-size: var(--fs-sm); }
.formats th[b-rcx7i1cwt0], .formats td[b-rcx7i1cwt0] { padding: 12px 16px; text-align: left; border-bottom: 1px solid var(--line); white-space: nowrap; }
.formats thead th[b-rcx7i1cwt0] { background: var(--surface-2); font-weight: 600; font-size: var(--fs-xs); color: var(--ink-3); text-transform: uppercase; letter-spacing: .04em; }
.formats tbody tr:last-child th[b-rcx7i1cwt0], .formats tbody tr:last-child td[b-rcx7i1cwt0] { border-bottom: 0; }
.formats tbody th[b-rcx7i1cwt0] { font-weight: 600; }

/* ---- report (HTML from Markdown: the elements carry no scope attribute, hence ::deep) ---- */
.report[b-rcx7i1cwt0] { max-width: 76rem; overflow-wrap: anywhere; }
.report[b-rcx7i1cwt0]  h2 { font-size: 1.6rem; }
.report[b-rcx7i1cwt0]  h3 { font-size: 1.3rem; margin-top: 1.8rem; padding-top: 1rem; border-top: 1px solid var(--line); }
.report[b-rcx7i1cwt0]  h4 { font-size: 1.08rem; margin: 1.4rem 0 .4rem; }
.report[b-rcx7i1cwt0]  table { display: block; overflow-x: auto; border-collapse: collapse; margin: .75rem 0; font-size: .88rem; overflow-wrap: normal; }
.report[b-rcx7i1cwt0]  th, .report[b-rcx7i1cwt0]  td { padding: .35rem .6rem; border: 1px solid var(--line); vertical-align: top; }
.report[b-rcx7i1cwt0]  th { background: var(--surface-2); text-align: left; white-space: nowrap; }
.report[b-rcx7i1cwt0]  ul, .report[b-rcx7i1cwt0]  ol { padding-left: 1.3rem; }
.report[b-rcx7i1cwt0]  li + li { margin-top: .2rem; }
.report[b-rcx7i1cwt0]  code { background: var(--surface-2); padding: .05rem .3rem; border-radius: 4px; }
.report[b-rcx7i1cwt0]  blockquote { margin: .75rem 0; padding: .1rem 1rem; border-left: 3px solid var(--line); color: var(--ink-soft); }
/* /Components/Pages/AnbieterShop.razor.rz.scp.css */
/* A shop of the research, one level below "Wo drucken wir …?" - in the style of the design system */
.shop-back[b-k3y4ajyokk] { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-4); margin: 0 0 var(--sp-4); font-size: var(--fs-sm); }
.shop-back a[b-k3y4ajyokk] { display: inline-flex; align-items: center; gap: 6px; color: var(--ink-2); font-weight: 600; text-decoration: none; }
.shop-back a:hover[b-k3y4ajyokk] { color: var(--ink); }
.shop-back a:first-child[b-k3y4ajyokk] { color: var(--ink); }
.shop-back[b-k3y4ajyokk]  .i { width: 16px; height: 16px; }
.shop-empty[b-k3y4ajyokk] { max-width: 46rem; }
.shop-head[b-k3y4ajyokk] { max-width: 60rem; margin-bottom: var(--sp-5); }
.shop-head h1[b-k3y4ajyokk] { margin-bottom: var(--sp-2); overflow-wrap: anywhere; }
.shop-meta[b-k3y4ajyokk] { list-style: none; margin: 0 0 var(--sp-2); padding: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; }
.shop-date[b-k3y4ajyokk] { font-size: var(--fs-sm); }
.shop-site[b-k3y4ajyokk] { margin: 0 0 var(--sp-2); overflow-wrap: anywhere; }
.shop-summary[b-k3y4ajyokk] { margin: 0; font-size: var(--fs-lg); line-height: 1.45; color: var(--ink-2); max-width: 46rem; }

.shop-h2[b-k3y4ajyokk] { font-size: var(--fs-xl); margin: var(--sp-7) 0 var(--sp-3); }
.shop-hint[b-k3y4ajyokk] { margin: calc(-1 * var(--sp-2)) 0 var(--sp-3); font-size: var(--fs-sm); }
.shop-places ul[b-k3y4ajyokk] { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-1); }

/* "Gut" and "Weniger gut" as two tinted fields, as in the details of the Drucken page */
.shop-procon[b-k3y4ajyokk] { display: grid; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); gap: var(--sp-3); max-width: 60rem; margin-top: var(--sp-5); }
.procon[b-k3y4ajyokk] { box-shadow: none; }
.procon .shop-h2[b-k3y4ajyokk] { margin: 0 0 var(--sp-2); font-size: var(--fs-md); font-weight: 600; font-family: var(--font-ui); }
.procon ul[b-k3y4ajyokk] { margin: 0; padding-left: 1.2rem; font-size: var(--fs-sm); }
.procon li + li[b-k3y4ajyokk] { margin-top: var(--sp-1); }
.pro[b-k3y4ajyokk] { background: var(--good-soft); }
.pro li[b-k3y4ajyokk]::marker { content: "+  "; color: var(--good); font-weight: 600; }
.con[b-k3y4ajyokk] { background: var(--warn-soft); }
.con li[b-k3y4ajyokk]::marker { content: "–  "; color: var(--warn); font-weight: 600; }

.shop-lines[b-k3y4ajyokk] { display: grid; gap: var(--sp-4); max-width: 60rem; }

.shop-kv[b-k3y4ajyokk] { margin: 0; display: grid; gap: var(--sp-2); max-width: 60rem; }
.shop-kv > div[b-k3y4ajyokk] { display: grid; grid-template-columns: 9rem minmax(0, 1fr); gap: var(--sp-3); }
.shop-kv dt[b-k3y4ajyokk] { color: var(--ink-3); font-size: var(--fs-sm); }
.shop-kv dd[b-k3y4ajyokk] { margin: 0; overflow-wrap: anywhere; }
.small[b-k3y4ajyokk] { font-size: var(--fs-sm); }
.shop-tools[b-k3y4ajyokk] { list-style: none; margin: 0 0 var(--sp-1); padding: 0; display: flex; flex-wrap: wrap; gap: var(--sp-1) var(--sp-3); }
.shop-tools .is-yes span[aria-hidden][b-k3y4ajyokk] { color: var(--good); font-weight: 600; }
.shop-tools .is-no[b-k3y4ajyokk], .shop-tools .is-unknown[b-k3y4ajyokk] { color: var(--ink-3); }
.visually-hidden[b-k3y4ajyokk] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.reviews[b-k3y4ajyokk] { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-2); max-width: 40rem; }
.reviews li[b-k3y4ajyokk] { display: grid; grid-template-columns: minmax(0, 1fr) 6rem auto; align-items: center; gap: 2px var(--sp-3); }
.review-name[b-k3y4ajyokk] { overflow-wrap: anywhere; }
.review-bar[b-k3y4ajyokk] { height: 6px; border-radius: 3px; background: var(--surface-3); overflow: hidden; }
.review-bar span[b-k3y4ajyokk] { display: block; height: 100%; background: var(--ink-2); border-radius: 3px; }
.review-value[b-k3y4ajyokk] { white-space: nowrap; font-variant-numeric: tabular-nums; font-weight: 600; }
.review-count[b-k3y4ajyokk] { grid-column: 1 / -1; font-size: var(--fs-xs); color: var(--ink-3); }

.shop-more[b-k3y4ajyokk] { margin-top: var(--sp-4); max-width: 60rem; }
.shop-more summary[b-k3y4ajyokk] { cursor: pointer; font-weight: 600; }
.shop-more ul[b-k3y4ajyokk] { margin: var(--sp-2) 0 0; padding-left: 1.2rem; }
.shop-more li + li[b-k3y4ajyokk] { margin-top: var(--sp-1); }
.shop-sources[b-k3y4ajyokk] { font-size: var(--fs-sm); overflow-wrap: anywhere; }

@media (max-width: 760px) {
    .shop-h2[b-k3y4ajyokk] { margin-top: var(--sp-6); }
    .shop-kv > div[b-k3y4ajyokk] { grid-template-columns: minmax(0, 1fr); gap: 2px; }
    .reviews li[b-k3y4ajyokk] { grid-template-columns: minmax(0, 1fr) auto; }
    .review-bar[b-k3y4ajyokk] { display: none; }
}
/* /Components/Pages/BuchUeberblick.razor.rz.scp.css */
/* The book overview (buch.html's parts outside the editor): cover and actions, four step cards, the chapters with their
   double pages as a film strip, the photos of the book by day. */
.bo-head[b-1w5tlmw713] { display: grid; grid-template-columns: minmax(220px, 340px) minmax(0, 1fr); gap: var(--sp-6); align-items: center; }
.bo-cover[b-1w5tlmw713] { display: block; }
.bo-title h1[b-1w5tlmw713] { margin: 6px 0 4px; font-size: var(--fs-2xl); }
.bo-sub[b-1w5tlmw713] { margin: 0 0 4px; }
.bo-facts[b-1w5tlmw713] { margin: 0; color: var(--ink-3); font-size: var(--fs-sm); }
.bo-actions[b-1w5tlmw713] { display: flex; flex-wrap: wrap; gap: 10px; margin-top: var(--sp-4); }

.bo-steps[b-1w5tlmw713] { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--sp-4); }
.bo-step[b-1w5tlmw713] { display: grid; gap: 4px; align-content: start; padding: var(--sp-4); color: var(--ink); text-decoration: none; }
.bo-bar[b-1w5tlmw713] { display: block; height: 5px; border-radius: 3px; background: var(--surface-3); margin-bottom: var(--sp-2); }
.bo-step.done .bo-bar[b-1w5tlmw713] { background: var(--ink-2); }
.bo-step.ki .bo-bar[b-1w5tlmw713] { background: repeating-linear-gradient(-45deg, var(--ink-3) 0 4px, var(--surface-3) 4px 7px); }
.bo-step.warn .bo-bar[b-1w5tlmw713] { background: var(--warn); }
.bo-step.now .bo-bar[b-1w5tlmw713] { background: var(--accent); }
.bo-step b[b-1w5tlmw713] { font-weight: 600; }
.bo-state[b-1w5tlmw713] { font-size: var(--fs-sm); color: var(--ink-2); font-weight: 600; }
.bo-step.warn .bo-state[b-1w5tlmw713] { color: var(--warn); }
.bo-step.now .bo-state[b-1w5tlmw713] { color: var(--accent-text); }
.bo-more[b-1w5tlmw713] { font-size: var(--fs-sm); color: var(--ink-3); }

/* chapters: real double pages, grouped */
.chapters[b-1w5tlmw713] { display: flex; flex-wrap: wrap; gap: var(--sp-5) var(--sp-4); }
.chapter[b-1w5tlmw713] { display: grid; gap: 6px; min-width: 0; }
.chapter-title[b-1w5tlmw713] { font-size: var(--fs-xs); font-weight: 600; color: var(--ink-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.chapter-row[b-1w5tlmw713] { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
.sp[b-1w5tlmw713] { width: 150px; display: grid; gap: 4px; justify-items: center; text-decoration: none; }
.sp .mini[b-1w5tlmw713] {
    display: block; width: 150px; aspect-ratio: 594 / 210; overflow: hidden; border-radius: 3px; background: var(--surface);
    box-shadow: var(--sh-1); outline: 2px solid transparent; outline-offset: 2px; transition: outline-color var(--t-1);
}
.sp-cover .mini[b-1w5tlmw713] { aspect-ratio: 630 / 210; }
.sp .mini img[b-1w5tlmw713] { display: block; width: 100%; height: 100%; object-fit: cover; }
.sp:hover .mini[b-1w5tlmw713] { outline-color: var(--line-strong); }
.sp small[b-1w5tlmw713] { font-size: 11px; color: var(--ink-3); font-variant-numeric: tabular-nums; }

/* the photos of the book */
.bo-explain[b-1w5tlmw713] { margin: var(--sp-3) 0 var(--sp-4); font-size: var(--fs-sm); }
.tg[b-1w5tlmw713] { margin-bottom: var(--sp-5); }
.tg-head[b-1w5tlmw713] { display: flex; align-items: baseline; justify-content: space-between; gap: var(--sp-2); margin-bottom: var(--sp-2); }
.tg-head b[b-1w5tlmw713] { font-size: var(--fs-sm); font-weight: 600; }
.tg-grid[b-1w5tlmw713] { display: grid; grid-template-columns: repeat(auto-fill, minmax(96px, 1fr)); gap: 6px; }
.tt[b-1w5tlmw713] { position: relative; aspect-ratio: 1; border-radius: var(--r-sm); overflow: hidden; background: var(--surface-3); }
.tt img[b-1w5tlmw713] { width: 100%; height: 100%; object-fit: cover; transition: transform var(--t-2); }
.tt:hover img[b-1w5tlmw713] { transform: scale(1.05); }
.tt .inbook-mark[b-1w5tlmw713] { position: absolute; top: 5px; right: 5px; width: 22px; height: 22px; }
.tt .inbook-mark.is-queued[b-1w5tlmw713] { background: var(--accent-hover); }
.tt .inbook-mark[b-1w5tlmw713]  .i { width: 12px; height: 12px; }
.tt-more[b-1w5tlmw713] { display: grid; place-content: center; text-align: center; color: var(--ink-2); text-decoration: none; background: var(--surface-2); }
.tt-more b[b-1w5tlmw713] { font-size: var(--fs-lg); color: var(--ink); }
.tt-more span[b-1w5tlmw713] { font-size: var(--fs-xs); }

@media (max-width: 1100px) {
    .bo-steps[b-1w5tlmw713] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .bo-head[b-1w5tlmw713] { grid-template-columns: minmax(0, 1fr); gap: var(--sp-4); }
    .bo-cover[b-1w5tlmw713] { max-width: 260px; }
    .bo-actions .btn[b-1w5tlmw713] { flex: 1 1 auto; }
    .bo-steps[b-1w5tlmw713] { gap: var(--sp-2); }
    .sp[b-1w5tlmw713], .sp .mini[b-1w5tlmw713] { width: 120px; }
    .tg-grid[b-1w5tlmw713] { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 3px; }
}
/* /Components/Pages/Einstellungen.razor.rz.scp.css */
/* Einstellungen: a side navigation and the sections as cards (docs/spec/ui-v3-konzept.md, "Einstellungen") */
.set[b-c1ddo6q646] { max-width: 68rem; margin: 0 auto; }
.set-layout[b-c1ddo6q646] { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: var(--sp-6); align-items: start; }
.set-nav[b-c1ddo6q646] { position: sticky; top: calc(var(--header-h) + var(--sp-4)); display: grid; gap: 2px; }
.set-nav a[b-c1ddo6q646] {
    display: flex; align-items: center; gap: 10px; height: 40px; padding: 0 12px; border-radius: var(--r-pill);
    color: var(--ink-2); font-weight: 600; font-size: var(--fs-sm); text-decoration: none;
}
.set-nav a:hover[b-c1ddo6q646] { background: var(--surface-2); color: var(--ink); }
.set-nav[b-c1ddo6q646]  .i { width: 18px; height: 18px; }
.set-main[b-c1ddo6q646] { min-width: 0; display: grid; gap: var(--sp-5); }
.set-section[b-c1ddo6q646] { margin: 0; scroll-margin-top: calc(var(--header-h) + var(--sp-4)); }
.set-section h2[b-c1ddo6q646] { font-size: var(--fs-xl); }
.set-section h3[b-c1ddo6q646] { margin: var(--sp-5) 0 var(--sp-1); font-size: var(--fs-md); }
.set-section h2 + h3[b-c1ddo6q646] { margin-top: var(--sp-3); }
.set-section code[b-c1ddo6q646] { background: var(--surface-2); padding: 1px 5px; border-radius: 4px; word-break: break-all; font-size: var(--fs-sm); }
.set-group[b-c1ddo6q646] { display: grid; gap: var(--sp-5); scroll-margin-top: calc(var(--header-h) + var(--sp-4)); }

.set-msg[b-c1ddo6q646] { display: flex; align-items: flex-start; gap: var(--sp-2); border-radius: var(--r-md); padding: var(--sp-3) var(--sp-4); margin: 0 0 var(--sp-3); }
.set-msg[b-c1ddo6q646]  .i { flex: none; margin-top: 2px; }
.set-msg.is-good[b-c1ddo6q646] { background: var(--good-soft); color: var(--good); }
.set-msg.is-bad[b-c1ddo6q646] { background: var(--error-soft); color: var(--error); }
.set-msg.is-warn[b-c1ddo6q646] { background: var(--warn-soft); color: var(--ink); }
.set-msg.is-warn[b-c1ddo6q646]  .i { color: var(--warn); }

.set-pw-form[b-c1ddo6q646] { max-width: 26rem; }
.set-note[b-c1ddo6q646] { margin: var(--sp-1) 0 var(--sp-3); font-size: var(--fs-sm); color: var(--ink-2); }

/* "Technik": folded; the summary is the section's heading */
.set-tech > summary[b-c1ddo6q646] {
    display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-1) var(--sp-2); cursor: pointer; list-style: none;
    min-height: var(--tap);
}
.set-tech > summary[b-c1ddo6q646]::-webkit-details-marker { display: none; }
.set-tech > summary[b-c1ddo6q646]  .set-tech-chev { color: var(--ink-3); transition: transform var(--t-2); }
.set-tech[open] > summary[b-c1ddo6q646]  .set-tech-chev { transform: rotate(90deg); }
.set-tech > summary h2[b-c1ddo6q646] { display: inline; margin: 0; }
.set-tech > summary .muted[b-c1ddo6q646] { font-size: var(--fs-sm); }

.set-folders[b-c1ddo6q646] { margin: 0 0 var(--sp-5); display: grid; gap: var(--sp-3); }
.set-folders dt[b-c1ddo6q646] { font-weight: 600; font-size: var(--fs-sm); }
.set-folders dt .muted[b-c1ddo6q646] { font-weight: 400; }
.set-folders dd[b-c1ddo6q646] { margin: 2px 0 0; }

.set-trips[b-c1ddo6q646] { list-style: none; margin: 0; padding: 0; }
.set-trips > li[b-c1ddo6q646] { padding: var(--sp-4) 0; border-top: 1px solid var(--line); }
.set-trip-head[b-c1ddo6q646] { display: flex; flex-wrap: wrap; align-items: baseline; gap: var(--sp-1) var(--sp-3); }
.set-trip-path[b-c1ddo6q646] { font-size: var(--fs-sm); margin-top: var(--sp-1); }
.set-trip-actions[b-c1ddo6q646] { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-4); margin-top: var(--sp-3); }
.set-check[b-c1ddo6q646] { display: flex; align-items: center; gap: var(--sp-2); margin: 0; color: var(--ink); font-size: var(--fs-sm); }
.set-check input[b-c1ddo6q646] { width: auto; }
.set-confirm[b-c1ddo6q646] { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); background: var(--warn-soft); color: var(--ink); border-radius: var(--r-md); padding: var(--sp-2) var(--sp-3); }
.set-consequence[b-c1ddo6q646] { margin: var(--sp-2) 0 0; font-size: var(--fs-sm); color: var(--warn); }
.set-trips .set-msg[b-c1ddo6q646] { margin: var(--sp-3) 0 0; }

/* narrow: the navigation becomes a row of chips above the sections */
@media (max-width: 1100px) {
    .set-layout[b-c1ddo6q646] { grid-template-columns: minmax(0, 1fr); gap: var(--sp-4); }
    .set-nav[b-c1ddo6q646] { position: static; display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
    .set-nav a[b-c1ddo6q646] { flex: none; height: 36px; background: var(--surface-2); }
}

@media (prefers-reduced-motion: reduce) {
    .set-tech > summary[b-c1ddo6q646]  .set-tech-chev { transition: none; }
}
/* /Components/Pages/Fotos.razor.rz.scp.css */
/* Fotos (fotos.html): the head with the trip and the book lens, a sticky bar with days and views, the stops as sticky
   headings over a justified grid. Kit components inside the page are reached with ::deep. */
.fx[b-ms6g3qidqe] { --row-h: 210px; --gap: 6px; max-width: 1680px; margin: calc(-1 * var(--sp-5)) auto 0; }
.fx-missing[b-ms6g3qidqe] { padding-top: var(--sp-4); }
.fx-trip-list[b-ms6g3qidqe] { margin: var(--sp-2) 0 0; padding: 0; list-style: none; display: grid; gap: 6px; }

/* ---- head: trip + lens ---- */
.fx-head[b-ms6g3qidqe] { padding: var(--sp-2) 0 10px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 10px; }
.trip-line[b-ms6g3qidqe] { display: flex; align-items: center; gap: var(--sp-4); flex-wrap: wrap; }
.trip-switch[b-ms6g3qidqe] { display: inline-flex; align-items: center; gap: 2px; }
.trip-switch h1[b-ms6g3qidqe] { margin: 0; font-size: var(--fs-2xl); }
.trip-switch[b-ms6g3qidqe]  .trip-switch-btn { margin-top: 6px; color: var(--ink-3); }
.trip-meta[b-ms6g3qidqe] { color: var(--ink-3); }
.review[b-ms6g3qidqe] { display: flex; align-items: center; gap: 10px; font-size: var(--fs-sm); color: var(--ink-2); }
.review b[b-ms6g3qidqe] { color: var(--ink); font-weight: 600; }

.lens[b-ms6g3qidqe] { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: end; gap: var(--sp-3) var(--sp-6); padding: 10px 20px 12px 12px; }
.lens-left[b-ms6g3qidqe] { display: grid; gap: var(--sp-2); min-width: 0; }
.lens-left .eyebrow[b-ms6g3qidqe] { padding-left: 6px; }
.lens-opts[b-ms6g3qidqe] { display: flex; gap: var(--sp-2); }
.lens-opt[b-ms6g3qidqe] {
    position: relative; display: flex; align-items: center; gap: var(--sp-3); min-height: 52px; padding: 6px 16px 6px 6px;
    border: 0; border-radius: 14px; background: var(--surface-2); color: var(--ink); text-align: left; text-decoration: none;
    transition: background var(--t-1), box-shadow var(--t-1);
}
.lens-opt:hover[b-ms6g3qidqe] { background: var(--surface-3); }
.lens-opt b[b-ms6g3qidqe] { display: block; font-weight: 600; font-size: var(--fs-md); white-space: nowrap; }
.lens-opt .sub[b-ms6g3qidqe] { display: block; font-size: var(--fs-sm); color: var(--ink-3); white-space: nowrap; }
.lens-opt .cover-xs[b-ms6g3qidqe] { width: 54px; height: 38px; }
.trip-ico[b-ms6g3qidqe] { width: 54px; height: 38px; border-radius: 6px; display: grid; place-items: center; flex: none; background: var(--surface); color: var(--ink-2); box-shadow: var(--sh-1); }
.lens-opt[aria-checked="true"][b-ms6g3qidqe] { background: var(--surface); box-shadow: 0 0 0 2px var(--accent), var(--sh-2); }
.lens-opt[aria-checked="true"][b-ms6g3qidqe]::after {
    content: ""; position: absolute; top: -6px; right: -6px; width: 20px; height: 20px; border-radius: 50%;
    background: var(--accent); box-shadow: 0 0 0 3px var(--surface);
}
.lens-opt[aria-checked="true"][b-ms6g3qidqe]::before {
    content: ""; position: absolute; z-index: 1; top: -1px; right: 0; width: 8px; height: 5px;
    border-left: 2.4px solid var(--accent-ink); border-bottom: 2.4px solid var(--accent-ink); transform: rotate(-45deg);
}
.lens-new[b-ms6g3qidqe] { border: 1.5px dashed var(--line-strong); background: transparent; }
.lens-meter[b-ms6g3qidqe] { display: grid; gap: var(--sp-2); min-width: 0; max-width: 560px; justify-self: end; width: 100%; }
.lm-top[b-ms6g3qidqe] { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
.lm-top .big[b-ms6g3qidqe] { font-size: var(--fs-xl); font-weight: 600; letter-spacing: -.02em; }
.lm-top[b-ms6g3qidqe]  .badge { align-self: center; }
.lm-sub[b-ms6g3qidqe] { font-size: var(--fs-sm); color: var(--ink-3); display: flex; flex-wrap: wrap; gap: 4px var(--sp-3); }
.lm-sub b[b-ms6g3qidqe] { color: var(--ink-2); font-weight: 600; }
.lm-bar[b-ms6g3qidqe] { position: relative; height: 8px; border-radius: 4px; background: var(--surface-3); }
.lm-bar .fill[b-ms6g3qidqe] { position: absolute; inset: 0 auto 0 0; border-radius: 4px; background: var(--accent); transition: width var(--t-3) var(--ease); }
.lm-bar .zone[b-ms6g3qidqe] { position: absolute; top: -3px; bottom: -3px; border-radius: 3px; border: 1.5px dashed var(--ink-3); opacity: .55; }

.fx-head[b-ms6g3qidqe]  .lens-pill-wrap { display: none; }
.fx-head[b-ms6g3qidqe]  .lens-pill {
    display: flex; align-items: center; gap: var(--sp-3); width: 100%; padding: 10px 14px 10px 10px; border: 0; border-radius: 16px;
    background: var(--surface); box-shadow: 0 0 0 2px var(--accent), var(--sh-1); color: var(--ink); text-align: left;
}
.fx-head[b-ms6g3qidqe]  .lens-pill .cover-xs { width: 52px; height: 37px; }
.lp-txt[b-ms6g3qidqe] { flex: 1; min-width: 0; display: grid; line-height: 1.3; }
.lp-for[b-ms6g3qidqe] { font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-3); }
.lp-txt b[b-ms6g3qidqe] { font-weight: 600; font-size: var(--fs-md); }
.lp-meta[b-ms6g3qidqe] { font-size: var(--fs-xs); color: var(--ink-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ---- the sticky bar: days and views ---- */
.fx-bar[b-ms6g3qidqe] {
    position: sticky; top: var(--header-h); z-index: 30; display: flex; align-items: center; gap: var(--sp-4);
    margin: 0 calc(-1 * var(--sp-6)); padding: var(--sp-2) var(--sp-6);
    background: var(--glass); backdrop-filter: saturate(1.6) blur(18px); -webkit-backdrop-filter: saturate(1.6) blur(18px);
    border-bottom: 1px solid transparent;
}
.fx-bar.is-stuck[b-ms6g3qidqe] { border-bottom-color: var(--line); }
.bar-book[b-ms6g3qidqe] {
    display: none; align-items: center; gap: var(--sp-2); height: 40px; padding: 0 12px 0 6px; flex: none; border-radius: var(--r-pill);
    background: var(--accent-soft); color: var(--accent-text); font-weight: 600; font-size: var(--fs-sm); white-space: nowrap; text-decoration: none;
}
.fx-bar.is-stuck .bar-book[b-ms6g3qidqe] { display: inline-flex; }
.bar-book .cover-xs[b-ms6g3qidqe] { width: 34px; height: 24px; }
.days[b-ms6g3qidqe] {
    display: flex; gap: 4px; flex: 1; min-width: 0; padding: 2px; overflow-x: auto; scrollbar-width: none;
    -webkit-mask-image: linear-gradient(90deg, black calc(100% - 40px), transparent); mask-image: linear-gradient(90deg, black calc(100% - 40px), transparent);
}
.days[b-ms6g3qidqe]::-webkit-scrollbar { display: none; }
.day-chip[b-ms6g3qidqe] {
    display: flex; align-items: center; gap: 10px; height: 48px; padding: 4px 14px 4px 4px; flex: none; border-radius: 14px;
    color: var(--ink); text-decoration: none; transition: background var(--t-1);
}
.day-chip:hover[b-ms6g3qidqe] { background: var(--surface-2); }
.day-chip img[b-ms6g3qidqe], .day-chip .all[b-ms6g3qidqe] { width: 40px; height: 40px; border-radius: 10px; object-fit: cover; flex: none; }
.day-chip .all[b-ms6g3qidqe] { display: grid; place-items: center; background: var(--surface-2); color: var(--ink-2); }
.day-chip b[b-ms6g3qidqe] { display: block; font-size: var(--fs-sm); font-weight: 600; line-height: 1.2; white-space: nowrap; }
.day-chip small[b-ms6g3qidqe] { display: block; font-size: var(--fs-xs); color: var(--ink-3); line-height: 1.3; white-space: nowrap; }
.day-chip[aria-current="page"][b-ms6g3qidqe] { background: var(--surface); box-shadow: var(--sh-1); }
.day-chip[aria-current="page"] b[b-ms6g3qidqe] { color: var(--accent-text); }
.fx-tools[b-ms6g3qidqe] { display: flex; align-items: center; gap: var(--sp-2); flex: none; }
.view-slot[b-ms6g3qidqe] { display: none; }
.fx-tools[b-ms6g3qidqe]  .tool-search.is-on { background: var(--accent-soft); color: var(--accent-text); }

.fx-message[b-ms6g3qidqe] { margin: var(--sp-3) 0 0; }
.fx-narrow[b-ms6g3qidqe] { display: flex; align-items: center; gap: var(--sp-2); flex-wrap: wrap; margin: var(--sp-3) 0 0; font-size: var(--fs-sm); color: var(--ink-2); }
.fx-narrow .link[b-ms6g3qidqe] { border: 0; background: none; padding: 0; font-size: inherit; cursor: pointer; }

/* ---- a day ---- */
.day-head[b-ms6g3qidqe] { padding: var(--sp-4) 0 2px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 4px; max-width: 1100px; }
.day-title-row[b-ms6g3qidqe] { display: flex; align-items: baseline; gap: var(--sp-2) var(--sp-3); flex-wrap: wrap; }
.day-title-row[b-ms6g3qidqe]  .menu-button { align-self: center; }
.day-head h2[b-ms6g3qidqe] { margin: 0; font-size: var(--fs-xl); min-width: 0; }
.day-sum-row[b-ms6g3qidqe] { display: flex; align-items: baseline; gap: var(--sp-2); }
.day-sum-row[b-ms6g3qidqe]  .btn, .day-summary-toggle[b-ms6g3qidqe] { flex: none; }
.day-summary[b-ms6g3qidqe] { margin: 0; color: var(--ink-2); display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.day-summary.is-open[b-ms6g3qidqe] { -webkit-line-clamp: unset; }
.stops-jump[b-ms6g3qidqe] { display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; padding: 6px 0 2px; }
.stops-jump[b-ms6g3qidqe]::-webkit-scrollbar { display: none; }
.stops-jump .chip[b-ms6g3qidqe] { flex: none; }
.stops-jump .chip .t[b-ms6g3qidqe] { font-variant-numeric: tabular-nums; color: var(--ink-3); font-weight: 400; }
.day-edit[b-ms6g3qidqe], .stop-edit[b-ms6g3qidqe] { display: grid; gap: 2px; max-width: 46rem; padding: var(--sp-3) 0; }
.edit-actions[b-ms6g3qidqe] { margin-top: var(--sp-2); }
.fx-none[b-ms6g3qidqe] { margin: var(--sp-4) 0; }

/* ---- a stop: sticky heading under the bar ---- */
.stop[b-ms6g3qidqe] { margin-top: var(--sp-3); scroll-margin-top: calc(var(--header-h) + var(--bar-h, 64px) + 8px); }
.stop-head[b-ms6g3qidqe] {
    position: sticky; top: calc(var(--header-h) + var(--bar-h, 64px)); z-index: 20; display: flex; align-items: center; gap: 14px;
    padding: var(--sp-2) 0; background: linear-gradient(var(--bg) 70%, transparent);
}
.st-out[b-ms6g3qidqe] { flex: none; padding: 4px 8px; border: 0; border-radius: var(--r-pill); background: none; color: var(--ink-3); font-size: var(--fs-sm); cursor: pointer; }
.st-out:hover[b-ms6g3qidqe] { background: var(--surface-2); color: var(--ink); }
.st-time[b-ms6g3qidqe] { width: 44px; flex: none; font-variant-numeric: tabular-nums; font-size: var(--fs-sm); font-weight: 600; color: var(--ink-3); }
.st-title[b-ms6g3qidqe] { flex: 1; min-width: 0; padding: 0; border: 0; background: none; color: var(--ink); text-align: left; cursor: pointer; }
.st-title > b[b-ms6g3qidqe] { display: block; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.st-meta[b-ms6g3qidqe] { display: block; font-size: var(--fs-sm); color: var(--ink-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.st-meta .inb[b-ms6g3qidqe] { color: var(--accent-text); font-weight: 600; }
.stop-summary[b-ms6g3qidqe] { margin: 0 0 var(--sp-2); max-width: 62rem; font-size: var(--fs-sm); color: var(--ink-2); }
.stop.is-collapsed[b-ms6g3qidqe] { margin-top: 4px; }
.stop.is-collapsed .stop-head[b-ms6g3qidqe] { position: static; background: none; padding: 8px 12px 8px 0; border-radius: var(--r-md); }
.stop.is-collapsed .stop-head:hover[b-ms6g3qidqe] { background: var(--surface-2); }
.stop.is-collapsed .st-title > b[b-ms6g3qidqe] { display: inline; font-weight: 400; color: var(--ink-2); }
.stop.is-collapsed .st-meta[b-ms6g3qidqe] { display: inline; margin-left: var(--sp-2); }

/* ---- the justified grid (tiles: PhotoTile.razor.css) ---- */
.jg[b-ms6g3qidqe] { display: flex; flex-wrap: wrap; gap: var(--gap); }
.jg[b-ms6g3qidqe]::after { content: ""; flex-grow: 999999; }

/* ---- popovers: search, filter, legend ---- */
.fx[b-ms6g3qidqe]  .pop-search { width: 320px; padding: var(--sp-2); }
.fx[b-ms6g3qidqe]  .pop-search .field { height: 44px; }
.fx[b-ms6g3qidqe]  .pop-filter { width: 340px; padding: 14px; }
.pf-sec[b-ms6g3qidqe] { display: grid; gap: var(--sp-2); padding: var(--sp-2) 4px var(--sp-3); }
.pf-sec + .pf-sec[b-ms6g3qidqe] { border-top: 1px solid var(--line); padding-top: 14px; }
.pf-chips[b-ms6g3qidqe] { display: flex; flex-wrap: wrap; gap: 6px; }
.pf-row[b-ms6g3qidqe] { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-3); margin: 0; font-size: var(--fs-md); color: var(--ink); }
.pf-select[b-ms6g3qidqe] { width: auto; min-height: 32px; padding: 4px 8px; }
.pf-foot[b-ms6g3qidqe] { display: flex; justify-content: flex-start; padding: 4px; }
.fx[b-ms6g3qidqe]  .legend { width: 320px; padding: 14px; display: grid; gap: var(--sp-3); font-size: var(--fs-sm); }
.legend-row[b-ms6g3qidqe] { display: grid; grid-template-columns: 34px 1fr; align-items: center; gap: 10px; }
.sw[b-ms6g3qidqe] {
    position: relative; width: 34px; height: 26px; border-radius: 6px; display: grid; place-items: center;
    background: linear-gradient(135deg, var(--surface-3), var(--line-strong));
}
.sw.is-out[b-ms6g3qidqe] { opacity: .35; filter: grayscale(.8); }
.sw .inbook-mark[b-ms6g3qidqe] { width: 20px; height: 20px; }
.sw .inbook-mark.is-queued[b-ms6g3qidqe] { background: var(--accent-hover); }
.sw .inbook-mark[b-ms6g3qidqe]  .i { width: 12px; height: 12px; }
.sw[b-ms6g3qidqe]  .sw-star { width: 18px; height: 18px; color: var(--on-photo); stroke: none; filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .5)); }
.sw-flag[b-ms6g3qidqe] { font-weight: 600; color: var(--on-photo); text-shadow: 0 1px 2px rgba(0, 0, 0, .5); }
.legend-keys[b-ms6g3qidqe] { margin: 0; font-size: var(--fs-xs); }

/* ---- narrower screens ---- */
@media (max-width: 1100px) {
    .lens[b-ms6g3qidqe] { grid-template-columns: 1fr; }
    .lens-meter[b-ms6g3qidqe] { justify-self: stretch; max-width: none; }
    .day-chip small[b-ms6g3qidqe] { display: none; }
    .fx[b-ms6g3qidqe]  .tool-search-wrap { display: none; }
}

/* ---- phones: the lens is a pill, the days swipe, the views sit under the bar ---- */
@media (max-width: 760px) {
    .fx[b-ms6g3qidqe] { --row-h: 92px; --gap: 3px; margin-top: calc(-1 * var(--sp-4)); }
    .fx-head[b-ms6g3qidqe] { padding: 0 0 var(--sp-3); }
    .trip-switch h1[b-ms6g3qidqe] { font-size: var(--fs-xl); }
    .trip-line[b-ms6g3qidqe] { gap: 4px 10px; }
    .review[b-ms6g3qidqe] { display: none; }
    .trip-line[b-ms6g3qidqe]  .btn-primary, .trip-line .btn-primary[b-ms6g3qidqe] { --h: 36px; padding: 0 14px; font-size: var(--fs-sm); }
    .lens[b-ms6g3qidqe] { display: none; }
    .fx-head[b-ms6g3qidqe]  .lens-pill-wrap { display: block; width: 100%; }
    .fx-bar[b-ms6g3qidqe] { margin: 0 calc(-1 * var(--sp-4)); padding: 6px var(--sp-3); }
    .fx-tools[b-ms6g3qidqe] { display: none; }
    .fx-bar.is-stuck .bar-book[b-ms6g3qidqe] { display: none; }
    .day-chip[b-ms6g3qidqe] { height: 40px; padding: 3px 10px 3px 3px; gap: var(--sp-2); }
    .day-chip img[b-ms6g3qidqe], .day-chip .all[b-ms6g3qidqe] { width: 34px; height: 34px; border-radius: var(--r-sm); }
    .view-slot[b-ms6g3qidqe] { display: flex; align-items: center; gap: var(--sp-2); margin-top: var(--sp-3); }
    .view-slot[b-ms6g3qidqe]  .seg { flex: 1; min-width: 0; overflow-x: auto; scrollbar-width: none; }
    .view-slot[b-ms6g3qidqe]  .seg button { padding: 0 11px; }
    .view-slot[b-ms6g3qidqe]  .tool-search-wrap, .view-slot[b-ms6g3qidqe]  .tool-legend-wrap { display: none; }
    .st-out[b-ms6g3qidqe] { display: none; }
    .view-slot[b-ms6g3qidqe]  .f-toggle { padding: 0 10px; flex: none; }
    .day-head[b-ms6g3qidqe] { padding: var(--sp-3) 0 2px; }
    .day-title-row[b-ms6g3qidqe] { flex-wrap: nowrap; align-items: center; }
    .day-head h2[b-ms6g3qidqe] { flex: 1; font-size: var(--fs-lg); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .trip-meta[b-ms6g3qidqe], .stops-jump[b-ms6g3qidqe] { display: none; }
    .day-head .eyebrow[b-ms6g3qidqe] { font-size: 11px; }
    .stop[b-ms6g3qidqe] { margin-top: var(--sp-2); }
    .stop-head[b-ms6g3qidqe] { padding: 6px 0; gap: 10px; }
    .st-time[b-ms6g3qidqe] { width: auto; }
    .fx[b-ms6g3qidqe]  .pop-filter, .fx[b-ms6g3qidqe]  .legend, .fx[b-ms6g3qidqe]  .pop-search { width: calc(100vw - 24px); }
}
/* /Components/Pages/Hilfe.razor.rz.scp.css */
/* Hilfe: an overview of short parts, each part a page with the table of contents beside it */
.hilfe[b-z6kziuhgpw] { max-width: 68rem; margin: 0 auto; }

.hilfe-search[b-z6kziuhgpw] { margin: 0 0 var(--sp-5); max-width: 34rem; }
.hilfe-search .field[b-z6kziuhgpw] { height: var(--tap); }
.hilfe-search input[b-z6kziuhgpw] { min-height: 0; }

/* the overview: one card per part, its topics as a quiet list of links */
.hilfe-toc[b-z6kziuhgpw] { display: grid; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); gap: var(--sp-4); }
.hilfe-card[b-z6kziuhgpw] { margin: 0; scroll-margin-top: calc(var(--header-h) + var(--sp-3)); }
.hilfe-card h2[b-z6kziuhgpw] { font-size: var(--fs-lg); margin-bottom: var(--sp-1); }
.hilfe-card h2 a[b-z6kziuhgpw] { color: var(--ink); text-decoration: none; }
.hilfe-card h2 a:hover[b-z6kziuhgpw] { color: var(--accent-text); }
.hilfe-card-topics[b-z6kziuhgpw] { list-style: none; margin: var(--sp-2) 0 0; padding: 0; display: grid; gap: 2px; }
.hilfe-card-topics a[b-z6kziuhgpw] { display: block; padding: 4px 8px; margin: 0 -8px; border-radius: var(--r-sm); color: var(--ink-2); font-size: var(--fs-sm); text-decoration: none; scroll-margin-top: calc(var(--header-h) + var(--sp-6)); }
.hilfe-card-topics a:hover[b-z6kziuhgpw] { background: var(--surface-2); color: var(--ink); }
.hilfe-card-topics a:target[b-z6kziuhgpw] { background: var(--accent-soft); color: var(--accent-text); font-weight: 600; }

/* a part: the table of contents at the side, the topics as calm cards */
.hilfe-layout[b-z6kziuhgpw] { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: var(--sp-6); align-items: start; }
.hilfe-side[b-z6kziuhgpw] { position: sticky; top: calc(var(--header-h) + var(--sp-4)); display: grid; gap: 2px; max-height: calc(100vh - var(--header-h) - var(--sp-6)); overflow-y: auto; }
.hilfe-side a[b-z6kziuhgpw] { display: flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: var(--r-sm); color: var(--ink-2); font-size: var(--fs-sm); text-decoration: none; }
.hilfe-side a:hover[b-z6kziuhgpw] { background: var(--surface-2); color: var(--ink); }
.hilfe-side-home[b-z6kziuhgpw] { font-weight: 600; margin-bottom: var(--sp-2); }
.hilfe-side-home[b-z6kziuhgpw]  .i { width: 16px; height: 16px; }
.hilfe-side-part[b-z6kziuhgpw] { font-weight: 600; }
.hilfe-side-part.is-on[b-z6kziuhgpw] { background: var(--surface-2); color: var(--ink); }
.hilfe-side-topics[b-z6kziuhgpw] { list-style: none; margin: 2px 0 var(--sp-2); padding: 0 0 0 var(--sp-3); border-left: 1px solid var(--line); margin-left: var(--sp-3); }
.hilfe-side-topics a[b-z6kziuhgpw] { font-size: var(--fs-xs); padding: 4px 8px; }

.hilfe-section[b-z6kziuhgpw] { margin: 0 0 var(--sp-6); scroll-margin-top: calc(var(--header-h) + var(--sp-3)); }
.hilfe-part > h2[b-z6kziuhgpw] { margin-bottom: var(--sp-2); }
.hilfe-intro[b-z6kziuhgpw] { margin: 0 0 var(--sp-4); color: var(--ink-2); }

.hilfe-topic[b-z6kziuhgpw] {
    margin: 0 0 var(--sp-3); padding: var(--sp-4) var(--sp-5); border-radius: var(--r-lg);
    background: var(--surface); box-shadow: var(--sh-1); scroll-margin-top: calc(var(--header-h) + var(--sp-3)); overflow-wrap: anywhere;
}
.hilfe-topic:target[b-z6kziuhgpw], .hilfe-topic:focus[b-z6kziuhgpw] { box-shadow: 0 0 0 2px var(--accent), var(--sh-1); outline: none; }
.hilfe-topic h3[b-z6kziuhgpw] { margin-bottom: var(--sp-1); }
.hilfe-summary[b-z6kziuhgpw] { margin: 0; color: var(--ink); }
.hilfe-body[b-z6kziuhgpw] { margin-top: var(--sp-2); color: var(--ink-2); }
.hilfe-body[b-z6kziuhgpw]  p { margin: var(--sp-2) 0; }
.hilfe-body[b-z6kziuhgpw]  ul, .hilfe-body[b-z6kziuhgpw]  ol { margin: var(--sp-2) 0; padding-left: 1.3rem; }
.hilfe-body[b-z6kziuhgpw]  table { border-collapse: collapse; width: 100%; font-size: var(--fs-sm); display: block; overflow-x: auto; }
.hilfe-body[b-z6kziuhgpw]  th, .hilfe-body[b-z6kziuhgpw]  td { border-bottom: 1px solid var(--line); padding: 6px 8px; text-align: left; }
.hilfe-body[b-z6kziuhgpw]  code { background: var(--surface-2); padding: 1px 5px; border-radius: 4px; }
.hilfe-place[b-z6kziuhgpw] { margin: var(--sp-2) 0 0; }
.hilfe-see[b-z6kziuhgpw] { margin: var(--sp-2) 0 0; font-size: var(--fs-sm); color: var(--ink-3); }
.hilfe-results > h2[b-z6kziuhgpw] { margin-bottom: var(--sp-3); }
.hilfe-pager[b-z6kziuhgpw] { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-top: var(--sp-5); }

@media (max-width: 1100px) {
    .hilfe-layout[b-z6kziuhgpw] { grid-template-columns: minmax(0, 1fr); gap: var(--sp-4); }
    .hilfe-side[b-z6kziuhgpw] { position: static; max-height: none; display: flex; gap: 6px; overflow-x: auto; scrollbar-width: none; }
    .hilfe-side a[b-z6kziuhgpw] { flex: none; background: var(--surface-2); border-radius: var(--r-pill); }
    .hilfe-side-home[b-z6kziuhgpw] { margin: 0; }
    .hilfe-side-topics[b-z6kziuhgpw] { display: none; }
}
@media (max-width: 760px) {
    .hilfe-topic[b-z6kziuhgpw] { padding: var(--sp-3) var(--sp-4); }
}
/* /Components/Pages/Home.razor.rz.scp.css */
/* Start (start.html): greeting, "Weitermachen", the shelf, the trips, the people line. */
.greet[b-mo6ykuexei] { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--sp-5); margin: var(--sp-2) 0 28px; }
.greet h1[b-mo6ykuexei] { margin: 0; font-size: var(--fs-3xl); }
.greet p[b-mo6ykuexei] { margin: 6px 0 0; }
.start-error[b-mo6ykuexei] { margin-bottom: var(--sp-4); }

/* Weitermachen: exactly one main action on this page */
.resume[b-mo6ykuexei] { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(0, 1fr); overflow: hidden; }
.resume-stage[b-mo6ykuexei] {
    position: relative; display: grid; place-items: center; padding: 44px 40px;
    background: radial-gradient(120% 120% at 30% 20%, var(--surface-2), var(--surface-3));
}
.resume-spread[b-mo6ykuexei] {
    display: block; width: 100%; max-width: 700px; aspect-ratio: 594 / 210; overflow: hidden; border-radius: 4px; background: var(--surface);
    box-shadow: var(--sh-3); transition: transform var(--t-3) var(--ease);
}
.resume-spread img[b-mo6ykuexei] { display: block; width: 100%; height: 100%; object-fit: cover; }
.resume:hover .resume-spread[b-mo6ykuexei] { transform: translateY(-3px) rotate(-.4deg); }
.resume-info[b-mo6ykuexei] { padding: 36px 36px 32px; display: flex; flex-direction: column; gap: 14px; }
.resume-info h2[b-mo6ykuexei] { margin: 0; font-size: var(--fs-2xl); }
.resume-meta[b-mo6ykuexei] { display: grid; gap: 10px; margin: 6px 0 4px; }
.resume-meta > div[b-mo6ykuexei] { display: flex; align-items: center; gap: 10px; color: var(--ink-2); }
.resume-meta[b-mo6ykuexei]  .i { color: var(--ink-3); }
.resume-actions[b-mo6ykuexei] { margin-top: auto; display: flex; gap: 10px; flex-wrap: wrap; }

/* trips */
.trips[b-mo6ykuexei] { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-5); }

/* people: optional, so small */
.people[b-mo6ykuexei] { display: flex; align-items: center; gap: 20px; padding: 18px 22px; }
.faces[b-mo6ykuexei] { display: flex; }
.faces img[b-mo6ykuexei] { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; border: 2px solid var(--surface); margin-left: -8px; background: var(--surface-3); }
.faces img:first-child[b-mo6ykuexei] { margin-left: 0; }
.people-ico[b-mo6ykuexei] { width: 40px; height: 40px; border-radius: 50%; display: grid; place-items: center; background: var(--surface-2); color: var(--ink-2); }
.people .txt[b-mo6ykuexei] { flex: 1; min-width: 0; }
.people .txt b[b-mo6ykuexei] { font-weight: 600; }
.start-prep-grid[b-mo6ykuexei] { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: var(--sp-4); }

@media (max-width: 1100px) {
    .resume[b-mo6ykuexei] { grid-template-columns: 1fr; }
}
@media (max-width: 760px) {
    .greet[b-mo6ykuexei] { margin: 0 0 18px; }
    .greet h1[b-mo6ykuexei] { font-size: var(--fs-2xl); }
    .resume-stage[b-mo6ykuexei] { padding: 26px 18px; }
    .resume-info[b-mo6ykuexei] { padding: 20px 20px 22px; gap: 10px; }
    .resume-info h2[b-mo6ykuexei] { font-size: var(--fs-xl); }
    .resume-actions .btn[b-mo6ykuexei] { flex: 1; }
    .trips[b-mo6ykuexei] { grid-template-columns: 1fr; gap: var(--sp-4); }
    .people[b-mo6ykuexei] { flex-wrap: wrap; padding: var(--sp-4); }
    .people[b-mo6ykuexei]  .btn, .people .btn[b-mo6ykuexei] { width: 100%; }
}
/* /Components/Pages/Personen.razor.rz.scp.css */
/* Personen (concept 5): a gallery of faces, the groups without a name as one card, the statistics as a tab. */
.pp-top h1[b-a7q9xfn3t5] { margin: var(--sp-2) 0 4px; font-size: var(--fs-2xl); }
.pp-lead[b-a7q9xfn3t5] { margin: 0 0 var(--sp-5); max-width: 46rem; }
.pp-section[b-a7q9xfn3t5] { margin-top: var(--sp-6); }
.pp-head[b-a7q9xfn3t5] { display: flex; align-items: center; flex-wrap: wrap; gap: var(--sp-2) var(--sp-3); margin-bottom: var(--sp-4); }
.pp-head h2[b-a7q9xfn3t5] { margin: 0; }
.pp-count-for[b-a7q9xfn3t5] { font-size: var(--fs-sm); }
.pp-hint[b-a7q9xfn3t5] { margin: var(--sp-4) 0 var(--sp-3); font-size: var(--fs-sm); max-width: 46rem; }
.pp-sub[b-a7q9xfn3t5] { margin: var(--sp-5) 0 var(--sp-2); font: 600 var(--fs-md) var(--font-ui); }
.pp-inline-label[b-a7q9xfn3t5] { margin: 0; }
.pp-book[b-a7q9xfn3t5] { width: auto; max-width: 18rem; }
.pp-section code[b-a7q9xfn3t5] { background: var(--surface-2); padding: 1px 5px; border-radius: 4px; word-break: break-all; }
.pp-more[b-a7q9xfn3t5] { margin-top: var(--sp-4); }
.pp-check[b-a7q9xfn3t5] { display: flex; align-items: center; gap: var(--sp-2); margin: 0 0 var(--sp-3); color: var(--ink); font-size: var(--fs-md); }
.pp-check input[b-a7q9xfn3t5] { width: auto; min-height: 0; }
.pp-msg[b-a7q9xfn3t5] { margin: 0 0 var(--sp-3); }
.pp-next[b-a7q9xfn3t5] { display: block; margin-top: var(--sp-4); padding: var(--sp-3) var(--sp-4); border-radius: var(--r-md); background: var(--good-soft); color: var(--ink); }
.pp-next p[b-a7q9xfn3t5] { margin: 4px 0; }
.pp-next ul[b-a7q9xfn3t5] { margin: 4px 0 var(--sp-2); padding-left: 1.25rem; }

/* ---- the named people: big faces ---- */
.person-grid[b-a7q9xfn3t5] { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(168px, 1fr)); gap: var(--sp-4); }
.person-card[b-a7q9xfn3t5] {
    display: grid; justify-items: center; gap: 6px; height: 100%; padding: var(--sp-4) var(--sp-3) var(--sp-4);
    border-radius: var(--r-lg); background: var(--surface); box-shadow: var(--sh-1); color: var(--ink); text-decoration: none; text-align: center;
    transition: box-shadow var(--t-2), transform var(--t-2);
}
.person-card:hover[b-a7q9xfn3t5] { box-shadow: var(--sh-2); transform: translateY(-2px); }
.person-card img[b-a7q9xfn3t5], .person-initials[b-a7q9xfn3t5] { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; background: var(--surface-2); margin-bottom: 4px; }
.person-initials[b-a7q9xfn3t5] { display: grid; place-items: center; font: 400 2.25rem var(--font-display); color: var(--ink-2); }
.person-name[b-a7q9xfn3t5] { font-weight: 600; font-size: var(--fs-lg); overflow-wrap: anywhere; }
.person-counts[b-a7q9xfn3t5] { font-size: var(--fs-sm); color: var(--ink-3); }

/* ---- the groups without a name: one card ---- */
.pp-open[b-a7q9xfn3t5] { display: flex; align-items: center; gap: var(--sp-5); flex-wrap: wrap; }
.pp-open-faces[b-a7q9xfn3t5] { display: flex; }
.pp-open-faces img[b-a7q9xfn3t5] { width: 56px; height: 56px; border-radius: 50%; object-fit: cover; border: 3px solid var(--surface); margin-left: -12px; background: var(--surface-3); }
.pp-open-faces img:first-child[b-a7q9xfn3t5] { margin-left: 0; }
.pp-open-ico[b-a7q9xfn3t5] { width: 56px; height: 56px; border-radius: 50%; display: grid; place-items: center; background: var(--surface-2); color: var(--good); }
.pp-open-text[b-a7q9xfn3t5] { flex: 1; min-width: 14rem; }
.pp-open-text h2[b-a7q9xfn3t5] { margin: 0 0 4px; font-family: var(--font-ui); font-size: var(--fs-lg); font-weight: 600; }
.pp-open-text p[b-a7q9xfn3t5] { margin: 0; }
.pp-open-actions[b-a7q9xfn3t5] { display: flex; flex-wrap: wrap; gap: var(--sp-2); }

.group-list[b-a7q9xfn3t5] { display: grid; gap: var(--sp-4); }
.group[b-a7q9xfn3t5] { display: grid; gap: var(--sp-3); }
.group-head[b-a7q9xfn3t5] { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
/* room above the faces for their ✕ buttons */
.face-strip[b-a7q9xfn3t5] { list-style: none; margin: 0; padding: 8px 8px 0 0; display: flex; flex-wrap: wrap; gap: 10px; }
.group-more[b-a7q9xfn3t5] { justify-self: start; }
.group-answer[b-a7q9xfn3t5] { display: flex; flex-wrap: wrap; gap: var(--sp-2); justify-self: start; }
.group-name[b-a7q9xfn3t5] { display: flex; gap: var(--sp-2); max-width: 28rem; }
/* 16px at least: phones zoom into smaller fields when they get the focus */
.group-name input[b-a7q9xfn3t5] { flex: 1; min-width: 0; font-size: max(16px, 1rem); }
.group-ignore[b-a7q9xfn3t5] { justify-self: start; }
.pp-flow-pos[b-a7q9xfn3t5] { margin: 0 0 var(--sp-3); font-size: var(--fs-sm); }
/* inside the sheet the group is no card of its own (no card in a card) */
.pp-flow .group[b-a7q9xfn3t5] { box-shadow: none; padding: 0; }

/* ---- loose faces ---- */
.loose-grid[b-a7q9xfn3t5] { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(11rem, 1fr)); gap: var(--sp-3); }
.loose[b-a7q9xfn3t5] { display: grid; justify-items: center; gap: 6px; padding: 10px; }
.loose-name[b-a7q9xfn3t5] { display: flex; gap: 6px; width: 100%; }
.loose-name input[b-a7q9xfn3t5] { flex: 1; min-width: 0; padding: 4px 8px; font-size: max(16px, 1rem); }

/* ---- statistics ---- */
.pp-summary[b-a7q9xfn3t5] { margin: 0 0 var(--sp-3); }
.stats-scroll[b-a7q9xfn3t5] { overflow-x: auto; }
.stats[b-a7q9xfn3t5] { border-collapse: collapse; width: 100%; font-size: var(--fs-sm); }
.stats th[b-a7q9xfn3t5], .stats td[b-a7q9xfn3t5] { padding: 8px 12px; border-bottom: 1px solid var(--line); text-align: left; white-space: nowrap; }
.stats thead th[b-a7q9xfn3t5] { font-weight: 600; font-size: var(--fs-xs); color: var(--ink-3); background: var(--surface-2); }
.stats tbody tr:last-child > *[b-a7q9xfn3t5] { border-bottom: 0; }
.stats .num[b-a7q9xfn3t5] { text-align: right; font-variant-numeric: tabular-nums; }
.stats th[scope=row][b-a7q9xfn3t5] { font-weight: 600; }
.stats th[scope=row] a[b-a7q9xfn3t5] { color: var(--ink); }
.days[b-a7q9xfn3t5] { display: flex; align-items: flex-end; gap: 3px; height: 2.1rem; }
.day-bar[b-a7q9xfn3t5] { position: relative; width: 10px; height: 100%; border-radius: 2px; background: var(--surface-2); }
.day-archive[b-a7q9xfn3t5], .day-book[b-a7q9xfn3t5] { position: absolute; left: 0; right: 0; bottom: 0; border-radius: 2px; }
.day-archive[b-a7q9xfn3t5] { background: var(--accent-soft); }
.day-book[b-a7q9xfn3t5] { background: var(--accent); left: 2px; right: 2px; }
.together[b-a7q9xfn3t5] { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px var(--sp-4); }
.together li[b-a7q9xfn3t5] { display: flex; align-items: center; gap: 6px; }

/* ---- files ---- */
.pp-texts p[b-a7q9xfn3t5] { max-width: 46rem; }

/* "Technik": folded away, the everyday sections come first */
.pp-tech[b-a7q9xfn3t5] { margin-top: var(--sp-7); }
.pp-tech > summary[b-a7q9xfn3t5] { display: flex; align-items: center; gap: var(--sp-2); width: max-content; cursor: pointer; list-style: none; }
.pp-tech > summary[b-a7q9xfn3t5]::-webkit-details-marker { display: none; }
.pp-tech > summary[b-a7q9xfn3t5]::before { content: "▸"; color: var(--ink-3); }
.pp-tech[open] > summary[b-a7q9xfn3t5]::before { content: "▾"; }
.pp-tech > summary h2[b-a7q9xfn3t5] { margin: 0; font-size: var(--fs-lg); }
.pp-tech > .card[b-a7q9xfn3t5] { max-width: 60rem; margin-top: var(--sp-4); }
.face-trips[b-a7q9xfn3t5] { list-style: none; margin: 0 0 var(--sp-2); padding: 0; }
.face-trips > li[b-a7q9xfn3t5] { display: grid; gap: 4px; justify-items: start; padding: 10px 0; border-top: 1px solid var(--line); }
.face-trip-path[b-a7q9xfn3t5] { font-size: var(--fs-sm); overflow-wrap: anywhere; }

@media (max-width: 760px) {
    .person-grid[b-a7q9xfn3t5] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-3); }
    .person-card img[b-a7q9xfn3t5], .person-initials[b-a7q9xfn3t5] { width: 88px; height: 88px; }
    .person-name[b-a7q9xfn3t5] { font-size: var(--fs-md); }
    .pp-open[b-a7q9xfn3t5] { gap: var(--sp-3); }
    .pp-open-actions[b-a7q9xfn3t5] { width: 100%; }
    .pp-open-actions[b-a7q9xfn3t5]  .btn { flex: 1; }
    .group-name .btn[b-a7q9xfn3t5] { padding-inline: 12px; }
}
/* /Components/Pages/PersonPage.razor.rz.scp.css */
/* One person: photos first, small numbers per book, editing behind "⋯". */
.ps-back[b-9rvilyv3ve] { margin: 0 0 var(--sp-3); }
.ps-back a[b-9rvilyv3ve] { display: inline-flex; align-items: center; gap: 4px; color: var(--ink-2); text-decoration: none; font-size: var(--fs-sm); font-weight: 600; }
.ps-back a:hover[b-9rvilyv3ve] { color: var(--ink); }
.ps-top[b-9rvilyv3ve] { display: flex; align-items: center; gap: var(--sp-5); flex-wrap: wrap; }
.ps-face[b-9rvilyv3ve] { width: 112px; height: 112px; border-radius: 50%; object-fit: cover; background: var(--surface-2); box-shadow: var(--sh-1); }
.ps-initials[b-9rvilyv3ve] { display: grid; place-items: center; font: 400 2.25rem var(--font-display); color: var(--ink-2); }
.ps-title[b-9rvilyv3ve] { flex: 1; min-width: 14rem; }
.ps-title h1[b-9rvilyv3ve] { margin: 0 0 4px; }
.ps-counts[b-9rvilyv3ve] { margin: 0; }
.ps-books[b-9rvilyv3ve] { display: flex; flex-wrap: wrap; gap: 6px; margin-top: var(--sp-2); }
.ps-note[b-9rvilyv3ve] { margin: var(--sp-2) 0 0; color: var(--ink-2); }
.ps-msg[b-9rvilyv3ve] { margin: var(--sp-4) 0 0; }

.ps-panel[b-9rvilyv3ve] { margin-top: var(--sp-5); max-width: 40rem; display: grid; gap: var(--sp-2); }
.ps-panel h2[b-9rvilyv3ve] { margin: 0; font-family: var(--font-ui); font-size: var(--fs-lg); font-weight: 600; }
.ps-actions[b-9rvilyv3ve] { margin-top: var(--sp-3); }
.ps-into[b-9rvilyv3ve] { width: auto; min-width: 12rem; }
.ps-confirm[b-9rvilyv3ve] { display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2); padding: var(--sp-3); border-radius: var(--r-md); background: var(--error-soft); }
.ps-close[b-9rvilyv3ve] { justify-self: start; }

.ps-section[b-9rvilyv3ve] { margin-top: var(--sp-6); }
.ps-head[b-9rvilyv3ve] { display: flex; align-items: center; flex-wrap: wrap; gap: var(--sp-2) var(--sp-3); margin-bottom: var(--sp-3); }
.ps-head h2[b-9rvilyv3ve], .ps-section > h2[b-9rvilyv3ve] { margin: 0; }
.ps-section > h2[b-9rvilyv3ve] { margin-bottom: var(--sp-3); }
.ps-hint[b-9rvilyv3ve] { margin: 0 0 var(--sp-3); font-size: var(--fs-sm); }
.ps-sub[b-9rvilyv3ve] { margin: var(--sp-5) 0 var(--sp-2); font: 600 var(--fs-md) var(--font-ui); }
.ps-more[b-9rvilyv3ve] { margin-top: var(--sp-3); }

/* the photos: a justified grid like Fotos */
.ps-photos[b-9rvilyv3ve] { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px; }
.ps-photos[b-9rvilyv3ve]::after { content: ""; flex-grow: 999999; }
.ps-photos li[b-9rvilyv3ve] { flex-grow: calc(var(--ar) * 100); flex-basis: calc(var(--ar) * 180px); aspect-ratio: var(--ar); max-height: 290px; border-radius: var(--r-md); overflow: hidden; background: var(--surface-3); }
.ps-photos a[b-9rvilyv3ve] { display: block; width: 100%; height: 100%; }
.ps-photos img[b-9rvilyv3ve] { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .5s var(--ease); }
.ps-photos li:hover img[b-9rvilyv3ve] { transform: scale(1.035); }

.ps-faces[b-9rvilyv3ve] { list-style: none; margin: 0; padding: 8px 8px 0 0; display: flex; flex-wrap: wrap; gap: var(--sp-3); }
.ps-suggestion[b-9rvilyv3ve] { display: grid; justify-items: center; gap: 6px; }
.ps-yesno[b-9rvilyv3ve] { display: flex; gap: 6px; }

.ps-scroll[b-9rvilyv3ve] { overflow-x: auto; }
.ps-table[b-9rvilyv3ve] { border-collapse: collapse; width: 100%; font-size: var(--fs-sm); }
.ps-table th[b-9rvilyv3ve], .ps-table td[b-9rvilyv3ve] { padding: 8px 12px; border-bottom: 1px solid var(--line); text-align: left; white-space: nowrap; }
.ps-table thead th[b-9rvilyv3ve] { font-size: var(--fs-xs); color: var(--ink-3); background: var(--surface-2); font-weight: 600; }
.ps-table tbody tr:last-child > *[b-9rvilyv3ve] { border-bottom: 0; }
.ps-table .num[b-9rvilyv3ve] { text-align: right; font-variant-numeric: tabular-nums; }
.ps-table th[scope=row] a[b-9rvilyv3ve] { color: var(--ink); }
.ps-days[b-9rvilyv3ve] { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; max-width: 40rem; }
.ps-day[b-9rvilyv3ve] { display: grid; grid-template-columns: 9rem minmax(0, 1fr) 3rem; align-items: center; gap: var(--sp-2); font-size: var(--fs-sm); }
.ps-day-track[b-9rvilyv3ve] { position: relative; height: 10px; border-radius: 5px; background: var(--surface-2); }
.ps-day-archive[b-9rvilyv3ve], .ps-day-book[b-9rvilyv3ve] { position: absolute; left: 0; top: 0; bottom: 0; border-radius: 5px; }
.ps-day-archive[b-9rvilyv3ve] { background: var(--accent-soft); }
.ps-day-book[b-9rvilyv3ve] { background: var(--accent); }
.ps-day-num[b-9rvilyv3ve] { text-align: right; color: var(--ink-3); font-variant-numeric: tabular-nums; }

@media (max-width: 760px) {
    .ps-top[b-9rvilyv3ve] { gap: var(--sp-3); }
    .ps-face[b-9rvilyv3ve] { width: 80px; height: 80px; }
    .ps-photos[b-9rvilyv3ve] { gap: 3px; }
    .ps-photos li[b-9rvilyv3ve] { flex-basis: calc(var(--ar) * 92px); border-radius: 3px; }
    .ps-day[b-9rvilyv3ve] { grid-template-columns: 6.5rem minmax(0, 1fr) 2.5rem; }
}
/* /Components/Pages/Sichten.razor.rz.scp.css */
/* Sichten: the large view (PhotoViewer) with a progress bar; here only what Sichten adds to it. */
.sichten[b-r35msfy5wd] { min-height: 40vh; }
.si-pad[b-r35msfy5wd] { padding: var(--sp-4) 0; }

/* which photos: two small selects in the dark top bar */
.si-scope[b-r35msfy5wd] { display: flex; gap: 6px; min-width: 0; }
.si-scope select[b-r35msfy5wd] {
    width: auto; min-height: 32px; padding: 4px 28px 4px 10px; font-size: var(--fs-sm); border-radius: var(--r-pill);
    background-color: rgba(255, 255, 255, .08); color: var(--stage-ink); border-color: rgba(255, 255, 255, .14); color-scheme: dark;
}

.si-more[b-r35msfy5wd] { display: flex; justify-content: center; flex-wrap: wrap; gap: var(--sp-2); margin-top: 10px; }
.si-more[b-r35msfy5wd]  .btn-ghost { color: var(--stage-ink-2); background: transparent; }
.si-more[b-r35msfy5wd]  .btn-ghost:hover { background: rgba(255, 255, 255, .1); color: var(--stage-ink); }
.si-more[b-r35msfy5wd]  .ask-knipsi { background: rgba(255, 255, 255, .08); color: var(--stage-ink-2); }

/* the closing card and the series comparison take the place of the photo */
.si-end[b-r35msfy5wd] { display: grid; justify-items: center; gap: var(--sp-3); max-width: 34rem; padding: var(--sp-6); text-align: center; color: var(--stage-ink); }
.si-end[b-r35msfy5wd]  .i-xl { color: var(--good); }
.si-end-title[b-r35msfy5wd] { margin: 0; font-family: var(--font-display); font-size: var(--fs-xl); line-height: 1.25; }
.si-end-text[b-r35msfy5wd] { margin: 0; color: var(--stage-ink-2); }
.si-end-actions[b-r35msfy5wd] { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--sp-2); margin-top: var(--sp-2); }
.si-series[b-r35msfy5wd] {
    width: min(1100px, 100%); max-height: 100%; overflow: auto; padding: var(--sp-4); border-radius: var(--r-lg);
    background: var(--surface); color: var(--ink); color-scheme: light dark; box-shadow: var(--sh-3);
}

@media (max-width: 760px) {
    /* the selects give way, "Details" and the close button stay on screen */
    .si-scope select[b-r35msfy5wd] { max-width: 9.5rem; min-width: 0; flex: 1 1 0; text-overflow: ellipsis; }
    .si-series[b-r35msfy5wd] { border-radius: 0; padding: var(--sp-3); }
    .si-end[b-r35msfy5wd] { padding: var(--sp-4); }
}
/* /Components/Parts/FacePhotoViewer.razor.rz.scp.css */
.fv-veil[b-gh7isb95xr] {
    position: fixed; inset: 0; z-index: 70; display: grid; place-items: center; padding: .75rem;
    background: rgba(43, 39, 35, .55);
}
.fv[b-gh7isb95xr] { width: min(64rem, 100%); max-height: 100%; overflow: auto; display: grid; justify-items: center; gap: .5rem; }
.fv-head[b-gh7isb95xr] { width: 100%; }
.fv-title[b-gh7isb95xr] { overflow-wrap: anywhere; }
.fv-photo[b-gh7isb95xr] { position: relative; max-width: 100%; border-radius: 5px; overflow: hidden; background: var(--surface-2); }
.fv-photo img[b-gh7isb95xr] { display: block; width: 100%; height: 100%; object-fit: contain; }
.fv-box[b-gh7isb95xr] {
    position: absolute; border: 2px solid rgba(255, 255, 255, .75); border-radius: 4px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .35); pointer-events: none;
}
.fv-box.is-current[b-gh7isb95xr] { border: 3px solid var(--accent); box-shadow: 0 0 0 2px #fff, 0 1px 6px rgba(0, 0, 0, .5); }
.fv-name[b-gh7isb95xr] {
    position: absolute; left: -2px; top: 100%; margin-top: 3px; padding: 0 .35rem; border-radius: 4px; white-space: nowrap;
    font-size: .75rem; color: #fff; background: rgba(43, 39, 35, .75);
}
.fv-box.is-current .fv-name[b-gh7isb95xr] { background: var(--accent); }
.fv-note[b-gh7isb95xr], .fv-meta[b-gh7isb95xr] { margin: 0; justify-self: start; font-size: .88rem; }
/* /Components/Parts/FaceTile.razor.rz.scp.css */
.face-tile[b-d42kx31eu3] { position: relative; width: 4.75rem; height: 4.75rem; }
.face-tile.is-large[b-d42kx31eu3] { width: 6rem; height: 6rem; }
.face-open[b-d42kx31eu3] {
    display: block; width: 100%; height: 100%; padding: 0; border: 0; border-radius: 6px; overflow: hidden;
    background: var(--surface-2); cursor: zoom-in;
}
.face-open img[b-d42kx31eu3] { display: block; width: 100%; height: 100%; object-fit: cover; }
.face-open:focus-visible[b-d42kx31eu3] { outline: 3px solid var(--accent); outline-offset: 1px; }
.face-tile.is-starred .face-open[b-d42kx31eu3] { box-shadow: 0 0 0 3px var(--accent); }

/* corner buttons: big enough for a finger, but off the face */
.face-out[b-d42kx31eu3], .face-star[b-d42kx31eu3] {
    position: absolute; top: -.45rem; width: 1.75rem; height: 1.75rem; padding: 0;
    border: 1px solid var(--line); border-radius: 50%; background: rgba(255, 255, 255, .95);
    font: inherit; font-size: .8rem; line-height: 1; cursor: pointer; box-shadow: 0 1px 3px rgba(0, 0, 0, .2);
}
.face-out[b-d42kx31eu3] { right: -.45rem; color: var(--bad); }
.face-out:hover[b-d42kx31eu3] { border-color: var(--bad); }
.face-star[b-d42kx31eu3] { left: -.45rem; color: var(--ink-soft); }
.face-star:hover[b-d42kx31eu3] { border-color: var(--accent); color: var(--accent); }
.face-star.on[b-d42kx31eu3] { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); }
.face-out:focus-visible[b-d42kx31eu3], .face-star:focus-visible[b-d42kx31eu3] { outline: 2px solid var(--accent); outline-offset: 1px; }
.face-out:disabled[b-d42kx31eu3], .face-star:disabled[b-d42kx31eu3] { opacity: .5; cursor: default; }

@media (max-width: 600px) {
    .face-tile[b-d42kx31eu3] { width: 4.25rem; height: 4.25rem; }
    .face-tile.is-large[b-d42kx31eu3] { width: 5.25rem; height: 5.25rem; }
}
/* /Components/Parts/PhotoDetail.razor.rz.scp.css */
/* Editing a photo inside the dark details of the large view: fields on the stage colours, saved one by one. */
.detail[b-xabd5a18no] { display: grid; gap: var(--sp-4); color: var(--stage-ink); outline: none; }

.detail-media[b-xabd5a18no] { display: grid; justify-items: center; gap: var(--sp-1); }
.focus-box[b-xabd5a18no] { position: relative; max-width: 100%; background: rgba(255, 255, 255, .06); border-radius: var(--r-sm); overflow: hidden; cursor: crosshair; }
.focus-box img[b-xabd5a18no] { display: block; width: 100%; height: 100%; object-fit: contain; }
.focus-marker[b-xabd5a18no] {
    position: absolute; width: 22px; height: 22px; margin: -11px 0 0 -11px; border-radius: 50%;
    border: 2px solid var(--on-photo); box-shadow: 0 0 0 2px var(--accent), 0 1px 4px rgba(0, 0, 0, .5); pointer-events: none;
}
.focus-marker[b-xabd5a18no]::after { content: ""; position: absolute; inset: 7px; border-radius: 50%; background: var(--accent); }
.detail-media video[b-xabd5a18no] { display: block; width: 100%; max-height: 40vh; background: var(--stage); border-radius: var(--r-sm); }
.detail-hint[b-xabd5a18no] { font-size: var(--fs-xs); margin: 0; justify-self: start; color: var(--stage-ink-2); }

/* fields on the dark panel */
.detail[b-xabd5a18no]  label, .detail label[b-xabd5a18no] { color: var(--stage-ink-2); font-size: var(--fs-xs); margin: var(--sp-2) 0 var(--sp-1); }
.detail input[type=text][b-xabd5a18no], .detail input[type=datetime-local][b-xabd5a18no], .detail select[b-xabd5a18no], .detail textarea[b-xabd5a18no] {
    background: rgba(255, 255, 255, .06); color: var(--stage-ink); border-color: rgba(255, 255, 255, .14); color-scheme: dark;
}
.detail input:focus[b-xabd5a18no], .detail select:focus[b-xabd5a18no], .detail textarea:focus[b-xabd5a18no] { border-color: var(--accent); }
.detail-form[b-xabd5a18no] { margin: 0; }
.detail-pair[b-xabd5a18no] { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--sp-3); }
.detail-timehint[b-xabd5a18no] { font-size: var(--fs-xs); color: var(--stage-ink-2); margin: var(--sp-1) 0 0; }
.detail-timehint.is-warn[b-xabd5a18no] { color: var(--warn); }
.detail-check[b-xabd5a18no] { display: flex; align-items: flex-start; gap: var(--sp-2); margin-top: var(--sp-3); color: var(--stage-ink); font-size: var(--fs-sm); }
.detail-check input[b-xabd5a18no] { width: auto; min-height: 0; margin-top: 3px; }
.detail-status[b-xabd5a18no] { margin: var(--sp-3) 0 0; font-size: var(--fs-xs); color: var(--stage-ink-2); min-height: 1.2em; }
.detail-msg[b-xabd5a18no] { display: inline-flex; align-items: center; gap: 4px; color: var(--good); }
.detail-msg.is-bad[b-xabd5a18no] { color: var(--error); }
.detail-msg[b-xabd5a18no]  .i { width: 14px; height: 14px; }
.faint[b-xabd5a18no] { color: var(--stage-ink-2); opacity: .8; }

.facts[b-xabd5a18no] { margin: 0; padding-top: var(--sp-3); border-top: 1px solid rgba(255, 255, 255, .1); display: grid; gap: 6px; }
.facts > div[b-xabd5a18no] { display: grid; grid-template-columns: 7rem minmax(0, 1fr); gap: var(--sp-2); }
.facts dt[b-xabd5a18no] { color: var(--stage-ink-2); font-size: var(--fs-xs); }
.facts dd[b-xabd5a18no] { margin: 0; font-size: var(--fs-sm); overflow-wrap: anywhere; }
.facts a[b-xabd5a18no], .person-chip a[b-xabd5a18no] { color: var(--accent-text); }

/* ---- persons on the photo ---- */
.face-box[b-xabd5a18no] {
    position: absolute; padding: 0; border: 2px solid rgba(255, 255, 255, .85); border-radius: 4px; background: transparent;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, .4); cursor: pointer;
}
.face-box:hover[b-xabd5a18no], .face-box:focus-visible[b-xabd5a18no] { border-color: var(--accent); outline: none; }
.face-box.is-named[b-xabd5a18no] { border-color: var(--on-photo); }
.face-box.is-naming[b-xabd5a18no] { border: 3px solid var(--accent); box-shadow: 0 0 0 2px var(--on-photo); }
.face-label[b-xabd5a18no] {
    position: absolute; left: -2px; top: 100%; margin-top: 3px; padding: 0 6px; border-radius: 4px; white-space: nowrap;
    font-size: var(--fs-xs); line-height: 1.5; color: var(--on-photo); background: rgba(18, 18, 17, .75); pointer-events: none;
}
.face-box:not(.is-named) .face-label[b-xabd5a18no] { background: var(--accent); }

.detail-people[b-xabd5a18no] { padding: var(--sp-3); border-radius: var(--r-md); background: rgba(255, 255, 255, .05); }
.people-row[b-xabd5a18no] { display: flex; flex-wrap: wrap; align-items: center; gap: 6px var(--sp-2); }
.people-label[b-xabd5a18no] { font-size: var(--fs-xs); color: var(--stage-ink-2); margin-right: 2px; }
.person-chip[b-xabd5a18no] {
    display: inline-flex; align-items: center; gap: 2px; padding: 2px 2px 2px 10px; border-radius: var(--r-pill);
    background: rgba(255, 255, 255, .08); font-size: var(--fs-sm);
}
.person-chip a[b-xabd5a18no] { color: var(--stage-ink); text-decoration: none; }
.person-chip a:hover[b-xabd5a18no] { color: var(--accent-text); }
.chip-x[b-xabd5a18no] {
    width: 26px; height: 26px; padding: 0; border: 0; border-radius: 50%; background: transparent;
    color: var(--stage-ink-2); font: inherit; font-size: var(--fs-xs); cursor: pointer;
}
.chip-x:hover[b-xabd5a18no] { background: var(--error-soft); color: var(--error); }
.people-toggle[b-xabd5a18no] { display: inline-flex; align-items: center; gap: 6px; margin: 0 0 0 auto; color: var(--stage-ink); font-size: var(--fs-sm); }
.people-toggle input[b-xabd5a18no] { width: auto; min-height: 0; }
.people-form label[b-xabd5a18no] { margin-top: var(--sp-2); }
.people-inline[b-xabd5a18no] { display: flex; flex-wrap: wrap; gap: 6px; }
/* 16px at least: phones zoom into smaller fields when they get the focus */
.people-inline input[b-xabd5a18no] { flex: 1 1 10rem; min-width: 0; width: auto; font-size: max(16px, 1rem); }
.people-msg[b-xabd5a18no] { margin: var(--sp-2) 0 0; }
.detail .btn[b-xabd5a18no] { background: rgba(255, 255, 255, .1); color: var(--stage-ink); }
.detail .btn:hover[b-xabd5a18no] { background: rgba(255, 255, 255, .2); }
.detail .btn-primary[b-xabd5a18no] { background: var(--accent); color: var(--accent-ink); }
/* /Components/Parts/PhotoTile.razor.rz.scp.css */
/* One tile of the justified grid (fotos.html): its width follows the aspect ratio (--ar), the row height comes from the
   page (--row-h on .jg). No script: flex-grow does the justifying. */
.tile[b-wlodnngc3z] {
    position: relative; flex-grow: calc(var(--ar) * 100); flex-basis: calc(var(--ar) * var(--row-h, 210px));
    aspect-ratio: var(--ar); max-height: calc(var(--row-h, 210px) * 1.6); margin: 0;
    border-radius: var(--r-md); overflow: hidden; background: var(--surface-3); isolation: isolate; container-type: inline-size;
    transition: background var(--t-2);
}
.t-open[b-wlodnngc3z] {
    position: absolute; inset: 0; z-index: 1; display: block; width: 100%; height: 100%; padding: 0; border: 0; border-radius: inherit;
    background: none; cursor: zoom-in;
}
.t-open:focus-visible[b-wlodnngc3z] { box-shadow: inset 0 0 0 3px var(--accent); }
.t-open img[b-wlodnngc3z] {
    display: block; width: 100%; height: 100%; object-fit: cover;
    transition: transform .5s var(--ease), opacity var(--t-2), filter var(--t-2), border-radius var(--t-2);
}
.tile:hover .t-open img[b-wlodnngc3z] { transform: scale(1.035); }
.t-video[b-wlodnngc3z] { display: grid; place-content: center; justify-items: center; gap: 6px; width: 100%; height: 100%; color: var(--ink-2); background: var(--surface-2); }
.t-file[b-wlodnngc3z] { font-size: var(--fs-xs); color: var(--ink-3); max-width: 90%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* sorted out: pale until the pointer is on it */
.tile.is-out .t-open img[b-wlodnngc3z] { opacity: .34; filter: grayscale(.75); }
.tile.is-out:hover .t-open img[b-wlodnngc3z] { opacity: 1; filter: none; }
.tile.is-hidden-photo .t-open img[b-wlodnngc3z] { opacity: .5; }
.tile.is-current[b-wlodnngc3z] { box-shadow: 0 0 0 3px var(--accent); }

/* marking: the circle top left, from hovering or once anything is marked */
.t-sel[b-wlodnngc3z] {
    position: absolute; z-index: 3; top: 8px; left: 8px; width: 26px; height: 26px; padding: 0; border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, .95); background: rgba(0, 0, 0, .18); color: transparent; display: grid; place-items: center;
    opacity: 0; transition: opacity var(--t-1), background var(--t-1);
}
.t-sel[b-wlodnngc3z]  .i { width: 14px; height: 14px; stroke-width: 3; }
.tile:hover .t-sel[b-wlodnngc3z], .t-sel:focus-visible[b-wlodnngc3z], .tile:has(.t-open[aria-pressed]) .t-sel[b-wlodnngc3z] { opacity: 1; }
.tile.is-sel[b-wlodnngc3z] { background: var(--accent-soft); }
.tile.is-sel .t-open img[b-wlodnngc3z] { transform: scale(.9); border-radius: var(--r-sm); }
.tile.is-sel .t-sel[b-wlodnngc3z] { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); opacity: 1; }

/* the book mark top right (kit .inbook-mark: accent with a white ring, visible on red motifs) */
.t-book[b-wlodnngc3z] { position: absolute; z-index: 3; top: 8px; right: 8px; padding: 0; border: 0; transition: transform var(--t-1); }
.t-book.inbook-mark[b-wlodnngc3z] { width: 30px; height: 30px; cursor: pointer; }
.t-book.inbook-mark[b-wlodnngc3z]  .i { width: 16px; height: 16px; }
.t-book:hover[b-wlodnngc3z] { transform: scale(1.1); }
.t-book.is-queued[b-wlodnngc3z] { background: var(--accent-hover); }
.t-book.is-missing[b-wlodnngc3z] { backdrop-filter: blur(4px); }
.t-good[b-wlodnngc3z] {
    width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center;
    background: var(--on-photo); color: var(--good); box-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}
.t-good[b-wlodnngc3z]  .i { width: 15px; height: 15px; stroke-width: 2.6; }

/* ★ Lieblingsfoto bottom left; it gives way to the buttons on hover */
.t-star[b-wlodnngc3z] { position: absolute; z-index: 2; left: 9px; bottom: 8px; width: 22px; height: 22px; color: var(--star, var(--on-photo)); filter: drop-shadow(0 1px 3px rgba(0, 0, 0, .55)); transition: opacity var(--t-1); }
.t-star[b-wlodnngc3z]  .i { width: 22px; height: 22px; stroke: none; }
.tile:hover .t-star[b-wlodnngc3z] { opacity: 0; }

.t-flags[b-wlodnngc3z] { position: absolute; z-index: 2; right: 8px; bottom: 8px; display: flex; gap: 4px; transition: opacity var(--t-1); }
.tile:hover .t-flags[b-wlodnngc3z] { opacity: 0; }
.t-stack[b-wlodnngc3z], .t-flag[b-wlodnngc3z] {
    display: inline-flex; align-items: center; gap: 4px; height: 24px; padding: 0 8px; border-radius: var(--r-pill);
    background: rgba(18, 18, 17, .62); color: var(--on-photo); font-size: var(--fs-xs); font-weight: 600; backdrop-filter: blur(6px);
}
.t-stack[b-wlodnngc3z]  .i, .t-flag[b-wlodnngc3z]  .i { width: 14px; height: 14px; }
/* a series: the photo lies on a small stack */
.tile[data-series]:not([data-series=""])[b-wlodnngc3z] { box-shadow: 4px -4px 0 -1px var(--surface-3), 8px -8px 0 -2px var(--line-strong); overflow: visible; }
.tile[data-series]:not([data-series=""]) .t-open[b-wlodnngc3z] { overflow: hidden; }

/* the buttons that come with the pointer */
.t-actions[b-wlodnngc3z] {
    position: absolute; z-index: 2; left: 0; right: 0; bottom: 0; padding: 34px 8px 8px;
    display: flex; align-items: center; justify-content: space-between; gap: 6px;
    background: linear-gradient(transparent, rgba(0, 0, 0, .55)); opacity: 0; transform: translateY(6px); pointer-events: none;
    transition: opacity var(--t-1), transform var(--t-2) var(--ease);
}
.tile:hover .t-actions[b-wlodnngc3z], .t-actions:focus-within[b-wlodnngc3z] { opacity: 1; transform: none; pointer-events: auto; }
.t-picks[b-wlodnngc3z] { display: flex; gap: 2px; padding: 2px; border-radius: var(--r-pill); background: rgba(18, 18, 17, .55); backdrop-filter: blur(8px); }
.t-picks button[b-wlodnngc3z] {
    width: 28px; height: 28px; padding: 0; border: 0; border-radius: 50%; background: transparent;
    color: rgba(255, 255, 255, .85); display: grid; place-items: center;
}
.t-picks button:hover[b-wlodnngc3z] { background: rgba(255, 255, 255, .18); color: var(--on-photo); }
.t-picks button[b-wlodnngc3z]  .i { width: 15px; height: 15px; stroke-width: 2.4; }
.t-picks button[aria-pressed="true"][b-wlodnngc3z] { background: var(--on-photo); color: var(--stage); }
.t-picks button[data-pick="hero"][aria-pressed="true"][b-wlodnngc3z]  .i { fill: currentColor; }
/* the suggestion of the image analysis: a dashed ring until somebody decides */
.t-picks button.is-suggested[b-wlodnngc3z] { box-shadow: inset 0 0 0 1.5px rgba(255, 255, 255, .75); }
.t-bookbtn[b-wlodnngc3z] {
    height: 32px; display: inline-flex; align-items: center; gap: 6px; padding: 0 12px 0 9px; border: 0; border-radius: var(--r-pill);
    background: var(--on-photo); color: var(--stage); font-weight: 600; font-size: var(--fs-xs); white-space: nowrap;
}
.t-bookbtn[b-wlodnngc3z]  .i { width: 15px; height: 15px; stroke-width: 2.2; }
.t-bookbtn.on[b-wlodnngc3z] { background: rgba(18, 18, 17, .6); color: var(--on-photo); backdrop-filter: blur(8px); }
.t-bookbtn.on:hover[b-wlodnngc3z] { background: var(--on-photo); color: var(--accent-text); }
@container (max-width: 250px) {
    .t-bookbtn span[b-wlodnngc3z] { display: none; }
    .t-bookbtn[b-wlodnngc3z] { padding: 0; width: 32px; justify-content: center; }
}
@container (max-width: 175px) {
    .t-picks button[data-pick="hero"][b-wlodnngc3z], .t-picks button[data-pick="vielleicht"][b-wlodnngc3z] { display: none; }
}

/* phones: no buttons on tiles, only the marks; a long press marks */
@media (max-width: 760px) {
    .tile[b-wlodnngc3z] { border-radius: 3px; }
    .tile:hover .t-open img[b-wlodnngc3z] { transform: none; }
    .t-actions[b-wlodnngc3z], .t-sel[b-wlodnngc3z] { display: none; }
    .tile.is-sel .t-sel[b-wlodnngc3z] { display: grid; top: 5px; left: 5px; width: 22px; height: 22px; }
    .t-book[b-wlodnngc3z] { top: 5px; right: 5px; }
    .t-book.inbook-mark[b-wlodnngc3z] { width: 22px; height: 22px; }
    .t-book.inbook-mark[b-wlodnngc3z]  .i { width: 12px; height: 12px; }
    .t-good[b-wlodnngc3z] { width: 20px; height: 20px; }
    .t-star[b-wlodnngc3z] { left: 5px; bottom: 4px; width: 16px; height: 16px; }
    .t-star[b-wlodnngc3z]  .i { width: 16px; height: 16px; }
    .tile:hover .t-star[b-wlodnngc3z], .tile:hover .t-flags[b-wlodnngc3z] { opacity: 1; }
    .t-flags[b-wlodnngc3z] { right: 4px; bottom: 4px; }
    .t-stack[b-wlodnngc3z], .t-flag[b-wlodnngc3z] { height: 20px; padding: 0 6px; }
}
/* /Components/Parts/PhotoViewer.razor.rz.scp.css */
/* The large view (fotos.html, "Großansicht / Sichten") on top of the kit's Lightbox: the page's own parts are styled
   here, the kit's frame through ::deep. Always dark (--stage tokens), in both themes. */

/* ---- frame: photo column, details column (open with "Details" or I) ---- */
.pv-host[b-3uutlpu3x3]  .lightbox.pv { grid-template-columns: minmax(0, 1fr) 0; grid-template-rows: auto minmax(0, 1fr) auto; }
.pv-host[b-3uutlpu3x3]  .lightbox.pv.has-info { grid-template-columns: minmax(0, 1fr) 360px; }
/* Sichten: the progress bar is a row of its own */
.pv-host[b-3uutlpu3x3]  .lightbox.pv.is-review { grid-template-rows: auto auto minmax(0, 1fr) auto; }
.pv-host[b-3uutlpu3x3]  .pv .lightbox-top { grid-column: 1; gap: var(--sp-3); padding: var(--sp-3) var(--sp-4); }
.pv-host[b-3uutlpu3x3]  .pv .lightbox-title { display: none; }
.pv-host[b-3uutlpu3x3]  .pv .lightbox-progress { grid-column: 1; margin: 0 var(--sp-4); border-radius: 2px; overflow: hidden; }
.pv-host[b-3uutlpu3x3]  .pv .lightbox-stage { grid-column: 1; padding: 4px 76px; overflow: hidden; }
.pv-host[b-3uutlpu3x3]  .pv .lightbox-nav { width: 48px; height: 48px; }
.pv-host[b-3uutlpu3x3]  .pv .lightbox-aside {
    grid-column: 2; grid-row: 1 / -1; width: auto; min-width: 0; padding: 18px 20px; overflow: auto;
    background: var(--stage-2); border-left: 1px solid rgba(255, 255, 255, .08);
}
.pv-host[b-3uutlpu3x3]  .pv .lightbox-bottom { grid-column: 1; display: block; padding: var(--sp-3) var(--sp-4) var(--sp-4); }

.pv-title[b-3uutlpu3x3] { flex: 1; min-width: 0; line-height: 1.3; }
.pv-title b[b-3uutlpu3x3] { display: block; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.pv-title span[b-3uutlpu3x3] { display: block; font-size: var(--fs-sm); color: var(--stage-ink-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.pv-photo[b-3uutlpu3x3] { display: block; max-width: 100%; max-height: 100%; object-fit: contain; border-radius: 6px; box-shadow: 0 30px 80px rgba(0, 0, 0, .6); }
.pv-video[b-3uutlpu3x3] { display: block; max-width: 100%; max-height: 100%; border-radius: 6px; background: var(--stage); }
.pv-preload[b-3uutlpu3x3] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }

/* ---- the dock under the photo: the decision for the trip and the book ---- */
.dock[b-3uutlpu3x3] { display: flex; justify-content: center; align-items: flex-end; gap: 28px; flex-wrap: wrap; }
.dock-group[b-3uutlpu3x3] { display: grid; gap: var(--sp-2); justify-items: center; }
.dock-label[b-3uutlpu3x3] {
    display: flex; align-items: center; gap: 6px; min-height: 18px;
    font-size: var(--fs-xs); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--stage-ink-2);
}
.dock-label .ki[b-3uutlpu3x3] { display: inline-flex; align-items: center; gap: 4px; text-transform: none; letter-spacing: 0; font-weight: 400; color: var(--warn); }
.dock-label .ki[b-3uutlpu3x3]  .i { width: 13px; height: 13px; }
.dock-seg[b-3uutlpu3x3] { display: flex; gap: 4px; padding: 4px; border-radius: 16px; background: rgba(255, 255, 255, .07); }
.dock-seg button[b-3uutlpu3x3] {
    display: grid; justify-items: center; gap: 2px; min-width: 92px; padding: 8px 12px 7px; border: 0; border-radius: var(--r-md);
    background: transparent; color: var(--stage-ink-2);
}
.dock-seg button:hover[b-3uutlpu3x3] { background: rgba(255, 255, 255, .1); color: var(--stage-ink); }
.dock-seg button[b-3uutlpu3x3]  .i { width: 20px; height: 20px; }
.dock-seg button span[b-3uutlpu3x3] { font-size: var(--fs-sm); font-weight: 600; }
.dock-seg button kbd[b-3uutlpu3x3] { background: none; padding: 0; color: var(--stage-ink-2); font-size: 10px; }
.dock-seg button.is-suggested[b-3uutlpu3x3] { box-shadow: inset 0 0 0 1.5px var(--warn); color: var(--stage-ink); }
.dock-seg button[aria-pressed="true"][b-3uutlpu3x3] { background: var(--stage-ink); color: var(--stage); }
.dock-seg button[aria-pressed="true"] kbd[b-3uutlpu3x3] { color: var(--ink-3); }
.dock-seg button[data-pick="hero"][aria-pressed="true"][b-3uutlpu3x3]  .i { fill: currentColor; }
.dock-seg button[data-pick="nein"][aria-pressed="true"][b-3uutlpu3x3] { background: rgba(255, 255, 255, .28); color: var(--stage-ink); }
.dock-seg button:disabled[b-3uutlpu3x3] { opacity: .6; cursor: default; }
.dock-book[b-3uutlpu3x3] { display: flex; align-items: center; gap: 10px; min-height: 62px; }
.dock-book .state[b-3uutlpu3x3] { display: flex; align-items: center; gap: var(--sp-2); font-size: var(--fs-sm); color: var(--stage-ink-2); }
.dock-book .dot[b-3uutlpu3x3] { width: 26px; height: 26px; border-radius: 50%; display: grid; place-items: center; background: var(--accent); color: var(--accent-ink); }
.dock-book .dot[b-3uutlpu3x3]  .i { width: 14px; height: 14px; stroke-width: 2.4; }
.dock-book[b-3uutlpu3x3]  kbd { background: none; padding: 0 0 0 4px; color: inherit; opacity: .7; font-size: 10px; }
.pv-keys[b-3uutlpu3x3] { margin-top: 10px; font-size: var(--fs-xs); color: var(--stage-ink-2); text-align: center; opacity: .75; }

/* ---- details ---- */
.pv-info[b-3uutlpu3x3] { display: grid; align-content: start; gap: 18px; color: var(--stage-ink); }
.pv-info h3[b-3uutlpu3x3] { margin: 0; font-family: var(--font-display); font-weight: 400; font-size: var(--fs-lg); line-height: 1.25; }
.info-row[b-3uutlpu3x3] { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 10px; font-size: var(--fs-sm); color: var(--stage-ink-2); }
.info-row[b-3uutlpu3x3]  .i { width: 18px; height: 18px; margin-top: 1px; color: var(--stage-ink-2); opacity: .8; }
.info-faint[b-3uutlpu3x3] { color: var(--stage-ink-2); opacity: .75; }
.info-people[b-3uutlpu3x3] { display: flex; flex-wrap: wrap; gap: 6px; }
.info-people[b-3uutlpu3x3]  .badge { background: rgba(255, 255, 255, .08); color: var(--stage-ink); }
.info-row[b-3uutlpu3x3]  .info-issue { margin: 4px 4px 0 0; }
.info-books-label[b-3uutlpu3x3] { justify-content: flex-start; margin-bottom: var(--sp-2); }
.info-books[b-3uutlpu3x3] { display: grid; gap: var(--sp-2); }
.info-book[b-3uutlpu3x3] {
    display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: var(--r-md);
    background: rgba(255, 255, 255, .05); color: var(--stage-ink); font-size: var(--fs-sm); text-decoration: none;
}
.info-book:hover[b-3uutlpu3x3] { background: rgba(255, 255, 255, .1); }
.info-book .yes[b-3uutlpu3x3] { color: var(--accent-text); font-weight: 600; white-space: nowrap; }
.info-book .no[b-3uutlpu3x3] { color: var(--stage-ink-2); white-space: nowrap; }
.info-actions[b-3uutlpu3x3] { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
.info-actions[b-3uutlpu3x3]  .btn-ghost { color: var(--stage-ink-2); }
.pv-edit[b-3uutlpu3x3] { border-top: 1px solid rgba(255, 255, 255, .1); padding-top: var(--sp-4); }

@media (max-width: 1100px) {
    .pv-host[b-3uutlpu3x3]  .lightbox.pv.has-info { grid-template-columns: minmax(0, 1fr) 320px; }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-stage { padding: 4px 64px; }
}

/* ---- phones: photo on top, four big buttons, details as a sheet from below ---- */
@media (max-width: 760px) {
    .pv-host[b-3uutlpu3x3]  .lightbox.pv, .pv-host[b-3uutlpu3x3]  .lightbox.pv.has-info { grid-template-columns: minmax(0, 1fr); }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-top { gap: var(--sp-2); padding: var(--sp-2) var(--sp-3); }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-stage { padding: 0; }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-nav { width: 40px; height: 40px; opacity: .8; }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-nav.is-prev { left: 6px; }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-nav.is-next { right: 6px; }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-aside {
        display: block; position: fixed; left: 0; right: 0; bottom: 0; z-index: 2; max-height: 72%;
        border-left: 0; border-radius: var(--r-lg) var(--r-lg) 0 0; box-shadow: var(--sh-3); animation: sheet-up var(--t-3) var(--ease);
    }
    .pv-host[b-3uutlpu3x3]  .pv .lightbox-bottom { padding: var(--sp-3) var(--sp-3) calc(var(--sp-4) + env(safe-area-inset-bottom, 0px)); }
    .pv-photo[b-3uutlpu3x3] { border-radius: 0; box-shadow: none; }
    .dock[b-3uutlpu3x3] { gap: 14px; }
    .dock-group[b-3uutlpu3x3] { width: 100%; }
    .dock-seg[b-3uutlpu3x3] { width: 100%; }
    .dock-seg button[b-3uutlpu3x3] { min-width: 0; flex: 1; min-height: var(--tap); padding: 8px 4px; }
    .dock-seg button kbd[b-3uutlpu3x3] { display: none; }
    .dock-book[b-3uutlpu3x3] { width: 100%; justify-content: space-between; min-height: 0; }
    .dock-book[b-3uutlpu3x3]  kbd { display: none; }
    .pv-keys[b-3uutlpu3x3] { display: none; }
    .pv-host[b-3uutlpu3x3]  .pv-info-btn { padding: 0 10px; }
}
/* /Components/Parts/SeriesCompare.razor.rz.scp.css */
/* "Serie vergleichen": the photos of a series side by side (tokens of the design "Foto zuerst"). */
.sc[b-p9zmd0hzy8] { display: flex; flex-direction: column; gap: var(--sp-3); min-height: 0; color: var(--ink); }
.sc:focus[b-p9zmd0hzy8] { outline: none; }
.sc-head[b-p9zmd0hzy8] { display: flex; flex-wrap: wrap; align-items: center; gap: 6px var(--sp-2); }
.sc-title[b-p9zmd0hzy8] { margin: 0; font-family: var(--font-ui); font-size: var(--fs-lg); font-weight: 600; }
/* also inside the dark large view of Sichten the buttons keep the colours of the card */
.sc .btn[b-p9zmd0hzy8] { background: var(--surface-2); color: var(--ink); }
.sc .btn:hover[b-p9zmd0hzy8] { background: var(--surface-3); }
.sc .btn-primary[b-p9zmd0hzy8] { background: var(--accent); color: var(--accent-ink); }
.sc .btn-ghost[b-p9zmd0hzy8] { background: transparent; color: var(--ink-2); }
.sc .btn.is-on[b-p9zmd0hzy8] { background: var(--ink); color: var(--bg); }
.sc-error[b-p9zmd0hzy8] { margin: 0; }

/* two to six photos per row: as many as fit with at least ~150 px each */
.sc-grid[b-p9zmd0hzy8] {
    list-style: none; margin: 0; padding: 0; overflow-y: auto; min-height: 0;
    display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 150px), 1fr)); gap: var(--sp-3);
}
@media (min-width: 1100px) { .sc-grid[b-p9zmd0hzy8] { grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); } }
.sc-item[b-p9zmd0hzy8] { display: flex; flex-direction: column; gap: 6px; padding: 6px; border-radius: var(--r-md); background: var(--surface-2); min-width: 0; }
.sc-item.is-kept[b-p9zmd0hzy8] { box-shadow: 0 0 0 2px var(--accent); }
.sc-photo[b-p9zmd0hzy8] { display: block; aspect-ratio: var(--a); background: var(--surface-3); border-radius: var(--r-sm); overflow: hidden; }
.sc-photo img[b-p9zmd0hzy8] { display: block; width: 100%; height: 100%; object-fit: contain; }
.sc-meta[b-p9zmd0hzy8] { display: flex; flex-wrap: wrap; align-items: center; gap: 4px var(--sp-2); font-size: var(--fs-sm); }
.sc-time[b-p9zmd0hzy8] { color: var(--ink-2); }
.sc-stars[b-p9zmd0hzy8] { color: var(--warn); letter-spacing: .05em; }
.sc-pick.is-suggestion[b-p9zmd0hzy8] { background: transparent; box-shadow: inset 0 0 0 1px var(--ink-3); }
.sc-issues[b-p9zmd0hzy8] { display: flex; flex-wrap: wrap; gap: 4px; }
.sc-take[b-p9zmd0hzy8] { min-height: var(--tap); }
.sc-check[b-p9zmd0hzy8] { display: flex; align-items: center; gap: 6px; margin: 0; min-height: var(--tap); color: var(--ink); font-size: var(--fs-md); }
.sc-check input[b-p9zmd0hzy8] { width: 1.2rem; height: 1.2rem; min-height: 0; }
.sc-actions[b-p9zmd0hzy8] { padding-top: 4px; }

/* the dialog on the photo page */
.sc-modal[b-p9zmd0hzy8] {
    position: fixed; z-index: var(--z-sheet); left: 50%; top: calc(var(--header-h) + var(--sp-4)); transform: translateX(-50%);
    width: min(1200px, calc(100vw - 2rem)); max-height: calc(100dvh - var(--header-h) - 2rem);
    padding: var(--sp-5); background: var(--surface); border-radius: var(--r-lg); box-shadow: var(--sh-3);
    animation: fade-in var(--t-2) var(--ease);
}
.sc-backdrop[b-p9zmd0hzy8] { position: fixed; inset: 0; z-index: calc(var(--z-sheet) - 1); background: var(--scrim); animation: fade-in var(--t-2) var(--ease); }
@media (max-width: 600px) {
    /* two side by side even on the smallest phones: comparing is the point */
    .sc-grid[b-p9zmd0hzy8] { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
    .sc-item[b-p9zmd0hzy8] { padding: 4px; }
    .sc-take[b-p9zmd0hzy8] { padding: 4px 6px; font-size: var(--fs-sm); }
    /* ends above the phone's bottom bar (it lies on top of this dialog): the last row and "Auswahl übernehmen" stay reachable */
    .sc-modal[b-p9zmd0hzy8] { top: var(--header-h); width: 100vw; max-height: calc(100dvh - var(--header-h) - var(--bottom-bar-h, 0px)); border-radius: 0; padding: var(--sp-3); }
}
/* /Components/Providers/AppliesTo.razor.rz.scp.css */
.applies[b-7lxvnequpe] { display: grid; gap: .05rem; min-width: 0; }
.applies-line[b-7lxvnequpe] { font-weight: 600; font-size: 1.02rem; color: var(--ink); text-decoration: none; overflow-wrap: anywhere; }
a.applies-line:hover[b-7lxvnequpe] { color: var(--accent); text-decoration: underline; }
.applies-rest[b-7lxvnequpe] { font-size: .88rem; color: var(--ink-soft); overflow-wrap: anywhere; }
.applies-rest a[b-7lxvnequpe] { color: var(--ink-soft); }
.applies-rest a:hover[b-7lxvnequpe] { color: var(--accent); }
.applies-unsure[b-7lxvnequpe] { color: var(--warn); white-space: nowrap; }
/* /Components/Providers/CompareToggle.razor.rz.scp.css */
.cmp-toggle[b-gpabz52qvp] { white-space: nowrap; }
.cmp-toggle.is-on[b-gpabz52qvp] { background: var(--accent-soft); border-color: var(--accent); color: var(--accent); font-weight: 600; }
/* /Components/Providers/CompareTray.razor.rz.scp.css */
/* sticks to the bottom of the window while the page scrolls; room on the right for a helper button in the corner */
/* on phones it sticks above the bottom bar (--bottom-bar-h, 0 px elsewhere) */
.tray[b-nc2zk4yx6d] {
    position: sticky; bottom: calc(var(--bottom-bar-h, 0px) + .75rem); z-index: 20; margin: 1.5rem 4.5rem 0 0; max-width: 60rem;
    display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .6rem; padding: .55rem .75rem;
    background: var(--surface); border: 1px solid var(--accent); border-radius: var(--radius); box-shadow: 0 4px 18px rgba(43, 39, 35, .18);
}
.tray-count[b-nc2zk4yx6d] { font-weight: 600; font-size: .9rem; }
.tray-items[b-nc2zk4yx6d] { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .3rem; min-width: 0; }
.tray-items li[b-nc2zk4yx6d] {
    display: inline-flex; align-items: center; gap: .25rem; max-width: 100%;
    padding: .1rem .2rem .1rem .55rem; border-radius: 999px; background: var(--accent-soft); color: var(--accent); font-size: .8rem;
}
.tray-items li span[b-nc2zk4yx6d] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 14rem; }
.tray-remove[b-nc2zk4yx6d] { border: 0; background: none; color: inherit; cursor: pointer; font: inherit; padding: 0 .3rem; border-radius: 50%; }
.tray-remove:hover[b-nc2zk4yx6d] { background: rgba(154, 91, 60, .15); }
.tray-hint[b-nc2zk4yx6d] { font-size: .82rem; }

@media (max-width: 600px) {
    /* clear of the mascot, which now sits at the same height above the bottom bar (16 px + 64 px from the right) */
    .tray[b-nc2zk4yx6d] { margin-right: 5.25rem; }
    .tray-items[b-nc2zk4yx6d] { display: none; }
}
/* /Components/Providers/CompareView.razor.rz.scp.css */
.cmp-lead[b-64l6bi8ptv] { margin: 0 0 .6rem; max-width: 52rem; }
.cmp-add[b-64l6bi8ptv] { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem .75rem; margin-bottom: 1rem; max-width: 40rem; }
.cmp-add label[b-64l6bi8ptv] { margin: 0; }
.cmp-add select[b-64l6bi8ptv] { flex: 1 1 14rem; width: auto; min-width: 0; font-size: max(16px, .95rem); }
.cmp-empty[b-64l6bi8ptv] { max-width: 46rem; }

/* the first column stays put while a wide comparison scrolls sideways */
.cmp-wrap[b-64l6bi8ptv] { overflow-x: auto; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius); max-width: 100%; }
.cmp[b-64l6bi8ptv] { border-collapse: separate; border-spacing: 0; width: 100%; font-size: .88rem; }
.cmp th[b-64l6bi8ptv], .cmp td[b-64l6bi8ptv] { padding: .45rem .6rem; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.cmp thead th[b-64l6bi8ptv], .cmp thead td[b-64l6bi8ptv] { background: var(--surface-2); vertical-align: bottom; min-width: 11rem; }
.cmp thead th[b-64l6bi8ptv] { font-weight: 400; }
.cmp tbody th[scope=row][b-64l6bi8ptv], .cmp-corner[b-64l6bi8ptv] {
    position: sticky; left: 0; z-index: 1; background: var(--surface); font-weight: 600; color: var(--ink-soft);
    width: 9.5rem; min-width: 8rem; max-width: 11rem; font-size: .82rem;
}
.cmp-corner[b-64l6bi8ptv] { background: var(--surface-2) !important; }
.cmp td[b-64l6bi8ptv] { min-width: 9rem; overflow-wrap: anywhere; }
.cmp td.is-best[b-64l6bi8ptv] { background: var(--good-soft); color: var(--good); font-weight: 600; }
.cmp-section th[b-64l6bi8ptv] { background: var(--accent-soft); color: var(--accent); font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; }
.cmp-section th[scope=colgroup][b-64l6bi8ptv] { position: static; }
.cmp-remove[b-64l6bi8ptv] { margin-top: .35rem; }
.cmp-small[b-64l6bi8ptv] { font-size: .78rem; color: var(--ink-soft); margin-top: .2rem; }
.cmp-actions[b-64l6bi8ptv] { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem 1rem; margin-top: .75rem; font-size: .9rem; }
.visually-hidden[b-64l6bi8ptv] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

@media (max-width: 560px) {
    .cmp[b-64l6bi8ptv] { font-size: .82rem; }
    .cmp thead th[b-64l6bi8ptv], .cmp thead td[b-64l6bi8ptv] { min-width: 9.5rem; }
    .cmp tbody th[scope=row][b-64l6bi8ptv], .cmp-corner[b-64l6bi8ptv] { width: 6.5rem; min-width: 6.5rem; }
    .cmp td[b-64l6bi8ptv] { min-width: 8rem; }
}
/* /Components/Providers/FilterBar.razor.rz.scp.css */
.fbar[b-003mrwv7mf] {
    display: grid; gap: .6rem; padding: .6rem .75rem; margin-bottom: .9rem;
    background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
}
.fbar-quick[b-003mrwv7mf] { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem .75rem; }
/* 16px at least: phones zoom into smaller fields when they get the focus */
.fbar-search[b-003mrwv7mf] { flex: 1 1 14rem; min-width: 0; max-width: 26rem; font-size: max(16px, 1rem); padding: .35rem .6rem; }
.fbar-chips[b-003mrwv7mf] { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem; }
.fbar-chip[b-003mrwv7mf] {
    font: inherit; font-size: .86rem; padding: .3rem .7rem; border-radius: 999px; cursor: pointer;
    border: 1px solid var(--line); background: var(--surface); color: var(--ink);
}
.fbar-chip:hover[b-003mrwv7mf] { border-color: var(--ink-soft); }
.fbar-chip.is-on[b-003mrwv7mf] { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); font-weight: 600; }
.fbar-chip:focus-visible[b-003mrwv7mf] { outline: 2px solid var(--accent); outline-offset: 2px; }
.fbar-more-btn[b-003mrwv7mf] { white-space: nowrap; }

.fbar-more[b-003mrwv7mf] { display: grid; grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr)); gap: .5rem .9rem; align-items: end; }
.fbar-more label[b-003mrwv7mf] { margin: 0 0 .2rem; }
.fbar-check[b-003mrwv7mf] { grid-column: 1 / -1; display: flex; align-items: center; gap: .45rem; color: var(--ink); font-size: .9rem; }
.fbar-check input[b-003mrwv7mf] { width: auto; }
.fbar-field select[b-003mrwv7mf] { padding: .35rem .5rem; font-size: max(16px, .95rem); }
.fbar-term[b-003mrwv7mf] { display: inline-flex; align-items: center; gap: .1rem; }
/* /Components/Providers/LineCard.razor.rz.scp.css */
.line[b-cuflsgf8gl] { display: grid; gap: .65rem; scroll-margin-top: calc(var(--header-h) + .75rem); }
.line:target[b-cuflsgf8gl] { border-color: var(--accent); box-shadow: 0 0 0 2px var(--accent-soft), var(--shadow); }
.line-head[b-cuflsgf8gl] { display: flex; align-items: flex-start; gap: .75rem; }
.line-title[b-cuflsgf8gl] { flex: 1; min-width: 0; }
.line-title h3[b-cuflsgf8gl] { margin: 0 0 .15rem; overflow-wrap: anywhere; }
.line-maker[b-cuflsgf8gl] { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .5rem; font-size: .92rem; color: var(--ink-soft); }
.line-evidence[b-cuflsgf8gl] { font-size: .86rem; color: var(--ink-soft); }
.line-evidence summary[b-cuflsgf8gl] { cursor: pointer; width: fit-content; }
.line-evidence p[b-cuflsgf8gl] { margin: .3rem 0 0; max-width: 46rem; }
.line h4[b-cuflsgf8gl] { margin: .4rem 0 0; font-size: .95rem; }

.line-places[b-cuflsgf8gl] { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .35rem; }
.line-places li[b-cuflsgf8gl] { font-size: .82rem; border-radius: 999px; padding: .1rem .6rem; background: var(--accent-soft); color: var(--accent); }
.line-places a[b-cuflsgf8gl] { color: inherit; text-decoration: none; }
.line-places a:hover[b-cuflsgf8gl] { text-decoration: underline; }
.line-places .line-score[b-cuflsgf8gl] { background: var(--surface-2); color: var(--ink); }

.line-facts[b-cuflsgf8gl] { margin: 0; display: grid; gap: .35rem; }
.line-facts > div[b-cuflsgf8gl] { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); gap: .6rem; }
.line-facts dt[b-cuflsgf8gl] { color: var(--ink-soft); font-size: .86rem; }
.line-facts dd[b-cuflsgf8gl] { margin: 0; overflow-wrap: anywhere; font-size: .92rem; }
.line-formats[b-cuflsgf8gl] { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .25rem; }
.line-formats li[b-cuflsgf8gl] { font-size: .8rem; padding: .05rem .45rem; border-radius: 4px; background: var(--surface-2); }

.line-highlights[b-cuflsgf8gl] { margin: 0; padding-left: 1.1rem; font-size: .9rem; }
.line-highlights li[b-cuflsgf8gl]::marker { content: "★ "; color: var(--accent); }

.line-book[b-cuflsgf8gl] { margin: 0; display: flex; flex-wrap: wrap; gap: .25rem .9rem; font-size: .9rem; }
.line-book-price strong[b-cuflsgf8gl] { font-variant-numeric: tabular-nums; }

.prices[b-cuflsgf8gl] { border-collapse: collapse; width: 100%; font-size: .88rem; }
.prices th[b-cuflsgf8gl], .prices td[b-cuflsgf8gl] { padding: .4rem .5rem; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.prices thead th[b-cuflsgf8gl] { font-size: .8rem; font-weight: 600; color: var(--ink-soft); background: var(--surface-2); white-space: nowrap; }
.prices tbody tr:last-child > *[b-cuflsgf8gl] { border-bottom: 0; }
.prices .num[b-cuflsgf8gl] { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.prices tbody th[b-cuflsgf8gl] { font-weight: 400; }
.price-baseline[b-cuflsgf8gl] { display: block; font-weight: 600; }
.price-config[b-cuflsgf8gl] { display: block; color: var(--ink-soft); font-size: .82rem; overflow-wrap: anywhere; }
.price-source[b-cuflsgf8gl] { display: block; color: var(--ink-soft); font-size: .76rem; }
.price-billed[b-cuflsgf8gl] { display: block; color: var(--ink-soft); font-size: .76rem; }

.line-tests[b-cuflsgf8gl] { margin: 0; padding-left: 1.1rem; font-size: .9rem; }
.line-tests li + li[b-cuflsgf8gl] { margin-top: .2rem; }

/* phones: each price becomes a small block, the numbers in a row below the description */
@media (max-width: 560px) {
    .line-facts > div[b-cuflsgf8gl] { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .prices thead[b-cuflsgf8gl] { display: none; }
    .prices[b-cuflsgf8gl], .prices tbody[b-cuflsgf8gl] { display: block; }
    .prices tr[b-cuflsgf8gl] { display: grid; grid-template-columns: repeat(4, minmax(0, auto)); justify-content: space-between; gap: .1rem .6rem;
        padding: .5rem 0; border-bottom: 1px solid var(--line); }
    .prices tbody tr:last-child[b-cuflsgf8gl] { border-bottom: 0; }
    .prices th[b-cuflsgf8gl], .prices td[b-cuflsgf8gl] { border: 0; padding: 0; }
    .prices tbody th[b-cuflsgf8gl] { grid-column: 1 / -1; }
    .prices td.num[b-cuflsgf8gl] { text-align: left; white-space: normal; }
    .prices td[b-cuflsgf8gl]::before { content: attr(data-label); display: block; font-size: .72rem; color: var(--ink-soft); }
}
/* /Components/Providers/LineFacts.razor.rz.scp.css */
.facts[b-2r5gwk7ukr] { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .3rem; }
.facts .badge[b-2r5gwk7ukr] { font-size: .76rem; padding: .1rem .5rem; }
/* /Components/Providers/ManufacturerView.razor.rz.scp.css */
.mk-lead[b-q20ialg71p] { margin: 0 0 1rem; max-width: 52rem; }
.mk-empty[b-q20ialg71p] { max-width: 46rem; }
.mk-grid[b-q20ialg71p] { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 21rem), 1fr)); gap: .8rem; align-items: start; }
.mk[b-q20ialg71p] { display: grid; gap: .5rem; }
.mk.is-focus[b-q20ialg71p] { border-color: var(--accent); max-width: 40rem; }
.mk h3[b-q20ialg71p] { margin: 0 0 .2rem; overflow-wrap: anywhere; }
.mk-meta[b-q20ialg71p] { margin: 0; display: flex; flex-wrap: wrap; align-items: center; gap: .3rem .5rem; font-size: .88rem; color: var(--ink-soft); }
.mk-company[b-q20ialg71p] { margin: 0; font-size: .85rem; color: var(--ink-soft); }
.mk-note[b-q20ialg71p] { margin: 0; font-size: .9rem; }
.mk-shops[b-q20ialg71p] { list-style: none; margin: 0; padding: 0; display: grid; gap: .45rem; }
.mk-shops > li[b-q20ialg71p] { padding-top: .45rem; border-top: 1px solid var(--line); }
.mk-shop[b-q20ialg71p] { font-weight: 600; }
.mk-shop .muted[b-q20ialg71p] { font-weight: 400; font-size: .85rem; }
.mk-lines[b-q20ialg71p] { list-style: none; margin: .2rem 0 0; padding: 0 0 0 .9rem; display: grid; gap: .15rem; font-size: .9rem; }
.mk-lines li[b-q20ialg71p] { display: flex; flex-wrap: wrap; align-items: center; gap: .3rem; }
.mk-site[b-q20ialg71p] { margin: 0; font-size: .85rem; }
.mk-own[b-q20ialg71p] { margin-top: 1.75rem; max-width: 70rem; }
.mk-own h3[b-q20ialg71p] { margin-bottom: .2rem; }
.mk-own > p[b-q20ialg71p] { margin: 0 0 .6rem; font-size: .9rem; }
.mk-own-list[b-q20ialg71p] { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr)); gap: .3rem 1rem; }
.mk-own-list li[b-q20ialg71p] { display: flex; flex-wrap: wrap; align-items: baseline; gap: .2rem .45rem; padding: .3rem 0; border-bottom: 1px solid var(--line); }
.mk-own-list .muted[b-q20ialg71p] { font-size: .85rem; }
.mk-unknown[b-q20ialg71p] { margin-top: 1.5rem; max-width: 46rem; }
.mk-unknown summary[b-q20ialg71p] { cursor: pointer; font-weight: 600; font-size: 1.05rem; }
.mk-unknown p[b-q20ialg71p] { margin: .4rem 0; font-size: .9rem; }
.mk-unknown ul[b-q20ialg71p] { padding-left: 1.2rem; margin: 0; }
/* /Components/Providers/PriceCalculatorView.razor.rz.scp.css */
.calc-lead[b-969dy9267n] { margin: 0 0 .8rem; max-width: 52rem; }
.calc-form[b-969dy9267n] { display: flex; flex-wrap: wrap; align-items: flex-end; gap: .6rem 1rem; margin-bottom: .9rem; max-width: 60rem; padding: .75rem .9rem; }
.calc-field[b-969dy9267n] { min-width: 0; }
.calc-field.is-wide[b-969dy9267n] { flex: 1 1 16rem; max-width: 30rem; }
.calc-field label[b-969dy9267n] { margin: 0 0 .2rem; }
.calc-field input[b-969dy9267n] { width: 7rem; font-size: max(16px, 1rem); }
.calc-field select[b-969dy9267n] { width: 100%; font-size: max(16px, .95rem); text-overflow: ellipsis; }
.calc-check[b-969dy9267n] { display: flex; align-items: center; gap: .4rem; margin: 0 0 .45rem; color: var(--ink); font-size: .92rem; }
.calc-check input[b-969dy9267n] { width: auto; }
.calc-quick[b-969dy9267n] { flex-basis: 100%; display: flex; flex-wrap: wrap; gap: .35rem; }
.calc-empty[b-969dy9267n] { max-width: 46rem; }
.calc-count[b-969dy9267n] { font-size: .88rem; margin: 0 0 .5rem; }

.calc-list[b-969dy9267n] { margin: 0; padding: 0 0 0 1.6rem; display: grid; gap: .45rem; max-width: 60rem; }
.calc-list > li[b-969dy9267n]::marker { color: var(--ink-soft); font-variant-numeric: tabular-nums; }
.calc-row[b-969dy9267n] {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .3rem .9rem; align-items: center;
    padding: .55rem .75rem; background: var(--surface); border: 1px solid var(--line); border-radius: var(--radius);
}
.calc-main[b-969dy9267n] { display: grid; gap: .2rem; min-width: 0; }
.calc-how[b-969dy9267n] { font-size: .8rem; color: var(--ink-soft); }
.calc-side[b-969dy9267n] { display: grid; justify-items: end; gap: .25rem; }
.calc-price[b-969dy9267n] { font-size: 1.15rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.calc-ship[b-969dy9267n] { font-size: .75rem; color: var(--ink-soft); white-space: nowrap; }
.calc-more[b-969dy9267n] { margin-top: 1rem; max-width: 60rem; }
.calc-more summary[b-969dy9267n] { cursor: pointer; font-weight: 600; }
.calc-more ul[b-969dy9267n] { margin: .4rem 0 0; padding-left: 1.2rem; font-size: .9rem; }
.calc-none[b-969dy9267n] { margin-top: 1rem; font-size: .88rem; }

@media (max-width: 560px) {
    .calc-list[b-969dy9267n] { padding-left: 1.3rem; }
    .calc-row[b-969dy9267n] { grid-template-columns: minmax(0, 1fr); }
    .calc-side[b-969dy9267n] { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; }
}
/* /Components/Providers/PrintChooser.razor.rz.scp.css */
/* "Wo drucken wir [Buch ▾]?" (anbieter.html of the "Foto zuerst" mockups) */
.dp-hero[b-8ageocoz5j] { display: grid; gap: 14px; margin: 8px 0 28px; max-width: 900px; }
.dp-title[b-8ageocoz5j] { font-size: var(--fs-3xl); line-height: 1.12; margin: 0; }
.dp-title[b-8ageocoz5j]  .book-pill-wrap { vertical-align: middle; margin: 0 4px; position: relative; top: -4px; }
.dp-title[b-8ageocoz5j]  .book-pill {
    height: auto; gap: 12px; padding: 6px 14px 6px 6px; border-radius: 16px; font-family: var(--font-display); font-size: .8em; line-height: 1.1;
    box-shadow: 0 0 0 2px var(--accent), var(--sh-2);
}
.dp-title[b-8ageocoz5j]  .book-pill .cover-xs { width: 56px; height: 40px; }
.dp-title[b-8ageocoz5j]  .book-pill > .i:last-child { width: 22px; height: 22px; }
.dp-title[b-8ageocoz5j]  .book-pill-name { font-weight: 400; }
.dp-pill-static[b-8ageocoz5j] { display: inline-block; padding: 0 10px; border-radius: 16px; box-shadow: 0 0 0 2px var(--accent); font-size: .8em; }
.dp-lead[b-8ageocoz5j] { color: var(--ink-2); max-width: 760px; margin: 0; }
.dp-assume[b-8ageocoz5j] { display: flex; flex-wrap: wrap; gap: 8px; }
.dp-assume[b-8ageocoz5j]  .badge { height: 28px; padding: 0 12px; font-size: var(--fs-sm); }

.dp-chosen[b-8ageocoz5j] { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; padding: 14px 16px 14px 18px; margin-bottom: 24px; border-radius: var(--r-lg); background: var(--good-soft); color: var(--ink); }
.dp-dot[b-8ageocoz5j] { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: var(--good); color: var(--surface); flex: none; }
.dp-chosen-text[b-8ageocoz5j] { flex: 1; min-width: 14rem; }
.dp-chosen-text b[b-8ageocoz5j] { font-weight: 600; }
.dp-chosen-hint[b-8ageocoz5j] { display: block; font-size: var(--fs-sm); color: var(--ink-2); margin-top: 2px; }

.dp-callout[b-8ageocoz5j] { display: flex; gap: 12px; align-items: flex-start; padding: 14px 18px; margin-bottom: 20px; border-radius: var(--r-lg); background: var(--surface-2); font-size: var(--fs-sm); color: var(--ink-2); }
.dp-callout[b-8ageocoz5j]  .i { color: var(--ink); margin-top: 1px; }
.dp-callout b[b-8ageocoz5j] { color: var(--ink); font-weight: 600; }

/* the list of every fitting printer */
.dp-list-head[b-8ageocoz5j] { flex-wrap: wrap; }
.row[b-8ageocoz5j] {
    display: grid; grid-template-columns: 28px minmax(0, 2.4fr) 1.1fr 1.1fr 1.3fr 1fr 1.1fr 32px; align-items: center; gap: 14px;
    padding: 12px 16px; border-top: 1px solid var(--line); font-size: var(--fs-sm); color: var(--ink-2);
}
.row:first-child[b-8ageocoz5j] { border-top: 0; }
.row.head[b-8ageocoz5j] { background: var(--surface-2); font-size: var(--fs-xs); font-weight: 600; color: var(--ink-3); letter-spacing: .04em; text-transform: uppercase; padding-top: 10px; padding-bottom: 10px; }
.row:not(.head):hover[b-8ageocoz5j] { background: var(--surface-2); }
.who[b-8ageocoz5j] { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 0; border: 0; background: none; color: inherit; text-align: left; font: inherit; }
.who-text[b-8ageocoz5j] { min-width: 0; }
.who-text b[b-8ageocoz5j], .who-text span[b-8ageocoz5j] { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.who-text b[b-8ageocoz5j] { color: var(--ink); font-weight: 600; font-size: var(--fs-md); }
.mono[b-8ageocoz5j] { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; flex: none; font-weight: 600; font-size: var(--fs-xs); letter-spacing: .02em; background: var(--mono, var(--surface-3)); color: var(--on-photo); }
.row .eur[b-8ageocoz5j] { font-weight: 600; color: var(--ink); font-size: var(--fs-md); }
.row .eur small[b-8ageocoz5j] { display: block; font-weight: 400; color: var(--ink-3); font-size: var(--fs-xs); }
.row .q[b-8ageocoz5j] { display: flex; align-items: center; gap: 8px; color: var(--ink); font-weight: 600; }
.qbar[b-8ageocoz5j] { width: 64px; height: 6px; border-radius: 3px; background: var(--surface-3); overflow: hidden; }
.qbar i[b-8ageocoz5j] { display: block; height: 100%; background: var(--ink-2); border-radius: 3px; }
.row.is-off[b-8ageocoz5j], .row.is-off .who-text b[b-8ageocoz5j], .row.is-off .eur[b-8ageocoz5j] { color: var(--ink-3); }
.chev[b-8ageocoz5j] { width: 32px; height: 32px; display: grid; place-items: center; padding: 0; border: 0; border-radius: var(--r-pill); background: none; color: var(--ink-3); }
.chev:hover[b-8ageocoz5j] { background: var(--surface-3); color: var(--ink); }
.ck[b-8ageocoz5j] { width: 20px; height: 20px; border-radius: 6px; border: 1.5px solid var(--line-strong); background: var(--surface); display: grid; place-items: center; padding: 0; color: transparent; }
.ck[b-8ageocoz5j]  .i { width: 14px; height: 14px; stroke-width: 3; }
.ck[aria-checked="true"][b-8ageocoz5j] { background: var(--ink); border-color: var(--ink); color: var(--bg); }
.group-toggle[b-8ageocoz5j] {
    display: flex; align-items: center; gap: 10px; width: 100%; padding: 14px 16px; border: 0; border-top: 1px solid var(--line);
    background: var(--surface); text-align: left; font-weight: 600; color: var(--ink-2);
}
.group-toggle:hover[b-8ageocoz5j] { background: var(--surface-2); }
.group-toggle[b-8ageocoz5j]  .i { transition: transform var(--t-2); }
.group-toggle[aria-expanded="true"][b-8ageocoz5j]  .i { transform: rotate(180deg); }
.group-toggle span[b-8ageocoz5j] { font-weight: 400; color: var(--ink-3); }
.nopdf-note[b-8ageocoz5j] { padding: 4px 16px 16px 58px; font-size: var(--fs-sm); color: var(--ink-3); }
.nopdf-note ul[b-8ageocoz5j] { margin: 0; padding-left: 1.1rem; }
.dp-none[b-8ageocoz5j] { padding: 16px; margin: 0; color: var(--ink-2); }

/* the research, one level deeper */
.dp-research[b-8ageocoz5j] { display: flex; align-items: center; gap: 20px; padding: 22px 24px; }
.dp-research-ico[b-8ageocoz5j] { width: 48px; height: 48px; border-radius: 14px; background: var(--surface-2); display: grid; place-items: center; flex: none; }
.dp-research-text[b-8ageocoz5j] { flex: 1; min-width: 0; display: grid; gap: 10px; }
.dp-research-text b[b-8ageocoz5j] { font-weight: 600; }
.dp-research-links[b-8ageocoz5j] { display: flex; flex-wrap: wrap; gap: 6px; }

/* the comparison bar sits where the selection bar of the photos sits */
.dp-cmpbar[b-8ageocoz5j] { white-space: nowrap; }

/* comparison and details (inside the kit's sheet: no scope attribute below the panel's own elements) */
.dp-cmp-wrap[b-8ageocoz5j] { overflow-x: auto; margin: -20px; }
.dp-cmp[b-8ageocoz5j] { width: 100%; border-collapse: collapse; font-size: var(--fs-sm); }
.dp-cmp th[b-8ageocoz5j], .dp-cmp td[b-8ageocoz5j] { padding: 12px 16px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--line); }
.dp-cmp th[b-8ageocoz5j] { width: 150px; color: var(--ink-3); font-weight: 600; font-size: var(--fs-xs); text-transform: uppercase; letter-spacing: .04em; }
.dp-cmp thead td[b-8ageocoz5j] { font-size: var(--fs-md); color: var(--ink); }
.dp-cmp td.best[b-8ageocoz5j] { color: var(--good); font-weight: 600; }
.dp-cmp td.best[b-8ageocoz5j]::before { content: "● "; font-size: 10px; vertical-align: 2px; }
.dp-detail-line[b-8ageocoz5j] { margin: -8px 0 12px; font-size: var(--fs-sm); }
.dp-detail-price[b-8ageocoz5j] { display: grid; gap: 2px; margin-bottom: 14px; }
.dp-detail-price .eur[b-8ageocoz5j] { font-size: 2rem; font-weight: 600; letter-spacing: -.03em; line-height: 1; }
.dp-detail-price span:last-child[b-8ageocoz5j] { font-size: var(--fs-sm); }
.dp-gk[b-8ageocoz5j] { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 14px 0; }
.dp-gk > div[b-8ageocoz5j] { padding: 14px; border-radius: var(--r-md); font-size: var(--fs-sm); display: grid; gap: 6px; align-content: start; }
.dp-gk .is-good[b-8ageocoz5j] { background: var(--good-soft); }
.dp-gk .is-bad[b-8ageocoz5j] { background: var(--warn-soft); }
.dp-gk b[b-8ageocoz5j] { font-weight: 600; }
.dp-sec[b-8ageocoz5j] { display: grid; gap: 8px; margin-top: 16px; }
.dp-sec h3[b-8ageocoz5j] { margin: 0; font-size: var(--fs-xs); font-weight: 600; text-transform: uppercase; letter-spacing: .06em; color: var(--ink-3); }
.dp-sec p[b-8ageocoz5j] { margin: 0; font-size: var(--fs-sm); }
.dp-formula[b-8ageocoz5j] { padding: 12px 14px; border-radius: var(--r-md); background: var(--surface-2); font-size: var(--fs-sm); font-variant-numeric: tabular-nums; }

@media (max-width: 1100px) {
    .row[b-8ageocoz5j] { grid-template-columns: 28px minmax(0, 2.4fr) 1.1fr 1.1fr 1fr 32px; }
    .row .c-paper[b-8ageocoz5j], .row .c-days[b-8ageocoz5j] { display: none; }
}
@media (max-width: 760px) {
    .dp-hero[b-8ageocoz5j] { margin: 0 0 18px; gap: 12px; }
    .dp-title[b-8ageocoz5j] { font-size: var(--fs-xl); }
    .dp-title[b-8ageocoz5j]  .book-pill-wrap { display: flex; margin: 10px 0 0; top: 0; }
    .dp-title[b-8ageocoz5j]  .book-pill { width: 100%; font-size: 1.1rem; }
    .dp-title[b-8ageocoz5j]  .book-pill-name { flex: 1; }
    .dp-qm[b-8ageocoz5j] { display: none; }
    .dp-lead[b-8ageocoz5j] { font-size: var(--fs-sm); }
    .row[b-8ageocoz5j] { grid-template-columns: 24px minmax(0, 1fr) auto; gap: 10px; padding: 12px; }
    .row.head[b-8ageocoz5j] { display: none; }
    .row .c-q[b-8ageocoz5j], .row .c-paper[b-8ageocoz5j], .row .c-days[b-8ageocoz5j], .row .c-pdf[b-8ageocoz5j], .row .chev[b-8ageocoz5j] { display: none; }
    .row .eur[b-8ageocoz5j] { text-align: right; }
    .nopdf-note[b-8ageocoz5j] { padding-left: 16px; }
    .dp-research[b-8ageocoz5j] { flex-direction: column; align-items: flex-start; padding: 18px; }
    .dp-gk[b-8ageocoz5j] { grid-template-columns: 1fr; }
    .dp-cmp th[b-8ageocoz5j] { width: 96px; padding: 10px; }
    .dp-cmp td[b-8ageocoz5j] { padding: 10px; }
}
/* /Components/Providers/RankingView.razor.rz.scp.css */
.rank-tabs[b-pqq91fudeg] { display: flex; gap: .35rem; margin: 0 0 1rem; overflow-x: auto; padding-bottom: .2rem; }
.rank-tabs a[b-pqq91fudeg] {
    padding: .35rem .8rem; border-radius: 999px; border: 1px solid var(--line); background: var(--surface);
    color: var(--ink-soft); text-decoration: none; white-space: nowrap; font-size: .9rem;
}
.rank-tabs a:hover[b-pqq91fudeg] { color: var(--ink); border-color: var(--ink-soft); }
.rank-tabs a.active[b-pqq91fudeg] { background: var(--accent); border-color: var(--accent); color: var(--accent-ink); font-weight: 600; }

.rank-head[b-pqq91fudeg] { max-width: 60rem; margin-bottom: .6rem; }
.rank-head h2[b-pqq91fudeg] { margin: 0 0 .2rem; }
.rank-desc[b-pqq91fudeg] { margin: 0 0 .15rem; }
.rank-source[b-pqq91fudeg] { margin: 0; font-size: .82rem; }
.rank-formula[b-pqq91fudeg] { margin: 0 0 .15rem; font-size: .8rem; font-variant-numeric: tabular-nums; }

.howto[b-pqq91fudeg] { max-width: 60rem; margin: 0 0 1rem; padding: .55rem .8rem; border-radius: var(--radius); background: var(--accent-soft); }
.howto summary[b-pqq91fudeg] { cursor: pointer; font-weight: 600; color: var(--accent); }
.howto p[b-pqq91fudeg] { margin: .5rem 0 0; font-size: .9rem; max-width: 52rem; }

.rank-empty[b-pqq91fudeg] { max-width: 46rem; }
.rank-count[b-pqq91fudeg] { font-size: .88rem; margin: 0 0 .6rem; }

.rank-list[b-pqq91fudeg] { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; max-width: 60rem; }
.rank-item[b-pqq91fudeg] { display: grid; grid-template-columns: 2.4rem minmax(0, 1fr) auto; gap: .4rem .85rem; align-items: start; padding: .75rem .9rem; }
.rank-no[b-pqq91fudeg] {
    display: grid; place-items: center; width: 2.2rem; height: 2.2rem; border-radius: 50%;
    background: var(--surface-2); font: 700 1.05rem var(--font-display); font-variant-numeric: tabular-nums;
}
.rank-no.is-top[b-pqq91fudeg] { background: var(--accent); color: var(--accent-ink); }
.rank-main[b-pqq91fudeg] { display: grid; gap: .35rem; min-width: 0; }
.rank-meta[b-pqq91fudeg] { margin: 0; font-size: .85rem; color: var(--ink-soft); }
.rank-note[b-pqq91fudeg] { margin: 0; font-size: .8rem; color: var(--warn); }
.rank-side[b-pqq91fudeg] { display: grid; justify-items: end; gap: .45rem; }
.rank-score[b-pqq91fudeg] { display: grid; justify-items: end; line-height: 1.15; }
.rank-score strong[b-pqq91fudeg] { font-size: 1.3rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.rank-score span[b-pqq91fudeg] { font-size: .72rem; color: var(--ink-soft); white-space: nowrap; }

.near[b-pqq91fudeg] { max-width: 60rem; margin-top: 1.75rem; }
.near h3[b-pqq91fudeg] { margin-bottom: .2rem; }
.near > p[b-pqq91fudeg] { margin: 0 0 .6rem; font-size: .9rem; }
.near-list[b-pqq91fudeg] { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.near-list li[b-pqq91fudeg] {
    display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .2rem .75rem; align-items: center;
    padding: .55rem .75rem; border: 1px dashed var(--line); border-radius: var(--radius); background: var(--surface);
}
.near-reason[b-pqq91fudeg] { grid-column: 1; font-size: .84rem; color: var(--warn); }
.near-more[b-pqq91fudeg] { margin-top: .75rem; }
.near-more summary[b-pqq91fudeg] { cursor: pointer; font-weight: 600; font-size: .92rem; margin-bottom: .5rem; }
.near-list li[b-pqq91fudeg]  .cmp-toggle { grid-column: 2; grid-row: 1 / span 2; }

/* phones: number left, the score and the button under the description */
@media (max-width: 560px) {
    .rank-item[b-pqq91fudeg] { grid-template-columns: 2.2rem minmax(0, 1fr); padding: .65rem .7rem; }
    .rank-no[b-pqq91fudeg] { width: 2rem; height: 2rem; font-size: .95rem; }
    .rank-side[b-pqq91fudeg] { grid-column: 2; display: flex; justify-content: space-between; align-items: center; justify-items: initial; }
    .rank-score[b-pqq91fudeg] { justify-items: start; }
    .near-list li[b-pqq91fudeg] { grid-template-columns: minmax(0, 1fr); }
    .near-list li[b-pqq91fudeg]  .cmp-toggle { grid-column: 1; grid-row: auto; justify-self: start; }
}
/* /Components/Providers/ShopListView.razor.rz.scp.css */
.list-head[b-v7bnwdbwlf] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .4rem 1rem; margin-bottom: .75rem; }
.list-head p[b-v7bnwdbwlf] { margin: 0; font-size: .9rem; }
.list-sort[b-v7bnwdbwlf] { display: flex; align-items: center; gap: .45rem; margin: 0; }
.list-sort select[b-v7bnwdbwlf] { width: auto; padding: .3rem .5rem; font-size: max(16px, .9rem); }
.list-empty[b-v7bnwdbwlf] { max-width: 46rem; }

.shop-grid[b-v7bnwdbwlf] { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 22rem), 1fr)); gap: .8rem; }
.shop-card[b-v7bnwdbwlf] { display: grid; grid-template-rows: auto auto 1fr auto auto; gap: .55rem; padding: .85rem .95rem; }
.shop-card-head[b-v7bnwdbwlf] { display: grid; gap: .3rem; }
.shop-card-head h3[b-v7bnwdbwlf] { margin: 0; overflow-wrap: anywhere; }
.shop-card-head h3 a[b-v7bnwdbwlf] { color: var(--ink); text-decoration: none; }
.shop-card-head h3 a:hover[b-v7bnwdbwlf] { color: var(--accent); text-decoration: underline; }
.shop-card-badges[b-v7bnwdbwlf] { display: flex; flex-wrap: wrap; gap: .3rem; }
.shop-card-summary[b-v7bnwdbwlf] { margin: 0; font-size: .9rem; color: var(--ink-soft); }
.shop-card-lines[b-v7bnwdbwlf] { list-style: none; margin: 0; padding: 0; display: grid; gap: .55rem; align-content: start; }
.shop-card-lines > li[b-v7bnwdbwlf] { display: grid; gap: .35rem; padding-top: .55rem; border-top: 1px solid var(--line); }
.shop-card-row[b-v7bnwdbwlf] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .35rem .6rem; font-size: .88rem; }
.shop-card-price strong[b-v7bnwdbwlf] { font-variant-numeric: tabular-nums; }
.shop-card-none[b-v7bnwdbwlf], .shop-card-hidden[b-v7bnwdbwlf] { margin: 0; font-size: .85rem; }
.shop-card-foot[b-v7bnwdbwlf] { font-size: .88rem; }

.pending[b-v7bnwdbwlf] { margin-top: 1.75rem; max-width: 70rem; }
.pending summary[b-v7bnwdbwlf] { cursor: pointer; font-weight: 600; font-size: 1.05rem; }
.pending > p[b-v7bnwdbwlf] { margin: .4rem 0 .6rem; font-size: .9rem; }
.pending-list[b-v7bnwdbwlf] { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 20rem), 1fr)); gap: .45rem .9rem; }
.pending-list li[b-v7bnwdbwlf] { display: flex; flex-wrap: wrap; align-items: baseline; gap: .2rem .45rem; padding: .4rem 0; border-bottom: 1px solid var(--line); }
.pending-hint[b-v7bnwdbwlf] { flex-basis: 100%; font-size: .8rem; color: var(--ink-soft); }
/* /Components/Start/PreparationCard.razor.rz.scp.css */
.start-prep[b-gqyfvgp7j9] { border-style: dashed; box-shadow: none; }
.start-prep h3[b-gqyfvgp7j9] { margin-bottom: .75rem; }
.start-prep-unreadable[b-gqyfvgp7j9] { margin: 0; }
/* /Components/Start/StartTripCard.razor.rz.scp.css */
/* A trip on Start (start.html): mosaic, review ring, its books, the way to its photos. */
.start-trip[b-ud3xkbzdvj] { padding: 0; overflow: hidden; display: flex; flex-direction: column; }
.mosaic[b-ud3xkbzdvj] {
    display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); grid-template-rows: repeat(2, minmax(0, 1fr)); gap: 3px;
    height: 210px; overflow: hidden; background: var(--surface-3);
}
.mosaic img[b-ud3xkbzdvj] { width: 100%; height: 100%; min-height: 0; object-fit: cover; }
.mosaic img:first-child[b-ud3xkbzdvj] { grid-row: 1 / 3; }
.trip-body[b-ud3xkbzdvj] { padding: 20px 22px 22px; display: grid; gap: 14px; }
.trip-title[b-ud3xkbzdvj] { display: flex; align-items: baseline; justify-content: space-between; gap: var(--sp-3); flex-wrap: wrap; }
.trip-title h3[b-ud3xkbzdvj] { margin: 0; font-family: var(--font-display); font-weight: 400; font-size: var(--fs-xl); }
.trip-title h3 a[b-ud3xkbzdvj] { color: var(--ink); text-decoration: none; }
.trip-stats[b-ud3xkbzdvj] { display: flex; align-items: center; gap: 14px; }
.trip-stats .txt[b-ud3xkbzdvj] { display: grid; line-height: 1.35; }
.trip-stats .txt b[b-ud3xkbzdvj] { font-weight: 600; }
.trip-books[b-ud3xkbzdvj] { display: flex; flex-wrap: wrap; gap: var(--sp-2); }
.trip-book[b-ud3xkbzdvj] { height: 28px; padding: 0 10px 0 4px; gap: var(--sp-2); background: var(--surface-2); color: var(--ink-2); text-decoration: none; }
.trip-book:hover[b-ud3xkbzdvj] { background: var(--surface-3); color: var(--ink); }
.trip-book .cover-xs[b-ud3xkbzdvj] { width: 26px; height: 18px; }
.trip-actions[b-ud3xkbzdvj] { display: flex; flex-wrap: wrap; gap: 10px; }

@media (max-width: 760px) {
    .mosaic[b-ud3xkbzdvj] { height: 170px; }
    .trip-body[b-ud3xkbzdvj] { padding: var(--sp-4); }
}
