@font-face { font-family: "Russo One"; font-style: normal; font-weight: 400; font-display: swap; src: url("/demo/shop/fonts/russo-one-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 400; font-display: swap; src: url("/demo/shop/fonts/dm-sans-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 500; font-display: swap; src: url("/demo/shop/fonts/dm-sans-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "DM Sans"; font-style: normal; font-weight: 700; font-display: swap; src: url("/demo/shop/fonts/dm-sans-latin-700-normal.woff2") format("woff2"); }
/* Shop dashboard styles. Standalone (does not use the public site's fixed-height layout). */
*, *::before, *::after { box-sizing: border-box; }
html { background: #080808; }
body { margin: 0; min-height: 100vh; background: #0d0d0d; color: #E8E8E8; font-family: 'DM Sans', system-ui, sans-serif; font-size: 16px; line-height: 1.55; }
a { color: #2FD0AE; }
.adm-wrap { max-width: 1040px; margin: 0 auto; padding: 0 16px; }
.adm-site { background: linear-gradient(180deg, #0D0D0D, #1A1A1A); border-bottom: 3px solid #C14A09; padding: 12px 0; }
.adm-site .adm-wrap { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.adm-brand { font-family: 'Russo One', sans-serif; font-size: 1.4rem; letter-spacing: .04em; text-transform: uppercase; color: #2FD0AE; }
.adm-brand small { font-family: 'DM Sans', sans-serif; font-size: .8rem; color: #E8E8E8; letter-spacing: .06em; margin-left: 6px; }
.adm-back { font-size: .92rem; }
main { padding-top: 22px; padding-bottom: 60px; }
h1, h2, h3, h4 { font-family: 'Russo One', sans-serif; font-weight: 400; letter-spacing: .03em; margin: 0 0 6px; }
h1, h2 { font-size: 1.6rem; color: #2FD0AE; } h3 { font-size: 1.2rem; } h4 { font-size: 1rem; color: #E9A06E; margin-top: 22px; }
p { margin: 0 0 10px; }
.muted { color: #B5B5B5; } .small { font-size: .88rem; }
hr { border: 0; border-top: 1px solid #2a2a2a; margin: 18px 0; }
.btn { font: 700 1rem 'DM Sans', sans-serif; border-radius: 6px; padding: 9px 18px; cursor: pointer; border: 2px solid transparent; }
.btn-primary { background: #C14A09; color: #fff; border-color: #C14A09; }
.btn-primary:hover:not(:disabled) { background: #A83F07; border-color: #A83F07; }
.btn-primary:disabled { opacity: .45; cursor: default; }
.btn-outline { background: transparent; color: #E8E8E8; border-color: #5a5a5a; }
.btn-outline:hover:not(:disabled) { border-color: #2FD0AE; color: #2FD0AE; }
.btn-outline:disabled { opacity: .4; cursor: default; }
.btn-danger { background: transparent; color: #FF8A78; border-color: #6b2a22; }
.btn-danger:hover { border-color: #FF8A78; }
.btn-link { background: none; border: 0; color: #2FD0AE; text-decoration: underline; font: inherit; cursor: pointer; padding: 4px 0; }
:focus-visible { outline: 3px solid #2FD0AE; outline-offset: 2px; }
.adm-top { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; flex-wrap: wrap; margin-bottom: 14px; }
.adm-card { background: #151515; border: 1px solid #2a2a2a; border-radius: 8px; padding: 18px; }
.adm-login-card { max-width: 440px; margin: 20px auto; }
.adm-login label, .f-l { display: block; font-weight: 700; font-size: .92rem; margin: 10px 0 4px; }
input[type=text], input[type=password], input[type=email], input[type=tel], input[type=url], input[type=date], select, textarea { width: 100%; background: #0b0b0b; color: #F0F0F0; border: 1px solid #555; border-radius: 6px; padding: 9px 10px; font: inherit; }
textarea { resize: vertical; }
input[type=checkbox], input[type=radio] { width: 20px; height: 20px; accent-color: #09A688; }
.adm-err { color: #FF8A78; min-height: 1.3em; font-weight: 700; }
.adm-demo { background: #2b2108; border: 1px solid #7a5c10; color: #FFE3A3; border-radius: 6px; padding: 8px 12px; margin-bottom: 12px; font-size: .92rem; }
.adm-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 12px; }
.adm-tab { background: #1a1a1a; color: #E8E8E8; border: 2px solid #333; border-radius: 6px; padding: 8px 16px; font: 700 .95rem 'DM Sans', sans-serif; cursor: pointer; }
.adm-tab:hover { border-color: #2FD0AE; }
.adm-tab.on { background: #E8E8E8; color: #0d0d0d; border-color: #E8E8E8; }
.adm-bar { position: sticky; bottom: 0; display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; background: #1a1a1a; border: 1px solid #333; border-radius: 8px; padding: 10px 14px; margin-top: 14px; }
.row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 10px 0 0; }
.row.space { justify-content: space-between; } .row.tight { gap: 4px; margin: 0; }
.grid2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; } .grid3 { display: grid; grid-template-columns: 1fr 2fr 2fr; gap: 10px; }
.f { display: block; margin: 10px 0; } .f-h { display: block; color: #B5B5B5; font-size: .85rem; margin-top: 3px; }
.inl { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; } .inl select { width: auto; }
.chips { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0; }
.chipbtn { background: #1a1a1a; color: #E8E8E8; border: 1px solid #555; border-radius: 999px; padding: 5px 14px; font: 500 .9rem 'DM Sans', sans-serif; cursor: pointer; }
.chipbtn.on { background: #09A688; border-color: #09A688; color: #04130f; font-weight: 700; }
.chipbtn:hover { border-color: #2FD0AE; }
.empty { padding: 26px 8px; text-align: center; color: #B5B5B5; }
ul.jobs, ul.plain { list-style: none; margin: 0; padding: 0; }
.job { border: 1px solid #2f2f2f; border-left: 4px solid #C14A09; border-radius: 6px; padding: 12px 14px; margin: 10px 0; background: #121212; }
.job-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px; flex-wrap: wrap; }
.job-name { font-size: 1.08rem; } .job-veh { color: #E9A06E; font-weight: 700; }
.job-meta { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: .92rem; color: #C8C8C8; margin: 4px 0; }
.job-call { font-weight: 700; }
.job-msg { background: #0b0b0b; border-radius: 6px; padding: 8px 10px; white-space: pre-wrap; margin: 6px 0; }
.chip { font-size: .8rem; font-weight: 700; border-radius: 999px; padding: 2px 12px; background: #333; color: #fff; }
.st-new { background: #B2301B; } .st-quoted { background: #7A5C10; } .st-scheduled { background: #1F5FA0; } .st-in_shop { background: #6A3FA0; } .st-ready { background: #067A64; } .st-done { background: #3a3a3a; } .st-closed { background: #3a3a3a; color: #bbb; }
.job-more { border-top: 1px dashed #333; margin-top: 10px; padding-top: 6px; }
.job-log { margin-top: 10px; font-size: .88rem; color: #B5B5B5; } .job-log ul { margin: 6px 0 0 18px; padding: 0; }
.cmp { background: #0f1a18; border: 1px solid #1e5a4d; border-radius: 6px; padding: 12px; margin-top: 12px; }
.addjob { background: #0f0f0f; border: 1px solid #2f2f2f; border-radius: 6px; padding: 12px; margin: 10px 0; }
.psec { border: 1px solid #2f2f2f; border-radius: 6px; padding: 12px; margin: 14px 0; background: #121212; }
.psec .row.space input { flex: 1 1 220px; }
.prow { display: grid; grid-template-columns: minmax(0,2.4fr) minmax(0,1fr) minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr) 44px 112px; gap: 6px; align-items: center; margin: 6px 0; }
.phead { font-size: .8rem; color: #B5B5B5; font-weight: 700; margin-bottom: 0; }
.showc { display: flex; justify-content: center; }
.ibtn { width: 34px; height: 34px; border-radius: 6px; border: 1px solid #555; background: #1a1a1a; color: #E8E8E8; cursor: pointer; font-size: 1rem; line-height: 1; }
.ibtn:hover { border-color: #2FD0AE; } .ibtn.danger { color: #FF8A78; border-color: #6b2a22; } .ibtn.danger:hover { border-color: #FF8A78; }
.rev { display: grid; grid-template-columns: 3fr 1.2fr auto; gap: 8px; align-items: start; margin: 8px 0; }
.askrow { padding: 6px 0; border-bottom: 1px solid #2a2a2a; }
/* preview of the public banner */
.rsa-banner { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; justify-content: center; padding: 8px 14px; text-align: center; border-bottom: 2px solid #C14A09; background: #1c1308; color: #F4E4D4; border-radius: 6px; }
.rsa-banner-tag { font-family: 'Russo One', sans-serif; letter-spacing: .06em; text-transform: uppercase; font-size: .8em; padding: 1px 10px; border-radius: 3px; background: #C14A09; color: #fff; }
.rsa-closed { background: #2a0f0a; border-bottom-color: #E0543B; } .rsa-closed .rsa-banner-tag { background: #B2301B; }
.rsa-special { background: #08241f; border-bottom-color: #09A688; color: #D9F5EE; } .rsa-special .rsa-banner-tag { background: #067A64; }
@media (max-width: 860px) {
  .phead { display: none; }
  .prow { grid-template-columns: minmax(0,1fr) minmax(0,1fr); padding: 10px 0; border-top: 1px dashed #333; }
  .prow > :first-child { grid-column: 1 / -1; }
  .grid2, .grid3, .rev { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }

.adm-panel h2 { font-size: 1.2rem; color: #E8E8E8; }
.adm-panel h3 { font-size: 1rem; color: #E9A06E; margin-top: 22px; }
.cmp h3 { margin-top: 0; }

.remset { border-top: 1px dashed #333; margin-top: 12px; padding-top: 4px; }
.remset select, .remset input[type=text] { width: auto; }
.cons { align-items: flex-start; margin: 6px 0; }
.cons input { margin-top: 2px; }
.warn { color: #FFD28A; }
.rem .row input[type=date] { width: auto; }

.hrow { display: flex; flex-wrap: wrap; gap: 8px 18px; align-items: center; padding: 8px 0; border-bottom: 1px solid #2a2a2a; }
.hday { width: 110px; }
.hrow input[type=time] { width: auto; }

/* ISS demo bar */
.iss-demo-bar { display: flex; flex-wrap: wrap; gap: 6px 18px; justify-content: space-between; align-items: center; padding: 10px 16px; background: #0b1218; color: #E6EEF5; font: 14px/1.4 "JetBrains Mono", ui-monospace, monospace; border-bottom: 2px solid #2E86AB; position: relative; z-index: 50; }
.iss-demo-bar strong { color: #fff; }
.iss-demo-bar a { color: #A8D8EA; margin-left: 14px; text-decoration: underline; }
.iss-demo-bar a:first-child { margin-left: 0; }

/* Quote link in the demo notice bar */
.iss-demo-bar a.iss-quote { background: #A8D8EA; color: #0b0d10; padding: 4px 10px; border-radius: 3px; text-decoration: none; font-weight: 700; }
