/* Filarkivet (punkt 7): fliken Filer på ordern och Dokument på korten. */
.file-bar{flex-wrap:wrap}
.file-pick{position:relative}
.file-pick input[type="file"]{display:none}
.file-camera{display:none}
@media (pointer:coarse),(max-width:760px){.file-camera{display:inline-flex}}
.file-status{margin:0;padding:0 14px;font-size:12.5px;color:var(--ink-2);min-height:0}
.file-status:not(:empty){padding:8px 14px;border-bottom:1px solid var(--line-soft)}
.file-table{border-collapse:collapse;width:100%;font-size:13.5px}
.file-table th{text-align:left;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:9px 10px 6px;border-bottom:1px solid var(--line);white-space:nowrap}
.file-table td{padding:6px 10px;border-bottom:1px solid var(--line-soft);vertical-align:middle}
.file-table .num{text-align:right;white-space:nowrap}
.file-table td.act{width:1%;white-space:nowrap;text-align:right;padding:4px 8px}
.file-table td.act .icon-btn{width:30px;height:30px;border-color:transparent;background:none}
.file-table td.act .icon-btn:hover{border-color:var(--line)}
.file-table td.act .ic{width:16px;height:16px}
.file-name{display:flex;align-items:center;gap:10px;min-width:0;max-width:520px}
.file-title{display:flex;flex-direction:column;min-width:0}
.file-title a{color:var(--ink);font-weight:600;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.file-title a:hover{color:var(--accent);text-decoration:underline}
.file-sub{display:none}
.file-thumb{width:34px;height:34px;object-fit:cover;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);flex:none}
.file-ext{width:34px;height:34px;display:grid;place-items:center;flex:none;border-radius:var(--r-sm);border:1px solid var(--line);background:var(--surface-2);color:var(--muted);font-size:9.5px;font-weight:700;letter-spacing:.04em}
.file-col{white-space:nowrap}
.file-table tr[aria-expanded="true"] td{background:var(--accent-soft)}
.file-detail > td{background:var(--surface-2);padding:12px 14px}
.file-box{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.file-preview{max-width:min(360px,100%);max-height:280px;border-radius:var(--r-sm);border:1px solid var(--line);display:block;background:var(--surface)}
.file-tools{display:flex;flex-direction:column;gap:10px;flex:1;min-width:0}
.file-rename{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}
.file-rename label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:var(--muted);flex:1;min-width:180px;max-width:420px}
.file-rename input{font:inherit;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:6px 9px}
.file-tools .file-pick{align-self:flex-start}
.file-versions{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);font-size:13px}
.file-versions td{white-space:nowrap}
.file-versions td.act .btn{margin-left:4px}
.file-tools p{margin:0}
.file-hint{margin:0;padding:8px 14px}
.panel.file-over{outline:2px dashed var(--accent);outline-offset:-4px;background:var(--accent-soft)}

.file-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.file-move{display:flex;gap:6px;align-items:center}
.file-move input{font:inherit;font-size:13px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:6px 9px;width:200px;max-width:100%}
.files-grid .file-name{max-width:420px}
.files-grid tbody tr{cursor:pointer}
.cards .card.file-card{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;gap:12px;cursor:pointer}
.cards .file-card .file-title{flex:1;align-items:flex-start}
.file-card .file-title a{white-space:normal;word-break:break-word}
.files-note{margin:10px 2px}

@media (max-width:760px){
  .file-col,.file-table thead{display:none}
  .file-sub{display:block}
  .file-name{max-width:none}
  .file-table td{padding:8px 8px}
  .file-table td.file-cell{white-space:normal}
  .file-title a{white-space:normal;word-break:break-word}
  .file-table td.act{padding:4px 4px}
  .file-table td.act .icon-btn{width:34px;height:34px}
  .file-hint{display:none}
  .file-detail > td{padding:12px 10px}
  .file-box{flex-direction:column;gap:12px}
  .file-preview{max-width:100%}
  .file-tools{width:100%}
  .file-rename label{min-width:0;max-width:none;width:100%}
  .file-versions,.file-versions tbody{display:block}
  .file-versions tr{display:grid;grid-template-columns:auto 1fr;gap:2px 10px;padding:8px 10px;border-bottom:1px solid var(--line-soft)}
  .file-versions td{display:block;padding:0;border:0;white-space:normal;word-break:break-word}
  .file-versions td:nth-child(3){display:none}
  .file-versions td:nth-child(1){grid-row:span 2}
  .file-versions td.act{grid-column:1 / -1;width:auto;text-align:left;padding-top:6px}
  .file-versions td.act .btn{margin:0 6px 0 0}
  .file-move{width:100%}
  .file-move label{flex:1}
  .file-move input{width:100%}
}

/* Kopplingar: filen finns även på projekt, personer, ritningar, offerter och avtal. */
.file-links { margin-top: 12px; }
.file-links-title { font-weight: 600; margin: 0 0 4px; }
.file-links-list { list-style: none; margin: 0 0 8px; padding: 0; display: grid; gap: 4px; }
.file-links-list li { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.file-link-add { display: flex; gap: 8px; flex-wrap: wrap; }
.file-link-add label { flex: 1 1 200px; }
.file-link-add input { width: 100%; }
.files-content-search { margin-top: 16px; }
.files-content-search summary { cursor: pointer; font-weight: 600; padding: 8px 0; }
.file-link-add input { min-height: 40px; padding: 8px 10px; font: inherit; font-size: 16px; border: 1px solid var(--line, #d0d4dc);
  border-radius: 10px; background: var(--surface, #fff); color: inherit; box-sizing: border-box; }
