/* ──────────────────────────────────────────────
   HS-Klassifizierung Module – CSS
   v3.1 – Master/Detail UI, more vertical usage, improved spacing
   ────────────────────────────────────────────── */

#viewHsClassify{
  flex-direction:column;
  gap:0;
  padding:0;
  max-width:100%;
  width:100%;
  flex:1;
  min-height:0;

  /* alias missing theme vars */
  --ac: var(--accent, #3b82f6);
  --fg: var(--txt, #e5e7eb);
}

/* ── Two-column layout (fills available height) ── */
.hsc-layout{
  display:grid;
  grid-template-columns: 1fr 440px;
  gap:0 16px;
  align-items:stretch;
  width:100%;
  flex:1;
  min-height:0;
}
.hsc-col-main,
.hsc-col-side{
  min-width:0;
  min-height:0;
  display:flex;
  flex-direction:column;
}

/* ── Mode toggles ── */
#viewHsClassify[data-hsc-mode="summary"] .hsc-mode-edit{display:none;}
#viewHsClassify[data-hsc-mode="edit"] .hsc-mode-summary{display:none;}

/* ── Head card (edit) ── */
.hsc-head-card.hsc-dragover{border-color:var(--ac) !important;background:rgba(59,130,246,.03) !important;}
.hsc-input-wrap{display:flex;flex-direction:column;gap:10px;}
.hsc-lbl{
  display:block;
  font-size:10.5px;
  font-weight:700;
  color:var(--mut);
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:3px;
}
.hsc-desc-wrap textarea{min-height:52px;max-height:160px;resize:vertical;}
.hsc-input-bottom{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;}
.hsc-origin-wrap{flex:0 0 auto;min-width:160px;}
.hsc-origin-wrap select{width:100%;}
.hsc-file-attach{display:flex;align-items:center;gap:6px;flex:1;min-width:0;flex-wrap:wrap;}
.hsc-submit-btn{white-space:nowrap;height:36px;flex-shrink:0;}
.hsc-submit-btn svg{width:14px;height:14px;}

/* Attach button */
.hsc-attach-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  background:none;
  border:1px dashed var(--bd);
  border-radius:10px;
  padding:6px 10px;
  font:inherit;
  font-size:11px;
  color:var(--mut);
  cursor:pointer;
  transition:all .15s;
  white-space:nowrap;
  height:36px;
}
.hsc-attach-btn:hover{border-color:var(--ac);color:var(--ac);}
.hsc-attach-btn svg{width:13px;height:13px;}

/* File chips */
.hsc-file-chips{display:flex;gap:6px;flex-wrap:wrap;min-width:0;}
.hsc-fchip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:rgba(59,130,246,.08);
  border:1px solid rgba(59,130,246,.16);
  border-radius:999px;
  padding:4px 10px;
  font-size:11px;
  color:var(--ac);
  max-width:220px;
  line-height:1;
}
.hsc-fchip svg{width:12px;height:12px;flex-shrink:0;}
.hsc-fchip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hsc-fchip-x{
  border:none;
  background:none;
  color:var(--mut);
  cursor:pointer;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hsc-fchip-x:hover{color:#ef4444;}
.hsc-fchip-x svg{width:12px;height:12px;}

/* ── Summary mode (top bar) ── */
.hsc-summary-top{display:flex;align-items:center;gap:14px;}
.hsc-summary-title{
  flex:1;
  min-width:0;
  font-size:15px;
  font-weight:800;
  color:var(--fg);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hsc-summary-actions{display:flex;gap:10px;flex-shrink:0;}
.hsc-summary-actions .btn{
  height:34px;
  padding:0 12px;
  border-radius:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  line-height:1;
}
.hsc-summary-actions .btn svg{width:14px;height:14px;}
.hsc-summary-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px;}
.hsc-meta{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:var(--chip);
  border:1px solid var(--bd);
  font-size:12px;
  color:var(--mut);
  font-variant-numeric:tabular-nums;
  line-height:1;
}
.hsc-meta b{color:var(--fg);font-weight:800;}

/* ── Spinner ── */
.hsc-spinner{
  display:inline-block;
  width:14px;
  height:14px;
  border:2px solid rgba(255,255,255,.3);
  border-top-color:#fff;
  border-radius:50%;
  animation:hscSpin .7s linear infinite;
}
@keyframes hscSpin{to{transform:rotate(360deg)}}

/* ── Error ── */
.hsc-error{
  margin-top:10px;
  background:rgba(239,68,68,.1);
  border:1px solid rgba(239,68,68,.25);
  border-radius:12px;
  padding:10px 12px;
  font-size:12px;
  color:#ef4444;
}

/* ──────────────────────────────────────────────
   RESULTS (left) – fill height and use unused space
   ────────────────────────────────────────────── */
.hsc-results-card{
  flex:1;
  min-height:0;
  display:flex;
  flex-direction:column;
}
.hsc-results-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.hsc-hit{font-size:12px;color:var(--mut);white-space:nowrap;}
.hsc-results-body{
  display:flex;
  flex-direction:column;
  gap:12px;
  flex:1;
  min-height:0;
  overflow:auto;
  padding-right:6px; /* room for scrollbar */
}

.hsc-results{display:flex;flex-direction:column;gap:10px;}

/* Result card */
.hsc-card{
  position:relative;
  background:rgba(255,255,255,.025);
  border:1px solid var(--bd);
  border-radius:12px;
  padding:12px 14px;
  cursor:pointer;
  transition:border-color .2s,box-shadow .15s;
}
.hsc-card:hover{border-color:color-mix(in srgb, var(--ac) 45%, transparent);box-shadow:0 2px 10px rgba(0,0,0,.05);}
.hsc-card.sel{border-color:var(--ac);box-shadow:0 0 0 2px color-mix(in srgb, var(--ac) 35%, transparent);}
.hsc-card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.hsc-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  padding:2px 8px;
  border-radius:8px;
  font-size:11px;
  font-weight:800;
  color:#fff;
  line-height:1;
}
.hsc-badge.green{background:#22c55e;}
.hsc-badge.yellow{background:#eab308;color:#1a1a1a;}
.hsc-badge.red{background:#ef4444;}
.hsc-code{font-size:14.5px;font-weight:900;color:var(--fg);font-variant-numeric:tabular-nums;letter-spacing:.02em;}
.hsc-desc{font-size:12px;color:var(--mut);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.hsc-card-btns{display:flex;gap:6px;flex-shrink:0;margin-left:auto;}
.hsc-abtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:10px;
  background:var(--chip);
  border:1px solid var(--bd);
  color:var(--mut);
  cursor:pointer;
  transition:all .15s;
  text-decoration:none;
}
.hsc-abtn:hover{border-color:var(--ac);color:var(--ac);}
.hsc-abtn.ok{background:var(--ac);color:#fff;border-color:var(--ac);}
.hsc-abtn svg{width:13px;height:13px;}

/* Tags row */
.hsc-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.hsc-tag{
  display:inline-flex;
  align-items:center;
  gap:6px;
  background:var(--chip);
  border-radius:999px;
  padding:6px 10px;
  font-size:11.5px;
  color:var(--mut);
  white-space:nowrap;
  line-height:1;
}
.hsc-tag b{color:var(--fg);}
.hsc-tag svg{width:12px;height:12px;}
.hsc-tag.ad-yes{background:rgba(239,68,68,.1);color:#ef4444;font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;word-break:break-word;white-space:normal;}
.hsc-tag.ad-no{background:rgba(34,197,94,.07);color:#22c55e;}
.hsc-tag.pref{background:rgba(59,130,246,.08);color:#3b82f6;}
.hsc-tag.restr-no{background:rgba(34,197,94,.07);color:#22c55e;}
.hsc-tag.restr-yes{background:rgba(245,158,11,.1);color:#f59e0b;font-weight:800;cursor:help;}

/* Source badges */
.hsc-src{
  display:inline-block;
  font-size:9px;
  font-weight:900;
  letter-spacing:.05em;
  padding:2px 6px;
  border-radius:999px;
  margin-left:6px;
  vertical-align:middle;
  text-transform:uppercase;
  line-height:1;
}
.hsc-src.taric{background:rgba(34,197,94,.18);color:#16a34a;border:1px solid rgba(34,197,94,.3);}
.hsc-src.ai{background:rgba(234,179,8,.15);color:#b45309;border:1px solid rgba(234,179,8,.3);}

/* Compliance chips (compact) */
.hsc-comp-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;}
.hsc-comp{
  display:inline-block;
  padding:4px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  background:rgba(168,85,247,.1);
  color:#a855f7;
  border:1px solid rgba(168,85,247,.18);
  line-height:1;
}

/* Visuals strip */
.hsc-visuals{
  margin-top:4px;
  border-top:1px solid var(--bd);
  padding-top:12px;
  display:flex;
  flex-direction:column;
  gap:10px;
  flex:1;
  min-height:180px;
}
.hsc-visual-head{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;}
.hsc-visual-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:900;color:var(--fg);}
.hsc-visual-title svg{width:14px;height:14px;color:var(--mut);}
.hsc-visual-note{font-size:11px;color:var(--mut);white-space:nowrap;}
.hsc-visual-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;flex:1;min-height:0;}
.hsc-visual-tile{
  border:1px solid var(--bd);
  border-radius:14px;
  background:rgba(255,255,255,.02);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-height:0;
}
.hsc-visual-img{flex:1;min-height:0;}
.hsc-visual-img img{width:100%;height:100%;object-fit:cover;display:block;}
.hsc-visual-cap{
  border-top:1px solid var(--bd);
  background:rgba(0,0,0,.08);
  padding:8px 10px;
  font-size:11px;
  color:var(--mut);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  display:none;
}
.hsc-visual-empty .hsc-visual-cap{display:block;}

/* Disclaimer */
.hsc-disclaimer{
  font-size:11px;
  color:var(--mut);
  line-height:1.45;
  display:flex;
  align-items:flex-start;
  gap:8px;
  opacity:.75;
  padding-bottom:2px;
}
.hsc-disclaimer svg{flex-shrink:0;width:13px;height:13px;margin-top:1px;}

/* ──────────────────────────────────────────────
   RIGHT SIDEBAR – Detail panel (no overlaps)
   ────────────────────────────────────────────── */
.hsc-detail-card{
  flex:1;
  min-height:0;
  overflow:auto;
  padding-right:10px; /* scrollbar breathing room */
}
.hsc-detail{display:flex;flex-direction:column;gap:12px;}
.hsc-detail-empty{font-size:12px;color:var(--mut);font-style:italic;}

.hsc-cur-top{display:flex;flex-direction:column;gap:4px;}
.hsc-cur-code{font-size:18px;font-weight:950;color:var(--fg);letter-spacing:.03em;font-variant-numeric:tabular-nums;}
.hsc-cur-desc{font-size:12.5px;color:var(--mut);line-height:1.4;}

.hsc-pillrow{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;}
.hsc-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:var(--chip);
  border:1px solid var(--bd);
  font-size:11.5px;
  color:var(--mut);
  line-height:1;
}
.hsc-pill b{color:var(--fg);font-weight:900;}
.hsc-pill-sub{font-size:10px;color:var(--mut);opacity:.85;}
.hsc-pill.ok{background:rgba(34,197,94,.07);border-color:rgba(34,197,94,.15);color:#22c55e;}
.hsc-pill.warn{background:rgba(245,158,11,.1);border-color:rgba(245,158,11,.2);color:#f59e0b;font-weight:900;}
.hsc-pill.bad{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.2);color:#ef4444;font-weight:900;word-break:break-word;white-space:normal;}
.hsc-pill.pref{background:rgba(59,130,246,.08);border-color:rgba(59,130,246,.16);color:#3b82f6;font-weight:900;}
.hsc-pill.conf.green{background:rgba(34,197,94,.1);border-color:rgba(34,197,94,.2);}
.hsc-pill.conf.yellow{background:rgba(234,179,8,.12);border-color:rgba(234,179,8,.22);}
.hsc-pill.conf.red{background:rgba(239,68,68,.1);border-color:rgba(239,68,68,.2);}

/* Side sections */
.hsc-side-divider{
  height:1px;
  margin:12px 0;
  background:linear-gradient(90deg, var(--bd), transparent 80%);
}
.hsc-sec{display:flex;flex-direction:column;gap:8px;}
.hsc-sec-h{
  font-size:10px;
  font-weight:950;
  color:var(--ac);
  text-transform:uppercase;
  letter-spacing:.06em;
}

/* KV grid */
.hsc-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.hsc-kv-item{
  background:rgba(255,255,255,.02);
  border:1px solid var(--bd);
  border-radius:12px;
  padding:8px 10px;
  min-width:0;
}
.hsc-kv-item .k{font-size:10px;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;font-weight:800;}
.hsc-kv-item .v{margin-top:4px;font-size:13px;color:var(--fg);font-weight:900;line-height:1.15;word-break:break-word;}
.hsc-kv-item .v.hsc-hierarchy{font-size:11px;font-weight:600;color:var(--mut);letter-spacing:.02em;}

/* Chips */
.hsc-chiprow{display:flex;flex-wrap:wrap;gap:8px;}
.hsc-chip{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(168,85,247,.1);
  border:1px solid rgba(168,85,247,.18);
  color:#a855f7;
  font-size:11px;
  font-weight:900;
  line-height:1;
}

/* Restrictions */
.hsc-restr-list{display:flex;flex-direction:column;gap:8px;}
.hsc-restr-item{
  border:1px solid rgba(245,158,11,.18);
  background:rgba(245,158,11,.05);
  border-radius:12px;
  padding:8px 10px;
}
.hsc-restr-item .t{font-size:12px;font-weight:900;color:var(--fg);line-height:1.25;}
.hsc-restr-item .b{margin-top:4px;font-size:11px;color:var(--mut);line-height:1.35;word-break:break-word;}

/* Text block */
.hsc-text{font-size:12px;color:var(--fg);opacity:.75;line-height:1.5;}
.hsc-muted{font-size:12px;color:var(--mut);}

/* Alternatives */
.hsc-alt-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.hsc-alt{
  border:1px solid var(--bd);
  background:rgba(255,255,255,.02);
  border-radius:14px;
  padding:10px;
  cursor:pointer;
  text-align:left;
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
  transition:border-color .15s, transform .05s;
}
.hsc-alt:hover{border-color:color-mix(in srgb, var(--ac) 45%, transparent);}
.hsc-alt:active{transform:translateY(1px);}
.hsc-alt.on{border-color:var(--ac);box-shadow:0 0 0 2px color-mix(in srgb, var(--ac) 28%, transparent);}
.hsc-alt .c{font-variant-numeric:tabular-nums;font-weight:950;color:var(--fg);font-size:12.5px;}
.hsc-alt .t{font-size:11px;color:var(--mut);line-height:1.35;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.hsc-alt .p{font-size:11px;color:var(--ac);font-weight:950;}

/* Attachments */
.hsc-att-list{display:flex;flex-direction:column;gap:10px;}
.hsc-att{display:flex;align-items:center;gap:10px;min-width:0;}
.hsc-att-ico{width:34px;height:34px;border-radius:12px;border:1px solid var(--bd);background:var(--chip);display:flex;align-items:center;justify-content:center;color:var(--mut);flex-shrink:0;}
.hsc-att-ico svg{width:14px;height:14px;}
.hsc-att-thumb{width:54px;height:40px;border-radius:12px;border:1px solid var(--bd);overflow:hidden;background:var(--chip);flex-shrink:0;}
.hsc-att-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.hsc-att-name{flex:1;min-width:0;font-size:12px;color:var(--fg);font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* ──────────────────────────────────────────────
   History + links accordion styles
   ────────────────────────────────────────────── */
.hsc-acc{border:none;margin:0;padding:0;}
.hsc-acc-sum{
  cursor:pointer;
  list-style:none;
  font-size:10px;
  font-weight:950;
  color:var(--ac);
  text-transform:uppercase;
  letter-spacing:.06em;
  margin:10px 0 6px;
}
.hsc-acc summary::-webkit-details-marker{display:none;}

.hsc-hist-list{display:flex;flex-direction:column;gap:2px;max-height:240px;overflow:auto;padding-right:6px;}
.hsc-hi{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:10px;cursor:pointer;transition:background .12s;font-size:11.5px;}
.hsc-hi:hover{background:var(--chip);}
.hsc-hi-thumb{flex:0 0 32px;width:32px;height:32px;border-radius:6px;overflow:hidden;background:rgba(255,255,255,.05);display:flex;align-items:center;justify-content:center;}
.hsc-hi-thumb img{width:100%;height:100%;object-fit:cover;display:block;}
.hsc-hi-thumb-empty{color:var(--mut);font-size:12px;opacity:.4;}
.hsc-hi-thumb-empty svg{width:16px;height:16px;}
.hsc-hi-d{flex:0 0 auto;color:var(--mut);font-size:10.5px;white-space:nowrap;font-variant-numeric:tabular-nums;}
.hsc-hi-t{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--fg);min-width:0;}
.hsc-hi-c{flex:0 0 auto;font-weight:900;font-variant-numeric:tabular-nums;color:var(--ac);font-size:11px;}
.hsc-hist-empty{font-size:11.5px;color:var(--mut);font-style:italic;padding:2px 0;}

.hsc-clear-btn{
  align-self:flex-start;
  font-size:11px;
  color:var(--mut);
  cursor:pointer;
  background:none;
  border:none;
  font:inherit;
  text-decoration:underline;
  padding:2px 0;
  margin-top:6px;
}
.hsc-clear-btn:hover{color:var(--ac);}

.hsc-stat-row{display:flex;justify-content:space-between;align-items:center;font-size:11.5px;color:var(--mut);}
.hsc-stat-row b{font-size:18px;color:var(--fg);font-variant-numeric:tabular-nums;}
.hsc-tc-label{font-size:10px;font-weight:900;color:var(--mut);text-transform:uppercase;margin-top:8px;margin-bottom:4px;}
.hsc-tc-row{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;border-radius:10px;font-size:11.5px;}
.hsc-tc-row:nth-child(odd){background:rgba(255,255,255,.02);}
.hsc-tc-code{font-weight:900;color:var(--ac);font-variant-numeric:tabular-nums;}
.hsc-tc-n{color:var(--mut);font-size:10.5px;}

.hsc-link-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:12px;font-size:12px;color:var(--ac);text-decoration:none;transition:background .12s;}
.hsc-link-item:hover{background:var(--chip);}
.hsc-link-item svg{width:12px;height:12px;flex-shrink:0;opacity:.6;}

/* ── Light theme tweaks ── */
html[data-theme=light] #viewHsClassify{--fg: var(--txt, #0f172a);}
html[data-theme=light] .hsc-card{background:rgba(0,0,0,.012);}
html[data-theme=light] .hsc-card:hover{box-shadow:0 2px 10px rgba(0,0,0,.03);}
html[data-theme=light] .hsc-kv-item{background:rgba(0,0,0,.012);}
html[data-theme=light] .hsc-alt{background:rgba(0,0,0,.012);}
html[data-theme=light] .hsc-visual-cap{background:rgba(0,0,0,.03);}
html[data-theme=light] .hsc-att-ico{background:rgba(0,0,0,.02);}

/* ── Empty state: stable layout before any search ── */
.hsc-results-card.hsc-empty{
  display:flex;
  flex-direction:column;
  min-height:420px;
}
.hsc-results-card.hsc-empty .hsc-results-body{flex:1;}
.hsc-empty-placeholder{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:80px;
  font-size:12px;
  color:var(--mut);
  font-style:italic;
  opacity:.6;
}
.hsc-visual-grid.hsc-visual-empty .hsc-visual-tile{
  min-height:140px;
  background:rgba(255,255,255,.015);
}

/* ── Print / PDF button ── */
.hsc-print-btn{
  display:inline-flex;
  align-items:center;
  gap:6px;
  cursor:pointer;
}
.hsc-print-btn svg{width:14px;height:14px;}

/* ── Duties & measures section (detail panel) ── */
.hsc-duties-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.hsc-duty-item{
  background:rgba(255,255,255,.02);
  border:1px solid var(--bd);
  border-radius:12px;
  padding:8px 10px;
  min-width:0;
}
.hsc-duty-item .k{font-size:10px;color:var(--mut);text-transform:uppercase;letter-spacing:.05em;font-weight:800;}
.hsc-duty-item .v{margin-top:4px;font-size:13px;color:var(--fg);font-weight:900;line-height:1.15;word-break:break-word;}
.hsc-duty-item.highlight{border-color:rgba(245,158,11,.25);background:rgba(245,158,11,.04);}
html[data-theme=light] .hsc-duty-item{background:rgba(0,0,0,.012);}

/* ── KV grid 3 cols for details ── */
.hsc-kv.hsc-kv-3{grid-template-columns:repeat(3,minmax(0,1fr));}

/* ── Audit trail user/source ── */
.hsc-audit-user{font-size:12px;font-weight:800;color:var(--ac);}
.hsc-audit-source{font-size:11px;color:var(--mut);}

/* ── Responsive ── */
@media(max-width:1200px){
  .hsc-layout{grid-template-columns:1fr 380px;}
}
@media(max-width:1000px){
  .hsc-layout{grid-template-columns:1fr;}
  .hsc-col-side{order:2;margin-top:16px;}
  .hsc-visual-grid{grid-template-columns:repeat(2,1fr);}
  .hsc-alt-grid{grid-template-columns:repeat(2,1fr);}
}
@media(max-width:640px){
  .hsc-input-bottom{flex-direction:column;align-items:stretch;}
  .hsc-origin-wrap{min-width:100%;}
  .hsc-desc{white-space:normal;}
  .hsc-visual-grid{grid-template-columns:1fr;}
  .hsc-alt-grid{grid-template-columns:1fr;}
}

/* ═══════════════════════════════════════════
   PRINT STYLES – only show selected HS detail
   ═══════════════════════════════════════════ */
@media print{
  /* ══════════════════════════════════════════════════════════════
     WP Trade-Hub · HS-Klassifizierung · Print / PDF Export
     Professional single-product report layout
     ══════════════════════════════════════════════════════════════ */

  /* ── Page & base reset ── */
  @page{margin:18mm 15mm 18mm 15mm;size:A4 portrait;}
  *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;color-adjust:exact!important;}
  body{background:#fff!important;color:#1a1a1a!important;font-size:10pt!important;font-family:'Segoe UI',system-ui,-apple-system,sans-serif!important;line-height:1.45!important;}
  body::before{display:none!important;}

  /* ── KILL the blue gradient line on ALL secHd headers ── */
  .secHd::after{display:none!important;content:none!important;}
  .secHd{
    font-size:13pt!important;
    font-weight:800!important;
    color:#1a1a1a!important;
    margin:0 0 10pt!important;
    padding-bottom:5pt!important;
    border-bottom:2pt solid #1e3a5f!important;
    display:block!important;
  }

  /* ── Hide everything outside HS module ── */
  header,.np,footer,.footInfo,nav,[class*="sidebar"]{display:none!important;}

  /* ── Layout: single column ── */
  .hsc-layout{display:block!important;max-width:100%!important;padding:0!important;margin:0!important;}
  .hsc-col-main{display:block!important;}

  /* ── Hide edit mode ── */
  .hsc-mode-edit,
  #hscModeEdit{display:none!important;}

  /* ── Summary header (product name + meta badges) ── */
  .hsc-mode-summary,
  #hscModeSummary{display:block!important;}
  .hsc-summary-actions{display:none!important;}
  .hsc-summary-top{margin-bottom:6pt!important;}
  .hsc-summary-title{
    font-size:16pt!important;
    font-weight:800!important;
    color:#1a1a1a!important;
    margin-bottom:3pt!important;
    white-space:normal!important;
  }
  .hsc-summary-meta{font-size:8.5pt!important;color:#555!important;margin-bottom:8pt!important;}

  /* ── Head card: no chrome ── */
  .hsc-head-card{
    box-shadow:none!important;
    border:none!important;
    padding:0 0 10pt 0!important;
    margin:0 0 6pt 0!important;
    background:transparent!important;
    border-bottom:0.5pt solid #ddd!important;
  }

  /* ── Hide error & results ── */
  .hsc-error,#hscError{display:none!important;}
  .hsc-results-card,
  #hscResultsWrap{display:none!important;}

  /* ── Right column: detail panel ── */
  .hsc-col-side{display:block!important;margin:0!important;padding:0!important;order:unset!important;}
  .hsc-detail-card{
    box-shadow:none!important;
    border:none!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    max-height:none!important;
    overflow:visible!important;
  }
  #hscDetail,.hsc-detail{max-height:none!important;overflow:visible!important;padding:0!important;}

  /* ── Hide sidebar-only elements ── */
  .hsc-acc,
  .hsc-hist-list,
  .hsc-clear-btn,
  .hsc-side-divider:not(#hscDetail .hsc-side-divider),
  .hsc-link-item{display:none!important;}

  /* Dividers inside detail */
  #hscDetail .hsc-side-divider{display:block!important;border-top:0.5pt solid #e0e0e0!important;margin:10pt 0!important;background:transparent!important;}

  /* ════════════════════════════════════════
     CURRENT CLASSIFICATION
     ════════════════════════════════════════ */
  .hsc-cur{break-inside:avoid!important;margin-bottom:6pt!important;}
  .hsc-cur-top{gap:3pt!important;}
  .hsc-cur-code{
    font-size:22pt!important;
    font-weight:900!important;
    color:#1e3a5f!important;
    letter-spacing:.04em!important;
  }
  .hsc-cur-desc{
    font-size:9.5pt!important;
    color:#444!important;
    line-height:1.4!important;
  }

  /* ════════════════════════════════════════
     STATUS PILLS
     ════════════════════════════════════════ */
  .hsc-pillrow{flex-wrap:wrap!important;gap:5pt!important;margin:8pt 0 4pt!important;}
  .hsc-pill{
    font-size:8pt!important;
    padding:3pt 8pt!important;
    border:0.5pt solid #bbb!important;
    border-radius:4pt!important;
    background:#f7f8fa!important;
    color:#333!important;
    font-weight:600!important;
  }
  .hsc-pill b{color:#1a1a1a!important;font-weight:800!important;}
  .hsc-pill-sub{font-size:7.5pt!important;color:#666!important;}
  .hsc-pill.ok,.hsc-pill.green{border-color:#2e7d32!important;background:#edf7ee!important;color:#2e7d32!important;}
  .hsc-pill.warn{border-color:#e65100!important;background:#fff3e0!important;color:#e65100!important;}
  .hsc-pill.bad{border-color:#c62828!important;background:#ffeaea!important;color:#c62828!important;}
  .hsc-pill.pref{border-color:#1565c0!important;background:#e8f0fe!important;color:#1565c0!important;}
  .hsc-pill.conf.green{background:#edf7ee!important;border-color:#2e7d32!important;}
  .hsc-pill.conf.yellow{background:#fff8e1!important;border-color:#f9a825!important;}
  .hsc-pill.conf.red{background:#ffeaea!important;border-color:#c62828!important;}

  /* ════════════════════════════════════════
     SECTION HEADERS (Details, Abgaben, etc.)
     ════════════════════════════════════════ */
  .hsc-sec{break-inside:avoid!important;page-break-inside:avoid!important;margin-bottom:10pt!important;}
  .hsc-sec-h{
    font-size:9pt!important;
    font-weight:800!important;
    color:#1e3a5f!important;
    text-transform:uppercase!important;
    letter-spacing:.08em!important;
    border-bottom:1pt solid #1e3a5f!important;
    padding-bottom:3pt!important;
    margin-bottom:6pt!important;
  }

  /* ════════════════════════════════════════
     KEY-VALUE GRID (Details, Audit Trail)
     ════════════════════════════════════════ */
  .hsc-kv{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:5pt!important;}
  .hsc-kv-item{
    font-size:9pt!important;
    padding:7pt 10pt!important;
    border:0.5pt solid #ddd!important;
    border-radius:5pt!important;
    background:#fafbfc!important;
  }
  .hsc-kv-item .k{
    font-size:7.5pt!important;
    color:#777!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
    font-weight:700!important;
    margin-bottom:2pt!important;
  }
  .hsc-kv-item .v{
    color:#1a1a1a!important;
    font-weight:700!important;
    font-size:10pt!important;
  }

  /* ════════════════════════════════════════
     DUTIES GRID (Abgaben & Maßnahmen)
     ════════════════════════════════════════ */
  .hsc-duties-grid{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:5pt!important;}
  .hsc-duty-item{
    font-size:9pt!important;
    padding:7pt 10pt!important;
    border:0.5pt solid #ddd!important;
    border-radius:5pt!important;
    background:#fafbfc!important;
  }
  .hsc-duty-item .k{
    font-size:7.5pt!important;
    color:#777!important;
    text-transform:uppercase!important;
    letter-spacing:.04em!important;
    font-weight:700!important;
    margin-bottom:2pt!important;
  }
  .hsc-duty-item .v{
    color:#1a1a1a!important;
    font-weight:700!important;
    font-size:10pt!important;
  }
  .hsc-duty-item.highlight{
    border-color:#c62828!important;
    background:#ffeaea!important;
    border-width:1pt!important;
  }
  .hsc-duty-item.highlight .k{color:#c62828!important;}
  .hsc-duty-item.highlight .v{color:#c62828!important;}

  /* ════════════════════════════════════════
     COMPLIANCE CHIPS
     ════════════════════════════════════════ */
  .hsc-chiprow{gap:5pt!important;flex-wrap:wrap!important;}
  .hsc-chip{
    font-size:8pt!important;
    padding:3pt 8pt!important;
    border:0.5pt solid #bbb!important;
    border-radius:4pt!important;
    background:#f7f8fa!important;
    color:#333!important;
    font-weight:600!important;
  }

  /* ════════════════════════════════════════
     HIDE: Alternativen & Anhänge
     Only show the selected product info
     ════════════════════════════════════════ */
  .hsc-alt-grid{display:none!important;}
  .hsc-att-list{display:none!important;}
  /* Also hide the section headers for Alternativen and Anhänge */
  .hsc-sec:has(.hsc-alt-grid){display:none!important;}
  .hsc-sec:has(.hsc-att-list){display:none!important;}

  /* ════════════════════════════════════════
     AUDIT TRAIL
     ════════════════════════════════════════ */
  .hsc-audit-user{font-size:10pt!important;font-weight:700!important;color:#1e3a5f!important;}
  .hsc-audit-source{font-size:10pt!important;font-weight:600!important;color:#444!important;}

  /* ════════════════════════════════════════
     REASONING / HERLEITUNG
     ════════════════════════════════════════ */
  .hsc-text{
    font-size:9pt!important;
    color:#333!important;
    line-height:1.55!important;
    background:#f7f8fa!important;
    padding:8pt 10pt!important;
    border-radius:5pt!important;
    border:0.5pt solid #e0e0e0!important;
  }

  /* ════════════════════════════════════════
     RESTRICTIONS
     ════════════════════════════════════════ */
  .hsc-restr-list{gap:3pt!important;}
  .hsc-restr-item{font-size:9pt!important;color:#333!important;}

  /* ════════════════════════════════════════
     HIDE: Interactive elements
     ════════════════════════════════════════ */
  .hsc-abtn,.hsc-card-btns{display:none!important;}

  /* ════════════════════════════════════════
     FOOTER: Company branding
     ════════════════════════════════════════ */
  .hsc-detail::after{
    content:"© 2026 WP International Trade GmbH · WP Trade-Hub"!important;
    display:block!important;
    margin-top:16pt!important;
    padding-top:8pt!important;
    border-top:0.5pt solid #ddd!important;
    font-size:7.5pt!important;
    color:#999!important;
    text-align:center!important;
    letter-spacing:.03em!important;
  }
}

/* ══════════════════════════════════════════════
   Clarification Modal Overlay
   ══════════════════════════════════════════════ */

/* Backdrop */
.hsc-modal-overlay{
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;

  background:rgba(0,0,0,.62);
  backdrop-filter:blur(var(--fx-blur-10, 10px)) saturate(120%);
  -webkit-backdrop-filter:blur(var(--fx-blur-10, 10px)) saturate(120%);

  opacity:0;
  transition:opacity .18s ease;
}
html[data-theme=light] .hsc-modal-overlay{
  background:rgba(15,23,42,.45);
}
.hsc-modal-overlay.open{opacity:1;}
.hsc-modal-overlay.closing{opacity:0;}

/* Modal card */
.hsc-modal{
  position:relative;
  width:100%;
  max-width:640px;
  max-height:calc(100vh - 40px);
  overflow:auto;
  padding:0;

  border-radius:18px;
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(900px 420px at 10% 0%, var(--panelGlow, rgba(59,130,246,.12)), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02) 18%, rgba(0,0,0,.02) 100%),
    var(--card);
  box-shadow:0 28px 80px rgba(0,0,0,.60);

  transform:translateY(10px) scale(.99);
  transition:transform .18s ease;
}
html[data-theme=light] .hsc-modal{
  border-color:rgba(15,23,42,.10);
  box-shadow:0 28px 80px rgba(15,23,42,.18);
  background:
    radial-gradient(900px 420px at 10% 0%, var(--panelGlow, rgba(29,78,216,.10)), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.90), rgba(255,255,255,.74)),
    var(--card);
}
.hsc-modal::before{
  content:"";
  position:absolute;
  left:16px; right:16px; top:14px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--accent, #3b82f6), rgba(165,180,252,.75), transparent);
  opacity:.9;
  pointer-events:none;
}
.hsc-modal-overlay.open .hsc-modal{transform:translateY(0) scale(1);}
.hsc-modal-overlay.closing .hsc-modal{transform:translateY(10px) scale(.99);}

/* Header */
.hsc-modal-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 24px 12px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
html[data-theme=light] .hsc-modal-header{
  border-bottom-color:rgba(15,23,42,.08);
}
.hsc-modal-title-row{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--accent, #3b82f6);
}
.hsc-modal-close{
  width:32px;
  height:32px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.06);
  border-radius:10px;
  color:var(--mut, #94a3b8);
  cursor:pointer;
  transition:transform .12s ease, background .12s ease, color .12s ease, border-color .12s ease;
  flex-shrink:0;
  padding:0;
}
.hsc-modal-close:hover{
  background:rgba(255,255,255,.10);
  border-color:rgba(255,255,255,.16);
  color:var(--txt, #fff);
  transform:translateY(-1px);
}
.hsc-modal-close:active{transform:translateY(0);}

html[data-theme=light] .hsc-modal-close{
  border-color:rgba(15,23,42,.10);
  background:rgba(15,23,42,.04);
  color:rgba(71,85,105,.95);
}
html[data-theme=light] .hsc-modal-close:hover{
  background:rgba(15,23,42,.08);
  color:rgba(15,23,42,.95);
}

/* Body */
.hsc-modal-body{padding:16px 24px;}

/* Footer */
.hsc-modal-footer{
  display:flex;
  gap:10px;
  align-items:center;
  padding:16px 24px 20px;
  border-top:1px solid rgba(255,255,255,.08);
  flex-wrap:wrap;
}
html[data-theme=light] .hsc-modal-footer{
  border-top-color:rgba(15,23,42,.08);
}

/* Icon size utilities (force SVG dimensions) */
.hsc-ico-14,.hsc-ico-16,.hsc-ico-24{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  line-height:0;
  overflow:visible;
}
.hsc-ico-14{width:14px;height:14px;}
.hsc-ico-14 svg{width:14px;height:14px;overflow:visible;}
.hsc-ico-16{width:16px;height:16px;}
.hsc-ico-16 svg{width:16px;height:16px;overflow:visible;}
.hsc-ico-24{width:24px;height:24px;}
.hsc-ico-24 svg{width:24px;height:24px;overflow:visible;}

/* Shared clarification element styles */
.hsc-clar-title{
  font-size:16px;
  font-weight:800;
  color:var(--txt, #fff);
  letter-spacing:.2px;
}

/* Reason (info banner) */
.hsc-clar-reason{
  display:flex;
  align-items:flex-start;
  gap:10px;

  font-size:13px;
  color:var(--mut, #94a3b8);
  line-height:1.5;

  margin:0 24px 6px;
  padding:12px 14px;
  border-radius:14px;

  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.02));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.hsc-clar-reason .hsc-ico-16{
  color:var(--accent, #3b82f6);
  margin-top:1px;
}
.hsc-clar-reason-text{flex:1;min-width:0;}

html[data-theme=light] .hsc-clar-reason{
  border-color:rgba(15,23,42,.10);
  background:rgba(15,23,42,.03);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.75);
}

/* Preliminary badge */
.hsc-clar-prelim{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;

  margin:8px 24px 0;
  padding:12px 14px;
  border-radius:14px;

  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
}
html[data-theme=light] .hsc-clar-prelim{
  border-color:rgba(15,23,42,.08);
  background:rgba(15,23,42,.015);
}
.hsc-clar-prelim-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;

  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;

  color:var(--accent, #3b82f6);
  background:var(--accentSoft, rgba(59,130,246,.18));
  border:1px solid rgba(59,130,246,.22);
  padding:4px 10px;
  border-radius:999px;
}
html[data-theme=light] .hsc-clar-prelim-badge{border-color:rgba(29,78,216,.18);}
.hsc-clar-prelim-code{
  font-size:14px;
  font-weight:800;
  color:var(--txt, #fff);
  font-variant-numeric:tabular-nums;
}
.hsc-clar-prelim-desc{
  font-size:12px;
  color:var(--mut, #94a3b8);
  width:100%;
}

/* Intro text */
.hsc-clar-intro{
  font-size:13px;
  color:var(--mut, #94a3b8);
  margin-bottom:16px;
}

/* Questions */
.hsc-clar-q{margin-bottom:18px;}
.hsc-clar-q:last-child{margin-bottom:0;}
.hsc-clar-q-label{
  font-size:14px;
  font-weight:700;
  color:var(--txt, #fff);
  margin-bottom:10px;
  line-height:1.45;
}

/* Options */
.hsc-clar-options{
  display:flex;
  flex-direction:column;
  gap:6px;
}
.hsc-clar-opt{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 14px;
  border-radius:12px;
  background:rgba(255,255,255,.02);
  border:1px solid rgba(255,255,255,.08);
  cursor:pointer;
  transition:background .12s ease,border-color .12s ease,transform .05s ease;
  user-select:none;
}
.hsc-clar-opt:hover{
  background:rgba(255,255,255,.04);
  border-color:rgba(59,130,246,.28);
}
.hsc-clar-opt:active{transform:translateY(1px);}
.hsc-clar-opt:has(input:checked){
  background:rgba(59,130,246,.08);
  border-color:rgba(59,130,246,.50);
}
html[data-theme=light] .hsc-clar-opt{
  background:rgba(15,23,42,.012);
  border-color:rgba(15,23,42,.10);
}
html[data-theme=light] .hsc-clar-opt:hover{
  background:rgba(15,23,42,.02);
  border-color:rgba(29,78,216,.25);
}
html[data-theme=light] .hsc-clar-opt:has(input:checked){
  background:rgba(37,99,235,.06);
  border-color:rgba(29,78,216,.42);
}

.hsc-clar-opt input[type="radio"]{
  width:16px;
  height:16px;
  accent-color:var(--accent, #3b82f6);
  flex-shrink:0;
  cursor:pointer;
}
.hsc-clar-opt-label{
  font-size:13px;
  color:var(--txt, #e2e8f0);
  line-height:1.4;
}
html[data-theme=light] .hsc-clar-opt-label{color:var(--txt, #0f172a);}

/* Custom answer input */
.hsc-clar-opt-custom{flex-wrap:wrap;}
.hsc-clar-custom-input{
  flex:1;
  min-width:160px;
  margin:0;
}
.hsc-clar-custom-input:disabled{
  opacity:.45;
  pointer-events:none;
}

/* Action buttons */
.hsc-clar-submit{
  flex:1;
  min-width:180px;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.hsc-clar-skip{
  opacity:.72;
  font-size:12px !important;
}
.hsc-clar-skip:hover{opacity:1;}

/* Scrollbar inside modal */
.hsc-modal::-webkit-scrollbar{width:10px;height:10px}
.hsc-modal::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.16);
  border:3px solid rgba(0,0,0,0);
  border-radius:999px;
  background-clip:padding-box;
}
html[data-theme=light] .hsc-modal::-webkit-scrollbar-thumb{
  background:rgba(15,23,42,.18);
  border:3px solid rgba(255,255,255,0);
  background-clip:padding-box;
}
.hsc-modal::-webkit-scrollbar-corner{background:transparent}

/* Mobile responsive */
@media (max-width: 640px){
  .hsc-modal-overlay{padding:10px;}
  .hsc-modal{max-width:100%;border-radius:16px;}
  .hsc-modal-header{padding:16px 18px 10px;}
  .hsc-modal-body{padding:12px 18px;}
  .hsc-modal-footer{
    flex-direction:column;
    padding:12px 18px 16px;
  }
  .hsc-clar-submit,.hsc-clar-skip{
    width:100%;
    min-width:unset;
  }
  .hsc-clar-reason{margin:0 18px 6px;}
  .hsc-clar-prelim{margin:8px 18px 0;}
}
