Template:Insert quote panel/styles.css

/* Template:Insert quote panel/styles.css */

/* --- 1. MAIN CONTAINER (Flexbox Setup) --- */
.insert-quote-panel {
  clear: both;
  width: 100%;
  box-sizing: border-box;
  margin: 0 0 2em 0;
  display: flex;
  flex-direction: row;
  align-items: flex-start; /* Aligns image top with text top */
}

/* --- 2. FORMAT: WITH IMAGE (Simple, Tight Layout) --- */
.insert-quote-panel.has-image {
  gap: 0.5em; /* Brings text closer to the image on the left */
}

.insert-quote-panel.has-image .insert-quote-content {
  background: transparent; /* Simple background */
  border: none;            /* REMOVES the vertical gray bar */
  padding: 0;              /* Removes padding so text aligns strictly top-left */
  color: #202122;
}

/* CRITICAL: Removes default paragraph margin so text starts at the very top */
.insert-quote-panel.has-image .insert-quote-content > *:first-child {
  margin-top: 0;
}

/* --- 3. FORMAT: NO IMAGE (Original Gray Box) --- */
.insert-quote-panel.no-image .insert-quote-content {
  background: #F8F9FA;
  border: 0 solid #9CA4AC;
  padding: .5em .5em .5em 0.5em;
  color: #202122;
}

/* --- 4. SHARED CONTENT SETTINGS --- */
.insert-quote-content {
  flex: 1;
  min-width: 0;
}

.insert-quote-content a,
.insert-quote-content a:visited { color: #202122; text-decoration: underline; }

/* --- 5. IMAGE STYLING (Round + White Crop) --- */
.insert-quote-image {
  flex: 0 0 auto;
  line-height: 0;
  margin-top: 0;
}

.insert-quote-image img {
  border-radius: 50%;
  border: 1px solid #ffffff;
  width: 50px;
  height: 50px;
  object-fit: cover;
}