/* SevenBases rugged layer.  Opt-in classes.  Load after crew.css.  Subtle on purpose: the sun and the cut corners stay the stars. */

/* Topographic contour lines behind a section */
.sb-topo { background-image: url("/img/topo-dark.svg"); background-size: cover; background-position: center; }
.sb-topo--light { background-image: url("/img/topo-light.svg"); }

/* Field-manual corner marks */
.sb-frame { position: relative; }
.sb-frame::before, .sb-frame::after { content: ""; position: absolute; width: 22px; height: 22px; border: 3px solid currentColor; opacity: .5; pointer-events: none; }
.sb-frame::before { top: 14px; left: 14px; border-right: 0; border-bottom: 0; }
.sb-frame::after { bottom: 14px; right: 14px; border-left: 0; border-top: 0; }

/* Stitched edge, like an embroidered patch */
.sb-stitch { outline: 2px dashed rgba(253, 248, 236, .45); outline-offset: -12px; }
.sb-stitch--dark { outline-color: rgba(7, 41, 80, .35); }

/* Rivets in the corners of a card */
.sb-rivets { background-repeat: no-repeat; background-image:
  radial-gradient(circle at 11px 11px, rgba(7, 41, 80, .35) 2.5px, transparent 3.5px),
  radial-gradient(circle at calc(100% - 11px) 11px, rgba(7, 41, 80, .35) 2.5px, transparent 3.5px),
  radial-gradient(circle at 11px calc(100% - 11px), rgba(7, 41, 80, .35) 2.5px, transparent 3.5px),
  radial-gradient(circle at calc(100% - 11px) calc(100% - 11px), rgba(7, 41, 80, .35) 2.5px, transparent 3.5px); }

/* Heavy label, like a gear tag */
.sb-tape { display: inline-block; padding: .35rem .8rem .35rem 1rem; border-left: 10px solid var(--sb-orange); background: var(--sb-bone); color: var(--sb-navy);
  font: 800 1rem/1 var(--sb-font-head); letter-spacing: .16em; text-transform: uppercase; }

/* Rubber stamp: SQUARED AWAY */
.sb-stamp { display: inline-block; transform: rotate(-5deg); border: 4px solid var(--sb-orange); color: var(--sb-orange); padding: .35rem .9rem;
  font: 800 1.75rem/1 var(--sb-font-head); letter-spacing: .14em; text-transform: uppercase; box-shadow: inset 0 0 0 2px var(--sb-orange); opacity: .94; }
.sb-stamp[data-on="false"] { display: none; }

/* Heavier type, in a scope */
.sb-rugged h1, .sb-rugged h2, .sb-rugged h3 { font-weight: 800; letter-spacing: .02em; }
