.w-hidden { display: none !important; }
form.fv-login {
  max-width: 480px;
  margin: 16px auto 28px;
}
form.fv-login .fv-login-card,
form.fv-login .card-body,
form.fv-login .card-footer {
  height: auto;
  min-height: 0;
  flex: 0 0 auto;
}
.fv-entry {
  max-width: 480px;
  margin: 48px auto 28px;
}
.fv-entry .card {
  height: auto;
  background: #ffffff;
  border: 1px solid #e5eaf0;
}
.fv-entry h1 {
  margin: 0 0 12px;
  color: #0f3d5c;
  font-size: 22px;
  font-weight: 600;
}
.fv-entry p {
  margin: 0 0 20px;
  font-size: 15px;
  line-height: 1.5;
}
.fv-entry-actions {
  display: flex;
  gap: 12px;
}
.fv-entry .btn-primary {
  background: linear-gradient(90deg, #1a77a3 0%, #145074 46%, #0f3d5c 100%);
  border: 0;
  color: #ffffff;
}
.fv-entry .btn-default {
  background: #ffffff;
  border: 1px solid #e5eaf0;
  color: #122033;
}
html[data-theme="dark"] .fv-entry .card,
html[data-theme="dark"] .fv-entry .btn-default {
  background: #142433;
  border-color: #24384a;
  color: #ededed;
}
html[data-theme="dark"] .fv-entry h1,
html[data-theme="dark"] .fv-entry p {
  color: #ededed;
}
.fv-spin {
  width: 42px;
  height: 42px;
  margin: 72px auto;
  border: 3px solid #d5e0ea;
  border-top-color: #1a77a3;
  border-radius: 50% !important;
  animation: fv-spin 0.7s linear infinite;
}
html[data-theme="dark"] .fv-spin { border-color: #24384a; border-top-color: #8ec8e6; }
@keyframes fv-spin { to { transform: rotate(360deg); } }
.modal.show { display: block; background: rgba(14, 23, 32, 0.45); }
#notePop {
  position: fixed;
  z-index: 40;
  top: 62px;
  right: 16px;
  width: min(340px, calc(100% - 24px));
  padding: 12px 14px;
}
#notePop[hidden] { display: none !important; }
#accountMenu:not(.show) { display: none !important; }
.btn-primary,
.btn-success,
.btn-order-now,
.btn-danger,
html[data-theme="light"] .btn-primary,
html[data-theme="dark"] .btn-primary,
html[data-theme="light"] .btn-success,
html[data-theme="dark"] .btn-success,
html[data-theme="light"] .btn-danger,
html[data-theme="dark"] .btn-danger {
  background: linear-gradient(90deg, #1a77a3 0%, #145074 46%, #0f3d5c 100%) !important;
  border: 0 !important;
  color: #ffffff !important;
  border-radius: 0 !important;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-success:hover,
.btn-success:focus,
.btn-order-now:hover,
.btn-danger:hover,
.btn-danger:focus {
  color: #ffffff !important;
  filter: brightness(1.06);
}
#cancelForm .btn-danger,
#cancelForm .btn-danger:hover,
#cancelForm .btn-danger:focus {
  background: #c0392b !important;
  border: 0 !important;
  color: #ffffff !important;
  filter: none;
}
.fv-upgrade-lead,
.fv-upgrade-current { margin: 0 0 16px; }
#order-standard_cart .upgradeGo select.form-control {
  width: 100%;
  margin: 0 0 14px;
  border-radius: 0;
}
#order-standard_cart .fv-upgrade-due {
  margin: 10px 0 0;
  color: #122033;
}
html[data-theme="dark"] #order-standard_cart .fv-upgrade-due { color: #ededed; }
.fv-upgrade-confirm { max-width: 640px; }
.fv-upgrade-confirm .card { background: #ffffff; border: 1px solid #e5eaf0; }
.fv-upgrade-confirm h2 { margin: 0 0 8px; font-size: 22px; }
.fv-upgrade-confirm dl { margin: 0; }
.fv-upgrade-confirm dt { margin-top: 16px; font-weight: 600; }
.fv-upgrade-confirm dd { margin: 4px 0 0; }
.fv-upgrade-confirm dd p { margin: 6px 0 0; }
html[data-theme="dark"] .fv-upgrade-confirm .card { background: #142433; border-color: #24384a; }
#cancelForm textarea.form-control { display: block; width: 100%; position: static; }
#cancelForm .form-group { position: static; clear: both; }
#cancelForm .form-group + .form-group { margin-top: 18px; }
#cancelForm .col-form-label { display: block; float: none; }
#cancelForm .d-inline-block { display: inline-block; vertical-align: middle; }
#cancelForm select.form-control { display: inline-block; width: auto; min-width: 16rem; position: static; }
.custom-file-label[data-browse]::after { content: attr(data-browse); }
button.dropdown-item {
  display: block;
  width: 100%;
  text-align: left;
  background: transparent;
  border: 0;
  cursor: pointer;
}
body.fv-bare #header,
body.fv-bare .master-breadcrumb,
body.fv-bare #verifyBanner,
body.fv-bare #footer { display: none !important; }
#layout.with-side { display: flex; flex-wrap: wrap; }
#sideCol[hidden] { display: none !important; }

.fv-inv-sheet { position: relative; max-width: 920px; margin: 28px auto; }
.fv-inv-sheet-lang { padding-top: 48px; }
.fv-inv-lang {
  position: absolute; top: 0; right: 0; z-index: 2;
  display: inline-flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; background: #ffffff; border: 1px solid #e5eaf0;
  color: #122033; font-size: 18px; line-height: 1; text-decoration: none;
}
html[data-theme="dark"] .fv-inv-lang { background: #142433; border-color: #24384a; color: #ededed; }
.invoice-container {
  position: relative; max-width: none; margin: 0; background: #ffffff;
  border: 1px solid #e5eaf0; border-radius: 0; padding: 28px; color: #122033;
}
.invoice-container > .btn-group {
  float: none !important;
  display: flex;
  width: max-content;
  max-width: 100%;
  margin: 0 0 0 auto;
}
html[data-theme="dark"] .invoice-container { background: #142433; border-color: #24384a; color: #ededed; }
.fv-inv-brand { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; }
.fv-inv-mark {
  width: 32px; height: 32px; flex: 0 0 32px;
  background: linear-gradient(#ffffff, #ffffff) 6px 7px / 15px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 6px 14px / 10px 4px no-repeat,
    linear-gradient(#ffffff, #ffffff) 6px 21px / 15px 4px no-repeat, #4090cc;
}
.fv-inv-name { color: #0f3d5c; font-size: 1.35rem; font-weight: 600; line-height: 1.1; }
html[data-theme="dark"] .fv-inv-name { color: #ededed; }
.fv-inv-title { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 18px; }
.fv-inv-title h1 { margin: 0; font-size: 22px; font-weight: 600; }
.fv-inv-parties { display: flex; justify-content: space-between; gap: 24px; margin: 18px 0; }
.fv-inv-payee { text-align: right; }
.fv-inv-ledger,
html[data-theme="dark"] .fv-inv-ledger {
  background: linear-gradient(90deg, #1a77a3 0%, #145074 46%, #0f3d5c 100%);
  color: #ffffff;
}
a.fv-inv-back {
  display: inline-block; margin: 16px 0 28px; padding: 8px 16px;
  background: linear-gradient(90deg, #1a77a3 0%, #145074 46%, #0f3d5c 100%);
  border: 0; border-radius: 0; color: #ffffff; font-size: 14px; line-height: 1.5; text-decoration: none;
}
.invoice-status .unpaid { color: #b45309; font-weight: 600; }
.invoice-status .paid { color: #1f9d55; font-weight: 600; }

body.fv-bare .fv-pay{position:relative;max-width:920px;margin:28px auto;padding-top:48px}
.fv-pay-lang{position:absolute;top:0;right:0;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:#ffffff;border:1px solid #e5eaf0;color:#122033;font-size:18px;line-height:1}
html[data-theme="dark"] .fv-pay-lang{background:#142433;border-color:#24384a;color:#ededed}
.fv-pay-card{background:#ffffff;border:1px solid #e5eaf0;padding:28px}
html[data-theme="dark"] .fv-pay-card{background:#142433;border-color:#24384a;color:#ededed}
.fv-pay-brand{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.fv-pay-mark{width:32px;height:32px;flex:0 0 32px;background:linear-gradient(#ffffff,#ffffff) 6px 7px/15px 4px no-repeat,linear-gradient(#ffffff,#ffffff) 6px 14px/10px 4px no-repeat,linear-gradient(#ffffff,#ffffff) 6px 21px/15px 4px no-repeat,#4090cc}
.fv-pay-name{color:#0f3d5c;font-size:1.35rem;font-weight:600;line-height:1.1}
html[data-theme="dark"] .fv-pay-name{color:#ededed}
.fv-pay-card h1{margin:0 0 8px;font-size:22px;font-weight:600}
.fv-pay-meta,.fv-pay-lead{margin:0 0 16px;font-size:14px;line-height:1.5}
.fv-drop{position:relative}
.fv-drop-btn{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #e5eaf0;background:#ffffff;color:#122033;font:inherit;text-align:left;cursor:pointer}
html[data-theme="dark"] .fv-drop-btn{background:#0e1720;border-color:#24384a;color:#ededed}
.fv-drop-face{display:flex;align-items:center;gap:10px;min-width:0}
.fv-drop-logo{width:28px;height:28px;flex:0 0 28px}
.fv-drop-logo:empty{display:none}
.fv-drop-logo img{display:block;width:28px;height:28px}
.fv-drop-text{font-size:14px;line-height:1.3}
.fv-drop-text.is-prompt{color:#3d5166}
html[data-theme="dark"] .fv-drop-text.is-prompt{color:#b7c3ce}
.fv-drop-chevron{width:8px;height:8px;flex:0 0 8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.fv-drop.is-open .fv-drop-chevron{transform:translateY(2px) rotate(225deg)}
.fv-drop-panel[hidden]{display:none !important}
.fv-drop-panel{position:absolute;left:0;right:0;top:100%;z-index:20;display:flex;flex-direction:column;max-height:min(440px,70vh);background:#ffffff;border:1px solid #e5eaf0;border-top:0}
html[data-theme="dark"] .fv-drop-panel{background:#142433;border-color:#24384a}
.fv-drop-tools{padding:12px 12px 0}
.fv-tabs{display:flex;flex-wrap:wrap;gap:0;margin:0;border-bottom:1px solid #e5eaf0}
html[data-theme="dark"] .fv-tabs{border-bottom-color:#24384a}
.fv-tab{margin:0;padding:8px 14px;border:1px solid transparent;border-bottom:0;background:transparent;color:#3d5166;font:inherit;font-size:14px;cursor:pointer}
.fv-tab.is-on{background:linear-gradient(90deg,#1a77a3 0%,#145074 46%,#0f3d5c 100%);color:#ffffff}
html[data-theme="dark"] .fv-tab{color:#b7c3ce}
html[data-theme="dark"] .fv-tab.is-on{color:#ffffff}
.fv-pay-search{display:block;margin:0 0 12px}
.fv-pay-search input{width:100%;box-sizing:border-box;border:1px solid #e5eaf0;background:#ffffff;color:#122033;padding:10px 12px;font:inherit}
html[data-theme="dark"] .fv-pay-search input{background:#0e1720;border-color:#24384a;color:#ededed}
.fv-pay-list{max-height:280px;overflow:auto;border:0}
#list[data-tab="popular"] .coin:not([data-popular="1"]),
#list[data-tab="stable"] .coin:not([data-stable="1"]){display:none !important}
button.coin.is-hidden{display:none !important}
button.coin{display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;text-align:left;background:#ffffff;border:0;border-bottom:1px solid #e5eaf0;padding:10px 12px;color:#122033;font:inherit;cursor:pointer}
html[data-theme="dark"] button.coin{background:#142433;border-bottom-color:#24384a;color:#ededed}
.coin-logo{width:32px;height:32px}
.coin-logo img{display:block;width:32px;height:32px}
.coin-main{min-width:0}
.coin-label{display:block;font-weight:600}
.coin-name{display:block;color:#3d5166;font-size:13px}
html[data-theme="dark"] .coin-name{color:#b7c3ce}
.coin-net{justify-self:end;border:1px solid #e5eaf0;padding:2px 6px;font-size:12px;letter-spacing:.04em;color:#0f3d5c}
html[data-theme="dark"] .coin-net{border-color:#24384a;color:#ededed}
.fv-pay-count{margin:0;padding:10px 12px;border-top:1px solid #e5eaf0;font-size:13px;line-height:1.4;color:#3d5166}
html[data-theme="dark"] .fv-pay-count{border-top-color:#24384a;color:#b7c3ce}
.fv-pay-facts{margin:0 0 16px}
.fv-pay-facts div{margin:0 0 12px}
.fv-pay-facts dt{font-size:12px;letter-spacing:.04em;color:#3d5166}
html[data-theme="dark"] .fv-pay-facts dt{color:#b7c3ce}
.fv-pay-facts dd{margin:2px 0 0;font-size:16px}
.fv-pay-timer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:12px 14px;border:1px solid #e5eaf0;background:#eef4f8}
html[data-theme="dark"] .fv-pay-timer{background:#0e1720;border-color:#24384a;color:#ededed}
.fv-pay-timer-label{font-size:14px}
.fv-pay-clock{font-size:28px;font-weight:600;letter-spacing:.04em;font-variant-numeric:tabular-nums}
.fv-pay-timer.is-expired{border-color:#1a77a3}
.fv-pay-error{margin:0 0 16px;padding:10px 12px;border:1px solid #1a77a3;font-size:14px;line-height:1.5}
.fv-pay-amount{font-size:28px;font-weight:600}
.fv-pay-address{word-break:break-all;font-family:"Inter","Noto Sans SC",monospace}
.fv-pay-qr{display:inline-block;background:#ffffff;border:1px solid #e5eaf0;padding:12px;margin:0 0 16px}
.fv-pay-qr img{display:block;width:220px;height:220px}
.fv-pay-copy,.fv-pay-back{display:inline-block;padding:8px 16px;background:linear-gradient(90deg,#1a77a3 0%,#145074 46%,#0f3d5c 100%);border:0;color:#ffffff;font:inherit;font-size:14px;line-height:1.5;text-decoration:none;cursor:pointer}
.fv-pay-backwrap{text-align:center}
.fv-pay-back{margin:16px 0 28px}
.fv-pay-text{background:none;border:0;padding:0;color:#0f3d5c;font:inherit;text-decoration:underline;cursor:pointer}
html[data-theme="dark"] .fv-pay-text{color:#8ec8e6}
.fv-pay-actions{margin:0 0 8px}
.fv-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}
.twofa svg { max-width: 180px; height: auto; }
.err { color: #9b2c2c; }
html[data-theme="dark"] .err { color: #ffb4b4; }

@media (max-width: 640px) {
  .fv-inv-sheet { margin: 12px; max-width: none; }
  .invoice-container { padding: 16px; overflow-x: auto; }
  .fv-inv-title, .fv-inv-parties { flex-direction: column; align-items: flex-start; }
  .fv-inv-payee { text-align: left; }
}
