/* ===========================================================================
   TO-TOP — THE SST CONTROL, FOR A TEMPLATE THAT LOADS NEITHER SST SHEET
   shared/core/v1/to-top.css  ·  paired with shared/core/v1/to-top.js
   Created 2026-09-23 09:27 MDT for SweetwaterCreek's Estate Template (/v2, /blog, /experience).
   Craig: "add TO TOP icon to the new v2 website pages on SC. i love that
   feature on all of our sites. make sure it's SST from all of our sites, and
   make sure it doesn't overlay the SiteEdit icon or the ReCaptcha on any pages"

   EVERY RULE BELOW IS A BYTE COPY, NOT A RESTYLE. Two blocks, pasted in the
   order the estate's own pages load them:
     1. sst-styles.css          "TO TOP" block   (lines 10486-10526 on 2026-09-23)
     2. sst-site-structure.css  "CORNER STACK" + "TO-TOP INK" (lines 763-836)
   A template that DOES load those sheets must not load this one as well — it
   would be harmless (same values) but it is a second copy to keep in step.
   CHANGE THE SOURCE BLOCK, THEN RE-PASTE IT HERE. The corner-stack math is
   also mirrored in editor/v1/editor.css (.tlce-toggle 80-140px); all three move
   together or the stack collides.

   The ONE addition is the last block: FontAwesome's own svg-inline--fa box.
   These pages load no FA kit, so to-top.js draws the SAME svg the kit draws
   on every other page (measured off sweetwatercreek.net/privacy-policy,
   FA 6.7.2 kit 784988b589) and this block supplies the geometry the kit's CSS
   would have. Values are FA's; on a page that has the kit they are identical.
   =========================================================================== */

/* ---- 1. from sst-styles.css ------------------------------------------------ */
/* SCROLL TOP - Arrow - - - - - - - - - -*/
.move-up {
   position: fixed;
   bottom: 90px;
   right: 1px;
   display: none;
   z-index: 10000;
}
.move-up button {
	background:transparent;
	border:none;
}
.move-up button:active:hover {
	/*padding-right:4px !important;
	margin-right:2px;*/
}
.move-up i,
.move-up svg {
	font-size:60px;
	opacity:0.5;
	color: var(--ToTopButtonColor);
	cursor: pointer;
}
.move-up i:hover,
.move-up svg:hover {
	font-size:60px;
	opacity:1;
	color: var(--ToTopButtonColor);
	cursor: pointer;
}
.move-up i:active,
.move-up svg:active {
  -webkit-animation-name: hvr-push;
  animation-name: hvr-push;
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
}

/* ---- 2. from sst-site-structure.css ---------------------------------------- */
/* ===========================================================================
   CORNER STACK — BOTTOM RIGHT, ANCHORED, IDENTICAL ON EVERY PAGE
   Craig, 2026-09-22: "set all icons to a 100% anchored position in the bottom
   right with ToTop then SiteEdit then the default ReCaptcha without moving
   page to page. The ToTop only shows on scroll down. The SiteEdit only shows
   when signed in. The ReCaptcha only shows on Forms."

   Bottom-up, with a 6px gap between each — the same gap the SiteEdit control
   was already built to:
     reCAPTCHA badge   14 - 74px   Google's own default. NOT TOUCHED.
     .tlce-toggle      80 - 140px  editor/v1/editor.css — the other half of
                                   this math. Change both together.
     .move-up         146 - 206px  here.
   The slot is reserved whether or not the thing in it is showing, because a
   stack that closes up when a control is absent is a stack that moves page to
   page, which is the thing being fixed.

   WHY THIS RULE LIVES HERE AND NOT IN sst-styles.css: `.move-up{bottom:90px}`
   is in every site's own legacy /css/t_tlc-styles.css (27 copies, 90px or
   75px), and ColoradoLamb — measured 2026-09-22 — does not load sst-styles.css
   at all. sst-site-structure.css IS loaded on every page of every site, signed
   in or anonymous. `body .move-up` is (0,1,1) and beats the local (0,1,0) on
   specificity rather than on source order, so it does not depend on which
   sheet a given site happens to link last.

   THE OLD 90px WAS NEVER WRONG FOR AN ANONYMOUS VISITOR — 90-150 clears the
   badge's 14-74 on its own. It broke the moment a second control appeared
   between them: the SiteEdit button sat at 24-84 and overlapped the badge, and
   on a page publishing a --tlc-dock it jumped to 127-187 and overlapped this.
   =========================================================================== */
body .move-up { bottom: 146px; }

/* ---------------------------------------------------------------------------
   TO-TOP INK — THE ATTENTION COLOR. Craig, 2026-09-22: "Let's make sure the
   toTop and SiteEdit buttons use our attention color1 i think it's often
   'var(--attention)' from the ID CMs."

   THE GROUND IS ON THE FORM, THE var() IS ON THE GLYPH, AND THAT ORDER MATTERS.
   --attention is declared-but-EMPTY on some pages — measured 2026-09-22,
   turnerlee.com/ returns "" while cololamb.com returns "#00aeef" — and an empty
   var() does not use its fallback: it unsets the property, which then INHERITS.
   So the parent carries the color we are willing to land on (today's
   --ToTopButtonColor, measured #c52040 on ColoradoLamb) and the glyph asks for
   --attention. Token present -> attention paints. Token empty -> the glyph
   inherits the old color instead of vanishing. Same construction as
   editor/v1/editor.css's ON state.

   SPECIFICITY: every site's own /css/t_tlc-styles.css holds
   `.move-up i, .move-up svg {color: var(--ToTopButtonColor)}` at (0,1,1) and
   a `:hover` twin. `body .move-up i` is (0,1,2) and beats both without
   !important and without depending on which sheet a site links last.
   --------------------------------------------------------------------------- */
body .move-up,
body .move-up button {
	/* THE BUTTON IS IN THE CHAIN AND IT HAS ITS OWN COLOR, so grounding only the
	   form does nothing: the glyph inherits from its nearest ancestor. Measured
	   2026-09-22 on turnerlee.com/ with the form alone grounded — form
	   rgb(107, 103, 96), glyph still rgb(26, 26, 26).

	   A LITERAL, BECAUSE A GROUND THAT CAN ITSELF GO EMPTY IS NOT A GROUND.
	   First cut of this rule read `var(--ToTopButtonColor, #6b6760)` and measured
	   rgb(26, 26, 26) on turnerlee.com/ — that token is declared-but-empty on the
	   Blank template too, so the ground unset and inherited the body's near-black
	   onto a black page. (That page already rendered the arrow that way before this
	   rule existed, so it is the old defect surfacing, not a new one.) #6b6760 is
	   the fallback this control has always carried in editor/v1/editor.css. */
	color: #6b6760;
}
body .move-up i,
body .move-up svg,
body .move-up i:hover,
body .move-up svg:hover {
	color: var(--attention);
}

/* ---- 3. FontAwesome's svg-inline--fa box, for a page with no FA kit -------- */
/* HEIGHT ONLY. display and vertical-align are deliberately NOT restated: on the
   estate's own pages FA's `vertical-align:-.125em` LOSES to hover.css's
   `.hvr-pop{display:inline-block;vertical-align:middle}` on source order, and the
   glyph seats by `middle`. Restating FA's value here at (0,2,2) beat .hvr-pop and
   measured the glyph 2.7px high on /v2/home (button 64.7px vs the reference's 62,
   glyph 149.7px off the bottom vs 147), 2026-09-23. hover-min.css must be on the
   page, as it is on every template that uses this control. */
body .move-up svg.svg-inline--fa {
	height: 1em;
	overflow: visible;
	box-sizing: content-box;
}
