/* Nutriva 0.11.0 · Orbit UI Standard 1.0
 * Global readability + typography + rhythm layer.
 * Loaded after ui.css and reports.css so every module shares one final cascade.
 */

/* --------------------------------------------------------------------------
   1. FOUNDATION
   -------------------------------------------------------------------------- */
:root{
  --ui-font-kicker:.80rem;
  --ui-font-badge:.78rem;
  --ui-font-caption:.82rem;
  --ui-font-label:.86rem;
  --ui-font-body:.94rem;
  --ui-font-control:.94rem;
  --ui-font-table:.875rem;
  --ui-font-card-title:1.02rem;
  --ui-font-section:1.25rem;
  --ui-font-metric:1.15rem;
  --ui-line-caption:1.52;
  --ui-line-body:1.62;
  --ui-control-height:48px;
  --ui-panel-gap:14px;
  --ui-card-pad:22px;
}

/* 100% now means a real 100% root size. 115% and 130% are true increments. */
html{font-size:100%}

/* Keep the approved palette, but raise secondary-text contrast for small copy. */
html[data-theme="dark"]{
  --muted:#aebdb4;
  --muted-2:#90a499;
}
html[data-theme="light"]{
  --muted:#4f6359;
  --muted-2:#586c62;
}

body{
  font-size:var(--ui-font-body);
  line-height:var(--ui-line-body);
}

/* --------------------------------------------------------------------------
   2. GLOBAL SHELL / NAVIGATION
   -------------------------------------------------------------------------- */
.future-brand small,
.module-identity>span,
.module-context-chip small,
.user-chip small,
.module-breadcrumb,
.command-title>span,
.command-title>strong{
  font-size:var(--ui-font-caption)!important;
  line-height:1.35;
}

.module-identity strong,
.module-context-chip strong,
.user-chip>span:last-child{
  font-size:var(--ui-font-label)!important;
}

.module-menu a{
  min-height:48px;
  font-size:var(--ui-font-label)!important;
  line-height:1.3;
}
.module-menu a small{
  font-size:var(--ui-font-badge)!important;
}

.preferences .orbit-select-label{
  font-size:var(--ui-font-badge)!important;
}
.preferences .orbit-select-value,
.preferences .orbit-select-menu button{
  font-size:var(--ui-font-label)!important;
}

/* Launcher cards use the same readable baseline as operational modules. */
.launcher-heading p,
.module-card-copy p,
.module-card-foot,
.launcher-footer,
.launcher-system-copy p{
  font-size:var(--ui-font-body)!important;
  line-height:var(--ui-line-body)!important;
}
.module-card-no,
.launcher-system-copy>span,
.module-card-copy>span{
  font-size:var(--ui-font-kicker)!important;
}

/* --------------------------------------------------------------------------
   3. CANONICAL PAGE TYPOGRAPHY
   -------------------------------------------------------------------------- */
.module-content .orbit-page-heading>h1,
.module-content .product-head h1,
.module-content .workspace-head h1,
.module-content .nutrition-dashboard-hero h1,
.module-content .reports-page-head h1{
  margin:12px 0 10px!important;
  font-size:clamp(3.35rem,4.25vw,4.65rem)!important;
  font-weight:625!important;
  line-height:.92!important;
  letter-spacing:-.065em!important;
}

/* Detail/create views are deliberately one step smaller than list/dashboard H1. */
.module-content .product-detail-head h1,
.module-content .product-form-head h1,
.module-content .product-heading h1,
.module-content .intendent-profile-head h1{
  font-size:clamp(2.55rem,3.5vw,3.55rem)!important;
  font-weight:625!important;
  line-height:.94!important;
  letter-spacing:-.055em!important;
}

/* Module/launcher hero remains expressive, but no longer changes scale between modules. */
.module-hero-copy h1{
  font-size:clamp(3.2rem,5.55vw,5.9rem)!important;
}
.launcher-heading h1{
  font-size:clamp(3.15rem,5.1vw,5.65rem)!important;
}

.module-content .orbit-page-heading>p,
.module-content .product-head p,
.module-content .product-detail-head p,
.module-content .workspace-head p,
.module-content .nutrition-dashboard-hero p,
.module-content .reports-page-head p,
.module-hero-copy p{
  font-size:var(--ui-font-body)!important;
  line-height:var(--ui-line-body)!important;
  color:var(--muted)!important;
}

.module-content .future-kicker,
.module-content .section-kicker,
.module-content [class*="-kicker"],
.product-card-eyebrow .product-back,
.product-form-section-head>div>span,
.admin-card-head span,
.admin-subhead span{
  font-size:var(--ui-font-kicker)!important;
  line-height:1.3!important;
  letter-spacing:.11em!important;
}

/* --------------------------------------------------------------------------
   4. TEXT FLOOR / HELPERS / NOTES
   -------------------------------------------------------------------------- */
.module-content{
  font-size:var(--ui-font-body)!important;
  line-height:var(--ui-line-body);
}

.module-content p,
.module-content li{
  font-size:var(--ui-font-body)!important;
  line-height:var(--ui-line-body)!important;
}

.module-content small,
.module-content [class*="-meta"],
.module-content [class*="-caption"],
.module-content [class*="-hint"]{
  font-size:var(--ui-font-caption)!important;
  line-height:var(--ui-line-caption)!important;
}

/* Secondary copy is readable, not decorative. */
.module-content small,
.module-content [class*="-hint"],
.module-content [class*="-caption"]{
  color:var(--muted)!important;
}

/* --------------------------------------------------------------------------
   5. SECTION HEADERS
   -------------------------------------------------------------------------- */
.module-content :is(
  .product-section-head,
  .product-info-head,
  .warehouse-dashboard-section-head,
  .inventory-section-head,
  .archive-docs-head,
  .smart-section-head,
  .smart-generator-head,
  .admin-card-head,
  .admin-subhead,
  .reports-panel>header,
  .reports-shortcuts-head,
  .intendent-profile-row-head
) h2{
  font-size:var(--ui-font-section)!important;
  font-weight:650!important;
  line-height:1.22!important;
  letter-spacing:-.03em!important;
}

.module-content :is(
  .warehouse-dashboard-section-head,
  .inventory-section-head,
  .archive-docs-head,
  .smart-section-head,
  .smart-generator-head,
  .reports-panel>header,
  .reports-shortcuts-head
) span{
  font-size:var(--ui-font-kicker)!important;
  line-height:1.3!important;
}

/* --------------------------------------------------------------------------
   6. FORMS / CONTROLS / BUTTONS
   -------------------------------------------------------------------------- */
.module-content :is(
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]),
  select,
  textarea,
  .orbit-select-button,
  .orbit-field-trigger
){
  min-height:var(--ui-control-height)!important;
  font-size:var(--ui-font-control)!important;
  line-height:1.25!important;
}

.module-content :is(
  .product-field>span,
  .dish-filter-row label>span,
  .product-filter-row label>span,
  .product-filter-more label>span,
  .supplier-filter-field>span,
  .rw-filterbar label>span,
  .correction-filterbar label>span,
  .archive-filterbar label>span,
  .inventory-filterbar label>span,
  .reports-period label>span,
  .smart-generator-grid label,
  .smart-review-extra label,
  .smart-map-row label,
  .admin-field>span
){
  font-size:var(--ui-font-label)!important;
  line-height:1.35!important;
}

.module-content :is(
  .btn-primary,.btn-secondary,
  .product-primary,.product-secondary,.product-danger,
  .admin-primary,.admin-secondary,
  .reports-filter-btn,.reports-export
){
  min-height:var(--ui-control-height)!important;
  font-size:var(--ui-font-control)!important;
  line-height:1.2!important;
}

.orbit-select-option,
.orbit-field-menu button{
  font-size:var(--ui-font-control)!important;
}

/* --------------------------------------------------------------------------
   7. TABLES
   -------------------------------------------------------------------------- */
.module-content table{
  font-size:var(--ui-font-table)!important;
  line-height:1.48!important;
}
.module-content table td{
  font-size:var(--ui-font-table)!important;
  line-height:1.48!important;
}
.module-content table th{
  font-size:var(--ui-font-badge)!important;
  line-height:1.35!important;
  color:var(--muted)!important;
}

/* --------------------------------------------------------------------------
   8. BADGES / STATUS / CHIPS
   -------------------------------------------------------------------------- */
.module-content :is(
  .product-status,
  .reports-status,
  .archive-type-badge,
  .rw-rule-badge,
  .inventory-movement-badge,
  .supplier-note-badge,
  .intendent-requirement-chips b,
  .correction-history-list .product-status
){
  font-size:var(--ui-font-badge)!important;
  line-height:1.25!important;
}

.intendent-attendance-row.has-requirements>.intendent-attendance-person>strong::after{
  font-size:var(--ui-font-badge)!important;
}

/* --------------------------------------------------------------------------
   9. EMPTY / INFO / WARNING STATES
   -------------------------------------------------------------------------- */
.module-content :is(
  .warehouse-dashboard-empty,
  .reports-empty,
  .smart-empty,
  .admin-empty,
  .archive-empty-mini,
  .rw-allocation-empty,
  .intendent-calendar-empty,
  .orbit-empty-state
){
  font-size:var(--ui-font-body)!important;
  line-height:var(--ui-line-body)!important;
  color:var(--muted)!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}

.module-content :is(
  .orbit-note-card,
  .admin-info-box,
  .correction-safety-note,
  .inventory-movement-alert,
  .reports-legal-note
){
  font-size:var(--ui-font-caption)!important;
  line-height:var(--ui-line-caption)!important;
}

/* --------------------------------------------------------------------------
   10. KPI / METRIC LANGUAGE
   -------------------------------------------------------------------------- */
:is(
  .warehouse-dashboard-kpis,
  .inventory-summary-grid,
  .reports-kpi-grid,
  .product-summary-strip,
  .dish-summary-strip,
  .nutrition-summary,
  .smart-stat-grid
){
  gap:var(--ui-panel-gap)!important;
}

:is(.warehouse-kpi,.reports-kpi,.inventory-summary-card,.product-stat){
  min-height:132px;
  padding:20px!important;
}

:is(.warehouse-kpi,.reports-kpi,.inventory-summary-card,.product-stat)>span{
  font-size:var(--ui-font-kicker)!important;
  line-height:1.3!important;
  color:var(--muted)!important;
}

:is(.warehouse-kpi,.reports-kpi,.inventory-summary-card,.product-stat)>strong{
  font-size:1.75rem!important;
  line-height:1.08!important;
  font-weight:650!important;
  letter-spacing:-.045em!important;
}

:is(.warehouse-kpi,.reports-kpi,.inventory-summary-card,.product-stat)>:is(small,p){
  font-size:var(--ui-font-caption)!important;
  line-height:var(--ui-line-caption)!important;
}

/* Compact nutrition/calculator metric cards share one value scale. */
:is(
  .dish-summary-strip strong,
  .dish-nutrition-box strong,
  .calculator-nutrient-card strong,
  .calculator-meal-summary strong,
  .nutrition-meal-card>strong,
  .nutrition-day-total>strong,
  .smart-nutrition-grid strong
){
  font-size:var(--ui-font-metric)!important;
  line-height:1.2!important;
}

/* --------------------------------------------------------------------------
   11. GRID / PANEL RHYTHM
   -------------------------------------------------------------------------- */
:is(
  .nutrition-dashboard-main,
  .nutrition-dashboard-lower,
  .smart-overview-grid,
  .reports-dashboard-grid,
  .reports-two-col,
  .reports-menu-preview,
  .intendent-dashboard-focus-grid,
  .intendent-dashboard-ops-grid,
  .intendent-dashboard-lower-v2,
  .archive-master-grid,
  .intendent-group-grid
){
  gap:var(--ui-panel-gap)!important;
}

:is(
  .nutrition-today-panel,.nutrition-attention-panel,.nutrition-actions-panel,.nutrition-smart-panel,.nutrition-trend-panel,
  .reports-panel,
  .admin-card
){
  padding:var(--ui-card-pad)!important;
}

/* --------------------------------------------------------------------------
   12. WAREHOUSE / PRODUCTS
   -------------------------------------------------------------------------- */
:is(
  .warehouse-stat>span,
  .warehouse-settings-form label>span,
  .warehouse-item-row label>span,
  .supplier-nip-row>label>span,
  .supplier-inline-nip>label>span,
  .supplier-select-field>span,
  .supplier-filter-field>span,
  .supplier-notes-field>span,
  .rw-filterbar label>span,
  .rw-rule-card>span,
  .correction-source-form label>span,
  .correction-meta-grid label>span,
  .correction-safety-note span,
  .correction-source-details span,
  .inventory-section-head>div:first-child>span,
  .archive-docs-head>div>span,
  .inventory-note-field>span,
  .archive-filterbar label>span,
  .warehouse-dashboard-section-head span,
  .warehouse-drafts>span
){
  font-size:var(--ui-font-label)!important;
  line-height:1.35!important;
}

:is(
  .warehouse-dashboard-signal,
  .warehouse-attention-title small,
  .warehouse-attention-list small,
  .expiry-list em,
  .warehouse-recent-context,
  .warehouse-chart-legend,
  .warehouse-chart-row>span,
  .warehouse-chart-row>small,
  .inventory-row-meta,
  .inventory-list-note,
  .archive-mini-list small
){
  font-size:var(--ui-font-caption)!important;
  line-height:var(--ui-line-caption)!important;
}

.warehouse-attention-list strong,
.warehouse-quick-action>span strong,
.warehouse-drafts>a,
.warehouse-recent-number strong,
.warehouse-recent-value{
  font-size:var(--ui-font-body)!important;
}

/* --------------------------------------------------------------------------
   13. ŻYWIENIE / DANIA / KALKULATOR / SMART
   -------------------------------------------------------------------------- */
:is(
  .dish-current-image span,
  .dish-ingredient-head,
  .dish-mobile-label,
  .dish-summary-strip span,
  .dish-profile-block>span,
  .dish-notes-show>span,
  .dish-variant-grid span,
  .dish-dependency-grid span,
  .calculator-date-control span,
  .calculator-status-card>span,
  .calculator-summary-title>span,
  .calculator-meal-head>div:first-child>span,
  .calculator-recipients>span,
  .calculator-meal-state>span,
  .calculator-entry-head,
  .calculator-history-count span,
  .calculator-history-card>header span,
  .calculator-history-meals span,
  .calculator-mobile-label
){
  font-size:var(--ui-font-label)!important;
  line-height:1.35!important;
}

:is(
  .calculator-nutrient-card span,
  .calculator-meal-summary span,
  .smart-ai-ingredient>span,
  .smart-section-head>span,
  .nutrition-meal-card>span,
  .nutrition-day-total>span
){
  font-size:var(--ui-font-kicker)!important;
}

/* --------------------------------------------------------------------------
   14. INTENDENT
   -------------------------------------------------------------------------- */
.intendent-requirement-chips b,
.intendent-requirement-chips.compact b{
  font-size:var(--ui-font-badge)!important;
}
.intendent-profile-row-head>span,
.intendent-menu-final-bar>div:first-child>span,
.intendent-day-head>b{
  font-size:var(--ui-font-label)!important;
}

/* --------------------------------------------------------------------------
   15. REPORTS — remove local micro-type and use global Orbit tokens
   -------------------------------------------------------------------------- */
.reports-period label>span,
.reports-kpi>span,
.reports-panel>header>div>span,
.reports-shortcuts-head span,
.reports-flow-pair span,
.reports-nutrition-strip span,
.reports-menu-day>header>div>span,
.reports-meal-block>span,
.reports-law-card span,
.reports-compliance>div:nth-child(2)>span{
  font-size:var(--ui-font-kicker)!important;
  line-height:1.35!important;
}

.reports-period input,
.reports-filter-btn,
.reports-export span{
  font-size:var(--ui-font-control)!important;
}

.reports-export small,
.reports-panel>header>small,
.reports-bar-track b,
.reports-bar-item>span,
.reports-spark-list span,
.reports-spark-list strong,
.reports-signal-grid>a span,
.reports-shortcuts small,
.reports-flow-pair small,
.reports-nutrition-strip small,
.reports-menu-note p,
.reports-meal-block small,
.reports-ranking .rank,
.reports-ranking .name,
.reports-conflicts>div>span,
.reports-conflicts p small,
.reports-conflicts>div>b,
.reports-law-card p,
.reports-law-card>a,
.reports-compliance p,
.reports-compliance aside>strong,
.reports-legal-note,
.reports-expiry-list>div>span,
.reports-expiry-list small,
.reports-orbit-core small{
  font-size:var(--ui-font-caption)!important;
  line-height:var(--ui-line-caption)!important;
}

.reports-panel>header h2,
.reports-shortcuts-head h2,
.reports-compliance h2,
.reports-menu-day h2,
.reports-law-card h2{
  font-size:var(--ui-font-section)!important;
  line-height:1.22!important;
}

.reports-flow-pair strong,
.reports-nutrition-strip strong,
.reports-ranking b,
.reports-ranking strong,
.reports-conflicts p strong,
.reports-expiry-list strong,
.reports-menu-note strong,
.reports-meal-block strong{
  font-size:var(--ui-font-body)!important;
  line-height:1.4!important;
}

.reports-table{
  font-size:var(--ui-font-table)!important;
}
.reports-table th{
  font-size:var(--ui-font-badge)!important;
}
.reports-status{
  min-height:27px;
  padding-inline:9px;
  font-size:var(--ui-font-badge)!important;
}
.reports-empty{
  font-size:var(--ui-font-body)!important;
}

/* Summary cards from the user's screenshot: label/value/helper form one clear hierarchy. */
.reports-flow-pair>div{
  min-height:112px;
  padding:16px!important;
}
.reports-flow-pair span{
  color:var(--muted)!important;
}
.reports-flow-pair strong{
  display:block;
  margin-top:10px;
  font-size:1.20rem!important;
  color:var(--ink)!important;
}
.reports-flow-pair small{
  display:block;
  margin-top:7px;
  color:var(--muted)!important;
}

/* Compliance notes must remain legible at the 100% variant. */
.reports-compliance p,
.reports-legal-note{
  color:var(--muted)!important;
}

/* Intelligence ranking/conflict cards must never squeeze empty or descriptive copy. */
.reports-ranking>.reports-empty,
.reports-conflicts>.reports-empty{
  grid-column:1/-1!important;
  width:100%!important;
  min-width:0!important;
  font-size:var(--ui-font-body)!important;
}

/* --------------------------------------------------------------------------
   16. ACCESSIBILITY / 115% / 130%
   -------------------------------------------------------------------------- */
@media(max-width:1180px){
  .reports-kpi-grid-5,
  .warehouse-dashboard-kpis,
  .inventory-summary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:760px){
  .module-content .orbit-page-heading>h1,
  .module-content .product-head h1,
  .module-content .workspace-head h1,
  .module-content .nutrition-dashboard-hero h1,
  .module-content .reports-page-head h1{
    font-size:clamp(2.7rem,11vw,3.55rem)!important;
  }

  .module-content .product-detail-head h1,
  .module-content .product-form-head h1,
  .module-content .product-heading h1{
    font-size:clamp(2.25rem,9vw,3rem)!important;
  }

  .reports-kpi-grid,
  .reports-kpi-grid-5,
  .warehouse-dashboard-kpis,
  .inventory-summary-grid{
    grid-template-columns:1fr!important;
  }
}

/* High contrast keeps all supporting copy fully visible. */
html[data-theme="contrast"] .module-content :is(small,p,[class*="-hint"],[class*="-caption"],[class*="-meta"]){
  color:#fff!important;
}

/* Nutriva Orbit 0.11.0.1 · Warehouse Archive spacing START */

.archive-documents-card .archive-docs-head {
    padding: 3px 24px 0 !important;
    margin-bottom: 20px !important;
}

.archive-documents-card .archive-filterbar {
    padding-left: 24px;
    padding-right: 24px;
    box-sizing: border-box;
}

@media (max-width: 680px) {
    .archive-documents-card .archive-docs-head,
    .archive-documents-card .archive-filterbar {
        padding-left: 16px;
        padding-right: 16px;
    }
}

/* Nutriva Orbit 0.11.0.1 · Warehouse Archive spacing END */

/* Nutriva Orbit 0.11.0.3 · Canonical checkbox system START */

/*
 * Jeden wygląd dla wszystkich widocznych, klasycznych checkboxów.
 * Nie obejmuje kontrolek, które mają własny komponent:
 * Products choices, allergens, permissions, attendance,
 * inventory product selector itd.
 */

.module-content :is(
    .intendent-confirm-card,
    .intendent-meal-checks label,
    .intendent-inline-checks label,
    .dish-remove-image,
    .admin-toggle-row,
    .mini-check,
    .switch-control,
    .admin-danger-check,
    .correction-config-option,
    .pantry-product,
    .inventory-ack
) > input[type="checkbox"] {
    -webkit-appearance:none !important;
    appearance:none !important;

    position:relative;
    display:inline-grid;
    place-content:center;

    width:20px !important;
    height:20px !important;
    min-width:20px;
    min-height:20px;
    flex:0 0 20px;

    margin:0 !important;
    padding:0 !important;

    border:1px solid color-mix(in srgb,var(--muted) 58%,var(--line)) !important;
    border-radius:6px;

    background:color-mix(in srgb,var(--surface) 94%,transparent) !important;

    cursor:pointer;
    vertical-align:middle;

    box-shadow:
        inset 0 1px 0 color-mix(in srgb,#fff 5%,transparent);

    transition:
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease,
        transform .12s ease;
}

.module-content :is(
    .intendent-confirm-card,
    .intendent-meal-checks label,
    .intendent-inline-checks label,
    .dish-remove-image,
    .admin-toggle-row,
    .mini-check,
    .switch-control,
    .admin-danger-check,
    .correction-config-option,
    .pantry-product,
    .inventory-ack
) > input[type="checkbox"]::after {
    content:"";

    width:5px;
    height:9px;

    border:solid #07130f;
    border-width:0 2px 2px 0;

    transform:translateY(-1px) rotate(45deg) scale(0);
    transform-origin:center;

    transition:transform .12s ease;
}

.module-content :is(
    .intendent-confirm-card,
    .intendent-meal-checks label,
    .intendent-inline-checks label,
    .dish-remove-image,
    .admin-toggle-row,
    .mini-check,
    .switch-control,
    .admin-danger-check,
    .correction-config-option,
    .pantry-product,
    .inventory-ack
) > input[type="checkbox"]:checked {
    border-color:var(--lime) !important;
    background:var(--lime) !important;

    box-shadow:
        0 0 0 3px color-mix(in srgb,var(--lime) 12%,transparent);
}

.module-content :is(
    .intendent-confirm-card,
    .intendent-meal-checks label,
    .intendent-inline-checks label,
    .dish-remove-image,
    .admin-toggle-row,
    .mini-check,
    .switch-control,
    .admin-danger-check,
    .correction-config-option,
    .pantry-product,
    .inventory-ack
) > input[type="checkbox"]:checked::after {
    transform:translateY(-1px) rotate(45deg) scale(1);
}

.module-content :is(
    .intendent-confirm-card,
    .intendent-meal-checks label,
    .intendent-inline-checks label,
    .dish-remove-image,
    .admin-toggle-row,
    .mini-check,
    .switch-control,
    .admin-danger-check,
    .correction-config-option,
    .pantry-product,
    .inventory-ack
) > input[type="checkbox"]:focus-visible {
    outline:none;

    box-shadow:
        0 0 0 4px color-mix(in srgb,var(--lime) 18%,transparent);
}

.module-content :is(
    .intendent-confirm-card,
    .intendent-meal-checks label,
    .intendent-inline-checks label,
    .dish-remove-image,
    .admin-toggle-row,
    .mini-check,
    .switch-control,
    .admin-danger-check,
    .correction-config-option,
    .pantry-product,
    .inventory-ack
) > input[type="checkbox"]:disabled {
    cursor:not-allowed;
    opacity:.45;
}

/* Checkbox w kartach informacyjnych zachowuje poprawne wyrównanie. */
.intendent-confirm-card > input[type="checkbox"],
.admin-danger-check > input[type="checkbox"],
.correction-config-option > input[type="checkbox"],
.pantry-product > input[type="checkbox"],
.inventory-ack > input[type="checkbox"] {
    margin-top:2px !important;
}

/* Nutriva Orbit 0.11.0.3 · Canonical checkbox system END */

/* Nutriva Orbit 0.11.0.4 · Inventory create layout START */

/* KROK 1 — jeden spójny nagłówek zamiast flexa rozrzucającego treść */
.inventory-type-card {
    padding:24px !important;
    box-sizing:border-box;
}

.inventory-type-card .product-info-head {
    display:grid !important;
    grid-template-columns:1fr !important;
    align-items:start !important;
    justify-content:stretch !important;
    gap:5px !important;
    margin:0 !important;
}

.inventory-type-card .product-info-head > span {
    display:block;
    margin:0;
}

.inventory-type-card .product-info-head h2 {
    margin:0 !important;
}

.inventory-type-card .product-info-head p {
    max-width:860px !important;
    margin:2px 0 0 !important;
}

.inventory-type-card .inventory-type-grid {
    margin-top:22px !important;
}

/* KROK 2 — pełny wewnętrzny oddech karty */
.inventory-partial-card {
    padding:24px !important;
    box-sizing:border-box;
}

.inventory-partial-card .inventory-section-head {
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(320px,420px);
    align-items:end !important;
    gap:24px !important;
    margin:0 0 12px !important;
}

.inventory-partial-card .inventory-search {
    width:100%;
    min-width:0 !important;
    box-sizing:border-box;
}

.inventory-partial-card .inventory-partial-note {
    margin:0 0 16px !important;
    max-width:900px;
}

.inventory-partial-card .inventory-select-actions {
    margin-bottom:12px !important;
}

.inventory-partial-card .inventory-product-select {
    padding-right:4px;
}

/* Karty wyboru zakresu zachowują równe proporcje */
.inventory-type-option {
    min-height:88px;
    box-sizing:border-box;
}

/* Mobile / węższe okna */
@media (max-width:900px) {
    .inventory-partial-card .inventory-section-head {
        grid-template-columns:1fr !important;
        align-items:start !important;
    }

    .inventory-partial-card .inventory-search {
        max-width:none;
    }
}

@media (max-width:680px) {
    .inventory-type-card,
    .inventory-partial-card {
        padding:16px !important;
    }

    .inventory-type-grid,
    .inventory-product-select {
        grid-template-columns:1fr !important;
    }

    .inventory-select-actions {
        flex-wrap:wrap;
    }

    .inventory-select-actions > span {
        width:100%;
        margin-left:0 !important;
    }
}

/* Nutriva Orbit 0.11.0.4 · Inventory create layout END */


.nutriva-release-list {
    display:grid;
    gap:16px;
    margin-top:30px;
}

.nutriva-release-card {
    padding:24px;
}

.nutriva-release-head,
.nutriva-roadmap-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
}

.nutriva-release-head span,
.nutriva-roadmap-head span,
.nutriva-release-sections section > span {
    color:var(--emerald);
    font-size:var(--ui-font-kicker);
    font-weight:780;
    letter-spacing:.16em;
}

.nutriva-release-head h2,
.nutriva-roadmap-head h2 {
    margin:6px 0 0;
    color:var(--ink);
    font-size:1.55rem;
    font-weight:650;
}

.nutriva-release-card > h3 {
    margin:22px 0 18px;
    color:var(--ink);
    font-size:1.18rem;
    font-weight:620;
}

.nutriva-release-date {
    padding:7px 10px;
    border:1px solid var(--line);
    border-radius:12px;
    color:var(--muted);
    font-size:var(--ui-font-caption);
}

.nutriva-release-sections {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
}

.nutriva-release-sections section {
    padding:16px;
    border:1px solid var(--line);
    border-radius:16px;
    background:color-mix(in srgb,var(--surface) 70%,transparent);
}

.nutriva-release-sections ul {
    display:grid;
    gap:8px;
    margin:12px 0 0;
    padding:0;
    list-style:none;
}

.nutriva-release-sections li {
    position:relative;
    padding-left:16px;
    color:var(--muted);
    font-size:var(--ui-font-body);
    line-height:1.55;
}

.nutriva-release-sections li::before {
    content:"";
    position:absolute;
    left:0;
    top:.68em;
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--lime);
}

.nutriva-roadmap-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    margin-top:30px;
}

.nutriva-roadmap-stage {
    padding:22px;
}

.nutriva-roadmap-head > strong {
    padding:7px 10px;
    border:1px solid var(--line);
    border-radius:999px;
    color:var(--emerald);
    font-size:var(--ui-font-badge);
    font-weight:720;
    white-space:nowrap;
}

.nutriva-roadmap-description {
    min-height:58px;
    margin:18px 0 20px;
    color:var(--muted);
    font-size:var(--ui-font-body);
    line-height:1.6;
}

.nutriva-roadmap-items {
    display:grid;
    gap:10px;
}

.nutriva-roadmap-items section {
    display:grid;
    grid-template-columns:9px minmax(0,1fr);
    gap:11px;
    padding:13px 0;
    border-top:1px solid var(--line);
}

.nutriva-roadmap-items section > i {
    width:7px;
    height:7px;
    margin-top:6px;
    border-radius:50%;
    background:var(--emerald);
    box-shadow:0 0 12px color-mix(in srgb,var(--emerald) 55%,transparent);
}

.nutriva-roadmap-items strong {
    display:block;
    color:var(--ink);
    font-size:var(--ui-font-label);
}

.nutriva-roadmap-items p {
    margin:4px 0 0;
    color:var(--muted);
    font-size:var(--ui-font-caption);
    line-height:1.55;
}

.nutriva-roadmap-future {
    border-color:color-mix(in srgb,var(--lime) 28%,var(--line));
}

.nutriva-roadmap-note {
    margin-top:16px;
}

@media (max-width:1100px) {
    .nutriva-roadmap-grid {
        grid-template-columns:1fr;
    }

    .nutriva-release-sections {
        grid-template-columns:1fr;
    }
}


/* Nutriva language selector START */

.orbit-select-language .orbit-select-menu button:disabled {
    cursor: not-allowed;
    opacity: .42;
}

.orbit-select-language .orbit-select-menu button:disabled:hover {
    background: transparent;
}

.orbit-select-language .orbit-select-menu button small {
    margin-left: 6px;
    color: var(--muted-2);
    font-size: .72em;
    font-weight: 650;
    letter-spacing: .04em;
    text-transform: uppercase;
}

/* Nutriva language selector END */


/* ROADMAP V2 START */

.roadmap-v2-hero-progress {
    min-width:220px;
    padding:18px 22px;
    border:1px solid var(--line);
    border-radius:20px;
    background:linear-gradient(
        145deg,
        color-mix(in srgb,var(--emerald) 11%,var(--surface)),
        color-mix(in srgb,var(--surface) 92%,transparent)
    );
}

.roadmap-v2-hero-progress > span,
.roadmap-v2-manifesto > span,
.roadmap-v2-stage-head > div > span,
.roadmap-v2-progress-meta > span,
.roadmap-v2-footer > span {
    display:block;
    color:var(--emerald);
    font-size:var(--ui-font-kicker);
    font-weight:780;
    letter-spacing:.15em;
}

.roadmap-v2-hero-progress > strong {
    display:block;
    margin:5px 0 2px;
    color:var(--ink);
    font-size:2.25rem;
    line-height:1;
}

.roadmap-v2-hero-progress > small {
    color:var(--muted);
}

.roadmap-v2-manifesto {
    margin-top:28px;
    padding:22px 26px;
}

.roadmap-v2-manifesto p {
    max-width:1000px;
    margin:9px 0 10px;
    color:var(--ink);
    font-size:1.02rem;
    line-height:1.65;
}

.roadmap-v2-manifesto small {
    color:var(--muted);
}

.roadmap-v2-grid {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
    margin-top:16px;
}

.roadmap-v2-stage {
    padding:24px;
}

.roadmap-v2-stage-future {
    grid-column:1 / -1;
}

.roadmap-v2-stage-head {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
}

.roadmap-v2-stage-head h2 {
    margin:6px 0 0;
    color:var(--ink);
    font-size:1.45rem;
}

.roadmap-v2-stage-head > strong {
    padding:7px 11px;
    border:1px solid color-mix(in srgb,var(--emerald) 32%,var(--line));
    border-radius:999px;
    color:var(--emerald);
    background:color-mix(in srgb,var(--emerald) 7%,transparent);
    font-size:var(--ui-font-badge);
    white-space:nowrap;
}

.roadmap-v2-stage-copy {
    margin:18px 0 20px;
    color:var(--muted);
    line-height:1.65;
}

.roadmap-v2-progress {
    margin:0 0 22px;
    padding:15px 17px;
    border:1px solid var(--line);
    border-radius:15px;
    background:color-mix(in srgb,var(--surface) 78%,transparent);
}

.roadmap-v2-progress-meta {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
}

.roadmap-v2-progress-meta strong {
    color:var(--ink);
    font-size:.9rem;
}

.roadmap-v2-progress-track {
    position:relative;
    height:7px;
    overflow:hidden;
    border-radius:999px;
    background:color-mix(in srgb,var(--line) 65%,transparent);
}

.roadmap-v2-progress-track i {
    display:block;
    height:100%;
    border-radius:inherit;
    background:linear-gradient(90deg,var(--emerald),var(--lime));
    box-shadow:0 0 14px color-mix(in srgb,var(--emerald) 45%,transparent);
}

.roadmap-v2-items {
    display:grid;
    gap:9px;
}

.roadmap-v2-stage-future .roadmap-v2-items {
    grid-template-columns:repeat(2,minmax(0,1fr));
}

.roadmap-v2-item {
    display:grid;
    grid-template-columns:28px minmax(0,1fr);
    gap:12px;
    padding:14px;
    border:1px solid var(--line);
    border-radius:15px;
    background:color-mix(in srgb,var(--surface) 72%,transparent);
}

.roadmap-v2-check {
    display:flex;
    align-items:center;
    justify-content:center;
    width:21px;
    height:21px;
    margin-top:1px;
    border:1px solid color-mix(in srgb,var(--muted) 40%,var(--line));
    border-radius:6px;
    color:var(--muted);
    font-size:.72rem;
    font-weight:900;
}

.roadmap-v2-item.is-done .roadmap-v2-check {
    border-color:color-mix(in srgb,var(--emerald) 70%,transparent);
    background:var(--emerald);
    color:#07110c;
}

.roadmap-v2-item.is-in_progress .roadmap-v2-check {
    border-color:var(--lime);
    color:var(--lime);
    box-shadow:0 0 10px color-mix(in srgb,var(--lime) 25%,transparent);
}

.roadmap-v2-item.is-future .roadmap-v2-check {
    border-color:color-mix(in srgb,var(--emerald) 45%,var(--line));
    color:var(--emerald);
}

.roadmap-v2-item-title {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
}

.roadmap-v2-item-title > strong {
    color:var(--ink);
    font-size:var(--ui-font-label);
}

.roadmap-v2-item-title > span {
    color:var(--muted);
    font-size:.72rem;
    font-weight:720;
    letter-spacing:.04em;
    white-space:nowrap;
}

.roadmap-v2-item.is-done .roadmap-v2-item-title > span {
    color:var(--emerald);
}

.roadmap-v2-item.is-in_progress .roadmap-v2-item-title > span {
    color:var(--lime);
}

.roadmap-v2-item-content p {
    margin:5px 0 0;
    color:var(--muted);
    font-size:var(--ui-font-caption);
    line-height:1.55;
}

.roadmap-v2-stage-future .roadmap-v2-item {
    padding:17px;
}

.roadmap-v2-footer {
    margin-top:16px;
    padding:20px 24px;
    border:1px dashed color-mix(in srgb,var(--emerald) 35%,var(--line));
    border-radius:18px;
}

.roadmap-v2-footer p {
    max-width:1000px;
    margin:8px 0 0;
    color:var(--muted);
    line-height:1.65;
}

@media (max-width:1100px) {
    .roadmap-v2-grid {
        grid-template-columns:1fr;
    }

    .roadmap-v2-stage-future {
        grid-column:auto;
    }

    .roadmap-v2-stage-future .roadmap-v2-items {
        grid-template-columns:1fr;
    }
}

/* ROADMAP V2 END */


/* CHANGELOG PAGINATION START */

.changelog-summary-strip {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
    margin-top:28px;
}

.changelog-summary-strip > div {
    padding:14px 17px;
    border:1px solid var(--line);
    border-radius:15px;
    background:color-mix(in srgb,var(--surface) 76%,transparent);
}

.changelog-summary-strip span {
    display:block;
    color:var(--muted);
    font-size:var(--ui-font-kicker);
    font-weight:760;
    letter-spacing:.12em;
}

.changelog-summary-strip strong {
    display:block;
    margin-top:5px;
    color:var(--ink);
    font-size:1.05rem;
}

.changelog-pagination {
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    gap:7px;
    margin:20px 0 4px;
}

.changelog-page {
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:36px;
    height:36px;
    padding:0 10px;
    border:1px solid var(--line);
    border-radius:11px;
    background:color-mix(in srgb,var(--surface) 78%,transparent);
    color:var(--muted);
    font-size:var(--ui-font-label);
    font-weight:700;
    text-decoration:none;
    transition:
        border-color .16s ease,
        background .16s ease,
        color .16s ease,
        transform .16s ease;
}

.changelog-page:hover {
    border-color:color-mix(in srgb,var(--emerald) 55%,var(--line));
    color:var(--ink);
    transform:translateY(-1px);
}

.changelog-page.is-active {
    border-color:var(--emerald);
    background:color-mix(in srgb,var(--emerald) 16%,var(--surface));
    color:var(--ink);
    box-shadow:0 0 14px color-mix(in srgb,var(--emerald) 16%,transparent);
}

.changelog-page-arrow {
    font-size:1.2rem;
}

.changelog-page.is-disabled {
    opacity:.28;
    cursor:default;
    pointer-events:none;
}

.changelog-empty {
    padding:28px;
    text-align:center;
}

.changelog-empty strong {
    color:var(--ink);
}

.changelog-empty p {
    margin:7px 0 0;
    color:var(--muted);
}

@media (max-width:760px) {
    .changelog-summary-strip {
        grid-template-columns:1fr;
    }
}

/* CHANGELOG PAGINATION END */





/* DEMO ADMIN READONLY START */

body[data-demo-admin-readonly="1"] .module-content::before {
    content:"TRYB DEMO  •  Administracja tylko do odczytu";
    display:block;
    margin:0 0 18px;
    padding:11px 15px;
    border:1px solid color-mix(in srgb,var(--emerald) 42%,var(--line));
    border-radius:13px;
    background:color-mix(in srgb,var(--emerald) 8%,var(--surface));
    color:var(--emerald);
    font-size:.72rem;
    font-weight:800;
    letter-spacing:.08em;
}

/*
 * DEMO readonly:
 * przygaszamy wyłącznie klasyczne pola formularza.
 *
 * Radio i checkbox są wykluczone, ponieważ wiele komponentów
 * Nutriva Orbit używa ich jako niewidocznej warstwy sterującej.
 * Nadanie im opacity powodowało pojawianie się dużych szarych
 * kół / natywnych kontrolek przeglądarki.
 */
body[data-demo-admin-readonly="1"] .module-content form
input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]),
body[data-demo-admin-readonly="1"] .module-content form select,
body[data-demo-admin-readonly="1"] .module-content form textarea {
    cursor:default;
    opacity:.72;
}

/*
 * Karty wyboru Administracji korzystają z radio rozciągniętego
 * na cały kafelek. Kontrolka ma pozostać całkowicie niewidoczna,
 * również po ustawieniu disabled.
 */
body[data-demo-admin-readonly="1"]
.module-content .admin-choice > input[type="radio"] {
    opacity:0 !important;
    cursor:default !important;
}

/*
 * Nie sugerujemy interakcji w DEMO.
 * Zaznaczona karta nadal zachowuje swój normalny wygląd Orbit.
 */
body[data-demo-admin-readonly="1"]
.module-content .admin-choice {
    cursor:default !important;
}

body[data-demo-admin-readonly="1"]
.module-content .admin-choice:hover > span {
    transform:none !important;
}

/*
 * Checkboxy i radio pozostawiamy komponentom Nutriva Orbit.
 * Nie dokładamy im globalnej opacity.
 */
body[data-demo-admin-readonly="1"]
.module-content input[type="checkbox"]:disabled,
body[data-demo-admin-readonly="1"]
.module-content input[type="radio"]:disabled {
    cursor:default;
}

/* Przyciski zapisu w DEMO pozostają ukryte. */
body[data-demo-admin-readonly="1"] .module-content form
button[type="submit"],
body[data-demo-admin-readonly="1"] .module-content form
input[type="submit"] {
    display:none !important;
}

/* DEMO ADMIN READONLY END */


/* INTENDENT MENU READABILITY START */

@media (min-width:1200px) {

    .intendent-week-grid-v2 {
        grid-template-columns:repeat(10,minmax(0,1fr));
        gap:12px;
    }

    .intendent-week-grid-v2 > .intendent-day-card {
        grid-column:span 2;
        min-width:0;
        min-height:292px;
        padding:16px;
    }

    .intendent-week-grid-v2 > .intendent-day-card:nth-child(6),
    .intendent-week-grid-v2 > .intendent-day-card:nth-child(7) {
        grid-column:span 5;
        min-height:176px;
    }
}

.intendent-week-grid-v2 .intendent-day-head {
    gap:8px;
}

.intendent-week-grid-v2 .intendent-day-head strong {
    white-space:nowrap;
}

.intendent-week-grid-v2 .intendent-day-content {
    min-width:0;
}

.intendent-week-grid-v2 .intendent-day-content > strong {
    display:block;
    line-height:1.28;
    overflow-wrap:anywhere;
}

.intendent-week-grid-v2 .intendent-day-content > small {
    line-height:1.45;
}

.intendent-menu-energy-pill {
    display:flex !important;
    align-items:center;
    flex-wrap:wrap;
    max-width:100%;
    white-space:normal !important;
    overflow:visible !important;
    line-height:1.32;
}

.intendent-week-grid-v2 .intendent-day-empty small {
    line-height:1.55;
}

/* INTENDENT MENU READABILITY END */


/* WORKSPACE COMPACT NOTES START */

.workspace-agenda-list {
    gap:7px !important;
}

.workspace-note {
    min-height:72px !important;
    padding:9px 12px !important;

    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) auto !important;
    align-items:center !important;

    column-gap:11px !important;
    border-radius:15px !important;
}

.workspace-note.is-page-hidden {
    display:none !important;
}

.workspace-note > form {
    margin:0 !important;
}

.workspace-note-check {
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    padding:0 !important;
    border-radius:11px !important;
}

.workspace-note-check svg {
    width:14px !important;
    height:14px !important;
}

.workspace-note-copy {
    min-width:0 !important;
    display:grid !important;
    gap:2px !important;
}

.workspace-note-meta {
    display:flex !important;
    align-items:center !important;
    flex-wrap:wrap !important;
    gap:5px 8px !important;
    margin:0 0 1px !important;
    line-height:1.15 !important;
}

.workspace-note-copy > strong {
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    line-height:1.25 !important;
}

.workspace-note-copy > p {
    min-width:0 !important;
    margin:1px 0 0 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    line-height:1.3 !important;
}

.workspace-note-actions {
    display:flex !important;
    align-items:center !important;
    gap:3px !important;
    margin:0 !important;
}

.workspace-note-actions form {
    margin:0 !important;
}

.workspace-note-action {
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    min-height:30px !important;
    padding:0 !important;
    border-radius:9px !important;
}

.workspace-note-action svg {
    width:14px !important;
    height:14px !important;
}


/* PAGINACJA */

.workspace-note-pagination {
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;

    gap:5px;

    margin:14px 0 2px;
}

.workspace-note-pagination[hidden] {
    display:none !important;
}

.workspace-page-btn {
    display:grid;
    place-items:center;

    min-width:32px;
    height:32px;
    padding:0 9px;

    border:1px solid var(--line);
    border-radius:10px;

    color:var(--muted);

    background:
        color-mix(
            in srgb,
            var(--surface) 72%,
            transparent
        );

    font:inherit;
    font-size:.78rem;
    font-weight:750;

    cursor:pointer;

    transition:
        border-color .15s ease,
        background .15s ease,
        color .15s ease,
        transform .15s ease;
}

.workspace-page-btn:hover:not(:disabled) {
    color:var(--ink);

    border-color:
        color-mix(
            in srgb,
            var(--lime) 45%,
            var(--line)
        );

    transform:translateY(-1px);
}

.workspace-page-btn.is-active {
    color:var(--lime-ink);
    border-color:var(--lime);
    background:var(--lime);
}

.workspace-page-btn.is-arrow {
    font-size:1.05rem;
}

.workspace-page-btn:disabled {
    opacity:.30;
    cursor:default;
}

.workspace-page-dots {
    display:grid;
    place-items:center;
    min-width:24px;
    height:32px;
    color:var(--muted-2);
    font-weight:800;
}


@media (max-width:760px) {

    .workspace-note {
        min-height:68px !important;
        padding:8px 9px !important;
        column-gap:8px !important;
    }

    .workspace-note-check {
        width:31px !important;
        height:31px !important;
        min-width:31px !important;
        min-height:31px !important;
    }

    .workspace-note-action {
        width:28px !important;
        height:28px !important;
        min-width:28px !important;
        min-height:28px !important;
    }

    .workspace-note-meta {
        gap:4px 6px !important;
    }
}

/* WORKSPACE COMPACT NOTES END */

/* NUTRIVA BRAND LOGO START */

/*
 * Oficjalny branding Nutriva Orbit.
 * Logo PNG zastępuje stary znak SVG + napis
 * FOOD INTELLIGENCE.
 */

.future-brand {
    display:inline-flex !important;
    align-items:center !important;
    text-decoration:none !important;
}

.future-brand .nutriva-brand-logo {
    display:block !important;
    width:154px !important;
    height:auto !important;
    max-width:100% !important;
    object-fit:contain !important;
}


/* LOGOWANIE */

.login-head .future-brand .nutriva-brand-logo {
    width:170px !important;
}


/* LAUNCHER MODUŁÓW */

.launcher-bar .future-brand .nutriva-brand-logo {
    width:162px !important;
}


/* MENU MODUŁU */

.module-nav .future-brand .nutriva-brand-logo {
    width:156px !important;
}


/* STARSZY SHELL / PRODUKTY */

.nav-panel .future-brand .nutriva-brand-logo {
    width:156px !important;
}


/* MAŁA WERSJA W STOPCE */

.future-brand.small .nutriva-brand-logo {
    width:118px !important;
}


/*
 * Logo ma własną typografię i znak.
 * Ukrywamy ewentualne pozostałości starego
 * komponentu, gdyby pojawiły się w cache.
 */

.future-brand:has(.nutriva-brand-logo) > .future-mark,
.future-brand:has(.nutriva-brand-logo) > span:not(.future-mark) {
    display:none !important;
}


/* TABLET */

@media (max-width:1000px) {

    .login-head .future-brand .nutriva-brand-logo,
    .launcher-bar .future-brand .nutriva-brand-logo {
        width:148px !important;
    }

    .module-nav .future-brand .nutriva-brand-logo {
        width:140px !important;
    }
}


/* TELEFON */

@media (max-width:640px) {

    .login-head .future-brand .nutriva-brand-logo {
        width:132px !important;
    }

    .launcher-bar .future-brand .nutriva-brand-logo {
        width:136px !important;
    }

    .module-nav .future-brand .nutriva-brand-logo {
        width:128px !important;
    }
}

/* NUTRIVA BRAND LOGO END */




/* LOGIN WOW V2 START */

/* ==========================================================
   NUTRIVA — LOGIN WOW V2
   ========================================================== */

.future-login.login-wow-v2 {
    position:relative;
    width:100%;
    min-height:100svh;
    overflow:hidden;
    isolation:isolate;
    background:#03140e;
    color:#f7fbf8;
}


/* ==========================================================
   BACKGROUND
   ========================================================== */

.login-wow-media {
    position:absolute;
    inset:0;
    z-index:0;
    overflow:hidden;
    background:#041910;
}

.login-wow-image {
    position:absolute;
    inset:0;

    width:100%;
    height:100%;

    object-fit:cover;
    object-position:center 46%;

    filter:
        saturate(.94)
        contrast(1.03)
        brightness(.83);

    transform:scale(1.01);

    animation:
        login-wow-image-in
        1.4s
        cubic-bezier(.2,.8,.2,1)
        both;
}


.login-wow-shade {
    position:absolute;
    inset:0;
    z-index:1;

    background:
        linear-gradient(
            90deg,
            rgba(1,21,14,.97) 0%,
            rgba(2,27,18,.92) 18%,
            rgba(2,30,20,.65) 35%,
            rgba(2,24,16,.18) 56%,
            rgba(1,17,11,.18) 72%,
            rgba(1,14,9,.56) 100%
        ),
        linear-gradient(
            180deg,
            rgba(1,16,10,.10) 0%,
            rgba(1,16,10,.02) 55%,
            rgba(1,14,9,.68) 100%
        );

    pointer-events:none;
}


.login-wow-grid {
    position:absolute;
    inset:0;
    z-index:2;

    background-image:
        linear-gradient(
            rgba(136,255,196,.055) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(136,255,196,.055) 1px,
            transparent 1px
        );

    background-size:
        72px 72px;

    mask-image:
        linear-gradient(
            90deg,
            rgba(0,0,0,.95) 0%,
            rgba(0,0,0,.72) 32%,
            transparent 65%
        );

    opacity:.48;

    pointer-events:none;
}


.login-wow-glow {
    position:absolute;
    z-index:2;

    width:720px;
    height:720px;

    right:-180px;
    top:50%;

    transform:
        translateY(-50%);

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(85,255,176,.09),
            transparent 68%
        );

    pointer-events:none;
}


/* ==========================================================
   HEADER
   ========================================================== */

.login-wow-header {
    position:absolute;
    z-index:10;

    top:34px;
    left:4.2%;
    right:4.2%;

    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
}

.login-wow-header .future-brand {
    display:flex;
    align-items:center;
}

.login-wow-header .nutriva-brand-logo {
    display:block;
    width:158px !important;
    height:auto !important;
}

.login-wow-tools {
    display:flex;
    align-items:center;
    gap:13px;
}

.login-wow-version {
    color:rgba(240,250,244,.63);
    font-size:.68rem;
    font-weight:800;
    letter-spacing:.18em;
    white-space:nowrap;
}


/* ==========================================================
   MANIFESTO
   ========================================================== */

.login-wow-manifesto {
    position:absolute;
    z-index:8;

    left:4.2%;
    top:50%;

    width:min(520px,34vw);

    transform:
        translateY(-47%);

    animation:
        login-wow-copy-in
        .9s
        .08s
        cubic-bezier(.16,.8,.2,1)
        both;
}


.login-wow-kicker {
    margin-bottom:27px;
}


.login-wow-manifesto h1 {
    margin:0;

    color:#fff;

    font-size:
        clamp(
            4rem,
            5.65vw,
            7rem
        );

    font-weight:650;

    line-height:.82;

    letter-spacing:-.072em;

    text-shadow:
        0 10px 42px
        rgba(0,0,0,.27);
}


.login-wow-manifesto h1 em {
    display:block;

    margin-top:20px;

    color:#e6ff73;

    font-family:
        Georgia,
        "Times New Roman",
        serif;

    font-size:.67em;
    font-weight:500;
    font-style:italic;

    line-height:.96;

    letter-spacing:-.045em;

    text-shadow:
        0 8px 34px
        rgba(0,0,0,.28);
}


.login-wow-manifesto > p {
    max-width:520px;

    margin:
        26px
        0
        0;

    color:
        rgba(241,249,244,.82);

    font-size:.96rem;
    line-height:1.65;

    text-shadow:
        0 3px 18px
        rgba(0,0,0,.34);
}


/* ==========================================================
   FLOW CARDS
   ========================================================== */

.login-wow-flow {
    display:flex;
    align-items:stretch;
    gap:10px;

    margin-top:28px;
}


.login-wow-flow-item {
    display:grid;

    grid-template-columns:
        38px
        auto;

    grid-template-rows:
        auto
        auto;

    column-gap:10px;
    row-gap:1px;

    min-width:134px;

    padding:
        11px
        14px;

    border:
        1px solid
        rgba(190,255,211,.09);

    border-radius:17px;

    background:
        rgba(2,25,17,.48);

    -webkit-backdrop-filter:
        blur(12px);

    backdrop-filter:
        blur(12px);

    box-shadow:
        inset 0 1px 0
        rgba(255,255,255,.025);
}


.login-wow-flow-icon {
    grid-row:
        1 / 3;

    align-self:center;

    display:grid;
    place-items:center;

    width:34px;
    height:34px;

    color:#ddff64;
}


.login-wow-flow-icon svg {
    width:27px;
    height:27px;
}


.login-wow-flow-number {
    color:#dfff6c;

    font-size:.69rem;
    font-weight:900;

    letter-spacing:.08em;
}


.login-wow-flow-item strong {
    color:#fff;

    font-size:.84rem;
    font-weight:750;
}


/* ==========================================================
   LOGIN CARD
   ========================================================== */

.login-wow-card {
    position:absolute;
    z-index:9;

    top:50%;
    right:8.7%;

    width:
        min(
            420px,
            28vw
        );

    min-width:360px;

    padding:
        25px
        25px
        22px;

    overflow:hidden;

    transform:
        translateY(-47%);

    border:
        1px solid
        rgba(126,237,181,.31);

    border-radius:24px;

    background:
        linear-gradient(
            145deg,
            rgba(19,69,46,.86),
            rgba(7,45,30,.83)
        );

    -webkit-backdrop-filter:
        blur(25px)
        saturate(1.18);

    backdrop-filter:
        blur(25px)
        saturate(1.18);

    box-shadow:
        0 34px 90px
        rgba(0,0,0,.36),
        0 0 0 1px
        rgba(255,255,255,.025)
        inset,
        0 1px 0
        rgba(255,255,255,.08)
        inset;

    animation:
        login-wow-card-in
        .92s
        .16s
        cubic-bezier(.16,.8,.2,1)
        both;
}


.login-wow-card-orbit {
    position:absolute;

    top:-85px;
    right:-75px;

    width:220px;
    height:220px;

    opacity:.13;

    pointer-events:none;
}


.login-wow-card-orbit i {
    position:absolute;
    inset:0;

    border:
        1px solid
        rgba(214,255,105,.76);

    border-radius:50%;
}


.login-wow-card-orbit i:nth-child(2) {
    inset:37px;
}


/* ==========================================================
   CARD HEADER
   ========================================================== */

.login-wow-card-head {
    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:
        38px
        minmax(0,1fr)
        auto;

    align-items:center;
    gap:11px;
}


.login-wow-card-symbol {
    display:grid;
    place-items:center;

    width:38px;
    height:38px;

    border:
        1px solid
        rgba(209,255,82,.18);

    border-radius:12px;

    color:#ddff62;

    background:
        rgba(175,255,55,.07);
}


.login-wow-card-symbol svg {
    width:17px;
    height:17px;
}


.login-wow-card-head > div {
    display:grid;
    gap:4px;
    min-width:0;
}


.login-wow-card-head > div > span {
    color:
        rgba(213,239,222,.70);

    font-size:.64rem;
    font-weight:850;

    letter-spacing:.18em;
}


.login-wow-card-head strong {
    overflow:hidden;

    color:#fff;

    font-size:.75rem;
    font-weight:750;

    text-overflow:ellipsis;
    white-space:nowrap;
}


.login-wow-status {
    display:block;

    width:7px;
    height:7px;

    border-radius:50%;

    background:#4ff2b0;

    box-shadow:
        0 0 0 4px
        rgba(79,242,176,.07),
        0 0 15px
        rgba(79,242,176,.72);

    animation:
        login-wow-pulse
        2.2s
        ease-in-out
        infinite;
}


.login-wow-divider {
    height:1px;

    margin:
        20px
        0
        22px;

    background:
        rgba(192,234,211,.15);
}


/* ==========================================================
   CARD COPY
   ========================================================== */

.login-wow-card-copy h2 {
    margin:0;

    color:#fff;

    font-size:1.72rem;
    font-weight:680;

    letter-spacing:-.045em;
}


.login-wow-card-copy h2 span {
    color:#e4ff6a;
}


.login-wow-card-copy p {
    margin:
        7px
        0
        18px;

    color:
        rgba(218,237,226,.65);

    font-size:.73rem;
}


/* ==========================================================
   FORM
   ========================================================== */

.login-wow-form {
    display:grid;
    gap:14px;
}


.login-wow-form label {
    display:grid;
    gap:6px;
}


.login-wow-form label > span {
    color:
        rgba(233,246,238,.84);

    font-size:.69rem;
    font-weight:720;
}


.login-wow-form input {
    width:100%;

    height:46px;

    padding:
        0
        13px;

    border:
        1px solid
        rgba(180,233,204,.22);

    border-radius:13px;

    outline:none;

    color:#fff;

    background:
        rgba(255,255,255,.045);

    box-shadow:
        inset
        0 1px 0
        rgba(255,255,255,.025);

    font:inherit;
    font-size:.78rem;

    transition:
        border-color .16s ease,
        background .16s ease,
        box-shadow .16s ease;
}


.login-wow-form input::placeholder {
    color:
        rgba(225,240,232,.38);
}


.login-wow-form input:focus {
    border-color:
        rgba(220,255,102,.58);

    background:
        rgba(255,255,255,.065);

    box-shadow:
        0 0 0 3px
        rgba(220,255,102,.07);
}


.login-wow-form .future-password {
    position:relative;
}


.login-wow-form .future-password input {
    padding-right:63px;
}


.login-wow-form .password-toggle {
    position:absolute;

    top:50%;
    right:6px;

    transform:
        translateY(-50%);

    min-height:34px;

    padding:
        0 10px;

    border:0;

    border-radius:9px;

    color:
        rgba(236,248,240,.78);

    background:
        rgba(255,255,255,.055);

    font-size:.67rem;
    font-weight:700;

    cursor:pointer;
}


/* ==========================================================
   CTA
   ========================================================== */

.login-wow-submit {
    position:relative;

    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;

    width:100% !important;

    min-height:54px !important;

    margin-top:2px;

    padding:
        7px
        8px
        7px
        14px !important;

    overflow:hidden;

    border:
        1px solid
        rgba(234,255,157,.72) !important;

    border-radius:14px !important;

    color:#18321f !important;

    background:
        linear-gradient(
            103deg,
            #f4ff8b 0%,
            #dcff66 38%,
            #81f6bb 72%,
            #63efe0 100%
        ) !important;

    box-shadow:
        0 14px 32px
        rgba(170,255,80,.15),
        inset
        0 1px 0
        rgba(255,255,255,.48);

    cursor:pointer;

    transition:
        transform .16s ease,
        box-shadow .16s ease,
        filter .16s ease;
}


.login-wow-submit:hover {
    transform:
        translateY(-2px);

    filter:
        brightness(1.025);

    box-shadow:
        0 18px 40px
        rgba(153,255,85,.21),
        inset
        0 1px 0
        rgba(255,255,255,.52);
}


.login-wow-submit > span {
    display:grid;
    gap:2px;

    text-align:left;

    font-size:.78rem;
    font-weight:850;
}


.login-wow-submit small {
    color:
        rgba(33,70,45,.52);

    font-size:.64rem;
    font-weight:650;
}


.login-wow-submit > i {
    display:grid;
    place-items:center;

    width:39px;
    height:39px;

    border-radius:11px;

    color:#dfff79;

    background:#124d37;
}


.login-wow-submit svg {
    width:15px;
    height:15px;
}


/* ==========================================================
   SECURITY
   ========================================================== */

.login-wow-security {
    display:flex;
    align-items:flex-start;
    gap:9px;

    margin-top:18px;

    padding-top:17px;

    border-top:
        1px solid
        rgba(192,234,211,.10);

    color:
        rgba(217,235,224,.58);

    font-size:.68rem;
    line-height:1.5;
}


.login-wow-security svg {
    flex:0 0 auto;

    width:14px;
    height:14px;

    margin-top:2px;
}


/* ==========================================================
   FOOTER
   ========================================================== */

.login-wow-care {
    position:absolute;
    z-index:8;

    left:4.2%;
    bottom:42px;

    display:flex;
    align-items:center;
    gap:10px;

    color:
        rgba(230,244,235,.70);

    font-size:.72rem;
    font-weight:650;

    line-height:1.32;
}


.login-wow-care svg {
    width:19px;
    height:19px;

    color:#ddff63;
}


.login-wow-footer {
    position:absolute;
    z-index:8;

    right:4.2%;
    bottom:42px;

    display:flex;
    align-items:center;
    gap:28px;

    color:
        rgba(222,239,229,.50);

    font-size:.61rem;
    font-weight:850;

    letter-spacing:.14em;
}


/* ==========================================================
   ANIMATIONS
   ========================================================== */

@keyframes login-wow-copy-in {

    from {
        opacity:0;

        transform:
            translate3d(
                -18px,
                -44%,
                0
            );
    }

    to {
        opacity:1;

        transform:
            translate3d(
                0,
                -47%,
                0
            );
    }
}


@keyframes login-wow-card-in {

    from {
        opacity:0;

        transform:
            translate3d(
                0,
                -43%,
                0
            )
            scale(.975);
    }

    to {
        opacity:1;

        transform:
            translate3d(
                0,
                -47%,
                0
            )
            scale(1);
    }
}


@keyframes login-wow-image-in {

    from {
        opacity:.55;
        transform:scale(1.04);
    }

    to {
        opacity:1;
        transform:scale(1.01);
    }
}


@keyframes login-wow-pulse {

    0%,
    100% {
        opacity:.70;
    }

    50% {
        opacity:1;
    }
}


/* ==========================================================
   <= 1200
   ========================================================== */

@media (max-width:1200px) {

    .login-wow-manifesto {
        width:38vw;
    }

    .login-wow-card {
        right:4.5%;

        width:390px;
        min-width:340px;
    }

    .login-wow-flow-item {
        min-width:0;
    }
}


/* ==========================================================
   <= 900
   ========================================================== */

@media (max-width:900px) {

    .future-login.login-wow-v2 {
        min-height:auto;
        overflow:auto;
    }

    .login-wow-media {
        position:fixed;
    }

    .login-wow-shade {
        background:
            linear-gradient(
                180deg,
                rgba(1,22,14,.72),
                rgba(1,20,13,.89)
                55%,
                rgba(1,16,10,.98)
            );
    }

    .login-wow-header {
        position:relative;

        top:auto;
        left:auto;
        right:auto;

        padding:
            24px
            22px;

        align-items:flex-start;
    }

    .login-wow-tools {
        gap:8px;
    }

    .login-wow-manifesto {
        position:relative;

        left:auto;
        top:auto;

        width:auto;

        margin:
            72px
            22px
            0;

        transform:none;

        animation:none;
    }

    .login-wow-manifesto h1 {
        font-size:
            clamp(
                3.3rem,
                12vw,
                5rem
            );
    }

    .login-wow-manifesto > p {
        max-width:520px;
    }

    .login-wow-card {
        position:relative;

        top:auto;
        right:auto;

        width:auto;
        min-width:0;

        margin:
            42px
            22px
            130px;

        transform:none;

        animation:none;
    }

    .login-wow-care {
        display:none;
    }

    .login-wow-footer {
        position:absolute;

        left:22px;
        right:22px;
        bottom:32px;

        justify-content:center;
    }
}


/* ==========================================================
   <= 640
   ========================================================== */

@media (max-width:640px) {

    .login-wow-header {
        gap:14px;
    }

    .login-wow-header .nutriva-brand-logo {
        width:128px !important;
    }

    .login-wow-version {
        display:none;
    }

    .login-wow-manifesto {
        margin-top:54px;
    }

    .login-wow-manifesto h1 {
        font-size:
            clamp(
                3rem,
                15vw,
                4.3rem
            );
    }

    .login-wow-flow {
        display:grid;

        grid-template-columns:
            repeat(
                3,
                minmax(0,1fr)
            );
    }

    .login-wow-flow-item {
        grid-template-columns:1fr;
        grid-template-rows:auto auto auto;

        padding:
            10px
            8px;

        text-align:center;
    }

    .login-wow-flow-icon {
        grid-row:auto;

        justify-self:center;
    }

    .login-wow-card {
        padding:
            21px
            18px
            19px;

        border-radius:21px;
    }

    .login-wow-footer {
        gap:12px;

        font-size:.52rem;

        letter-spacing:.08em;
    }
}


/* ==========================================================
   REDUCED MOTION
   ========================================================== */

@media (prefers-reduced-motion:reduce) {

    .login-wow-image,
    .login-wow-manifesto,
    .login-wow-card,
    .login-wow-status {
        animation:none !important;
    }

    .login-wow-submit {
        transition:none !important;
    }
}

/* LOGIN WOW V2 END */


/* REPORT RESOURCES STACK FINAL START */

/*
 * Raporty / Zasoby
 *
 * STANY:
 * pełna szerokość ekranu
 *
 * TERMINY:
 * osobna sekcja poniżej
 */

.reports-resources-stack {
    display:flex !important;
    flex-direction:column !important;

    width:100% !important;

    gap:18px !important;

    margin-top:14px !important;
}


/* ----------------------------------------------------------
   OBIE KARTY
   ---------------------------------------------------------- */

.reports-resources-stack > .reports-panel {
    display:block !important;

    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    margin:0 !important;

    grid-column:auto !important;
}


/* ----------------------------------------------------------
   STANY
   ---------------------------------------------------------- */

.reports-resources-stack > .reports-table-panel {
    width:100% !important;
}


.reports-resources-stack .reports-table-wrap {
    display:block !important;

    width:100% !important;
    max-width:100% !important;

    overflow-x:auto !important;
    overflow-y:hidden !important;
}


.reports-resources-stack .reports-table {
    width:100% !important;

    min-width:900px;

    table-layout:auto;
}


/* produkt */

.reports-resources-stack .reports-table th:nth-child(1),
.reports-resources-stack .reports-table td:nth-child(1) {
    width:31%;
    min-width:240px;

    white-space:normal;
}


/* stan */

.reports-resources-stack .reports-table th:nth-child(2),
.reports-resources-stack .reports-table td:nth-child(2) {
    width:13%;
    min-width:110px;
}


/* minimum */

.reports-resources-stack .reports-table th:nth-child(3),
.reports-resources-stack .reports-table td:nth-child(3) {
    width:12%;
    min-width:105px;
}


/* średnia cena */

.reports-resources-stack .reports-table th:nth-child(4),
.reports-resources-stack .reports-table td:nth-child(4) {
    width:15%;
    min-width:120px;
}


/* wartość */

.reports-resources-stack .reports-table th:nth-child(5),
.reports-resources-stack .reports-table td:nth-child(5) {
    width:15%;
    min-width:120px;
}


/* status */

.reports-resources-stack .reports-table th:nth-child(6),
.reports-resources-stack .reports-table td:nth-child(6) {
    width:14%;
    min-width:105px;
}


/* liczby bez zawijania */

.reports-resources-stack .reports-table th:not(:first-child),
.reports-resources-stack .reports-table td:not(:first-child) {
    white-space:nowrap;
}


/* ----------------------------------------------------------
   TERMINY — PEŁNA SZEROKOŚĆ
   ---------------------------------------------------------- */

.reports-resources-stack .reports-expiry-list {
    display:grid !important;

    grid-template-columns:
        repeat(3, minmax(0,1fr)) !important;

    gap:10px !important;
}


.reports-resources-stack .reports-expiry-list > div {
    display:grid !important;

    grid-template-columns:
        52px
        minmax(0,1fr) !important;

    align-items:center;

    min-width:0;

    padding:13px 14px;
}


.reports-resources-stack .reports-expiry-list p {
    min-width:0;
}


.reports-resources-stack .reports-expiry-list strong {
    display:block;

    overflow:hidden;

    text-overflow:ellipsis;
    white-space:nowrap;
}


.reports-resources-stack .reports-expiry-list small {
    display:block;

    margin-top:2px;

    overflow:hidden;

    text-overflow:ellipsis;
    white-space:nowrap;
}


/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */

@media (max-width:1200px) {

    .reports-resources-stack .reports-expiry-list {
        grid-template-columns:
            repeat(2, minmax(0,1fr)) !important;
    }
}


@media (max-width:760px) {

    .reports-resources-stack .reports-expiry-list {
        grid-template-columns:
            1fr !important;
    }

    .reports-resources-stack .reports-table {
        min-width:820px;
    }
}

/* REPORT RESOURCES STACK FINAL END */
/* REPORTS PAGINATION START */

.reports-pagination {
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:18px;

    padding-top:16px;
    margin-top:4px;

    border-top:
        1px solid
        var(--line);
}


.reports-pagination-meta {
    color:var(--muted-2);

    font-size:.67rem;
    font-weight:650;

    white-space:nowrap;
}


.reports-pagination-pages {
    display:flex;
    align-items:center;

    gap:5px;
}


.reports-pagination-pages a,
.reports-pagination-pages > span {
    display:grid;
    place-items:center;

    min-width:34px;
    height:34px;

    padding:0 8px;

    border:
        1px solid
        var(--line);

    border-radius:10px;

    color:var(--muted);

    background:
        color-mix(
            in srgb,
            var(--surface-2) 68%,
            transparent
        );

    font-size:.7rem;
    font-weight:760;

    text-decoration:none;

    transition:
        border-color .15s ease,
        background .15s ease,
        color .15s ease;
}


.reports-pagination-pages a:hover {
    color:var(--ink);

    border-color:
        color-mix(
            in srgb,
            var(--lime) 34%,
            var(--line)
        );

    background:
        color-mix(
            in srgb,
            var(--lime) 6%,
            var(--surface-2)
        );
}


.reports-pagination-pages .is-current {
    color:#102219;

    border-color:
        color-mix(
            in srgb,
            var(--lime) 55%,
            var(--line)
        );

    background:var(--lime);

    box-shadow:
        0 5px 18px
        color-mix(
            in srgb,
            var(--lime) 11%,
            transparent
        );
}


.reports-pagination-pages .is-gap {
    min-width:24px;

    padding:0;

    border-color:transparent;

    background:transparent;

    color:var(--muted-2);
}


.reports-pagination-pages .is-disabled {
    opacity:.32;

    cursor:default;
}


@media (max-width:720px) {

    .reports-pagination {
        align-items:flex-start;
        flex-direction:column;
    }

    .reports-pagination-pages {
        max-width:100%;
        flex-wrap:wrap;
    }
}

/* REPORTS PAGINATION END */

/* WAREHOUSE DOCUMENT HEADER FIX START */

.warehouse-document-card > .product-info-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;

    width: 100%;
    box-sizing: border-box;

    margin: 0 !important;
    padding: 18px 24px 17px !important;

    border-bottom: 1px solid var(--line);

    background:
        color-mix(
            in srgb,
            var(--surface-2) 34%,
            transparent
        );
}

.warehouse-document-card > .product-info-head > span {
    flex: 0 0 auto;
    margin: 0 !important;

    line-height: 1.2;
    white-space: nowrap;
}

.warehouse-document-card > .product-info-head > h2 {
    flex: 1 1 auto;

    margin: 0 !important;

    line-height: 1.2;
    text-align: right;
}

.warehouse-document-card > .product-table-wrap {
    margin: 0 !important;
}


@media (max-width: 720px) {

    .warehouse-document-card > .product-info-head {
        align-items: flex-start;
        flex-direction: column;

        gap: 7px;

        padding: 16px !important;
    }

    .warehouse-document-card > .product-info-head > h2 {
        width: 100%;
        text-align: left;
    }
}

/* WAREHOUSE DOCUMENT HEADER FIX END */

/* INVENTORY COUNT SHEET FIX START */

.inventory-count-card {
    width: 100%;
    min-width: 0;
    overflow: hidden;
}

.inventory-count-card > .inventory-section-head {
    display: grid !important;
    grid-template-columns:
        minmax(0, 1fr)
        minmax(340px, 44%) !important;

    align-items: end !important;
    gap: 32px !important;

    width: 100%;
    box-sizing: border-box;

    margin: 0 !important;
    padding: 18px 22px 17px !important;

    border-bottom: 1px solid var(--line);

    background:
        color-mix(
            in srgb,
            var(--surface-2) 28%,
            transparent
        );
}

.inventory-count-card > .inventory-section-head > div {
    min-width: 0;
}

.inventory-count-card > .inventory-section-head > div > span {
    display: block;

    margin: 0 0 6px !important;

    line-height: 1.2;
}

.inventory-count-card > .inventory-section-head h2 {
    margin: 0 !important;

    line-height: 1.18;
}

.inventory-count-card > .inventory-section-head > p {
    max-width: 620px;

    margin: 0 !important;

    justify-self: end;

    line-height: 1.55;
}

.inventory-count-card .product-table-wrap {
    width: 100%;
    max-width: 100%;
    min-width: 0;

    margin: 0 !important;

    overflow-x: auto;
}

.inventory-count-card table {
    width: 100%;
}


@media (max-width: 900px) {

    .inventory-count-card > .inventory-section-head {
        grid-template-columns: 1fr !important;
        align-items: start !important;

        gap: 10px !important;

        padding: 16px !important;
    }

    .inventory-count-card > .inventory-section-head > p {
        max-width: none;
        justify-self: stretch;
    }
}

/* INVENTORY COUNT SHEET FIX END */

/* PRODUCT PAGINATION LARAVEL FIX START */

.product-pagination {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;

    gap: 14px !important;

    width: 100%;
    min-height: 64px;
    box-sizing: border-box;
}

.product-pagination > span {
    flex: 0 1 auto;
    white-space: nowrap;
}

.product-pagination > div {
    display: block !important;
    margin-left: auto !important;
}


/* Laravel mobile paginator — Nutriva ma własny układ */
.product-pagination nav > div:first-child {
    display: none !important;
}


/* Desktopowa część paginatora */
.product-pagination nav > div:last-child {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;

    width: auto !important;
    gap: 0 !important;
}


/* Ukrywamy domyślny tekst:
   "Showing 1 to 50 of 114 results"
   ponieważ mamy własny licznik po lewej */
.product-pagination nav > div:last-child > div:first-child {
    display: none !important;
}


/* Kontener numerów stron */
.product-pagination nav > div:last-child > div:last-child {
    display: block !important;
    width: auto !important;
}


/* Laravel generuje dodatkowy SPAN wokół przycisków */
.product-pagination nav > div:last-child > div:last-child > span {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;

    gap: 5px !important;

    position: static !important;

    margin: 0 !important;
    padding: 0 !important;

    box-shadow: none !important;
}


/* Normalny numer / strzałka */
.product-pagination nav > div:last-child > div:last-child > span > a,
.product-pagination nav > div:last-child > div:last-child > span > span[aria-current],
.product-pagination nav > div:last-child > div:last-child > span > span[aria-disabled] {
    display: grid !important;
    place-items: center !important;

    flex: 0 0 auto !important;

    min-width: 34px !important;
    width: auto !important;
    height: 34px !important;

    margin: 0 !important;
    padding: 0 10px !important;

    box-sizing: border-box !important;

    border: 1px solid var(--line) !important;
    border-radius: 9px !important;

    background: transparent !important;
    color: var(--muted) !important;

    text-decoration: none !important;
    line-height: 1 !important;
}


/* Aktywna strona */
.product-pagination nav
> div:last-child
> div:last-child
> span
> span[aria-current] {
    color: var(--lime-ink) !important;
    background: var(--lime) !important;
    border-color: var(--lime) !important;
}


/* Nieaktywna strzałka */
.product-pagination nav
> div:last-child
> div:last-child
> span
> span[aria-disabled] {
    opacity: .38 !important;
}


/* Laravel wkłada jeszcze jeden span do current / disabled */
.product-pagination span[aria-current] > span,
.product-pagination span[aria-disabled] > span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-width: 0 !important;
    width: auto !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;
    color: inherit !important;
}


/* Hover */
.product-pagination nav a:hover {
    color: var(--ink) !important;

    border-color:
        color-mix(
            in srgb,
            var(--lime) 45%,
            var(--line)
        ) !important;

    background:
        color-mix(
            in srgb,
            var(--surface-2) 70%,
            transparent
        ) !important;
}


/* Strzałki Laravel */
.product-pagination nav svg {
    width: 14px !important;
    height: 14px !important;
}


/* Telefon */
@media (max-width: 720px) {

    .product-pagination {
        align-items: flex-start !important;
        flex-direction: column !important;

        gap: 10px !important;
        padding: 12px 14px !important;
    }

    .product-pagination > div {
        margin-left: 0 !important;
    }

    .product-pagination nav > div:last-child {
        justify-content: flex-start !important;
    }

    .product-pagination nav
    > div:last-child
    > div:last-child
    > span {
        flex-wrap: wrap !important;
    }
}

/* PRODUCT PAGINATION LARAVEL FIX END */

/* MODULE CATALOG SCALABLE START */

.module-catalog-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;

    gap:30px;

    margin-top:36px;
    padding-top:26px;

    border-top:1px solid var(--line);

    scroll-margin-top:90px;
}


.module-catalog-head > div:first-child {
    max-width:720px;
}


.module-catalog-head h2 {
    margin:8px 0 7px;

    color:var(--ink);

    font-size:clamp(1.75rem,2.5vw,2.35rem);
    line-height:1;
    letter-spacing:-.045em;
}


.module-catalog-head p {
    max-width:660px;

    margin:0;

    color:var(--muted);

    font-size:var(--ui-font-body);
    line-height:1.55;
}


.module-catalog-count {
    flex:0 0 auto;

    display:grid;
    place-items:center;

    min-width:84px;

    padding:11px 14px;

    border:1px solid var(--line);
    border-radius:15px;

    background:
        color-mix(
            in srgb,
            var(--surface-2) 68%,
            transparent
        );
}


.module-catalog-count strong {
    color:var(--lime);

    font-size:1.25rem;
    line-height:1;
}


.module-catalog-count span {
    margin-top:4px;

    color:var(--muted);

    font-size:.58rem;
    font-weight:760;

    text-transform:uppercase;
    letter-spacing:.075em;
}


#module-catalog {
    scroll-margin-top:90px;
}


/*
 * Jeden system siatki.
 * Nazwa przyszłego modułu nie wymaga żadnej nowej reguły CSS.
 */
.module-grid {
    display:grid !important;

    grid-template-columns:
        repeat(3,minmax(0,1fr)) !important;

    grid-auto-rows:1fr !important;

    gap:12px !important;

    margin-top:15px !important;
}


/*
 * Nadpisujemy stare bento:
 * magazyny / żywienie / intendent / raporty / administracja.
 */
.module-grid > .module-card {
    grid-column:auto !important;
    grid-row:auto !important;

    display:flex !important;
    flex-direction:column !important;

    min-width:0 !important;
    min-height:230px !important;

    padding:20px !important;

    border-radius:20px !important;
}


.module-grid .module-card-no {
    font-size:.67rem !important;
    letter-spacing:.13em !important;
}


.module-grid .module-card-icon {
    width:44px !important;
    height:44px !important;

    margin:17px 0 13px !important;

    border-radius:13px !important;
}


.module-grid .module-card-icon svg {
    width:20px !important;
    height:20px !important;
}


.module-grid .module-card-copy {
    max-width:none !important;
}


.module-grid .module-card-copy > span {
    font-size:.64rem !important;
    letter-spacing:.12em !important;
}


.module-grid .module-card-copy h2 {
    margin:6px 0 7px !important;

    font-size:clamp(
        1.35rem,
        1.8vw,
        1.75rem
    ) !important;

    line-height:1 !important;
    letter-spacing:-.04em !important;
}


.module-grid .module-card-copy p {
    display:-webkit-box;

    overflow:hidden;

    margin:0 !important;

    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;

    color:var(--muted) !important;

    font-size:.74rem !important;
    line-height:1.5 !important;
}


.module-grid .module-card-foot {
    margin-top:auto !important;
    padding-top:17px !important;

    font-size:.63rem !important;
}


.module-grid .module-card-art {
    opacity:.42 !important;

    transform:scale(.72) !important;
    transform-origin:right bottom !important;
}


@media (max-width:1180px) {

    .module-grid {
        grid-template-columns:
            repeat(2,minmax(0,1fr)) !important;
    }
}


@media (max-width:720px) {

    .module-catalog-head {
        display:grid;

        gap:15px;

        margin-top:30px;
    }

    .module-catalog-count {
        justify-self:start;
    }

    .module-grid {
        grid-template-columns:1fr !important;
    }

    .module-grid > .module-card {
        min-height:210px !important;
    }
}

/* MODULE CATALOG SCALABLE END */

/* SYSTEM MONITOR FINAL START */

.system-monitor-card {
    position:relative !important;

    display:grid !important;
    gap:12px !important;

    min-height:0 !important;

    padding:19px 20px 14px !important;

    overflow:hidden;

    border-radius:24px !important;

    background:
        radial-gradient(
            circle at 87% 5%,
            color-mix(
                in srgb,
                var(--emerald) 14%,
                transparent
            ),
            transparent 38%
        ),
        linear-gradient(
            145deg,
            color-mix(
                in srgb,
                var(--surface) 96%,
                var(--emerald) 4%
            ),
            color-mix(
                in srgb,
                var(--surface-2) 94%,
                transparent
            )
        ) !important;

    box-shadow:
        0 20px 58px rgba(0,0,0,.15),
        inset 0 1px 0 rgba(255,255,255,.04) !important;
}


.system-monitor-card.is-online {
    border-color:
        color-mix(
            in srgb,
            var(--emerald) 42%,
            var(--line)
        ) !important;
}


.system-monitor-card.is-degraded {
    border-color:
        color-mix(
            in srgb,
            #e7b865 60%,
            var(--line)
        ) !important;
}


/* HEADER */

.system-monitor-header {
    position:relative;
    z-index:3;

    display:flex;
    align-items:flex-start;
    justify-content:space-between;

    gap:14px;
}


.system-monitor-header > div:first-child {
    display:grid;
    gap:3px;
}


.system-monitor-kicker {
    display:flex;
    align-items:center;

    gap:7px;

    color:var(--emerald);

    font-size:.58rem;
    font-weight:850;

    letter-spacing:.12em;
}


.system-monitor-kicker > i {
    width:6px;
    height:6px;

    border-radius:50%;

    background:var(--lime);

    box-shadow:
        0 0 12px
        color-mix(
            in srgb,
            var(--lime) 65%,
            transparent
        );

    animation:
        monitor-heartbeat
        2s
        ease-in-out
        infinite;
}


.system-monitor-header strong {
    color:var(--ink);

    font-size:.88rem;
    line-height:1.25;
}


.system-monitor-header small {
    color:var(--muted);

    font-size:.59rem;
}


.system-monitor-state {
    flex:0 0 auto;

    display:flex;
    align-items:center;

    gap:6px;

    min-height:28px;

    padding:0 10px;

    border:1px solid var(--line);
    border-radius:999px;

    font-size:.55rem;
    font-weight:850;

    letter-spacing:.085em;
}


.system-monitor-state > i {
    width:6px;
    height:6px;

    border-radius:50%;
}


.system-monitor-state.is-online {
    color:var(--emerald);

    border-color:
        color-mix(
            in srgb,
            var(--emerald) 38%,
            var(--line)
        );

    background:
        color-mix(
            in srgb,
            var(--emerald) 7%,
            var(--surface-2)
        );
}


.system-monitor-state.is-online > i {
    background:var(--emerald);

    box-shadow:
        0 0 10px
        color-mix(
            in srgb,
            var(--emerald) 70%,
            transparent
        );
}


.system-monitor-state.is-degraded {
    color:#e7b865;
}


.system-monitor-state.is-degraded > i {
    background:#e7b865;
}


/* BODY */

.system-monitor-main {
    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:
        minmax(0,1.12fr)
        minmax(125px,.88fr);

    gap:10px;

    min-width:0;
}


.system-monitor-services {
    display:grid;
    gap:5px;
}


.system-monitor-service {
    min-width:0;

    display:grid;

    grid-template-columns:
        7px minmax(0,1fr) auto;

    align-items:center;

    gap:8px;

    min-height:35px;

    padding:0 9px;

    border:1px solid var(--line);
    border-radius:10px;

    background:
        color-mix(
            in srgb,
            var(--surface-2) 54%,
            transparent
        );
}


.system-monitor-service > i {
    width:6px;
    height:6px;

    border-radius:50%;
}


.system-monitor-service.is-online > i {
    background:var(--emerald);

    box-shadow:
        0 0 10px
        color-mix(
            in srgb,
            var(--emerald) 60%,
            transparent
        );
}


.system-monitor-service.is-offline > i {
    background:#e37068;

    box-shadow:
        0 0 10px
        color-mix(
            in srgb,
            #e37068 45%,
            transparent
        );
}


.system-monitor-service strong {
    overflow:hidden;

    color:var(--text);

    font-size:.62rem;
    font-weight:730;

    white-space:nowrap;
    text-overflow:ellipsis;
}


.system-monitor-service em {
    color:var(--emerald);

    font-size:.55rem;
    font-style:normal;
    font-weight:850;

    white-space:nowrap;
}


.system-monitor-service.is-offline em {
    color:#e98c86;
}


/* TELEMETRIA */

.system-monitor-telemetry {
    position:relative;

    min-height:155px;

    overflow:hidden;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--emerald) 26%,
            var(--line)
        );

    border-radius:14px;

    background:
        color-mix(
            in srgb,
            var(--surface-2) 72%,
            transparent
        );

    box-shadow:
        inset 0 0 25px
        color-mix(
            in srgb,
            var(--emerald) 5%,
            transparent
        );
}


.system-monitor-grid {
    position:absolute;
    inset:0;

    opacity:.20;

    background-image:
        linear-gradient(
            color-mix(
                in srgb,
                var(--emerald) 30%,
                transparent
            ) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            color-mix(
                in srgb,
                var(--emerald) 30%,
                transparent
            ) 1px,
            transparent 1px
        );

    background-size:
        18px 18px;
}


.system-monitor-scan {
    position:absolute;

    left:0;
    right:0;

    top:-36px;

    height:36px;

    background:
        linear-gradient(
            180deg,
            transparent,
            color-mix(
                in srgb,
                var(--lime) 8%,
                transparent
            ),
            color-mix(
                in srgb,
                var(--emerald) 17%,
                transparent
            ),
            transparent
        );

    border-bottom:
        1px solid
        color-mix(
            in srgb,
            var(--lime) 34%,
            transparent
        );

    animation:
        monitor-scan
        4.6s
        linear
        infinite;
}


/* rdzeń */

.system-monitor-core {
    position:absolute;

    left:50%;
    top:12px;

    width:66px;
    height:66px;

    margin-left:-33px;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--emerald) 25%,
            transparent
        );

    border-radius:50%;

    animation:
        monitor-core-rotate
        9s
        linear
        infinite;
}


.system-monitor-core::before,
.system-monitor-core::after {
    content:"";

    position:absolute;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--emerald) 15%,
            transparent
        );

    border-radius:50%;
}


.system-monitor-core::before {
    inset:9px;
}


.system-monitor-core::after {
    inset:20px;
}


.system-monitor-core > span {
    position:absolute;

    left:50%;
    top:50%;

    z-index:3;

    width:30px;
    height:30px;

    margin-left:-15px;
    margin-top:-15px;

    display:grid;
    place-items:center;

    border:
        1px solid
        color-mix(
            in srgb,
            var(--emerald) 42%,
            var(--line)
        );

    border-radius:50%;

    color:var(--lime);

    background:
        color-mix(
            in srgb,
            var(--emerald) 9%,
            var(--surface)
        );

    box-shadow:
        0 0 20px
        color-mix(
            in srgb,
            var(--emerald) 20%,
            transparent
        );

    animation:
        monitor-core-pulse
        2.7s
        ease-in-out
        infinite;
}


.system-monitor-core svg {
    width:14px;
    height:14px;
}


.system-monitor-core > i {
    position:absolute;

    width:5px;
    height:5px;

    border-radius:50%;

    background:var(--lime);

    box-shadow:
        0 0 10px
        color-mix(
            in srgb,
            var(--lime) 70%,
            transparent
        );
}


.system-monitor-core > i:nth-of-type(1) {
    left:2px;
    top:29px;
}


.system-monitor-core > i:nth-of-type(2) {
    right:9px;
    top:4px;
}


.system-monitor-core > i:nth-of-type(3) {
    right:2px;
    bottom:13px;
}


/* bars */

.system-monitor-bars {
    position:absolute;

    left:10px;
    right:10px;
    bottom:11px;

    height:57px;

    display:flex;
    align-items:flex-end;
    justify-content:space-between;

    gap:3px;
}


.system-monitor-bars b {
    flex:1 1 0;

    min-width:3px;

    height:30%;

    border-radius:3px 3px 1px 1px;

    background:
        linear-gradient(
            180deg,
            var(--lime),
            var(--emerald)
        );

    opacity:.72;

    animation:
        monitor-bar
        1.55s
        ease-in-out
        infinite;
}


.system-monitor-bars b:nth-child(2n) {
    animation-delay:-.22s;
}

.system-monitor-bars b:nth-child(3n) {
    animation-delay:-.49s;
}

.system-monitor-bars b:nth-child(4n) {
    animation-delay:-.73s;
}


/* INFORMACJE */

.system-monitor-info {
    position:relative;
    z-index:2;

    display:grid;

    grid-template-columns:
        1.15fr 1fr .85fr 1fr;

    padding-top:10px;

    border-top:1px solid var(--line);
}


.system-monitor-info > div {
    min-width:0;

    padding:0 9px;

    border-right:1px solid var(--line);
}


.system-monitor-info > div:first-child {
    padding-left:0;
}


.system-monitor-info > div:last-child {
    padding-right:0;
    border-right:0;
}


.system-monitor-info span {
    display:block;

    color:var(--muted-2);

    font-size:.46rem;
    font-weight:820;

    letter-spacing:.075em;
}


.system-monitor-info strong {
    display:block;

    overflow:hidden;

    margin-top:3px;

    color:var(--text);

    font-size:.61rem;

    white-space:nowrap;
    text-overflow:ellipsis;
}


.system-monitor-info .is-positive {
    color:var(--emerald);
}


.system-monitor-info .is-negative {
    color:#e37068;
}


.system-monitor-update {
    position:relative;
    z-index:2;

    display:flex;
    align-items:center;
    justify-content:flex-end;

    gap:5px;

    color:var(--muted-2);

    font-size:.48rem;
}


.system-monitor-update > i {
    width:4px;
    height:4px;

    border-radius:50%;

    background:var(--emerald);
}


/* ANIMACJE */

@keyframes monitor-heartbeat {

    0%,100% {
        opacity:.55;
        transform:scale(.85);
    }

    50% {
        opacity:1;
        transform:scale(1.15);
    }
}


@keyframes monitor-scan {

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

    12% {
        opacity:1;
    }

    88% {
        opacity:.85;
    }

    100% {
        transform:translateY(190px);
        opacity:0;
    }
}


@keyframes monitor-core-rotate {

    from {
        transform:rotate(0deg);
    }

    to {
        transform:rotate(360deg);
    }
}


@keyframes monitor-core-pulse {

    0%,100% {
        color:var(--emerald);

        box-shadow:
            0 0 18px
            color-mix(
                in srgb,
                var(--emerald) 17%,
                transparent
            );
    }

    50% {
        color:var(--lime);

        box-shadow:
            0 0 29px
            color-mix(
                in srgb,
                var(--lime) 30%,
                transparent
            );
    }
}


@keyframes monitor-bar {

    0%,100% {
        height:25%;
        opacity:.45;
    }

    27% {
        height:87%;
        opacity:1;
    }

    55% {
        height:42%;
        opacity:.62;
    }

    79% {
        height:72%;
        opacity:.86;
    }
}


@media(max-width:1180px) {

    .system-monitor-main {
        grid-template-columns:1fr;
    }

    .system-monitor-telemetry {
        min-height:112px;
    }
}


@media(max-width:680px) {

    .system-monitor-card {
        padding:16px !important;
    }

    .system-monitor-info {
        grid-template-columns:
            repeat(2,minmax(0,1fr));

        gap:9px 0;
    }

    .system-monitor-info > div:nth-child(2) {
        border-right:0;
    }

    .system-monitor-info > div:nth-child(3) {
        padding-left:0;
    }
}


@media(prefers-reduced-motion:reduce) {

    .system-monitor-kicker > i,
    .system-monitor-scan,
    .system-monitor-core,
    .system-monitor-core > span,
    .system-monitor-bars b {
        animation:none !important;
    }
}

/* SYSTEM MONITOR FINAL END */

/* SYSTEM MONITOR POLISH FINAL START */


/* =========================================================
   SZEROKOŚĆ / WYRÓWNANIE
   ========================================================= */

.launcher-intro {
    grid-template-columns:
        minmax(0,1.16fr)
        minmax(340px,.84fr) !important;

    gap:18px !important;

    align-items:end !important;
}


.launcher-heading {
    min-width:0;
}


.system-monitor-card {
    width:100% !important;
    max-width:none !important;

    box-sizing:border-box !important;
}


.system-monitor-main {
    grid-template-columns:
        minmax(0,1fr)
        minmax(0,1fr) !important;

    gap:11px !important;
}


.system-monitor-service {
    min-height:36px;
}


.system-monitor-telemetry {
    min-height:150px !important;
}


.system-monitor-info {
    grid-template-columns:
        1.15fr 1fr .9fr 1fr !important;
}


/* =========================================================
   LIGHT THEME
   ========================================================= */

/*
 * Launcher ma historycznie część zmiennych ustawionych
 * pod ciemny motyw. Monitoring dostaje więc własną,
 * jawną paletę dla jasnego motywu.
 */

html[data-theme="light"] .system-monitor-card {
    border-color:
        rgba(28, 155, 103, .42) !important;

    background:
        radial-gradient(
            circle at 88% 4%,
            rgba(55, 210, 145, .14),
            transparent 39%
        ),
        linear-gradient(
            145deg,
            rgba(250,253,248,.98),
            rgba(235,247,237,.96)
        ) !important;

    box-shadow:
        0 20px 55px rgba(31,76,50,.11),
        inset 0 1px 0 rgba(255,255,255,.94)
        !important;
}


/* główny komunikat */
html[data-theme="light"]
.system-monitor-header strong {
    color:#173527 !important;
}


/* opis pod nagłówkiem */
html[data-theme="light"]
.system-monitor-header small {
    color:#61786b !important;
}


/* kicker */
html[data-theme="light"]
.system-monitor-kicker {
    color:#138f61 !important;
}


html[data-theme="light"]
.system-monitor-kicker > i {
    background:#9bdc45 !important;

    box-shadow:
        0 0 10px
        rgba(116,190,53,.34)
        !important;
}


/* ONLINE */
html[data-theme="light"]
.system-monitor-state.is-online {
    color:#087e55 !important;

    border-color:
        rgba(18,151,99,.30) !important;

    background:
        rgba(225,246,232,.82) !important;
}


html[data-theme="light"]
.system-monitor-state.is-online > i {
    background:#16ad74 !important;
}


/* elementy usług */
html[data-theme="light"]
.system-monitor-service {
    border-color:
        rgba(35,104,65,.12) !important;

    background:
        rgba(240,248,239,.78) !important;
}


/* Aplikacja / Baza danych / Cache / Pliki */
html[data-theme="light"]
.system-monitor-service strong {
    color:#234437 !important;

    opacity:1 !important;
}


/* ONLINE po prawej */
html[data-theme="light"]
.system-monitor-service em {
    color:#079766 !important;

    opacity:1 !important;
}


html[data-theme="light"]
.system-monitor-service.is-online > i {
    background:#19ad76 !important;

    box-shadow:
        0 0 8px
        rgba(25,173,118,.27)
        !important;
}


/* błędy */
html[data-theme="light"]
.system-monitor-service.is-offline strong {
    color:#783a37 !important;
}


html[data-theme="light"]
.system-monitor-service.is-offline em {
    color:#b94843 !important;
}


/* panel telemetryczny */
html[data-theme="light"]
.system-monitor-telemetry {
    border-color:
        rgba(23,142,91,.26) !important;

    background:
        linear-gradient(
            rgba(38,137,84,.075) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(38,137,84,.075) 1px,
            transparent 1px
        ),
        rgba(232,246,234,.74) !important;

    background-size:
        18px 18px,
        18px 18px,
        auto !important;

    box-shadow:
        inset 0 0 26px
        rgba(36,151,94,.055)
        !important;
}


/* skaner */
html[data-theme="light"]
.system-monitor-scan {
    background:
        linear-gradient(
            180deg,
            transparent,
            rgba(139,202,69,.08),
            rgba(36,165,105,.12),
            transparent
        ) !important;

    border-bottom-color:
        rgba(88,176,74,.27) !important;
}


/* radar */
html[data-theme="light"]
.system-monitor-core {
    border-color:
        rgba(26,147,95,.24) !important;
}


html[data-theme="light"]
.system-monitor-core::before,
html[data-theme="light"]
.system-monitor-core::after {
    border-color:
        rgba(25,128,81,.13) !important;
}


html[data-theme="light"]
.system-monitor-core > span {
    color:#4aaf43 !important;

    border-color:
        rgba(30,156,99,.30) !important;

    background:
        rgba(243,251,242,.94) !important;

    box-shadow:
        0 0 19px
        rgba(54,169,103,.13)
        !important;
}


/* wykres */
html[data-theme="light"]
.system-monitor-bars b {
    background:
        linear-gradient(
            180deg,
            #a8d846,
            #28a969
        ) !important;

    opacity:.78;
}


/* dolna linia */
html[data-theme="light"]
.system-monitor-info {
    border-top-color:
        rgba(34,92,59,.12) !important;
}


html[data-theme="light"]
.system-monitor-info > div {
    border-right-color:
        rgba(34,92,59,.11) !important;
}


/* OPÓŹNIENIE BAZY / LICENCJA / TYP / WERSJA */
html[data-theme="light"]
.system-monitor-info span {
    color:#6c8175 !important;

    opacity:1 !important;
}


/* wartości */
html[data-theme="light"]
.system-monitor-info strong {
    color:#173527 !important;

    opacity:1 !important;
}


/* Aktywna */
html[data-theme="light"]
.system-monitor-info .is-positive {
    color:#078b5e !important;
}


/* Nieaktywna */
html[data-theme="light"]
.system-monitor-info .is-negative {
    color:#b74c46 !important;
}


/* ostatni pomiar */
html[data-theme="light"]
.system-monitor-update {
    color:#71877a !important;

    opacity:1 !important;
}


html[data-theme="light"]
.system-monitor-update > i {
    background:#18a86f !important;
}


/* =========================================================
   RESPONSIVE
   ========================================================= */

@media(max-width:1180px) and (min-width:901px) {

    .launcher-intro {
        grid-template-columns:
            minmax(0,1.08fr)
            minmax(390px,.92fr) !important;
    }


    .system-monitor-main {
        grid-template-columns:1fr !important;
    }


    .system-monitor-telemetry {
        min-height:110px !important;
    }
}


@media(max-width:900px) {

    .launcher-intro {
        grid-template-columns:1fr !important;

        gap:24px !important;
    }


    .system-monitor-card {
        width:100% !important;
    }
}

/* SYSTEM MONITOR POLISH FINAL END */

/* ORBIT DROPDOWN GLOBAL FIX START */

/*
 * Orbit Select jest absolutnym dropdownem.
 *
 * Część kart Nutrivy używa overflow:hidden
 * dla zaokrągleń i efektów wizualnych.
 * To obcinało rozwinięte menu niezależnie
 * od wartości z-index.
 *
 * Podczas otwartego selecta pozwalamy jego
 * przodkom wyświetlić dropdown poza kartą.
 */


/* Sam komponent ponad pozostałym UI */
.module-content .orbit-field-select {
    position: relative;
    z-index: 1;
}


.module-content .orbit-field-select.is-open {
    position: relative;

    z-index: 5000 !important;
}


/* Menu zawsze nad kartami / tabelami / filtrami */
.module-content .orbit-field-menu {
    z-index: 5001 !important;
}


/*
 * Kluczowa poprawka.
 *
 * Każdy kontener będący przodkiem aktualnie
 * otwartego Orbit Select przestaje go przycinać.
 *
 * Działa globalnie:
 * Produkty, Magazyn, Dostawcy, PZ/RW,
 * Inwentaryzacja, Żywienie, Intendent,
 * Raporty, Administracja itd.
 */
.module-content
*:has(.orbit-field-select.is-open) {
    overflow: visible !important;
}


/*
 * Niektóre filtry tworzą własny stacking context.
 * Otwarty filtr musi znaleźć się nad kolejnymi
 * panelami i tabelami.
 */
.module-content
:is(
    .product-filter,
    .product-filter-row,
    .product-filter-more,
    .dish-filter,
    .reports-toolbar,
    form,
    label
):has(.orbit-field-select.is-open) {
    position: relative;

    z-index: 4900 !important;
}


/*
 * Panel posiadający otwarty dropdown
 * również przechodzi chwilowo nad kolejne sekcje.
 */
.module-content
:is(
    .product-panel,
    .reports-panel,
    .warehouse-panel,
    .admin-panel,
    .dish-panel
):has(.orbit-field-select.is-open) {
    position: relative;

    z-index: 4800 !important;

    overflow: visible !important;
}


/*
 * Menu zachowuje sensowną szerokość.
 * Długie wartości nie rozpychają layoutu.
 */
.module-content .orbit-field-menu {
    min-width: 100%;

    width: max-content;
    max-width: min(
        420px,
        calc(100vw - 32px)
    );

    box-sizing: border-box;
}


/*
 * Wartości opcji pozostają czytelne.
 */
.module-content .orbit-field-menu button {
    white-space: normal;

    overflow-wrap: anywhere;
}


/* Light theme */
html[data-theme="light"]
.module-content .orbit-field-menu {
    background: #fbfdf9 !important;

    border-color:
        rgba(16,45,31,.16) !important;

    box-shadow:
        0 18px 42px
        rgba(39,75,51,.17) !important;
}


html[data-theme="light"]
.module-content .orbit-field-menu button {
    color: #536d5e !important;
}


html[data-theme="light"]
.module-content .orbit-field-menu button:hover,
html[data-theme="light"]
.module-content .orbit-field-menu button:focus-visible {
    color: #173527 !important;

    background: #edf7ec !important;
}


html[data-theme="light"]
.module-content
.orbit-field-menu button[aria-selected="true"] {
    color: #087e55 !important;

    background: #e5f4e7 !important;
}


/* mobile */
@media(max-width:680px) {

    .module-content .orbit-field-menu {
        max-width:
            calc(100vw - 24px);
    }
}

/* ORBIT DROPDOWN GLOBAL FIX END */
