@media all {
	.puzLinks { text-align: center; margin: -46px 0 6px 0; }  
	.puzLink { width: 9%; opacity: 0.7; background-color: var(--a0Clr); text-decoration: none; font: 15px Arial; display: inline-block; padding: 5px 2px 5px 2px; border: 1px solid rgba(0, 0, 255, 0.1); }
	.puzLink:hover { opacity: 1; background-color: var(--b2Clr);  }

	.puzLinkOuter { clear: both; margin: 10px 40px 15px 40px; background-color: var(--a0Clr); border-radius: 20px; padding-right:10px; 
		content-visibility: auto; /* this is the thing that delays painting */
		contain-intrinsic-size: 1px 100px; /* this is the guess at the height of the content, and also saying width doesn't matter */
	}
	.puzLinkLt { float:left; padding: 4px 18px 4px 4px;  }
	.puzLinkRt { padding: 10px 0 10px 0; }
	.puzLinkTitle { font: 500 16px/28px Verdana, Georgia, helvetica, serif; }
	.puzLinkTxt {  }

	.puzTitle { text-align: center; margin-top:2px; }
	.puzPuzzle { background-color: var(--bgClr); padding: 10px 10px 14px 10px; border-radius: 25px; }
	.puzPuzzle h2 { font-size: 20px; line-height: 24px; color: var(--txtClr); margin: 0px 8px 2px 15px; }
		
	.puzText { font-size: 16px; line-height: 24px; color: var(--txtClr); margin: 4px 8px 4px 8px; border: 2px solid var(--bgClr); border-radius: 15px; 
		box-shadow: 2px 2px 6px var(--b2Clr); padding: 15px; overflow: auto;
	
		background: linear-gradient(145deg, var(--b0Clr) 0%, var(--b2Clr) 100%); font-size: 1rem;

	
	}

	.puzThumb { float: right; padding: 4px 4px 4px 8px; }
	
	.puzText p { overflow: auto; min-width:120px;  }
	.puzText p:first-of-type { margin-top:0;   }  /* so no gap above first para */
	
	.puzFtr { font-size: 16px; line-height: 24px; font-style: italic; margin: 40px 8px 30px 8px; }
	.puzSep { margin: 30px auto 30px auto; height: 7px; background-color: var(--bgClr); border-top: 10px double var(--b2Clr); border-bottom: 10px double var(--b2Clr); width: 100px; }


	.puzHint { display: inline-block; background-color: var(--b1Clr); border-radius: 25px; margin:5px; }
	.puzHintText { display: inline-block; vertical-align: top; overflow: auto; min-width:120px;  margin: 0 20px 0 0; }



	.puzSoln { margin: 0 0 50px 0; padding: 10px;   border-radius: 10px;
		box-shadow: 3px 3px 5px var(--b2Clr); 
		border: 2px solid var(--bgClr);
		background: linear-gradient(145deg, var(--b0Clr) 0%, var(--b2Clr) 100%); font-size: 1rem;


	}
	.puzSoln h2 { font-size: 20px; line-height: 24px; color: var(--b3Clr); margin: 12px 8px 12px 0px; }
	.puzSolnText { font-size: 16px; line-height: 24px; color: var(--txtClr); margin: 4px 8px 4px 8px; }
	.puzAuthor { font-size: 15px; line-height: 20px; color: var(--txtClr); font-style: italic; margin: 60px 8px 15px 0px; }
	.puzSolnFtr { font-size: 16px; line-height: 24px; color: var(--txtClr); font-style: italic; margin: 4px 8px 30px 0px; }

	.puzIndexLong {
		text-align: center;
		font-size: 18px;
	}

}
@media (max-width: 690px) {
	.puzLinks { display: none; }
}
