/* v0.6.8 Core Git preview: dark, frameless reading layer; dashboard geometry remains locked. */
.core-row{
  cursor:default;
}
.core-row:hover{
  background:transparent;
}
.core-title-link{
  color:var(--ink);
  text-decoration:none;
  text-underline-offset:4px;
  transition:color .16s ease,text-decoration-color .16s ease;
}
.core-title-link:hover,
.core-title-link:focus-visible{
  color:var(--blue);
  text-decoration:underline;
  outline:none;
}
.core-preview-trigger{
  display:block;
  cursor:help;
  outline:none;
  text-decoration-color:transparent;
  text-underline-offset:4px;
  transition:color .16s ease,text-decoration-color .16s ease;
}
.core-preview-trigger:hover,
.core-preview-trigger:focus-visible{
  color:var(--blue);
  text-decoration:underline;
  text-decoration-color:rgba(6,118,191,.55);
}
.core-tooltip.core-tooltip-rich{
  --preview-bg:#0b1722;
  --preview-text:#edf3f8;
  --preview-muted:#aab7c2;
  --preview-blue:#78bce8;
  --preview-red:#e78690;
  --preview-line:rgba(202,216,228,.20);
  position:fixed;
  left:clamp(380px,34vw,690px);
  top:96px;
  bottom:auto;
  z-index:40;
  display:block;
  width:min(680px,calc(100vw - 430px));
  max-height:calc(100vh - 126px);
  padding:0;
  overflow:auto;
  overscroll-behavior:contain;
  border:1px solid rgba(202,216,228,.28);
  border-radius:2px;
  background:var(--preview-bg);
  box-shadow:0 20px 54px rgba(3,10,18,.38);
  color:var(--preview-text);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
  pointer-events:none;
  cursor:default;
  text-align:left;
  user-select:text;
}
.core-row:hover .core-tooltip.core-tooltip-rich,
.core-row:focus-within .core-tooltip.core-tooltip-rich{
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
}
.core-row.is-core-preview-open .core-tooltip.core-tooltip-rich{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.core-preview-header{
  position:sticky;
  top:0;
  z-index:3;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:18px;
  padding:17px 20px 15px;
  border-bottom:1px solid var(--preview-line);
  background:rgba(11,23,34,.97);
}
.core-preview-title{
  font-size:21px;
  line-height:1.25;
  font-weight:900;
  color:var(--preview-text);
}
.core-preview-path{
  max-width:55%;
  font-size:13px;
  line-height:1.45;
  color:var(--preview-blue);
  overflow-wrap:anywhere;
  text-align:right;
}
.core-preview-sections{
  display:grid;
  padding:6px 20px 13px;
}
.core-preview-section{
  display:grid;
  gap:9px;
  padding:15px 0;
  border-bottom:1px solid var(--preview-line);
}
.core-preview-section:last-child{
  border-bottom:0;
}
.core-preview-heading{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:14px;
}
.core-preview-label{
  font-size:17px;
  line-height:1.35;
  font-weight:900;
  color:var(--preview-red);
}
.core-preview-key{
  font-family:ui-monospace,SFMono-Regular,Consolas,monospace;
  font-size:13px;
  line-height:1.4;
  color:var(--preview-blue);
}
.core-preview-text{
  margin:0;
  font-size:18px;
  line-height:1.68;
  color:var(--preview-text);
}
.core-preview-list{
  display:grid;
  gap:9px;
}
.core-preview-item{
  position:relative;
  padding-left:18px;
  font-size:17px;
  line-height:1.62;
  color:var(--preview-text);
}
.core-preview-item::before{
  content:'·';
  position:absolute;
  left:3px;
  color:var(--preview-red);
  font-weight:900;
}
.core-preview-raw{
  display:block;
  margin:0;
  padding:20px;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  font-family:ui-monospace,SFMono-Regular,Consolas,"Noto Sans Mono CJK TC",monospace;
  font-size:15px;
  line-height:1.72;
  color:var(--preview-text);
}
.core-preview-groups{
  display:grid;
  padding:0 20px 10px;
}
.core-preview-group{
  padding:0;
  border-bottom:1px solid var(--preview-line);
}
.core-preview-group:last-child{
  border-bottom:0;
}
.core-preview-group-title{
  margin:0;
  padding:18px 0 4px;
  font-size:20px;
  line-height:1.3;
  font-weight:900;
}
.core-preview-group-link{
  color:var(--preview-blue);
  text-decoration:none;
  text-underline-offset:5px;
}
.core-preview-group-link:hover,
.core-preview-group-link:focus-visible{
  color:var(--preview-text);
  text-decoration:underline;
  outline:none;
}
.core-preview-group-body{
  display:grid;
  padding:0 0 8px;
}
.core-preview-footer{
  position:sticky;
  bottom:0;
  z-index:3;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:12px 20px;
  border-top:1px solid var(--preview-line);
  background:rgba(11,23,34,.97);
}
.core-preview-source{
  color:var(--preview-muted);
  font-size:13px;
  line-height:1.4;
  font-weight:750;
}
.core-preview-open{
  flex:0 0 auto;
  color:var(--preview-blue);
  font-size:14px;
  line-height:1.2;
  font-weight:900;
  text-decoration:none;
  text-underline-offset:5px;
  cursor:pointer;
}
.core-preview-open:hover,
.core-preview-open:focus-visible{
  color:var(--preview-text);
  text-decoration:underline;
  outline:none;
}
.core-preview-unavailable .core-preview-trigger{
  color:var(--red);
}
@media(max-width:1250px){
  .core-tooltip.core-tooltip-rich{
    left:20px;
    right:20px;
    top:74px;
    width:auto;
    max-height:calc(100vh - 94px);
  }
}
@media(max-width:720px){
  .core-tooltip.core-tooltip-rich{
    left:11px;
    right:11px;
    top:58px;
    max-height:calc(100vh - 70px);
  }
  .core-preview-header{
    display:grid;
    gap:6px;
  }
  .core-preview-path{
    max-width:none;
    text-align:left;
  }
  .core-preview-footer{
    align-items:flex-start;
    flex-direction:column;
  }
  .core-preview-text{font-size:17px}
  .core-preview-item{font-size:16px}
  .core-preview-raw{font-size:14px}
}
@media(prefers-reduced-motion:reduce){
  .core-tooltip.core-tooltip-rich,
  .core-preview-trigger,
  .core-title-link{
    transition:none;
  }
}
