[data-project-details] *{ box-sizing: border-box; }

[data-project-details]{
      --text: #f5f5f5;
      --muted: #b8b9ca;
      --muted-2: #9394aa;
      --panel: rgba(9,9,16,0.96);
      --border: rgba(255,255,255,0.1);
      --accent: #00b4ff;
      --pink: #ff62c5;
      --yellow: #ffd86f;
      --shadow: 0 24px 64px rgba(0,0,0,0.9);
      color: var(--text);
      font-family: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
      width: 100%;
      display: block;
    }
[data-project-details] .details-title{ font-size:20px; font-weight:650; margin:2px 0 2px; }
[data-project-details] [data-details-name]{ cursor:pointer; }
[data-project-details] .edit-ico{
  width:22px;
  height:22px;
  border-radius:8px;
  border:1px solid rgba(255,255,255,0.16);
  background:rgba(255,255,255,0.04);
  color:#e6e8f4;
  display:inline-grid;
  place-items:center;
  cursor:pointer;
  line-height:1;
}
[data-project-details] .edit-ico:hover{ border-color:rgba(0,180,255,0.6); }
[data-project-details] .panel-title{ padding-left:8px; }
[data-project-details] .details-path{ font-size:12px; color:var(--muted-2); }
[data-project-details] .details-meta{ margin-top:4px; font-size:11px; color:var(--muted); display:flex; flex-wrap:wrap; gap:8px; }
[data-project-details] .chip-row{ display:flex; gap:6px; flex-wrap:wrap; margin:8px 0 10px; }
[data-project-details] .chip{ padding:6px 10px; border-radius:999px; background: rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.12); font-size:11px; font-weight:650; letter-spacing:0.04em; }
[data-project-details] .details-section-title{ margin-top:8px; font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:#d6d6e6; }
[data-project-details] .details-text{ margin-top:6px; font-size:12px; color:#c2c3d6; line-height:1.6; }
[data-project-details] .details-actions{ margin-top:10px; display:flex; flex-wrap:nowrap; gap:6px; }
[data-project-details] .details-meta-inline{
      margin-top:8px;
      font-size:11px;
      color:var(--muted);
      display:flex;
      flex-wrap:wrap;
      gap:14px;
    }
[data-project-details] .details-meta-inline strong{ color:#f0f1ff; font-weight:600; }
[data-project-details] .activity-note{ margin-top:8px; font-size:11px; color:#a7a8bc; }
[data-project-details] .ag-card{ margin-top:10px; border-radius:14px; border:1px solid rgba(255,255,255,0.12); background: radial-gradient(circle at 100% 0, rgba(0,180,255,0.26), transparent 60%), rgba(5,5,10,0.96); box-shadow:0 8px 32px rgba(0,0,0,0.45); color:#e8e8f5; padding:12px; }
[data-project-details] .ag-header{ font-size:13px; letter-spacing:0.14em; text-transform:uppercase; margin-bottom:6px; }
[data-project-details] .ag-sub{ font-size:12px; color:#b4b5c7; margin-bottom:10px; line-height:1.5; }
[data-project-details] .ag-note{ font-size:12px; color:#a5aac0; margin:-4px 0 12px; }
[data-project-details] .ag-tabs{ display:grid; grid-template-columns:repeat(2,1fr); margin:0 -12px 4px; }
[data-project-details] .ag-tab{ padding:10px 0; background:rgba(255,255,255,0.02); color:#e8e8f5; border:none; border-bottom:1px solid rgba(255,255,255,0.07); border-top:1px solid rgba(255,255,255,0.12); cursor:pointer; font-size:13px; font-weight:600; }
[data-project-details] .ag-tab:first-child{ border-right:1px solid rgba(255,255,255,0.08); }
[data-project-details] .ag-tab:last-child{ border-left:1px solid rgba(255,255,255,0.08); }
[data-project-details] .ag-tab.active{ background: linear-gradient(90deg, rgba(255,0,140,0.28), rgba(255,98,197,0.28)); color:#fff; box-shadow: inset 0 0 0 1px #ff33b855; }
[data-project-details] .ag-content{ display:none; margin-top:8px; }
[data-project-details] .ag-content.active{ display:block; }

/* --- Project Details: toolbar pills/buttons (как на референсе) --- */
[data-project-details] .pd-iconbtn{
  width:30px; height:30px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.04);
  color:#cfd2e6;
  display:grid; place-items:center;
  cursor:pointer;
  box-shadow:0 8px 20px rgba(0,0,0,0.35);
  transition:.12s ease;
  flex:0 0 auto;
}
[data-project-details] .pd-icon{
  width:16px;
  height:16px;
  display:block;
  fill: currentColor;
  stroke: currentColor;
}
[data-project-details] img.pd-icon{
  filter: brightness(0) saturate(100%) invert(86%) sepia(7%) saturate(205%) hue-rotate(191deg) brightness(92%) contrast(90%);
  opacity: 0.9;
}
[data-project-details] .pd-iconbtn:hover{ transform:translateY(-1px); border-color:rgba(255,98,197,0.55); }
[data-project-details] .pd-iconbtn.active{
  border-color:rgba(255,98,197,0.75);
  box-shadow:0 0 0 1px rgba(255,98,197,0.28), 0 10px 24px rgba(255,0,140,0.18);
}

[data-project-details] .pd-sortline{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
[data-project-details] .pd-sortlabel{
  font-size:12px;
  color:#c2c3d6;
  opacity:.95;
}

[data-project-details] .pd-pill{
  padding:6px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,0.18);
  background:rgba(255,255,255,0.03);
  color:#e9e9f4;
  font-size:12px;
  cursor:pointer;
  transition:.12s ease;
  white-space:nowrap;
}
[data-project-details] .pd-pill:hover{ border-color:rgba(0,180,255,0.5); }
[data-project-details] .pd-pill.active{
  background:linear-gradient(90deg, rgba(255,0,140,0.28), rgba(255,98,197,0.28));
  border-color:rgba(255,98,197,0.7);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08);
}
[data-project-details] .grid-toolbar{ display:flex; align-items:center; gap:10px; margin-bottom:6px; flex-wrap:nowrap; }
[data-project-details] .grid-toolbar .hint{ font-size:12px; color:#c2c3d6; margin-left:auto; display:flex; align-items:center; gap:8px; }
[data-project-details] [data-activity-toolbar] .hint{ margin-left:0; }
[data-project-details] [data-activity-toolbar] .activity-filters{ margin-left:auto; justify-content:flex-end; flex-wrap:nowrap; }
[data-project-details] .gen-date-btn svg{ width:16px; height:16px; stroke:#e9e9f4; stroke-width:1.6; fill:none; stroke-linecap:round; stroke-linejoin:round; }
[data-project-details] .gen-date-popover{
  position:fixed;
  top:0;
  left:0;
  z-index:9999;
  min-width:300px;
  background:#0c0e18;
  border:1px solid rgba(255,255,255,0.12);
  border-radius:12px;
  padding:10px;
  box-shadow:0 12px 36px rgba(0,0,0,0.55);
  display:none;
}
[data-project-details] .gen-date-popover.open{ display:block; }

/* When popover is mounted outside project-details, keep the same look */
.gen-date-popover{
  position:fixed;
  top:0;
  left:0;
  z-index:9999;
  min-width:300px;
  background:#0c0e18;
  border:1px solid rgba(255,255,255,0.12);
  border-radius:12px;
  padding:10px;
  box-shadow:0 12px 36px rgba(0,0,0,0.55);
  display:none;
}
.gen-date-popover.open{ display:block; }
.gen-date-popover label{ font-size:12px; color:#b9bacb; min-width:28px; }
.gen-date-popover .gen-date-row{ display:flex; gap:8px; align-items:center; margin:6px 0; position:relative; }
.gen-date-popover .gen-dr-text{
  height:34px;
  width:130px;
  background:#0f1018;
  color:#e9e9f4;
  border:1px solid rgba(255,255,255,0.14);
  border-radius:10px;
  padding:8px 30px 8px 10px;
  font-size:13px;
  letter-spacing:0.02em;
}
.gen-date-popover .gen-dr-text::placeholder{ color:#7f8398; }
.gen-date-popover .gen-cal-btn{ position:absolute; right:6px; top:50%; transform:translateY(-50%); width:22px; height:22px; border:none; background:transparent; color:#cfd2e6; border-radius:6px; cursor:pointer; display:grid; place-items:center; }
.gen-date-popover .gen-cal-btn:hover{ color:#00b4ff; }
.gen-date-popover .gen-cal-btn svg{ width:16px; height:16px; stroke:#e9e9f4; stroke-width:1.6; fill:none; stroke-linecap:round; stroke-linejoin:round; }
.gen-date-popover .gen-cal-panel{ position:absolute; top:48px; left:0; background:#0c0e18; border:1px solid rgba(255,255,255,0.12); border-radius:12px; box-shadow:0 12px 36px rgba(0,0,0,0.55); padding:10px; min-width:260px; display:none; z-index:1200; }
.gen-date-popover .gen-cal-panel.open{ display:block; }
.gen-date-popover .gen-date-actions{ display:flex; justify-content:flex-end; gap:10px; margin-top:6px; }
.gen-date-popover .dr-inline{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.gen-date-popover .dr-input{ display:flex; align-items:center; gap:8px; position:relative; margin:0; }
.gen-date-popover .gen-date-row{ margin:0; }
.gen-date-popover .dr-text{ width:130px; background:#0f1018; color:#e9e9f4; border:1px solid rgba(255,255,255,0.14); border-radius:10px; padding:8px 30px 8px 10px; font-size:13px; letter-spacing:0.02em; }
.gen-date-popover .dr-text::placeholder{ color:#7f8398; }
.gen-date-popover .cal-btn{ position:absolute; right:6px; top:50%; transform:translateY(-50%); border:none; background:transparent; color:#cfd2e6; cursor:pointer; width:22px; height:22px; border-radius:6px; display:grid; place-items:center; }
.gen-date-popover .cal-btn:hover{ color:#00b4ff; }
.gen-date-popover .cal-btn img{ width:16px; height:16px; filter: brightness(1.4) grayscale(0.2); opacity:0.85; }
.gen-date-popover .dr-actions{ display:flex; justify-content:flex-end; gap:6px; margin-top:8px; }
.cal-header{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:6px; }
.cal-title{ font-size:13px; color:#e9ebff; letter-spacing:0.02em; display:flex; align-items:center; gap:8px; }
.cal-nav{ display:inline-flex; gap:6px; }
.cal-btn-nav{ width:26px; height:26px; border-radius:8px; border:1px solid rgba(255,255,255,0.14); background:rgba(255,255,255,0.04); color:#dfe2f7; display:grid; place-items:center; cursor:pointer; }
.cal-select, .cal-year{
  background:#0f1018; color:#e9e9f4; border:1px solid rgba(255,255,255,0.14); border-radius:8px;
  padding:6px 8px; font-size:12px; outline:none; appearance:none;
}
.cal-year{ width:84px; text-align:center; }
.cal-grid{ display:grid; grid-template-columns:repeat(7, 1fr); gap:4px; }
.cal-dow{ font-size:11px; color:#9aa0b8; text-align:center; padding:4px 0; }
.cal-day{ font-size:12px; color:#e9e9f6; text-align:center; padding:7px 0; border-radius:8px; cursor:pointer; border:1px solid rgba(255,255,255,0.06); background:rgba(255,255,255,0.02); }
.cal-day:hover{ border-color:rgba(0,180,255,0.6); }
.cal-day.muted{ color:#7d8196; opacity:0.6; }
.cal-day.today{ box-shadow:0 0 0 1px rgba(255,0,140,0.55); }
.cal-day.selected{ background: linear-gradient(120deg, #ff62c5, #ff008c); color:#0b0710; border-color:rgba(255,0,140,0.6); }
[data-project-details] .gen-date-popover.open{ display:block; }
[data-project-details] .gen-date-popover.debug{ outline:2px solid #ff2e88; }
[data-project-details] .gen-date-row{ display:flex; gap:8px; align-items:center; margin:0; position:relative; }
[data-project-details] .gen-date-popover label{ font-size:12px; color:#b9bacb; min-width:28px; }
[data-project-details] .gen-dr-text{
  height:34px;
  width:130px;
  background:#0f1018;
  color:#e9e9f4;
  border:1px solid rgba(255,255,255,0.14);
  border-radius:10px;
  padding:8px 30px 8px 10px;
  font-size:13px;
  letter-spacing:0.02em;
}
[data-project-details] .gen-dr-text::placeholder{ color:#7f8398; }
[data-project-details] .gen-cal-btn{ position:absolute; right:6px; top:50%; transform:translateY(-50%); width:22px; height:22px; border:none; background:transparent; color:#cfd2e6; border-radius:6px; cursor:pointer; display:grid; place-items:center; }
[data-project-details] .gen-cal-btn:hover{ color:#00b4ff; }
[data-project-details] .gen-cal-btn svg{ width:16px; height:16px; stroke:#e9e9f4; stroke-width:1.6; fill:none; stroke-linecap:round; stroke-linejoin:round; }
[data-project-details] .gen-cal-panel{ position:absolute; top:48px; left:0; background:#0c0e18; border:1px solid rgba(255,255,255,0.12); border-radius:12px; box-shadow:0 12px 36px rgba(0,0,0,0.55); padding:10px; min-width:260px; display:none; z-index:1200; }
[data-project-details] .gen-cal-panel.open{ display:block; }
[data-project-details] .cal-header{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:6px; }
[data-project-details] .cal-title{ font-size:13px; color:#e9ebff; letter-spacing:0.02em; display:flex; align-items:center; gap:8px; }
[data-project-details] .cal-nav{ display:inline-flex; gap:6px; }
[data-project-details] .cal-btn-nav{ width:26px; height:26px; border-radius:8px; border:1px solid rgba(255,255,255,0.14); background:rgba(255,255,255,0.04); color:#dfe2f7; display:grid; place-items:center; cursor:pointer; }
[data-project-details] .cal-select,[data-project-details] .cal-year{ background:#0f1018; color:#e9e9f4; border:1px solid rgba(255,255,255,0.14); border-radius:8px; padding:6px 8px; font-size:12px; outline:none; appearance:none; }
[data-project-details] .cal-year{ width:84px; text-align:center; }
[data-project-details] .cal-grid{ display:grid; grid-template-columns:repeat(7,1fr); gap:4px; }
[data-project-details] .cal-dow{ font-size:11px; color:#9aa0b8; text-align:center; padding:4px 0; }
[data-project-details] .cal-day{ font-size:12px; color:#e9e9f6; text-align:center; padding:7px 0; border-radius:8px; cursor:pointer; border:1px solid rgba(255,255,255,0.06); background:rgba(255,255,255,0.02); }
[data-project-details] .cal-day:hover{ border-color:rgba(0,180,255,0.6); }
[data-project-details] .gen-date-actions{ display:flex; justify-content:flex-end; gap:6px; margin-top:8px; }
[data-project-details] .btn-primary,
[data-project-details] .btn-secondary{
  height:34px;
  padding:0 12px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.12);
  cursor:pointer;
}
[data-project-details] .btn-primary{ background:rgba(255,0,170,.22); color:#fff; }
[data-project-details] .btn-secondary{ background:rgba(255,255,255,.06); color:#fff; }
[data-project-details] .bulk-only{ display:none; }
[data-project-details] .grid-toolbar.selection-on .bulk-only{ display:grid; }
[data-project-details] .gen-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(120px,1fr)); gap:10px; max-height:460px; overflow-y:auto; padding-right:6px; scrollbar-width:thin; scrollbar-color:#3a3d4d rgba(15,16,24,0.6); }
[data-project-details] .gen-grid.list-view{ display:block; }
[data-project-details] .gen-grid.list-view .gen-thumb{ display:flex; flex-direction:row; gap:12px; padding:12px; height:auto; padding-top:12px; align-items:center; }
[data-project-details] .gen-grid.list-view .gen-thumb img{ position:relative; width:80px; height:48px; object-fit:cover; border-radius:8px; }
[data-project-details] .gen-grid.list-view .thumb-overlay{ position:static; background:transparent; color:#dfe6ff; padding:0; }
[data-project-details] .gen-grid::-webkit-scrollbar{ width:8px; }
[data-project-details] .gen-grid::-webkit-scrollbar-track{ background:rgba(15,16,24,0.6); border-radius:10px; }
[data-project-details] .gen-grid::-webkit-scrollbar-thumb{ background:#3a3d4d; border-radius:10px; border:2px solid transparent; background-clip:content-box; }
[data-project-details] .gen-thumb{ position:relative; display:block; width:100%; padding-top:100%; border-radius:10px; overflow:hidden; background:#0d0d14; border:1px solid rgba(255,255,255,0.08); box-shadow:0 6px 18px rgba(0,0,0,0.35); cursor:pointer; transition:.12s ease; }
[data-project-details] .gen-thumb img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; background:#0f1018; }
[data-project-details] .gen-thumb:hover{ transform:translateY(-2px); box-shadow:0 10px 26px rgba(0,0,0,0.48); border-color:rgba(255,255,255,0.2); }
[data-project-details] .gen-thumb.selected{ border-color:#ff62c5; box-shadow:0 0 0 2px #ff62c566, 0 10px 26px rgba(0,0,0,0.48); }
[data-project-details] .gen-thumb.fav{ border-color:var(--yellow); box-shadow:0 0 0 2px #ffd86f66, 0 10px 26px rgba(0,0,0,0.48); }
[data-project-details] .gen-grid.show-select .gen-thumb.fav{ border-color:#ff62c5; box-shadow:0 0 0 2px #ff62c566, 0 10px 26px rgba(0,0,0,0.48); }
[data-project-details] .thumb-overlay{ position:absolute; bottom:0; left:0; right:0; padding:6px 8px; background:linear-gradient(180deg, transparent 0%, rgba(0,0,0,0.78) 100%); color:#f7f7fb; font-size:12px; display:flex; flex-direction:column; gap:2px; }
[data-project-details] .thumb-meta{ display:flex; gap:6px; align-items:center; color:#cfd2e2; font-size:11px; }
[data-project-details] .thumb-tag{ padding:2px 8px; border-radius:999px; background:rgba(0,180,255,0.14); border:1px solid rgba(0,180,255,0.35); color:#bde8ff; font-size:10px; }
[data-project-details] .select-box{ position:absolute; top:6px; left:6px; width:20px; height:20px; border-radius:6px; border:2px solid rgba(255,255,255,0.6); background:rgba(0,0,0,0.45); color:#fff; display:none; align-items:center; justify-content:center; font-weight:700; font-size:12px; }
[data-project-details] .gen-grid.show-select .select-box{ display:flex; }
[data-project-details] .gen-thumb:hover .select-box{ display:flex; }
[data-project-details] .rv2-card-menu{
  position:fixed;
  z-index:12000;
  min-width:180px;
  background:#1b171b;
  border-radius:10px;
  padding:8px;
  list-style:none;
  margin:0;
  box-shadow:0 10px 30px rgba(0,0,0,0.7), 0 0 20px rgba(0,0,0,0.25);
  border:1px solid rgba(255,0,255,0.06);
}
[data-project-details] .rv2-card-menu__backdrop{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.28);
  z-index:11990;
}

/* Global fallback in case menu is mounted outside project-details root */
.rv2-card-menu{
  position:fixed;
  z-index:12000;
  min-width:180px;
  background:#1b171b;
  border-radius:10px;
  padding:8px;
  list-style:none;
  margin:0;
  box-shadow:0 10px 30px rgba(0,0,0,0.7), 0 0 20px rgba(0,0,0,0.25);
  border:1px solid rgba(255,0,255,0.06);
}
.rv2-card-menu__backdrop{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.28);
  z-index:11990;
}
.rv2-card-menu__list{ list-style:none; margin:0; padding:0; }
.rv2-card-menu__list li{
  padding:8px 12px;
  margin:4px 0;
  border-radius:8px;
  color:#eae8ee;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:8px;
}
.rv2-card-menu__list li:hover{ background:rgba(255,255,255,0.02); }
.rv2-card-menu__list li[data-action="delete"]{ color:#ff6b6b; }
[data-project-details] .rv2-card-menu__list{ list-style:none; margin:0; padding:0; }
[data-project-details] .rv2-card-menu__list li{
  padding:8px 12px;
  margin:4px 0;
  border-radius:8px;
  color:#eae8ee;
  cursor:pointer;
  display:flex;
  align-items:center;
  gap:8px;
}
[data-project-details] .rv2-card-menu__list li:hover{ background:rgba(255,255,255,0.02); }
[data-project-details] .rv2-card-menu__list li[data-action="delete"]{ color:#ff6b6b; }
[data-project-details] .select-box.active{ background:var(--accent); border-color:var(--accent); box-shadow:0 0 0 2px rgba(0,180,255,0.25); }
[data-project-details] .fav-toggle{ position:absolute; left:6px; bottom:6px; width:24px; height:24px; border-radius:8px; border:1px solid rgba(255,255,255,0.32); background:rgba(0,0,0,0.75); color:#f5f6ff; display:grid; place-items:center; cursor:pointer; box-shadow:0 6px 18px rgba(0,0,0,0.45); z-index:2; }
[data-project-details] .fav-toggle svg{ width:14px; height:14px; fill:currentColor; }
[data-project-details] .fav-toggle.active{ color:var(--yellow); }
[data-project-details] .card-actions{ position:absolute; top:6px; right:6px; display:flex; gap:6px; z-index:2; }
[data-project-details] .card-actions button{ width:26px; height:26px; border-radius:8px; border:1px solid rgba(255,255,255,0.22); background:rgba(0,0,0,0.78); color:#f5f5ff; display:grid; place-items:center; cursor:pointer; box-shadow:0 6px 18px rgba(0,0,0,0.45); }
[data-project-details] .card-actions svg{ width:14px; height:14px; fill:currentColor; }
[data-project-details] .card-actions button[data-tip],
[data-project-details] .fav-toggle[data-tip]{ position: relative; }
[data-project-details] .gen-grid.show-select .card-actions{ display:flex; }
[data-project-details] .gen-thumb .btn-icon{ font-size:12px; line-height:1; }
[data-project-details] .gen-thumb .card-actions,
[data-project-details] .gen-thumb .fav-toggle{ display:none; }
[data-project-details] .gen-thumb:hover .card-actions,
[data-project-details] .gen-thumb:hover .fav-toggle,
[data-project-details] .gen-thumb .fav-toggle.active{ display:flex; }
[data-project-details] .gen-grid.list-view .fav-toggle,
[data-project-details] .gen-grid.list-view .card-actions{
  position: static;
  display:flex;
}
[data-project-details] .gen-grid.list-view .fav-toggle{ margin-left:auto; }
[data-project-details] .gen-grid.list-view .thumb-overlay{ order:1; flex:1 1 auto; }
[data-project-details] .gen-grid.list-view img{ order:0; }
[data-project-details] .gen-grid.list-view .fav-toggle{ order:2; }
[data-project-details] .gen-grid.list-view .card-actions{ order:3; }
[data-project-details] .gen-grid.list-view .card-actions button,
[data-project-details] .gen-grid.list-view .fav-toggle{
  background: rgba(12,14,22,0.9);
}
[data-project-details] .card-actions [data-tip]::after,
[data-project-details] .fav-toggle[data-tip]::after{
  content: attr(data-tip);
  position: absolute;
  bottom: calc(100% + 6px);
  left: 50%;
  transform: translateX(-50%);
  padding: 5px 8px;
  border-radius: 8px;
  background: rgba(8,10,16,0.92);
  border: 1px solid rgba(255,255,255,0.12);
  color: #f5f5f7;
  font-size: 11px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.12s ease;
}
[data-project-details] .card-actions [data-tip]:hover::after,
[data-project-details] .fav-toggle[data-tip]:hover::after{
  opacity: 1;
}
[data-project-details] .hover-preview{ position:fixed; width:22vw; max-width:520px; min-width:280px; background:#05070f; border:1px solid rgba(255,255,255,0.14); border-radius:14px; padding:10px; box-shadow:0 18px 48px rgba(0,0,0,0.52); opacity:0; pointer-events:none; transition:opacity .1s ease; z-index:20; display:none; }
[data-project-details] .hover-preview img{ width:100%; height:100%; object-fit:contain; display:block; }
[data-project-details] .lightbox{ position:fixed; inset:0; background:rgba(0,0,0,0.86); display:none; align-items:center; justify-content:center; z-index:999; }
[data-project-details] .lightbox.open{ display:flex; }
[data-project-details] .lightbox-img{ max-width:min(85vw, 1000px); max-height:calc(70vh - 60px); min-height:200px; border-radius:18px; border:1px solid rgba(255,255,255,0.14); background:#05070d; object-fit:contain; transition:transform .16s ease; cursor:zoom-in; box-shadow:0 22px 60px rgba(0,0,0,0.65); }
[data-project-details] .lightbox-img.zoomed{ transform:scale(1.35); cursor:zoom-out; }
[data-project-details] .lb-toolbar{ position:absolute; bottom:32px; left:50%; transform:translateX(-50%); display:flex; gap:8px; background:rgba(8,10,16,0.9); border:1px solid rgba(255,255,255,0.12); border-radius:12px; padding:10px 12px; backdrop-filter:blur(6px); box-shadow:0 14px 36px rgba(0,0,0,0.5); }
[data-project-details] .lb-btn{ width:40px; height:40px; border-radius:10px; border:1px solid rgba(255,255,255,0.12); background:rgba(255,255,255,0.04); color:#dfe2f0; display:inline-flex; align-items:center; justify-content:center; cursor:pointer; position:relative; transition:.12s ease; }
[data-project-details] .lb-btn:hover{ border-color: rgba(0,180,255,0.6); }
[data-project-details] .lb-btn.star.active{ color: var(--yellow); }
[data-project-details] .tooltip{ position:absolute; bottom:48px; left:50%; transform:translateX(-50%); padding:6px 8px; border-radius:8px; background:#0b0e16; border:1px solid rgba(255,255,255,0.12); font-size:11px; color:#f5f5f5; white-space:nowrap; opacity:0; pointer-events:none; transition:opacity .12s ease; }
[data-project-details] .lb-btn:hover .tooltip{ opacity:1; }
[data-project-details] .lb-nav{ position:absolute; top:50%; transform:translateY(-50%); width:48px; height:48px; border-radius:12px; border:1px solid rgba(255,255,255,0.12); background:rgba(0,0,0,0.5); color:#e5e9fa; display:grid; place-items:center; cursor:pointer; transition:.12s ease; }
[data-project-details] .lb-nav:hover{ border-color: rgba(0,180,255,0.6); }
[data-project-details] .lb-nav.prev{ left:32px; }
[data-project-details] .lb-nav.next{ right:32px; }
/* inline modal for status picker */
[data-project-details] .aidc-modal-overlay{position:fixed;inset:0;display:grid;place-items:center;background:rgba(5,6,10,0.62);backdrop-filter:blur(8px);z-index:9999;padding:16px;}
[data-project-details] .aidc-modal{min-width:260px;max-width:420px;width:100%;background:#12121a;border:1px solid rgba(255,255,255,0.12);border-radius:14px;box-shadow:0 18px 46px rgba(0,0,0,0.7);padding:16px;color:#f4f4ff;font-family:inherit;}
[data-project-details] .aidc-modal__title{font-size:13px;font-weight:700;margin-bottom:10px;letter-spacing:0.08em;text-transform:uppercase;color:#d6d6e6;}
[data-project-details] .aidc-modal__list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;}
[data-project-details] .aidc-modal__item{width:100%;text-align:left;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:#f6f6ff;cursor:pointer;transition:background .12s ease,border-color .12s ease;}
[data-project-details] .aidc-modal__item:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.2);}
[data-project-details] .aidc-modal__item.is-active{border-color:rgba(255,0,140,0.55);background:rgba(255,0,140,0.12);}
[data-project-details] .aidc-modal__actions{display:flex;justify-content:flex-end;}
[data-project-details] .aidc-modal__btn{padding:9px 14px;border-radius:10px;border:1px solid rgba(255,255,255,0.12);background:rgba(255,255,255,0.04);color:#f7f7ff;cursor:pointer;font-weight:600;}
[data-project-details] .aidc-modal__custom{margin-top:6px;margin-bottom:12px;}
[data-project-details] .aidc-modal__label{font-size:12px;color:#b9bacb;margin-bottom:6px;}
[data-project-details] .aidc-modal__custom-row{display:flex;gap:8px;align-items:center;}
[data-project-details] .aidc-modal__input{flex:1 1 auto;height:34px;background:#0f1018;color:#e9e9f4;border:1px solid rgba(255,255,255,0.14);border-radius:10px;padding:0 10px;font-size:13px;letter-spacing:0.02em;}
[data-project-details] .aidc-modal__input::placeholder{color:#7f8398;}

/* Ensure modal styles apply even if mounted outside the project-details root */
.aidc-modal-overlay{position:fixed;inset:0;display:grid;place-items:center;background:rgba(5,6,10,0.62);backdrop-filter:blur(8px);z-index:9999;padding:16px;}
.aidc-modal{min-width:260px;max-width:420px;width:100%;background:#12121a;border:1px solid rgba(255,255,255,0.12);border-radius:14px;box-shadow:0 18px 46px rgba(0,0,0,0.7);padding:16px;color:#f4f4ff;font-family:inherit;}
.aidc-modal__title{font-size:13px;font-weight:700;margin-bottom:10px;letter-spacing:0.08em;text-transform:uppercase;color:#d6d6e6;}
.aidc-modal__list{display:flex;flex-direction:column;gap:8px;margin-bottom:12px;}
.aidc-modal__item{width:100%;text-align:left;padding:10px 12px;border-radius:10px;border:1px solid rgba(255,255,255,0.1);background:rgba(255,255,255,0.04);color:#f6f6ff;cursor:pointer;transition:background .12s ease,border-color .12s ease;}
.aidc-modal__item:hover{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.2);}
.aidc-modal__item.is-active{border-color:rgba(255,0,140,0.55);background:rgba(255,0,140,0.12);}
.aidc-modal__actions{display:flex;justify-content:flex-end;}
.aidc-modal__btn{padding:9px 14px;border-radius:10px;border:1px solid rgba(255,255,255,0.12);background:rgba(255,255,255,0.04);color:#f7f7ff;cursor:pointer;font-weight:600;}
.aidc-modal__custom{margin-top:6px;margin-bottom:12px;}
.aidc-modal__label{font-size:12px;color:#b9bacb;margin-bottom:6px;}
.aidc-modal__custom-row{display:flex;gap:8px;align-items:center;}
.aidc-modal__input{flex:1 1 auto;height:34px;background:#0f1018;color:#e9e9f4;border:1px solid rgba(255,255,255,0.14);border-radius:10px;padding:0 10px;font-size:13px;letter-spacing:0.02em;}
.aidc-modal__input::placeholder{color:#7f8398;}
/* hero: left column (summary/controls) and right main area */
[data-project-details] .hero{ display:grid; grid-template-columns: minmax(320px, 420px) minmax(420px, 1fr); gap:18px; align-items:start; }
@media (max-width: 1200px){ [data-project-details] .hero{ grid-template-columns: 1fr; } }
[data-project-details] .hero-left,
[data-project-details] .hero-right{ min-width:0; }
[data-project-details] .summary{
      padding:0;
      margin-top:0;
      grid-column: auto;
    }
@media (max-width: 1200px){
      [data-project-details] .summary{ margin-top:12px; }
    }
[data-project-details] .summary-grid{
  display:flex;
  gap:12px;
  width:100%;
  align-items:stretch;
  flex-wrap:nowrap;
}
[data-project-details] .summary-grid .s-card{ flex:1 1 0; min-width:180px; }
[data-project-details] .summary-grid .s-action{ flex:0 0 90px; }
@media (max-width: 980px){
  [data-project-details] .summary-grid{ flex-wrap:wrap; }
  [data-project-details] .summary-grid .s-action{ flex:1 1 100%; }
}
[data-project-details] .s-card{ border-radius:12px; border:1px solid rgba(255,255,255,0.12); background: rgba(12,14,24,0.96); padding:12px; min-height: 72px; display:flex; flex-direction:column; gap:8px; }
[data-project-details] .s-title{ font-size:12px; letter-spacing:0.16em; text-transform:uppercase; color:#d6d6e6; }
[data-project-details] .s-row{ display:flex; flex-wrap:wrap; gap:14px; font-size:11px; color:#b8b9ca; }
[data-project-details] .s-row strong{ color:#f0f1ff; }
[data-project-details] .s-text{ font-size:12px; color:#c2c3d6; line-height:1.5; }
[data-project-details] [data-details-status]{ cursor:pointer; }
[data-project-details] [data-details-description]{ cursor:text; }
[data-project-details] .s-action{ display:flex; align-items:stretch; justify-content:flex-end; }
[data-project-details] .btn-primary-lg{
      border:none; border-radius:12px; padding:12px 18px; font-size:14px; font-weight:600;
      color:#07040a; background:linear-gradient(120deg, #ff62c5, #ff008c); box-shadow:0 0 0 1px rgba(255,255,255,0.08), 0 0 26px rgba(255,0,140,0.55);
      width:100%; height:100%; cursor:pointer; white-space:normal; transition:opacity .12s ease; display:flex; align-items:center; justify-content:center; text-align:center;
    }
[data-project-details] .btn-primary-lg:hover{ opacity:.92; }
@media (max-width: 1400px){ [data-project-details] .s-action{ grid-column:1 / -1; } }
/* Модули по высоте экрана, скролл только при наведении */
[data-project-details] .panel-block {
  height: 100%;
  max-height: calc(100vh - 120px);
  overflow-y: hidden;
  transition: box-shadow 0.18s;
}
[data-project-details] .panel-block:hover {
  overflow-y: auto;
  box-shadow: 0 0 0 2px #ff62c5;
}
/* Кнопка по ширине модуля */
[data-module="model-settings"] .btn-primary,
[data-module="model-settings"] .btn-seed {
  width: 100%;
  box-sizing: border-box;
}

/* --- FIX: восстановить исходный вид карточки и убрать обрезания --- */

/* 1) В grid/flex-контейнерах запретить “клип” текста по ширине */
[data-project-details] .hero,
[data-project-details] .summary-grid,
[data-project-details] .ag-card,
[data-project-details] .ag-content,
[data-project-details] .thumb-overlay {
  min-width: 0; /* ключ к нормальному переносу/ellipsis без обрезания слева */
}

/* 2) Заголовки: дать безопасный левый паддинг, чтобы не резало первую букву */
[data-project-details] .details-section-title,
[data-project-details] .details-title {
  padding-left: 8px;
}

/* если заголовок где-то в строке с иконкой/карандашом — пусть не сжимается */
[data-project-details] .details-title {
  display: flex;
  align-items: center;
  gap: 8px;
  overflow: visible;
}

/* 3) Активность: НЕ обрезать уведомления, а переносить */
[data-project-details] .ag-content * {
  min-width: 0;
}

[data-project-details] .ag-content,
[data-project-details] .ag-content li,
[data-project-details] .ag-content .row,
[data-project-details] .ag-content .item,
[data-project-details] .ag-content .line {
  white-space: normal;
  overflow: visible;
  text-overflow: unset;
  word-break: break-word;
}

/* Activity list: show items with wrapping and scroll */
[data-project-details] .ag-activity-list{
  list-style:none;
  margin:0;
  padding:0;
  max-height:460px;
  overflow-y:auto;
  padding-right:6px;
  scrollbar-width:thin;
  scrollbar-color:#3a3d4d rgba(15,16,24,0.6);
}
[data-project-details] .ag-activity-list::-webkit-scrollbar{ width:8px; }
[data-project-details] .ag-activity-list::-webkit-scrollbar-track{ background:rgba(15,16,24,0.6); border-radius:10px; }
[data-project-details] .ag-activity-list::-webkit-scrollbar-thumb{ background:#3a3d4d; border-radius:10px; border:2px solid transparent; background-clip:content-box; }
[data-project-details] .activity-filters{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin-left:auto;
}
[data-project-details] .activity-input,
[data-project-details] .activity-select{
  background-color: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: #e6e7f2;
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 12px;
  min-width: 140px;
}
[data-project-details] .activity-select{
  appearance: none;
  padding-right: 28px;
  cursor: pointer;
  background-image:
    linear-gradient(45deg, transparent 50%, rgba(232,235,255,0.65) 50%),
    linear-gradient(135deg, rgba(232,235,255,0.65) 50%, transparent 50%);
  background-position: calc(100% - 16px) 50%, calc(100% - 11px) 50%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
}
[data-project-details] .activity-filters .aidc-select{
  width: 160px;
}
[data-project-details] .activity-filters .aidc-select__btn{
  padding: 6px 10px;
  font-size: 12px;
  border-radius: 8px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: #e6e7f2;
}
[data-project-details] .activity-select option{
  background: #0f1420;
  color: #e6e7f2;
}
[data-project-details] .activity-input::placeholder{
  color:#8f92b3;
}
[data-project-details] .activity-clear{
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  color:#e6e7f2;
  border-radius: 8px;
  padding: 6px 10px;
  font-size: 12px;
  cursor: pointer;
}
[data-project-details] .activity-clear:hover{
  background: rgba(255,255,255,0.1);
}
[data-project-details] .ag-activity-list .ag-activity-item{
  padding:8px 6px;
  border-bottom:1px solid rgba(255,255,255,0.03);
  font-size:13px;
  color:var(--muted-2);
  white-space: normal;
  word-break: break-word;
}

/* 4) Если где-то стоит ellipsis у текста активности — отключаем точечно */
[data-project-details] .ag-content .text,
[data-project-details] .ag-content .message,
[data-project-details] .ag-content .activity-text {
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
}
