
    /* ============================================================
       PORTFOLIOS: łączymy kolumny 2 i 3
       ============================================================ */
    html[data-page="portfolios"] .wo-midcol{ display:none; }
    html[data-page="portfolios"] .wo-maincol{
      grid-column: 2 / 4;
      border-left: 1px solid var(--wo-col-border);
    }

    /* ============================================================
       UI: Portfolia (prawa — merged)
       ============================================================ */
    .wo-herohead{
      display:flex;align-items:flex-end;justify-content:space-between;gap:12px;
      margin: 4px 0 14px;flex-wrap:wrap;
    }
    .wo-herohead h1{margin:0;font-size:18px;font-weight:900;letter-spacing:.2px;}
    .wo-pill{
      display:inline-flex;align-items:center;gap:8px;
      padding:8px 10px;border-radius:999px;border:1px solid var(--wo-line);
      background: var(--wo-chip-bg);
      color: var(--wo-muted);
      font-size: 11px;
      user-select:none;
      white-space:nowrap;
    }
    .wo-pill i{color:var(--wo-icon);}

    .wo-searchbar{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:center;
      border: 1px solid var(--wo-line);
      background: color-mix(in srgb, var(--wo-soft) 70%, transparent);
      border-radius: 5px;
      padding: 12px;
    }
    .wo-sfield{
      position:relative;
      flex: 1 1 260px;
      min-width: 220px;
    }
    .wo-sfield i{
      position:absolute;left:12px;top:50%;transform:translateY(-50%);
      color: var(--wo-icon);
      font-size: 13px;
    }
    .wo-sinput{
      width:100%;
      height: 38px;
      border-radius: 999px;
      border: 1px solid var(--wo-line);
      background: var(--wo-panel);
      padding: 0 14px 0 36px;
      outline:none;
      font-size: 12px;
      color: var(--wo-text);
    }
    .wo-sinput::placeholder{ color: var(--wo-muted); }

    .wo-select{
      height: 38px;
      border-radius: 5px;
      border: 1px solid var(--wo-line);
      background: var(--wo-panel);
      padding: 0 12px;
      font-size: 12px;
      color: var(--wo-text);
      outline:none;
    }

    .wo-chipbtn{
      height: 38px;
      border-radius: 5px;
      border: 1px solid var(--wo-line);
      background: var(--wo-panel);
      padding: 0 12px;
      font-size: 12px;
      color: var(--wo-text);
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      gap: 8px;
      text-decoration:none;
      white-space:nowrap;
    }
    .wo-chipbtn i{ color: var(--wo-icon); }
    .wo-chipbtn:hover{ background: var(--wo-soft); }
    .wo-chipbtn.wo-primary{
      background: color-mix(in srgb, var(--wo-accent) 92%, #fff);
      border-color: transparent;
      color:#111;
      font-weight: 900;
    }
    .wo-chipbtn.wo-primary i{ color:#111; }

    .wo-minirow{
      margin: 12px 0 10px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 10px;
      flex-wrap:wrap;
    }
    .wo-minirow .meta{
      font-size: 12px;
      color: color-mix(in srgb, var(--wo-muted) 92%, transparent);
    }

    /* ===== GALERIA PROFILI (Masonry) ===== */

    .wo-gallery-overlay{
      position:absolute; left:0; right:0; bottom:0;
      padding: 10px 10px 10px;
      background: linear-gradient(to top, rgba(0,0,0,.88), rgba(0,0,0,0));
      color:#fff;
      display:flex;
      flex-direction:column;
      gap: 6px;
    }
    .wo-gallery-title{
      font-weight: 900;
      font-size: 13px;
      display:flex;
      align-items:center;
      gap: 8px;
      text-shadow: 0 1px 2px rgba(0,0,0,.6);
    }
    .wo-gallery-ver{
      width:8px;height:8px;border-radius:999px;background: var(--wo-accent);
      display:inline-block;
      transform: translateY(1px);
    }
    .wo-gallery-sub{
      font-size: 11px;
      opacity: .92;
      display:flex;
      flex-wrap:wrap;
      gap: 6px;
      align-items:center;
    }
    .wo-gallery-pill{
      display:inline-flex;
      align-items:center;
      gap: 6px;
      padding: 2px 8px;
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.25);
      background: rgba(0,0,0,.22);
      color:#fff;
      font-size: 11px;
      white-space:nowrap;
    }
    .wo-gallery-dot{ opacity:.65; }

    .wo-gallery-author{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap: 10px;
      margin-top: 4px;
    }
    .wo-gallery-handle{
      font-size: 11px;
      opacity:.92;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
      max-width: 70%;
    }
    .wo-gallery-actions{ display:inline-flex; gap: 8px; }
    .wo-gallery-btn{
      width: 38px; height: 38px;
      border-radius: 999px;
      border: 1px solid rgba(255,255,255,.18);
      background: rgba(15,23,42,.62);
      color:#fff;
      display:grid;
      place-items:center;
      cursor:pointer;
    }
    .wo-gallery-btn:hover{ background: rgba(15,23,42,.9); }

    .wo-empty{
      display:none;
      margin-top: 14px;
      padding: 14px;
      border-radius: 5px;
      border: 1px solid var(--wo-line);
      background: var(--wo-chip-bg);
      color: var(--wo-muted);
      font-size: 12px;
    }
