Template:OOOInfoBoxTabber/styles.css

Revision as of 20:30, 12 October 2025 by T-Bone (talk | contribs)
/* OOO Infobox – Tabber wrapper (TemplateStyles safe)
   - Default width matches .ooo-infobox (300px)
   - Right-aligned by default; left/none/center overrides supported
   - Hides the tab-strip baseline and clips to the same rounded corners
*/

/* Wrapper (default: right) */
.ooo-infobox-tabwrap {
  float: right;
  clear: right;
  width: 300px;                 /* match .ooo-infobox default */
  margin: 0 0 1em 1em;

  /* clip any tab-strip line at rounded corners */
  border-top-left-radius: 12px; /* keep in sync with .ooo-infobox */
  border-top-right-radius: 12px;
  overflow: hidden;
}

/* Alignment overrides (added by module when |align=...) */
.ooo-infobox-tabwrap--left   { float: left;  clear: left;  margin: 0 1em 1em 0; }
.ooo-infobox-tabwrap--none   { float: none;               margin: 0 0 1em 0; }
.ooo-infobox-tabwrap--center { float: none; display: block; margin: 0 auto 1em; }

/* Tab strip: remove baseline so it doesn't peek past rounded corners */
.ooo-infobox-tabwrap .tabber__tabs {
  display: block;
  margin: 0 0 .5rem 0;
  width: 100%;
  box-sizing: border-box;
  border: 0;       /* kills bottom line */
  padding: 0;
}
/* Some skins draw an after-line; disable it too */
.ooo-infobox-tabwrap .tabber__tabs::after { display: none; }

/* Individual tabs (compact, skin-colored) */
.ooo-infobox-tabwrap .tabber__tab {
  display: inline-block;
  font-weight: 700;
  font-size: 90%;
  line-height: 1.2;
  white-space: normal;          /* allow wrapping on long labels */
  padding: .25rem .5rem;
  margin-right: .25rem;
  text-decoration: none;

  background: var(--background-color-neutral, #f5f5f5);
  color: var(--color-base, #202122);
  border: 1px solid #a2a9b1;    /* literal: avoids TemplateStyles color warnings */
  border-bottom: none;          /* blends with panel */
  border-radius: 12px 12px 0 0; /* match infobox radius */
}

/* Active tab: sit flush on the infobox (no seam) */
.ooo-infobox-tabwrap .tabber__tab--active {
  background: var(--background-color-base, #ffffff);
  color: var(--color-base, #202122);
  margin-bottom: -1px;          /* overlap top border by 1px */
}

/* Panels: flush with infobox */
.ooo-infobox-tabwrap .tabber__panel {
  padding: 0;
  border: none;
}

/* Mobile: unfloat and go full width */
@media (max-width: 640px) {
  .ooo-infobox-tabwrap,
  .ooo-infobox-tabwrap--left,
  .ooo-infobox-tabwrap--none,
  .ooo-infobox-tabwrap--center {
    float: none;
    width: 100%;
    margin: 0 0 1em 0;
  }
}