:root {
    --bz-ink: #17202a;
    --bz-muted: #5f6b7a;
    --bz-line: #d8dee7;
    --bz-accent: #136f63;
    --bz-warning: #9a5b00;
    --bz-soft: #f5f8fb;
}

body {
    color: var(--bz-ink);
    background: #ffffff;
}

.app-shell {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.site-main {
    flex: 1;
}

.hero-band {
    background: linear-gradient(180deg, #eef7f5 0%, #ffffff 100%);
    border-bottom: 1px solid var(--bz-line);
}

.feature-list {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
}

.feature-item {
    border: 1px solid var(--bz-line);
    border-radius: 8px;
    padding: 1rem;
    background: #ffffff;
}

.privacy-note {
    border-left: 4px solid var(--bz-accent);
    background: var(--bz-soft);
}

.security-note {
    border-left: 4px solid var(--bz-warning);
    background: #fff8ec;
}

.item-card {
    box-shadow: 0 10px 24px rgba(23, 32, 42, 0.04);
}

.item-card-actions {
    min-width: 260px;
}

.print-toolbar {
    position: sticky;
    top: 0;
    z-index: 10;
    background: rgba(255, 255, 255, 0.94);
    backdrop-filter: blur(8px);
}

.finder-step {
    border: 1px solid var(--bz-line);
    border-radius: 10px;
    background: #ffffff;
    padding: 1rem;
}

@media print {
    .navbar,
    footer,
    .no-print,
    .print-toolbar,
    .alert {
        display: none !important;
    }

    body {
        background: #ffffff;
    }

    .border,
    .rounded-2 {
        box-shadow: none !important;
    }
}

/* v0.31.28 — uproszczenie panelu i menu */
.app-topbar .container {
    display: flex;
}

.app-topnav {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    align-items: center;
    justify-content: flex-end;
}

.admin-menu-card,
.app-action-card,
.app-status-card,
.app-stat-card {
    box-shadow: 0 10px 24px rgba(23, 32, 42, 0.035);
}

.admin-menu-card .btn,
.app-topnav .btn {
    white-space: nowrap;
}

.admin-menu-grid .admin-menu-card {
    transition: border-color .15s ease, transform .15s ease;
}

.admin-menu-grid .admin-menu-card:hover,
.user-action-grid .app-action-card:hover {
    border-color: rgba(19, 111, 99, .45) !important;
    transform: translateY(-1px);
}

@media (max-width: 991.98px) {
    .app-topbar .container {
        flex-direction: column;
    }

    .app-topnav {
        justify-content: flex-start;
        width: 100%;
        overflow-x: auto;
        padding-bottom: .25rem;
    }
}

/* v0.31.29 — publiczne strony marketingowe / SEO */
.marketing-card,
.marketing-section {
    box-shadow: 0 10px 24px rgba(23, 32, 42, 0.035);
}

.marketing-card {
    position: relative;
    transition: border-color .15s ease, transform .15s ease;
}

.marketing-card:hover {
    border-color: rgba(19, 111, 99, .45) !important;
    transform: translateY(-1px);
}

.marketing-sidebar {
    top: 1.25rem;
}

.breadcrumb a {
    color: var(--bz-accent);
}

/* v0.31.34 — Lista przedmiotów UX PRO */
.items-page {
    max-width: 1180px;
}

.items-page-header .text-uppercase {
    letter-spacing: .08em;
}

.items-add-button {
    min-width: 156px;
}

.items-tip {
    font-size: .94rem;
}

.item-status-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.item-status-tab {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .45rem .75rem;
    border: 1px solid var(--bz-line);
    border-radius: 999px;
    color: var(--bz-muted);
    background: #fff;
    text-decoration: none;
    font-size: .88rem;
    font-weight: 600;
    transition: border-color .15s ease, background-color .15s ease, color .15s ease;
}

.item-status-tab span {
    display: inline-flex;
    min-width: 1.55rem;
    height: 1.55rem;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    background: var(--bz-soft);
    color: var(--bz-muted);
    font-size: .76rem;
}

.item-status-tab:hover,
.item-status-tab:focus-visible {
    border-color: rgba(19, 111, 99, .5);
    color: var(--bz-accent);
}

.item-status-tab.is-active {
    border-color: var(--bz-accent);
    background: #edf8f5;
    color: var(--bz-accent);
}

.item-status-tab.is-active span {
    background: var(--bz-accent);
    color: #fff;
}

.item-filter-bar {
    box-shadow: 0 8px 22px rgba(23, 32, 42, .035);
}

.item-filter-bar .form-label {
    color: #334155;
    margin-bottom: .35rem;
}

.item-search-field {
    position: relative;
}

.item-search-field > span {
    position: absolute;
    left: .85rem;
    top: 50%;
    z-index: 2;
    color: var(--bz-muted);
    transform: translateY(-52%);
    pointer-events: none;
}

.item-search-field .form-control {
    padding-left: 2.35rem;
}

.items-result-summary {
    min-height: 1.3rem;
}

.items-list {
    display: grid;
    gap: .85rem;
}

.item-card-pro {
    position: relative;
    padding: 1.15rem;
    box-shadow: 0 8px 22px rgba(23, 32, 42, .035);
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.item-card-pro:hover {
    border-color: rgba(19, 111, 99, .32) !important;
    box-shadow: 0 12px 30px rgba(23, 32, 42, .065);
    transform: translateY(-1px);
}

.item-card-pro.is-lost {
    border-color: #e7b85b !important;
    background: linear-gradient(90deg, #fffaf0 0, #fff 170px);
}

.item-card-main {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: start;
}

.item-type-icon {
    display: flex;
    width: 48px;
    height: 48px;
    align-items: center;
    justify-content: center;
    border: 1px solid #dce7e4;
    border-radius: 13px;
    background: #f0f8f6;
    font-size: 1.45rem;
    line-height: 1;
}

.item-card-content {
    min-width: 0;
}

.item-card-title-row h2 {
    overflow-wrap: anywhere;
}

.item-card-subtitle {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem .8rem;
    color: var(--bz-muted);
    font-size: .86rem;
}

.item-card-subtitle span + span::before {
    content: "•";
    margin-right: .8rem;
    color: #a0a9b5;
}

.item-public-code {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .35rem;
    color: var(--bz-muted);
    font-size: .86rem;
}

.item-public-code code {
    padding: .13rem .38rem;
    border: 1px solid #d7e1df;
    border-radius: 5px;
    background: #f6faf9;
    color: var(--bz-accent);
    font-weight: 700;
    letter-spacing: .035em;
}

.item-code-copy {
    padding: .1rem .35rem;
    border: 0;
    background: transparent;
    color: #0d6efd;
    font-size: .8rem;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.item-code-copy:hover,
.item-code-copy:focus-visible {
    color: #084298;
}

.item-code-copy.is-copied {
    color: var(--bz-accent);
    text-decoration: none;
}

.item-card-description {
    display: -webkit-box;
    overflow: hidden;
    color: #354151;
    font-size: .92rem;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.item-lost-alert {
    padding: .65rem .8rem;
    border: 1px solid #efd08f;
    border-radius: 8px;
    background: #fff7e5;
    color: #6f4600;
    font-size: .86rem;
}

.item-lost-alert strong {
    display: block;
    margin-bottom: .1rem;
}

.item-lost-alert span + span {
    margin-left: .35rem;
}

.item-card-stats {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem 1rem;
    color: var(--bz-muted);
    font-size: .8rem;
}

.item-card-stats strong {
    color: var(--bz-ink);
}

.item-shared-label {
    color: #725a11;
}

.item-card-actions-pro {
    display: flex;
    min-width: 178px;
    flex-direction: column;
    align-items: stretch;
    gap: .5rem;
}

.item-card-actions-pro > .btn,
.item-card-actions-pro > form .btn,
.item-card-actions-pro > details > summary {
    width: 100%;
    white-space: nowrap;
}

.item-primary-action {
    font-weight: 600;
}

.item-more-menu {
    position: relative;
}

.item-more-menu > summary {
    display: block;
    list-style: none;
    cursor: pointer;
    user-select: none;
}

.item-more-menu > summary::-webkit-details-marker {
    display: none;
}

.item-more-menu > summary::after {
    content: "⌄";
    float: right;
    margin-left: .65rem;
}

.item-more-menu[open] > summary::after {
    content: "⌃";
}

.item-more-panel {
    position: absolute;
    top: calc(100% + .4rem);
    right: 0;
    z-index: 30;
    width: 225px;
    padding: .4rem;
    border: 1px solid var(--bz-line);
    border-radius: 9px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(23, 32, 42, .16);
}

.item-more-panel a,
.item-more-delete {
    display: block;
    width: 100%;
    padding: .55rem .65rem;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: var(--bz-ink);
    font-size: .86rem;
    line-height: 1.2;
    text-align: left;
    text-decoration: none;
}

.item-more-panel a:hover,
.item-more-panel a:focus-visible,
.item-more-delete:hover,
.item-more-delete:focus-visible {
    background: var(--bz-soft);
}

.item-more-delete {
    color: #b42318;
}

.item-more-delete:hover,
.item-more-delete:focus-visible {
    background: #fff0ef;
}

.item-more-separator {
    height: 1px;
    margin: .3rem .2rem;
    background: var(--bz-line);
}

.items-empty-state {
    box-shadow: 0 10px 24px rgba(23, 32, 42, .035);
}

.items-empty-state p {
    max-width: 580px;
}

.items-empty-icon {
    margin-bottom: .75rem;
    font-size: 2.2rem;
}

@media (max-width: 991.98px) {
    .item-card-main {
        grid-template-columns: 44px minmax(0, 1fr);
    }

    .item-type-icon {
        width: 44px;
        height: 44px;
        border-radius: 12px;
        font-size: 1.3rem;
    }

    .item-card-actions-pro {
        grid-column: 1 / -1;
        display: grid;
        min-width: 0;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        padding-top: .85rem;
        border-top: 1px solid #e7ebf0;
    }

    .item-more-panel {
        right: 0;
    }
}

@media (max-width: 575.98px) {
    .items-page {
        padding-top: 1.25rem !important;
    }

    .items-page-header {
        margin-bottom: 1rem !important;
    }

    .items-add-button {
        width: 100%;
    }

    .items-tip {
        font-size: .86rem;
    }

    .item-status-tabs {
        flex-wrap: nowrap;
        margin-right: -.75rem;
        padding-right: .75rem;
        overflow-x: auto;
        scrollbar-width: thin;
    }

    .item-status-tab {
        flex: 0 0 auto;
    }

    .item-card-pro {
        padding: .95rem;
    }

    .item-card-main {
        grid-template-columns: 40px minmax(0, 1fr);
        gap: .75rem;
    }

    .item-type-icon {
        width: 40px;
        height: 40px;
        font-size: 1.18rem;
    }

    .item-card-title-row h2 {
        font-size: 1rem;
    }

    .item-card-subtitle span + span::before {
        display: none;
    }

    .item-card-subtitle {
        display: grid;
        gap: .15rem;
    }

    .item-card-stats {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .item-card-stats span:nth-child(3),
    .item-card-stats .item-shared-label {
        grid-column: 1 / -1;
    }

    .item-card-actions-pro {
        grid-template-columns: 1fr;
    }

    .item-card-actions-pro > .btn,
    .item-card-actions-pro > form .btn,
    .item-card-actions-pro > details > summary {
        min-height: 40px;
    }

    .item-more-panel {
        position: static;
        width: 100%;
        margin-top: .4rem;
        box-shadow: none;
    }
}


/* ETAP 31.34.1 — Items UX Visual Hotfix */
.items-page { max-width: 1120px; }
.items-page-header { padding-top: .25rem; }
.item-status-tabs { margin-bottom: 1rem !important; }
.item-filter-bar { border-color: #dfe6e4 !important; border-radius: 12px !important; padding: 1rem !important; }
.item-filter-bar .form-control,
.item-filter-bar .form-select,
.item-filter-bar .btn { min-height: 42px; border-radius: 8px; }
.item-search-field > span { font-size: 1.05rem; }
.items-list { gap: 1rem; }
.item-card-pro { border: 1px solid #dfe5e8 !important; border-radius: 14px !important; padding: 1.25rem !important; overflow: visible; }
.item-card-main { grid-template-columns: 56px minmax(0, 1fr) 190px; gap: 1.15rem; align-items: stretch; }
.item-type-icon { width: 56px; height: 56px; border-radius: 15px; font-size: 1.7rem; }
.item-card-content { display: flex; flex-direction: column; min-height: 132px; }
.item-card-title-row { margin-bottom: .1rem; }
.item-card-title-row h2 { font-size: 1.08rem; font-weight: 700; line-height: 1.3; }
.item-card-title-row .badge { font-size: .68rem; padding: .35em .58em; }
.item-card-subtitle { margin-top: .3rem !important; }
.item-public-code { margin-top: .75rem !important; }
.item-card-description { margin-top: .65rem !important; }
.item-card-stats { margin-top: auto !important; padding-top: .9rem; border-top: 1px solid #edf0f2; }
.item-card-actions-pro { min-width: 0; justify-content: center; gap: .55rem; }
.item-card-actions-pro > .btn,
.item-card-actions-pro > form .btn,
.item-card-actions-pro > details > summary { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; border-radius: 8px; font-size: .84rem; font-weight: 600; }
.item-more-menu > summary { position: relative; padding-right: 1.9rem; }
.item-more-menu > summary::after { position: absolute; right: .65rem; float: none; }
.item-more-panel { width: 245px; border-radius: 11px; }
.item-more-panel a, .item-more-delete { padding: .65rem .75rem; }
.item-code-copy { border: 1px solid #ccd7d4; border-radius: 6px; padding: .18rem .48rem; text-decoration: none; background: #fff; }
.item-code-copy:hover { background: #f2f7f6; }
@media (max-width: 991.98px) {
  .item-card-main { grid-template-columns: 50px minmax(0, 1fr); }
  .item-card-actions-pro { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: stretch; }
  .item-type-icon { width: 50px; height: 50px; }
}
@media (max-width: 575.98px) {
  .item-filter-bar .row > div { width: 100%; }
  .item-card-pro { padding: 1rem !important; }
  .item-card-main { grid-template-columns: 42px minmax(0, 1fr); gap: .8rem; }
  .item-type-icon { width: 42px; height: 42px; border-radius: 12px; font-size: 1.3rem; }
  .item-card-actions-pro { display: grid; grid-template-columns: 1fr; }
  .item-card-stats { grid-template-columns: 1fr 1fr; gap: .35rem .75rem; }
  .item-more-panel { position: static; width: 100%; margin-top: .45rem; }
}

/* ETAP 31.34.2 — dropdown stacking hotfix */
.items-list,
.item-card-pro,
.item-card-main,
.item-card-actions-pro,
.item-more-menu {
    overflow: visible;
}

.item-card-pro {
    z-index: 0;
}

.item-card-pro:hover,
.item-card-pro:focus-within,
.item-card-pro:has(.item-more-menu[open]) {
    z-index: 80;
}

.item-more-menu[open] {
    z-index: 90;
}

.item-more-panel {
    z-index: 100;
}

/* ETAP 31.35 — Dodawanie przedmiotu UX Wizard */
.item-wizard-page { max-width: 1120px; }
.item-wizard-eyebrow,
.item-wizard-section-number { display: block; color: #0f766e; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.item-wizard { overflow: hidden; border-color: #dfe7e5 !important; box-shadow: 0 16px 45px rgba(24, 54, 49, .06); }
.item-wizard-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-bottom: 1px solid #e5ecea; background: #f8fbfa; }
.item-wizard-step { appearance: none; display: flex; align-items: center; gap: .75rem; min-width: 0; padding: 1rem 1.15rem; border: 0; border-right: 1px solid #e5ecea; background: transparent; color: #64706d; text-align: left; }
.item-wizard-step:last-child { border-right: 0; }
.item-wizard-step:hover { background: #f1f7f5; }
.item-wizard-step.is-active { background: #fff; color: #17211f; box-shadow: inset 0 -3px 0 #198754; }
.item-wizard-step.is-complete .item-wizard-step-number { background: #198754; color: #fff; border-color: #198754; }
.item-wizard-step-number { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 32px; width: 32px; height: 32px; border: 1px solid #b8c8c4; border-radius: 50%; background: #fff; font-weight: 800; }
.item-wizard-step strong,
.item-wizard-step small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.item-wizard-step strong { font-size: .91rem; }
.item-wizard-step small { margin-top: .08rem; font-size: .72rem; color: #7b8784; }
.item-wizard-body { padding: 1.5rem; }
.item-wizard-panel { display: block; }
.js-wizard-ready .item-wizard-panel { display: none; }
.js-wizard-ready .item-wizard-panel.is-active { display: block; animation: itemWizardIn .18s ease-out; }
@keyframes itemWizardIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
.item-wizard-section-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; }
.item-option-card,
.item-toggle-card { display: grid; gap: .35rem; padding: 1rem; border: 1px solid #dfe7e5; border-radius: 12px; background: #f8fbfa; }
.item-toggle-card-warning { border-color: #f4d47b; background: #fff9e8; }
.item-conditional-section { padding: 1rem; border: 1px solid #dfe7e5; border-radius: 12px; background: #fff; }
.item-lost-details { border-color: #f0cf72; background: #fffaf0; }
.item-conditional-icon { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border-radius: 10px; background: #fff; border: 1px solid #eadcae; font-size: 1.15rem; }
.item-wizard-summary { padding: 1.1rem; border: 1px solid #cfe0db; border-radius: 14px; background: linear-gradient(135deg, #f6fbf9, #fff); }
.item-summary-icon { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: #e9f5f1; font-size: 1.25rem; }
.item-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .8rem; }
.item-summary-grid > div { min-width: 0; padding: .75rem; border-radius: 10px; background: #fff; border: 1px solid #e8eeec; }
.item-summary-grid dt { margin-bottom: .18rem; color: #75817e; font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.item-summary-grid dd { margin: 0; overflow-wrap: anywhere; font-weight: 650; }
.item-wizard-footer { display: flex; align-items: center; gap: .75rem; padding: 1rem 1.5rem; border-top: 1px solid #e5ecea; background: #fbfcfc; }
.item-wizard-footer .btn { min-width: 104px; }
.item-wizard input:focus,
.item-wizard select:focus,
.item-wizard textarea:focus { border-color: #4cae89; box-shadow: 0 0 0 .2rem rgba(25, 135, 84, .12); }
@media (max-width: 767.98px) {
  .item-wizard-page { padding-top: 2rem !important; }
  .item-wizard-steps { grid-template-columns: 1fr; }
  .item-wizard-step { border-right: 0; border-bottom: 1px solid #e5ecea; padding: .75rem 1rem; }
  .item-wizard-step:last-child { border-bottom: 0; }
  .js-wizard-ready .item-wizard-step:not(.is-active) small { display: none; }
  .item-wizard-body { padding: 1rem; }
  .item-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .item-wizard-footer { position: sticky; bottom: 0; z-index: 20; padding: .8rem 1rem; }
}
@media (max-width: 480px) {
  .item-summary-grid { grid-template-columns: 1fr; }
  .item-wizard-footer { flex-wrap: wrap; }
  .item-wizard-footer > a { width: 100%; order: 2; }
  .item-wizard-footer > div { width: 100%; }
  .item-wizard-footer .btn { flex: 1 1 0; }
}

/* ETAP 31.36 — QR & Print Center UX PRO */
.qr-print-center { max-width: 1120px; }
.qr-print-eyebrow { display:block; color:#0f766e; font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.qr-copy-feedback { margin-bottom:1rem; padding:.7rem .9rem; border:1px solid #b9dfcf; border-radius:10px; background:#edf9f3; color:#155f43; font-weight:600; }
.qr-recommended-card { display:flex; align-items:center; gap:1.1rem; padding:1.25rem; border:1px solid #b9ddce; border-radius:16px; background:linear-gradient(135deg,#f2fbf7,#fff); box-shadow:0 12px 35px rgba(20,90,64,.07); }
.qr-recommended-icon { display:flex; align-items:center; justify-content:center; flex:0 0 58px; width:58px; height:58px; border-radius:16px; background:#dff3e9; font-size:1.7rem; }
.qr-material-card { padding:1.25rem; border:1px solid #dfe7e5; border-radius:15px; background:#fff; box-shadow:0 8px 26px rgba(28,52,47,.045); }
.qr-material-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; margin-bottom:1rem; }
.qr-code-preview { display:flex; align-items:center; justify-content:center; max-width:330px; margin:0 auto 1rem; padding:1rem; border:1px solid #dfe7e5; border-radius:14px; background:#fff; }
.qr-code-preview img { display:block; width:100%; max-width:280px; height:auto; }
.qr-label-preview { display:flex; align-items:center; justify-content:center; min-height:250px; margin:1rem 0; padding:1rem; overflow:hidden; border:1px solid #e0e7e5; border-radius:13px; background:#f8faf9; }
.qr-label-preview img { display:block; width:100%; max-width:560px; max-height:270px; object-fit:contain; }
.qr-size-picker { display:inline-flex; align-items:center; flex-wrap:wrap; gap:.35rem; padding:.3rem; border:1px solid #d5dfdc; border-radius:10px; background:#f7faf9; }
.qr-size-label { padding:0 .45rem; color:#65716e; font-size:.82rem; font-weight:700; }
.qr-size-option { appearance:none; padding:.46rem .78rem; border:0; border-radius:7px; background:transparent; color:#4f5d59; font-size:.84rem; font-weight:650; }
.qr-size-option:hover { background:#eaf3ef; }
.qr-size-option.is-active { background:#198754; color:#fff; box-shadow:0 3px 10px rgba(25,135,84,.18); }
.qr-format-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.7rem; }
.qr-format-grid a { display:grid; grid-template-columns:36px minmax(0,1fr); column-gap:.65rem; align-items:center; padding:.8rem; border:1px solid #dce5e2; border-radius:11px; color:#1c2926; text-decoration:none; background:#fff; }
.qr-format-grid a:hover { border-color:#91c7b1; background:#f4faf7; transform:translateY(-1px); }
.qr-format-grid a > span { grid-row:1 / 3; font-size:1.35rem; }
.qr-format-grid strong { font-size:.9rem; }
.qr-format-grid small { color:#76817e; }
.qr-test-card { display:flex; gap:.85rem; padding:1rem; border:1px solid #dce5e2; border-radius:13px; background:#f8faf9; }
.qr-test-card.is-tested { border-color:#a8d8c4; background:#eff9f4; }
.qr-test-icon { display:flex; align-items:center; justify-content:center; flex:0 0 40px; width:40px; height:40px; border-radius:11px; background:#fff; border:1px solid #dce5e2; color:#198754; font-size:1.15rem; font-weight:800; }
.qr-print-instructions { padding-left:1.2rem; }
.qr-print-instructions li + li { margin-top:.35rem; }
@media (max-width:767.98px) {
  .qr-print-center { padding-top:2rem !important; }
  .qr-recommended-card { align-items:flex-start; flex-wrap:wrap; }
  .qr-recommended-card .btn { width:100%; }
  .qr-format-grid { grid-template-columns:1fr; }
  .qr-label-preview { min-height:190px; }
  .qr-label-preview img { max-height:210px; }
}

/* ETAP 31.37 — QR Activity Empty State & Analytics UX PRO */
.qr-range-tabs{display:inline-flex;gap:.35rem;padding:.3rem;border:1px solid #dce5e2;border-radius:12px;background:#fff}
.qr-range-tab{padding:.45rem .8rem;border-radius:9px;color:#53615d;text-decoration:none;font-size:.9rem;font-weight:600}
.qr-range-tab:hover{background:#f2f7f5;color:#198754}.qr-range-tab.is-active{background:#198754;color:#fff}
.qr-stat-card,.qr-analytics-card{height:100%;padding:1.35rem;border:1px solid #dce5e2;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(31,55,47,.035)}
.qr-stat-card span{display:block;color:#6c7975;font-size:.9rem}.qr-stat-card strong{display:block;margin-top:.35rem;font-size:2rem;line-height:1;color:#1f2a27}
.qr-empty-state{display:flex;align-items:center;gap:1.25rem;padding:1.5rem;border:1px dashed #8fc7af;border-radius:16px;background:#f2faf6}
.qr-empty-icon{display:flex;align-items:center;justify-content:center;flex:0 0 64px;width:64px;height:64px;border-radius:18px;background:#fff;border:1px solid #b9ddcd;color:#198754;font-size:2rem;font-weight:800}
.qr-timeline{position:relative;margin-left:.25rem}.qr-timeline:before{content:"";position:absolute;left:6px;top:8px;bottom:8px;width:2px;background:#dfe8e4}
.qr-timeline-item{position:relative;padding:0 0 1.25rem 2rem}.qr-timeline-item:last-child{padding-bottom:0}.qr-timeline-dot{position:absolute;left:0;top:.35rem;width:14px;height:14px;border:3px solid #fff;border-radius:50%;background:#198754;box-shadow:0 0 0 1px #8fc7af}.qr-timeline-item time{display:block;margin-top:.25rem;color:#7a8581;font-size:.8rem}
@media(max-width:767.98px){.qr-range-tabs{display:flex;overflow:auto}.qr-range-tab{flex:1 0 auto;text-align:center}.qr-empty-state{align-items:flex-start;flex-direction:column}.qr-empty-state .btn{width:100%}}

/* ETAP 31.38 — Dashboard Action Center UX PRO */
.dashboard-pro { max-width: 1180px; }
.dashboard-eyebrow,
.dashboard-section-kicker { color: #0f8a58; font-size: .72rem; font-weight: 800; letter-spacing: .08em; }
.dashboard-action-center { border: 1px solid #d9e3df; border-left: 4px solid #168b5b; border-radius: 14px; padding: 1.35rem; background: #fff; box-shadow: 0 10px 30px rgba(20, 45, 35, .04); }
.dashboard-action-center.has-actions { border-left-color: #d89b00; background: #fffdf7; }
.dashboard-action-center__header { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; }
.dashboard-action-badge { display: inline-flex; min-width: 2.5rem; height: 2.5rem; align-items: center; justify-content: center; border-radius: 999px; background: #eaf6f0; color: #087a4c; font-weight: 800; }
.has-actions .dashboard-action-badge { background: #fff0c9; color: #9c6800; }
.dashboard-task-list { display: grid; gap: .55rem; }
.dashboard-task-row { display: grid; grid-template-columns: 2.25rem 1fr auto; gap: .8rem; align-items: center; padding: .8rem .9rem; border: 1px solid #e7ece9; border-radius: 10px; background: #fff; color: inherit; text-decoration: none; }
.dashboard-task-row:hover { border-color: #9bcbb8; box-shadow: 0 5px 16px rgba(20, 60, 45, .07); }
.dashboard-task-row small { display: block; color: #66736d; margin-top: .1rem; }
.dashboard-task-icon { font-size: 1.25rem; }
.dashboard-task-arrow { color: #168b5b; font-weight: 800; }
.dashboard-clear-state { display: flex; align-items: center; gap: .8rem; padding: .85rem 1rem; border-radius: 10px; background: #f0f8f4; }
.dashboard-clear-state > span { width: 2rem; height: 2rem; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #168b5b; color: #fff; font-weight: 900; }
.dashboard-clear-state small { display: block; color: #66736d; }
.dashboard-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: .9rem; }
.dashboard-summary-card { display: flex; align-items: center; gap: .8rem; padding: 1rem; border: 1px solid #dfe6e2; border-radius: 12px; color: inherit; background: #fff; text-decoration: none; }
.dashboard-summary-card:hover { border-color: #9bcbb8; transform: translateY(-1px); }
.dashboard-summary-card.is-warning { border-color: #efd488; background: #fffdf6; }
.dashboard-summary-icon { font-size: 1.35rem; }
.dashboard-summary-card strong { display: block; font-size: 1.45rem; line-height: 1; }
.dashboard-summary-card span:last-child { display: block; color: #68756f; font-size: .86rem; margin-top: .25rem; }
.dashboard-feature-card,
.dashboard-qr-card { border: 1px solid #dfe6e2; border-radius: 14px; padding: 1.45rem; background: #fff; }
.dashboard-feature-card__header { display: flex; justify-content: space-between; gap: 1rem; }
.dashboard-feature-icon { width: 3rem; height: 3rem; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; background: #eef8f3; font-size: 1.45rem; }
.dashboard-inline-stats { display: flex; flex-wrap: wrap; gap: .7rem 1.2rem; margin-top: 1.2rem; color: #637069; }
.dashboard-inline-stats strong { color: #15231d; }
.dashboard-case-list { display: grid; gap: .55rem; color: #637069; }
.dashboard-case-list span { padding-bottom: .5rem; border-bottom: 1px solid #edf0ee; }
.dashboard-case-list strong { color: #15231d; margin-right: .25rem; }
.dashboard-qr-card__content { display: flex; justify-content: space-between; align-items: center; gap: 1rem; }
.dashboard-qr-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin-top: 1.2rem; padding-top: 1.1rem; border-top: 1px solid #e8edea; }
.dashboard-qr-stats strong { display: block; font-size: 1.35rem; }
.dashboard-qr-stats span { color: #68756f; font-size: .86rem; }
.dashboard-secondary-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .9rem; }
.dashboard-secondary-card { display: grid; grid-template-columns: 2.4rem 1fr auto; gap: .8rem; align-items: center; padding: 1rem 1.1rem; border: 1px solid #dfe6e2; border-radius: 12px; color: inherit; background: #fff; text-decoration: none; }
.dashboard-secondary-card:hover { border-color: #9bcbb8; }
.dashboard-secondary-card > span { font-size: 1.25rem; }
.dashboard-secondary-card strong, .dashboard-secondary-card small { display: block; }
.dashboard-secondary-card small { color: #68756f; margin-top: .15rem; }
.dashboard-secondary-card b { color: #168b5b; }
@media (max-width: 991.98px) {
  .dashboard-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767.98px) {
  .dashboard-pro { padding-top: 2rem !important; }
  .dashboard-main-actions { width: 100%; }
  .dashboard-main-actions .btn { flex: 1 1 auto; }
  .dashboard-action-center__header, .dashboard-qr-card__content { align-items: flex-start; flex-direction: column; }
  .dashboard-summary-grid, .dashboard-secondary-grid { grid-template-columns: 1fr; }
  .dashboard-qr-stats { grid-template-columns: 1fr; gap: .65rem; }
  .dashboard-task-row { grid-template-columns: 2rem 1fr auto; }
}

/* ETAP 31.39 — Return Center Empty State & Workflow UX PRO */
.return-center-pro{max-width:1180px}.return-center-eyebrow{display:block;color:#0f8a58;font-size:.72rem;font-weight:800;letter-spacing:.08em}.return-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}.return-action-card{padding:1.2rem;border:1px solid #dfe6e2;border-radius:14px;background:#fff;color:inherit;text-decoration:none}.return-action-card:hover{border-color:#9bcbb8;transform:translateY(-1px)}.return-action-card.is-warning{border-color:#efd488;background:#fffdf6}.return-action-card span,.return-action-card small{display:block;color:#68756f}.return-action-card strong{display:block;margin:.35rem 0;font-size:2rem}.return-empty-state{display:flex;gap:1.2rem;align-items:flex-start;padding:1.5rem;border:1px dashed #8fc7af;border-radius:16px;background:#f2faf6}.return-empty-icon{display:flex;align-items:center;justify-content:center;flex:0 0 58px;width:58px;height:58px;border-radius:16px;background:#fff;border:1px solid #b9ddcd;color:#198754;font-size:1.7rem;font-weight:800}.return-panel{padding:1.4rem;border:1px solid #dfe6e2;border-radius:14px;background:#fff}.return-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;height:2.4rem;border-radius:999px;background:#eaf6f0;color:#087a4c;font-weight:800}.return-clear-state{display:flex;align-items:center;gap:.8rem;padding:.9rem 1rem;border-radius:11px;background:#f0f8f4}.return-clear-state>span{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:#168b5b;color:#fff;font-weight:900}.return-clear-state small{display:block;color:#68756f}.return-case-list{display:grid;gap:.55rem}.return-case-list a{display:flex;justify-content:space-between;gap:1rem;padding:.85rem;border:1px solid #e7ece9;border-radius:10px;color:inherit;text-decoration:none}.return-case-list a:hover{border-color:#9bcbb8}.return-case-list small{display:block;color:#68756f;margin-top:.2rem}.return-case-list a>span{color:#168b5b;font-weight:700}.return-workflow{display:grid;gap:.85rem}.return-workflow>div{display:grid;grid-template-columns:2rem 1fr;gap:.75rem;position:relative}.return-workflow>div:not(:last-child):after{content:"";position:absolute;left:.95rem;top:2rem;bottom:-.85rem;width:2px;background:#dfe8e4}.return-workflow span{display:inline-flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:#edf3f0;color:#5e6c66;font-weight:800;z-index:1}.return-workflow .is-current span{background:#198754;color:#fff}.return-workflow small{display:block;color:#68756f}.return-results-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.return-results-grid>div{padding:1rem;border:1px solid #e5ebe8;border-radius:11px;background:#fafcfb}.return-results-grid span{display:block;color:#68756f;font-size:.86rem}.return-results-grid strong{display:block;margin-top:.25rem;font-size:1.55rem}@media(max-width:991.98px){.return-action-grid{grid-template-columns:1fr}.return-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767.98px){.return-center-pro{padding-top:2rem!important}.return-empty-state{flex-direction:column}.return-empty-state .btn{width:100%}.return-results-grid{grid-template-columns:1fr}.return-case-list a{align-items:flex-start;flex-direction:column}}

/* ETAP 31.40 — Organizations List & Onboarding UX PRO */
.organizations-list-pro{max-width:1180px}.organizations-eyebrow{display:block;margin-bottom:.35rem;color:#0f8a58;font-size:.72rem;font-weight:800;letter-spacing:.08em}.organization-invitations{display:flex;gap:1rem;padding:1.15rem;border:1px solid #bfd9f4;border-radius:14px;background:#f4f9ff}.organization-invitations__icon{display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:13px;background:#fff;border:1px solid #cfe0f2;font-size:1.3rem}.organization-invitation-row{display:flex;justify-content:space-between;gap:1rem;padding:.7rem .85rem;border-radius:10px;background:#fff}.organization-invitation-row small{display:block;color:#68756f;margin-top:.15rem}.organization-filters{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(140px,.8fr)) auto;gap:.75rem;align-items:end;padding:1rem;border:1px solid #dfe6e2;border-radius:14px;background:#fff}.organization-filter-actions{display:flex;gap:.5rem}.organization-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.organization-card{display:flex;flex-direction:column;min-width:0;padding:1.35rem;border:1px solid #dfe6e2;border-radius:16px;background:#fff;box-shadow:0 8px 25px rgba(27,58,46,.04)}.organization-card:hover{border-color:#a7cdbd;box-shadow:0 12px 32px rgba(27,58,46,.07)}.organization-card__header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.organization-card__identity{display:flex;align-items:center;gap:.9rem;min-width:0}.organization-card__icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 52px;width:52px;height:52px;border:1px solid #d8e5df;border-radius:15px;background:#f1f8f5;font-size:1.55rem}.organization-card__type{display:block;margin-bottom:.2rem;color:#0f8a58;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.organization-role-badge{display:inline-flex;padding:.35rem .6rem;border-radius:999px;background:#edf5f1;color:#35604f;font-size:.76rem;font-weight:700;white-space:nowrap}.organization-card__description{margin:1rem 0 0;color:#65726c}.organization-card__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:1.15rem}.organization-card__stats>div{padding:.75rem;border:1px solid #e7ece9;border-radius:11px;background:#fafcfb}.organization-card__stats strong,.organization-card__stats span{display:block}.organization-card__stats strong{font-size:1.3rem}.organization-card__stats span{color:#68756f;font-size:.78rem}.organization-onboarding{margin-top:1rem;padding:1rem;border:1px solid #e6ddbc;border-radius:12px;background:#fffdf6}.organization-onboarding>div>span{color:#8b6b09;font-weight:700}.organization-progress{height:6px;background:#eee9d8}.organization-checklist{display:grid;gap:.35rem;margin-top:.75rem;padding-left:0;list-style:none;color:#6d756f;font-size:.84rem}.organization-checklist li:before{content:'○';display:inline-block;width:1.2rem;color:#9aa59f}.organization-checklist li.is-done:before{content:'✓';color:#198754;font-weight:900}.organization-last-activity{display:flex;justify-content:space-between;gap:1rem;margin-top:1rem;padding:.8rem .9rem;border-radius:10px;background:#f7faf8}.organization-last-activity span{color:#68756f;font-size:.82rem}.organization-last-activity strong{font-size:.82rem;text-align:right}.organization-card__actions{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:auto;padding-top:1rem}.organization-empty-state{display:flex;align-items:flex-start;gap:1.2rem;padding:1.6rem;border:1px dashed #8fc7af;border-radius:16px;background:#f2faf6}.organization-empty-state__icon{display:flex;align-items:center;justify-content:center;flex:0 0 62px;width:62px;height:62px;border:1px solid #b9ddcd;border-radius:17px;background:#fff;font-size:1.8rem}@media(max-width:991.98px){.organization-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.organization-filter-actions{align-self:end}.organization-card-grid{grid-template-columns:1fr}}@media(max-width:767.98px){.organizations-list-pro{padding-top:2rem!important}.organization-filters{grid-template-columns:1fr}.organization-filter-actions,.organization-filter-actions .btn{width:100%}.organization-filter-actions .btn{flex:1}.organization-invitations,.organization-empty-state{flex-direction:column}.organization-invitation-row{align-items:flex-start;flex-direction:column}.organization-card__header{align-items:flex-start;flex-direction:column}.organization-card__stats{grid-template-columns:repeat(3,minmax(0,1fr))}.organization-card__actions .btn{flex:1 1 100%}}@media(max-width:420px){.organization-card__stats{grid-template-columns:1fr}.organization-card__stats>div{display:flex;justify-content:space-between;align-items:center}.organization-card__stats strong,.organization-card__stats span{display:inline}.organization-last-activity{align-items:flex-start;flex-direction:column}.organization-last-activity strong{text-align:left}}

/* ETAP 31.41 — Organization Workspace UX PRO */
.organization-workspace-pro{max-width:1180px}.organization-workspace-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem}.organization-back-link{display:inline-block;margin-bottom:.8rem;color:#68756f;text-decoration:none}.organization-back-link:hover{color:#168b5b}.organization-workspace-eyebrow{display:block;margin-bottom:.3rem;color:#0f8a58;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.organization-workspace-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.organization-more-menu{position:relative}.organization-more-menu summary{list-style:none;cursor:pointer}.organization-more-menu summary::-webkit-details-marker{display:none}.organization-more-menu__panel{position:absolute;z-index:30;top:calc(100% + .45rem);right:0;min-width:230px;padding:.45rem;border:1px solid #dfe6e2;border-radius:12px;background:#fff;box-shadow:0 16px 36px rgba(27,58,46,.14)}.organization-more-menu__panel a{display:block;padding:.65rem .75rem;border-radius:8px;color:#25332d;text-decoration:none}.organization-more-menu__panel a:hover{background:#f0f7f4;color:#087a4c}.organization-workspace-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.organization-workspace-stats>div{padding:1rem 1.1rem;border:1px solid #dfe6e2;border-radius:13px;background:#fff}.organization-workspace-stats strong,.organization-workspace-stats span{display:block}.organization-workspace-stats strong{font-size:1.5rem}.organization-workspace-stats span{color:#68756f;font-size:.84rem}.organization-workspace-tabs{display:flex;gap:.35rem;overflow-x:auto;border-bottom:1px solid #dfe6e2}.organization-workspace-tabs a{display:inline-flex;padding:.85rem 1rem;border-bottom:3px solid transparent;color:#586760;text-decoration:none;white-space:nowrap}.organization-workspace-tabs a:hover{color:#168b5b}.organization-workspace-tabs a.is-active{border-color:#198754;color:#087a4c;font-weight:700}.organization-workspace-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.8fr);gap:1rem}.organization-workspace-grid--members{grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr)}.organization-workspace-main,.organization-workspace-side{display:grid;gap:1rem;align-content:start}.organization-workspace-panel{padding:1.35rem;border:1px solid #dfe6e2;border-radius:15px;background:#fff}.organization-workspace-empty{display:flex;gap:1.2rem;align-items:flex-start;padding:1.6rem;border:1px dashed #8fc7af;border-radius:16px;background:#f2faf6}.organization-workspace-empty--compact{padding:1.15rem}.organization-workspace-empty__icon{display:flex;align-items:center;justify-content:center;flex:0 0 58px;width:58px;height:58px;border:1px solid #b9ddcd;border-radius:16px;background:#fff;color:#168b5b;font-weight:900}.organization-setup-progress{height:7px;background:#edf1ef}.organization-setup-progress .progress-bar{background:#198754}.organization-setup-list{display:grid;gap:.45rem;margin:0;padding:0;list-style:none;color:#68756f}.organization-setup-list li:before{content:'○';display:inline-block;width:1.25rem;color:#9ba7a1}.organization-setup-list li.is-done:before{content:'✓';color:#198754;font-weight:900}.organization-overview-items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.organization-overview-items a{padding:.9rem;border:1px solid #e5ebe8;border-radius:10px;color:inherit;text-decoration:none}.organization-overview-items a:hover{border-color:#9bcbb8}.organization-overview-items strong,.organization-overview-items span{display:block}.organization-overview-items span{margin-top:.2rem;color:#68756f;font-size:.82rem}.organization-activity-preview,.organization-activity-timeline{display:grid;gap:.8rem}.organization-activity-preview>div,.organization-activity-timeline>div{display:grid;grid-template-columns:1rem 1fr;gap:.65rem;position:relative}.organization-activity-preview>div>span,.organization-activity-timeline>div>span{width:.7rem;height:.7rem;margin-top:.35rem;border-radius:50%;background:#198754}.organization-activity-preview p,.organization-activity-timeline article{margin:0}.organization-activity-preview strong,.organization-activity-preview small,.organization-activity-timeline strong,.organization-activity-timeline small{display:block}.organization-activity-preview small,.organization-activity-timeline small{color:#68756f;margin-top:.15rem}.organization-items-table td:first-child small{display:block;color:#68756f;margin-top:.2rem}.organization-members-list{display:grid;gap:.75rem}.organization-member-card{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:.85rem;align-items:center;padding:1rem;border:1px solid #e5ebe8;border-radius:12px}.organization-member-avatar{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:#edf7f2;color:#087a4c;font-weight:800}.organization-member-info strong,.organization-member-info span,.organization-member-info small{display:block}.organization-member-info span{color:#46564f;font-size:.88rem}.organization-member-info small{color:#68756f;margin-top:.15rem}.organization-member-actions{position:relative}.organization-member-actions summary{list-style:none;cursor:pointer}.organization-member-actions summary::-webkit-details-marker{display:none}.organization-member-actions>div{position:absolute;z-index:25;right:0;top:calc(100% + .4rem);min-width:220px;padding:.75rem;border:1px solid #dfe6e2;border-radius:11px;background:#fff;box-shadow:0 14px 30px rgba(27,58,46,.13)}.organization-invite-panel{position:sticky;top:1rem;align-self:start}.organization-integrations-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.organization-integrations-grid a{padding:1.1rem;border:1px solid #dfe6e2;border-radius:13px;color:inherit;text-decoration:none}.organization-integrations-grid a:hover{border-color:#9bcbb8;transform:translateY(-1px)}.organization-integrations-grid span{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:34px;margin-bottom:.75rem;padding:0 .5rem;border-radius:9px;background:#edf7f2;color:#087a4c;font-size:.76rem;font-weight:900}.organization-integrations-grid strong,.organization-integrations-grid small{display:block}.organization-integrations-grid small{color:#68756f;margin-top:.25rem}@media(max-width:991.98px){.organization-workspace-grid,.organization-workspace-grid--members{grid-template-columns:1fr}.organization-invite-panel{position:static}.organization-integrations-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:767.98px){.organization-workspace-pro{padding-top:2rem!important}.organization-workspace-header{flex-direction:column}.organization-workspace-actions{width:100%}.organization-workspace-actions>.btn,.organization-workspace-actions>details{flex:1 1 auto}.organization-workspace-actions>details summary{width:100%}.organization-more-menu__panel{left:0;right:auto}.organization-workspace-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.organization-overview-items,.organization-integrations-grid{grid-template-columns:1fr}.organization-workspace-empty{flex-direction:column}.organization-member-card{grid-template-columns:46px minmax(0,1fr)}.organization-member-actions{grid-column:1/-1}.organization-member-actions>div{position:static;margin-top:.5rem;box-shadow:none}.organization-items-table{min-width:760px}}@media(max-width:420px){.organization-workspace-stats{grid-template-columns:1fr}.organization-workspace-stats>div{display:flex;justify-content:space-between;align-items:center}.organization-workspace-stats strong,.organization-workspace-stats span{display:inline}}

/* ETAP 31.42 — Bulk Labels Print Center PRO */
.bulk-labels-page { max-width: 1120px; }
.bulk-labels-wizard { overflow: hidden; box-shadow: 0 16px 42px rgba(28, 55, 50, .06); }
.bulk-labels-section { padding: 1.25rem; }
.bulk-labels-step { display:block; margin-bottom:.2rem; color:#0f766e; font-size:.72rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.bulk-labels-scope, .bulk-label-options { display:flex; flex-wrap:wrap; gap:.75rem 1.25rem; }
.bulk-labels-scope label, .bulk-label-options label { display:inline-flex; align-items:center; gap:.45rem; }
.bulk-labels-items { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.65rem; max-height:460px; overflow:auto; padding:.2rem; }
.bulk-label-item { display:grid; grid-template-columns:auto 42px minmax(0,1fr) auto; gap:.65rem; align-items:center; padding:.8rem; border:1px solid #dfe7e5; border-radius:11px; background:#fff; cursor:pointer; }
.bulk-label-item:hover { border-color:#9fc7bb; background:#f8fbfa; }
.bulk-label-item:has(input:checked) { border-color:#198754; background:#f1faf6; box-shadow:0 0 0 2px rgba(25,135,84,.08); }
.bulk-label-item-icon { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; border-radius:10px; background:#edf6f3; }
.bulk-label-item-main { min-width:0; display:grid; }
.bulk-label-item-main strong, .bulk-label-item-main small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.bulk-label-item-main small { color:#687471; }
@media (max-width:767.98px) {
  .bulk-labels-items { grid-template-columns:1fr; max-height:none; }
  .bulk-label-item { grid-template-columns:auto 38px minmax(0,1fr); }
  .bulk-label-item > .badge { grid-column:2 / -1; justify-self:start; }
  .items-header-actions { width:100%; }
  .items-header-actions .btn { flex:1 1 auto; }
}

/* ETAP 31.44 — Found Items Board MVP */
.found-board-page,.found-item-create-page,.found-item-public-page,.found-item-manage-page{max-width:1180px}.found-board-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem;padding:1.7rem;border:1px solid #dce7e2;border-radius:18px;background:linear-gradient(135deg,#f5fbf8,#fff)}.found-board-eyebrow{display:block;margin-bottom:.35rem;color:#0f8a58;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.found-board-safety{display:flex;gap:.9rem;align-items:flex-start;padding:1rem 1.1rem;border:1px solid #bee0d0;border-radius:13px;background:#f1faf6}.found-board-safety>span{font-size:1.4rem}.found-board-safety strong,.found-board-safety small{display:block}.found-board-safety small{margin-top:.15rem;color:#63726b}.found-board-filters{display:grid;grid-template-columns:1.25fr 1fr .9fr auto;gap:.8rem;padding:1rem;border:1px solid #dfe7e3;border-radius:14px;background:#fff}.found-board-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.found-board-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #dfe7e3;border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(29,60,48,.05)}.found-board-card:hover{border-color:#9bcbb8;transform:translateY(-1px)}.found-board-card__image{display:flex;align-items:center;justify-content:center;height:190px;overflow:hidden;background:#edf6f2;text-decoration:none}.found-board-card__image img{width:100%;height:100%;object-fit:cover}.found-board-card__image span{font-size:4rem}.found-board-card__body{flex:1;padding:1.15rem}.found-board-card__body h2 a{color:#1c2a24;text-decoration:none}.found-board-card__body h2 a:hover{color:#087a4c}.found-board-card__meta{display:grid;gap:.35rem;color:#63726b;font-size:.84rem}.found-board-card__footer{display:flex;justify-content:space-between;align-items:center;gap:.8rem;padding:.8rem 1.15rem;border-top:1px solid #edf1ef;color:#68756f;font-size:.82rem}.found-board-empty{display:flex;align-items:flex-start;gap:1.2rem;padding:1.7rem;border:1px dashed #8fc7af;border-radius:17px;background:#f2faf6}.found-board-empty__icon{display:flex;align-items:center;justify-content:center;flex:0 0 62px;width:62px;height:62px;border:1px solid #b9ddcd;border-radius:16px;background:#fff;font-size:1.7rem}.found-item-create-form{display:grid;gap:1rem}.found-item-form-panel{padding:1.4rem;border:1px solid #dfe7e3;border-radius:16px;background:#fff}.found-item-private-panel{border-color:#efd69c;background:#fffdf7}.found-manage-list{display:grid;gap:.75rem}.found-manage-row{display:grid;grid-template-columns:minmax(0,1fr) 95px 95px auto auto;gap:1rem;align-items:center;padding:1rem 1.1rem;border:1px solid #dfe7e3;border-radius:14px;background:#fff}.found-manage-row__main h2 a{color:#1c2a24;text-decoration:none}.found-manage-row__stats{text-align:center}.found-manage-row__stats strong,.found-manage-row__stats span{display:block}.found-manage-row__stats strong{font-size:1.4rem}.found-manage-row__stats span{color:#68756f;font-size:.75rem}.found-item-public-card{overflow:hidden;border:1px solid #dfe7e3;border-radius:18px;background:#fff}.found-item-public-photo{height:360px;background:#eef5f2}.found-item-public-photo img{width:100%;height:100%;object-fit:contain}.found-item-public-details dt{color:#68756f;font-weight:600}.found-item-claim-panel{position:sticky;top:1rem;padding:1.35rem;border:1px solid #bcdcca;border-radius:17px;background:#f8fcfa;box-shadow:0 14px 34px rgba(28,62,49,.07)}.found-item-manage-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.65fr);gap:1rem}.found-item-manage-main,.found-item-manage-side{display:grid;align-content:start;gap:1rem}.found-item-manage-side{position:sticky;top:1rem;align-self:start}.found-item-manage-photo{overflow:hidden;border:1px solid #dfe7e3;border-radius:12px;background:#f7faf8}.found-item-manage-photo span{display:block;padding:.55rem .75rem;color:#63726b;font-size:.78rem;font-weight:700}.found-item-manage-photo img{display:block;width:100%;height:220px;object-fit:contain;background:#fff}.found-item-manage-photo.is-private{border-color:#efd69c}.found-claims-list{display:grid;gap:1rem}.found-claim-card{padding:1rem;border:1px solid #dfe7e3;border-radius:14px;background:#fff}.found-claim-card__header{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1rem}.found-claim-card__header strong,.found-claim-card__header small{display:block}.found-claim-card__header small{margin-top:.2rem;color:#68756f}.found-claim-compare{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1rem}.found-claim-compare>div{padding:.85rem;border-radius:11px;background:#f7faf8}.found-claim-compare>div:last-child{background:#fffaf0}.found-claim-compare span{display:block;margin-bottom:.35rem;color:#68756f;font-size:.75rem;font-weight:800;text-transform:uppercase}.found-claim-compare p{margin:0}.found-claim-actions{display:grid;grid-template-columns:180px minmax(0,1fr) auto;gap:.6rem}.found-pickup-form{display:grid;grid-template-columns:minmax(0,1fr) 140px auto;gap:.7rem;align-items:center;padding:.8rem;border-radius:11px;background:#edf8f2}.found-pickup-form strong,.found-pickup-form small{display:block}.found-pickup-form small{color:#68756f}.admin-found-items-list{display:grid;gap:.8rem}.admin-found-item-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:1rem;padding:1.1rem;border:1px solid #dfe7e3;border-radius:14px;background:#fff}.admin-found-item-card__main h2 a{color:#1c2a24;text-decoration:none}.admin-found-item-card__actions{display:grid;grid-template-columns:1fr;gap:.55rem;align-content:start}@media(max-width:991.98px){.found-board-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.found-board-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.found-item-manage-grid{grid-template-columns:1fr}.found-item-manage-side,.found-item-claim-panel{position:static}.admin-found-item-card{grid-template-columns:1fr}}@media(max-width:767.98px){.found-board-page,.found-item-create-page,.found-item-public-page,.found-item-manage-page{padding-top:2rem!important}.found-board-hero{flex-direction:column}.found-board-hero .btn{flex:1 1 auto}.found-board-grid,.found-board-filters{grid-template-columns:1fr}.found-board-card__image{height:220px}.found-board-empty{flex-direction:column}.found-manage-row{grid-template-columns:1fr 1fr}.found-manage-row__main{grid-column:1/-1}.found-manage-row>.badge,.found-manage-row>.btn{grid-column:1/-1}.found-claim-card__header,.found-claim-compare{grid-template-columns:1fr;display:grid}.found-claim-card__header .text-end{text-align:left!important}.found-claim-actions,.found-pickup-form{grid-template-columns:1fr}.found-item-public-photo{height:280px}}@media(max-width:420px){.found-manage-row{grid-template-columns:1fr}.found-manage-row__stats{text-align:left;display:flex;justify-content:space-between}.found-manage-row__stats strong,.found-manage-row__stats span{display:inline}}

/* ETAP 31.45 — Tablica zgubionych rzeczy MVP */
.lost-found-tabs{display:inline-flex;gap:.35rem;padding:.35rem;border:1px solid #dfe7e3;border-radius:999px;background:#fff}.lost-found-tab{display:inline-flex;align-items:center;justify-content:center;padding:.55rem 1rem;border-radius:999px;color:#53625b;font-weight:700;text-decoration:none}.lost-found-tab:hover{color:#1d2d26;background:#f3f7f5}.lost-found-tab.is-active{color:#1d2d26;background:#e8f7ef;box-shadow:inset 0 0 0 1px #b7ddca}.lost-board-page .lost-found-tab.is-active{background:#fff4d6;box-shadow:inset 0 0 0 1px #eccb70}.lost-board-hero{background:linear-gradient(135deg,#fff9e9,#fff)}.lost-board-safety{border-color:#ead39a;background:#fffaf0}.lost-board-card{border-color:#eadfbe}.lost-board-card:hover{border-color:#dbba5d}.lost-item-link-panel{border-color:#cfe0f2;background:#f7fbff}.lost-item-public-card{border-color:#e8d6a4}.lost-item-response-panel{border-color:#ead39a;background:#fffaf0}.lost-private-details{padding:1rem;border:1px solid #ead39a;border-radius:12px;background:#fffaf0;color:#544b35}.lost-match-list{display:grid;gap:.75rem}.lost-match-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1rem;border:1px solid #cfe5db;border-radius:13px;background:#f7fcf9}.lost-match-card.is-muted{opacity:.65;background:#f7f7f7;border-color:#e4e4e4}.lost-manage-row{border-left:4px solid #e3b341}.lost-item-manage-page .found-item-manage-side .found-item-form-panel:first-child{border-color:#e7ca77;background:#fffaf0}
@media(max-width:767.98px){.lost-found-tabs{display:grid;grid-template-columns:1fr 1fr;width:100%;border-radius:14px}.lost-found-tab{border-radius:10px}.lost-match-card{grid-template-columns:1fr}.lost-match-card>div:last-child{width:100%}.lost-match-card>div:last-child .btn,.lost-match-card>div:last-child form{flex:1 1 auto}.lost-match-card>div:last-child form .btn{width:100%}}

/* ETAP 31.46 — Admin Moderation Notifications PRO */
.admin-nav-button,.admin-notification-nav{display:inline-flex;align-items:center}.admin-moderation-eyebrow{display:block;margin-bottom:.3rem;color:#8a5a00;font-size:.72rem;font-weight:800;letter-spacing:.08em}.admin-moderation-dashboard{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;padding:1.25rem 1.4rem;border:1px solid #dfe6e2;border-radius:15px;background:#fff}.admin-moderation-dashboard.has-pending{border-color:#ebcb75;background:#fffaf0}.admin-moderation-dashboard.is-clear{border-color:#b9ddcd;background:#f4fbf7}.admin-moderation-dashboard__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:#fff;border:1px solid #dfe6e2;font-size:1.35rem;font-weight:900}.admin-moderation-dashboard.has-pending .admin-moderation-dashboard__icon{color:#8a5a00;border-color:#ebcb75}.admin-moderation-dashboard.is-clear .admin-moderation-dashboard__icon{color:#168b5b;border-color:#b9ddcd}.admin-moderation-dashboard__latest{max-width:760px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-moderation-page,.admin-notifications-page{max-width:1200px}.admin-moderation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem}.admin-moderation-stat{display:block;padding:1rem 1.1rem;border:1px solid #dfe6e2;border-radius:13px;background:#fff;color:inherit;text-decoration:none}.admin-moderation-stat:hover{border-color:#9bcbb8}.admin-moderation-stat span,.admin-moderation-stat strong{display:block}.admin-moderation-stat span{color:#68756f;font-size:.86rem}.admin-moderation-stat strong{margin-top:.2rem;font-size:1.75rem}.admin-moderation-stat.is-primary{border-color:#8fc7af;background:#f4fbf7}.admin-moderation-stat.is-warning{border-color:#ebcb75;background:#fffaf0}.admin-moderation-filters{display:grid;grid-template-columns:minmax(240px,1.6fr) minmax(160px,.8fr) minmax(160px,.8fr) auto;gap:.85rem;padding:1rem;border:1px solid #dfe6e2;border-radius:14px;background:#fff}.admin-moderation-empty{display:flex;gap:1rem;align-items:flex-start;padding:1.4rem;border:1px dashed #9bcbb8;border-radius:15px;background:#f4fbf7}.admin-moderation-empty>span{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:50%;background:#168b5b;color:#fff;font-weight:900}.admin-moderation-list{display:grid;gap:1rem}.admin-moderation-card{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:1.25rem;padding:1.25rem;border:1px solid #dfe6e2;border-left-width:5px;border-radius:15px;background:#fff;scroll-margin-top:1rem}.admin-moderation-card.is-found{border-left-color:#198754}.admin-moderation-card.is-lost{border-left-color:#e0aa2b}.admin-moderation-meta{display:flex;flex-wrap:wrap;gap:.45rem .9rem;color:#68756f;font-size:.88rem}.admin-moderation-card__actions{display:grid;align-content:start;gap:.75rem;padding-left:1.1rem;border-left:1px solid #e8edea}.admin-moderation-decision-form{padding:1rem;border:1px solid #e5ebe8;border-radius:12px;background:#fafcfb}.admin-notification-summary{display:flex;align-items:baseline;gap:.55rem;padding:1rem 1.2rem;border:1px solid #dfe6e2;border-radius:13px;background:#fff}.admin-notification-summary strong{font-size:1.8rem}.admin-notification-list{display:grid;gap:.7rem}.admin-notification-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:.9rem;align-items:center;padding:1rem 1.1rem;border:1px solid #dfe6e2;border-radius:13px;background:#fff;color:inherit;text-decoration:none}.admin-notification-row:hover{border-color:#9bcbb8}.admin-notification-row.is-new{border-color:#ebcb75;background:#fffaf0}.admin-notification-row.priority-high{border-left:4px solid #dc3545}.admin-notification-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#edf3f0;font-weight:900}.admin-notification-row.is-new .admin-notification-icon{background:#fff1c7;color:#8a5a00}.admin-notification-content strong,.admin-notification-content span,.admin-notification-content small{display:block}.admin-notification-content span{margin-top:.15rem;color:#4f5e57}.admin-notification-content small{margin-top:.25rem;color:#7a8781}.admin-notification-status{color:#68756f;font-size:.82rem}.admin-notification-row.is-resolved{opacity:.72}
@media(max-width:991.98px){.admin-moderation-dashboard{grid-template-columns:auto 1fr}.admin-moderation-dashboard>div:last-child{grid-column:1/-1}.admin-moderation-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-moderation-filters{grid-template-columns:1fr 1fr}.admin-moderation-filters>div:first-child{grid-column:1/-1}.admin-moderation-card{grid-template-columns:1fr}.admin-moderation-card__actions{padding-left:0;padding-top:1rem;border-left:0;border-top:1px solid #e8edea}}
@media(max-width:767.98px){.admin-moderation-page,.admin-notifications-page{padding-top:2rem!important}.admin-moderation-dashboard{grid-template-columns:1fr}.admin-moderation-dashboard__icon{display:none}.admin-moderation-summary,.admin-moderation-filters{grid-template-columns:1fr}.admin-moderation-filters>div:first-child{grid-column:auto}.admin-moderation-card{padding:1rem}.admin-notification-row{grid-template-columns:36px 1fr}.admin-notification-status{grid-column:2}}

/* ETAP 31.47 — globalne przełączniki modułów */
.module-toggle-card {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: center;
    gap: .85rem;
    height: 100%;
    padding: 1rem;
    border: 1px solid var(--bs-border-color);
    border-radius: .8rem;
    background: #fff;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.module-toggle-card:hover {
    border-color: rgba(19, 111, 99, .45);
    box-shadow: 0 .35rem 1rem rgba(15, 23, 42, .07);
    transform: translateY(-1px);
}
.module-toggle-card__icon { font-size: 1.55rem; line-height: 1; }
.module-toggle-card__content { display: flex; flex-direction: column; gap: .2rem; min-width: 0; }
.module-toggle-card__content small { color: var(--bs-secondary-color); line-height: 1.35; }
.admin-module-status {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem 1rem;
    padding: .9rem 1rem;
    border: 1px solid var(--bs-border-color);
    border-radius: .8rem;
    background: #fff;
}
.admin-module-status > div { display: inline-flex; align-items: center; gap: .45rem; }
@media (max-width: 767.98px) {
    .module-toggle-card { grid-template-columns: auto minmax(0, 1fr) auto; }
    .admin-module-status .ms-auto { margin-left: 0 !important; width: 100%; }
}

