/* QR Free Digital motor skin — signal mesh; markup & tab order untouched */
:root {
  --bg: #e7f1ee !important;
  --text: #10241f !important;
  --muted: #4d6760 !important;
  --accent: #1283d4 !important;
  --accent2: #ff5c1a !important;
  --blue: #1283d4 !important;
  --yellow: #ff5c1a !important;
  --focus: #1283d4 !important;
  --panel: #ffffff;
  --panel2: #f4faf8;
  --line: #c5d8d1;
  --font-body: "Figtree", system-ui, sans-serif;
}

.kiln,
.dock {
  --bg: #e7f1ee;
  --panel: #ffffff;
  --panel2: #f4faf8;
  --line: #c5d8d1;
  --text: #10241f;
  --muted: #4d6760;
  --accent: #1283d4;
  --accent2: #ff5c1a;
  --focus: #1283d4;
}

.kiln .layout,
.kiln .panel,
.kiln .preview-col,
.dock .layout,
.dock .panel,
.dock .preview-col {
  background: transparent !important;
  border-color: var(--line) !important;
  overflow-anchor: none;
  min-width: 0;
  max-width: 100%;
}

.kiln .tabs,
.dock .tabs {
  flex-wrap: wrap !important;
  overflow: visible !important;
  max-width: 100%;
}

.dock .tab-business { flex: 0 0 auto !important; }

.generate-qr-cta #btn-make-dynamic,
.btn-gen-another,
.file-picker-btn,
.btn-code-stats,
.keep-stats-open,
.qrg-color-done,
.rig #btn-make-dynamic,
.rig .btn-gen-another,
.rig .btn-code-stats {
  background: #ff5c1a !important;
  border: 2px solid #10241f !important;
  color: #fff !important;
  border-radius: 0 !important;
  clip-path: polygon(0 0, calc(100% - 12px) 0, 100% 12px, 100% 100%, 12px 100%, 0 calc(100% - 12px)) !important;
  box-shadow: 5px 5px 0 #10241f !important;
  font-family: var(--font-body) !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.15s ease !important;
}

.generate-qr-cta #btn-make-dynamic:hover,
.btn-gen-another:hover,
.file-picker-btn:hover,
.btn-code-stats:hover,
.keep-stats-open:hover,
.qrg-color-done:hover,
.rig #btn-make-dynamic:hover,
.rig .btn-gen-another:hover,
.rig .btn-code-stats:hover {
  background: #1283d4 !important;
  color: #fff !important;
  transform: translate(-2px, -2px) skewX(-1.5deg) !important;
  box-shadow: 8px 8px 0 #10241f !important;
}

.rig #btn-png,
.rig #btn-svg,
.rig #btn-copy,
.actions button,
#btn-png,
#btn-svg,
#btn-copy {
  background: #fff !important;
  border: 2px solid #10241f !important;
  color: #10241f !important;
  border-radius: 0 !important;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)) !important;
  box-shadow: 4px 4px 0 rgba(18, 131, 212, 0.28) !important;
  font-family: var(--font-body) !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
}

.rig #btn-png:hover,
.rig #btn-svg:hover,
.rig #btn-copy:hover,
#btn-png:hover,
#btn-svg:hover,
#btn-copy:hover {
  background: #7dd3fc !important;
  border-color: #10241f !important;
  color: #10241f !important;
  transform: translate(-1px, -1px) !important;
}

.tab.active,
.style-studio-tab.is-on,
.style-studio-tab[aria-selected="true"] {
  background: rgba(18, 131, 212, 0.14) !important;
  border-color: #1283d4 !important;
  color: #10241f !important;
  clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 8px, 100% 100%, 8px 100%, 0 calc(100% - 8px)) !important;
}

.tab,
.style-studio-tab,
.style-chip,
.ecc-chip,
.type-chip {
  clip-path: polygon(0 0, calc(100% - 8px) 0, 100% 8px, 100% 100%, 8px 100%, 0 calc(100% - 8px)) !important;
  border-radius: 0 !important;
  border: 1.5px solid #c5d8d1 !important;
  background: #fff !important;
  color: #10241f !important;
}

.tabs .tab,
.tabs .more-toggle,
.tabs .tab-business,
.tabs .tab:not(.active):not(.tab-business),
.tabs .more-toggle:not(.active) {
  color: #10241f !important;
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  white-space: nowrap !important;
}

.more-menu,
.tabs .more-menu,
#more-menu,
#vcard-menu {
  background: #fff !important;
  border: 2px solid #10241f !important;
  box-shadow: 0 10px 0 rgba(18, 131, 212, 0.2) !important;
  border-radius: 14px !important;
}

.more-menu .more-option,
.tabs .more-option,
.more-menu li,
.more-menu a,
.more-menu button,
.more-option,
.more-option span,
.more-option .option-label,
.more-option .option-icon,
.tabs .option-icon {
  color: #10241f !important;
}

.more-option:hover,
.tabs .more-option:hover,
.more-option:focus-visible {
  background: #e8f4fc !important;
  color: #10241f !important;
}

.more-option:hover .option-icon,
.tabs .more-option:hover .option-icon {
  color: #1283d4 !important;
}

.more-option.active,
.more-option[aria-selected="true"] {
  background: rgba(18, 131, 212, 0.14) !important;
  color: #10241f !important;
}

.qr-link-hint { color: #1283d4 !important; }

.dock #t-data:empty,
.dock #t-code:empty { display: none !important; }

.dynamic-stat-banner,
.hint,
.cloud-note,
.payload-hint,
.qr-fact-hint,
.qr-fact-value,
.style-studio-hint,
.stats-cta-label,
.stats-cta-label span,
.keep-stats-warn {
  text-transform: none !important;
  letter-spacing: 0.01em !important;
  color: var(--muted) !important;
}

.kiln label,
.dock label {
  color: var(--muted) !important;
  text-transform: none !important;
  font-size: 14px !important;
}

.kiln input,
.kiln select,
.kiln textarea,
.dock input,
.dock select,
.dock textarea {
  background: #fff !important;
  color: #10241f !important;
  border: 2px solid #c5d8d1 !important;
  border-radius: 12px !important;
}

.kiln input:focus,
.kiln select:focus,
.kiln textarea:focus,
.dock input:focus,
.dock select:focus,
.dock textarea:focus {
  border-color: #1283d4 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(18, 131, 212, 0.18) !important;
}

.dynamic-create-account,
.dynamic-create-account:hover,
.dynamic-create-account:focus-visible {
  background: #fff !important;
  border: 2px solid #10241f !important;
  color: #10241f !important;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)) !important;
  border-radius: 0 !important;
  box-shadow: 4px 4px 0 rgba(18, 131, 212, 0.18) !important;
}

.keep-stats-modal.modal-overlay {
  background: rgba(16, 36, 31, 0.72) !important;
  z-index: 100080 !important;
}

.keep-stats-card,
#keep-stats-modal .keep-stats-card,
#keep-stats-modal .modal-card {
  background: #fff !important;
  color: #10241f !important;
  border: 2px solid #10241f !important;
  border-radius: 16px !important;
  clip-path: none !important;
  box-shadow: 0 10px 0 #1283d4 !important;
}

#keep-stats-modal h2,
#keep-stats-title {
  color: #10241f !important;
  font-family: var(--font-body) !important;
  text-transform: none !important;
}

.keep-stats-open {
  background: #ff5c1a !important;
  border: 2px solid #10241f !important;
  color: #fff !important;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)) !important;
  border-radius: 0 !important;
}

.keep-stats-saved,
#keep-stats-saved {
  background: #1283d4 !important;
  border: 2px solid #10241f !important;
  color: #fff !important;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)) !important;
  border-radius: 0 !important;
}

#flagship-modal .flagship-card,
#flagship-modal .modal-card {
  background: #fff !important;
  color: #10241f !important;
  border: 2px solid #10241f !important;
  border-radius: 16px !important;
}

#flagship-modal .btn-flagship-go,
#flagship-modal .flagship-go-domain {
  background: #ff5c1a !important;
  color: #fff !important;
  border: 2px solid #10241f !important;
  border-radius: 0 !important;
  clip-path: polygon(0 0, calc(100% - 10px) 0, 100% 10px, 100% 100%, 10px 100%, 0 calc(100% - 10px)) !important;
}

.kiln #stage,
.dock #stage,
.preview-col #stage {
  display: grid !important;
  place-items: center !important;
  width: min(360px, 100%) !important;
  max-width: 360px !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  border: 2px dashed #1283d4 !important;
  border-radius: 0 !important;
  clip-path: polygon(0 12px, 12px 0, 100% 0, 100% calc(100% - 12px), calc(100% - 12px) 100%, 0 100%) !important;
  background:
    linear-gradient(180deg, rgba(18, 131, 212, 0.05), transparent 30%),
    #fff !important;
  position: relative !important;
}

.kiln #stage::before,
.dock #stage::before,
.preview-col #stage::before {
  content: "";
  position: absolute !important;
  left: 8% !important;
  right: 8% !important;
  height: 2px !important;
  background: linear-gradient(90deg, transparent, rgba(18, 131, 212, 0.45), transparent) !important;
  animation: stage-scan 3.2s linear infinite !important;
  pointer-events: none !important;
  z-index: 2 !important;
}

@keyframes stage-scan {
  0% { top: 8%; opacity: 0; }
  15% { opacity: 1; }
  85% { opacity: 1; }
  100% { top: 90%; opacity: 0; }
}

.kiln #stage .size-badge,
.dock #stage .size-badge,
.preview-col #stage .size-badge {
  position: absolute !important;
  top: 10px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 10 !important;
  background: #1283d4 !important;
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  border-radius: 999px !important;
  border: 1.5px solid #10241f !important;
}

.kiln #stage #qr,
.dock #stage #qr,
.preview-col #stage #qr {
  display: block !important;
  width: 100% !important;
  background: #fff !important;
}

.kiln .fields:not(.hidden),
.dock .fields:not(.hidden) { display: grid; gap: 12px; }

.qrg-cal-trigger {
  background: #fff !important;
  color: #10241f !important;
  border: 2px solid #c5d8d1 !important;
  border-radius: 12px !important;
}

.qrg-cal-trigger:hover,
.qrg-cal.is-open .qrg-cal-trigger {
  border-color: #1283d4 !important;
}

.qrg-cal-pop {
  background: #fff !important;
  border: 2px solid #10241f !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 0 rgba(18, 131, 212, 0.28) !important;
}

.qrg-cal-month { color: #1283d4 !important; }

.frame-options {
  display: grid;
  gap: 12px;
  margin-top: 4px;
  padding: 12px;
  border: 2px solid #c5d8d1;
  border-radius: 14px;
  background: #fff;
}
.frame-options[hidden] { display: none !important; }
