- Override general img width rule for product-main images to prevent overflow - Add overflow constraints to content sections (.product-description, .content, section.content) - Use \!important to ensure product-main images use auto width instead of 100% - Add horizontal scrolling fallback instead of layout breaking
2058 lines
39 KiB
CSS
2058 lines
39 KiB
CSS
/* * * * * *
|
|
*
|
|
* Make Post Sell (mps) is a mobile first web application. We make the pages
|
|
* look great on mobile & only use media queries as needed for bigger displays.
|
|
*
|
|
* We use CSS Grid. It's awesome.
|
|
*
|
|
* * * * * */
|
|
|
|
|
|
body {
|
|
margin: 0px;
|
|
font-family: helvetica;
|
|
}
|
|
|
|
h1 {
|
|
font-size: 1.75em;
|
|
margin-top: .4em;
|
|
margin-bottom: .4em;
|
|
}
|
|
|
|
table {
|
|
width: 100%;
|
|
}
|
|
|
|
table tr:nth-child(even) {
|
|
/* Light gray background for even rows */
|
|
background-color: #f2f2f2;
|
|
}
|
|
|
|
table tr:nth-child(odd) {
|
|
/* White background for odd rows (optional, for contrast) */
|
|
background-color: #ffffff;
|
|
}
|
|
|
|
tr, th, td {
|
|
padding: 8px;
|
|
border: 0px;
|
|
text-align: left;
|
|
}
|
|
|
|
label {
|
|
display: block;
|
|
font-weight: bold;
|
|
}
|
|
|
|
span.asterisk {
|
|
color: red;
|
|
font-weight: bold;
|
|
}
|
|
|
|
a {
|
|
text-decoration: none;
|
|
color: #5f6368
|
|
}
|
|
|
|
input {
|
|
/* keep the input inside the parents box! */
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
section {
|
|
margin-bottom: 0px;
|
|
}
|
|
|
|
input[type="text"],
|
|
input[type="tel"],
|
|
input[type="password"],
|
|
input[type="number"],
|
|
input[type="date"] {
|
|
padding: 8px;
|
|
border-radius: 4px;
|
|
border-style: solid;
|
|
border-width: 1px;
|
|
border-color: #CCCCCC;
|
|
}
|
|
|
|
textarea {
|
|
/* keep the input inside the parents box! */
|
|
box-sizing: border-box;
|
|
|
|
padding: 8px;
|
|
border-radius: 4px;
|
|
border-style: solid;
|
|
border-width: 1px;
|
|
border-color: #CCCCCC;
|
|
}
|
|
|
|
section.shop-name-and-description {
|
|
display: grid;
|
|
}
|
|
|
|
input.mps-quantity {
|
|
max-width: 60px;
|
|
}
|
|
|
|
input.mps-submit {
|
|
float: right;
|
|
}
|
|
|
|
textarea.mps-billing-address,
|
|
textarea.mps-shop-description,
|
|
textarea.mps-bundle-data,
|
|
textarea.mps-shop-ribbon-text
|
|
{
|
|
max-width: 600px;
|
|
width: 100%;
|
|
height: 120px;
|
|
padding: 10px;
|
|
}
|
|
|
|
textarea.mps-shop-ribbon-text {
|
|
height: 60px;
|
|
}
|
|
|
|
input.mps-shop-name,
|
|
input.mps-phone-number,
|
|
input.mps-google-analytics-id,
|
|
input.mps-stripe-public-api-key,
|
|
input.mps-stripe-secret-api-key,
|
|
input.mps-shop-ribbon-text-color,
|
|
input.mps-shop-ribbon-color
|
|
{
|
|
max-width: 600px;
|
|
width: 100%;
|
|
}
|
|
|
|
section.product-title-and-description,
|
|
section.content-title-and-description {
|
|
display: grid;
|
|
}
|
|
|
|
section.product-left,
|
|
section.content-left {
|
|
justify-self: right;
|
|
text-align: left;
|
|
/*max-width: 480px;*/
|
|
}
|
|
|
|
section.product-right,
|
|
section.content-right {
|
|
justify-self: center;
|
|
text-align: center;
|
|
}
|
|
|
|
section.log-in-form {
|
|
justify-self: right;
|
|
text-align: center;
|
|
}
|
|
|
|
section.join-form {
|
|
justify-self: left;
|
|
text-align: center;
|
|
}
|
|
|
|
input.mps-product-title,
|
|
input.mps-product-price,
|
|
input.mps-content-title {
|
|
max-width: 600px;
|
|
width: 100%;
|
|
}
|
|
|
|
textarea.mps-product-description,
|
|
textarea.mps-content-description {
|
|
max-width: 600px;
|
|
width: 100%;
|
|
height: 120px;
|
|
padding: 10px;
|
|
}
|
|
|
|
input.file-input {
|
|
width: 100%;
|
|
}
|
|
|
|
div.message-ribbon {
|
|
padding: 8px;
|
|
text-align: center;
|
|
font-weight: bold;
|
|
font-size: 18px;
|
|
}
|
|
|
|
section.main {
|
|
/*padding: 14px;*/
|
|
}
|
|
|
|
/*
|
|
section.grid-nav {
|
|
grid-column: 1/-1;
|
|
}
|
|
*/
|
|
|
|
/* mobile first */
|
|
/* the navbar is stacked by default. */
|
|
section.nav {
|
|
background-color: #F9F9FA;
|
|
display: grid;
|
|
grid-template-columns: 1fr;
|
|
grid-auto-columns: max-content;
|
|
grid-auto-flow: dense;
|
|
grid-gap: 4px;
|
|
padding: 4px;
|
|
}
|
|
|
|
div.message-ribbon {
|
|
display: none;
|
|
}
|
|
|
|
section.log-in {
|
|
text-align: center;
|
|
align-self: center;
|
|
font-size: .75em;
|
|
}
|
|
|
|
section.search {
|
|
align-self: center;
|
|
}
|
|
|
|
form.search {
|
|
width: 100%;
|
|
}
|
|
|
|
input.mps-keywords {
|
|
width: 100%;
|
|
text-align: center;
|
|
}
|
|
|
|
section.content {
|
|
background-color: #ffffff;
|
|
margin: 4px;
|
|
padding: 4px;
|
|
}
|
|
|
|
section.logo{
|
|
text-align: center;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
img {
|
|
width: 100%;
|
|
max-width: 100%;
|
|
height: auto;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
|
|
img.logo {
|
|
width: initial;
|
|
max-height: 100px;
|
|
max-width: 94%;
|
|
padding: 10px;
|
|
}
|
|
|
|
img.product-cart-thumbnail {
|
|
border: 1px solid #ddd;
|
|
border-radius: 4px;
|
|
max-width:44px;
|
|
max-height:44px;
|
|
width: auto;
|
|
height: auto;
|
|
}
|
|
|
|
img.product-thumbnail {
|
|
border: 1px solid #ddd;
|
|
border-radius: 4px;
|
|
max-width:58px;
|
|
max-height:58px;
|
|
width: auto;
|
|
height: auto;
|
|
}
|
|
|
|
img.product-main {
|
|
max-width: 100% !important;
|
|
width: auto !important;
|
|
height: auto !important;
|
|
}
|
|
|
|
/* Prevent content sections from overflowing */
|
|
.product-description,
|
|
.content,
|
|
section.content {
|
|
max-width: 100%;
|
|
overflow-x: auto;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.mps-button {
|
|
border: none;
|
|
border-radius: 4px;
|
|
color: white;
|
|
background-color: #D4D0C8;
|
|
display: inline-block;
|
|
font-size: 14px;
|
|
font-weight: bold;
|
|
min-width: 100%;
|
|
margin-top: 4px;
|
|
margin-bottom: 4px;
|
|
padding-top: 14px;
|
|
padding-bottom: 14px;
|
|
text-align: center;
|
|
text-decoration: none;
|
|
cursor: pointer;
|
|
}
|
|
|
|
[data-theme="dark"] .mps-button {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue.png");
|
|
color: var(--blue-color);
|
|
border: 2px solid var(--blue-color);
|
|
}
|
|
|
|
[data-theme="dark"] .mps-button:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--blue-color);
|
|
}
|
|
|
|
a.mps-button-blue,
|
|
button.mps-button-blue {
|
|
background-color: #98b6fa;
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button-blue,
|
|
[data-theme="dark"] button.mps-button-blue,
|
|
[data-theme="dark"] input.mps-button-blue {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue.png");
|
|
color: var(--blue-color);
|
|
border: 2px solid var(--blue-color);
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button-blue:hover,
|
|
[data-theme="dark"] button.mps-button-blue:hover,
|
|
[data-theme="dark"] input.mps-button-blue:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--blue-color);
|
|
}
|
|
|
|
a.mps-button-green,
|
|
button.mps-button-green {
|
|
background-color: #a3c765;
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button-green,
|
|
[data-theme="dark"] button.mps-button-green,
|
|
[data-theme="dark"] input.mps-button-green {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green.png");
|
|
color: var(--green-color);
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button-green:hover,
|
|
[data-theme="dark"] button.mps-button-green:hover,
|
|
[data-theme="dark"] input.mps-button-green:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
a.mps-button-red,
|
|
button.mps-button-red,
|
|
input.mps-button-red {
|
|
background-color: #bc2131;
|
|
opacity: 0.8;
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button-red,
|
|
[data-theme="dark"] button.mps-button-red,
|
|
[data-theme="dark"] input.mps-button-red {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-red.png");
|
|
color: var(--red-color);
|
|
border: 2px solid var(--red-color);
|
|
opacity: 1.0;
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button-red:hover,
|
|
[data-theme="dark"] button.mps-button-red:hover,
|
|
[data-theme="dark"] input.mps-button-red:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-red2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--red-color);
|
|
}
|
|
|
|
.mps-cancel-button,
|
|
.mps-comment-form-button {
|
|
display: inline-block;
|
|
padding: 6px 12px;
|
|
border: 1px solid #ccc;
|
|
border-radius: 4px;
|
|
background: #f9f9f9;
|
|
color: #333;
|
|
font-size: 14px;
|
|
cursor: pointer;
|
|
margin: 0;
|
|
text-decoration: none;
|
|
vertical-align: top;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.comment-actions {
|
|
margin-bottom: 42px;
|
|
display: grid;
|
|
grid-auto-flow: column;
|
|
grid-template-columns: repeat(auto-fit, max-content);
|
|
justify-content: start;
|
|
gap: 5px;
|
|
}
|
|
|
|
.reply-link,
|
|
.edit-link,
|
|
.delete-link,
|
|
.moderate-link {
|
|
display: inline-block;
|
|
padding: 6px 12px;
|
|
border: 1px solid #ccc;
|
|
border-radius: 4px;
|
|
background: #f9f9f9;
|
|
color: #333;
|
|
font-size: 14px;
|
|
cursor: pointer;
|
|
margin: 0;
|
|
text-decoration: none;
|
|
vertical-align: top;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.payment-toggle-button {
|
|
display: inline-block;
|
|
padding: 6px 12px;
|
|
border: 1px solid #ccc;
|
|
border-radius: 4px;
|
|
background: #f9f9f9;
|
|
color: #333;
|
|
font-size: 14px;
|
|
cursor: pointer;
|
|
margin: 0;
|
|
text-decoration: none;
|
|
vertical-align: top;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
.payment-toggle-button.enable {
|
|
background: #4a4;
|
|
color: white;
|
|
border-color: #4a4;
|
|
}
|
|
|
|
.payment-toggle-button.disable {
|
|
background: #d44;
|
|
color: white;
|
|
border-color: #d44;
|
|
}
|
|
|
|
a.product-edit-button {
|
|
background-color: #98b6fa;
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button.product-edit-button {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue.png");
|
|
color: #7ab9ff;
|
|
border: 2px solid #7ab9ff;
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button.product-edit-button:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue2.png");
|
|
color: #ffffff;
|
|
border: 2px solid #7ab9ff;
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button.shop-new-button {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green.png");
|
|
color: var(--green-color);
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
[data-theme="dark"] a.mps-button.shop-new-button:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
/* Product download and preview buttons - make them green in dark mode */
|
|
[data-theme="dark"] a.product-download-button,
|
|
[data-theme="dark"] button.product-download-button {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green.png");
|
|
color: var(--green-color);
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
[data-theme="dark"] a.product-download-button:hover,
|
|
[data-theme="dark"] button.product-download-button:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
[data-theme="dark"] a.product-preview-button,
|
|
[data-theme="dark"] button.product-preview-button {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green.png");
|
|
color: var(--green-color);
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
[data-theme="dark"] a.product-preview-button:hover,
|
|
[data-theme="dark"] button.product-preview-button:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
a.product-preview-button {
|
|
background-color: #98b6fa;
|
|
}
|
|
|
|
a.product-download-button {
|
|
background-color: #a3c765;
|
|
}
|
|
|
|
a.product-new-button {
|
|
background-color: #98b6fa;
|
|
}
|
|
|
|
a.shop-new-button {
|
|
background-color: #a3c765;
|
|
}
|
|
|
|
a.done-button {
|
|
background-color: #a3c765;
|
|
}
|
|
|
|
a.log-out-button {
|
|
background-color: #5871ad;
|
|
}
|
|
|
|
a.shop-switch-button {
|
|
color: #666666;
|
|
border-color: #666666;
|
|
border-style: solid;
|
|
border-width: 1px;
|
|
padding-top: 10px;
|
|
padding-bottom: 10px;
|
|
}
|
|
|
|
a.user-display-name {
|
|
margin: 14px;
|
|
display: inline-block;
|
|
}
|
|
|
|
a.cart-and-count {
|
|
margin: 14px;
|
|
display: inline-block;
|
|
}
|
|
|
|
|
|
/* -------------------------------------------------------------------
|
|
Form-buttons: copy your <a>-class styles to <button> elements
|
|
------------------------------------------------------------------- */
|
|
|
|
/* “Remove” link: no button chrome, just a link color + hover underline */
|
|
button.cart-remove-link {
|
|
background: none;
|
|
border: none;
|
|
padding: 0;
|
|
font: inherit;
|
|
color: #5f6368;
|
|
text-decoration: none;
|
|
cursor: pointer;
|
|
}
|
|
button.cart-remove-link:hover {
|
|
text-decoration: underline;
|
|
}
|
|
|
|
/* Links should use the theme link color */
|
|
[data-theme="dark"] a {
|
|
color: var(--link-color);
|
|
}
|
|
|
|
[data-theme="dark"] button.cart-remove-link {
|
|
color: var(--blue-color);
|
|
}
|
|
|
|
[data-theme="dark"] button.cart-remove-link:hover {
|
|
color: var(--blue-color);
|
|
text-decoration: underline;
|
|
}
|
|
|
|
/* “Add To Cart”, “Download”, “Preview” buttons */
|
|
button.product-download-button,
|
|
button.product-preview-button {
|
|
/* inherits .mps-button defaults */
|
|
}
|
|
button.product-download-button {
|
|
background-color: #a3c765;
|
|
}
|
|
button.product-preview-button {
|
|
background-color: #98b6fa;
|
|
}
|
|
|
|
/* Cart action buttons */
|
|
button.cart-checkout-button {
|
|
background-color: #a3c765;
|
|
}
|
|
button.cart-save-button {
|
|
background-color: #98b6fa;
|
|
}
|
|
|
|
/* Dark mode cart buttons */
|
|
[data-theme="dark"] button.cart-checkout-button {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green.png");
|
|
color: var(--green-color);
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
|
|
[data-theme="dark"] button.cart-checkout-button:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-green2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--green-color);
|
|
}
|
|
button.cart-activate-button {
|
|
background-color: #5871ad;
|
|
}
|
|
button.cart-delete-button {
|
|
background-color: #CC6958;
|
|
color: white;
|
|
}
|
|
|
|
/* “Make Public” / “Make Private” */
|
|
button.cart-public-button {
|
|
background: none;
|
|
color: #666666;
|
|
border: 1px solid #666666;
|
|
padding-top: 10px;
|
|
padding-bottom: 10px;
|
|
cursor: pointer;
|
|
}
|
|
button.cart-public-button span.lock {
|
|
font-size: 24px;
|
|
}
|
|
|
|
/* Continue shopping button */
|
|
.cart-continue-shopping-button {
|
|
background-color: #98b6fa;
|
|
color: white;
|
|
}
|
|
|
|
.coupon-apply-button {
|
|
background-color: #a3c765;
|
|
}
|
|
|
|
section.serp {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(160px, 1.00fr));
|
|
grid-auto-columns: max-content;
|
|
grid-auto-flow: dense;
|
|
grid-gap: 4px;
|
|
}
|
|
|
|
div.serp-item {
|
|
border-radius: 4px;
|
|
padding: 4px;
|
|
grid-column: span 1;
|
|
grid-row: span 1;
|
|
|
|
/* The new CSS animations are off the hook. */
|
|
transition: background-color 800ms ease;
|
|
|
|
-webkit-transition: 600ms -webkit-filter ease;
|
|
-moz-transition: 600ms -moz-filter ease;
|
|
-moz-transition: 600ms filter ease;
|
|
-ms-transition: 600ms -ms-filter ease;
|
|
-o-transition: 600ms -o-filter ease;
|
|
transition: 600ms filter ease, 600ms -webkit-filter ease;
|
|
}
|
|
|
|
div.serp-item:hover {
|
|
background-color: #FBFBF3;
|
|
|
|
-webkit-filter: brightness(88%);
|
|
-moz-filter: brightness(88%);
|
|
filter: brightness(88%);
|
|
}
|
|
|
|
[data-theme="dark"] div.serp-item:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue2.png");
|
|
border: 2px solid #7ab9ff;
|
|
color: #ffffff;
|
|
-webkit-filter: none;
|
|
-moz-filter: none;
|
|
filter: none;
|
|
}
|
|
|
|
[data-theme="dark"] div.serp-item:hover a {
|
|
color: #ffffff;
|
|
}
|
|
|
|
img.serp-thumbnail {
|
|
border-radius: 4px;
|
|
}
|
|
|
|
div.edit-page {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
|
|
grid-gap: 20px;
|
|
}
|
|
|
|
hr {
|
|
color: #EEEEEE;
|
|
}
|
|
|
|
section.upload-product-and-preview {
|
|
}
|
|
|
|
section.upload-thumbnails {
|
|
display: grid;
|
|
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
|
|
grid-auto-columns: max-content;
|
|
grid-auto-flow: dense;
|
|
grid-gap: 14px;
|
|
}
|
|
|
|
section.windows-95-task-bar {
|
|
display: grid;
|
|
grid-template-columns: 1fr;
|
|
grid-gap: 4px;
|
|
padding-top: 10px;
|
|
padding-bottom: 10px;
|
|
}
|
|
|
|
section.windows-95-start-button {
|
|
padding: 14px;
|
|
padding-top: 2px;
|
|
padding-bottom: 2px;
|
|
}
|
|
|
|
section.call-to-action {
|
|
padding: 14px;
|
|
padding-top: 2px;
|
|
padding-bottom: 2px;
|
|
}
|
|
|
|
section.one-column, section.one-column-thin {
|
|
max-width: 600px;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
|
|
section.one-column-thin {
|
|
max-width: 400px;
|
|
}
|
|
|
|
section.user-settings {
|
|
justify-self: right;
|
|
}
|
|
|
|
section.button-panel {
|
|
justify-self: left;
|
|
text-align: center;
|
|
}
|
|
|
|
section.existing-cards {
|
|
justify-self: right;
|
|
text-align: left;
|
|
margin-bottom: 40px;
|
|
}
|
|
|
|
section.new-card {
|
|
justify-self: left;
|
|
text-align: right;
|
|
margin-bottom: 40px;
|
|
}
|
|
|
|
div.card-details {
|
|
max-width: 240px;
|
|
margin:auto;
|
|
}
|
|
|
|
div.card-are-you-sure-buttons {
|
|
max-width: 300px;
|
|
margin:auto;
|
|
}
|
|
|
|
section.cart-left {
|
|
margin-bottom: 10px;
|
|
grid-column: 1 / span 3;
|
|
}
|
|
|
|
section.cart-left-grid {
|
|
display: grid;
|
|
grid-gap: 20px;
|
|
grid-template-columns: 1fr 4fr 1fr;
|
|
}
|
|
|
|
section.cart-right {
|
|
text-align: center;
|
|
margin-bottom: 10px;
|
|
grid-column: 4;
|
|
}
|
|
|
|
span.cart-left-item-title {
|
|
font-weight: bold;
|
|
font-size: 18px;
|
|
}
|
|
|
|
section.checkout-left {
|
|
justify-self: right;
|
|
text-align: left;
|
|
text-align: center;
|
|
margin-bottom: 40px;
|
|
}
|
|
|
|
section.checkout-right {
|
|
justify-self: left;
|
|
text-align: center;
|
|
margin-bottom: 40px;
|
|
}
|
|
|
|
/* Checkout page: responsive columns based on content */
|
|
section.checkout-page {
|
|
display: grid;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
grid-gap: 20px;
|
|
max-width: 640px;
|
|
grid-template-columns: 1fr;
|
|
}
|
|
|
|
/* Two columns when multiple sections exist (Stripe + shipping) */
|
|
section.checkout-page .checkout-left + .checkout-right {
|
|
/* This targets checkout-right when it follows checkout-left */
|
|
}
|
|
|
|
section.checkout-page:has(.checkout-left) {
|
|
max-width: 1000px;
|
|
grid-template-columns: 1fr 1fr;
|
|
}
|
|
|
|
/* Fallback for browsers without :has() support */
|
|
@supports not (selector(:has(*))) {
|
|
section.checkout-page {
|
|
max-width: 1000px;
|
|
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
|
|
}
|
|
}
|
|
|
|
|
|
section.checkout-page .well {
|
|
width: 100%;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
@media (max-width: 800px) {
|
|
section.checkout-page {
|
|
max-width: 100%;
|
|
margin: 0;
|
|
padding: 0 10px;
|
|
grid-template-columns: 1fr;
|
|
}
|
|
}
|
|
|
|
.coupon {
|
|
/* Dotted border */
|
|
border-radius: 4px;
|
|
border: 3px dotted #bbb;
|
|
padding: 20px;
|
|
}
|
|
|
|
|
|
#email2_input {
|
|
display: None;
|
|
}
|
|
|
|
.StripeElement {
|
|
width: 90%;
|
|
margin: auto;
|
|
border-color: #bbbbbb;
|
|
border-style: solid;
|
|
border-width: 1px;
|
|
border-radius: 8px;
|
|
background-color: white;
|
|
padding: 12px;
|
|
}
|
|
|
|
.opacity-60 {
|
|
opacity: .60;
|
|
}
|
|
|
|
.well, .well2 {
|
|
background-color: #F9F9FA;
|
|
border-radius: 10px;
|
|
padding: 10px;
|
|
}
|
|
|
|
|
|
/* markup editor css */
|
|
|
|
section.markup-settings {
|
|
width: 100%;
|
|
min-height: 280px;
|
|
}
|
|
|
|
textarea.markup-editor-textarea {
|
|
-webkit-box-sizing: border-box;
|
|
-moz-box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
width: 100%;
|
|
height: 400px;
|
|
}
|
|
|
|
.markup-editor-submit {
|
|
float: right;
|
|
}
|
|
|
|
.markup-preview-div {
|
|
width: 100%;
|
|
}
|
|
|
|
.markup-preview-div {
|
|
border-top: 1px dotted #bbbbbb;
|
|
border-bottom: 1px dotted #bbbbbb;
|
|
padding-top: 16px;
|
|
padding-bottom: 16px;
|
|
margin-top: 16px;
|
|
margin-bottom: 16px;
|
|
margin-right: 5px;
|
|
margin-left: 5px;
|
|
line-height: 1.6;
|
|
}
|
|
|
|
.markup-preview-div p {
|
|
margin-top: 15px;
|
|
margin-bottom: 15px;
|
|
line-height: 1.75;
|
|
}
|
|
|
|
.preview-raw-markup {
|
|
display: block;
|
|
white-space: pre-wrap;
|
|
background-color: unset;
|
|
border-radius: unset;
|
|
border: unset;
|
|
border-width: 0px;
|
|
|
|
margin-top: 19px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.discounted {
|
|
color: #a3c765;
|
|
}
|
|
|
|
@media (max-width: 800px) {
|
|
/* the two-column is stacked by default. */
|
|
section.two-column {
|
|
display: grid;
|
|
grid-template-columns: 1fr;
|
|
max-width: 600px;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
|
|
/* On mobile, reorder to put purchase section after images */
|
|
.product-images {
|
|
order: 1;
|
|
}
|
|
|
|
section.product-right {
|
|
order: 2;
|
|
width: 100%;
|
|
}
|
|
|
|
section.product-right .well {
|
|
margin-top: 30px;
|
|
}
|
|
|
|
.product-description {
|
|
order: 3;
|
|
}
|
|
|
|
.product-comments {
|
|
order: 4;
|
|
}
|
|
|
|
/* Ensure buttons get full width on mobile */
|
|
section.product-right .mps-button {
|
|
width: 100%;
|
|
min-width: 100%;
|
|
}
|
|
|
|
/* the cart-grid is stacked by default. */
|
|
section.cart-grid {
|
|
max-width: 600px;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
|
|
/* markup-editor is stacked by default. */
|
|
div.markup-editor {
|
|
display: grid;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
}
|
|
section.markup-rendered {
|
|
display: none;
|
|
}
|
|
}
|
|
|
|
/*************************************************************
|
|
*
|
|
* for displays bigger than 800px which are "desktop-ish".
|
|
*
|
|
*************************************************************/
|
|
@media (min-width: 960px) {
|
|
|
|
/* The SERP page grid should have bigger items since it has more room.
|
|
* mobile -> desktop
|
|
* 140px -> 240px */
|
|
section.serp {
|
|
grid-template-columns: repeat(auto-fit, minmax(240px, .25fr));
|
|
}
|
|
|
|
/* We have the room to really break into 2 columns */
|
|
section.two-column {
|
|
display: grid;
|
|
grid-template-columns: 2fr 1fr;
|
|
grid-template-areas:
|
|
"images purchase"
|
|
"description purchase"
|
|
"comments purchase";
|
|
gap: 40px;
|
|
max-width: 1200px;
|
|
margin-left: auto;
|
|
margin-right: auto;
|
|
padding-left: 40px;
|
|
padding-right: 40px;
|
|
align-items: start;
|
|
}
|
|
|
|
.product-images {
|
|
grid-area: images;
|
|
}
|
|
|
|
section.product-right {
|
|
grid-area: purchase;
|
|
}
|
|
|
|
.product-description {
|
|
grid-area: description;
|
|
}
|
|
|
|
.product-comments {
|
|
grid-area: comments;
|
|
}
|
|
|
|
/* if we have room, break markup-editor into 2 columns */
|
|
div.markup-editor {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr;
|
|
grid-auto-columns: max-content;
|
|
grid-auto-flow: dense;
|
|
grid-gap: 30px;
|
|
padding: 14px;
|
|
justify-items: center;
|
|
}
|
|
section.markup-settings {
|
|
min-height: 400px;
|
|
}
|
|
|
|
/* the minimum width for "desktop-ish" screens. */
|
|
a.mps-button {
|
|
min-width: 280px;
|
|
}
|
|
|
|
/* really make the button small now that we have room. */
|
|
a.mps-button-small {
|
|
min-width: 140px;
|
|
padding-left: 10px;
|
|
padding-right: 10px;
|
|
}
|
|
|
|
section.windows-95-task-bar {
|
|
grid-template-columns: 1fr 1fr;
|
|
}
|
|
|
|
section.call-to-action {
|
|
text-align: right;
|
|
}
|
|
|
|
/* if we have room, break into 2 columns */
|
|
section.cart-grid {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr 1fr 1fr;
|
|
grid-gap: 30px;
|
|
padding: 14px;
|
|
justify-items: center;
|
|
}
|
|
|
|
img.product-cart-thumbnail {
|
|
max-width:104px;
|
|
max-height:104px;
|
|
}
|
|
|
|
section.content {
|
|
background-color: #ffffff;
|
|
margin: 4px;
|
|
padding: 14px;
|
|
}
|
|
|
|
input.mps-keywords {
|
|
text-align: left;
|
|
}
|
|
|
|
section.nav {
|
|
/* if we have room, break navbar into 3 columns */
|
|
grid-template-columns: minmax(200px, 300px) 3fr 1fr;
|
|
grid-gap: 30px;
|
|
padding: 2px;
|
|
}
|
|
|
|
div.message-ribbon {
|
|
display: block;
|
|
}
|
|
|
|
section.log-in {
|
|
text-align: right;
|
|
}
|
|
|
|
.well, .well2 {
|
|
padding: 10px;
|
|
padding-right: 20px;
|
|
padding-left: 20px;
|
|
}
|
|
.well2 {
|
|
padding: 10px;
|
|
}
|
|
}
|
|
|
|
@media (min-width: 1200px) {
|
|
img.product-cart-thumbnail {
|
|
max-width:184px;
|
|
max-height:184px;
|
|
}
|
|
.well, .well2 {
|
|
padding: 20px;
|
|
padding-right: 40px;
|
|
padding-left: 40px;
|
|
}
|
|
.well2 {
|
|
padding: 20px;
|
|
}
|
|
}
|
|
div.message-ribbon {
|
|
color: #ffffff;
|
|
background-color: #5871ad;
|
|
background: linear-gradient(to right, #5871ad, #82A8FF);
|
|
}
|
|
|
|
.highlight {
|
|
text-shadow:
|
|
-6px 0px 6px rgba(255, 231, 13, 0.6),
|
|
6px 0px 6px rgba(255, 231, 13, 0.6),
|
|
12px 0px 12px rgba(255, 231, 13, 0.6),
|
|
-12px 0px 12px rgba(255, 231, 13, 0.6);
|
|
}
|
|
.avoid-wrap {
|
|
display:inline-block;
|
|
}
|
|
|
|
.vertical-text {
|
|
display: inline-block;
|
|
-webkit-transform: rotate(-90deg);
|
|
-moz-transform: rotate(-90deg);
|
|
-ms-transform: rotate(-90deg);
|
|
-o-transform: rotate(-90deg);
|
|
transform: rotate(-90deg);
|
|
}
|
|
|
|
.shown-on-desktop {
|
|
display: none;
|
|
}
|
|
|
|
.not-shown-on-desktop {
|
|
display: block;
|
|
}
|
|
|
|
@media screen and (min-width:800px) {
|
|
.shown-on-desktop {display: block}
|
|
.not-shown-on-desktop {display: none}
|
|
}
|
|
div.message-ribbon {
|
|
color: #ffffff;
|
|
background-color: #5871ad;
|
|
background: linear-gradient(to right, #5871ad, #82A8FF);
|
|
}
|
|
|
|
#alerts {
|
|
animation: fadein 2s;
|
|
}
|
|
|
|
@keyframes fadein {
|
|
from { opacity: 0; }
|
|
to { opacity: 1; }
|
|
}
|
|
|
|
|
|
/* ALERT START */
|
|
#alerts {
|
|
z-index: 98;
|
|
}
|
|
|
|
.alert {
|
|
opacity: .85;
|
|
display: grid;
|
|
grid-template-columns: 1fr 50px;
|
|
grid-gap: 10px;
|
|
}
|
|
|
|
.alert-message {
|
|
text-align: center;
|
|
margin-top: 10px;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.alert .close {
|
|
text-align: right;
|
|
margin-top: 10px;
|
|
margin-bottom: 10px;
|
|
margin-right: 15px;
|
|
}
|
|
|
|
.alert-danger, .alert-error {
|
|
color: #721c24;
|
|
background-color: #f8d7da;
|
|
border-color: #f5c6cb;
|
|
}
|
|
|
|
.alert-warning {
|
|
color: #856404;
|
|
background-color: #fff3cd;
|
|
border-color: #ffeeba;
|
|
}
|
|
|
|
.alert-info, .alert-notice {
|
|
color: var(--text-primary);
|
|
background-color: color-mix(in srgb, var(--info-color) 20%, var(--bg-primary) 80%);
|
|
border-color: var(--info-color);
|
|
}
|
|
|
|
.alert-success {
|
|
color: #155724;
|
|
background-color: #a3c765;
|
|
border-color: #c3e6cb;
|
|
}
|
|
|
|
/* ALERT END */
|
|
|
|
|
|
/* hidden control area */
|
|
.hidden-control {
|
|
display: none;
|
|
}
|
|
|
|
#toggle:checked ~ .hidden-control {
|
|
display: block;
|
|
}
|
|
|
|
/* Stripe toggle */
|
|
#toggle-stripe:checked ~ .hidden-control {
|
|
display: block;
|
|
}
|
|
/* hidden control area */
|
|
|
|
/* Status and message styling */
|
|
.status-message {
|
|
color: #666;
|
|
}
|
|
|
|
.success-indicator {
|
|
color: green;
|
|
}
|
|
|
|
.error-indicator {
|
|
color: #d44;
|
|
}
|
|
|
|
.note-text {
|
|
color: #666;
|
|
}
|
|
|
|
[data-theme="dark"] .note-text {
|
|
color: #c0c0c0;
|
|
}
|
|
|
|
[data-theme="dark"] .status-message {
|
|
color: #c0c0c0;
|
|
}
|
|
|
|
[data-theme="dark"] .error-indicator {
|
|
color: #ff6b6b;
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* Flash message styling for dark mode */
|
|
[data-theme="dark"] .alert-danger,
|
|
[data-theme="dark"] .alert-error {
|
|
color: #ff6b6b;
|
|
background-color: #2d1f20;
|
|
border-color: #ff6b6b;
|
|
}
|
|
|
|
[data-theme="dark"] .alert-warning {
|
|
color: #ffd93d;
|
|
background-color: #2d2a1f;
|
|
border-color: #ffd93d;
|
|
}
|
|
|
|
[data-theme="dark"] .alert-info,
|
|
[data-theme="dark"] .alert-notice {
|
|
color: var(--blue-color);
|
|
background-color: #1f252d;
|
|
border-color: var(--blue-color);
|
|
}
|
|
|
|
[data-theme="dark"] .alert-success {
|
|
color: var(--green-color);
|
|
background-color: #1f2d1f;
|
|
border-color: var(--green-color);
|
|
}
|
|
|
|
/* Override shop theme link colors to ensure visibility in dark mode */
|
|
[data-theme="dark"] a.shop-theme-link-color,
|
|
[data-theme="dark"] .shop-theme-link-color {
|
|
color: #ffffff !important;
|
|
}
|
|
|
|
/* Add payment method button styling */
|
|
.add-payment-method-button {
|
|
background-color: var(--blue-color);
|
|
color: white;
|
|
text-decoration: none;
|
|
}
|
|
|
|
.add-payment-method-button:hover {
|
|
background-color: #4a90e2;
|
|
color: white;
|
|
}
|
|
|
|
[data-theme="dark"] .add-payment-method-button {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue.png");
|
|
color: var(--blue-color);
|
|
border: 2px solid var(--blue-color);
|
|
}
|
|
|
|
[data-theme="dark"] .add-payment-method-button:hover {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue2.png");
|
|
color: #ffffff;
|
|
border: 2px solid var(--blue-color);
|
|
}
|
|
|
|
.inline-label {
|
|
display: inline;
|
|
}
|
|
|
|
.favicon-preview {
|
|
width: 32px;
|
|
}
|
|
|
|
/* Input field styling */
|
|
.full-width-input {
|
|
width: 100%;
|
|
}
|
|
|
|
.disabled-input {
|
|
opacity: 0.5;
|
|
background-color: #f5f5f5;
|
|
}
|
|
|
|
/* Crypto checkout styles */
|
|
.crypto-logo {
|
|
width: 150px;
|
|
height: 150px;
|
|
margin-right: 15px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.payment-grid {
|
|
display: grid;
|
|
grid-template-columns: auto 1fr;
|
|
gap: 20px;
|
|
margin: 16px 0;
|
|
align-items: start;
|
|
}
|
|
|
|
.crypto-address {
|
|
white-space: pre-wrap;
|
|
word-wrap: break-word;
|
|
}
|
|
|
|
.payment-buttons {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr 1fr;
|
|
gap: 8px;
|
|
margin: 8px 0;
|
|
}
|
|
|
|
.payment-button-row-1 {
|
|
grid-row: 1;
|
|
}
|
|
|
|
.payment-button-cancel {
|
|
grid-column: 1 / -1;
|
|
grid-row: 2;
|
|
}
|
|
|
|
.status-box {
|
|
background: var(--bg-secondary);
|
|
border: 1px solid var(--border-color);
|
|
color: var(--text-primary);
|
|
border-radius: 4px;
|
|
padding: 15px;
|
|
margin: 10px 0;
|
|
}
|
|
|
|
.confirmations-hidden {
|
|
display: none;
|
|
}
|
|
|
|
.qr-fallback {
|
|
width: 150px;
|
|
height: 150px;
|
|
background: #f0f0f0;
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
font-size: 12px;
|
|
color: #666;
|
|
border: 1px solid #ddd;
|
|
}
|
|
|
|
.success-notice {
|
|
background: color-mix(in srgb, var(--success-color) 15%, var(--bg-primary) 85%);
|
|
border: 1px solid var(--success-color);
|
|
color: var(--text-primary);
|
|
border-radius: 4px;
|
|
padding: 15px;
|
|
margin: 20px 0;
|
|
}
|
|
|
|
.warning-notice {
|
|
background: color-mix(in srgb, var(--warning-color) 15%, var(--bg-primary) 85%);
|
|
border: 1px solid var(--warning-color);
|
|
color: var(--text-primary);
|
|
border-radius: 4px;
|
|
padding: 15px;
|
|
margin: 20px 0;
|
|
}
|
|
|
|
.monospace-address {
|
|
font-family: monospace;
|
|
background: var(--bg-secondary);
|
|
color: var(--text-primary);
|
|
padding: 8px;
|
|
border-radius: 3px;
|
|
word-break: break-all;
|
|
}
|
|
|
|
.notice-list {
|
|
margin: 10px 0;
|
|
}
|
|
|
|
.notice-footer {
|
|
margin-top: 10px;
|
|
}
|
|
|
|
/* Cart checkout styles */
|
|
.disabled-crypto-button {
|
|
background: #aaa !important;
|
|
cursor: not-allowed;
|
|
}
|
|
|
|
[data-theme="dark"] .disabled-crypto-button {
|
|
background-color: #1a1a1a !important;
|
|
background-image: none !important;
|
|
color: #666666 !important;
|
|
border: 2px solid #444444 !important;
|
|
cursor: not-allowed;
|
|
opacity: 0.6;
|
|
}
|
|
|
|
button img.crypto-button-icon,
|
|
.mps-button img.crypto-button-icon,
|
|
img.crypto-button-icon {
|
|
width: 32px !important;
|
|
height: 32px !important;
|
|
max-width: 32px !important;
|
|
min-width: 32px !important;
|
|
margin-right: 8px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
.crypto-settings-link {
|
|
color: #f59e0b;
|
|
text-decoration: none;
|
|
display: block;
|
|
margin-top: 10px;
|
|
font-size: 14px;
|
|
}
|
|
|
|
.warning-banner {
|
|
background: #fff3cd;
|
|
border: 1px solid #ffeaa7;
|
|
padding: 10px;
|
|
border-radius: 5px;
|
|
color: #856404;
|
|
}
|
|
|
|
.warning-banner-alt {
|
|
background: color-mix(in srgb, var(--info-color) 15%, var(--bg-primary) 85%);
|
|
border: 1px solid var(--info-color);
|
|
color: var(--text-primary);
|
|
border-radius: 4px;
|
|
padding: 15px;
|
|
margin: 20px 0;
|
|
}
|
|
|
|
.warning-banner p {
|
|
margin: 0;
|
|
font-size: 14px;
|
|
}
|
|
|
|
.warning-banner h3 {
|
|
margin-top: 0;
|
|
}
|
|
|
|
.warning-banner-content {
|
|
margin-bottom: 15px;
|
|
}
|
|
|
|
.pending-quote-item {
|
|
background: transparent;
|
|
border: none;
|
|
color: var(--text-primary);
|
|
border-radius: 3px;
|
|
padding: 10px;
|
|
margin: 8px 0;
|
|
}
|
|
|
|
.pending-quote-single {
|
|
text-align: center;
|
|
}
|
|
|
|
.pending-quote-cancel {
|
|
text-align: center;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.full-width-button {
|
|
width: 100%;
|
|
display: block;
|
|
}
|
|
|
|
|
|
.view-quote-button {
|
|
background: #17a2b8;
|
|
font-size: 12px;
|
|
padding: 5px 10px;
|
|
}
|
|
|
|
.pending-quote-details {
|
|
font-size: 12px;
|
|
color: #666;
|
|
margin-top: 5px;
|
|
}
|
|
|
|
/* Cart page styles */
|
|
.cart-float-right {
|
|
float: right;
|
|
}
|
|
|
|
.cart-shop-grid-span {
|
|
grid-column: span 3;
|
|
}
|
|
|
|
.cart-shop-name {
|
|
font-size: 1.5em;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.cart-inline-form {
|
|
display: inline;
|
|
}
|
|
|
|
.cart-update-button {
|
|
width: 80px;
|
|
}
|
|
|
|
.cart-total-section {
|
|
text-align: right;
|
|
}
|
|
|
|
.cart-total-grid-span {
|
|
text-align: right;
|
|
grid-column: span 3;
|
|
}
|
|
|
|
.cart-total-amount {
|
|
font-size: 1.5em;
|
|
font-weight: bold;
|
|
}
|
|
|
|
.cart-public-link {
|
|
font-size: 0.8em;
|
|
}
|
|
|
|
/* Phase 1: Static inline style replacements */
|
|
.no-bottom-margin {
|
|
margin-bottom: 0px;
|
|
}
|
|
|
|
.no-top-margin {
|
|
margin-top: 0px;
|
|
}
|
|
|
|
.bold-text {
|
|
font-weight: bold;
|
|
}
|
|
|
|
.stripe-card-logo {
|
|
width: 92px;
|
|
float: left;
|
|
margin-right: 10px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.stripe-negative-margin {
|
|
margin-top: -12px;
|
|
}
|
|
|
|
.stripe-initial-width {
|
|
width: initial;
|
|
}
|
|
|
|
.stripe-save-button {
|
|
margin-bottom: 0px;
|
|
margin-top: 8px;
|
|
}
|
|
|
|
.comment-pending {
|
|
color: orange;
|
|
}
|
|
|
|
.hidden-form {
|
|
display: none;
|
|
}
|
|
|
|
.coupon-disabled {
|
|
opacity: 0.7;
|
|
}
|
|
|
|
.vertical-coupon-text {
|
|
margin: 0px;
|
|
}
|
|
|
|
.remove-button-small {
|
|
width: 80px;
|
|
}
|
|
|
|
.subtitle-text {
|
|
font-size: 0.6em;
|
|
font-weight: normal;
|
|
}
|
|
|
|
.original-comment-box {
|
|
background-color: #f5f5f5;
|
|
padding: 15px;
|
|
border-left: 4px solid #007cba;
|
|
margin-bottom: 20px;
|
|
}
|
|
|
|
.start-button-icon {
|
|
font-size: 20px;
|
|
}
|
|
|
|
.table-full-width {
|
|
width: 100%;
|
|
max-width: 100%;
|
|
}
|
|
|
|
.table-fixed-layout {
|
|
table-layout: fixed;
|
|
}
|
|
|
|
.sold-out-button {
|
|
background-color: red !important;
|
|
cursor: not-allowed;
|
|
}
|
|
|
|
/* Phase 2: Static layout and status styling */
|
|
|
|
/* Crypto history layout classes */
|
|
.crypto-history-container {
|
|
margin: 20px 0;
|
|
}
|
|
|
|
.crypto-payment-card {
|
|
border: 1px solid #dee2e6;
|
|
border-radius: 4px;
|
|
padding: 15px;
|
|
margin-bottom: 15px;
|
|
background: #f8f9fa;
|
|
}
|
|
|
|
.crypto-header-grid {
|
|
display: grid;
|
|
grid-template-columns: 1fr auto;
|
|
align-items: start;
|
|
margin-bottom: 10px;
|
|
}
|
|
|
|
.crypto-header-title {
|
|
margin: 0 0 5px 0;
|
|
}
|
|
|
|
.crypto-header-subtitle {
|
|
margin: 0;
|
|
color: #6c757d;
|
|
font-size: 0.9em;
|
|
}
|
|
|
|
.crypto-details-grid {
|
|
display: grid;
|
|
grid-template-columns: 1fr 1fr 1fr;
|
|
gap: 15px;
|
|
margin: 10px 0;
|
|
align-items: start;
|
|
}
|
|
|
|
.crypto-right-align {
|
|
text-align: right;
|
|
}
|
|
|
|
.crypto-right-align-justify {
|
|
text-align: right;
|
|
justify-self: end;
|
|
}
|
|
|
|
.crypto-small-text {
|
|
color: #6c757d;
|
|
}
|
|
|
|
/* Status notice classes */
|
|
.status-warning-notice {
|
|
background: #fff3cd;
|
|
border: 1px solid #ffeaa7;
|
|
border-radius: 3px;
|
|
padding: 8px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.status-error-notice {
|
|
background: #f8d7da;
|
|
border: 1px solid #f5c6cb;
|
|
border-radius: 3px;
|
|
padding: 8px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.status-info-notice {
|
|
background: #d1ecf1;
|
|
border: 1px solid #bee5eb;
|
|
border-radius: 3px;
|
|
padding: 8px;
|
|
margin-top: 10px;
|
|
}
|
|
|
|
.crypto-help-section {
|
|
margin-top: 30px;
|
|
padding: 15px;
|
|
background: #e9ecef;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
.crypto-empty-state {
|
|
text-align: center;
|
|
padding: 40px;
|
|
color: #6c757d;
|
|
}
|
|
|
|
/* Invoice layout classes */
|
|
.invoice-right-section {
|
|
text-align: right;
|
|
margin: 15px 0;
|
|
}
|
|
|
|
.invoice-total-section {
|
|
text-align: right;
|
|
margin: 20px 0;
|
|
font-size: 1.2em;
|
|
}
|
|
|
|
.invoice-payment-box {
|
|
background-color: #f0f8ff;
|
|
padding: 15px;
|
|
border: 1px solid #4169e1;
|
|
border-radius: 5px;
|
|
margin: 15px 0;
|
|
}
|
|
|
|
.invoice-margin-section {
|
|
margin-top: 15px;
|
|
}
|
|
|
|
.invoice-margin-small {
|
|
margin: 5px 0;
|
|
}
|
|
|
|
/* Status color classes */
|
|
.status-success {
|
|
color: #28a745;
|
|
}
|
|
|
|
.status-warning {
|
|
color: #ffc107;
|
|
}
|
|
|
|
.status-info {
|
|
color: #6c757d;
|
|
}
|
|
|
|
.status-error {
|
|
color: #dc3545;
|
|
}
|
|
|
|
.code-monospace {
|
|
font-size: 0.9em;
|
|
font-family: monospace;
|
|
}
|
|
|
|
/* Dark Mode Theme System */
|
|
:root {
|
|
/* Light mode colors (default) */
|
|
--bg-primary: #ffffff;
|
|
--bg-secondary: #f8f9fa;
|
|
--bg-tertiary: #e9ecef;
|
|
--text-primary: #333333;
|
|
--text-secondary: #6c757d;
|
|
--text-muted: #666666;
|
|
--border-color: #dee2e6;
|
|
--border-light: #e9ecef;
|
|
--link-color: #5f6368;
|
|
--blue-color: #98b6fa;
|
|
--green-color: #a3c765;
|
|
--red-color: #bc2131;
|
|
--success-color: #28a745;
|
|
--warning-color: #ffc107;
|
|
--error-color: #dc3545;
|
|
--info-color: #17a2b8;
|
|
|
|
/* Form elements */
|
|
--input-bg: #ffffff;
|
|
--input-border: #cccccc;
|
|
--input-text: #333333;
|
|
|
|
/* Navigation */
|
|
--nav-bg: #f9f9fa;
|
|
--nav-text: #333333;
|
|
|
|
/* Cards and containers */
|
|
--card-bg: #f8f9fa;
|
|
--well-bg: #f9f9fa;
|
|
|
|
/* Status notices */
|
|
--notice-warning-bg: #fff3cd;
|
|
--notice-warning-border: #ffeaa7;
|
|
--notice-error-bg: #f8d7da;
|
|
--notice-error-border: #f5c6cb;
|
|
--notice-info-bg: #d1ecf1;
|
|
--notice-info-border: #bee5eb;
|
|
}
|
|
|
|
[data-theme="dark"] {
|
|
/* Dark mode colors - zealotrush.com inspired gaming theme */
|
|
--bg-primary: #0d1117;
|
|
--bg-secondary: #161b22;
|
|
--bg-tertiary: #21262d;
|
|
--text-primary: #ffffff;
|
|
--text-secondary: #cccccc;
|
|
--text-muted: #999999;
|
|
--border-color: #7ab9ff;
|
|
--border-light: #5599dd;
|
|
--link-color: #7ab9ff;
|
|
--blue-color: #7ab9ff;
|
|
--green-color: #08e700;
|
|
--red-color: #F34C31;
|
|
--success-color: #08e700;
|
|
--warning-color: #f34c31;
|
|
--error-color: #f34c31;
|
|
--info-color: #7ab9ff;
|
|
|
|
/* Form elements */
|
|
--input-bg: #161b22;
|
|
--input-border: #7ab9ff;
|
|
--input-text: #ffffff;
|
|
|
|
/* Navigation */
|
|
--nav-bg: #0d1117;
|
|
--nav-text: #ffffff;
|
|
|
|
/* Cards and containers */
|
|
--card-bg: #2d2d2d;
|
|
--well-bg: #2d2d2d;
|
|
|
|
/* Status notices */
|
|
--notice-warning-bg: #3e2723;
|
|
--notice-warning-border: #5d4037;
|
|
--notice-error-bg: #3f1a1a;
|
|
--notice-error-border: #5c2626;
|
|
--notice-info-bg: #1a365d;
|
|
--notice-info-border: #2c5282;
|
|
}
|
|
|
|
/* Apply theme variables to existing elements */
|
|
body {
|
|
background-color: var(--bg-primary);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
section.content {
|
|
background-color: var(--bg-primary);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
section.nav {
|
|
background-color: var(--nav-bg);
|
|
color: var(--nav-text);
|
|
}
|
|
|
|
a {
|
|
color: var(--link-color);
|
|
}
|
|
|
|
input[type="text"],
|
|
input[type="tel"],
|
|
input[type="password"],
|
|
input[type="number"],
|
|
input[type="date"],
|
|
textarea {
|
|
background-color: var(--input-bg);
|
|
border-color: var(--input-border);
|
|
color: var(--input-text);
|
|
}
|
|
|
|
.well, .well2 {
|
|
background-color: var(--well-bg);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
[data-theme="dark"] .well,
|
|
[data-theme="dark"] .well2 {
|
|
background-color: #2d3748;
|
|
background-image: url("/static/img/trans-blue.png");
|
|
border: 2px solid #7ab9ff;
|
|
box-shadow: 0 0 10px rgba(122, 185, 255, 0.3);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
/* Dark mode specific overrides for existing classes */
|
|
[data-theme="dark"] table tr:nth-child(even) {
|
|
background-color: #2d2d2d;
|
|
}
|
|
|
|
[data-theme="dark"] table tr:nth-child(odd) {
|
|
background-color: #333333;
|
|
}
|
|
|
|
[data-theme="dark"] .crypto-payment-card {
|
|
background: var(--card-bg);
|
|
border-color: var(--border-color);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
[data-theme="dark"] .status-warning-notice {
|
|
background: var(--notice-warning-bg);
|
|
border-color: var(--notice-warning-border);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
[data-theme="dark"] .status-error-notice {
|
|
background: var(--notice-error-bg);
|
|
border-color: var(--notice-error-border);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
[data-theme="dark"] .status-info-notice {
|
|
background: var(--notice-info-bg);
|
|
border-color: var(--notice-info-border);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
[data-theme="dark"] .crypto-help-section {
|
|
background: var(--bg-tertiary);
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
[data-theme="dark"] .invoice-payment-box {
|
|
background-color: #1a365d;
|
|
border-color: #2c5282;
|
|
color: var(--text-primary);
|
|
}
|
|
|
|
/* Crypto wallet success indicators */
|
|
.success-indicator {
|
|
color: var(--success-color);
|
|
font-weight: bold;
|
|
}
|
|
|
|
[data-theme="dark"] .success-indicator {
|
|
color: var(--green-color);
|
|
font-weight: bold;
|
|
}
|
|
|
|
/* Theme toggle button */
|
|
.theme-toggle {
|
|
background: none;
|
|
border: 1px solid var(--border-color);
|
|
color: var(--text-primary);
|
|
padding: 8px 12px;
|
|
border-radius: 4px;
|
|
cursor: pointer;
|
|
font-size: 14px;
|
|
transition: background-color 0.2s ease;
|
|
}
|
|
|
|
.theme-toggle:hover {
|
|
background-color: var(--bg-secondary);
|
|
}
|
|
|
|
.theme-toggle-icon {
|
|
margin-right: 5px;
|
|
}
|