/* CIRHU Research Platform */
.cirhu-rp-wrap { max-width: 720px; color: #d0d8f0; }
.cirhu-rp-identity { display: flex; align-items: center; gap: 14px; margin-bottom: 20px; padding: 16px; border-radius: 12px; border: 1px solid rgba(99,200,255,0.15); background: rgba(10,18,44,0.5); }
.cirhu-rp-color-dot { width: 28px; height: 28px; border-radius: 50%; flex-shrink: 0; }
.cirhu-rp-identity h2 { margin: 0; font-size: 1.2rem; color: #93c5fd; }
.cirhu-rp-tone { margin: 4px 0 0; font-size: 0.85rem; color: #8892b0; }
.cirhu-rp-form label { display: block; margin: 14px 0 6px; font-weight: 600; color: #d0d8f0; font-size: 0.9rem; }
.cirhu-rp-hint { font-weight: 400; color: #6b7ea0; font-size: 0.8rem; }
.cirhu-rp-form input[type="text"], .cirhu-rp-form input[type="color"], .cirhu-rp-form textarea, .cirhu-rp-form select {
  width: 100%; padding: 10px 12px; border-radius: 8px; border: 1px solid rgba(99,200,255,0.2);
  background: rgba(10,18,44,0.6); color: #e5edff; font-family: inherit; box-sizing: border-box;
}
.cirhu-rp-form input[type="color"] { width: 80px; height: 40px; padding: 4px; cursor: pointer; }
.cirhu-rp-btn {
  display: inline-block; margin-top: 16px; padding: 10px 20px; border-radius: 9px; border: none;
  background: linear-gradient(135deg, #6c8ef7, #4f46e5); color: #fff; font-weight: 700; cursor: pointer; text-decoration: none; font-size: 0.9rem;
}
.cirhu-rp-btn-sm { margin-top: 0; padding: 8px 14px; font-size: 0.82rem; }
.cirhu-rp-btn-ghost { background: transparent; border: 1px solid rgba(99,200,255,0.3); color: #93c5fd; }
.cirhu-rp-btn:hover { opacity: 0.88; }
.cirhu-rp-readonly h3 { color: #ffa040; font-size: 0.95rem; margin: 18px 0 6px; }
.cirhu-rp-readonly p { color: #94a3b8; line-height: 1.65; margin: 0; }
.cirhu-rp-notice { padding: 10px 14px; border-radius: 8px; margin-bottom: 14px; font-size: 0.88rem; }
.cirhu-rp-notice-ok { background: rgba(52,211,153,0.1); border: 1px solid rgba(52,211,153,0.3); color: #34d399; }
.cirhu-rp-repo-header { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 16px; }
.cirhu-rp-repo-header h2 { margin: 0; color: #93c5fd; }
.cirhu-rp-repo-list { display: flex; flex-direction: column; gap: 12px; }
.cirhu-rp-repo-card { padding: 14px 16px; border-radius: 10px; border: 1px solid rgba(99,200,255,0.12); background: rgba(10,18,44,0.45); }
.cirhu-rp-repo-card h3 { margin: 6px 0 4px; font-size: 1rem; }
.cirhu-rp-repo-card h3 a { color: #93c5fd; text-decoration: none; }
.cirhu-rp-repo-card h3 a:hover { text-decoration: underline; }
.cirhu-rp-repo-card p { margin: 0; font-size: 0.85rem; color: #8892b0; }
.cirhu-rp-axis { display: inline-block; font-size: 0.7rem; font-weight: 700; padding: 2px 8px; border-radius: 999px; text-transform: uppercase; letter-spacing: 0.04em; }
.cirhu-rp-axis-internal { background: rgba(139,92,246,0.2); color: #c4b5fd; }
.cirhu-rp-axis-external { background: rgba(34,211,238,0.15); color: #67e8f9; }
.cirhu-rp-tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.cirhu-rp-tag { font-size: 0.75rem; color: #6c8ef7; background: rgba(108,142,247,0.12); padding: 2px 8px; border-radius: 999px; }
.cirhu-rp-empty { color: #8892b0; font-style: italic; }

.cirhu-feed-filters { margin-bottom: 16px; padding: 12px 14px; border-radius: 10px; border: 1px solid rgba(255,140,0,0.2); background: rgba(13,16,53,0.6); }
.cirhu-feed-filters-form { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.cirhu-feed-filters-form label { font-size: 0.78rem; color: #8892b0; font-weight: 600; }
.cirhu-feed-filters-form select { padding: 6px 10px; border-radius: 6px; background: #0f0f1a; color: #d0d8f0; border: 1px solid #2d2d4e; font-size: 0.85rem; }

.cirhu-group-size-badge { display: inline-block; margin-left: 8px; padding: 2px 10px; border-radius: 999px; font-size: 0.75rem; background: rgba(255,140,0,0.15); color: #ffa040; }
.cirhu-group-size-field { margin: 16px 0; padding: 12px; border: 1px dashed rgba(255,140,0,0.3); border-radius: 8px; }
.cirhu-group-size-field select { padding: 8px; border-radius: 6px; }

/* Constellation */
.cirhu-constellation-page { padding: 16px 24px 40px; color: #e0e7ff; }
.cirhu-constellation-controls { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; margin-bottom: 16px; padding: 14px; border-radius: 12px; border: 1px solid rgba(255,140,0,0.25); background: rgba(10,14,38,0.8); }
.cirhu-constellation-controls input, .cirhu-constellation-controls select { padding: 8px 12px; border-radius: 8px; border: 1px solid rgba(99,200,255,0.2); background: #0f0f1a; color: #d0d8f0; }
.cirhu-constellation-canvas-wrap { position: relative; border-radius: 14px; border: 1px solid rgba(148,163,184,0.2); background: radial-gradient(ellipse at center, rgba(16,28,64,0.95), rgba(6,10,28,0.98)); min-height: 480px; overflow: hidden; }
#cirhu-constellation-canvas { width: 100%; height: 520px; display: block; cursor: grab; }
.cirhu-constellation-legend { margin-top: 12px; font-size: 0.82rem; color: #8892b0; }

/* Events & repository pages */
.cirhu-platform-page { padding: 16px 24px 40px; max-width: 980px; margin: 0 auto; color: #e0e7ff; }
.cirhu-platform-card { padding: 20px; border-radius: 14px; border: 1px solid rgba(99,200,255,0.15); background: linear-gradient(165deg, rgba(18,28,58,0.94), rgba(10,16,38,0.96)); margin-bottom: 20px; }
.cirhu-platform-card h1, .cirhu-platform-card h2 { color: #93c5fd; margin: 0 0 10px; }
.cirhu-platform-grid { display: grid; gap: 14px; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); }
.cirhu-event-card { padding: 16px; border-radius: 10px; border: 1px solid rgba(99,200,255,0.1); background: rgba(10,18,44,0.5); }
.cirhu-event-date { font-size: 0.8rem; color: #ffa040; font-weight: 600; }
.cirhu-form-row { margin-bottom: 14px; }
.cirhu-form-row label { display: block; margin-bottom: 4px; font-weight: 600; color: #d0d8f0; font-size: 0.88rem; }
.cirhu-form-row input, .cirhu-form-row textarea, .cirhu-form-row select {
  width: 100%; padding: 10px 12px; border-radius: 8px; border: 1px solid rgba(99,200,255,0.2); background: rgba(10,18,44,0.6); color: #e5edff; box-sizing: border-box; font-family: inherit;
}
.cirhu-form-row textarea { min-height: 120px; }
.cirhu-shared-users { display: flex; flex-wrap: wrap; gap: 8px; max-height: 160px; overflow-y: auto; padding: 8px; border: 1px solid rgba(99,200,255,0.1); border-radius: 8px; }
.cirhu-shared-users label { font-weight: 400; font-size: 0.82rem; display: flex; align-items: center; gap: 4px; }

.single-research-item, .single-cirhu-event { padding: 24px; max-width: 800px; margin: 0 auto; color: #e0e7ff; }
.single-research-item .entry-header h1, .single-cirhu-event .entry-header h1 { color: #ffa040; }
