/* Min portfölj · avgränsad arbetsyta. Färger, knappar och formulär ärver appens teman.
   Skärmlagret ändrar inga beräkningar, exportmallar eller andra vyer. */
@media screen {
  .pf-workspace { min-width:0; }
  .pf-workspace .pf-intro { margin-bottom:20px; }
  .pf-workspace .pf-intro .greet-h { font-size:22px; line-height:1.3; font-weight:500; }
  .pf-workspace .pf-intro .greet-sub { margin-top:6px; font-size:13px; }
  .pf-workspace .pf-intro .greet-row { margin-top:12px; gap:8px; }
  .pf-workspace .page-head { margin-bottom:20px; }
  .pf-workspace .page-head .toolbar { align-items:center; }
  .pf-workspace :is(.pf-jump,.pf-object-tools) {
    display:flex; flex-wrap:wrap; align-items:center; gap:8px 12px;
  }
  .pf-workspace .pf-jump {
    margin:0 0 20px; padding:4px; width:fit-content; max-width:100%;
    background:var(--soft); border:1px solid var(--line); border-radius:var(--radius-sm);
  }
  .pf-workspace .pf-jump button {
    min-height:44px; padding:10px 16px; border:1px solid transparent; border-radius:8px;
    background:transparent; color:var(--ink-2); font:inherit; font-size:13px; font-weight:500;
    line-height:1.4; cursor:pointer;
  }
  .pf-workspace .pf-jump button:hover { background:var(--hover); color:var(--ink); }
  .pf-workspace .pf-jump button:is([aria-pressed=true],[aria-current=true]) {
    color:var(--brand); background:var(--card); border-color:var(--line);
  }
  .pf-workspace .pf-grupper { margin-bottom:20px; }
  .pf-workspace .pf-grupper .ov-flt { min-height:44px; }
  .pf-workspace > .grid.k4 { gap:16px; }
  .pf-workspace > .grid.k4 > .card.stat { padding:20px; min-height:0; }
  .pf-workspace > .grid.k4 > .card.stat .val { font-size:clamp(25px,2.5vw,32px); margin-top:12px; }
  .pf-workspace > .grid.k4 > .card.stat .meta { margin-top:8px; line-height:1.6; }
  .pf-workspace .pf-object-section { margin:24px 0; min-width:0; scroll-margin-top:24px; }
  .pf-workspace .pf-object-section > h2 { margin:0 0 6px; font-size:21px; font-weight:550; line-height:1.35; letter-spacing:-.025em; }
  .pf-workspace .pf-object-section > .help { max-width:78ch; margin:0 0 16px; font-size:13px; line-height:1.65; }
  .pf-workspace .pf-object-tools { margin:0 0 12px; }
  .pf-workspace .pf-object-tools .lib-search {
    position:static; flex:1 1 300px; width:auto; min-width:0; margin:0;
    min-height:44px; box-sizing:border-box; padding:10px 12px;
  }
  .pf-workspace .pf-object-tools select {
    flex:0 1 240px; min-width:0; max-width:100%; min-height:44px; box-sizing:border-box;
    padding:10px 12px; border:1px solid var(--line); border-radius:var(--radius-sm);
    background:var(--field); color:var(--ink); font:inherit; font-size:13px; line-height:1.4;
  }
  .pf-workspace .pf-object-tools .btn { min-height:44px; }
  .pf-workspace .pf-object-count { margin:0 0 12px; color:var(--muted); font-size:13px; line-height:1.6; font-variant-numeric:tabular-nums; }
  .pf-workspace .pf-object-table { width:100%; }
  .pf-workspace .pf-object-table :is(td,th) { padding:16px 12px; vertical-align:top; }
  .pf-workspace .pf-object-table .t-name { min-width:200px; max-width:360px; font-weight:600; }
  .pf-workspace .pf-object-table .t-cat { margin-top:4px; font-size:12px; font-weight:400; line-height:1.6; white-space:normal; }
  .pf-workspace .pf-object-table .num { font-variant-numeric:tabular-nums; }
  .pf-workspace .pf-object-table .pf-row:hover,
  .pf-workspace .pf-object-table .pf-row:focus-within { background:var(--field); }
  .pf-workspace .pf-object-table .pf-row:focus-within td { background:var(--field); }
  .pf-workspace .pf-object-table .pf-open {
    display:inline-flex; align-items:center; justify-content:center; min-height:44px;
    opacity:1; padding:10px 12px; white-space:nowrap; text-decoration:none;
  }
  .pf-workspace .pf-due {
    min-height:44px; box-sizing:border-box; padding-block:12px; gap:12px; line-height:1.5;
  }
  .pf-workspace .pf-due:hover { background:var(--field); }
  .pf-workspace :is(.pf-open,.pf-due,.pf-jump button,.pf-object-tools input,.pf-object-tools select,.pf-object-tools button):focus-visible {
    outline:2px solid var(--brand); outline-offset:3px; border-radius:8px;
  }
  .pf-workspace .pf-due:focus-visible { outline-offset:-2px; background:var(--field); }
  .pf-workspace .pf-map .leaflet-control-zoom a { width:44px; height:44px; line-height:43px; }

  @media (max-width:1100px) and (min-width:861px) {
    .pf-workspace .pf-object-table :is(td,th) { padding-inline:10px; }
    .pf-workspace .pf-object-table .t-name { min-width:180px; }
  }
  @media (max-width:860px) {
    .pf-workspace .pf-intro { margin-bottom:16px; }
    .pf-workspace .pf-intro .greet-h { font-size:20px; }
    .pf-workspace .pf-intro .greet-row { align-items:flex-start; }
    .pf-workspace .pf-intro .pill { white-space:normal; line-height:1.5; }
    .pf-workspace > .grid.k4 { gap:12px; }
    .pf-workspace > .grid.k4 > .card.stat { padding:16px; }
    .pf-workspace > .grid.k4 > .card.stat .val { font-size:26px; }
    .pf-workspace .pf-jump { width:100%; box-sizing:border-box; gap:4px; }
    .pf-workspace .pf-jump button { flex:1 1 auto; padding:10px 12px; }
    .pf-workspace .pf-object-tools { gap:8px; }
    .pf-workspace .pf-object-tools .lib-search { flex-basis:100%; font-size:16px; }
    .pf-workspace .pf-object-tools select { flex:1 1 160px; font-size:16px; }
    .pf-workspace .pf-object-section { margin-block:24px; }
    .pf-workspace .pf-object-section .card-scroll { overflow:visible; }
    .pf-workspace .pf-object-table { display:block; min-width:0!important; }
    .pf-workspace .pf-object-table thead {
      display:table-header-group; position:absolute; width:1px; height:1px; padding:0;
      margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0;
    }
    .pf-workspace .pf-object-table tbody { display:block; }
    .pf-workspace .pf-object-table tbody tr.pf-row {
      display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 16px;
      min-width:0; padding:20px 16px; border-bottom:1px solid var(--line);
    }
    .pf-workspace .pf-object-table tbody tr.pf-row td {
      display:block; flex:none; order:initial; min-width:0; width:auto; margin:0;
      padding:0; border:0; background:transparent; text-align:left;
    }
    .pf-workspace .pf-object-table tbody tr.pf-row td:first-child { grid-column:1/-1; max-width:none; font-size:15px; }
    .pf-workspace .pf-object-table tbody tr.pf-row td:nth-child(2) { grid-column:1/-1; }
    .pf-workspace .pf-object-table tbody tr.pf-row td:nth-child(5) { grid-column:1/-1; }
    .pf-workspace .pf-object-table tbody tr.pf-row td[data-label]::before {
      content:attr(data-label); display:block; margin-bottom:4px;
      font-size:12px; font-weight:500; line-height:1.5; letter-spacing:0; text-transform:none; color:var(--muted);
    }
    .pf-workspace .pf-object-table tbody tr.pf-row td:is(:first-child,:nth-child(2),:last-child)::before { display:none; }
    .pf-workspace .pf-object-table tbody tr.pf-row td:last-child { display:block; grid-column:1/-1; margin-top:4px; }
    .pf-workspace .pf-object-table .pf-open { width:100%; box-sizing:border-box; }
    .pf-workspace .pf-object-table .t-cat { overflow-wrap:anywhere; }
    .pf-workspace .pf-object-table .t-name { overflow-wrap:anywhere; }
    .pf-workspace .pf-due { flex-wrap:wrap; }
    .pf-workspace .pf-due > span[style*="flex:1"] { flex:1 1 160px; min-width:0!important; }
    .pf-workspace .pf-due > .num { white-space:normal; overflow-wrap:anywhere; }
  }
  @media (max-width:360px) {
    .pf-workspace > .grid.k4 > .card.stat { padding:12px; }
    .pf-workspace > .grid.k4 > .card.stat .val { font-size:23px; }
    .pf-workspace .pf-object-tools select { flex-basis:100%; }
    .pf-workspace .pf-object-tools .btn { width:100%; }
    .pf-workspace .pf-object-table tbody tr.pf-row { padding-inline:12px; gap:12px; }
  }
}

.pf-workspace [hidden]{display:none!important}
.pf-workspace [tabindex="-1"]{scroll-margin-top:88px}
@media screen{
  .pf-workspace .pf-object-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}
  .pf-workspace .pf-object-head h2,.pf-workspace .pf-section-title{font-size:21px;line-height:1.35;letter-spacing:-.012em}
  .pf-workspace .pf-object-head h2{margin:0 0 8px}
  .pf-workspace .pf-object-head .help{max-width:76ch;margin:0;line-height:1.6}
  .pf-workspace .pf-object-count{white-space:nowrap}
  .pf-workspace .pf-object-tools{align-items:flex-end}
  .pf-workspace .pf-object-tools .field{margin:0;min-width:0}
  .pf-workspace .pf-object-tools .field:first-child{flex:1 1 320px}
  .pf-workspace .pf-object-tools .field:nth-child(2){flex:0 1 200px}
  .pf-workspace .pf-object-tools .lib-search,.pf-workspace .pf-object-tools select{width:100%}
  .pf-workspace .pf-section-title{margin:32px 0 16px}
  @media(max-width:860px){
    .pf-workspace .pf-object-table .pf-table{min-width:0!important;width:100%}
    .pf-workspace .pf-object-tools .field:first-child{flex-basis:100%}
    .pf-workspace .pf-object-tools .field:nth-child(2){flex:1 1 160px}
  }
}

@media screen{.pf-workspace .pf-watch-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:12px;margin-top:8px;color:var(--muted);font-size:13px}.pf-workspace .pf-watch-foot .btn{min-height:44px}}

/* 518: avgränsad, sökbar objektlista. Sidväxlingen ligger nära raderna. */
@media screen {
  .pf-workspace .pf-list-nav { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin:12px 0; }
  .pf-workspace #pfListNav-bottom .pf-list-nav { justify-content:flex-end; margin-top:16px; }
  .pf-workspace .pf-page-size, .pf-workspace .pf-page-number { display:inline-flex; align-items:center; gap:8px; margin:0; color:var(--muted); font-size:13px; font-weight:400; white-space:nowrap; }
  .pf-workspace .pf-page-size select, .pf-workspace .pf-page-number input { min-height:44px; box-sizing:border-box; border:1px solid var(--line); border-radius:var(--radius-sm); background:var(--card); color:var(--ink); font:inherit; font-size:16px; padding:8px 10px; font-variant-numeric:tabular-nums; }
  .pf-workspace .pf-page-size select { width:76px; }
  .pf-workspace .pf-page-number input { width:64px; text-align:center; appearance:textfield; -moz-appearance:textfield; }
  .pf-workspace .pf-page-controls { display:flex; align-items:center; gap:10px; }
  .pf-workspace .pf-page-arrow { display:inline-flex; align-items:center; justify-content:center; width:44px; min-width:44px; height:44px; padding:0; }
  .pf-workspace .pf-page-arrow svg { width:18px; height:18px; }
  .pf-workspace .pf-page-arrow:disabled { cursor:default; opacity:.4; }
  .pf-workspace .pf-list-nav :is(button,input,select):focus-visible { outline:2px solid var(--brand); outline-offset:3px; }
  @media (max-width:860px) {
    .pf-workspace .pf-list-nav { gap:10px; }
    .pf-workspace .pf-page-controls { gap:8px; margin-left:auto; }
    .pf-workspace .pf-page-size { width:100%; justify-content:space-between; }
    .pf-workspace #pfListNav-top .pf-page-controls { margin-inline:auto; }
    .pf-workspace #pfListNav-bottom .pf-page-controls { margin-inline:auto; }
  }
}
