			body {
				padding-top:60px;
				font-size:13pt;
				color:#000;
				OLDbackground-color:#dedede;
			}
			h1{
				font-size:18pt;
			}
			h2{
				font-size:16pt;
			}
			h3{
				font-size:14pt;
			}
			h4{
				font-size:14pt;
			}
			h1,h2,h3,h4{
				color: #008a5e;
				font-weight:bold;
			}
			h4{
				padding-top:0px;
				padding-bottom:0px;
				margin-top:5px;
				margin-bottom:0px;
			}
			
			a{
				font-weight:bold;
			}
			a.show-option-link{
				font-size:11pt !important;
			}
			
			#welcomeGuestDiv{
				max-width:48%;
			}
			#welcomeCustomersDiv{
				max-width:48%;
					
			}
			#special-container{
				margin:10px;
				padding:5px;
				border:1px solid red;
			}
			#special{
				font-weight:bold;
			}
			#special-disclaimer{
				font-size:0.9em;
				color:red;
			}
			.special-banner{
				font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
				letter-spacing: 1px;
				background:  #0A3C30; 
				border:1px solid black; 
				color:white; 
				font-size:1.1em;
				font-weight:semi-bold; 
				padding:15px; 
				margin-right:15px; 
				text-align:center;
				text-transform:uppercase;
			}
			.container-login-form{
				width:90%;
				max-width:600px;
				margin:auto;
			}
			.container-item{
				display:block;
				width:98%;
				float:left;
				padding:10px;
				margin-bottom:10px;
				border:2px solid #ccc;
				background-color:#f7f7f7;
			}
			.container-item-50{
				display:inline !Important;
				width:48%;
				float:left;
				padding:10px;
				margin-bottom:10px;
				margin-right:5px;
				border:1px solid #ccc;
				background-color:#f7f7f7;
			}
			.container-item-image{
				display:block;
				vertical-align: middle;
				float:left;
				width:25%;
			}
			.container-item-details{
				width:74%;
				display:block;
				float:left;
				padding-left:10px;
			}
			.container-item-details-90{
				width:90%;
				display:block;
				float:left;
				padding-left:10px;
			}
			.container-item:hover{
				background-color:#efefef;
				border-width: 3px;
				border-color: #008a5e;
			}
			.container-item-button{
				margin-top:10px;
				text-align:left;
			}
			.container-item-pizza .main-menu-pizza-buttons {
				clear: both;
				width: 100%;
				display: flex;
				flex-wrap: wrap;
				gap: 8px;
				margin-top: 24px;
				padding-top: 4px;
			}
			.container-item-pizza .main-menu-pizza-buttons .btn {
				flex: 1 1 0;
				min-width: 0;
				text-align: center;
				white-space: normal;
			}
			.container-item-options{
				margin-top:5px;
				margin-bottom:5px;
			}
			
			.btn-add-to-order{
				float:left;
			
			}
			.container-item-update-notice{
				float:left;
			}
			.item-option-title{
				font-size:11pt;
				font-weight:bold;
				color:#000;
				margin-top:10px;
			}
			
			
			.item-image{
				width:100%;
				border:1px solid #777;
			}
			.item-image-unavailable{
				width:100%;
				padding-top:5px;
				padding-bottom:5px;
				border:1px solid #ccc;
				background-color:#f7f7f7;
				vertical-align:middle;
				text-align:center;
			}
			
			/* ALL MEDIA SIZES NOT SPECIFIED ABOVE */
			.item-title{
				font-size:14pt;
				font-weight:bold;
				
			}
			.item-price{
				old-color:red;
				color:#008A4E;
				font-size:14pt;
				text-indent: 1%;
				font-weight:bold;
			}
			.item-description{
				font-size:12pt;
			}				
			.primary-item-category{
				font-size:20pt;
				margin: 5px;
			}
			
			.item-update-notice{
				color:#c00;
				font-size:12pt; 
				padding-top:10px;
				vertical-align:middle;
				float:right;
			}

			.ribtips-card-actions .item-update-notice,
			.main-menu-card-actions .item-update-notice,
			.zesty-bread-order-page .item-update-notice,
			.pasta-order-page .item-update-notice {
				float: none;
				display: block;
				width: 100%;
				margin: 0 0 8px;
				padding-top: 0;
				text-align: center;
				vertical-align: middle;
			}

			.ribtips-cart-notice {
				display: inline-flex;
				align-items: center;
				gap: 6px;
				margin: 0;
				padding: 7px 12px;
				border-radius: 999px;
				font-size: 0.95rem;
				font-weight: 600;
				line-height: 1.2;
				text-decoration: none !important;
				white-space: nowrap;
				animation: ribtips-cart-notice-in 0.28s ease-out;
			}

			.ribtips-cart-notice--processing {
				color: #5c4b00;
				background: #fff6d6;
				border: 1px solid #e6cf6b;
			}

			.ribtips-cart-notice--success {
				color: #006b49;
				background: #e7f6ef;
				border: 1px solid #008a5e;
			}

			.ribtips-cart-notice--success::before {
				content: "";
				display: inline-block;
				width: 0.85em;
				height: 0.85em;
				border-radius: 50%;
				background: #008a5e;
				box-shadow: inset 0 0 0 2px #e7f6ef;
				flex: 0 0 auto;
			}

			.ribtips-cart-notice--success:hover,
			.ribtips-cart-notice--success:focus {
				color: #004d34;
				background: #d7f0e4;
				border-color: #006b49;
			}

			.ribtips-cart-notice--error {
				color: #a94442;
				background: #f8e8e8;
				border: 1px solid #e0a0a0;
			}

			@keyframes ribtips-cart-notice-in {
				from {
					opacity: 0;
					transform: translateY(4px);
				}
				to {
					opacity: 1;
					transform: translateY(0);
				}
			}

			#toTopBtn {
			  display: none; /* Hidden by default */
			  position: fixed; /* Fixed/sticky position */
			  bottom: 60px; /* Place the button at the bottom of the page */
			  right: 0px; /* Place the button 30px from the right */
			  z-index: 99; /* Make sure it does not overlap */
			  border: none; /* Remove borders */
			  outline: none; /* Remove outline */
			  background-color: #ccc; /* Set a background color */
			  opacity: 0.4;
			  color: black; /* Text color */
			  cursor: pointer; 
			  padding: 10px; 
			  font-size: 16px; 
			}
			
			#toTopBtn:hover {
			  background-color: #555; /* Add a dark-grey background on hover */
			}


			
			

			.grey-container,.container-grey{
				margin-right:5px;
				margin-left:0px; 
				padding-right:24px; 
				margin-bottom:8px; 
				border:1px solid #ccc; 
				background-color: rgb(250, 250, 250);
				border-radius:0px;
			}
			.white-container,.container-white{
				margin-left:-15px; 
				margin-bottom:8px;
				padding:10px; 
				background-color:#fff;
				border-radius:0px;
			}



		
			.row.display-flex {
			  display: flex;
			  flex-wrap: wrap;
			}
			.row.display-flex > [class*='col-'] {
			  display: flex;
			  flex-direction: column;
			}
			/*Error Handling */
			.error{
				color:red;
			}
			
			.text-muted{
				font-size:10pt;
			}
			/* GENERIC HELPERS */
			.padding-bottom{
				padding-bottom:10px;
			}
			.row-padded-vertical,.padding-vertical{
				padding-top:5px;
				padding-bottom:5px;
			}
			.margin-top{
				margin-top:10px;
			}
			.margin-vertical{
				margin-top:5px;
				margin-bottom:5px;
			}
			.row-included-with-combo{
				background-color:#ffc !important;
			}
			
			
			label{
				display:block;
			}
			.back-to-main{
				padding-left:10px;
				font-size:1em;
			}
			.alert-bg{
				border:1px solid #ccc;
				font-size:13pt;
				font-weight:bold;
				color:#c00;
				margin-bottom:0px;
			}
			
			
			.main-content-container{
				/*
					background-color:#fff;
					border:1px solid #ccc;
					border-radius:0px;
				*/
				margin-top:5px;
			}
			.main-button-container{
				width:45%;
				max-width:200px;
				height:60%;
				max-height:150px;
				margin:15px;
				padding:10px;
				display:block;
				float:left;
			}




			.background-grey{
				ollbackground-color:#efefef;
				background-color:#f7f7f7;
				border:1px solid #ccc; 
				border-radius:0px;
			}
			
			
			.message-box{
				background-color:#fff;
				padding:10px;
				margin-top:10px;
				border-radius:0px;
			}
			.text-link{
				oldcolor:#008a5e;
				font-weight:bold;
				text-decoration:underline;
				text-decoration:none;
			}
			.text-link:hover{
				color:#000;
			}
			
			.btn-primary,.btn-warning,.btn-success{
				color:#fff !important;
				font-weight:bold !important; 
			}
			.btn-continue{
				margin-top:15px !important;
			}
			
			.navbar-dark{
				background-color: #008a5e;
			}
			.btn-border-black{
				border:1px solid black !important;
			}	

			.show-more-items{
				font-size:12pt;
				margin-left:10px;
				color:red;
			}
			.form-header{
				font-weight:bold;
				font-size:15pt;
				border-bottom:1px dashed #008a5e;
				color:#008A5E;
				margin-bottom: 10px;
				margin-left: -5px;
			}
			.btn-primary{
				border-color:green;
				background-color:#008A5E; 
			}
			.btn-primary:hover,.btn-primary:focus,.btn-primary.focus{
				background-color:#5cb85c; 
			}
			.btn btn-success{}
			
			.btn btn-success:hover{}
			
			
			.btn-topping-remove,.btn-cancel{
				border:2px solid red;
				white-space: normal;
				font-weight:bold;
				background-color:#fff;
				color:red !important;
			}
			
			.btn-topping-remove:hover,.btn-cancel:hover{			
				color:#fff !important;
				background-color:#c00;
			}
			.btn-topping-remove-selected{
				color:#fff !important;
				background-color:#c00;
			}
			
			
			/* Accounts */
			
			.select-store-button-container{
				display:inline;
				float:right;
				margin-top:10px;
			}
			
			/*Ticket */
			.ticket-column{

			}
			.ticket-column.ticket-column-collapsed {
				display: none !important;
			}
			/* Desktop ticket toggle - floating tab on the right edge of the viewport */
			.ticket-toggle-nav {
				display: none;
			}
			.ticket-edge-tab {
				position: fixed;
				top: 50%;
				right: 0;
				transform: translateY(-50%);
				z-index: 98;
				align-items: center;
				gap: 6px;
				margin: 0;
				padding: 10px 14px;
				border: 0;
				border-radius: 6px 0 0 6px;
				background-color: #008a5e;
				color: #fff;
				font-size: 12px;
				font-weight: 700;
				letter-spacing: 0.06em;
				text-transform: uppercase;
				white-space: nowrap;
				cursor: pointer;
				box-shadow: -2px 0 8px rgba(0, 0, 0, 0.18);
				transition: background-color 0.15s ease, padding-right 0.15s ease;
			}
			.ticket-edge-tab::before {
				content: "\00BB";
				font-size: 15px;
				line-height: 1;
			}
			body.desktop-ticket-hidden .ticket-edge-tab::before {
				content: "\00AB";
			}
			.ticket-edge-tab:hover,
			.ticket-edge-tab:focus {
				background-color: #00663f;
				color: #fff;
				padding-right: 18px;
				outline: none;
			}
			@media (min-width: 768px) {
				.ticket-toggle-nav.ticket-toggle-nav-active {
					display: flex !important;
				}
			}
			@media (max-width: 767px) {
				.ticket-toggle-nav {
					display: none !important;
				}
			}
			#ticket-container{
				background:#fff;
				oldpadding:0px 6px 0px 6px;
				margin-top:15px;

			}
			#ticket-item-container{
				border:1px solid #ccc;
				padding-left:5px;
				padding-right:5px;
			}
			
			.ticket-item-row{
				padding-top:5px;
				padding-bottom:5px;
			}
			.ticket-item-parent-row{
				margin-top:8px;
			}
			.ticket-item-row:hover{
				background-color:rgb(250,250,250);
			}
			.ticket-item-parent-row:hover{
				background-color:#e4eaef;
			}
			.ticket-item-total-row{
				
			}
			
			.ticket-couponrow{
				
			}
			.ticket-totalrow{
				border-bottom:1px solid black;
			}
			
			/* Item selection page */
			.generic-item-container{
				margin-bottom:10px; 
				margin-right:10px;
				height:200px;
			}
			.trickystix-container{
				margin-bottom:10px;
				margin-right:10px;
			}
			
			
			#item-selection-container{
				border-bottom:2px solid #ccc;
				padding-left:0px;
				margin-left:-10px;
			} 
			.item-selection-item-container{
				padding:25px;
				background-color:#f7f7f7;
				min-height:120px;
			}
			.item-selection-item-row{
				padding:10px;
				border:2px solid #ccc;
				border-radius:0px;
				background-color:#f7f7f7;
				
			}
			.item-selection-menu-sub-category{
				font-size:2rem;
				font-weight:bold;
			}
			.item-selection-menu-price{
				color:#c00;
				font-weight:bold;
				font-size:2.5rem;
				float:right;
				display:inline;
				margin-bottom:5px;
				padding-top:15px;
			}
			.menu-name{ 
				display:inline;
				font-weight:bold;
				font-size:2rem;
				padding-bottom:5px;
			}
			.btn-left{
				float:left;
			}
			.btn-right{
				float:right;
			}
			.item-selection-order-updated-notice{
				color:#c00;
				font-size:14pt; 
				padding-top:8px;
				padding-right:15px;
				line-height:25px;
				text-align:center;
			}
			.item-selection-add-button-container{
				padding-top:15px;
			}
			
			
			/* GENERIC HELPERS */
			
			.vcenter {
				/*Dangerous*/
				display: inline-block;
				vertical-align: middle;
				float: none;
			}
			.no-right-padding{
				margin-right:0px;
				padding-right:2px;
			}


			.padded-container{
				margin:15px;
			}
			.white-background{
				background-color:#fff;
				border:1px solid #ccc;
				border-radius:0px;
				padding:4px;
				margin-bottom:5px;
			}
			
			.grey-background{
				background-color:#f7f7f7;
				border:1px solid #ccc;
			}
			.hover{
				border-top:1px solid #ccc;
			}
			.hover:hover{
				background-color:#eee;
			}
			.light-bg{
				background-color:#afafaf;
			}
			.topping-row{
				padding:0px;
				margin-left:0px;
				margin-top:3px;
			}
			.topping-row:nth-child(odd) {
				background-color: rgb(231, 231, 231);
				border-radius:0px;
			}
			.topping-suffix-select{
				margin-left:5%;
				margin-right:5%;
				display:inline !important;
				max-width:120px;
				font-size:1em;
				padding:4px;
				//height:50px;
			}
			
			.storename{
				font-weight:bold;
				font-size:16pt;
				color:#008a5e;
			}
			
			.done-with-item-container{
				padding:15px;
			}
			.navbar{
				margin-bottom:0px;
			}
			
			.pizza-description-sticky{
				position: -webkit-sticky; /* Safari */
				position: sticky;
				top: 66px;
				z-index: 5;
				margin-top:0px;
				background:#eef2f5;
				border-bottom:3px solid #008a5e;
				box-shadow:0 2px 6px rgba(0, 0, 0, 0.08);
			}
			
			#pizza-description-container{
				width:100%;
				color:#222;
				margin:0px;
				padding:10px 14px;
			}
			.pizza-description-summary{
				max-width:100%;
			}
			.pizza-description-header{
				display:flex;
				flex-wrap:wrap;
				align-items:baseline;
				justify-content:space-between;
				gap:8px 12px;
				padding-bottom:8px;
				margin-bottom:8px;
				border-bottom:1px solid #d0d7de;
			}
			.pizza-description-title-row{
				display:flex;
				flex-wrap:wrap;
				align-items:center;
				gap:8px;
				min-width:0;
			}
			.pizza-description-qty{
				display:inline-block;
				flex-shrink:0;
				padding:2px 8px;
				border-radius:4px;
				background:#008a5e;
				color:#fff;
				font-size:11px;
				font-weight:700;
				line-height:1.4;
				letter-spacing:0.04em;
				text-transform:uppercase;
				font-variant-numeric:tabular-nums;
			}
			.pizza-description-title{
				font-size:15px;
				font-weight:700;
				line-height:1.35;
				color:#1a1a1a;
				letter-spacing:0.01em;
			}
			.pizza-description-price{
				font-size:16px;
				font-weight:700;
				color:#008a5e;
				white-space:nowrap;
				font-variant-numeric:tabular-nums;
			}
			.pizza-description-topping{
				font-size:13px;
				line-height:1.5;
				color:#444;
				padding-left:0;
			}
			.pizza-description-topping-line{
				margin-bottom:4px;
			}
			.pizza-description-half{
				margin-top:6px;
			}
			.pizza-description-topping-item{
				display:inline;
			}
			.pizza-description-topping-active{
				background:#fff8e6;
				border-radius:3px;
				box-shadow:inset 0 0 0 1px #f0ad4e;
				padding:1px 5px;
			}
			.pizza-description-topping-removed{
				color:#b30000;
				font-weight:600;
			}
			.pizza-description-cheese-only{
				display:inline-block;
				margin-top:4px;
				padding:4px 10px;
				border-radius:4px;
				background:#fff5f5;
				border:1px solid #e8b4b4;
				color:#b30000;
				font-size:12px;
				font-weight:700;
				letter-spacing:0.02em;
				text-transform:uppercase;
			}
			.pizza-description-placeholder{
				display:block;
				font-size:13px;
				font-weight:600;
				color:#666;
				font-style:italic;
			}
			.pizza-description-Combo{
				font-size:12px;
				font-weight:700;
				color:#008a5e;
				margin-bottom:6px;
			}
			.pizza-description-price-legacy{
				font-size:12pt;
				padding-left:30px;
				font-weight:bold;
				color:red;
			}
			
			/*Subs */
			.sub-welcome-sub-description{
				text-align:justify;
				padding-top:5px;
			}
			.sub-price{
				font-weight:bold;
				color:#c00;
				float:right !important;
				text-align:right !important;
			}
			
			
			.subwelcome-description-container{
				max-width:30%;
				margin:8px !important;
				height:300px;
			}
			
			
			
			.sub-order-sub-description{
				width:95%; 
				text-align:justify; 
				border:1px solid #ccc;
				padding:5px;
			}

			
			.topping-container{
				height:150px;
				margin-bottom:10px;
				margin-right:10px;
			}
			/* Tricky Stix */

			.sauce-portion-container{
				border:0px solid #7f7f7f;
				max-width:66%;
				padding:6px 6px 6px 24px;
			}
			
			.portion-select-label{
				color:#008a5e;
				font-size:12pt;
				font-weight:bold;
				padding-top:5px;
				padding-bottom:5px;
			}
			.combo-description-container{
				background-color:#f9f9fa;
				border:1px solid #ccc;
				margin-top:5px;
				
			}
			.combo-title{
				font-weight:bold;
			}
			#currentCombo{
				text-align:left;
				background-color:#f9f9fa;
				border:1px solid #ccc;
				padding:5px;
				background-color:#fff;
				border-radius:0px;
			}
			#currentCombo .pizza-specialty-title,
			#comboContainer .pizza-specialty-title{
				font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
				font-size: 1.6875rem;
				font-weight: 600;
				color: #008a5e;
				line-height: 1.3;
				margin-bottom: 4px;
			}
			#currentCombo .pizza-specialty-title-price,
			#comboContainer .pizza-specialty-title-price{
				font-weight: 600;
				color: #008A4E;
				margin-left: 0.35em;
			}
			#currentCombo .pizza-specialty-description,
			#comboContainer .pizza-specialty-description{
				font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
				font-size: 1.3125rem;
				font-weight: 600;
				color: #555;
				line-height: 1.5;
				margin-top: 2px;
			}
			#currentCombo .pizza-specialty-image,
			#comboContainer .pizza-specialty-image{
				position: relative;
			}
			#currentCombo .specialty-favorite-badge,
			#comboContainer .specialty-favorite-badge{
				position: absolute;
				top: 8px;
				left: 8px;
				z-index: 2;
				display: inline-block;
				padding: 4px 10px;
				font-size: 11px;
				font-weight: 700;
				letter-spacing: 0.04em;
				text-transform: uppercase;
				line-height: 1.2;
				color: #5c4500;
				background: linear-gradient(180deg, #f8e7a0 0%, #e0b33a 55%, #c99212 100%);
				border: 1px solid #b8860b;
				border-radius: 3px;
				box-shadow: 0 1px 3px rgba(0, 0, 0, 0.25);
			}
			#currentCombo.is-specialty-favorite,
			#comboContainer .container-item.is-specialty-favorite{
				border-color: #d4a017;
				box-shadow: 0 0 0 1px rgba(212, 160, 23, 0.35);
			}
			.pizza-order-show-more{
				padding-left:20px;
				color:#008a5e;
				font-size:12pt;
			}
			.combo-add-button-container{
				text-align:center;
			}
			/* Section titles: see css/headings.css (.pizza-order-header + h3) */
			.pizza-order-header{
				margin-top:12px;
			}
			
			.included-on-combo{
				display:block;
			}
			
			.topping-title{
				font-weight:bold;
			}
			
			.combo-category-container{
				margin-left:0px;
				margin-bottom:12px;
			}
			
			.btn{
				font-size:13pt;
				padding-top:8px;
				padding-bottom:8px;
			}

			.btn-item,.btn-item-available{
				/* btn-item-available should be deprectated */
				border:2px solid #008A5E !important;
				white-space: normal;
				font-weight:bold;
				background-color:#fff;
				color:#000;
			}

			.btn-item-available:hover,.btn-item:hover{
				background-color:#008A5E;
				color:#fff;
			}
			.btn-item-selected{
				border:2px solid black !important;
				background-color:#008A5E;
				white-space: normal;
				font-weight:bold;
				color:#fff !important;
				margin-top:0px !important;
			}
			.btn-item-selected:hover{
				color:#fff;
			}
			.btn-pizza-size{
				margin-left:5px;
				margin-bottom:5px;
				min-height:70px;
				width:18%;
			}
			
			.btn-tiny-delete{
				padding:1px 6px;
				font-size:9pt;
				display:inline;
				margin:2px 0px;
				float:right;
			}
			.btn-sauce{
				width:22%;
				margin-left:5px;
				margin-bottom:5px;
				min-height:70px;
			}
			.btn-crust{
				width:22% !important;
				margin-left:5px;
				margin-bottom:5px;
				min-height:70px;
			}
			.btn-sauce-portion{
				width:22%;
				margin-left:5px;
				margin-bottom:5px;
			}

			.btn-checkout{
				font-weight:bold;
				background:#c00;
				color:#fff;
				padding:7px 25px 7px 25px; 
				font-size:12pt;
			}
			.btn-checkout:hover{
				border:1px solid #c00;
				background:#e60000;
				color:#fff;
			}
			.btn-lg{
				white-space: normal;
				font-weight:bold;
				padding:15px 25px 15px 25px;
				margin-top:5px;
			}
		
			
			
			
			.btn-pizza-category-available{
				border-bottom:5px solid #008A5E;
			}
			.btn-pizza-category-available:hover{
				background-color: #008A5E;
			}
			.btn-pizza-category-selected{
				background-color: #008A5E;
			}
			.capitalize{
				text-transform:capitalize;				
			}
			.done-with-pizza-container{
				padding:10px;
				margin:10px;
				margin:auto;
				
			}
			
			#headerTotal{
				margin-left:10px;
			}
			.input-20,.btn-20{
				width:19%;
				display:inline;
			}
			.input-25,.btn-25{
				width:21%;
				margin-left:5px;
				display:inline;
			}
			.input-33,.btn-33{
				width:31%;
				margin-left:5px;
				display:inline;
			}
			.input-50,.btn-50{
				width:45%;
				margin-left:5px;
				display:inline;
			}
			.input-95{
				width:95%;
			}
			.smallpadding{
				padding: 10px;
			}
			.currentcombo{
				margin:8px;
			}
			.pizza-portion-title{
				display:block;
				font-size:11px;
				font-weight:700;
				text-transform:uppercase;
				letter-spacing:0.06em;
				color:#008a5e;
				margin-bottom:3px;
			}
			.pizza-combo-note{
				margin-left:16px;
			}
			
			
			.secondary-item-category{
				font-size:20pt;
				margin-top: 15px;
				margin-bottom: 15px;
			}
		
			.secondary-item-container{
				padding:5px;
				border:1px solid #ccc;
				margin-bottom:10px;
			}
			.secondary-item-container:hover{
				background-color:#eee;
			}
			.secondary-item-title{
				float:left;
				font-size:16px;
				text-transform:capitalize;				
			}
			.capitalize{
				text-transform:capitalize;				
			}
			.secondary-item-price{
				float:right;
				font-size:18px;
				font-weight:bold;
				
			}
			.secondary-item-button-container{
				text-align:left;
			}
			.basic-item-container{
				max-width:31%;
				background-color:#efefef;
				margin-right:8px;
				margin-bottom:8px;
				padding:8px;
				border:1px solid #ccc;
				border-radius:0px;
				
			}
			/*Current Pizza Description */
			#current-pizza-description{
				font-size: 13pt;
				font-weight:bold;
				width:100%;
				color:#008a5e;
				padding:8px;
				margin-left:-15px !important;
				margin-right:-15px !important; 
				margin-bottom:10px;
				border:1px dashed #008a5e;
			}
			.group-label{ 
				font-size:1.5rem;
				margin-top:20px;
				margin-bottom:5px; 
				font-weight:bold;
				width:95%;
			}
			.topping-name{
				padding-left:15px;
			}
			.checkout-title{
				font-weight:bold;
			}
			.checkout-description{
				color:#000 !important;
				padding-left:15px;
			}
			
			
			.bg-success{
				background-color:#008A5E !important;
			}
			.bg-form-header{
				background-color:#fff;
				color:#7f7f7f;
				/* #7F7F7F;*/
			}
			.bg-alert{
				background-color:pink;
				border:1px solid #ccc;
				font-weight:bold;
				font-size:13pt;
			}
			/* MENU */
		
		
			.secondary-nav{
				/*TODO: Adjust padding for larger screen sizes */
				position:fixed;
				left:0px;
				right:0px;
				margin-top:38px;
				z-index:10;
				min-height:49px;
				background-color:#008A5E; 
				padding:15px;
				 -webkit-backface-visibility: hidden;
			}
			.secondary-nav-link{
				color:#fff !important;
				font-weight:bold;
			}
			
			.footer{
				position:fixed; 
				bottom:0px; 
				left:0px; 
				height:60px;
				padding-top:8px;
				border-top:2px solid #ccc; 
				background:#e7e7e7 !important;
				width:100%; 
				z-index:5;
			}
			
			
			.btn-warning {
				font-weight:bold;
				color:#000;
			}
			.btn-info{
				font-weight:bold;
			}
			.btn-success{
				background-color:#008A5E;
			}
			.btn-primary{
				color:#fff ;
				font-weight:bold;
			}
			.old-btn-primary{
				background-color: #008A5E;
				border-color:green;
			}
			.btn-secondary-nav{
				color:#fff !important;
				font-weight:bold;
				background-color: #008A5E;
				border-color:#fff !important;
			}
			.btn-secondary-nav:hover{
				background-color: #666;
				/*complimentary red 8a002c*/
			}
			.btn-primary:hover{
				background-color: #666;
				/*complimentary red 8a002c*/
				/* light green background-color: #00a46f;*/
			}
			
				
			#subtotal{
				margin-top:5px;
				border:1px solid #7F7F7F;
			}
			#couponinfo{
				padding:5px;
				font-size:14pt;
			}
			
			#secondary-bar{
				border-bottom:2px dashed #ddd;
				margin-top:0px !important;
				margin-bottom:10px;
				padding-bottom:5px;
				
			}
			/* Buttons */
			.btn-item-available{
				border:2px solid #008A5E !important;
				white-space: normal;
				font-weight:bold;
				background-color:#fff;
				color:#008A5E;
			}

			.btn-item-available:hover{
				background-color:#008A5E;
				color:#fff;
			}
			.btn-item-selected{
				border:2px solid black !important;
				background-color:#008A5E;
				white-space: normal;
				font-weight:bold;
				color:#fff;
			}
			.btn-item-selected:hover{
				color:#fff;
			}
			.btn-zesty{
				
			}
			
			/* Button Container */			
			.pizza-welcome-button-container{
				text-align:center;
				padding-top:15px;
				padding-bottom:10px;
			}
			/* Buttons */
			.login-box{
				border:1px solid #ddd;			
				margin:5px 5px 10px 5px;
				/*007 - Changed from 2px on August 12 */
			}
			
			.header-success{
				color:#000;
				font-weight:bold;
				font-size:16pt;
				padding-top:7px; 
				padding-bottom:7px;
				padding-right:0px;
			}
			
			.border-bottom{
				border-top:1px solid #ddd;
				margin-top:3px;
				padding-top: 3px;
				padding-bottom:5px;
			
			}
			
			.section-selector{
				background-color:#eee;
				padding-top:10px;
				padding-bottom:10px;
				height:60px;
				line-height: 14px !important;
				white-space: normal;
				font-weight:bold;
				text-align:center;
				color:#008a5e;
			}
			.section-highlighted{
				background-color:#008a5e;
				color:#fff;
			}
			.section-selector-highlighted:hover{
				cursor:pointer;
			}
			.section-selector:hover{
				background-color:#008a5e;
				color:#fff;
				cursor: pointer;
			}
			.section-row{
				margin-bottom:5px;
			}
			/* Pizza Welcome Page */
			.pizza-welcome-item-description{
				padding:10px;
				font-size:12pt; 
			}
			.pizza-welcome-combo-description{
				padding:5px;
				font-size:12pt;
			}
			.img-combo{
				padding-top:10px;
			}
			.img-fluid{
				max-width: 100%;
				height: auto;
			}
			
			.combo-box{
				border-bottom:1px dashed #008a5e;
				margin-bottom:8px;
				vertical-align:top;
			}
			#NoCombo{
				padding-left:15px;
			}
			
			.btn-group{
				color: #008a5e;
				border: 1px solid #008a5e;
				background-color:#fff;
			}
			
			.btn-item {
				color:#000;
				border:2px solid #008a5e;
				font-size:13pt;
			}
			.btn-item:hover{
				
			}
			
			.menu-item{
				margin: 10px 0px;
				text-align:center;
				border:1px solid #008a5e !important;
			}
			
		
			/* end ticket styles */
	
			/* Form styles  */
			.required{
				border:1px solid red;
			}
			
			.form-group{
				margin-top:5px;
			}
			/* Pizza Form */
			.pizza-sub-option{
				margin-left:10px;
				margin-top:5px;
			}
			#SauceSuffix{
				display:inline;
				width:60%;
				min-width:100px;
				margin-left:10px;
				
			}
			/* Checkout process */
			.apartment-input{
				display:inline !important;
				max-width:120px;
			}
			.zip-input{
				display:inline !important;
				max-width:120px;
			}
			.state-input{
				display:inline !important;
				max-width:60px;
			}
			
			.checkout-row{
				padding-top:6px;
				padding-bottom:6px;
				border-top:1px dashed #ccc;
			}
			
			/* NOT SURE IF USED */
			.input-20{
				width:18%;
				display:inline;
			}
			.input-25{
				width:23%;
				display:inline;
			}
			
			/* End form styles */
			.btn-previous-orders{
				
			}
			.btn-previous-orders-container{
				width:100%;
				padding:12px;
			}
			.checkout-button-container{
				padding:12px;
			}

			/* Final checkout submit / change-order-type actions */
			.checkout-submit-actions {
				margin-top: 18px;
				margin-bottom: 8px;
				padding-top: 16px;
				border-top: 1px solid #d5dbe3;
			}
			.checkout-submit-actions-inner {
				display: flex;
				flex-wrap: wrap;
				align-items: stretch;
				justify-content: center;
				gap: 12px;
				max-width: 640px;
				margin: 0 auto;
			}
			.checkout-action-btn {
				box-sizing: border-box;
				flex: 1 1 calc(50% - 6px);
				min-width: 140px;
				max-width: 300px;
				min-height: 52px;
				padding: 12px 16px;
				font-size: 16px;
				font-weight: 700;
				line-height: 1.25;
				white-space: normal;
				text-align: center;
				border-radius: 10px;
				border-width: 2px;
				border-style: solid;
				box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
				transition: background-color 0.18s ease, border-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease, transform 0.12s ease;
			}
			.checkout-action-btn--solo {
				flex: 1 1 100%;
				max-width: 360px;
			}
			.checkout-action-btn--secondary {
				background: #fff;
				border-color: #008a5e;
				color: #006b49;
			}
			.checkout-action-btn--secondary:hover,
			.checkout-action-btn--secondary:focus {
				background: #f3f8f6;
				border-color: #006b49;
				color: #00553a;
				text-decoration: none;
				box-shadow: 0 4px 12px rgba(0, 138, 94, 0.18);
			}
			.checkout-action-btn--primary {
				background: #d91f3f;
				border-color: #d91f3f;
				color: #fff;
				box-shadow: 0 4px 14px rgba(217, 31, 63, 0.35);
			}
			.checkout-action-btn--primary:hover,
			.checkout-action-btn--primary:focus {
				background: #b01832;
				border-color: #b01832;
				color: #fff;
				box-shadow: 0 6px 18px rgba(217, 31, 63, 0.45);
			}
			.checkout-action-btn--primary:active {
				transform: translateY(1px);
			}
			.checkout-action-btn--primary[disabled],
			.checkout-action-btn--primary:disabled {
				opacity: 0.7;
				cursor: wait;
				box-shadow: none;
			}
			@media (max-width: 479px) {
				.checkout-submit-actions-inner {
					flex-direction: column;
				}
				.checkout-action-btn {
					flex: 1 1 auto;
					max-width: none;
					width: 100%;
				}
			}

			/* Account Creation Form */
			#accounts_fname,#accounts_lname,#Delivery_FirstName,#Delivery_LastName,.acccount-name {
				display:inline;
				width:40%;
				min-width:125px;
				max-width:200px;
			}
			#accounts_areacode{
				display:inline;
				width:70px;
			}
			#accounts_prefix{
				display:inline;
				width:70px;
				margin-left:5px;
			}
			#accounts_suffix{
				display:inline;
				width:90px;
				margin-left:5px;
			}
			#accounts_apt,#accounts_state{
				max-width:200px;
			}
			#accounts_zip{
				max-width:150px;
			}
			#accounts_city, #accounts_email,#accounts_password,#accounts_confirmpassword{
				max-width:250px;
			}

			.btn-options{
				font-size:11pt;
				max-width:118px;
				min-width:118px;
				min-height:70px;
				max-height:70px;
				margin-bottom:5px;
				margin-right:5px;
			}
			.btn-chips,.btn-cheese{
				font-size:10pt !important;
			}
			.btn-bites{
				font-size:11pt;
				max-width:90px;
				min-width:90px;
				min-height:60px;
				max-height:60px;
				margin-bottom:5px;
				margin-right:5px;
				display:inline !important;
			}
			.btn-bites-sauces{
				font-size:10pt;
				max-width:110px;
				min-width:110px;
				min-height:60px;
				max-height:60px;
				margin-bottom:5px;
				margin-right:5px;
			}
			
			.btn-topping-category{
				font-size:11pt;
				min-height:60px;
				max-height:60px;
				width:150px;
			}
			
			//Generic Item Selection
			.item-selection-menu-price{
				padding-top:20px;
			}
			
			/* Checkout Form */ 
			
			#ccSecurityCode{
				width:55px;
				padding:5px;
			}

			.cc-number{
				display:inline;
				max-width:80px; 
			}
			
			#visaContainer{
				margin-left:35%;
				float:left;
			}
			#amexContainer{
				margin-left:35%;
				float:left;
			}
			/* Generic Inputs */
			.input-50{
				display:inline;
				max-width:50px;
			}
			.input-60{
				display:inline;
				max-width:60px;
			}
			.input-70{
				display:inline;
				max-width:70px;
			}
			.input-80{
				display:inline;
				max-width:80px;
			}
			.input-100{
				display:inline;
				max-width:100px;
			}
			.input-150{
				display:inline;
				max-width:150px;
			}
			.input-175{
				display:inline;
				max-width:175px;
			}
			.input-200{
				display:inline;
				max-width:200px;
			}
			.input-350{
				display:inline;
				max-width:350px;
			}
			
			


			.confirm-order-footer-buttons {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 8px;
	max-width: 640px;
	margin: 0 auto;
	padding: 0 10px;
}
.confirm-order-footer-buttons .btn-footer {
	flex: 1 1 auto;
	min-width: 0;
	white-space: normal;
	font-size: 14px;
	padding: 8px 6px;
}
.btn-footer{
				margin-top:0px !important;
			}
			.main-link{
				color:#008A5E;
				padding:0px; 
				margin:0px;
				width:100%; 
				text-decoration:none;
			}
			.main-link:hover{
				background-color:#008A5E;
				color:#fff;
				text-decoration:none;
			}
			.main-menu-header{
				color:#008A5E;
				padding:0px; margin:auto;
			}
			.main-menu-header:hover{
				background-color:#008A5E;
				text-decoration:none;
				color:#fff;
			}
			.main-item-header{
				color:#000;
				font-size:2rem;
				font-weight:bold;
				padding-left:0px;
				padding-right:0px;
				text-align:center;
				padding-bottom:0px;
				margin-bottom:0px;
				line-height:44px;
				background-color:#eaeaea;
				border-left:1px solid #ccc;
				border-top:1px solid #ccc;
				border-right:1px solid #ccc;
				
			}
			
			.img-main-link{
				border:1px solid #ccc;
				
			}

			.main-item-image-box{
				padding:0px;
				max-height:125px !important;
				overflow:hidden !important;
			}
			
			.btn-main-item-category{
				color:black;
				font-size:25pt;
				font-weight:bold;
				border:2px solid black;
			}
			.btn-main-item-category:hover{
				background-color:#008A5E;
				color:white;
			}
	
			
			
			
			.btn-checkout{
				padding:8px;
				margin:4px;
				color:#fff !important;
			}
			.btn-checkout:hover{
				color:#fff;
			}
			
			.topping-row{
				padding:8px 0px;
				margin-left:0px;
			}
			.topping-suffix-select{
				//max-width:100px;
				//line-height:1.42;
				//padding:0px;
			}
			
			.item-selection-item-container{
				padding:10px;
			}
			.item-selection-item-row{
				padding-bottom:10px;
			}
			.combo-description-container{
				padding:15px;
			}
			
			.pizza-description-header{
				line-height:1.35;
			}
			.pizza-welcome-combo-description{
				display:none;
			}
			.pizza-combo-scrolling-container > .row {
				overflow: scroll;
				overflow-x: auto;
				overflow-y: hidden;
				white-space: nowrap;
			}
			.pizza-combo-scrolling-container > .row > .col-sm-12{
				display: inline-block !important;
				float: none !important;

			}

			.item-box{
				width:100%;
			}

			
			
		}	
		
			
			
			
/* Coupons and Specials page */
.coupons-specials-page h1 {
	margin-top: 10px;
	margin-bottom: 15px;
}

/* Card grid — matches the Pasta ordering page (css/main-menu-clean.css) */
@media (min-width: 1200px) {
	.coupons-specials-page .main-menu-clean .main-menu-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.coupons-specials-page .main-menu-clean .coupon-card-banner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 44px;
	padding: 10px 14px;
	/* Dark brand green title bar */
	background: linear-gradient(180deg, #007a54 0%, #006b49 55%, #00553a 100%);
}
.coupons-specials-page .main-menu-clean .coupon-card-banner-special {
	background: linear-gradient(180deg, #007a54 0%, #006b49 55%, #00553a 100%);
}
.coupons-specials-page .main-menu-clean .coupon-card-banner-flash {
	/* Flash sale stays distinct (deep red) */
	background: linear-gradient(180deg, #a94442 0%, #800000 100%);
}
.coupon-card-banner-label {
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fff;
}
.coupon-card-banner-special .coupon-card-banner-label {
	color: #fff;
}
.coupon-card-applied-badge {
	padding: 3px 10px;
	border-radius: 12px;
	background: #fff;
	color: #00553a;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.coupons-specials-page .main-menu-clean .main-menu-card.coupon-card-active,
.coupons-specials-page .main-menu-clean .main-menu-card.coupon-card-active:hover {
	background-color: #fff;
	border-color: #006b49;
}
.coupons-specials-page .main-menu-clean .main-menu-card-body .coupon-card-title {
	font-size: 16px;
	font-weight: 700;
	color: #222;
	margin-bottom: 6px;
}
.coupons-specials-page .main-menu-clean .main-menu-card-body .coupon-card-dates {
	font-size: 12px;
	font-weight: 400;
	color: #666;
	text-indent: 0;
	margin-bottom: 8px;
}
.coupons-specials-page .main-menu-clean .main-menu-card-body .coupon-card-desc {
	font-size: 13px;
	color: #444;
	margin-bottom: 0;
}
.coupons-specials-page .main-menu-clean .main-menu-card-body {
	display: flex;
	flex-direction: column;
}
/* Keeps the buttons on a row of cards aligned when descriptions differ in length */
.coupons-specials-page .main-menu-clean .main-menu-card-actions {
	display: flex;
	flex-direction: column;
	gap: 8px;
	align-items: center;
	margin-top: auto;
	padding-top: 10px;
}
.coupons-specials-page .main-menu-clean .main-menu-card-actions .btn {
	width: 100%;
	max-width: 280px;
	margin: 0;
	white-space: normal;
}

/* Discount code entry — sits in the same grid as coupon cards */
.coupons-specials-page .coupon-code-entry-card .coupon-card-desc {
	margin-bottom: 12px;
}
.coupons-specials-page .coupon-code-form-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: stretch;
	justify-content: center;
	margin-top: 4px;
}
.coupons-specials-page .coupon-code-input {
	flex: 1 1 140px;
	min-width: 0;
	max-width: 100%;
	height: 42px;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-weight: 600;
	border: 2px solid #b8c4be;
	border-radius: 8px;
	box-shadow: none;
}
.coupons-specials-page .coupon-code-input:focus {
	border-color: #006b49;
	outline: none;
	box-shadow: 0 0 0 3px rgba(0, 107, 73, 0.18);
}
.coupons-specials-page .coupon-code-form-row .btn {
	flex: 0 0 auto;
	min-width: 110px;
	height: 42px;
	padding: 8px 14px;
}
.coupons-specials-page .coupon-code-locked {
	margin: 8px 0 0;
	text-align: center;
}

.coupon-recommended-badge {
	position: absolute;
	top: 10px;
	right: 12px;
	background: #008a5e;
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 12px;
	text-transform: uppercase;
}
.coupon-auto-note {
	font-size: 12px;
	font-style: italic;
	margin-bottom: 8px;
}
.coupon-millwood-note {
	display: inline-block;
	font-size: 14px;
	font-weight: 700;
	font-style: normal;
	color: #a40000;
	background-color: #fff4f4;
	border: 1px solid #e8b4b4;
	border-left: 4px solid #c00;
	border-radius: 4px;
	padding: 6px 12px;
	margin: 6px 0 10px 0;
}
.coupons-order-total {
	margin-bottom: 15px;
	font-size: 15px;
}

/* Welcome / accounts page specials notice */
.welcome-specials {
	margin: 12px 0 20px;
	padding: 0;
	background: #fff;
	border: 1px solid #d5dbe3;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	overflow: hidden;
}
.welcome-specials-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px 16px;
	padding: 14px 16px;
	background: linear-gradient(180deg, #00a06d 0%, #008a5e 100%);
	color: #fff;
}
.welcome-specials--flash .welcome-specials-header {
	background: linear-gradient(180deg, #a94442 0%, #800000 100%);
}
.welcome-specials--timed .welcome-specials-header {
	background: linear-gradient(180deg, #c99212 0%, #a87810 100%);
}
.welcome-specials-kicker {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	min-width: 0;
}
.welcome-specials-badge {
	display: inline-block;
	padding: 3px 9px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	line-height: 1.2;
	color: #008a5e;
	background: #fff;
	border-radius: 999px;
}
.welcome-specials--flash .welcome-specials-badge {
	color: #800000;
}
.welcome-specials--timed .welcome-specials-badge {
	color: #7a5a00;
}
.welcome-specials-title {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
	color: #fff;
}
.welcome-specials-link {
	flex: 0 0 auto;
	padding: 7px 12px;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	text-decoration: none;
	border: 1px solid rgba(255, 255, 255, 0.65);
	border-radius: 6px;
	background: rgba(255, 255, 255, 0.12);
}
.welcome-specials-link:hover,
.welcome-specials-link:focus {
	color: #fff;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.22);
	border-color: #fff;
}
.welcome-specials-list {
	margin: 0;
	padding: 14px 16px 6px 36px;
	list-style: disc;
}
.welcome-specials-list li {
	margin: 0 0 10px;
	padding: 0;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.35;
	color: #222;
}
.welcome-specials-list li:last-child {
	margin-bottom: 4px;
}
.welcome-specials-highlight {
	margin: 4px auto 14px;
	padding: 10px 12px;
	width: 50%;
	max-width: 100%;
	box-sizing: border-box;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	background: maroon;
	border-radius: 6px;
	text-align: center;
}
.welcome-specials-note {
	margin: 0;
	padding: 12px 16px 14px;
	font-size: 13px;
	line-height: 1.4;
	color: #666;
}
@media (max-width: 479px) {
	.welcome-specials-title {
		font-size: 18px;
	}
	.welcome-specials-header {
		padding: 12px 14px;
	}
	.welcome-specials-list {
		padding-left: 32px;
	}
}

/* Welcome / accounts login + guest cards */
.welcome-page {
	margin-bottom: 24px;
}
.welcome-page-title {
	margin-top: 8px;
	margin-bottom: 12px;
}
.welcome-auth-row {
	margin-left: -8px;
	margin-right: -8px;
}
.welcome-auth-row > [class*="col-"] {
	padding-left: 8px;
	padding-right: 8px;
	margin-bottom: 16px;
}
.welcome-page #welcomeCustomersDiv,
.welcome-page #welcomeGuestDiv,
.welcome-page .welcome-auth-card {
	max-width: none;
	width: 100%;
	float: none;
	margin: 0;
	padding: 0;
	height: 100%;
	display: flex;
	flex-direction: column;
	background: #fff;
	border: 2px solid #5a6570;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	overflow: hidden;
	transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.welcome-page #welcomeCustomersDiv:hover,
.welcome-page #welcomeGuestDiv:hover,
.welcome-page .welcome-auth-card:hover {
	background-color: #f3f8f6;
	border-color: #008a5e;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.accounts-login-page {
	margin-top: 8px;
	margin-bottom: 28px;
}
.welcome-auth-btn--secondary {
	background: #fff;
	border: 2px solid #5a6570;
	color: #1a1a1a;
}
.welcome-auth-btn--secondary:hover,
.welcome-auth-btn--secondary:focus {
	background: #f3f8f6;
	border-color: #008a5e;
	color: #008a5e;
}
.accounts-login-page .welcome-auth-create {
	margin-top: 4px;
	text-align: center;
}
.welcome-auth-header {
	padding: 16px 18px 12px;
	border-bottom: 1px solid #e8edf2;
	background: #f7faf8;
}
.welcome-auth-card--guest .welcome-auth-header {
	background: #faf8f4;
}
.welcome-auth-title {
	margin: 0 0 6px;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
	color: #1a1a1a;
}
.welcome-auth-subtitle {
	margin: 0;
	font-size: 13px;
	line-height: 1.4;
	color: #666;
}
.welcome-auth-form,
.welcome-auth-guest-body {
	padding: 18px;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}
.welcome-auth-field {
	margin-bottom: 14px;
}
.welcome-auth-field label {
	display: block;
	margin: 0 0 6px;
	font-size: 13px;
	font-weight: 700;
	color: #333;
}
.welcome-auth-field .form-control {
	max-width: none;
	height: 42px;
	padding: 8px 12px;
	font-size: 15px;
	border: 1px solid #b8c0cc;
	border-radius: 6px;
	box-shadow: none;
}
.welcome-auth-field .form-control:focus {
	border-color: #008a5e;
	box-shadow: 0 0 0 3px rgba(0, 138, 94, 0.15);
}
.welcome-auth-error {
	margin-bottom: 14px;
}
.welcome-auth-actions {
	margin-top: 4px;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 12px;
}
.welcome-auth-btn {
	display: block;
	width: 100%;
	padding: 11px 16px;
	font-size: 16px;
	font-weight: 700;
	border-radius: 8px;
	text-align: center;
}
.welcome-auth-secondary-link {
	font-size: 14px;
	font-weight: 700;
	color: #008a5e;
	text-align: center;
}
.welcome-auth-secondary-link:hover,
.welcome-auth-secondary-link:focus {
	color: #006b49;
	text-decoration: underline;
}
.welcome-auth-guest-body {
	justify-content: center;
	text-align: center;
	gap: 4px;
}
.welcome-auth-or {
	margin: 14px 0 8px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #999;
}
.welcome-auth-create {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
	color: #555;
}
@media (min-width: 768px) {
	.welcome-auth-row {
		display: flex;
		flex-wrap: wrap;
	}
	.welcome-auth-row > [class*="col-"] {
		display: flex;
		flex-direction: column;
	}
}
@media (max-width: 767px) {
	.welcome-auth-card--guest {
		margin-top: 0;
	}
}

/* Select Store page (guest + logged-in change store) */
.store-select-page {
	margin-bottom: 28px;
}
.store-select-title {
	margin-top: 8px;
	margin-bottom: 8px;
}
.store-select-lead {
	margin: 0 0 12px;
	font-size: 15px;
	color: #555;
}
.store-select-notice {
	margin: 0 0 18px;
	padding: 12px 14px;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.4;
	color: #7a3b00;
	background: #fff8e8;
	border: 1px solid #e0c48a;
	border-left: 4px solid #c99212;
	border-radius: 8px;
}
.store-select-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
}
@media (min-width: 768px) {
	.store-select-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
}
@media (min-width: 1100px) {
	.store-select-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.store-select-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	background: #fff;
	border: 2px solid #5a6570;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	overflow: hidden;
	transition: background-color 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}
.store-select-card:hover {
	background-color: #f3f8f6;
	border-color: #008a5e;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.store-select-card--current {
	border-color: #008a5e;
	box-shadow: 0 0 0 1px rgba(0, 138, 94, 0.25);
}
.store-select-card--unavailable {
	opacity: 0.92;
}
.store-select-card--unavailable:hover {
	border-color: #5a6570;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
.store-select-card-body {
	padding: 16px 18px 10px;
	flex: 1 1 auto;
}
.store-select-card-topline {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-bottom: 6px;
}
.store-select-name {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
	color: #008a5e;
}
.store-select-current-badge {
	display: inline-block;
	padding: 3px 9px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #fff;
	background: #008a5e;
	border-radius: 999px;
}
.store-select-address,
.store-select-phone {
	margin: 0 0 6px;
	font-size: 14px;
	line-height: 1.4;
	color: #444;
}
.store-select-map-link,
.store-select-phone a {
	font-weight: 700;
	color: #008a5e;
}
.store-select-map-link {
	margin-left: 8px;
}
.store-select-status {
	margin: 10px 0 0;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
	color: #a94442;
}
.store-select-status-box {
	margin: 0 0 10px;
	padding: 10px 12px;
	font-size: 13px;
	line-height: 1.4;
	color: #a94442;
	background: #fff5f5;
	border: 1px solid #e8b4b4;
	border-radius: 6px;
}
.store-select-card-actions {
	padding: 12px 18px 16px;
	border-top: 1px solid #e8edf2;
	background: #fafbfc;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.store-select-form {
	margin: 0;
}
.store-select-btn {
	display: block;
	width: 100%;
	padding: 11px 16px;
	font-size: 15px;
	font-weight: 700;
	border-radius: 8px;
	text-align: center;
}
a.store-select-btn {
	text-decoration: none;
}
.store-select-card-actions .btn-item.store-select-btn {
	background: #fff;
	border: 2px solid #008a5e;
	color: #006b49;
}
.store-select-card-actions .btn-item.store-select-btn:hover,
.store-select-card-actions .btn-item.store-select-btn:focus {
	background: #008a5e;
	border-color: #006b49;
	color: #fff;
}
.store-select-btn--keep {
	background: #fff;
	border: 2px solid #008a5e;
	color: #006b49;
}

/* Accounts home — Store Info + Your Account */
.accounts-home-page {
	margin-top: 20px;
	margin-bottom: 28px;
	padding-top: 4px;
}
.accounts-home-alert {
	margin: 0 0 16px;
	border: 1px solid #e0a8a8;
	border-radius: 8px;
}
.accounts-home-continue {
	max-width: 360px;
	margin: 0 auto 18px;
}
.accounts-home-mobile-start {
	margin: 8px 0 18px;
	padding: 14px;
	border: 2px solid #5a6570;
	border-radius: 10px;
	background: #fff;
}
.accounts-home-mobile-start .btn {
	margin-bottom: 8px;
}
.accounts-home-mobile-start .btn:last-child {
	margin-bottom: 0;
}
.accounts-home-credit {
	margin: 0 0 16px;
	padding: 12px 14px;
	font-size: 15px;
	font-weight: 700;
	color: #0a5c40;
	background: #e8f6f0;
	border: 1px solid #9fd4be;
	border-left: 4px solid #008a5e;
	border-radius: 8px;
}
.accounts-home-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
}
@media (min-width: 992px) {
	.accounts-home-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
		align-items: stretch;
	}
}
.accounts-home-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	background: #fff;
	border: 2px solid #5a6570;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	overflow: hidden;
}
.accounts-home-card-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 12px;
	padding: 14px 18px;
	border-bottom: 1px solid #e8edf2;
	background: #f7faf8;
}
.accounts-home-card-title {
	margin: 0;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.25;
	color: #1a1a1a;
}
.accounts-home-card-link {
	display: inline-block;
	padding: 5px 10px;
	font-size: 13px;
	font-weight: 700;
	color: #008a5e;
	white-space: nowrap;
	border: 1px solid #008a5e;
	border-radius: 6px;
	background: #fff;
	text-decoration: none;
	line-height: 1.2;
}
.accounts-home-card-link:hover,
.accounts-home-card-link:focus {
	color: #006b49;
	background: #f3f8f6;
	border-color: #006b49;
	text-decoration: none;
}
.accounts-home-card-body {
	padding: 16px 18px 18px;
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
}
.accounts-home-store-name {
	margin: 0 0 8px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.3;
	color: #008a5e;
}
.accounts-home-address,
.accounts-home-phone {
	margin: 0 0 4px;
	font-size: 14px;
	line-height: 1.45;
	color: #444;
}
.accounts-home-address--city {
	margin-bottom: 8px;
}
.accounts-home-phone a,
.accounts-home-inline-link {
	font-weight: 700;
	color: #008a5e;
}
.accounts-home-phone a:hover,
.accounts-home-phone a:focus,
.accounts-home-inline-link:hover,
.accounts-home-inline-link:focus {
	color: #006b49;
	text-decoration: underline;
}
.accounts-home-inline-link {
	margin-left: 6px;
	white-space: nowrap;
}
.accounts-home-notes {
	margin: 12px 0 0;
	padding-left: 20px;
	font-size: 13px;
	line-height: 1.45;
	color: #555;
}
.accounts-home-notes li {
	margin-bottom: 6px;
}
.accounts-home-status {
	margin: 12px 0 0;
	padding: 10px 12px;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.4;
	border-radius: 8px;
}
.accounts-home-status--warn {
	color: #7a3b00;
	background: #fff8e8;
	border: 1px solid #e0c48a;
	border-left: 4px solid #c99212;
}
.accounts-home-status--danger {
	color: #8a1f1f;
	background: #fdf2f2;
	border: 1px solid #e8b4b4;
	border-left: 4px solid #c0392b;
}
.accounts-home-actions {
	margin-top: auto;
	padding-top: 16px;
	display: flex;
	flex-direction: column;
	gap: 10px;
}
.accounts-home-section {
	padding-bottom: 16px;
	margin-bottom: 16px;
	border-bottom: 1px solid #e8edf2;
}
.accounts-home-section:last-child {
	padding-bottom: 0;
	margin-bottom: 0;
	border-bottom: 0;
}
.accounts-home-section-title {
	margin: 0 0 8px;
	font-size: 15px;
	font-weight: 700;
	color: #1a1a1a;
}

/* Past Orders */
.past-orders-page {
	margin-top: 20px;
	margin-bottom: 28px;
	padding-top: 4px;
}
.past-orders-header {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 10px 14px;
	margin-bottom: 16px;
}
.past-orders-title {
	margin: 0;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	color: #1a1a1a;
}
.past-orders-empty {
	max-width: 480px;
	margin: 0 auto;
	padding: 28px 22px;
	text-align: center;
	background: #fff;
	border: 2px solid #5a6570;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}
.past-orders-empty-title {
	margin: 0 0 8px;
	font-size: 18px;
	font-weight: 700;
	color: #1a1a1a;
}
.past-orders-empty-text {
	margin: 0 0 18px;
	font-size: 14px;
	line-height: 1.45;
	color: #666;
}
.past-orders-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	align-items: stretch;
}
@media (min-width: 768px) {
	.past-orders-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
}
@media (min-width: 1100px) {
	.past-orders-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}
.past-orders-card {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	background: #fff;
	border: 2px solid #5a6570;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	overflow: hidden;
	transition: border-color 0.15s ease, box-shadow 0.15s ease, background-color 0.15s ease;
}
.past-orders-card:hover {
	border-color: #008a5e;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}
.past-orders-card-header {
	padding: 14px 16px 12px;
	border-bottom: 1px solid #e8edf2;
	background: #f7faf8;
}
.past-orders-card-topline {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	justify-content: space-between;
	gap: 8px 12px;
	margin-bottom: 4px;
}
.past-orders-date {
	margin: 0;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.3;
	color: #1a1a1a;
}
.past-orders-total {
	font-size: 17px;
	font-weight: 700;
	color: #008a5e;
	white-space: nowrap;
}
.past-orders-meta {
	margin: 0;
	font-size: 12px;
	line-height: 1.45;
	color: #666;
}
.past-orders-dot {
	margin: 0 4px;
	color: #aaa;
}
.past-orders-card-body {
	padding: 12px 16px 14px;
	flex: 1 1 auto;
}
.past-orders-items-empty {
	margin: 0;
	font-size: 13px;
	color: #777;
}
.past-orders-items {
	list-style: none;
	margin: 0;
	padding: 0;
}
.past-orders-item {
	display: flex;
	align-items: flex-start;
	gap: 8px;
	padding: 3px 0;
	font-size: 14px;
	line-height: 1.4;
	color: #222;
	border-bottom: 1px solid #f0f2f4;
}
.past-orders-item:last-child {
	border-bottom: 0;
}
.past-orders-item--child {
	padding-left: 10px;
	font-size: 13px;
	color: #555;
	border-bottom-color: transparent;
}
.past-orders-item-qty {
	flex: 0 0 auto;
	min-width: 1.25em;
	font-weight: 700;
	color: #008a5e;
}
.past-orders-item-prefix {
	flex: 0 0 auto;
	min-width: 1.5em;
	font-weight: 700;
	color: #888;
}
.past-orders-item-text {
	min-width: 0;
}
.past-orders-card-actions {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 12px 16px 14px;
	border-top: 1px solid #e8edf2;
	background: #fafbfc;
	margin-top: auto;
}
.past-orders-card-actions .welcome-auth-btn {
	width: 100%;
	padding: 9px 14px;
	font-size: 14px;
}
.past-orders-unavailable {
	display: block;
	padding: 9px 10px;
	font-size: 13px;
	font-weight: 600;
	text-align: center;
	color: #777;
	background: #f0f2f4;
	border: 1px solid #d5dae0;
	border-radius: 8px;
}
.past-orders-footer {
	max-width: 320px;
	margin: 20px auto 0;
}

/* Edit Account */
.edit-account-page {
	margin-top: 20px;
	margin-bottom: 28px;
	padding-top: 4px;
	max-width: 1100px;
}
.edit-account-header {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	justify-content: space-between;
	gap: 10px 14px;
	margin-bottom: 16px;
}
.edit-account-title {
	margin: 0;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	color: #1a1a1a;
}
.edit-account-lead {
	margin: 6px 0 0;
	font-size: 14px;
	line-height: 1.4;
	color: #666;
}
.edit-account-form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.edit-account-address-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
	align-items: stretch;
}
@media (min-width: 992px) {
	.edit-account-address-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 18px;
	}
}
.edit-account-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: #fff;
	border: 2px solid #5a6570;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	overflow: hidden;
}
.edit-account-card-header {
	padding: 14px 18px 12px;
	border-bottom: 1px solid #e8edf2;
	background: #f7faf8;
}
.edit-account-card-header--billing {
	background: #faf8f4;
}
.edit-account-card-title {
	margin: 0 0 4px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.25;
	color: #1a1a1a;
}
.edit-account-card-subtitle {
	margin: 0;
	font-size: 13px;
	line-height: 1.4;
	color: #666;
}
.edit-account-card-body {
	padding: 16px 18px 18px;
	flex: 1 1 auto;
}
.edit-account-login-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0 16px;
}
@media (min-width: 768px) {
	.edit-account-login-grid {
		grid-template-columns: 1fr 1fr;
	}
}
.edit-account-field {
	margin-bottom: 14px;
}
.edit-account-field:last-child {
	margin-bottom: 0;
}
.edit-account-login-grid .edit-account-field {
	margin-bottom: 14px;
}
.edit-account-field--short {
	max-width: 180px;
}
.edit-account-field label,
.edit-account-label {
	display: block;
	margin: 0 0 6px;
	font-size: 13px;
	font-weight: 700;
	color: #333;
}
.edit-account-field .form-control {
	max-width: none;
	height: 42px;
	padding: 8px 12px;
	font-size: 15px;
	border: 1px solid #b8c0cc;
	border-radius: 6px;
	box-shadow: none;
}
.edit-account-field .form-control:focus {
	border-color: #008a5e;
	box-shadow: 0 0 0 3px rgba(0, 138, 94, 0.15);
}
.edit-account-name-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
}
.edit-account-state-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 110px;
	gap: 10px;
	align-items: center;
}
.edit-account-phone-row {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 6px;
}
.edit-account-phone-row .form-control {
	width: 64px;
	flex: 0 0 auto;
	text-align: center;
	padding-left: 6px;
	padding-right: 6px;
}
.edit-account-phone-row .form-control[maxlength="4"] {
	width: 76px;
}
.edit-account-phone-paren,
.edit-account-phone-dash {
	font-size: 16px;
	font-weight: 700;
	color: #555;
	flex: 0 0 auto;
}
.edit-account-field--checkbox {
	margin-top: 4px;
}
.edit-account-checkbox-label {
	display: flex !important;
	align-items: center;
	gap: 10px;
	font-size: 14px !important;
	font-weight: 700 !important;
	cursor: pointer;
}
.edit-account-checkbox-label input {
	width: 18px;
	height: 18px;
	margin: 0;
}
.edit-account-password-panel {
	margin-top: 12px;
	padding: 14px;
	background: #f7faf8;
	border: 1px solid #d7e5df;
	border-radius: 8px;
}
.edit-account-password-panel[hidden] {
	display: none !important;
}
.edit-account-hint {
	margin: 8px 0 0;
	font-size: 12px;
	line-height: 1.4;
	color: #666;
}
.edit-account-footer-spacer {
	height: 76px;
	clear: both;
}
.edit-account-footer {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	min-height: 60px;
	z-index: 20;
	border-top: 1px solid #c5ccd4;
	background: #eee;
	box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
}
.edit-account-footer-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	min-height: 60px;
	padding: 8px 12px;
	box-sizing: border-box;
}
.edit-account-footer .btn-footer {
	box-sizing: border-box;
	width: calc(50% - 10px);
	max-width: 220px;
	min-height: 42px;
	padding: 10px 12px;
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	border-radius: 8px;
}
@media (min-width: 768px) {
	.edit-account-footer .btn-footer {
		width: 220px;
		max-width: 220px;
	}
}
@media (max-width: 479px) {
	.edit-account-name-row {
		grid-template-columns: 1fr;
	}
	.edit-account-state-row {
		grid-template-columns: 1fr;
	}
	.edit-account-phone-row {
		flex-wrap: wrap;
	}
}

/* Receipt */
.receipt-page {
	background: #f4f6f8;
	min-height: 100vh;
	padding-top: 70px;
	padding-bottom: 28px;
}
.receipt-shell {
	max-width: 920px;
	margin: 0 auto;
	padding: 0 14px 24px;
}
.receipt-header {
	margin: 8px 0 18px;
	text-align: center;
}
.receipt-kicker {
	margin: 0 0 4px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #008a5e;
}
.receipt-title {
	margin: 0 0 6px;
	font-size: 26px;
	font-weight: 700;
	line-height: 1.25;
	color: #1a1a1a;
}
.receipt-subtitle {
	margin: 0;
	font-size: 14px;
	color: #666;
}
.receipt-dot {
	margin: 0 6px;
	color: #aaa;
}
.receipt-meta-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	margin-bottom: 14px;
}
@media (min-width: 768px) {
	.receipt-meta-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 16px;
	}
}
.receipt-card {
	margin-bottom: 14px;
	background: #fff;
	border: 2px solid #5a6570;
	border-radius: 10px;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	overflow: hidden;
}
.receipt-meta-grid .receipt-card {
	margin-bottom: 0;
	height: 100%;
	display: flex;
	flex-direction: column;
}
.receipt-card-header {
	padding: 12px 16px;
	border-bottom: 1px solid #e8edf2;
	background: #f7faf8;
}
.receipt-card-header--alt {
	background: #faf8f4;
}
.receipt-card-title {
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	color: #1a1a1a;
}
.receipt-card-body {
	padding: 14px 16px 16px;
	flex: 1 1 auto;
}
.receipt-dl,
.receipt-totals {
	margin: 0;
}
.receipt-dl-row,
.receipt-totals-row {
	display: flex;
	justify-content: space-between;
	gap: 16px;
	padding: 8px 0;
	border-bottom: 1px solid #eef1f4;
}
.receipt-dl-row:last-child,
.receipt-totals-row:last-child {
	border-bottom: 0;
}
.receipt-dl-row dt,
.receipt-totals-row dt {
	font-size: 13px;
	font-weight: 700;
	color: #555;
}
.receipt-dl-row dd,
.receipt-totals-row dd {
	margin: 0;
	font-size: 14px;
	color: #222;
	text-align: right;
}
.receipt-txn-code {
	font-family: Consolas, "Courier New", monospace;
	font-size: 13px;
	word-break: break-all;
}
.receipt-store-name {
	margin: 0 0 6px;
	font-size: 16px;
	font-weight: 700;
	color: #008a5e;
}
.receipt-address,
.receipt-phone {
	margin: 0 0 6px;
	font-size: 14px;
	line-height: 1.45;
	color: #444;
}
.receipt-note {
	margin: 10px 0 0;
	font-size: 13px;
	color: #333;
}
.receipt-items {
	padding-top: 8px;
}
.receipt-item-group {
	padding: 8px 0 10px;
	border-bottom: 1px solid #eef1f4;
}
.receipt-item-group:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}
.receipt-item-row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	padding: 3px 0;
	font-size: 14px;
	line-height: 1.4;
}
.receipt-item-row--child {
	padding-left: 18px;
	color: #555;
	font-size: 13px;
}
.receipt-item-desc {
	display: flex;
	gap: 8px;
	min-width: 0;
}
.receipt-item-qty {
	flex: 0 0 auto;
	min-width: 28px;
	font-weight: 700;
	color: #008a5e;
}
.receipt-item-text {
	color: #222;
}
.receipt-item-price {
	flex: 0 0 auto;
	font-weight: 700;
	white-space: nowrap;
}
.receipt-totals-row--discount dt,
.receipt-totals-row--discount dd {
	color: #b42318;
	font-weight: 700;
}
.receipt-totals-row--grand {
	margin-top: 6px;
	padding: 12px 10px;
	border: 0;
	border-radius: 8px;
	background: #e8f6f0;
}
.receipt-totals-row--grand dt,
.receipt-totals-row--grand dd {
	font-size: 16px;
	font-weight: 700;
	color: #0a5c40;
}
.receipt-order-notes {
	margin-top: 14px;
	padding-top: 12px;
	border-top: 1px solid #e8edf2;
}
.receipt-notes-title {
	margin: 0 0 6px;
	font-size: 14px;
	font-weight: 700;
}
.receipt-order-notes p {
	margin: 0;
	font-size: 14px;
	line-height: 1.45;
	color: #444;
}
.receipt-actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px;
	margin-top: 18px;
}
.receipt-actions .btn-footer {
	min-width: 160px;
	min-height: 42px;
	padding: 10px 14px;
	font-size: 16px;
	font-weight: 700;
	border-radius: 8px;
}
.receipt-footer-spacer {
	height: 76px;
	clear: both;
}
.receipt-footer {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	min-height: 60px;
	z-index: 20;
	border-top: 1px solid #c5ccd4;
	background: #eee;
	box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.08);
}
.receipt-footer-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: 100%;
	min-height: 60px;
	padding: 8px 12px;
	box-sizing: border-box;
}
.receipt-footer .btn-footer {
	box-sizing: border-box;
	width: calc(50% - 10px);
	max-width: 220px;
	min-height: 42px;
	padding: 10px 12px;
	margin: 0;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
	border-radius: 8px;
}
@media (min-width: 768px) {
	.receipt-footer .btn-footer {
		width: 220px;
		max-width: 220px;
	}
}
.receipt-empty {
	max-width: 480px;
	margin: 40px auto;
	text-align: center;
	padding: 28px 22px;
}
.receipt-empty-title {
	margin: 0 0 8px;
	font-size: 22px;
	font-weight: 700;
}
.receipt-empty-text {
	margin: 0 0 18px;
	font-size: 14px;
	color: #666;
}
@media print {
	.receipt-page {
		background: #fff;
		padding-top: 0;
	}
	.receipt-nav,
	.receipt-footer,
	.no-print {
		display: none !important;
	}
	.receipt-shell {
		max-width: none;
		padding: 0;
	}
	.receipt-card,
	.receipt-meta-grid .receipt-card {
		break-inside: avoid;
		box-shadow: none;
		border-color: #999;
	}
	.receipt-totals-row--grand {
		background: #f0f0f0 !important;
		-webkit-print-color-adjust: exact;
		print-color-adjust: exact;
	}
}


